1 /* ----------------------------------------------------------------------------
2  * This file was automatically generated by SWIG (http://www.swig.org).
3  * Version 4.0.2
4  *
5  * This file is not intended to be easily readable and contains a number of
6  * coding conventions designed to improve portability and efficiency. Do not make
7  * changes to this file unless you know what you are doing--modify the SWIG
8  * interface file instead.
9  * ----------------------------------------------------------------------------- */
10 
11 
12 #ifndef SWIGPERL
13 #define SWIGPERL
14 #endif
15 
16 #define SWIG_CASTRANK_MODE
17 
18 
19 #ifdef __cplusplus
20 /* SwigValueWrapper is described in swig.swg */
21 template<typename T> class SwigValueWrapper {
22   struct SwigMovePointer {
23     T *ptr;
SwigMovePointerSwigValueWrapper::SwigMovePointer24     SwigMovePointer(T *p) : ptr(p) { }
~SwigMovePointerSwigValueWrapper::SwigMovePointer25     ~SwigMovePointer() { delete ptr; }
operator =SwigValueWrapper::SwigMovePointer26     SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; }
27   } pointer;
28   SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
29   SwigValueWrapper(const SwigValueWrapper<T>& rhs);
30 public:
SwigValueWrapper()31   SwigValueWrapper() : pointer(0) { }
operator =(const T & t)32   SwigValueWrapper& operator=(const T& t) { SwigMovePointer tmp(new T(t)); pointer = tmp; return *this; }
operator T&() const33   operator T&() const { return *pointer.ptr; }
operator &()34   T *operator&() { return pointer.ptr; }
35 };
36 
SwigValueInit()37 template <typename T> T SwigValueInit() {
38   return T();
39 }
40 #endif
41 
42 /* -----------------------------------------------------------------------------
43  *  This section contains generic SWIG labels for method/variable
44  *  declarations/attributes, and other compiler dependent labels.
45  * ----------------------------------------------------------------------------- */
46 
47 /* template workaround for compilers that cannot correctly implement the C++ standard */
48 #ifndef SWIGTEMPLATEDISAMBIGUATOR
49 # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
50 #  define SWIGTEMPLATEDISAMBIGUATOR template
51 # elif defined(__HP_aCC)
52 /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
53 /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
54 #  define SWIGTEMPLATEDISAMBIGUATOR template
55 # else
56 #  define SWIGTEMPLATEDISAMBIGUATOR
57 # endif
58 #endif
59 
60 /* inline attribute */
61 #ifndef SWIGINLINE
62 # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
63 #   define SWIGINLINE inline
64 # else
65 #   define SWIGINLINE
66 # endif
67 #endif
68 
69 /* attribute recognised by some compilers to avoid 'unused' warnings */
70 #ifndef SWIGUNUSED
71 # if defined(__GNUC__)
72 #   if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
73 #     define SWIGUNUSED __attribute__ ((__unused__))
74 #   else
75 #     define SWIGUNUSED
76 #   endif
77 # elif defined(__ICC)
78 #   define SWIGUNUSED __attribute__ ((__unused__))
79 # else
80 #   define SWIGUNUSED
81 # endif
82 #endif
83 
84 #ifndef SWIG_MSC_UNSUPPRESS_4505
85 # if defined(_MSC_VER)
86 #   pragma warning(disable : 4505) /* unreferenced local function has been removed */
87 # endif
88 #endif
89 
90 #ifndef SWIGUNUSEDPARM
91 # ifdef __cplusplus
92 #   define SWIGUNUSEDPARM(p)
93 # else
94 #   define SWIGUNUSEDPARM(p) p SWIGUNUSED
95 # endif
96 #endif
97 
98 /* internal SWIG method */
99 #ifndef SWIGINTERN
100 # define SWIGINTERN static SWIGUNUSED
101 #endif
102 
103 /* internal inline SWIG method */
104 #ifndef SWIGINTERNINLINE
105 # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
106 #endif
107 
108 /* exporting methods */
109 #if defined(__GNUC__)
110 #  if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
111 #    ifndef GCC_HASCLASSVISIBILITY
112 #      define GCC_HASCLASSVISIBILITY
113 #    endif
114 #  endif
115 #endif
116 
117 #ifndef SWIGEXPORT
118 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
119 #   if defined(STATIC_LINKED)
120 #     define SWIGEXPORT
121 #   else
122 #     define SWIGEXPORT __declspec(dllexport)
123 #   endif
124 # else
125 #   if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
126 #     define SWIGEXPORT __attribute__ ((visibility("default")))
127 #   else
128 #     define SWIGEXPORT
129 #   endif
130 # endif
131 #endif
132 
133 /* calling conventions for Windows */
134 #ifndef SWIGSTDCALL
135 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
136 #   define SWIGSTDCALL __stdcall
137 # else
138 #   define SWIGSTDCALL
139 # endif
140 #endif
141 
142 /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
143 #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
144 # define _CRT_SECURE_NO_DEPRECATE
145 #endif
146 
147 /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
148 #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
149 # define _SCL_SECURE_NO_DEPRECATE
150 #endif
151 
152 /* Deal with Apple's deprecated 'AssertMacros.h' from Carbon-framework */
153 #if defined(__APPLE__) && !defined(__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES)
154 # define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0
155 #endif
156 
157 /* Intel's compiler complains if a variable which was never initialised is
158  * cast to void, which is a common idiom which we use to indicate that we
159  * are aware a variable isn't used.  So we just silence that warning.
160  * See: https://github.com/swig/swig/issues/192 for more discussion.
161  */
162 #ifdef __INTEL_COMPILER
163 # pragma warning disable 592
164 #endif
165 
166 /* -----------------------------------------------------------------------------
167  * swigrun.swg
168  *
169  * This file contains generic C API SWIG runtime support for pointer
170  * type checking.
171  * ----------------------------------------------------------------------------- */
172 
173 /* This should only be incremented when either the layout of swig_type_info changes,
174    or for whatever reason, the runtime changes incompatibly */
175 #define SWIG_RUNTIME_VERSION "4"
176 
177 /* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
178 #ifdef SWIG_TYPE_TABLE
179 # define SWIG_QUOTE_STRING(x) #x
180 # define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
181 # define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
182 #else
183 # define SWIG_TYPE_TABLE_NAME
184 #endif
185 
186 /*
187   You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
188   creating a static or dynamic library from the SWIG runtime code.
189   In 99.9% of the cases, SWIG just needs to declare them as 'static'.
190 
191   But only do this if strictly necessary, ie, if you have problems
192   with your compiler or suchlike.
193 */
194 
195 #ifndef SWIGRUNTIME
196 # define SWIGRUNTIME SWIGINTERN
197 #endif
198 
199 #ifndef SWIGRUNTIMEINLINE
200 # define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
201 #endif
202 
203 /*  Generic buffer size */
204 #ifndef SWIG_BUFFER_SIZE
205 # define SWIG_BUFFER_SIZE 1024
206 #endif
207 
208 /* Flags for pointer conversions */
209 #define SWIG_POINTER_DISOWN        0x1
210 #define SWIG_CAST_NEW_MEMORY       0x2
211 #define SWIG_POINTER_NO_NULL       0x4
212 
213 /* Flags for new pointer objects */
214 #define SWIG_POINTER_OWN           0x1
215 
216 
217 /*
218    Flags/methods for returning states.
219 
220    The SWIG conversion methods, as ConvertPtr, return an integer
221    that tells if the conversion was successful or not. And if not,
222    an error code can be returned (see swigerrors.swg for the codes).
223 
224    Use the following macros/flags to set or process the returning
225    states.
226 
227    In old versions of SWIG, code such as the following was usually written:
228 
229      if (SWIG_ConvertPtr(obj,vptr,ty.flags) != -1) {
230        // success code
231      } else {
232        //fail code
233      }
234 
235    Now you can be more explicit:
236 
237     int res = SWIG_ConvertPtr(obj,vptr,ty.flags);
238     if (SWIG_IsOK(res)) {
239       // success code
240     } else {
241       // fail code
242     }
243 
244    which is the same really, but now you can also do
245 
246     Type *ptr;
247     int res = SWIG_ConvertPtr(obj,(void **)(&ptr),ty.flags);
248     if (SWIG_IsOK(res)) {
249       // success code
250       if (SWIG_IsNewObj(res) {
251         ...
252 	delete *ptr;
253       } else {
254         ...
255       }
256     } else {
257       // fail code
258     }
259 
260    I.e., now SWIG_ConvertPtr can return new objects and you can
261    identify the case and take care of the deallocation. Of course that
262    also requires SWIG_ConvertPtr to return new result values, such as
263 
264       int SWIG_ConvertPtr(obj, ptr,...) {
265         if (<obj is ok>) {
266           if (<need new object>) {
267             *ptr = <ptr to new allocated object>;
268             return SWIG_NEWOBJ;
269           } else {
270             *ptr = <ptr to old object>;
271             return SWIG_OLDOBJ;
272           }
273         } else {
274           return SWIG_BADOBJ;
275         }
276       }
277 
278    Of course, returning the plain '0(success)/-1(fail)' still works, but you can be
279    more explicit by returning SWIG_BADOBJ, SWIG_ERROR or any of the
280    SWIG errors code.
281 
282    Finally, if the SWIG_CASTRANK_MODE is enabled, the result code
283    allows to return the 'cast rank', for example, if you have this
284 
285        int food(double)
286        int fooi(int);
287 
288    and you call
289 
290       food(1)   // cast rank '1'  (1 -> 1.0)
291       fooi(1)   // cast rank '0'
292 
293    just use the SWIG_AddCast()/SWIG_CheckState()
294 */
295 
296 #define SWIG_OK                    (0)
297 #define SWIG_ERROR                 (-1)
298 #define SWIG_IsOK(r)               (r >= 0)
299 #define SWIG_ArgError(r)           ((r != SWIG_ERROR) ? r : SWIG_TypeError)
300 
301 /* The CastRankLimit says how many bits are used for the cast rank */
302 #define SWIG_CASTRANKLIMIT         (1 << 8)
303 /* The NewMask denotes the object was created (using new/malloc) */
304 #define SWIG_NEWOBJMASK            (SWIG_CASTRANKLIMIT  << 1)
305 /* The TmpMask is for in/out typemaps that use temporal objects */
306 #define SWIG_TMPOBJMASK            (SWIG_NEWOBJMASK << 1)
307 /* Simple returning values */
308 #define SWIG_BADOBJ                (SWIG_ERROR)
309 #define SWIG_OLDOBJ                (SWIG_OK)
310 #define SWIG_NEWOBJ                (SWIG_OK | SWIG_NEWOBJMASK)
311 #define SWIG_TMPOBJ                (SWIG_OK | SWIG_TMPOBJMASK)
312 /* Check, add and del mask methods */
313 #define SWIG_AddNewMask(r)         (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r)
314 #define SWIG_DelNewMask(r)         (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r)
315 #define SWIG_IsNewObj(r)           (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK))
316 #define SWIG_AddTmpMask(r)         (SWIG_IsOK(r) ? (r | SWIG_TMPOBJMASK) : r)
317 #define SWIG_DelTmpMask(r)         (SWIG_IsOK(r) ? (r & ~SWIG_TMPOBJMASK) : r)
318 #define SWIG_IsTmpObj(r)           (SWIG_IsOK(r) && (r & SWIG_TMPOBJMASK))
319 
320 /* Cast-Rank Mode */
321 #if defined(SWIG_CASTRANK_MODE)
322 #  ifndef SWIG_TypeRank
323 #    define SWIG_TypeRank             unsigned long
324 #  endif
325 #  ifndef SWIG_MAXCASTRANK            /* Default cast allowed */
326 #    define SWIG_MAXCASTRANK          (2)
327 #  endif
328 #  define SWIG_CASTRANKMASK          ((SWIG_CASTRANKLIMIT) -1)
329 #  define SWIG_CastRank(r)           (r & SWIG_CASTRANKMASK)
SWIG_AddCast(int r)330 SWIGINTERNINLINE int SWIG_AddCast(int r) {
331   return SWIG_IsOK(r) ? ((SWIG_CastRank(r) < SWIG_MAXCASTRANK) ? (r + 1) : SWIG_ERROR) : r;
332 }
SWIG_CheckState(int r)333 SWIGINTERNINLINE int SWIG_CheckState(int r) {
334   return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0;
335 }
336 #else /* no cast-rank mode */
337 #  define SWIG_AddCast(r) (r)
338 #  define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0)
339 #endif
340 
341 
342 #include <string.h>
343 
344 #ifdef __cplusplus
345 extern "C" {
346 #endif
347 
348 typedef void *(*swig_converter_func)(void *, int *);
349 typedef struct swig_type_info *(*swig_dycast_func)(void **);
350 
351 /* Structure to store information on one type */
352 typedef struct swig_type_info {
353   const char             *name;			/* mangled name of this type */
354   const char             *str;			/* human readable name of this type */
355   swig_dycast_func        dcast;		/* dynamic cast function down a hierarchy */
356   struct swig_cast_info  *cast;			/* linked list of types that can cast into this type */
357   void                   *clientdata;		/* language specific type data */
358   int                    owndata;		/* flag if the structure owns the clientdata */
359 } swig_type_info;
360 
361 /* Structure to store a type and conversion function used for casting */
362 typedef struct swig_cast_info {
363   swig_type_info         *type;			/* pointer to type that is equivalent to this type */
364   swig_converter_func     converter;		/* function to cast the void pointers */
365   struct swig_cast_info  *next;			/* pointer to next cast in linked list */
366   struct swig_cast_info  *prev;			/* pointer to the previous cast */
367 } swig_cast_info;
368 
369 /* Structure used to store module information
370  * Each module generates one structure like this, and the runtime collects
371  * all of these structures and stores them in a circularly linked list.*/
372 typedef struct swig_module_info {
373   swig_type_info         **types;		/* Array of pointers to swig_type_info structures that are in this module */
374   size_t                 size;		        /* Number of types in this module */
375   struct swig_module_info *next;		/* Pointer to next element in circularly linked list */
376   swig_type_info         **type_initial;	/* Array of initially generated type structures */
377   swig_cast_info         **cast_initial;	/* Array of initially generated casting structures */
378   void                    *clientdata;		/* Language specific module data */
379 } swig_module_info;
380 
381 /*
382   Compare two type names skipping the space characters, therefore
383   "char*" == "char *" and "Class<int>" == "Class<int >", etc.
384 
385   Return 0 when the two name types are equivalent, as in
386   strncmp, but skipping ' '.
387 */
388 SWIGRUNTIME int
SWIG_TypeNameComp(const char * f1,const char * l1,const char * f2,const char * l2)389 SWIG_TypeNameComp(const char *f1, const char *l1,
390 		  const char *f2, const char *l2) {
391   for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
392     while ((*f1 == ' ') && (f1 != l1)) ++f1;
393     while ((*f2 == ' ') && (f2 != l2)) ++f2;
394     if (*f1 != *f2) return (*f1 > *f2) ? 1 : -1;
395   }
396   return (int)((l1 - f1) - (l2 - f2));
397 }
398 
399 /*
400   Check type equivalence in a name list like <name1>|<name2>|...
401   Return 0 if equal, -1 if nb < tb, 1 if nb > tb
402 */
403 SWIGRUNTIME int
SWIG_TypeCmp(const char * nb,const char * tb)404 SWIG_TypeCmp(const char *nb, const char *tb) {
405   int equiv = 1;
406   const char* te = tb + strlen(tb);
407   const char* ne = nb;
408   while (equiv != 0 && *ne) {
409     for (nb = ne; *ne; ++ne) {
410       if (*ne == '|') break;
411     }
412     equiv = SWIG_TypeNameComp(nb, ne, tb, te);
413     if (*ne) ++ne;
414   }
415   return equiv;
416 }
417 
418 /*
419   Check type equivalence in a name list like <name1>|<name2>|...
420   Return 0 if not equal, 1 if equal
421 */
422 SWIGRUNTIME int
SWIG_TypeEquiv(const char * nb,const char * tb)423 SWIG_TypeEquiv(const char *nb, const char *tb) {
424   return SWIG_TypeCmp(nb, tb) == 0 ? 1 : 0;
425 }
426 
427 /*
428   Check the typename
429 */
430 SWIGRUNTIME swig_cast_info *
SWIG_TypeCheck(const char * c,swig_type_info * ty)431 SWIG_TypeCheck(const char *c, swig_type_info *ty) {
432   if (ty) {
433     swig_cast_info *iter = ty->cast;
434     while (iter) {
435       if (strcmp(iter->type->name, c) == 0) {
436         if (iter == ty->cast)
437           return iter;
438         /* Move iter to the top of the linked list */
439         iter->prev->next = iter->next;
440         if (iter->next)
441           iter->next->prev = iter->prev;
442         iter->next = ty->cast;
443         iter->prev = 0;
444         if (ty->cast) ty->cast->prev = iter;
445         ty->cast = iter;
446         return iter;
447       }
448       iter = iter->next;
449     }
450   }
451   return 0;
452 }
453 
454 /*
455   Identical to SWIG_TypeCheck, except strcmp is replaced with a pointer comparison
456 */
457 SWIGRUNTIME swig_cast_info *
SWIG_TypeCheckStruct(swig_type_info * from,swig_type_info * ty)458 SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *ty) {
459   if (ty) {
460     swig_cast_info *iter = ty->cast;
461     while (iter) {
462       if (iter->type == from) {
463         if (iter == ty->cast)
464           return iter;
465         /* Move iter to the top of the linked list */
466         iter->prev->next = iter->next;
467         if (iter->next)
468           iter->next->prev = iter->prev;
469         iter->next = ty->cast;
470         iter->prev = 0;
471         if (ty->cast) ty->cast->prev = iter;
472         ty->cast = iter;
473         return iter;
474       }
475       iter = iter->next;
476     }
477   }
478   return 0;
479 }
480 
481 /*
482   Cast a pointer up an inheritance hierarchy
483 */
484 SWIGRUNTIMEINLINE void *
SWIG_TypeCast(swig_cast_info * ty,void * ptr,int * newmemory)485 SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory) {
486   return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr, newmemory);
487 }
488 
489 /*
490    Dynamic pointer casting. Down an inheritance hierarchy
491 */
492 SWIGRUNTIME swig_type_info *
SWIG_TypeDynamicCast(swig_type_info * ty,void ** ptr)493 SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) {
494   swig_type_info *lastty = ty;
495   if (!ty || !ty->dcast) return ty;
496   while (ty && (ty->dcast)) {
497     ty = (*ty->dcast)(ptr);
498     if (ty) lastty = ty;
499   }
500   return lastty;
501 }
502 
503 /*
504   Return the name associated with this type
505 */
506 SWIGRUNTIMEINLINE const char *
SWIG_TypeName(const swig_type_info * ty)507 SWIG_TypeName(const swig_type_info *ty) {
508   return ty->name;
509 }
510 
511 /*
512   Return the pretty name associated with this type,
513   that is an unmangled type name in a form presentable to the user.
514 */
515 SWIGRUNTIME const char *
SWIG_TypePrettyName(const swig_type_info * type)516 SWIG_TypePrettyName(const swig_type_info *type) {
517   /* The "str" field contains the equivalent pretty names of the
518      type, separated by vertical-bar characters.  We choose
519      to print the last name, as it is often (?) the most
520      specific. */
521   if (!type) return NULL;
522   if (type->str != NULL) {
523     const char *last_name = type->str;
524     const char *s;
525     for (s = type->str; *s; s++)
526       if (*s == '|') last_name = s+1;
527     return last_name;
528   }
529   else
530     return type->name;
531 }
532 
533 /*
534    Set the clientdata field for a type
535 */
536 SWIGRUNTIME void
SWIG_TypeClientData(swig_type_info * ti,void * clientdata)537 SWIG_TypeClientData(swig_type_info *ti, void *clientdata) {
538   swig_cast_info *cast = ti->cast;
539   /* if (ti->clientdata == clientdata) return; */
540   ti->clientdata = clientdata;
541 
542   while (cast) {
543     if (!cast->converter) {
544       swig_type_info *tc = cast->type;
545       if (!tc->clientdata) {
546 	SWIG_TypeClientData(tc, clientdata);
547       }
548     }
549     cast = cast->next;
550   }
551 }
552 SWIGRUNTIME void
SWIG_TypeNewClientData(swig_type_info * ti,void * clientdata)553 SWIG_TypeNewClientData(swig_type_info *ti, void *clientdata) {
554   SWIG_TypeClientData(ti, clientdata);
555   ti->owndata = 1;
556 }
557 
558 /*
559   Search for a swig_type_info structure only by mangled name
560   Search is a O(log #types)
561 
562   We start searching at module start, and finish searching when start == end.
563   Note: if start == end at the beginning of the function, we go all the way around
564   the circular list.
565 */
566 SWIGRUNTIME swig_type_info *
SWIG_MangledTypeQueryModule(swig_module_info * start,swig_module_info * end,const char * name)567 SWIG_MangledTypeQueryModule(swig_module_info *start,
568                             swig_module_info *end,
569 		            const char *name) {
570   swig_module_info *iter = start;
571   do {
572     if (iter->size) {
573       size_t l = 0;
574       size_t r = iter->size - 1;
575       do {
576 	/* since l+r >= 0, we can (>> 1) instead (/ 2) */
577 	size_t i = (l + r) >> 1;
578 	const char *iname = iter->types[i]->name;
579 	if (iname) {
580 	  int compare = strcmp(name, iname);
581 	  if (compare == 0) {
582 	    return iter->types[i];
583 	  } else if (compare < 0) {
584 	    if (i) {
585 	      r = i - 1;
586 	    } else {
587 	      break;
588 	    }
589 	  } else if (compare > 0) {
590 	    l = i + 1;
591 	  }
592 	} else {
593 	  break; /* should never happen */
594 	}
595       } while (l <= r);
596     }
597     iter = iter->next;
598   } while (iter != end);
599   return 0;
600 }
601 
602 /*
603   Search for a swig_type_info structure for either a mangled name or a human readable name.
604   It first searches the mangled names of the types, which is a O(log #types)
605   If a type is not found it then searches the human readable names, which is O(#types).
606 
607   We start searching at module start, and finish searching when start == end.
608   Note: if start == end at the beginning of the function, we go all the way around
609   the circular list.
610 */
611 SWIGRUNTIME swig_type_info *
SWIG_TypeQueryModule(swig_module_info * start,swig_module_info * end,const char * name)612 SWIG_TypeQueryModule(swig_module_info *start,
613                      swig_module_info *end,
614 		     const char *name) {
615   /* STEP 1: Search the name field using binary search */
616   swig_type_info *ret = SWIG_MangledTypeQueryModule(start, end, name);
617   if (ret) {
618     return ret;
619   } else {
620     /* STEP 2: If the type hasn't been found, do a complete search
621        of the str field (the human readable name) */
622     swig_module_info *iter = start;
623     do {
624       size_t i = 0;
625       for (; i < iter->size; ++i) {
626 	if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name)))
627 	  return iter->types[i];
628       }
629       iter = iter->next;
630     } while (iter != end);
631   }
632 
633   /* neither found a match */
634   return 0;
635 }
636 
637 /*
638    Pack binary data into a string
639 */
640 SWIGRUNTIME char *
SWIG_PackData(char * c,void * ptr,size_t sz)641 SWIG_PackData(char *c, void *ptr, size_t sz) {
642   static const char hex[17] = "0123456789abcdef";
643   const unsigned char *u = (unsigned char *) ptr;
644   const unsigned char *eu =  u + sz;
645   for (; u != eu; ++u) {
646     unsigned char uu = *u;
647     *(c++) = hex[(uu & 0xf0) >> 4];
648     *(c++) = hex[uu & 0xf];
649   }
650   return c;
651 }
652 
653 /*
654    Unpack binary data from a string
655 */
656 SWIGRUNTIME const char *
SWIG_UnpackData(const char * c,void * ptr,size_t sz)657 SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
658   unsigned char *u = (unsigned char *) ptr;
659   const unsigned char *eu = u + sz;
660   for (; u != eu; ++u) {
661     char d = *(c++);
662     unsigned char uu;
663     if ((d >= '0') && (d <= '9'))
664       uu = (unsigned char)((d - '0') << 4);
665     else if ((d >= 'a') && (d <= 'f'))
666       uu = (unsigned char)((d - ('a'-10)) << 4);
667     else
668       return (char *) 0;
669     d = *(c++);
670     if ((d >= '0') && (d <= '9'))
671       uu |= (unsigned char)(d - '0');
672     else if ((d >= 'a') && (d <= 'f'))
673       uu |= (unsigned char)(d - ('a'-10));
674     else
675       return (char *) 0;
676     *u = uu;
677   }
678   return c;
679 }
680 
681 /*
682    Pack 'void *' into a string buffer.
683 */
684 SWIGRUNTIME char *
SWIG_PackVoidPtr(char * buff,void * ptr,const char * name,size_t bsz)685 SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
686   char *r = buff;
687   if ((2*sizeof(void *) + 2) > bsz) return 0;
688   *(r++) = '_';
689   r = SWIG_PackData(r,&ptr,sizeof(void *));
690   if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
691   strcpy(r,name);
692   return buff;
693 }
694 
695 SWIGRUNTIME const char *
SWIG_UnpackVoidPtr(const char * c,void ** ptr,const char * name)696 SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
697   if (*c != '_') {
698     if (strcmp(c,"NULL") == 0) {
699       *ptr = (void *) 0;
700       return name;
701     } else {
702       return 0;
703     }
704   }
705   return SWIG_UnpackData(++c,ptr,sizeof(void *));
706 }
707 
708 SWIGRUNTIME char *
SWIG_PackDataName(char * buff,void * ptr,size_t sz,const char * name,size_t bsz)709 SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
710   char *r = buff;
711   size_t lname = (name ? strlen(name) : 0);
712   if ((2*sz + 2 + lname) > bsz) return 0;
713   *(r++) = '_';
714   r = SWIG_PackData(r,ptr,sz);
715   if (lname) {
716     strncpy(r,name,lname+1);
717   } else {
718     *r = 0;
719   }
720   return buff;
721 }
722 
723 SWIGRUNTIME const char *
SWIG_UnpackDataName(const char * c,void * ptr,size_t sz,const char * name)724 SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
725   if (*c != '_') {
726     if (strcmp(c,"NULL") == 0) {
727       memset(ptr,0,sz);
728       return name;
729     } else {
730       return 0;
731     }
732   }
733   return SWIG_UnpackData(++c,ptr,sz);
734 }
735 
736 #ifdef __cplusplus
737 }
738 #endif
739 
740 /*  Errors in SWIG */
741 #define  SWIG_UnknownError    	   -1
742 #define  SWIG_IOError        	   -2
743 #define  SWIG_RuntimeError   	   -3
744 #define  SWIG_IndexError     	   -4
745 #define  SWIG_TypeError      	   -5
746 #define  SWIG_DivisionByZero 	   -6
747 #define  SWIG_OverflowError  	   -7
748 #define  SWIG_SyntaxError    	   -8
749 #define  SWIG_ValueError     	   -9
750 #define  SWIG_SystemError    	   -10
751 #define  SWIG_AttributeError 	   -11
752 #define  SWIG_MemoryError    	   -12
753 #define  SWIG_NullReferenceError   -13
754 
755 
756 
757 #ifdef __cplusplus
758 /* Needed on some windows machines---since MS plays funny games with the header files under C++ */
759 #include <math.h>
760 #include <stdlib.h>
761 extern "C" {
762 #endif
763 #include "EXTERN.h"
764 #include "perl.h"
765 #include "XSUB.h"
766 
767 /* Add in functionality missing in older versions of Perl. Much of this is based on Devel-PPPort on cpan. */
768 
769 /* Add PERL_REVISION, PERL_VERSION, PERL_SUBVERSION if missing */
770 #ifndef PERL_REVISION
771 #  if !defined(__PATCHLEVEL_H_INCLUDED__) && !(defined(PATCHLEVEL) && defined(SUBVERSION))
772 #    define PERL_PATCHLEVEL_H_IMPLICIT
773 #    include <patchlevel.h>
774 #  endif
775 #  if !(defined(PERL_VERSION) || (defined(SUBVERSION) && defined(PATCHLEVEL)))
776 #    include <could_not_find_Perl_patchlevel.h>
777 #  endif
778 #  ifndef PERL_REVISION
779 #    define PERL_REVISION       (5)
780 #    define PERL_VERSION        PATCHLEVEL
781 #    define PERL_SUBVERSION     SUBVERSION
782 #  endif
783 #endif
784 
785 #if defined(WIN32) && defined(PERL_OBJECT) && !defined(PerlIO_exportFILE)
786 #define PerlIO_exportFILE(fh,fl) (FILE*)(fh)
787 #endif
788 
789 #ifndef SvIOK_UV
790 # define SvIOK_UV(sv)       (SvIOK(sv) && (SvUVX(sv) == SvIVX(sv)))
791 #endif
792 
793 #ifndef SvUOK
794 # define SvUOK(sv)           SvIOK_UV(sv)
795 #endif
796 
797 #if ((PERL_VERSION < 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION <= 5)))
798 #  define PL_sv_undef               sv_undef
799 #  define PL_na	                    na
800 #  define PL_errgv                  errgv
801 #  define PL_sv_no                  sv_no
802 #  define PL_sv_yes                 sv_yes
803 #  define PL_markstack_ptr          markstack_ptr
804 #endif
805 
806 #ifndef IVSIZE
807 #  ifdef LONGSIZE
808 #    define IVSIZE LONGSIZE
809 #  else
810 #    define IVSIZE 4 /* A bold guess, but the best we can make. */
811 #  endif
812 #endif
813 
814 #ifndef INT2PTR
815 #  if (IVSIZE == PTRSIZE) && (UVSIZE == PTRSIZE)
816 #    define PTRV                  UV
817 #    define INT2PTR(any,d)        (any)(d)
818 #  else
819 #    if PTRSIZE == LONGSIZE
820 #      define PTRV                unsigned long
821 #    else
822 #      define PTRV                unsigned
823 #    endif
824 #    define INT2PTR(any,d)        (any)(PTRV)(d)
825 #  endif
826 
827 #  define NUM2PTR(any,d)  (any)(PTRV)(d)
828 #  define PTR2IV(p)       INT2PTR(IV,p)
829 #  define PTR2UV(p)       INT2PTR(UV,p)
830 #  define PTR2NV(p)       NUM2PTR(NV,p)
831 
832 #  if PTRSIZE == LONGSIZE
833 #    define PTR2ul(p)     (unsigned long)(p)
834 #  else
835 #    define PTR2ul(p)     INT2PTR(unsigned long,p)
836 #  endif
837 #endif /* !INT2PTR */
838 
839 #ifndef SvPV_nolen
840 # define SvPV_nolen(x) SvPV(x,PL_na)
841 #endif
842 
843 #ifndef get_sv
844 #  define get_sv perl_get_sv
845 #endif
846 
847 #ifndef ERRSV
848 #  define ERRSV get_sv("@",FALSE)
849 #endif
850 
851 #ifndef pTHX_
852 #define pTHX_
853 #endif
854 
855 #include <string.h>
856 #ifdef __cplusplus
857 }
858 #endif
859 
860 /* -----------------------------------------------------------------------------
861  * error manipulation
862  * ----------------------------------------------------------------------------- */
863 
864 SWIGINTERN const char*
SWIG_Perl_ErrorType(int code)865 SWIG_Perl_ErrorType(int code) {
866   switch(code) {
867   case SWIG_MemoryError:
868     return "MemoryError";
869   case SWIG_IOError:
870     return "IOError";
871   case SWIG_RuntimeError:
872     return "RuntimeError";
873   case SWIG_IndexError:
874     return "IndexError";
875   case SWIG_TypeError:
876     return "TypeError";
877   case SWIG_DivisionByZero:
878     return "ZeroDivisionError";
879   case SWIG_OverflowError:
880     return "OverflowError";
881   case SWIG_SyntaxError:
882     return "SyntaxError";
883   case SWIG_ValueError:
884     return "ValueError";
885   case SWIG_SystemError:
886     return "SystemError";
887   case SWIG_AttributeError:
888     return "AttributeError";
889   default:
890     return "RuntimeError";
891   }
892 }
893 
894 
895 /* -----------------------------------------------------------------------------
896  * perlrun.swg
897  *
898  * This file contains the runtime support for Perl modules
899  * and includes code for managing global variables and pointer
900  * type checking.
901  * ----------------------------------------------------------------------------- */
902 
903 #ifdef PERL_OBJECT
904 #define SWIG_PERL_OBJECT_DECL CPerlObj *SWIGUNUSEDPARM(pPerl),
905 #define SWIG_PERL_OBJECT_CALL pPerl,
906 #else
907 #define SWIG_PERL_OBJECT_DECL
908 #define SWIG_PERL_OBJECT_CALL
909 #endif
910 
911 /* Common SWIG API */
912 
913 /* for raw pointers */
914 #define SWIG_ConvertPtr(obj, pp, type, flags)           SWIG_Perl_ConvertPtr(SWIG_PERL_OBJECT_CALL obj, pp, type, flags)
915 #define SWIG_ConvertPtrAndOwn(obj, pp, type, flags,own) SWIG_Perl_ConvertPtrAndOwn(SWIG_PERL_OBJECT_CALL obj, pp, type, flags, own)
916 #define SWIG_NewPointerObj(p, type, flags)              SWIG_Perl_NewPointerObj(SWIG_PERL_OBJECT_CALL p, type, flags)
917 #define SWIG_AcquirePtr(ptr, src)                       SWIG_Perl_AcquirePtr(ptr, src)
918 #define swig_owntype                                    int
919 
920 /* for raw packed data */
921 #define SWIG_ConvertPacked(obj, p, s, type)             SWIG_Perl_ConvertPacked(SWIG_PERL_OBJECT_CALL obj, p, s, type)
922 #define SWIG_NewPackedObj(p, s, type)	                SWIG_Perl_NewPackedObj(SWIG_PERL_OBJECT_CALL p, s, type)
923 
924 /* for class or struct pointers */
925 #define SWIG_ConvertInstance(obj, pptr, type, flags)    SWIG_ConvertPtr(obj, pptr, type, flags)
926 #define SWIG_NewInstanceObj(ptr, type, flags)           SWIG_NewPointerObj(ptr, type, flags)
927 
928 /* for C or C++ function pointers */
929 #define SWIG_ConvertFunctionPtr(obj, pptr, type)        SWIG_ConvertPtr(obj, pptr, type, 0)
930 #define SWIG_NewFunctionPtrObj(ptr, type)               SWIG_NewPointerObj(ptr, type, 0)
931 
932 /* for C++ member pointers, ie, member methods */
933 #define SWIG_ConvertMember(obj, ptr, sz, ty)            SWIG_ConvertPacked(obj, ptr, sz, ty)
934 #define SWIG_NewMemberObj(ptr, sz, type)                SWIG_NewPackedObj(ptr, sz, type)
935 
936 
937 /* Runtime API */
938 
939 #define SWIG_GetModule(clientdata)                      SWIG_Perl_GetModule(clientdata)
940 #define SWIG_SetModule(clientdata, pointer)             SWIG_Perl_SetModule(pointer)
941 
942 
943 /* Error manipulation */
944 
945 #define SWIG_ErrorType(code)                            SWIG_Perl_ErrorType(code)
946 #define SWIG_Error(code, msg)            		sv_setpvf(get_sv("@", GV_ADD), "%s %s", SWIG_ErrorType(code), msg)
947 #define SWIG_fail                        		goto fail
948 
949 /* Perl-specific SWIG API */
950 
951 #define SWIG_MakePtr(sv, ptr, type, flags)              SWIG_Perl_MakePtr(SWIG_PERL_OBJECT_CALL sv, ptr, type, flags)
952 #define SWIG_MakePackedObj(sv, p, s, type)	        SWIG_Perl_MakePackedObj(SWIG_PERL_OBJECT_CALL sv, p, s, type)
953 #define SWIG_SetError(str)                              SWIG_Error(SWIG_RuntimeError, str)
954 
955 
956 #define SWIG_PERL_DECL_ARGS_1(arg1)                     (SWIG_PERL_OBJECT_DECL arg1)
957 #define SWIG_PERL_CALL_ARGS_1(arg1)                     (SWIG_PERL_OBJECT_CALL arg1)
958 #define SWIG_PERL_DECL_ARGS_2(arg1, arg2)               (SWIG_PERL_OBJECT_DECL arg1, arg2)
959 #define SWIG_PERL_CALL_ARGS_2(arg1, arg2)               (SWIG_PERL_OBJECT_CALL arg1, arg2)
960 
961 /* -----------------------------------------------------------------------------
962  * pointers/data manipulation
963  * ----------------------------------------------------------------------------- */
964 
965 /* For backward compatibility only */
966 #define SWIG_POINTER_EXCEPTION  0
967 
968 #ifdef __cplusplus
969 extern "C" {
970 #endif
971 
972 #define SWIG_OWNER   SWIG_POINTER_OWN
973 #define SWIG_SHADOW  SWIG_OWNER << 1
974 
975 #define SWIG_MAYBE_PERL_OBJECT SWIG_PERL_OBJECT_DECL
976 
977 /* SWIG Perl macros */
978 
979 /* Macro to declare an XS function */
980 #ifndef XSPROTO
981 #   define XSPROTO(name) void name(pTHX_ CV* cv)
982 #endif
983 
984 /* Macro to call an XS function */
985 #ifdef PERL_OBJECT
986 #  define SWIG_CALLXS(_name) _name(cv,pPerl)
987 #else
988 #  ifndef MULTIPLICITY
989 #    define SWIG_CALLXS(_name) _name(cv)
990 #  else
991 #    define SWIG_CALLXS(_name) _name(PERL_GET_THX, cv)
992 #  endif
993 #endif
994 
995 #ifdef PERL_OBJECT
996 #define MAGIC_PPERL  CPerlObj *pPerl = (CPerlObj *) this;
997 
998 #ifdef __cplusplus
999 extern "C" {
1000 #endif
1001 typedef int (CPerlObj::*SwigMagicFunc)(SV *, MAGIC *);
1002 #ifdef __cplusplus
1003 }
1004 #endif
1005 
1006 #define SWIG_MAGIC(a,b) (SV *a, MAGIC *b)
1007 #define SWIGCLASS_STATIC
1008 
1009 #else /* PERL_OBJECT */
1010 
1011 #define MAGIC_PPERL
1012 #define SWIGCLASS_STATIC static SWIGUNUSED
1013 
1014 #ifndef MULTIPLICITY
1015 #define SWIG_MAGIC(a,b) (SV *a, MAGIC *b)
1016 
1017 #ifdef __cplusplus
1018 extern "C" {
1019 #endif
1020 typedef int (*SwigMagicFunc)(SV *, MAGIC *);
1021 #ifdef __cplusplus
1022 }
1023 #endif
1024 
1025 #else /* MULTIPLICITY */
1026 
1027 #define SWIG_MAGIC(a,b) (struct interpreter *interp, SV *a, MAGIC *b)
1028 
1029 #ifdef __cplusplus
1030 extern "C" {
1031 #endif
1032 typedef int (*SwigMagicFunc)(struct interpreter *, SV *, MAGIC *);
1033 #ifdef __cplusplus
1034 }
1035 #endif
1036 
1037 #endif /* MULTIPLICITY */
1038 #endif /* PERL_OBJECT */
1039 
1040 #  ifdef PERL_OBJECT
1041 #    define SWIG_croak_null() SWIG_Perl_croak_null(pPerl)
SWIG_Perl_croak_null(CPerlObj * pPerl)1042 static void SWIGUNUSED SWIG_Perl_croak_null(CPerlObj *pPerl)
1043 #  else
1044 static void SWIGUNUSED SWIG_croak_null()
1045 #  endif
1046 {
1047   SV *err = get_sv("@", GV_ADD);
1048 #  if (PERL_VERSION < 6)
1049   croak("%_", err);
1050 #  else
1051   if (sv_isobject(err))
1052     croak(0);
1053   else
1054     croak("%s", SvPV_nolen(err));
1055 #  endif
1056 }
1057 
1058 
1059 /*
1060    Define how strict is the cast between strings and integers/doubles
1061    when overloading between these types occurs.
1062 
1063    The default is making it as strict as possible by using SWIG_AddCast
1064    when needed.
1065 
1066    You can use -DSWIG_PERL_NO_STRICT_STR2NUM at compilation time to
1067    disable the SWIG_AddCast, making the casting between string and
1068    numbers less strict.
1069 
1070    In the end, we try to solve the overloading between strings and
1071    numerical types in the more natural way, but if you can avoid it,
1072    well, avoid it using %rename, for example.
1073 */
1074 #ifndef SWIG_PERL_NO_STRICT_STR2NUM
1075 # ifndef SWIG_PERL_STRICT_STR2NUM
1076 #  define SWIG_PERL_STRICT_STR2NUM
1077 # endif
1078 #endif
1079 #ifdef SWIG_PERL_STRICT_STR2NUM
1080 /* string takes precedence */
1081 #define SWIG_Str2NumCast(x) SWIG_AddCast(x)
1082 #else
1083 /* number takes precedence */
1084 #define SWIG_Str2NumCast(x) x
1085 #endif
1086 
1087 
1088 
1089 #include <stdlib.h>
1090 
1091 SWIGRUNTIME const char *
SWIG_Perl_TypeProxyName(const swig_type_info * type)1092 SWIG_Perl_TypeProxyName(const swig_type_info *type) {
1093   if (!type) return NULL;
1094   if (type->clientdata != NULL) {
1095     return (const char*) type->clientdata;
1096   }
1097   else {
1098     return type->name;
1099   }
1100 }
1101 
1102 /* Identical to SWIG_TypeCheck, except for strcmp comparison */
1103 SWIGRUNTIME swig_cast_info *
SWIG_TypeProxyCheck(const char * c,swig_type_info * ty)1104 SWIG_TypeProxyCheck(const char *c, swig_type_info *ty) {
1105   if (ty) {
1106     swig_cast_info *iter = ty->cast;
1107     while (iter) {
1108       if (strcmp(SWIG_Perl_TypeProxyName(iter->type), c) == 0) {
1109         if (iter == ty->cast)
1110           return iter;
1111         /* Move iter to the top of the linked list */
1112         iter->prev->next = iter->next;
1113         if (iter->next)
1114           iter->next->prev = iter->prev;
1115         iter->next = ty->cast;
1116         iter->prev = 0;
1117         if (ty->cast) ty->cast->prev = iter;
1118         ty->cast = iter;
1119         return iter;
1120       }
1121       iter = iter->next;
1122     }
1123   }
1124   return 0;
1125 }
1126 
1127 /* Acquire a pointer value */
1128 
1129 SWIGRUNTIME int
SWIG_Perl_AcquirePtr(SWIG_MAYBE_PERL_OBJECT SV * sv,int own)1130 SWIG_Perl_AcquirePtr(SWIG_MAYBE_PERL_OBJECT SV *sv, int own) {
1131   /* TODO */
1132   return 0;
1133 }
1134 
1135 /* Function for getting a pointer value */
1136 
1137 SWIGRUNTIME int
SWIG_Perl_ConvertPtrAndOwn(SWIG_MAYBE_PERL_OBJECT SV * sv,void ** ptr,swig_type_info * _t,int flags,int * own)1138 SWIG_Perl_ConvertPtrAndOwn(SWIG_MAYBE_PERL_OBJECT SV *sv, void **ptr, swig_type_info *_t, int flags, int *own) {
1139   swig_cast_info *tc;
1140   void *voidptr = (void *)0;
1141   SV *tsv = 0;
1142 
1143   if (own)
1144     *own = 0;
1145 
1146   /* If magical, apply more magic */
1147   if (SvGMAGICAL(sv))
1148     mg_get(sv);
1149 
1150   /* Check to see if this is an object */
1151   if (sv_isobject(sv)) {
1152     IV tmp = 0;
1153     tsv = (SV*) SvRV(sv);
1154     if ((SvTYPE(tsv) == SVt_PVHV)) {
1155       MAGIC *mg;
1156       if (SvMAGICAL(tsv)) {
1157         mg = mg_find(tsv,'P');
1158         if (mg) {
1159           sv = mg->mg_obj;
1160           if (sv_isobject(sv)) {
1161 	    tsv = (SV*)SvRV(sv);
1162             tmp = SvIV(tsv);
1163           }
1164         }
1165       } else {
1166         return SWIG_ERROR;
1167       }
1168     } else {
1169       tmp = SvIV(tsv);
1170     }
1171     voidptr = INT2PTR(void *,tmp);
1172   } else if (! SvOK(sv)) {            /* Check for undef */
1173     *(ptr) = (void *) 0;
1174     return (flags & SWIG_POINTER_NO_NULL) ? SWIG_NullReferenceError : SWIG_OK;
1175   } else if (SvTYPE(sv) == SVt_RV) {  /* Check for NULL pointer */
1176     if (!SvROK(sv)) {
1177       /* In Perl 5.12 and later, SVt_RV == SVt_IV, so sv could be a valid integer value.  */
1178       if (SvIOK(sv)) {
1179         return SWIG_ERROR;
1180       } else {
1181         /* NULL pointer (reference to undef). */
1182         *(ptr) = (void *) 0;
1183         return SWIG_OK;
1184       }
1185     } else {
1186       return SWIG_ERROR;
1187     }
1188   } else {                            /* Don't know what it is */
1189     return SWIG_ERROR;
1190   }
1191   if (_t) {
1192     /* Now see if the types match */
1193     char *_c = HvNAME(SvSTASH(SvRV(sv)));
1194     tc = SWIG_TypeProxyCheck(_c,_t);
1195 #ifdef SWIG_DIRECTORS
1196     if (!tc && !sv_derived_from(sv,SWIG_Perl_TypeProxyName(_t))) {
1197 #else
1198     if (!tc) {
1199 #endif
1200       return SWIG_ERROR;
1201     }
1202     {
1203       int newmemory = 0;
1204       *ptr = SWIG_TypeCast(tc,voidptr,&newmemory);
1205       if (newmemory == SWIG_CAST_NEW_MEMORY) {
1206         assert(own); /* badly formed typemap which will lead to a memory leak - it must set and use own to delete *ptr */
1207         if (own)
1208           *own = *own | SWIG_CAST_NEW_MEMORY;
1209       }
1210     }
1211   } else {
1212     *ptr = voidptr;
1213   }
1214 
1215   /*
1216    *  DISOWN implementation: we need a perl guru to check this one.
1217    */
1218   if (tsv && (flags & SWIG_POINTER_DISOWN)) {
1219     /*
1220      *  almost copy paste code from below SWIG_POINTER_OWN setting
1221      */
1222     SV *obj = sv;
1223     HV *stash = SvSTASH(SvRV(obj));
1224     GV *gv = *(GV**)hv_fetch(stash, "OWNER", 5, TRUE);
1225     if (isGV(gv)) {
1226       HV *hv = GvHVn(gv);
1227       /*
1228        * To set ownership (see below), a newSViv(1) entry is added.
1229        * Hence, to remove ownership, we delete the entry.
1230        */
1231       if (hv_exists_ent(hv, obj, 0)) {
1232 	hv_delete_ent(hv, obj, 0, 0);
1233       }
1234     }
1235   }
1236   return SWIG_OK;
1237 }
1238 
1239 SWIGRUNTIME int
1240 SWIG_Perl_ConvertPtr(SWIG_MAYBE_PERL_OBJECT SV *sv, void **ptr, swig_type_info *_t, int flags) {
1241   return SWIG_Perl_ConvertPtrAndOwn(sv, ptr, _t, flags, 0);
1242 }
1243 
1244 SWIGRUNTIME void
1245 SWIG_Perl_MakePtr(SWIG_MAYBE_PERL_OBJECT SV *sv, void *ptr, swig_type_info *t, int flags) {
1246   if (ptr && (flags & (SWIG_SHADOW | SWIG_POINTER_OWN))) {
1247     SV *self;
1248     SV *obj=newSV(0);
1249     HV *hash=newHV();
1250     HV *stash;
1251     sv_setref_pv(obj, SWIG_Perl_TypeProxyName(t), ptr);
1252     stash=SvSTASH(SvRV(obj));
1253     if (flags & SWIG_POINTER_OWN) {
1254       HV *hv;
1255       GV *gv = *(GV**)hv_fetch(stash, "OWNER", 5, TRUE);
1256       if (!isGV(gv))
1257         gv_init(gv, stash, "OWNER", 5, FALSE);
1258       hv=GvHVn(gv);
1259       hv_store_ent(hv, obj, newSViv(1), 0);
1260     }
1261     sv_magic((SV *)hash, (SV *)obj, 'P', Nullch, 0);
1262     SvREFCNT_dec(obj);
1263     self=newRV_noinc((SV *)hash);
1264     sv_setsv(sv, self);
1265     SvREFCNT_dec((SV *)self);
1266     sv_bless(sv, stash);
1267   }
1268   else {
1269     sv_setref_pv(sv, SWIG_Perl_TypeProxyName(t), ptr);
1270   }
1271 }
1272 
1273 SWIGRUNTIMEINLINE SV *
1274 SWIG_Perl_NewPointerObj(SWIG_MAYBE_PERL_OBJECT void *ptr, swig_type_info *t, int flags) {
1275   SV *result = sv_newmortal();
1276   SWIG_MakePtr(result, ptr, t, flags);
1277   return result;
1278 }
1279 
1280 SWIGRUNTIME void
1281 SWIG_Perl_MakePackedObj(SWIG_MAYBE_PERL_OBJECT SV *sv, void *ptr, int sz, swig_type_info *type) {
1282   char result[1024];
1283   char *r = result;
1284   if ((2*sz + 1 + strlen(SWIG_Perl_TypeProxyName(type))) > 1000) return;
1285   *(r++) = '_';
1286   r = SWIG_PackData(r,ptr,sz);
1287   strcpy(r,SWIG_Perl_TypeProxyName(type));
1288   sv_setpv(sv, result);
1289 }
1290 
1291 SWIGRUNTIME SV *
1292 SWIG_Perl_NewPackedObj(SWIG_MAYBE_PERL_OBJECT void *ptr, int sz, swig_type_info *type) {
1293   SV *result = sv_newmortal();
1294   SWIG_Perl_MakePackedObj(result, ptr, sz, type);
1295   return result;
1296 }
1297 
1298 /* Convert a packed pointer value */
1299 SWIGRUNTIME int
1300 SWIG_Perl_ConvertPacked(SWIG_MAYBE_PERL_OBJECT SV *obj, void *ptr, int sz, swig_type_info *ty) {
1301   swig_cast_info *tc;
1302   const char  *c = 0;
1303 
1304   if ((!obj) || (!SvOK(obj))) return SWIG_ERROR;
1305   c = SvPV_nolen(obj);
1306   /* Pointer values must start with leading underscore */
1307   if (*c != '_') return SWIG_ERROR;
1308   c++;
1309   c = SWIG_UnpackData(c,ptr,sz);
1310   if (ty) {
1311     tc = SWIG_TypeCheck(c,ty);
1312     if (!tc) return SWIG_ERROR;
1313   }
1314   return SWIG_OK;
1315 }
1316 
1317 
1318 /* Macros for low-level exception handling */
1319 #define SWIG_croak(x)    { SWIG_Error(SWIG_RuntimeError, x); SWIG_fail; }
1320 
1321 
1322 typedef XSPROTO(SwigPerlWrapper);
1323 typedef SwigPerlWrapper *SwigPerlWrapperPtr;
1324 
1325 /* Structure for command table */
1326 typedef struct {
1327   const char         *name;
1328   SwigPerlWrapperPtr  wrapper;
1329 } swig_command_info;
1330 
1331 /* Information for constant table */
1332 
1333 #define SWIG_INT     1
1334 #define SWIG_FLOAT   2
1335 #define SWIG_STRING  3
1336 #define SWIG_POINTER 4
1337 #define SWIG_BINARY  5
1338 
1339 /* Constant information structure */
1340 typedef struct swig_constant_info {
1341     int              type;
1342     const char      *name;
1343     long             lvalue;
1344     double           dvalue;
1345     void            *pvalue;
1346     swig_type_info **ptype;
1347 } swig_constant_info;
1348 
1349 
1350 /* Structure for variable table */
1351 typedef struct {
1352   const char   *name;
1353   SwigMagicFunc   set;
1354   SwigMagicFunc   get;
1355   swig_type_info  **type;
1356 } swig_variable_info;
1357 
1358 /* Magic variable code */
1359 #ifndef PERL_OBJECT
1360 # ifdef __cplusplus
1361 #  define swig_create_magic(s,a,b,c) _swig_create_magic(s,const_cast<char*>(a),b,c)
1362 # else
1363 #  define swig_create_magic(s,a,b,c) _swig_create_magic(s,(char*)(a),b,c)
1364 # endif
1365 # ifndef MULTIPLICITY
1366 SWIGRUNTIME void _swig_create_magic(SV *sv, char *name, int (*set)(SV *, MAGIC *), int (*get)(SV *,MAGIC *))
1367 # else
1368 SWIGRUNTIME void _swig_create_magic(SV *sv, char *name, int (*set)(struct interpreter*, SV *, MAGIC *), int (*get)(struct interpreter*, SV *,MAGIC *))
1369 # endif
1370 #else
1371 #  define swig_create_magic(s,a,b,c) _swig_create_magic(pPerl,s,a,b,c)
1372 SWIGRUNTIME void _swig_create_magic(CPerlObj *pPerl, SV *sv, const char *name, int (CPerlObj::*set)(SV *, MAGIC *), int (CPerlObj::*get)(SV *, MAGIC *))
1373 #endif
1374 {
1375   MAGIC *mg;
1376   sv_magic(sv,sv,'U',name,strlen(name));
1377   mg = mg_find(sv,'U');
1378   mg->mg_virtual = (MGVTBL *) malloc(sizeof(MGVTBL));
1379   mg->mg_virtual->svt_get = (SwigMagicFunc) get;
1380   mg->mg_virtual->svt_set = (SwigMagicFunc) set;
1381   mg->mg_virtual->svt_len = 0;
1382   mg->mg_virtual->svt_clear = 0;
1383   mg->mg_virtual->svt_free = 0;
1384 }
1385 
1386 
1387 SWIGRUNTIME swig_module_info *
1388 SWIG_Perl_GetModule(void *SWIGUNUSEDPARM(clientdata)) {
1389   static void *type_pointer = (void *)0;
1390   SV *pointer;
1391 
1392   /* first check if pointer already created */
1393   if (!type_pointer) {
1394     pointer = get_sv("swig_runtime_data::type_pointer" SWIG_RUNTIME_VERSION SWIG_TYPE_TABLE_NAME, FALSE | GV_ADDMULTI);
1395     if (pointer && SvOK(pointer)) {
1396       type_pointer = INT2PTR(swig_type_info **, SvIV(pointer));
1397     }
1398   }
1399 
1400   return (swig_module_info *) type_pointer;
1401 }
1402 
1403 SWIGRUNTIME void
1404 SWIG_Perl_SetModule(swig_module_info *module) {
1405   SV *pointer;
1406 
1407   /* create a new pointer */
1408   pointer = get_sv("swig_runtime_data::type_pointer" SWIG_RUNTIME_VERSION SWIG_TYPE_TABLE_NAME, TRUE | GV_ADDMULTI);
1409   sv_setiv(pointer, PTR2IV(module));
1410 }
1411 
1412 #ifdef __cplusplus
1413 }
1414 #endif
1415 
1416 /* Workaround perl5 global namespace pollution. Note that undefining library
1417  * functions like fopen will not solve the problem on all platforms as fopen
1418  * might be a macro on Windows but not necessarily on other operating systems. */
1419 #ifdef do_open
1420   #undef do_open
1421 #endif
1422 #ifdef do_close
1423   #undef do_close
1424 #endif
1425 #ifdef do_exec
1426   #undef do_exec
1427 #endif
1428 #ifdef scalar
1429   #undef scalar
1430 #endif
1431 #ifdef list
1432   #undef list
1433 #endif
1434 #ifdef apply
1435   #undef apply
1436 #endif
1437 #ifdef convert
1438   #undef convert
1439 #endif
1440 #ifdef Error
1441   #undef Error
1442 #endif
1443 #ifdef form
1444   #undef form
1445 #endif
1446 #ifdef vform
1447   #undef vform
1448 #endif
1449 #ifdef LABEL
1450   #undef LABEL
1451 #endif
1452 #ifdef METHOD
1453   #undef METHOD
1454 #endif
1455 #ifdef Move
1456   #undef Move
1457 #endif
1458 #ifdef yylex
1459   #undef yylex
1460 #endif
1461 #ifdef yyparse
1462   #undef yyparse
1463 #endif
1464 #ifdef yyerror
1465   #undef yyerror
1466 #endif
1467 #ifdef invert
1468   #undef invert
1469 #endif
1470 #ifdef ref
1471   #undef ref
1472 #endif
1473 #ifdef read
1474   #undef read
1475 #endif
1476 #ifdef write
1477   #undef write
1478 #endif
1479 #ifdef eof
1480   #undef eof
1481 #endif
1482 #ifdef close
1483   #undef close
1484 #endif
1485 #ifdef rewind
1486   #undef rewind
1487 #endif
1488 #ifdef free
1489   #undef free
1490 #endif
1491 #ifdef malloc
1492   #undef malloc
1493 #endif
1494 #ifdef calloc
1495   #undef calloc
1496 #endif
1497 #ifdef Stat
1498   #undef Stat
1499 #endif
1500 #ifdef check
1501   #undef check
1502 #endif
1503 #ifdef seekdir
1504   #undef seekdir
1505 #endif
1506 #ifdef open
1507   #undef open
1508 #endif
1509 #ifdef readdir
1510   #undef readdir
1511 #endif
1512 #ifdef bind
1513   #undef bind
1514 #endif
1515 #ifdef access
1516   #undef access
1517 #endif
1518 #ifdef stat
1519   #undef stat
1520 #endif
1521 #ifdef seed
1522   #undef seed
1523 #endif
1524 
1525 #ifdef bool
1526   /* Leave if macro is from C99 stdbool.h */
1527   #ifndef __bool_true_false_are_defined
1528     #undef bool
1529   #endif
1530 #endif
1531 
1532 
1533 
1534 
1535 #define SWIG_exception_fail(code, msg) do { SWIG_Error(code, msg); SWIG_fail; } while(0)
1536 
1537 #define SWIG_contract_assert(expr, msg) if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } else
1538 
1539 
1540 
1541   #define SWIG_exception(code, msg) do { SWIG_Error(code, msg); SWIG_fail;; } while(0)
1542 
1543 
1544 /* -------- TYPES TABLE (BEGIN) -------- */
1545 
1546 #define SWIGTYPE_p_COORDINATE swig_types[0]
1547 #define SWIGTYPE_p_SOLUTION swig_types[1]
1548 #define SWIGTYPE_p_Tree swig_types[2]
1549 #define SWIGTYPE_p__struct_en swig_types[3]
1550 #define SWIGTYPE_p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__double swig_types[4]
1551 #define SWIGTYPE_p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__doubleArray swig_types[5]
1552 #define SWIGTYPE_p_a_5__a_5__double swig_types[6]
1553 #define SWIGTYPE_p_a_5__a_5__doubleArray swig_types[7]
1554 #define SWIGTYPE_p_a_5__a_5__int swig_types[8]
1555 #define SWIGTYPE_p_a_5__a_5__intArray swig_types[9]
1556 #define SWIGTYPE_p_a_5__double swig_types[10]
1557 #define SWIGTYPE_p_a_5__doubleArray swig_types[11]
1558 #define SWIGTYPE_p_a_7_1__a_5__a_5__a_5__a_5__int swig_types[12]
1559 #define SWIGTYPE_p_a_7_1__a_5__a_5__a_5__a_5__intArray swig_types[13]
1560 #define SWIGTYPE_p_a_7_1__a_5__a_5__a_5__int swig_types[14]
1561 #define SWIGTYPE_p_a_7_1__a_5__a_5__a_5__intArray swig_types[15]
1562 #define SWIGTYPE_p_a_7_1__a_5__a_5__int swig_types[16]
1563 #define SWIGTYPE_p_a_7_1__a_5__a_5__intArray swig_types[17]
1564 #define SWIGTYPE_p_a_MAXLOOP_1__double swig_types[18]
1565 #define SWIGTYPE_p_a_MAXLOOP_1__doubleArray swig_types[19]
1566 #define SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__double swig_types[20]
1567 #define SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__doubleArray swig_types[21]
1568 #define SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__int swig_types[22]
1569 #define SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__intArray swig_types[23]
1570 #define SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__a_5__double swig_types[24]
1571 #define SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__a_5__doubleArray swig_types[25]
1572 #define SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__a_5__int swig_types[26]
1573 #define SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__a_5__intArray swig_types[27]
1574 #define SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__double swig_types[28]
1575 #define SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__doubleArray swig_types[29]
1576 #define SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__int swig_types[30]
1577 #define SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__intArray swig_types[31]
1578 #define SWIGTYPE_p_a_NBPAIRS_1__double swig_types[32]
1579 #define SWIGTYPE_p_a_NBPAIRS_1__doubleArray swig_types[33]
1580 #define SWIGTYPE_p_char swig_types[34]
1581 #define SWIGTYPE_p_difference_type swig_types[35]
1582 #define SWIGTYPE_p_double swig_types[36]
1583 #define SWIGTYPE_p_doubleArray swig_types[37]
1584 #define SWIGTYPE_p_duplexT swig_types[38]
1585 #define SWIGTYPE_p_duplex_list_t swig_types[39]
1586 #define SWIGTYPE_p_first_type swig_types[40]
1587 #define SWIGTYPE_p_float swig_types[41]
1588 #define SWIGTYPE_p_floatArray swig_types[42]
1589 #define SWIGTYPE_p_heat_capacity_result swig_types[43]
1590 #define SWIGTYPE_p_int swig_types[44]
1591 #define SWIGTYPE_p_intArray swig_types[45]
1592 #define SWIGTYPE_p_my_fc_type_e swig_types[46]
1593 #define SWIGTYPE_p_p_char swig_types[47]
1594 #define SWIGTYPE_p_p_p_char swig_types[48]
1595 #define SWIGTYPE_p_p_void swig_types[49]
1596 #define SWIGTYPE_p_second_type swig_types[50]
1597 #define SWIGTYPE_p_short swig_types[51]
1598 #define SWIGTYPE_p_size_type swig_types[52]
1599 #define SWIGTYPE_p_std__out_of_range swig_types[53]
1600 #define SWIGTYPE_p_std__pairT_double_double_t swig_types[54]
1601 #define SWIGTYPE_p_std__string swig_types[55]
1602 #define SWIGTYPE_p_std__vectorT_COORDINATE_t swig_types[56]
1603 #define SWIGTYPE_p_std__vectorT_SOLUTION_t swig_types[57]
1604 #define SWIGTYPE_p_std__vectorT_char_const_p_t swig_types[58]
1605 #define SWIGTYPE_p_std__vectorT_double_t swig_types[59]
1606 #define SWIGTYPE_p_std__vectorT_duplex_list_t_t swig_types[60]
1607 #define SWIGTYPE_p_std__vectorT_heat_capacity_result_t swig_types[61]
1608 #define SWIGTYPE_p_std__vectorT_int_t swig_types[62]
1609 #define SWIGTYPE_p_std__vectorT_std__string_t swig_types[63]
1610 #define SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t swig_types[64]
1611 #define SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t swig_types[65]
1612 #define SWIGTYPE_p_std__vectorT_subopt_solution_t swig_types[66]
1613 #define SWIGTYPE_p_std__vectorT_unsigned_int_t swig_types[67]
1614 #define SWIGTYPE_p_std__vectorT_vrna_ep_t_t swig_types[68]
1615 #define SWIGTYPE_p_std__vectorT_vrna_move_t_t swig_types[69]
1616 #define SWIGTYPE_p_std__vectorT_vrna_path_t_t swig_types[70]
1617 #define SWIGTYPE_p_subopt_solution swig_types[71]
1618 #define SWIGTYPE_p_swString swig_types[72]
1619 #define SWIGTYPE_p_unsigned_int swig_types[73]
1620 #define SWIGTYPE_p_unsigned_short swig_types[74]
1621 #define SWIGTYPE_p_value_type swig_types[75]
1622 #define SWIGTYPE_p_void swig_types[76]
1623 #define SWIGTYPE_p_vrna_basepair_t swig_types[77]
1624 #define SWIGTYPE_p_vrna_bp_stack_s swig_types[78]
1625 #define SWIGTYPE_p_vrna_command_s swig_types[79]
1626 #define SWIGTYPE_p_vrna_cpair_s swig_types[80]
1627 #define SWIGTYPE_p_vrna_dimer_pf_s swig_types[81]
1628 #define SWIGTYPE_p_vrna_elem_prob_s swig_types[82]
1629 #define SWIGTYPE_p_vrna_ep_t swig_types[83]
1630 #define SWIGTYPE_p_vrna_exp_param_t swig_types[84]
1631 #define SWIGTYPE_p_vrna_fold_compound_t swig_types[85]
1632 #define SWIGTYPE_p_vrna_md_t swig_types[86]
1633 #define SWIGTYPE_p_vrna_move_t swig_types[87]
1634 #define SWIGTYPE_p_vrna_param_t swig_types[88]
1635 #define SWIGTYPE_p_vrna_path_options_s swig_types[89]
1636 #define SWIGTYPE_p_vrna_path_s swig_types[90]
1637 #define SWIGTYPE_p_vrna_path_t swig_types[91]
1638 #define SWIGTYPE_p_vrna_pbacktrack_mem_t swig_types[92]
1639 #define SWIGTYPE_p_vrna_pinfo_s swig_types[93]
1640 #define SWIGTYPE_p_vrna_sc_s swig_types[94]
1641 static swig_type_info *swig_types[96];
1642 static swig_module_info swig_module = {swig_types, 95, 0, 0, 0, 0};
1643 #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
1644 #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
1645 
1646 /* -------- TYPES TABLE (END) -------- */
1647 
1648 #define SWIG_init    boot_RNA
1649 
1650 #define SWIG_name   "RNAc::boot_RNA"
1651 #define SWIG_prefix "RNAc::"
1652 
1653 #define SWIGVERSION 0x040002
1654 #define SWIG_VERSION SWIGVERSION
1655 
1656 
1657 #define SWIG_as_voidptr(a) const_cast< void * >(static_cast< const void * >(a))
1658 #define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),reinterpret_cast< void** >(a))
1659 
1660 
1661 #include <stdexcept>
1662 
1663 
1664 #ifdef __cplusplus
1665 extern "C"
1666 #endif
1667 #ifndef PERL_OBJECT
1668 #ifndef MULTIPLICITY
1669 SWIGEXPORT void SWIG_init (CV* cv);
1670 #else
1671 SWIGEXPORT void SWIG_init (pTHXo_ CV* cv);
1672 #endif
1673 #else
1674 SWIGEXPORT void SWIG_init (CV *cv, CPerlObj *);
1675 #endif
1676 
1677 
1678 
1679 extern "C" {
1680 #include  <ViennaRNA/model.h>
1681 #include  <ViennaRNA/datastructures/basic.h>
1682 #include  <ViennaRNA/fold_compound.h>
1683 #include  <ViennaRNA/dp_matrices.h>
1684 #include  <ViennaRNA/alphabet.h>
1685 #include  <ViennaRNA/sequence.h>
1686 #include  <ViennaRNA/grammar.h>
1687 #include  <ViennaRNA/unstructured_domains.h>
1688 #include  <ViennaRNA/structured_domains.h>
1689 #include  <ViennaRNA/commands.h>
1690 
1691 #include  <ViennaRNA/utils/basic.h>
1692 #include  <ViennaRNA/utils/structures.h>
1693 #include  <ViennaRNA/utils/strings.h>
1694 #include  <ViennaRNA/utils/alignments.h>
1695 #include  <ViennaRNA/fold_vars.h>
1696 
1697 #include  <ViennaRNA/params/constants.h>
1698 #include  <ViennaRNA/params/basic.h>
1699 #include  <ViennaRNA/params/io.h>
1700 #include  <ViennaRNA/params/default.h>
1701 
1702 #include  <ViennaRNA/constraints/basic.h>
1703 #include  <ViennaRNA/constraints/hard.h>
1704 #include  <ViennaRNA/constraints/soft.h>
1705 #include  <ViennaRNA/constraints/SHAPE.h>
1706 #include  <ViennaRNA/constraints/ligand.h>
1707 
1708 #include  <ViennaRNA/plotting/naview.h>
1709 #include  <ViennaRNA/plotting/layouts.h>
1710 #include  <ViennaRNA/plotting/structures.h>
1711 #include  <ViennaRNA/plotting/alignments.h>
1712 #include  <ViennaRNA/plotting/probabilities.h>
1713 
1714 #include  <ViennaRNA/io/file_formats.h>
1715 #include  <ViennaRNA/io/file_formats_msa.h>
1716 #include  <ViennaRNA/io/utils.h>
1717 
1718 #include  <ViennaRNA/loops/external.h>
1719 #include  <ViennaRNA/loops/hairpin.h>
1720 #include  <ViennaRNA/loops/internal.h>
1721 #include  <ViennaRNA/loops/multibranch.h>
1722 
1723 #include  <ViennaRNA/mfe.h>
1724 #include  <ViennaRNA/mfe_window.h>
1725 #include  <ViennaRNA/fold.h>
1726 #include  <ViennaRNA/eval.h>
1727 #include  <ViennaRNA/cofold.h>
1728 #include  <ViennaRNA/alifold.h>
1729 
1730 #include  <ViennaRNA/part_func.h>
1731 #include  <ViennaRNA/part_func_window.h>
1732 #include  <ViennaRNA/part_func_co.h>
1733 #include  <ViennaRNA/equilibrium_probs.h>
1734 #include  <ViennaRNA/boltzmann_sampling.h>
1735 #include  <ViennaRNA/concentrations.h>
1736 #include  <ViennaRNA/LPfold.h>
1737 #include  <ViennaRNA/centroid.h>
1738 #include  <ViennaRNA/MEA.h>
1739 #include  <ViennaRNA/heat_capacity.h>
1740 
1741 #ifdef VRNA_WITH_SVM
1742 #include  <ViennaRNA/zscore.h>
1743 #endif
1744 
1745 #include  <ViennaRNA/inverse.h>
1746 #include  <ViennaRNA/RNAstruct.h>
1747 #include  <ViennaRNA/treedist.h>
1748 #include  <ViennaRNA/stringdist.h>
1749 #include  <ViennaRNA/profiledist.h>
1750 #include  <ViennaRNA/dist_vars.h>
1751 #include  <ViennaRNA/pair_mat.h>
1752 #include  <ViennaRNA/subopt.h>
1753 #include  <ViennaRNA/duplex.h>
1754 
1755 #include  <ViennaRNA/combinatorics.h>
1756 
1757 #include  <ViennaRNA/move_set.h>
1758 #include  <ViennaRNA/landscape/paths.h>
1759 #include  <ViennaRNA/landscape/findpath.h>
1760 #include  <ViennaRNA/landscape/move.h>
1761 #include  <ViennaRNA/landscape/neighbor.h>
1762 #include  <ViennaRNA/landscape/walk.h>
1763 
1764 #include  <ViennaRNA/mm.h>
1765 }
1766 
1767 
1768 
new_intP(size_t nelements)1769   static int *new_intP(size_t nelements) {
1770     return (new int[nelements]());
1771   }
1772 
delete_intP(int * ary)1773   static void delete_intP(int *ary) {
1774     delete[] ary;
1775   }
1776 
intP_getitem(int * ary,size_t index)1777   static int intP_getitem(int *ary, size_t index) {
1778     return ary[index];
1779   }
intP_setitem(int * ary,size_t index,int value)1780   static void intP_setitem(int *ary, size_t index, int value) {
1781     ary[index] = value;
1782   }
1783 
1784 
1785 #include <limits.h>
1786 #if !defined(SWIG_NO_LLONG_MAX)
1787 # if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__)
1788 #   define LLONG_MAX __LONG_LONG_MAX__
1789 #   define LLONG_MIN (-LLONG_MAX - 1LL)
1790 #   define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL)
1791 # endif
1792 #endif
1793 
1794 
1795 #include <stdlib.h>
1796 #ifdef _MSC_VER
1797 # ifndef strtoull
1798 #  define strtoull _strtoui64
1799 # endif
1800 # ifndef strtoll
1801 #  define strtoll _strtoi64
1802 # endif
1803 #endif
1804 
1805 
1806 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,double * val)1807 SWIG_AsVal_double SWIG_PERL_DECL_ARGS_2(SV *obj, double *val)
1808 {
1809   if (SvNIOK(obj)) {
1810     if (val) *val = SvNV(obj);
1811     return SWIG_OK;
1812   } else if (SvIOK(obj)) {
1813     if (val) *val = (double) SvIV(obj);
1814     return SWIG_AddCast(SWIG_OK);
1815   } else {
1816     const char *nptr = SvPV_nolen(obj);
1817     if (nptr) {
1818       char *endptr;
1819       double v;
1820       errno = 0;
1821       v = strtod(nptr, &endptr);
1822       if (errno == ERANGE) {
1823 	errno = 0;
1824 	return SWIG_OverflowError;
1825       } else {
1826 	if (*endptr == '\0') {
1827 	  if (val) *val = v;
1828 	  return SWIG_Str2NumCast(SWIG_OK);
1829 	}
1830       }
1831     }
1832   }
1833   return SWIG_TypeError;
1834 }
1835 
1836 
1837 #include <float.h>
1838 
1839 
1840 #include <math.h>
1841 
1842 
1843 SWIGINTERNINLINE int
SWIG_CanCastAsInteger(double * d,double min,double max)1844 SWIG_CanCastAsInteger(double *d, double min, double max) {
1845   double x = *d;
1846   if ((min <= x && x <= max)) {
1847    double fx = floor(x);
1848    double cx = ceil(x);
1849    double rd =  ((x - fx) < 0.5) ? fx : cx; /* simple rint */
1850    if ((errno == EDOM) || (errno == ERANGE)) {
1851      errno = 0;
1852    } else {
1853      double summ, reps, diff;
1854      if (rd < x) {
1855        diff = x - rd;
1856      } else if (rd > x) {
1857        diff = rd - x;
1858      } else {
1859        return 1;
1860      }
1861      summ = rd + x;
1862      reps = diff/summ;
1863      if (reps < 8*DBL_EPSILON) {
1864        *d = rd;
1865        return 1;
1866      }
1867    }
1868   }
1869   return 0;
1870 }
1871 
1872 
1873 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,unsigned long * val)1874 SWIG_AsVal_unsigned_SS_long SWIG_PERL_DECL_ARGS_2(SV *obj, unsigned long *val)
1875 {
1876   if (SvUOK(obj)) {
1877     UV v = SvUV(obj);
1878     if (UVSIZE <= sizeof(*val) || v <= ULONG_MAX) {
1879       if (val) *val = v;
1880       return SWIG_OK;
1881     }
1882     return SWIG_OverflowError;
1883   } else if (SvIOK(obj)) {
1884     IV v = SvIV(obj);
1885     if (v >= 0 && (IVSIZE <= sizeof(*val) || v <= ULONG_MAX)) {
1886       if (val) *val = v;
1887       return SWIG_OK;
1888     }
1889     return SWIG_OverflowError;
1890   } else {
1891     int dispatch = 0;
1892     const char *nptr = SvPV_nolen(obj);
1893     if (nptr) {
1894       char *endptr;
1895       unsigned long v;
1896       errno = 0;
1897       v = strtoul(nptr, &endptr,0);
1898       if (errno == ERANGE) {
1899 	errno = 0;
1900 	return SWIG_OverflowError;
1901       } else {
1902 	if (*endptr == '\0') {
1903 	  if (val) *val = v;
1904 	  return SWIG_Str2NumCast(SWIG_OK);
1905 	}
1906       }
1907     }
1908     if (!dispatch) {
1909       double d;
1910       int res = SWIG_AddCast(SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(obj,&d));
1911       if (SWIG_IsOK(res) && SWIG_CanCastAsInteger(&d, 0, ULONG_MAX)) {
1912 	if (val) *val = (unsigned long)(d);
1913 	return res;
1914       }
1915     }
1916   }
1917   return SWIG_TypeError;
1918 }
1919 
1920 
1921 #if defined(LLONG_MAX) && !defined(SWIG_LONG_LONG_AVAILABLE)
1922 #  define SWIG_LONG_LONG_AVAILABLE
1923 #endif
1924 
1925 
1926 #ifdef SWIG_LONG_LONG_AVAILABLE
1927 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,unsigned long long * val)1928 SWIG_AsVal_unsigned_SS_long_SS_long SWIG_PERL_DECL_ARGS_2(SV *obj, unsigned long long *val)
1929 {
1930   if (SvUOK(obj)) {
1931     /* pretty sure this should be conditional on
1932      * (UVSIZE <= sizeof(*val) || v <= ULLONG_MAX) */
1933     if (val) *val = SvUV(obj);
1934     return SWIG_OK;
1935   } else  if (SvIOK(obj)) {
1936     IV v = SvIV(obj);
1937     if (v >= 0 && (IVSIZE <= sizeof(*val) || v <= ULLONG_MAX)) {
1938       if (val) *val = v;
1939       return SWIG_OK;
1940     } else {
1941       return SWIG_OverflowError;
1942     }
1943   } else {
1944     int dispatch = 0;
1945     const char *nptr = SvPV_nolen(obj);
1946     if (nptr) {
1947       char *endptr;
1948       unsigned long long v;
1949       errno = 0;
1950       v = strtoull(nptr, &endptr,0);
1951       if (errno == ERANGE) {
1952 	errno = 0;
1953 	return SWIG_OverflowError;
1954       } else {
1955 	if (*endptr == '\0') {
1956 	  if (val) *val = v;
1957 	  return SWIG_Str2NumCast(SWIG_OK);
1958 	}
1959       }
1960     }
1961     if (!dispatch) {
1962       const double mant_max = 1LL << DBL_MANT_DIG;
1963       double d;
1964       int res = SWIG_AddCast(SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(obj,&d));
1965       if (SWIG_IsOK(res) && SWIG_CanCastAsInteger(&d, 0, mant_max)) {
1966 	if (val) *val = (unsigned long long)(d);
1967 	return res;
1968       }
1969     }
1970   }
1971   return SWIG_TypeError;
1972 }
1973 #endif
1974 
1975 
1976 SWIGINTERNINLINE int
SWIG_PERL_DECL_ARGS_2(SV * obj,size_t * val)1977 SWIG_AsVal_size_t SWIG_PERL_DECL_ARGS_2(SV * obj, size_t *val)
1978 {
1979   int res = SWIG_TypeError;
1980 #ifdef SWIG_LONG_LONG_AVAILABLE
1981   if (sizeof(size_t) <= sizeof(unsigned long)) {
1982 #endif
1983     unsigned long v;
1984     res = SWIG_AsVal_unsigned_SS_long SWIG_PERL_CALL_ARGS_2(obj, val ? &v : 0);
1985     if (SWIG_IsOK(res) && val) *val = static_cast< size_t >(v);
1986 #ifdef SWIG_LONG_LONG_AVAILABLE
1987   } else if (sizeof(size_t) <= sizeof(unsigned long long)) {
1988     unsigned long long v;
1989     res = SWIG_AsVal_unsigned_SS_long_SS_long SWIG_PERL_CALL_ARGS_2(obj, val ? &v : 0);
1990     if (SWIG_IsOK(res) && val) *val = static_cast< size_t >(v);
1991   }
1992 #endif
1993   return res;
1994 }
1995 
1996 
1997 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(long value)1998 SWIG_From_long  SWIG_PERL_DECL_ARGS_1(long value)
1999 {
2000   SV *sv;
2001   if (IVSIZE >= sizeof(value) || (value >= IV_MIN && value <= IV_MAX))
2002     sv = newSViv(value);
2003   else
2004     sv = newSVpvf("%ld", value);
2005   return sv_2mortal(sv);
2006 }
2007 
2008 
2009 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(int value)2010 SWIG_From_int  SWIG_PERL_DECL_ARGS_1(int value)
2011 {
2012   return SWIG_From_long  SWIG_PERL_CALL_ARGS_1(value);
2013 }
2014 
2015 
2016 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,long * val)2017 SWIG_AsVal_long SWIG_PERL_DECL_ARGS_2(SV *obj, long* val)
2018 {
2019   if (SvUOK(obj)) {
2020     UV v = SvUV(obj);
2021     if (UVSIZE < sizeof(*val) || v <= LONG_MAX) {
2022       if (val) *val = v;
2023       return SWIG_OK;
2024     }
2025     return SWIG_OverflowError;
2026   } else if (SvIOK(obj)) {
2027     IV v = SvIV(obj);
2028     if (IVSIZE <= sizeof(*val) || (v >= LONG_MIN && v <= LONG_MAX)) {
2029       if(val) *val = v;
2030       return SWIG_OK;
2031     }
2032     return SWIG_OverflowError;
2033   } else {
2034     int dispatch = 0;
2035     const char *nptr = SvPV_nolen(obj);
2036     if (nptr) {
2037       char *endptr;
2038       long v;
2039       errno = 0;
2040       v = strtol(nptr, &endptr,0);
2041       if (errno == ERANGE) {
2042 	errno = 0;
2043 	return SWIG_OverflowError;
2044       } else {
2045 	if (*endptr == '\0') {
2046 	  if (val) *val = v;
2047 	  return SWIG_Str2NumCast(SWIG_OK);
2048 	}
2049       }
2050     }
2051     if (!dispatch) {
2052       double d;
2053       int res = SWIG_AddCast(SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(obj,&d));
2054       if (SWIG_IsOK(res) && SWIG_CanCastAsInteger(&d, LONG_MIN, LONG_MAX)) {
2055 	if (val) *val = (long)(d);
2056 	return res;
2057       }
2058     }
2059   }
2060   return SWIG_TypeError;
2061 }
2062 
2063 
2064 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,int * val)2065 SWIG_AsVal_int SWIG_PERL_DECL_ARGS_2(SV * obj, int *val)
2066 {
2067   long v;
2068   int res = SWIG_AsVal_long SWIG_PERL_CALL_ARGS_2(obj, &v);
2069   if (SWIG_IsOK(res)) {
2070     if ((v < INT_MIN || v > INT_MAX)) {
2071       return SWIG_OverflowError;
2072     } else {
2073       if (val) *val = static_cast< int >(v);
2074     }
2075   }
2076   return res;
2077 }
2078 
2079 
2080 typedef int intArray;
2081 
new_intArray(size_t nelements)2082 SWIGINTERN intArray *new_intArray(size_t nelements){
2083     return (new int[nelements]());
2084   }
delete_intArray(intArray * self)2085 SWIGINTERN void delete_intArray(intArray *self){
2086     delete[] self;
2087   }
intArray_getitem(intArray * self,size_t index)2088 SWIGINTERN int intArray_getitem(intArray *self,size_t index){
2089     return self[index];
2090   }
intArray_setitem(intArray * self,size_t index,int value)2091 SWIGINTERN void intArray_setitem(intArray *self,size_t index,int value){
2092     self[index] = value;
2093   }
intArray_cast(intArray * self)2094 SWIGINTERN int *intArray_cast(intArray *self){
2095     return self;
2096   }
intArray_frompointer(int * t)2097 SWIGINTERN intArray *intArray_frompointer(int *t){
2098     return static_cast< intArray * >(t);
2099   }
2100 
new_floatP(size_t nelements)2101   static float *new_floatP(size_t nelements) {
2102     return (new float[nelements]());
2103   }
2104 
delete_floatP(float * ary)2105   static void delete_floatP(float *ary) {
2106     delete[] ary;
2107   }
2108 
floatP_getitem(float * ary,size_t index)2109   static float floatP_getitem(float *ary, size_t index) {
2110     return ary[index];
2111   }
floatP_setitem(float * ary,size_t index,float value)2112   static void floatP_setitem(float *ary, size_t index, float value) {
2113     ary[index] = value;
2114   }
2115 
2116 
2117 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(double value)2118 SWIG_From_double  SWIG_PERL_DECL_ARGS_1(double value)
2119 {
2120   return sv_2mortal(newSVnv(value));
2121 }
2122 
2123 
2124 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(float value)2125 SWIG_From_float  SWIG_PERL_DECL_ARGS_1(float value)
2126 {
2127   return SWIG_From_double  SWIG_PERL_CALL_ARGS_1(value);
2128 }
2129 
2130 
2131 /* Getting isfinite working pre C99 across multiple platforms is non-trivial. Users can provide SWIG_isfinite on older platforms. */
2132 #ifndef SWIG_isfinite
2133 /* isfinite() is a macro for C99 */
2134 # if defined(isfinite)
2135 #  define SWIG_isfinite(X) (isfinite(X))
2136 # elif defined(__cplusplus) && __cplusplus >= 201103L
2137 /* Use a template so that this works whether isfinite() is std::isfinite() or
2138  * in the global namespace.  The reality seems to vary between compiler
2139  * versions.
2140  *
2141  * Make sure namespace std exists to avoid compiler warnings.
2142  *
2143  * extern "C++" is required as this fragment can end up inside an extern "C" { } block
2144  */
2145 namespace std { }
2146 extern "C++" template<typename T>
SWIG_isfinite_func(T x)2147 inline int SWIG_isfinite_func(T x) {
2148   using namespace std;
2149   return isfinite(x);
2150 }
2151 #  define SWIG_isfinite(X) (SWIG_isfinite_func(X))
2152 # elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2))
2153 #  define SWIG_isfinite(X) (__builtin_isfinite(X))
2154 # elif defined(__clang__) && defined(__has_builtin)
2155 #  if __has_builtin(__builtin_isfinite)
2156 #   define SWIG_isfinite(X) (__builtin_isfinite(X))
2157 #  endif
2158 # elif defined(_MSC_VER)
2159 #  define SWIG_isfinite(X) (_finite(X))
2160 # elif defined(__sun) && defined(__SVR4)
2161 #  include <ieeefp.h>
2162 #  define SWIG_isfinite(X) (finite(X))
2163 # endif
2164 #endif
2165 
2166 
2167 /* Accept infinite as a valid float value unless we are unable to check if a value is finite */
2168 #ifdef SWIG_isfinite
2169 # define SWIG_Float_Overflow_Check(X) ((X < -FLT_MAX || X > FLT_MAX) && SWIG_isfinite(X))
2170 #else
2171 # define SWIG_Float_Overflow_Check(X) ((X < -FLT_MAX || X > FLT_MAX))
2172 #endif
2173 
2174 
2175 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,float * val)2176 SWIG_AsVal_float SWIG_PERL_DECL_ARGS_2(SV * obj, float *val)
2177 {
2178   double v;
2179   int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(obj, &v);
2180   if (SWIG_IsOK(res)) {
2181     if (SWIG_Float_Overflow_Check(v)) {
2182       return SWIG_OverflowError;
2183     } else {
2184       if (val) *val = static_cast< float >(v);
2185     }
2186   }
2187   return res;
2188 }
2189 
2190 
2191 typedef float floatArray;
2192 
new_floatArray(size_t nelements)2193 SWIGINTERN floatArray *new_floatArray(size_t nelements){
2194     return (new float[nelements]());
2195   }
delete_floatArray(floatArray * self)2196 SWIGINTERN void delete_floatArray(floatArray *self){
2197     delete[] self;
2198   }
floatArray_getitem(floatArray * self,size_t index)2199 SWIGINTERN float floatArray_getitem(floatArray *self,size_t index){
2200     return self[index];
2201   }
floatArray_setitem(floatArray * self,size_t index,float value)2202 SWIGINTERN void floatArray_setitem(floatArray *self,size_t index,float value){
2203     self[index] = value;
2204   }
floatArray_cast(floatArray * self)2205 SWIGINTERN float *floatArray_cast(floatArray *self){
2206     return self;
2207   }
floatArray_frompointer(float * t)2208 SWIGINTERN floatArray *floatArray_frompointer(float *t){
2209     return static_cast< floatArray * >(t);
2210   }
2211 
new_doubleP(size_t nelements)2212   static double *new_doubleP(size_t nelements) {
2213     return (new double[nelements]());
2214   }
2215 
delete_doubleP(double * ary)2216   static void delete_doubleP(double *ary) {
2217     delete[] ary;
2218   }
2219 
doubleP_getitem(double * ary,size_t index)2220   static double doubleP_getitem(double *ary, size_t index) {
2221     return ary[index];
2222   }
doubleP_setitem(double * ary,size_t index,double value)2223   static void doubleP_setitem(double *ary, size_t index, double value) {
2224     ary[index] = value;
2225   }
2226 
2227 
2228 typedef double doubleArray;
2229 
new_doubleArray(size_t nelements)2230 SWIGINTERN doubleArray *new_doubleArray(size_t nelements){
2231     return (new double[nelements]());
2232   }
delete_doubleArray(doubleArray * self)2233 SWIGINTERN void delete_doubleArray(doubleArray *self){
2234     delete[] self;
2235   }
doubleArray_getitem(doubleArray * self,size_t index)2236 SWIGINTERN double doubleArray_getitem(doubleArray *self,size_t index){
2237     return self[index];
2238   }
doubleArray_setitem(doubleArray * self,size_t index,double value)2239 SWIGINTERN void doubleArray_setitem(doubleArray *self,size_t index,double value){
2240     self[index] = value;
2241   }
doubleArray_cast(doubleArray * self)2242 SWIGINTERN double *doubleArray_cast(doubleArray *self){
2243     return self;
2244   }
doubleArray_frompointer(double * t)2245 SWIGINTERN doubleArray *doubleArray_frompointer(double *t){
2246     return static_cast< doubleArray * >(t);
2247   }
2248 
new_ushortP(size_t nelements)2249   static unsigned short *new_ushortP(size_t nelements) {
2250     return (new unsigned short[nelements]());
2251   }
2252 
delete_ushortP(unsigned short * ary)2253   static void delete_ushortP(unsigned short *ary) {
2254     delete[] ary;
2255   }
2256 
ushortP_getitem(unsigned short * ary,size_t index)2257   static unsigned short ushortP_getitem(unsigned short *ary, size_t index) {
2258     return ary[index];
2259   }
ushortP_setitem(unsigned short * ary,size_t index,unsigned short value)2260   static void ushortP_setitem(unsigned short *ary, size_t index, unsigned short value) {
2261     ary[index] = value;
2262   }
2263 
2264 
2265 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(unsigned long value)2266 SWIG_From_unsigned_SS_long  SWIG_PERL_DECL_ARGS_1(unsigned long value)
2267 {
2268   SV *sv;
2269   if (UVSIZE >= sizeof(value) || value <= UV_MAX)
2270     sv = newSVuv(value);
2271   else
2272     sv = newSVpvf("%lu", value);
2273   return sv_2mortal(sv);
2274 }
2275 
2276 
2277 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(unsigned short value)2278 SWIG_From_unsigned_SS_short  SWIG_PERL_DECL_ARGS_1(unsigned short value)
2279 {
2280   return SWIG_From_unsigned_SS_long  SWIG_PERL_CALL_ARGS_1(value);
2281 }
2282 
2283 
2284 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,unsigned short * val)2285 SWIG_AsVal_unsigned_SS_short SWIG_PERL_DECL_ARGS_2(SV * obj, unsigned short *val)
2286 {
2287   unsigned long v;
2288   int res = SWIG_AsVal_unsigned_SS_long SWIG_PERL_CALL_ARGS_2(obj, &v);
2289   if (SWIG_IsOK(res)) {
2290     if ((v > USHRT_MAX)) {
2291       return SWIG_OverflowError;
2292     } else {
2293       if (val) *val = static_cast< unsigned short >(v);
2294     }
2295   }
2296   return res;
2297 }
2298 
2299 
new_shortP(size_t nelements)2300   static short *new_shortP(size_t nelements) {
2301     return (new short[nelements]());
2302   }
2303 
delete_shortP(short * ary)2304   static void delete_shortP(short *ary) {
2305     delete[] ary;
2306   }
2307 
shortP_getitem(short * ary,size_t index)2308   static short shortP_getitem(short *ary, size_t index) {
2309     return ary[index];
2310   }
shortP_setitem(short * ary,size_t index,short value)2311   static void shortP_setitem(short *ary, size_t index, short value) {
2312     ary[index] = value;
2313   }
2314 
2315 
2316 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(short value)2317 SWIG_From_short  SWIG_PERL_DECL_ARGS_1(short value)
2318 {
2319   return SWIG_From_long  SWIG_PERL_CALL_ARGS_1(value);
2320 }
2321 
2322 
2323 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,short * val)2324 SWIG_AsVal_short SWIG_PERL_DECL_ARGS_2(SV * obj, short *val)
2325 {
2326   long v;
2327   int res = SWIG_AsVal_long SWIG_PERL_CALL_ARGS_2(obj, &v);
2328   if (SWIG_IsOK(res)) {
2329     if ((v < SHRT_MIN || v > SHRT_MAX)) {
2330       return SWIG_OverflowError;
2331     } else {
2332       if (val) *val = static_cast< short >(v);
2333     }
2334   }
2335   return res;
2336 }
2337 
2338 
2339 typedef struct SWIGCDATA {
2340     char *data;
2341     size_t   len;
2342 } SWIGCDATA;
2343 
2344 
2345 
2346 extern "C"  {
2347 
2348 
cdata_void(void * ptr,size_t nelements)2349 static SWIGCDATA cdata_void(void *ptr, size_t nelements)
2350 
2351 
2352 
2353 {
2354   SWIGCDATA d;
2355   d.data = (char *) ptr;
2356 
2357 
2358 
2359   d.len  = nelements;
2360 
2361    return d;
2362 }
2363 
2364 }
2365 
2366 
2367 
2368 SWIGINTERNINLINE SV *
SWIG_FromCharPtrAndSize(const char * carray,size_t size)2369 SWIG_FromCharPtrAndSize(const char* carray, size_t size)
2370 {
2371   SV *obj = sv_newmortal();
2372   if (carray) {
2373     sv_setpvn(obj, carray, size);
2374   } else {
2375     sv_setsv(obj, &PL_sv_undef);
2376   }
2377   return obj;
2378 }
2379 
2380 
2381 SWIGINTERN swig_type_info*
SWIG_pchar_descriptor(void)2382 SWIG_pchar_descriptor(void)
2383 {
2384   static int init = 0;
2385   static swig_type_info* info = 0;
2386   if (!init) {
2387     info = SWIG_TypeQuery("_p_char");
2388     init = 1;
2389   }
2390   return info;
2391 }
2392 
2393 
2394 SWIGINTERN int
SWIG_AsCharPtrAndSize(SV * obj,char ** cptr,size_t * psize,int * alloc)2395 SWIG_AsCharPtrAndSize(SV *obj, char** cptr, size_t* psize, int *alloc)
2396 {
2397   if (SvMAGICAL(obj)) {
2398      SV *tmp = sv_newmortal();
2399      SvSetSV(tmp, obj);
2400      obj = tmp;
2401   }
2402   if (SvPOK(obj)) {
2403     STRLEN len = 0;
2404     char *cstr = SvPV(obj, len);
2405     size_t size = len + 1;
2406     if (cptr)  {
2407       if (alloc) {
2408 	if (*alloc == SWIG_NEWOBJ) {
2409 	  *cptr = reinterpret_cast< char* >(memcpy(new char[size], cstr, sizeof(char)*(size)));
2410 	} else {
2411 	  *cptr = cstr;
2412 	  *alloc = SWIG_OLDOBJ;
2413 	}
2414       }
2415     }
2416     if (psize) *psize = size;
2417     return SWIG_OK;
2418   } else {
2419     swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();
2420     if (pchar_descriptor) {
2421       char* vptr = 0;
2422       if (SWIG_ConvertPtr(obj, (void**)&vptr, pchar_descriptor, 0) == SWIG_OK) {
2423 	if (cptr) *cptr = vptr;
2424 	if (psize) *psize = vptr ? (strlen(vptr) + 1) : 0;
2425 	if (alloc) *alloc = SWIG_OLDOBJ;
2426 	return SWIG_OK;
2427       }
2428     }
2429   }
2430   return SWIG_TypeError;
2431 }
2432 
2433 
2434 /** @file version.i.in
2435  * @brief Set $RNA::VERSION to the bindings version
2436  */
2437 
2438 
2439 #include <typeinfo>
2440 #include <stdexcept>
2441 
2442 
2443 #include <string>
2444 
2445 
2446 SWIGINTERN
SwigSvToNumber(SV * sv)2447 double SwigSvToNumber(SV* sv) {
2448     return SvIOK(sv) ? double(SvIVX(sv)) : SvNVX(sv);
2449 }
2450 SWIGINTERN
SwigSvToString(SV * sv)2451 std::string SwigSvToString(SV* sv) {
2452     STRLEN len;
2453     char *ptr = SvPV(sv, len);
2454     return std::string(ptr, len);
2455 }
2456 SWIGINTERN
SwigSvFromString(SV * sv,const std::string & s)2457 void SwigSvFromString(SV* sv, const std::string& s) {
2458     sv_setpvn(sv,s.data(),s.size());
2459 }
2460 
2461 
2462 #include <utility>
2463 
2464 
2465 #include <vector>
2466 
2467 
2468 #include <algorithm>
2469 
2470 
2471 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,unsigned int * val)2472 SWIG_AsVal_unsigned_SS_int SWIG_PERL_DECL_ARGS_2(SV * obj, unsigned int *val)
2473 {
2474   unsigned long v;
2475   int res = SWIG_AsVal_unsigned_SS_long SWIG_PERL_CALL_ARGS_2(obj, &v);
2476   if (SWIG_IsOK(res)) {
2477     if ((v > UINT_MAX)) {
2478       return SWIG_OverflowError;
2479     } else {
2480       if (val) *val = static_cast< unsigned int >(v);
2481     }
2482   }
2483   return res;
2484 }
2485 
2486 
2487 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(unsigned int value)2488 SWIG_From_unsigned_SS_int  SWIG_PERL_DECL_ARGS_1(unsigned int value)
2489 {
2490   return SWIG_From_unsigned_SS_long  SWIG_PERL_CALL_ARGS_1(value);
2491 }
2492 
2493 
2494 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(bool value)2495 SWIG_From_bool  SWIG_PERL_DECL_ARGS_1(bool value)
2496 {
2497   return boolSV(value);
2498 }
2499 
std_vector_Sl_int_Sg__pop(std::vector<int> * self)2500 SWIGINTERN int std_vector_Sl_int_Sg__pop(std::vector< int > *self){
2501                 if (self->size() == 0)
2502                     throw std::out_of_range("pop from empty vector");
2503                 int x = self->back();
2504                 self->pop_back();
2505                 return x;
2506             }
std_vector_Sl_int_Sg__get(std::vector<int> * self,int i)2507 SWIGINTERN int std_vector_Sl_int_Sg__get(std::vector< int > *self,int i){
2508                 int size = int(self->size());
2509                 if (i>=0 && i<size)
2510                     return (*self)[i];
2511                 else
2512                     throw std::out_of_range("vector index out of range");
2513             }
std_vector_Sl_int_Sg__set(std::vector<int> * self,int i,int x)2514 SWIGINTERN void std_vector_Sl_int_Sg__set(std::vector< int > *self,int i,int x){
2515                 int size = int(self->size());
2516                 if (i>=0 && i<size)
2517                     (*self)[i] = x;
2518                 else
2519                     throw std::out_of_range("vector index out of range");
2520             }
std_vector_Sl_unsigned_SS_int_Sg__pop(std::vector<unsigned int> * self)2521 SWIGINTERN unsigned int std_vector_Sl_unsigned_SS_int_Sg__pop(std::vector< unsigned int > *self){
2522                 if (self->size() == 0)
2523                     throw std::out_of_range("pop from empty vector");
2524                 unsigned int x = self->back();
2525                 self->pop_back();
2526                 return x;
2527             }
std_vector_Sl_unsigned_SS_int_Sg__get(std::vector<unsigned int> * self,int i)2528 SWIGINTERN unsigned int std_vector_Sl_unsigned_SS_int_Sg__get(std::vector< unsigned int > *self,int i){
2529                 int size = int(self->size());
2530                 if (i>=0 && i<size)
2531                     return (*self)[i];
2532                 else
2533                     throw std::out_of_range("vector index out of range");
2534             }
std_vector_Sl_unsigned_SS_int_Sg__set(std::vector<unsigned int> * self,int i,unsigned int x)2535 SWIGINTERN void std_vector_Sl_unsigned_SS_int_Sg__set(std::vector< unsigned int > *self,int i,unsigned int x){
2536                 int size = int(self->size());
2537                 if (i>=0 && i<size)
2538                     (*self)[i] = x;
2539                 else
2540                     throw std::out_of_range("vector index out of range");
2541             }
std_vector_Sl_double_Sg__pop(std::vector<double> * self)2542 SWIGINTERN double std_vector_Sl_double_Sg__pop(std::vector< double > *self){
2543                 if (self->size() == 0)
2544                     throw std::out_of_range("pop from empty vector");
2545                 double x = self->back();
2546                 self->pop_back();
2547                 return x;
2548             }
std_vector_Sl_double_Sg__get(std::vector<double> * self,int i)2549 SWIGINTERN double std_vector_Sl_double_Sg__get(std::vector< double > *self,int i){
2550                 int size = int(self->size());
2551                 if (i>=0 && i<size)
2552                     return (*self)[i];
2553                 else
2554                     throw std::out_of_range("vector index out of range");
2555             }
std_vector_Sl_double_Sg__set(std::vector<double> * self,int i,double x)2556 SWIGINTERN void std_vector_Sl_double_Sg__set(std::vector< double > *self,int i,double x){
2557                 int size = int(self->size());
2558                 if (i>=0 && i<size)
2559                     (*self)[i] = x;
2560                 else
2561                     throw std::out_of_range("vector index out of range");
2562             }
2563 
2564 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,std::string ** val)2565 SWIG_AsPtr_std_string SWIG_PERL_DECL_ARGS_2(SV * obj, std::string **val)
2566 {
2567   char* buf = 0 ; size_t size = 0; int alloc = SWIG_OLDOBJ;
2568   if (SWIG_IsOK((SWIG_AsCharPtrAndSize(obj, &buf, &size, &alloc)))) {
2569     if (buf) {
2570       if (val) *val = new std::string(buf, size - 1);
2571       if (alloc == SWIG_NEWOBJ) delete[] buf;
2572       return SWIG_NEWOBJ;
2573     } else {
2574       if (val) *val = 0;
2575       return SWIG_OLDOBJ;
2576     }
2577   } else {
2578     static int init = 0;
2579     static swig_type_info* descriptor = 0;
2580     if (!init) {
2581       descriptor = SWIG_TypeQuery("std::string" " *");
2582       init = 1;
2583     }
2584     if (descriptor) {
2585       std::string *vptr;
2586       int res = SWIG_ConvertPtr(obj, (void**)&vptr, descriptor, 0);
2587       if (SWIG_IsOK(res) && val) *val = vptr;
2588       return res;
2589     }
2590   }
2591   return SWIG_ERROR;
2592 }
2593 
std_vector_Sl_std_string_Sg__pop(std::vector<std::string> * self)2594 SWIGINTERN std::string std_vector_Sl_std_string_Sg__pop(std::vector< std::string > *self){
2595                 if (self->size() == 0)
2596                     throw std::out_of_range("pop from empty vector");
2597                 std::string x = self->back();
2598                 self->pop_back();
2599                 return x;
2600             }
2601 
2602 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(const std::string & s)2603 SWIG_From_std_string  SWIG_PERL_DECL_ARGS_1(const std::string& s)
2604 {
2605   return SWIG_FromCharPtrAndSize(s.data(), s.size());
2606 }
2607 
std_vector_Sl_std_string_Sg__get(std::vector<std::string> * self,int i)2608 SWIGINTERN std::string std_vector_Sl_std_string_Sg__get(std::vector< std::string > *self,int i){
2609                 int size = int(self->size());
2610                 if (i>=0 && i<size)
2611                     return (*self)[i];
2612                 else
2613                     throw std::out_of_range("vector index out of range");
2614             }
std_vector_Sl_std_string_Sg__set(std::vector<std::string> * self,int i,std::string x)2615 SWIGINTERN void std_vector_Sl_std_string_Sg__set(std::vector< std::string > *self,int i,std::string x){
2616                 int size = int(self->size());
2617                 if (i>=0 && i<size)
2618                     (*self)[i] = x;
2619                 else
2620                     throw std::out_of_range("vector index out of range");
2621             }
2622 
2623 
2624 
std_vector_Sl_char_SS_const_Sm__Sg__pop(std::vector<char const * > * self)2625 SWIGINTERN char const *std_vector_Sl_char_SS_const_Sm__Sg__pop(std::vector< char const * > *self){
2626                 if (self->size() == 0)
2627                     throw std::out_of_range("pop from empty vector");
2628                 char const *x = self->back();
2629                 self->pop_back();
2630                 return x;
2631             }
2632 
2633 SWIGINTERNINLINE SV *
SWIG_FromCharPtr(const char * cptr)2634 SWIG_FromCharPtr(const char *cptr)
2635 {
2636   return SWIG_FromCharPtrAndSize(cptr, (cptr ? strlen(cptr) : 0));
2637 }
2638 
std_vector_Sl_char_SS_const_Sm__Sg__get(std::vector<char const * > * self,int i)2639 SWIGINTERN char const *std_vector_Sl_char_SS_const_Sm__Sg__get(std::vector< char const * > *self,int i){
2640                 int size = int(self->size());
2641                 if (i>=0 && i<size)
2642                     return (*self)[i];
2643                 else
2644                     throw std::out_of_range("vector index out of range");
2645             }
std_vector_Sl_char_SS_const_Sm__Sg__set(std::vector<char const * > * self,int i,char const * x)2646 SWIGINTERN void std_vector_Sl_char_SS_const_Sm__Sg__set(std::vector< char const * > *self,int i,char const *x){
2647                 int size = int(self->size());
2648                 if (i>=0 && i<size)
2649                     (*self)[i] = x;
2650                 else
2651                     throw std::out_of_range("vector index out of range");
2652             }
std_vector_Sl_SOLUTION_Sg__pop(std::vector<SOLUTION> * self)2653 SWIGINTERN SOLUTION std_vector_Sl_SOLUTION_Sg__pop(std::vector< SOLUTION > *self){
2654                 if (self->size() == 0)
2655                     throw std::out_of_range("pop from empty vector");
2656                 SOLUTION x = self->back();
2657                 self->pop_back();
2658                 return x;
2659             }
std_vector_Sl_SOLUTION_Sg__get(std::vector<SOLUTION> * self,int i)2660 SWIGINTERN SOLUTION &std_vector_Sl_SOLUTION_Sg__get(std::vector< SOLUTION > *self,int i){
2661                 int size = int(self->size());
2662                 if (i>=0 && i<size)
2663                     return (*self)[i];
2664                 else
2665                     throw std::out_of_range("vector index out of range");
2666             }
std_vector_Sl_SOLUTION_Sg__set(std::vector<SOLUTION> * self,int i,SOLUTION const & x)2667 SWIGINTERN void std_vector_Sl_SOLUTION_Sg__set(std::vector< SOLUTION > *self,int i,SOLUTION const &x){
2668                 int size = int(self->size());
2669                 if (i>=0 && i<size)
2670                     (*self)[i] = x;
2671                 else
2672                     throw std::out_of_range("vector index out of range");
2673             }
std_vector_Sl_COORDINATE_Sg__pop(std::vector<COORDINATE> * self)2674 SWIGINTERN COORDINATE std_vector_Sl_COORDINATE_Sg__pop(std::vector< COORDINATE > *self){
2675                 if (self->size() == 0)
2676                     throw std::out_of_range("pop from empty vector");
2677                 COORDINATE x = self->back();
2678                 self->pop_back();
2679                 return x;
2680             }
std_vector_Sl_COORDINATE_Sg__get(std::vector<COORDINATE> * self,int i)2681 SWIGINTERN COORDINATE &std_vector_Sl_COORDINATE_Sg__get(std::vector< COORDINATE > *self,int i){
2682                 int size = int(self->size());
2683                 if (i>=0 && i<size)
2684                     return (*self)[i];
2685                 else
2686                     throw std::out_of_range("vector index out of range");
2687             }
std_vector_Sl_COORDINATE_Sg__set(std::vector<COORDINATE> * self,int i,COORDINATE const & x)2688 SWIGINTERN void std_vector_Sl_COORDINATE_Sg__set(std::vector< COORDINATE > *self,int i,COORDINATE const &x){
2689                 int size = int(self->size());
2690                 if (i>=0 && i<size)
2691                     (*self)[i] = x;
2692                 else
2693                     throw std::out_of_range("vector index out of range");
2694             }
std_vector_Sl_std_vector_Sl_double_Sg__Sg__pop(std::vector<std::vector<double>> * self)2695 SWIGINTERN std::vector< double > std_vector_Sl_std_vector_Sl_double_Sg__Sg__pop(std::vector< std::vector< double > > *self){
2696                 if (self->size() == 0)
2697                     throw std::out_of_range("pop from empty vector");
2698                 std::vector< double > x = self->back();
2699                 self->pop_back();
2700                 return x;
2701             }
std_vector_Sl_std_vector_Sl_double_Sg__Sg__get(std::vector<std::vector<double>> * self,int i)2702 SWIGINTERN std::vector< double > &std_vector_Sl_std_vector_Sl_double_Sg__Sg__get(std::vector< std::vector< double > > *self,int i){
2703                 int size = int(self->size());
2704                 if (i>=0 && i<size)
2705                     return (*self)[i];
2706                 else
2707                     throw std::out_of_range("vector index out of range");
2708             }
std_vector_Sl_std_vector_Sl_double_Sg__Sg__set(std::vector<std::vector<double>> * self,int i,std::vector<double> const & x)2709 SWIGINTERN void std_vector_Sl_std_vector_Sl_double_Sg__Sg__set(std::vector< std::vector< double > > *self,int i,std::vector< double > const &x){
2710                 int size = int(self->size());
2711                 if (i>=0 && i<size)
2712                     (*self)[i] = x;
2713                 else
2714                     throw std::out_of_range("vector index out of range");
2715             }
std_vector_Sl_std_vector_Sl_int_Sg__Sg__pop(std::vector<std::vector<int>> * self)2716 SWIGINTERN std::vector< int > std_vector_Sl_std_vector_Sl_int_Sg__Sg__pop(std::vector< std::vector< int > > *self){
2717                 if (self->size() == 0)
2718                     throw std::out_of_range("pop from empty vector");
2719                 std::vector< int > x = self->back();
2720                 self->pop_back();
2721                 return x;
2722             }
std_vector_Sl_std_vector_Sl_int_Sg__Sg__get(std::vector<std::vector<int>> * self,int i)2723 SWIGINTERN std::vector< int > &std_vector_Sl_std_vector_Sl_int_Sg__Sg__get(std::vector< std::vector< int > > *self,int i){
2724                 int size = int(self->size());
2725                 if (i>=0 && i<size)
2726                     return (*self)[i];
2727                 else
2728                     throw std::out_of_range("vector index out of range");
2729             }
std_vector_Sl_std_vector_Sl_int_Sg__Sg__set(std::vector<std::vector<int>> * self,int i,std::vector<int> const & x)2730 SWIGINTERN void std_vector_Sl_std_vector_Sl_int_Sg__Sg__set(std::vector< std::vector< int > > *self,int i,std::vector< int > const &x){
2731                 int size = int(self->size());
2732                 if (i>=0 && i<size)
2733                     (*self)[i] = x;
2734                 else
2735                     throw std::out_of_range("vector index out of range");
2736             }
std_vector_Sl_vrna_ep_t_Sg__pop(std::vector<vrna_ep_t> * self)2737 SWIGINTERN vrna_ep_t std_vector_Sl_vrna_ep_t_Sg__pop(std::vector< vrna_ep_t > *self){
2738                 if (self->size() == 0)
2739                     throw std::out_of_range("pop from empty vector");
2740                 vrna_ep_t x = self->back();
2741                 self->pop_back();
2742                 return x;
2743             }
std_vector_Sl_vrna_ep_t_Sg__get(std::vector<vrna_ep_t> * self,int i)2744 SWIGINTERN vrna_ep_t &std_vector_Sl_vrna_ep_t_Sg__get(std::vector< vrna_ep_t > *self,int i){
2745                 int size = int(self->size());
2746                 if (i>=0 && i<size)
2747                     return (*self)[i];
2748                 else
2749                     throw std::out_of_range("vector index out of range");
2750             }
std_vector_Sl_vrna_ep_t_Sg__set(std::vector<vrna_ep_t> * self,int i,vrna_ep_t const & x)2751 SWIGINTERN void std_vector_Sl_vrna_ep_t_Sg__set(std::vector< vrna_ep_t > *self,int i,vrna_ep_t const &x){
2752                 int size = int(self->size());
2753                 if (i>=0 && i<size)
2754                     (*self)[i] = x;
2755                 else
2756                     throw std::out_of_range("vector index out of range");
2757             }
std_vector_Sl_vrna_path_t_Sg__pop(std::vector<vrna_path_t> * self)2758 SWIGINTERN vrna_path_t std_vector_Sl_vrna_path_t_Sg__pop(std::vector< vrna_path_t > *self){
2759                 if (self->size() == 0)
2760                     throw std::out_of_range("pop from empty vector");
2761                 vrna_path_t x = self->back();
2762                 self->pop_back();
2763                 return x;
2764             }
std_vector_Sl_vrna_path_t_Sg__get(std::vector<vrna_path_t> * self,int i)2765 SWIGINTERN vrna_path_t &std_vector_Sl_vrna_path_t_Sg__get(std::vector< vrna_path_t > *self,int i){
2766                 int size = int(self->size());
2767                 if (i>=0 && i<size)
2768                     return (*self)[i];
2769                 else
2770                     throw std::out_of_range("vector index out of range");
2771             }
std_vector_Sl_vrna_path_t_Sg__set(std::vector<vrna_path_t> * self,int i,vrna_path_t const & x)2772 SWIGINTERN void std_vector_Sl_vrna_path_t_Sg__set(std::vector< vrna_path_t > *self,int i,vrna_path_t const &x){
2773                 int size = int(self->size());
2774                 if (i>=0 && i<size)
2775                     (*self)[i] = x;
2776                 else
2777                     throw std::out_of_range("vector index out of range");
2778             }
std_vector_Sl_vrna_move_t_Sg__pop(std::vector<vrna_move_t> * self)2779 SWIGINTERN vrna_move_t std_vector_Sl_vrna_move_t_Sg__pop(std::vector< vrna_move_t > *self){
2780                 if (self->size() == 0)
2781                     throw std::out_of_range("pop from empty vector");
2782                 vrna_move_t x = self->back();
2783                 self->pop_back();
2784                 return x;
2785             }
std_vector_Sl_vrna_move_t_Sg__get(std::vector<vrna_move_t> * self,int i)2786 SWIGINTERN vrna_move_t &std_vector_Sl_vrna_move_t_Sg__get(std::vector< vrna_move_t > *self,int i){
2787                 int size = int(self->size());
2788                 if (i>=0 && i<size)
2789                     return (*self)[i];
2790                 else
2791                     throw std::out_of_range("vector index out of range");
2792             }
std_vector_Sl_vrna_move_t_Sg__set(std::vector<vrna_move_t> * self,int i,vrna_move_t const & x)2793 SWIGINTERN void std_vector_Sl_vrna_move_t_Sg__set(std::vector< vrna_move_t > *self,int i,vrna_move_t const &x){
2794                 int size = int(self->size());
2795                 if (i>=0 && i<size)
2796                     (*self)[i] = x;
2797                 else
2798                     throw std::out_of_range("vector index out of range");
2799             }
2800 
2801 #include <string>
2802 #include <cstring>
2803 
convert_vecstring2veccharcp(const std::string & s)2804   const char *convert_vecstring2veccharcp(const std::string & s){
2805     return s.c_str();
2806   }
2807 
convert_vecstring2veccharp(const std::string & s)2808   char *convert_vecstring2veccharp(const std::string & s){
2809     char *pc = new char[s.size()+1];
2810     std::strcpy(pc, s.c_str());
2811     return pc;
2812   }
2813 
convert_vecint2vecshort(const int & i)2814   short convert_vecint2vecshort(const int & i){
2815     return (short) i;
2816   }
2817 
convert_vecdbl2vecFLR_OR_DBL(const double & d)2818   FLT_OR_DBL convert_vecdbl2vecFLR_OR_DBL(const double & d){
2819     return (FLT_OR_DBL) d;
2820   }
2821 
2822 
2823 
2824 #include <sstream>
2825 
2826 
2827 SWIGINTERN size_t
SWIG_strnlen(const char * s,size_t maxlen)2828 SWIG_strnlen(const char* s, size_t maxlen)
2829 {
2830   const char *p;
2831   for (p = s; maxlen-- && *p; p++)
2832     ;
2833   return p - s;
2834 }
2835 
new_vrna_param_t__SWIG_0(vrna_md_t * model_details=NULL)2836 SWIGINTERN vrna_param_t *new_vrna_param_t__SWIG_0(vrna_md_t *model_details=NULL){
2837     return vrna_params(model_details);
2838   }
new_vrna_exp_param_t__SWIG_0(vrna_md_t * model_details=NULL)2839 SWIGINTERN vrna_exp_param_t *new_vrna_exp_param_t__SWIG_0(vrna_md_t *model_details=NULL){
2840     vrna_exp_param_t *P = vrna_exp_params(model_details);
2841     return P;
2842   }
2843 
2844   int
my_params_load(std::string filename="",unsigned int options=VRNA_PARAMETER_FORMAT_DEFAULT)2845   my_params_load(std::string  filename = "",
2846                  unsigned int options = VRNA_PARAMETER_FORMAT_DEFAULT)
2847   {
2848     if (!filename.compare(""))
2849       return vrna_params_load_defaults();
2850 
2851     return vrna_params_load(filename.c_str(), options);
2852   }
2853 
2854   int
my_params_save(std::string filename,unsigned int options=VRNA_PARAMETER_FORMAT_DEFAULT)2855   my_params_save(std::string filename,
2856                  unsigned int options = VRNA_PARAMETER_FORMAT_DEFAULT)
2857   {
2858     return vrna_params_save(filename.c_str(), options);
2859   }
2860 
2861   int
my_params_load_from_string(std::string parameters,std::string name="",unsigned int options=VRNA_PARAMETER_FORMAT_DEFAULT)2862   my_params_load_from_string(std::string parameters,
2863                              std::string name = "",
2864                              unsigned int options = VRNA_PARAMETER_FORMAT_DEFAULT)
2865   {
2866     return vrna_params_load_from_string(parameters.c_str(),
2867                                         name.c_str(),
2868                                         options);
2869   }
2870 
2871 
2872 #include <sstream>
2873 
2874 
2875 SWIGINTERN int
SWIG_AsCharArray(SV * obj,char * val,size_t size)2876 SWIG_AsCharArray(SV * obj, char *val, size_t size)
2877 {
2878   char* cptr = 0; size_t csize = 0; int alloc = SWIG_OLDOBJ;
2879   int res = SWIG_AsCharPtrAndSize(obj, &cptr, &csize, &alloc);
2880   if (SWIG_IsOK(res)) {
2881     /* special case of single char conversion when we don't need space for NUL */
2882     if (size == 1 && csize == 2 && cptr && !cptr[1]) --csize;
2883     if (csize <= size) {
2884       if (val) {
2885 	if (csize) memcpy(val, cptr, csize*sizeof(char));
2886 	if (csize < size) memset(val + csize, 0, (size - csize)*sizeof(char));
2887       }
2888       if (alloc == SWIG_NEWOBJ) {
2889 	delete[] cptr;
2890 	res = SWIG_DelNewMask(res);
2891       }
2892       return res;
2893     }
2894     if (alloc == SWIG_NEWOBJ) delete[] cptr;
2895   }
2896   return SWIG_TypeError;
2897 }
2898 
2899 
2900 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,char * val)2901 SWIG_AsVal_char SWIG_PERL_DECL_ARGS_2(SV * obj, char *val)
2902 {
2903   int res = SWIG_AsCharArray(obj, val, 1);
2904   if (!SWIG_IsOK(res)) {
2905     long v;
2906     res = SWIG_AddCast(SWIG_AsVal_long SWIG_PERL_CALL_ARGS_2(obj, &v));
2907     if (SWIG_IsOK(res)) {
2908       if ((CHAR_MIN <= v) && (v <= CHAR_MAX)) {
2909 	if (val) *val = static_cast< char >(v);
2910       } else {
2911 	res = SWIG_OverflowError;
2912       }
2913     }
2914   }
2915   return res;
2916 }
2917 
2918 
2919 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(char c)2920 SWIG_From_char  SWIG_PERL_DECL_ARGS_1(char c)
2921 {
2922   return SWIG_FromCharPtrAndSize(&c,1);
2923 }
2924 
new_vrna_md_t__SWIG_0(double const temperature=vrna_md_defaults_temperature_get (),double const betaScale=vrna_md_defaults_betaScale_get (),int const pf_smooth=vrna_md_defaults_pf_smooth_get (),int const dangles=vrna_md_defaults_dangles_get (),int const special_hp=vrna_md_defaults_special_hp_get (),int const noLP=vrna_md_defaults_noLP_get (),int const noGU=vrna_md_defaults_noGU_get (),int const noGUclosure=vrna_md_defaults_noGUclosure_get (),int const logML=vrna_md_defaults_logML_get (),int const circ=vrna_md_defaults_circ_get (),int const gquad=vrna_md_defaults_gquad_get (),int const uniq_ML=vrna_md_defaults_uniq_ML_get (),int const energy_set=vrna_md_defaults_energy_set_get (),int const backtrack=vrna_md_defaults_backtrack_get (),char const backtrack_type=vrna_md_defaults_backtrack_type_get (),int const compute_bpp=vrna_md_defaults_compute_bpp_get (),int const max_bp_span=vrna_md_defaults_max_bp_span_get (),int const min_loop_size=vrna_md_defaults_min_loop_size_get (),int const window_size=vrna_md_defaults_window_size_get (),int const oldAliEn=vrna_md_defaults_oldAliEn_get (),int const ribo=vrna_md_defaults_ribo_get (),double const cv_fact=vrna_md_defaults_cv_fact_get (),double const nc_fact=vrna_md_defaults_nc_fact_get (),double const sfact=vrna_md_defaults_sfact_get ())2925 SWIGINTERN vrna_md_t *new_vrna_md_t__SWIG_0(double const temperature=vrna_md_defaults_temperature_get(),double const betaScale=vrna_md_defaults_betaScale_get(),int const pf_smooth=vrna_md_defaults_pf_smooth_get(),int const dangles=vrna_md_defaults_dangles_get(),int const special_hp=vrna_md_defaults_special_hp_get(),int const noLP=vrna_md_defaults_noLP_get(),int const noGU=vrna_md_defaults_noGU_get(),int const noGUclosure=vrna_md_defaults_noGUclosure_get(),int const logML=vrna_md_defaults_logML_get(),int const circ=vrna_md_defaults_circ_get(),int const gquad=vrna_md_defaults_gquad_get(),int const uniq_ML=vrna_md_defaults_uniq_ML_get(),int const energy_set=vrna_md_defaults_energy_set_get(),int const backtrack=vrna_md_defaults_backtrack_get(),char const backtrack_type=vrna_md_defaults_backtrack_type_get(),int const compute_bpp=vrna_md_defaults_compute_bpp_get(),int const max_bp_span=vrna_md_defaults_max_bp_span_get(),int const min_loop_size=vrna_md_defaults_min_loop_size_get(),int const window_size=vrna_md_defaults_window_size_get(),int const oldAliEn=vrna_md_defaults_oldAliEn_get(),int const ribo=vrna_md_defaults_ribo_get(),double const cv_fact=vrna_md_defaults_cv_fact_get(),double const nc_fact=vrna_md_defaults_nc_fact_get(),double const sfact=vrna_md_defaults_sfact_get()){
2926     vrna_md_t *md       = (vrna_md_t *)vrna_alloc(sizeof(vrna_md_t));
2927     md->temperature     = temperature;
2928     md->betaScale       = betaScale;
2929     md->pf_smooth       = pf_smooth;
2930     md->dangles         = dangles;
2931     md->special_hp      = special_hp;
2932     md->noLP            = noLP;
2933     md->noGU            = noGU;
2934     md->noGUclosure     = noGUclosure;
2935     md->logML           = logML;
2936     md->circ            = circ;
2937     md->gquad           = gquad;
2938     md->uniq_ML         = uniq_ML;
2939     md->energy_set      = energy_set;
2940     md->backtrack       = backtrack;
2941     md->backtrack_type  = backtrack_type;
2942     md->compute_bpp     = compute_bpp;
2943     md->max_bp_span     = max_bp_span;
2944     md->min_loop_size   = min_loop_size;
2945     md->window_size     = window_size;
2946     md->oldAliEn        = oldAliEn;
2947     md->ribo            = ribo;
2948     md->cv_fact         = cv_fact;
2949     md->nc_fact         = nc_fact;
2950     md->sfact           = sfact;
2951 
2952     vrna_md_update(md);
2953 
2954     return md;
2955   }
delete_vrna_md_t(vrna_md_t * self)2956 SWIGINTERN void delete_vrna_md_t(vrna_md_t *self){
2957     free(self);
2958   }
vrna_md_t_reset(vrna_md_t * self)2959 SWIGINTERN void vrna_md_t_reset(vrna_md_t *self){
2960     vrna_md_set_default(self);
2961   }
vrna_md_t_set_from_globals(vrna_md_t * self)2962 SWIGINTERN void vrna_md_t_set_from_globals(vrna_md_t *self){
2963     set_model_details(self);
2964   }
vrna_md_t_option_string(vrna_md_t * self)2965 SWIGINTERN char *vrna_md_t_option_string(vrna_md_t *self){
2966     return vrna_md_option_string(self);
2967   }
2968 
2969   int
my_hamming(const char * s1,const char * s2)2970   my_hamming(const char *s1,
2971              const char *s2)
2972   {
2973     return vrna_hamming_distance(s1, s2);
2974   }
2975 
2976 
2977   int
my_hamming_bound(const char * s1,const char * s2,int n)2978   my_hamming_bound(const char *s1,
2979                    const char *s2,
2980                    int n)
2981   {
2982     return vrna_hamming_distance_bound(s1, s2, n);
2983   }
2984 
2985 
2986 
2987 #include <cstring>
2988 
2989 short *
encode_seq(char * sequence)2990 encode_seq(char *sequence)
2991 {
2992   unsigned int i,l;
2993   short *S;
2994   l = strlen(sequence);
2995   S = (short *) vrna_alloc(sizeof(short)*(l+2));
2996   S[0] = (short) l;
2997 
2998   /* make numerical encoding of sequence */
2999   for (i=1; i<=l; i++)
3000     S[i]= (short) encode_char(toupper(sequence[i-1]));
3001 
3002   /* for circular folding add first base at position n+1 */
3003   S[l+1] = S[1];
3004 
3005   return S;
3006 }
3007 
3008 
3009 #include <sstream>
3010 
new_vrna_ep_t__SWIG_0(unsigned int i,unsigned int j,float p=1.,int type=VRNA_PLIST_TYPE_BASEPAIR)3011 SWIGINTERN vrna_ep_t *new_vrna_ep_t__SWIG_0(unsigned int i,unsigned int j,float p=1.,int type=VRNA_PLIST_TYPE_BASEPAIR){
3012       vrna_ep_t *pair;
3013 
3014       pair        = (vrna_ep_t *)vrna_alloc(sizeof(vrna_ep_t));
3015       pair->i     = (int)i;
3016       pair->j     = (int)j;
3017       pair->p     = p;
3018       pair->type  = type;
3019 
3020       return pair;
3021     }
3022 
3023 #include <vector>
3024   char *
my_pack_structure(const char * s)3025   my_pack_structure(const char *s)
3026   {
3027     return vrna_db_pack(s);
3028   }
3029 
3030   char *
my_unpack_structure(const char * packed)3031   my_unpack_structure(const char *packed)
3032   {
3033     return vrna_db_unpack(packed);
3034   }
3035 
3036   char *
my_db_from_ptable(std::vector<int> pt)3037   my_db_from_ptable(std::vector<int> pt)
3038   {
3039     std::vector<short> vc;
3040     transform(pt.begin(), pt.end(), back_inserter(vc), convert_vecint2vecshort);
3041     return vrna_db_from_ptable((short*)&vc[0]);
3042   }
3043 
3044   void
db_flatten(char * structure,unsigned int options=VRNA_BRACKETS_DEFAULT)3045   db_flatten(char         *structure,
3046              unsigned int options = VRNA_BRACKETS_DEFAULT)
3047   {
3048     vrna_db_flatten(structure, options);
3049   }
3050 
3051   void
db_flatten(char * structure,std::string target,unsigned int options=VRNA_BRACKETS_DEFAULT)3052   db_flatten(char         *structure,
3053              std::string  target,
3054              unsigned int options = VRNA_BRACKETS_DEFAULT)
3055   {
3056     if (target.size() == 2)
3057       vrna_db_flatten_to(structure, target.c_str(), options);
3058     else
3059       vrna_message_warning("db_flatten(): target pair must be string of exactly 2 characters!");
3060   }
3061 
3062   std::string
db_from_WUSS(std::string wuss)3063   db_from_WUSS(std::string wuss)
3064   {
3065     char *c_str = vrna_db_from_WUSS(wuss.c_str());
3066     std::string db = c_str;
3067     free(c_str);
3068     return db;
3069   }
3070 
3071   std::string
abstract_shapes(std::string structure,unsigned int level=5)3072   abstract_shapes(std::string   structure,
3073                   unsigned int  level = 5)
3074   {
3075     if (structure.size() == 0)
3076       return structure;
3077 
3078     char *c_str = vrna_abstract_shapes(structure.c_str(), level);
3079     std::string SHAPE = c_str;
3080     free(c_str);
3081     return SHAPE;
3082   }
3083 
3084   std::string
abstract_shapes(std::vector<int> pt,unsigned int level=5)3085   abstract_shapes(std::vector<int> pt,
3086                   unsigned int     level = 5)
3087   {
3088     if (pt.size() == 0)
3089       return "";
3090 
3091     std::vector<short> vc;
3092     transform(pt.begin(), pt.end(), back_inserter(vc), convert_vecint2vecshort);
3093 
3094     char *c_str = vrna_abstract_shapes_pt((short*)&vc[0], level);
3095 
3096     std::string SHAPE = c_str;
3097     free(c_str);
3098     return SHAPE;
3099   }
3100 
3101 
3102 #include <vector>
3103 
3104   std::vector<int>
my_ptable(std::string str,unsigned int options=VRNA_BRACKETS_RND)3105   my_ptable(std::string   str,
3106             unsigned int  options = VRNA_BRACKETS_RND)
3107   {
3108     short int         *pt;
3109     int               i;
3110     std::vector<int>  v_pt;
3111 
3112     pt = vrna_ptable_from_string(str.c_str(), options);
3113 
3114     for(i = 0; i <= pt[0]; i++)
3115       v_pt.push_back(pt[i]);
3116 
3117     free(pt);
3118     return v_pt;
3119   }
3120 
3121   std::vector<int>
my_ptable_pk(std::string str)3122   my_ptable_pk(std::string str)
3123   {
3124     short int* pt_pk = vrna_pt_pk_get(str.c_str());
3125     std::vector<int> v_pt;
3126     int i;
3127 
3128     for(i=0; i <= pt_pk[0]; i++){
3129       v_pt.push_back(pt_pk[i]);
3130     }
3131     free(pt_pk);
3132     return v_pt;
3133   }
3134 
3135   std::vector<int>
my_pt_pk_remove(std::vector<int> pt,unsigned int options=0)3136   my_pt_pk_remove(std::vector<int>  pt,
3137                   unsigned int      options = 0)
3138   {
3139     short               *ptable;
3140     int                 i;
3141     std::vector<short>  vs;
3142     std::vector<int>    v_pt;
3143 
3144     /* sanity check and fix */
3145     if (pt[0] != pt.size() - 1)
3146       pt[0] = pt.size() - 1;
3147 
3148     transform(pt.begin(), pt.end(), back_inserter(vs), convert_vecint2vecshort);
3149 
3150     ptable = vrna_pt_pk_remove((const short*)&vs[0], options);
3151 
3152     for (i = 0; i <= ptable[0]; i++)
3153       v_pt.push_back(ptable[i]);
3154 
3155     free(ptable);
3156 
3157     return v_pt;
3158   }
3159 
3160 
3161 
3162 #include <vector>
3163   std::vector<vrna_ep_t>
my_plist(std::string structure,float pr=0.95* 0.95)3164   my_plist(std::string  structure,
3165            float        pr = 0.95*0.95)
3166   {
3167     std::vector<vrna_ep_t > ep_v;
3168     vrna_ep_t               *ptr, *plist;
3169 
3170     plist = vrna_plist(structure.c_str(), pr);
3171 
3172     for (ptr = plist; ptr->i && ptr->j; ptr++) {
3173       vrna_ep_t pl;
3174       pl.i = ptr->i;
3175       pl.j = ptr->j;
3176       pl.p = ptr->p;
3177       pl.type = ptr->type;
3178       ep_v.push_back(pl);
3179     }
3180 
3181     free(plist);
3182 
3183     return ep_v;
3184   }
3185 
3186   std::string
db_from_plist(std::vector<vrna_ep_t> pairs,unsigned int length)3187   db_from_plist(std::vector<vrna_ep_t> pairs,
3188                 unsigned int           length)
3189   {
3190     vrna_ep_t last_elem;
3191     last_elem.i     = last_elem.j = 0;
3192     last_elem.p     = 0;
3193     last_elem.type  = 0;
3194 
3195     pairs.push_back(last_elem);
3196 
3197     char *str = vrna_db_from_plist(&pairs[0], length);
3198     std::string ret(str);
3199     free(str);
3200 
3201     /* remove end-of-list marker */
3202     pairs.pop_back();
3203 
3204     return ret;
3205   }
3206 
3207   std::string
db_pk_remove(std::string structure,unsigned int options=VRNA_BRACKETS_ANY)3208   db_pk_remove(std::string  structure,
3209                unsigned int options = VRNA_BRACKETS_ANY)
3210   {
3211     char *db = vrna_db_pk_remove(structure.c_str(), options);
3212     std::string ret(db);
3213     free(db);
3214 
3215     return ret;
3216   }
3217 
3218 
3219   std::string
db_to_tree_string(std::string structure,unsigned int type)3220   db_to_tree_string(std::string   structure,
3221                     unsigned int  type)
3222   {
3223     char *c_str = vrna_db_to_tree_string(structure.c_str(), type);
3224     std::string tree = c_str;
3225     free(c_str);
3226     return tree;
3227   }
3228 
3229   std::string
tree_string_unweight(std::string structure)3230   tree_string_unweight(std::string structure)
3231   {
3232     char *c_str = vrna_tree_string_unweight(structure.c_str());
3233     std::string tree = c_str;
3234     free(c_str);
3235     return tree;
3236   }
3237 
3238   std::string
tree_string_to_db(std::string structure)3239   tree_string_to_db(std::string structure)
3240   {
3241     char *c_str = vrna_tree_string_to_db(structure.c_str());
3242     std::string db = c_str;
3243     free(c_str);
3244     return db;
3245   }
3246 
3247 
3248 
3249   short *
make_loop_index(const char * structure)3250   make_loop_index(const char *structure)
3251   {
3252     /* number each position by which loop it belongs to (positions start at 0) */
3253     int i,hx,l,nl;
3254     int length;
3255     short *stack;
3256     short *loop;
3257     length = strlen(structure);
3258     stack = (short *) vrna_alloc(sizeof(short)*(length+1));
3259     loop = (short *) vrna_alloc(sizeof(short)*(length+2));
3260     hx=l=nl=0;
3261     for (i=0; i<length; i++) {
3262       if (structure[i] == '(') {
3263         nl++; l=nl;
3264         stack[hx++]=i;
3265       }
3266       loop[i]=l;
3267       if (structure[i] ==')') {
3268         --hx;
3269         if (hx>0)
3270           l = loop[stack[hx-1]];  /* index of enclosing loop   */
3271         else l=0;                 /* external loop has index 0 */
3272         if (hx<0) {
3273           fprintf(stderr, "%s\n", structure);
3274           nrerror("unbalanced brackets in make_loop_index");
3275         }
3276       }
3277     }
3278     free(stack);
3279     return loop;
3280   }
3281 
3282 
3283   std::vector<int>
my_loopidx_from_ptable(std::vector<int> pt)3284   my_loopidx_from_ptable(std::vector<int> pt)
3285   {
3286     int                 i, *idx;
3287     std::vector<short>  vc;
3288     std::vector<int>    v_idx;
3289 
3290     transform(pt.begin(), pt.end(), back_inserter(vc), convert_vecint2vecshort);
3291 
3292     idx = vrna_loopidx_from_ptable((short *)&vc[0]);
3293 
3294     v_idx.assign(idx, idx + pt.size());
3295 
3296     free(idx);
3297 
3298     return v_idx;
3299   }
3300 
3301 
3302   int
my_bp_distance(const char * str1,const char * str2)3303   my_bp_distance(const char *str1,
3304                  const char *str2)
3305   {
3306     return vrna_bp_distance(str1,str2);
3307   }
3308 
3309   double
my_dist_mountain(std::string str1,std::string str2,unsigned int p=1)3310   my_dist_mountain( std::string   str1,
3311                     std::string   str2,
3312                     unsigned int  p = 1)
3313   {
3314     return vrna_dist_mountain(str1.c_str(), str2.c_str(), p);
3315   }
3316 
3317 
3318 #include <vector>
3319 
3320   std::string
my_consensus_sequence(std::vector<std::string> alignment,vrna_md_t * md_p=NULL)3321   my_consensus_sequence(std::vector<std::string>  alignment,
3322                         vrna_md_t                 *md_p = NULL)
3323   {
3324     /* convert std::vector<std::string> to vector<const char *> */
3325     std::vector<const char*>  v;
3326     std::transform(alignment.begin(), alignment.end(), std::back_inserter(v), convert_vecstring2veccharcp);
3327     v.push_back(NULL); /* mark end of sequences */
3328 
3329     char *c = vrna_aln_consensus_sequence((const char **)&v[0], md_p);
3330     std::string cons(c);
3331     free(c);
3332     return cons;
3333   }
3334 
3335   std::string
my_aln_consensus_mis(std::vector<std::string> alignment,vrna_md_t * md_p=NULL)3336   my_aln_consensus_mis(std::vector<std::string> alignment,
3337                        vrna_md_t                *md_p = NULL)
3338   {
3339     /* convert std::vector<std::string> to vector<const char *> */
3340     std::vector<const char*>  v;
3341     std::transform(alignment.begin(), alignment.end(), std::back_inserter(v), convert_vecstring2veccharcp);
3342     v.push_back(NULL); /* mark end of sequences */
3343 
3344     char *c = vrna_aln_consensus_mis((const char **)&v[0], md_p);
3345     std::string mis(c);
3346     free(c);
3347     return mis;
3348   }
3349 
3350 
3351 
3352 #include <vector>
3353 
3354   int
my_aln_mpi(std::vector<std::string> alignment)3355   my_aln_mpi(std::vector<std::string> alignment)
3356   {
3357     /* convert std::vector<std::string> to vector<const char *> */
3358     std::vector<const char*>  v;
3359     std::transform(alignment.begin(), alignment.end(), std::back_inserter(v), convert_vecstring2veccharcp);
3360     v.push_back(NULL); /* mark end of sequences */
3361 
3362     int mpi = vrna_aln_mpi((const char **)&v[0]);
3363 
3364     return mpi;
3365   }
3366 
3367 
3368 
3369 #include <vector>
3370 
3371   std::vector<std::vector<int> >
my_aln_pscore(std::vector<std::string> alignment,vrna_md_t * md=NULL)3372   my_aln_pscore(std::vector<std::string>  alignment,
3373                 vrna_md_t                 *md = NULL)
3374   {
3375 
3376     /* convert std::vector<std::string> to vector<const char *> */
3377     std::vector<const char*>  v;
3378     std::transform(alignment.begin(), alignment.end(), std::back_inserter(v), convert_vecstring2veccharcp);
3379     v.push_back(NULL); /* mark end of sequences */
3380 
3381     std::vector<std::vector<int> > pscore;
3382     int *ps = vrna_aln_pscore((const char **)&v[0], md);
3383 
3384     int n     = alignment[0].length();
3385     int *idx  = vrna_idx_col_wise(n);
3386 
3387     std::vector<int> z_row(n+1, 0);
3388     pscore.push_back(z_row);
3389 
3390     for(int i = 1; i < n; i++){
3391       std::vector<int> score_i;
3392       score_i.push_back(0);
3393       for(int j = 1; j <= i; j++)
3394         score_i.push_back(ps[idx[i] + j]);
3395       for(int j = i + 1; j <= n; j++)
3396         score_i.push_back(ps[idx[j] + i]);
3397       pscore.push_back(score_i);
3398     }
3399 
3400     free(ps);
3401     free(idx);
3402 
3403     return pscore;
3404   }
3405 
3406 
3407 
3408 #include <vector>
3409 
3410   std::vector<double>
my_aln_conservation_struct(std::vector<std::string> alignment,std::string structure,vrna_md_t * md=NULL)3411   my_aln_conservation_struct(std::vector<std::string> alignment,
3412                              std::string              structure,
3413                              vrna_md_t                *md = NULL)
3414   {
3415     /* convert std::vector<std::string> to vector<const char *> */
3416     std::vector<const char*>  v;
3417     std::transform(alignment.begin(), alignment.end(), std::back_inserter(v), convert_vecstring2veccharcp);
3418     v.push_back(NULL); /* mark end of sequences */
3419 
3420     std::vector<double> conservation;
3421 
3422     float *c = vrna_aln_conservation_struct((const char **)&v[0], structure.c_str(), md);
3423 
3424     if (c) {
3425       for (unsigned int i = 0; i <= alignment[0].size(); i++)
3426         conservation.push_back((double)c[i]);
3427 
3428       free(c);
3429     }
3430 
3431     return conservation;
3432   }
3433   std::vector<double>
my_aln_conservation_col(std::vector<std::string> alignment,vrna_md_t * md=NULL,unsigned int options=VRNA_MEASURE_SHANNON_ENTROPY)3434   my_aln_conservation_col(std::vector<std::string> alignment,
3435                           vrna_md_t                *md = NULL,
3436                           unsigned int             options = VRNA_MEASURE_SHANNON_ENTROPY)
3437   {
3438     /* convert std::vector<std::string> to vector<const char *> */
3439     std::vector<const char*>  v;
3440     std::transform(alignment.begin(), alignment.end(), std::back_inserter(v), convert_vecstring2veccharcp);
3441     v.push_back(NULL); /* mark end of sequences */
3442 
3443     std::vector<double> conservation;
3444 
3445     float *c = vrna_aln_conservation_col((const char **)&v[0], md, options);
3446 
3447     if (c) {
3448       for (unsigned int i = 0; i <= alignment[0].size(); i++)
3449         conservation.push_back((double)c[i]);
3450 
3451       free(c);
3452     }
3453 
3454     return conservation;
3455   }
3456 
3457 
3458   char *
my_move_standard(int * OUTPUT,char * seq,char * struc,enum MOVE_TYPE type,int verbosity_level,int shifts,int noLP)3459   my_move_standard(int            *OUTPUT,
3460                    char           *seq,
3461                    char           *struc,
3462                    enum MOVE_TYPE type,
3463                    int            verbosity_level,
3464                    int            shifts,
3465                    int            noLP)
3466   {
3467     char *structure =  (char *)calloc(strlen(struc)+1,sizeof(char));
3468     strcpy(structure,struc);
3469     *OUTPUT = move_standard(seq,structure,type,verbosity_level,shifts,noLP);
3470     return structure;
3471   }
3472 
3473 
3474   std::string
my_filename_sanitize(std::string name)3475   my_filename_sanitize(std::string name)
3476   {
3477     std::string s;
3478     char *name_sanitized = vrna_filename_sanitize(name.c_str(), NULL);
3479     if (name_sanitized)
3480       s = (const char *)name_sanitized;
3481     free(name_sanitized);
3482     return s;
3483   }
3484 
3485   std::string
my_filename_sanitize(std::string name,char c)3486   my_filename_sanitize(std::string  name,
3487                        char         c)
3488   {
3489     std::string s;
3490     char *name_sanitized = vrna_filename_sanitize(name.c_str(), &c);
3491     if (name_sanitized)
3492       s = (const char *)name_sanitized;
3493     free(name_sanitized);
3494     return s;
3495   }
3496 
3497 
3498   COORDINATE *
get_xy_coordinates(const char * structure)3499   get_xy_coordinates(const char *structure)
3500   {
3501     int i;
3502     short *table = vrna_ptable(structure);
3503     short length = (short) strlen(structure);
3504 
3505     COORDINATE *coords = (COORDINATE *) vrna_alloc((length+1)*sizeof(COORDINATE));
3506     float *X = (float *) vrna_alloc((length+1)*sizeof(float));
3507     float *Y = (float *) vrna_alloc((length+1)*sizeof(float));
3508 
3509     switch(rna_plot_type){
3510       case VRNA_PLOT_TYPE_SIMPLE:   simple_xy_coordinates(table, X, Y);
3511                                     break;
3512       case VRNA_PLOT_TYPE_CIRCULAR: simple_circplot_coordinates(table, X, Y);
3513                                     break;
3514       default:                      naview_xy_coordinates(table, X, Y);
3515                                     break;
3516     }
3517 
3518     for(i=0;i<=length;i++){
3519       coords[i].X = X[i];
3520       coords[i].Y = Y[i];
3521     }
3522     free(table);
3523     free(X);
3524     free(Y);
3525     return(coords);
3526   }
3527 
3528 
3529 #include <vector>
3530 #include <string>
3531 
3532   std::vector<COORDINATE>
my_simple_xy_coordinates(std::string structure)3533   my_simple_xy_coordinates(std::string structure)
3534   {
3535     std::vector<COORDINATE> ret;
3536     short *table  = vrna_ptable(structure.c_str());
3537     float *X      = (float *) vrna_alloc((table[0]+1)*sizeof(float));
3538     float *Y      = (float *) vrna_alloc((table[0]+1)*sizeof(float));
3539     simple_xy_coordinates(table, X, Y);
3540 
3541     for(int i = 0; i <= table[0]; i++){
3542       COORDINATE c;
3543       c.X = X[i];
3544       c.Y = Y[i];
3545       ret.push_back(c);
3546     }
3547 
3548     free(X);
3549     free(Y);
3550     free(table);
3551     return ret;
3552   }
3553 
3554   std::vector<COORDINATE>
my_simple_circplot_coordinates(std::string structure)3555   my_simple_circplot_coordinates(std::string structure)
3556   {
3557     std::vector<COORDINATE> ret;
3558     short *table  = vrna_ptable(structure.c_str());
3559     float *X      = (float *) vrna_alloc((table[0]+1)*sizeof(float));
3560     float *Y      = (float *) vrna_alloc((table[0]+1)*sizeof(float));
3561     simple_circplot_coordinates(table, X, Y);
3562 
3563     for(int i = 0; i <= table[0]; i++){
3564       COORDINATE c;
3565       c.X = X[i];
3566       c.Y = Y[i];
3567       ret.push_back(c);
3568     }
3569 
3570     free(X);
3571     free(Y);
3572     free(table);
3573     return ret;
3574   }
3575 
3576   std::vector<COORDINATE>
my_naview_xy_coordinates(std::string structure)3577   my_naview_xy_coordinates(std::string structure)
3578   {
3579     std::vector<COORDINATE> ret;
3580     short *table  = vrna_ptable(structure.c_str());
3581     float *X      = (float *) vrna_alloc((table[0]+1)*sizeof(float));
3582     float *Y      = (float *) vrna_alloc((table[0]+1)*sizeof(float));
3583     naview_xy_coordinates(table, X, Y);
3584 
3585     for(int i = 0; i <= table[0]; i++){
3586       COORDINATE c;
3587       c.X = X[i];
3588       c.Y = Y[i];
3589       ret.push_back(c);
3590     }
3591 
3592     free(X);
3593     free(Y);
3594     free(table);
3595     return ret;
3596   }
3597 
3598 
COORDINATE_get(COORDINATE * self,int i)3599 SWIGINTERN COORDINATE *COORDINATE_get(COORDINATE *self,int i){
3600     return self+i;
3601   }
3602 
3603   int
my_PS_rna_plot_snoop_a(std::string sequence,std::string structure,std::string filename,std::vector<int> relative_access,std::vector<std::string> seqs)3604   my_PS_rna_plot_snoop_a( std::string               sequence,
3605                           std::string               structure,
3606                           std::string               filename,
3607                           std::vector<int>          relative_access,
3608                           std::vector<std::string>  seqs)
3609   {
3610     std::vector<const char*> seqs_vec;
3611     std::transform(seqs.begin(), seqs.end(), std::back_inserter(seqs_vec), convert_vecstring2veccharcp);
3612     seqs_vec.push_back(NULL); /* mark end of sequences */
3613 
3614     return PS_rna_plot_snoop_a( sequence.c_str(),
3615                                 structure.c_str(),
3616                                 filename.c_str(),
3617                                 &relative_access[0],
3618                                 (const char **)&seqs_vec[0]);
3619   }
3620 
3621   int
file_PS_rnaplot(std::string sequence,std::string structure,std::string filename,vrna_md_t * md_p=NULL)3622   file_PS_rnaplot(std::string sequence,
3623                   std::string structure,
3624                   std::string filename,
3625                   vrna_md_t   *md_p = NULL)
3626   {
3627     return vrna_file_PS_rnaplot(sequence.c_str(), structure.c_str(), filename.c_str(), md_p);
3628   }
3629 
3630   int
file_PS_rnaplot_a(std::string sequence,std::string structure,std::string filename,std::string pre,std::string post,vrna_md_t * md_p=NULL)3631   file_PS_rnaplot_a(std::string sequence,
3632                     std::string structure,
3633                     std::string filename,
3634                     std::string pre,
3635                     std::string post,
3636                     vrna_md_t   *md_p = NULL)
3637   {
3638     return vrna_file_PS_rnaplot_a(sequence.c_str(), structure.c_str(), filename.c_str(), pre.c_str(), post.c_str(), md_p);
3639   }
3640 
3641 
3642 
3643   int
file_PS_aln(std::string filename,std::vector<std::string> alignment,std::vector<std::string> identifiers,std::string structure,unsigned int start=0,unsigned int end=0,int offset=0,unsigned int columns=60)3644   file_PS_aln(std::string               filename,
3645               std::vector<std::string>  alignment,
3646               std::vector<std::string>  identifiers,
3647               std::string               structure,
3648               unsigned int              start       = 0,
3649               unsigned int              end         = 0,
3650               int                       offset      = 0,
3651               unsigned int              columns     = 60)
3652   {
3653     std::vector<const char*> aln_vec;
3654     std::vector<const char*> id_vec;
3655 
3656     std::transform(alignment.begin(),
3657                    alignment.end(),
3658                    std::back_inserter(aln_vec),
3659                    convert_vecstring2veccharcp);
3660 
3661     std::transform(alignment.begin(),
3662                    alignment.end(),
3663                    std::back_inserter(id_vec),
3664                    convert_vecstring2veccharcp);
3665 
3666     aln_vec.push_back(NULL); /* mark end of sequences */
3667     id_vec.push_back(NULL); /* mark end of sequences */
3668 
3669     return vrna_file_PS_aln_slice(filename.c_str(),
3670                                   (const char **)&aln_vec[0],
3671                                   (const char **)&id_vec[0],
3672                                   structure.c_str(),
3673                                   start,
3674                                   end,
3675                                   offset,
3676                                   columns);
3677   }
3678 
3679 
3680 
3681 
3682   float
my_eval_structure_simple(std::string sequence,std::string structure,int verbosity_level=VRNA_VERBOSITY_QUIET,FILE * file=NULL)3683   my_eval_structure_simple(std::string sequence,
3684                            std::string structure,
3685                            int         verbosity_level = VRNA_VERBOSITY_QUIET,
3686                            FILE        *file = NULL)
3687   {
3688     return vrna_eval_structure_simple_v(sequence.c_str(), structure.c_str(), verbosity_level, file);
3689   }
3690 
3691   float
my_eval_circ_structure(std::string sequence,std::string structure,int verbosity_level=VRNA_VERBOSITY_QUIET,FILE * file=NULL)3692   my_eval_circ_structure(std::string sequence,
3693                          std::string structure,
3694                          int         verbosity_level = VRNA_VERBOSITY_QUIET,
3695                          FILE        *file = NULL)
3696   {
3697     return vrna_eval_circ_structure_v(sequence.c_str(), structure.c_str(), verbosity_level, file);
3698   }
3699 
3700   float
my_eval_gquad_structure(std::string sequence,std::string structure,int verbosity_level=VRNA_VERBOSITY_QUIET,FILE * file=NULL)3701   my_eval_gquad_structure(std::string sequence,
3702                           std::string structure,
3703                           int         verbosity_level = VRNA_VERBOSITY_QUIET,
3704                           FILE        *file = NULL)
3705   {
3706     return vrna_eval_gquad_structure_v(sequence.c_str(), structure.c_str(), verbosity_level, file);
3707   }
3708 
3709   float
my_eval_circ_gquad_structure(std::string sequence,std::string structure,int verbosity_level=VRNA_VERBOSITY_QUIET,FILE * file=NULL)3710   my_eval_circ_gquad_structure(std::string sequence,
3711                                std::string structure,
3712                                int         verbosity_level = VRNA_VERBOSITY_QUIET,
3713                                FILE        *file = NULL)
3714   {
3715     return vrna_eval_circ_gquad_structure_v(sequence.c_str(), structure.c_str(), verbosity_level, file);
3716   }
3717 
3718   float
my_eval_structure_simple(std::vector<std::string> alignment,std::string structure,int verbosity_level=VRNA_VERBOSITY_QUIET,FILE * file=NULL)3719   my_eval_structure_simple(std::vector<std::string> alignment,
3720                            std::string              structure,
3721                            int                      verbosity_level = VRNA_VERBOSITY_QUIET,
3722                            FILE                     *file = NULL)
3723   {
3724     std::vector<const char*>  vc;
3725 
3726     std::transform(alignment.begin(), alignment.end(), std::back_inserter(vc), convert_vecstring2veccharcp);
3727     vc.push_back(NULL); /* mark end of sequences */
3728 
3729     return vrna_eval_consensus_structure_simple_v((const char **)&vc[0], structure.c_str(), verbosity_level, file);
3730   }
3731 
3732   float
my_eval_circ_structure(std::vector<std::string> alignment,std::string structure,int verbosity_level=VRNA_VERBOSITY_QUIET,FILE * file=NULL)3733   my_eval_circ_structure(std::vector<std::string> alignment,
3734                          std::string              structure,
3735                          int                      verbosity_level = VRNA_VERBOSITY_QUIET,
3736                          FILE                     *file = NULL)
3737   {
3738     std::vector<const char*>  vc;
3739 
3740     std::transform(alignment.begin(), alignment.end(), std::back_inserter(vc), convert_vecstring2veccharcp);
3741     vc.push_back(NULL); /* mark end of sequences */
3742 
3743     return vrna_eval_circ_consensus_structure_v((const char **)&vc[0], structure.c_str(), verbosity_level, file);
3744   }
3745 
3746   float
my_eval_gquad_structure(std::vector<std::string> alignment,std::string structure,int verbosity_level=VRNA_VERBOSITY_QUIET,FILE * file=NULL)3747   my_eval_gquad_structure(std::vector<std::string>  alignment,
3748                           std::string               structure,
3749                           int                       verbosity_level = VRNA_VERBOSITY_QUIET,
3750                           FILE                      *file = NULL)
3751   {
3752     std::vector<const char*>  vc;
3753 
3754     std::transform(alignment.begin(), alignment.end(), std::back_inserter(vc), convert_vecstring2veccharcp);
3755     vc.push_back(NULL); /* mark end of sequences */
3756 
3757     return vrna_eval_gquad_consensus_structure_v((const char **)&vc[0], structure.c_str(), verbosity_level, file);
3758   }
3759 
3760   float
my_eval_circ_gquad_structure(std::vector<std::string> alignment,std::string structure,int verbosity_level=VRNA_VERBOSITY_QUIET,FILE * file=NULL)3761   my_eval_circ_gquad_structure(std::vector<std::string> alignment,
3762                                std::string              structure,
3763                                int                      verbosity_level = VRNA_VERBOSITY_QUIET,
3764                                FILE                     *file = NULL)
3765   {
3766     std::vector<const char*>  vc;
3767 
3768     std::transform(alignment.begin(), alignment.end(), std::back_inserter(vc), convert_vecstring2veccharcp);
3769     vc.push_back(NULL); /* mark end of sequences */
3770 
3771     return vrna_eval_circ_gquad_consensus_structure_v((const char **)&vc[0], structure.c_str(), verbosity_level, file);
3772   }
3773 
3774   float
my_eval_structure_pt_simple(std::string sequence,std::vector<int> pt,int verbosity_level=VRNA_VERBOSITY_QUIET,FILE * file=NULL)3775   my_eval_structure_pt_simple(std::string       sequence,
3776                               std::vector<int>  pt,
3777                               int               verbosity_level = VRNA_VERBOSITY_QUIET,
3778                               FILE              *file = NULL)
3779   {
3780     std::vector<short> vc;
3781 
3782     transform(pt.begin(), pt.end(), back_inserter(vc), convert_vecint2vecshort);
3783 
3784     return vrna_eval_structure_pt_simple_v(sequence.c_str(), (const short*)&vc[0], verbosity_level, file);
3785   }
3786 
3787   float
my_eval_structure_pt_simple(std::vector<std::string> alignment,std::vector<int> pt,int verbosity_level=VRNA_VERBOSITY_QUIET,FILE * file=NULL)3788   my_eval_structure_pt_simple(std::vector<std::string>  alignment,
3789                               std::vector<int>          pt,
3790                               int                       verbosity_level = VRNA_VERBOSITY_QUIET,
3791                               FILE                      *file = NULL)
3792   {
3793     std::vector<const char*>  vc;
3794     std::vector<short> ptv;
3795 
3796     std::transform(alignment.begin(), alignment.end(), std::back_inserter(vc), convert_vecstring2veccharcp);
3797     vc.push_back(NULL); /* mark end of sequences */
3798 
3799     transform(pt.begin(), pt.end(), back_inserter(ptv), convert_vecint2vecshort);
3800 
3801     return vrna_eval_consensus_structure_pt_simple_v((const char **)&vc[0], (const short*)&ptv[0], verbosity_level, file);
3802   }
3803 
3804 
3805 
3806 SWIGINTERN int
SWIG_PERL_DECL_ARGS_2(SV * obj,unsigned char * val)3807 SWIG_AsVal_unsigned_SS_char SWIG_PERL_DECL_ARGS_2(SV * obj, unsigned char *val)
3808 {
3809   unsigned long v;
3810   int res = SWIG_AsVal_unsigned_SS_long SWIG_PERL_CALL_ARGS_2(obj, &v);
3811   if (SWIG_IsOK(res)) {
3812     if ((v > UCHAR_MAX)) {
3813       return SWIG_OverflowError;
3814     } else {
3815       if (val) *val = static_cast< unsigned char >(v);
3816     }
3817   }
3818   return res;
3819 }
3820 
3821 
3822   int
my_maximum_matching(std::string sequence)3823   my_maximum_matching(std::string sequence)
3824   {
3825     return vrna_maximum_matching_simple(sequence.c_str());
3826   }
3827 
3828 
3829 
3830 #include <string>
3831 #include <cstring>
3832 #include <vector>
3833 
3834   char *
my_fold(char * string,float * energy)3835   my_fold(char *string,
3836           float *energy)
3837   {
3838     char *struc;
3839 
3840     struc = (char *)calloc(strlen(string)+1,sizeof(char));
3841     *energy = vrna_fold(string, struc);
3842 
3843     return struc;
3844   }
3845 
3846   char *
my_fold(char * string,char * constraints,float * energy)3847   my_fold(char *string,
3848           char *constraints,
3849           float *energy)
3850   {
3851     char                  *struc;
3852     vrna_fold_compound_t  *fc;
3853 
3854     struc = (char *)calloc(strlen(string)+1,sizeof(char));
3855     fc    = vrna_fold_compound(string, NULL, VRNA_OPTION_DEFAULT);
3856 
3857     if (constraints && fold_constrained)
3858       vrna_hc_add_from_db(fc, constraints, VRNA_CONSTRAINT_DB_DEFAULT);
3859 
3860     *energy = vrna_mfe(fc, struc);
3861 
3862     vrna_fold_compound_free(fc);
3863 
3864 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
3865     if (constraints && (!fold_constrained))
3866       strncpy(constraints, struc, strlen(constraints));
3867 #endif
3868 
3869     return struc;
3870   }
3871 
3872   char *
my_alifold(std::vector<std::string> alignment,float * energy)3873   my_alifold(std::vector<std::string> alignment,
3874              float                    *energy)
3875   {
3876     char *struc;
3877     /* convert std::vector<std::string> to vector<const char *> */
3878     std::vector<const char*>  vc;
3879     std::transform(alignment.begin(), alignment.end(), std::back_inserter(vc), convert_vecstring2veccharcp);
3880     vc.push_back(NULL); /* mark end of sequences */
3881 
3882     struc = (char *)calloc(strlen(vc[0])+1,sizeof(char));
3883 
3884     *energy = vrna_alifold((const char **)&vc[0], struc);
3885 
3886     return struc;
3887   }
3888 
3889   char *
my_alifold(std::vector<std::string> alignment,char * constraints,float * energy)3890   my_alifold(std::vector<std::string> alignment,
3891              char                     *constraints,
3892              float                    *energy)
3893   {
3894     char                      *struc;
3895     vrna_fold_compound_t      *fc;
3896     std::vector<const char*>  vc;
3897 
3898     /* convert std::vector<std::string> to vector<const char *> */
3899     std::transform(alignment.begin(),
3900                    alignment.end(),
3901                    std::back_inserter(vc),
3902                    convert_vecstring2veccharcp);
3903     vc.push_back(NULL); /* mark end of sequences */
3904 
3905     struc = (char *)calloc(strlen(vc[0])+1,sizeof(char));
3906 
3907     fc = vrna_fold_compound_comparative((const char **)&vc[0], NULL, VRNA_OPTION_DEFAULT);
3908 
3909     if (constraints && fold_constrained)
3910       vrna_hc_add_from_db(fc, constraints, VRNA_CONSTRAINT_DB_DEFAULT);
3911 
3912     *energy = vrna_mfe(fc, struc);
3913 
3914     vrna_fold_compound_free(fc);
3915 
3916 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
3917     if (constraints && (!fold_constrained))
3918       strncpy(constraints, struc, strlen(constraints));
3919 #endif
3920 
3921     return struc;
3922   }
3923 
3924   char *
my_cofold(char * string,float * energy)3925   my_cofold(char  *string,
3926             float *energy)
3927   {
3928     char *s, **tok, **ptr, *struc, *sequence;
3929 
3930     sequence = string;
3931     struc    = (char *)calloc(strlen(string)+1,sizeof(char));
3932 
3933 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
3934     /* first, tokenize the input at delimiter '&' */
3935     tok = vrna_strsplit(string, "&");
3936 
3937     /*
3938         now, check whether there is only a single sequence.
3939         This may be a hint that someone is still using the
3940         'old' API where the split point had to be spliced out
3941         and explicitly specified through the global variable
3942         cut_point
3943      */
3944     if ((tok) && (tok[0])) {
3945       if (!tok[1]) {
3946         if (cut_point > (int)strlen(string)) {
3947           cut_point = -1;
3948         } else {
3949           /* we need to re-insert the delimiter now */
3950           sequence = vrna_cut_point_insert(string, cut_point);
3951         }
3952       }
3953     }
3954 #endif
3955 
3956     *energy = vrna_cofold(sequence, struc);
3957 
3958 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
3959     /* clean up */
3960     if (tok) {
3961       for (ptr = tok; *ptr; ptr++)
3962         free(*ptr);
3963 
3964       free(tok);
3965     }
3966 
3967     if (sequence != string)
3968       free(sequence);
3969 #endif
3970 
3971     return struc;
3972   }
3973 
3974   char *
my_cofold(char * string,char * constraints,float * energy)3975   my_cofold(char  *string,
3976             char  *constraints,
3977             float *energy)
3978   {
3979     char *s, **tok, **ptr, *struc, *sequence;
3980     vrna_fold_compound_t      *fc;
3981 
3982     sequence = string;
3983     struc    = (char *)calloc(strlen(string)+1,sizeof(char));
3984 
3985 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
3986     /* first, tokenize the input at delimiter '&' */
3987     tok = vrna_strsplit(string, "&");
3988 
3989     /*
3990         now, check whether there is only a single sequence.
3991         This may be a hint that someone is still using the
3992         'old' API where the split point had to be spliced out
3993         and explicitly specified through the global variable
3994         cut_point
3995      */
3996     if ((tok) && (tok[0])) {
3997       if (!tok[1]) {
3998         if (cut_point > (int)strlen(string)) {
3999           cut_point = -1;
4000         } else {
4001           /* we need to re-insert the delimiter now */
4002           sequence = vrna_cut_point_insert(string, cut_point);
4003         }
4004       }
4005     }
4006 #endif
4007 
4008     fc = vrna_fold_compound(sequence, NULL, VRNA_OPTION_DEFAULT);
4009 
4010     if (constraints && fold_constrained)
4011       vrna_hc_add_from_db(fc, constraints, VRNA_CONSTRAINT_DB_DEFAULT);
4012 
4013     *energy = vrna_mfe_dimer(fc, struc);
4014 
4015     /* clean up */
4016 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
4017     if (tok) {
4018       for (ptr = tok; *ptr; ptr++)
4019         free(*ptr);
4020 
4021       free(tok);
4022     }
4023 
4024     if (sequence != string)
4025       free(sequence);
4026 #endif
4027 
4028     vrna_fold_compound_free(fc);
4029 
4030 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
4031     if (constraints && (!fold_constrained))
4032       strncpy(constraints, struc, strlen(constraints));
4033 #endif
4034 
4035     return struc;
4036   }
4037 
4038   char *
my_circfold(char * string,float * energy)4039   my_circfold(char *string,
4040               float *energy)
4041   {
4042     char *struc;
4043 
4044     struc   = (char *)calloc(strlen(string)+1,sizeof(char));
4045     *energy = vrna_circfold(string, struc);
4046 
4047     return struc;
4048   }
4049 
4050   char *
my_circfold(char * string,char * constraints,float * energy)4051   my_circfold(char *string,
4052               char *constraints,
4053               float *energy)
4054   {
4055     char                  *struc;
4056     vrna_md_t             md;
4057     vrna_fold_compound_t  *fc;
4058 
4059     vrna_md_set_default(&md);
4060     md.circ = 1;
4061 
4062     struc = (char *)calloc(strlen(string)+1,sizeof(char));
4063 
4064     fc  = vrna_fold_compound(string, &md, VRNA_OPTION_DEFAULT);
4065 
4066     if (constraints && fold_constrained)
4067       vrna_hc_add_from_db(fc, constraints, VRNA_CONSTRAINT_DB_DEFAULT);
4068 
4069     *energy = vrna_mfe(fc, struc);
4070 
4071     vrna_fold_compound_free(fc);
4072 
4073 #ifndef VRNA_DISABLE_BACKWARD_COMPATIBILITY
4074     if (constraints && (!fold_constrained))
4075       strncpy(constraints, struc, strlen(constraints));
4076 #endif
4077 
4078     return struc;
4079   }
4080 
4081   char *
my_circalifold(std::vector<std::string> alignment,float * energy)4082   my_circalifold(std::vector<std::string> alignment,
4083                  float                    *energy)
4084   {
4085     char *struc;
4086     /* convert std::vector<std::string> to vector<const char *> */
4087     std::vector<const char*>  vc;
4088     std::transform(alignment.begin(), alignment.end(), std::back_inserter(vc), convert_vecstring2veccharcp);
4089     vc.push_back(NULL); /* mark end of sequences */
4090 
4091     struc = (char *)calloc(strlen(vc[0])+1,sizeof(char));
4092 
4093     *energy = vrna_circalifold((const char **)&vc[0], struc);
4094 
4095     return struc;
4096   }
4097 
4098   char *
my_circalifold(std::vector<std::string> alignment,char * constraints,float * energy)4099   my_circalifold(std::vector<std::string> alignment,
4100                  char                     *constraints,
4101                  float                    *energy)
4102   {
4103     char                      *struc;
4104     vrna_fold_compound_t      *fc;
4105     std::vector<const char*>  vc;
4106     vrna_md_t                 md;
4107 
4108     vrna_md_set_default(&md);
4109     md.circ = 1;
4110 
4111     /* convert std::vector<std::string> to vector<const char *> */
4112     std::transform(alignment.begin(),
4113                    alignment.end(),
4114                    std::back_inserter(vc),
4115                    convert_vecstring2veccharcp);
4116     vc.push_back(NULL); /* mark end of sequences */
4117 
4118     struc = (char *)calloc(strlen(vc[0])+1,sizeof(char));
4119 
4120     fc = vrna_fold_compound_comparative((const char **)&vc[0],
4121                                         &md,
4122                                         VRNA_OPTION_DEFAULT);
4123 
4124     if (constraints && fold_constrained)
4125       vrna_hc_add_from_db(fc, constraints, VRNA_CONSTRAINT_DB_DEFAULT);
4126 
4127     *energy = vrna_mfe(fc, struc);
4128 
4129     vrna_fold_compound_free(fc);
4130 
4131     return struc;
4132   }
4133 
4134 
4135 
4136 
4137 #ifdef VRNA_WITH_SVM
4138   float
my_Lfoldz(std::string sequence,int window_size,double min_z,FILE * nullfile=NULL)4139   my_Lfoldz(std::string sequence,
4140             int         window_size,
4141             double      min_z,
4142             FILE        *nullfile = NULL)
4143   {
4144     return vrna_Lfoldz(sequence.c_str(),
4145                        window_size,
4146                        min_z,
4147                        nullfile);
4148   }
4149 #endif
4150 
4151   float
my_Lfold(std::string sequence,int window_size,FILE * nullfile=NULL)4152   my_Lfold(std::string sequence,
4153            int        window_size,
4154            FILE       *nullfile = NULL)
4155   {
4156     return vrna_Lfold(sequence.c_str(), window_size, nullfile);
4157   }
4158 
4159   float
my_aliLfold(std::vector<std::string> alignment,int window_size,FILE * nullfile=NULL)4160   my_aliLfold(std::vector<std::string> alignment,
4161               int                      window_size,
4162               FILE                     *nullfile = NULL)
4163   {
4164     /* convert std::vector<std::string> to vector<const char *> */
4165     std::vector<const char*>  aln;
4166     std::transform(alignment.begin(), alignment.end(), std::back_inserter(aln), convert_vecstring2veccharcp);
4167     aln.push_back(NULL); /* mark end of sequences */
4168 
4169     return vrna_aliLfold((const char **)&aln[0],
4170                          window_size,
4171                          nullfile);
4172   }
4173 
4174 
4175 
4176   char *
my_pf_fold(char * string,float * energy)4177   my_pf_fold(char   *string,
4178              float  *energy)
4179   {
4180     char *struc;
4181     struc = (char *)calloc(strlen(string)+1,sizeof(char));
4182     *energy = pf_fold(string, struc);
4183     return(struc);
4184   }
4185 
4186   char *
my_pf_fold(char * string,char * constraints,float * energy)4187   my_pf_fold(char *string,
4188              char *constraints,
4189              float *energy)
4190   {
4191     char *struc;
4192     struc = (char *)calloc(strlen(string)+1,sizeof(char));
4193     if (constraints && fold_constrained)
4194       strncpy(struc, constraints, strlen(string));
4195     *energy = pf_fold(string, struc);
4196     if (constraints)
4197       strncpy(constraints, struc, strlen(constraints));
4198     return(struc);
4199   }
4200 
4201 
4202   char *
my_pf_circ_fold(char * string,float * energy)4203   my_pf_circ_fold(char  *string,
4204                   float *energy)
4205   {
4206     char *struc;
4207     struc = (char *)calloc(strlen(string)+1,sizeof(char));
4208     *energy = pf_circ_fold(string, struc);
4209     return(struc);
4210   }
4211 
4212   char *
my_pf_circ_fold(char * string,char * constraints,float * energy)4213   my_pf_circ_fold(char  *string,
4214                   char  *constraints,
4215                   float *energy)
4216   {
4217     char *struc;
4218     struc = (char *)calloc(strlen(string)+1,sizeof(char));
4219     if (constraints && fold_constrained)
4220       strncpy(struc, constraints, strlen(string));
4221     *energy = pf_circ_fold(string, struc);
4222     if (constraints)
4223       strncpy(constraints, struc, strlen(constraints));
4224     return(struc);
4225   }
4226 
4227 
4228   char *
my_co_pf_fold(char * string,float * FA,float * FB,float * FcAB,float * FAB)4229   my_co_pf_fold(char  *string,
4230                 float *FA,
4231                 float *FB,
4232                 float *FcAB,
4233                 float *FAB)
4234   {
4235     char *struc;
4236     vrna_dimer_pf_t temp;
4237     struc = (char *)calloc(strlen(string)+1,sizeof(char));
4238     temp=co_pf_fold(string, struc);
4239     *FAB = temp.FAB;
4240     *FcAB = temp.FcAB;
4241     *FA = temp.FA;
4242     *FB = temp.FB;
4243     return(struc);
4244   }
4245   char *
my_co_pf_fold(char * string,char * constraints,float * FA,float * FB,float * FcAB,float * FAB)4246   my_co_pf_fold(char  *string,
4247                 char  *constraints,
4248                 float *FA,
4249                 float *FB,
4250                 float *FcAB,
4251                 float *FAB)
4252   {
4253     char *struc;
4254     vrna_dimer_pf_t temp;
4255     struc = (char *)calloc(strlen(string)+1,sizeof(char));
4256     if (constraints && fold_constrained)
4257       strncpy(struc, constraints, strlen(string));
4258     temp=co_pf_fold(string, struc);
4259     *FAB = temp.FAB;
4260     *FcAB = temp.FcAB;
4261     *FA = temp.FA;
4262     *FB = temp.FB;
4263     if (constraints)
4264       strncpy(constraints, struc, strlen(constraints));
4265     return(struc);
4266   }
4267 
4268 
4269  void
my_get_concentrations(double FcAB,double FcAA,double FcBB,double FEA,double FEB,double Ac_start,double Bc_start,double * AB,double * AA,double * BB,double * A,double * B)4270  my_get_concentrations(double FcAB,
4271                        double FcAA,
4272                        double FcBB,
4273                        double FEA,
4274                        double FEB,
4275                        double Ac_start,
4276                        double Bc_start,
4277                        double *AB,
4278                        double *AA,
4279                        double *BB,
4280                        double *A,
4281                        double *B)
4282   {
4283     vrna_dimer_conc_t *temp;
4284     double *concis;
4285     concis = (double *)calloc(4,sizeof(double));
4286     concis[0]=Ac_start;
4287     concis[1]=Bc_start;
4288     concis[2]=0;
4289     temp=get_concentrations(FcAB,FcAA,FcBB,FEA,FEB,concis);
4290     *AB=temp->ABc;
4291     *AA=temp->AAc;
4292     *BB=temp->BBc;
4293     *A=temp->Ac;
4294     *B=temp->Bc;
4295     free(concis);
4296     free(temp);
4297     return;
4298   }
4299 
4300 
4301 double
get_pr(int i,int j)4302 get_pr(int i,
4303        int j)
4304 {
4305   int ii;
4306   if (i>j) {ii=i; i=j; j=ii;}
4307   return pr[iindx[i]-j];
4308 }
4309 
4310 
4311   char *
my_MEA_from_plist(std::vector<vrna_ep_t> plist,std::string sequence,double gamma,vrna_md_t * md,float * OUTPUT)4312   my_MEA_from_plist(std::vector<vrna_ep_t> plist,
4313                     std::string            sequence,
4314                     double                 gamma,
4315                     vrna_md_t              *md,
4316                     float                  *OUTPUT)
4317   {
4318     vrna_ep_t               pp;
4319     std::vector<vrna_ep_t>  pl = plist;
4320 
4321     pp.i = pp.j = 0;
4322     pp.p = 0.;
4323     pp.type = VRNA_PLIST_TYPE_BASEPAIR;
4324     pl.push_back(pp);
4325 
4326     return vrna_MEA_from_plist(&pl[0],
4327                                sequence.c_str(),
4328                                gamma,
4329                                md,
4330                                OUTPUT);
4331   }
4332 
4333   char *
my_MEA_from_plist(std::vector<vrna_ep_t> plist,std::string sequence,vrna_md_t * md,float * OUTPUT)4334   my_MEA_from_plist(std::vector<vrna_ep_t> plist,
4335                     std::string            sequence,
4336                     vrna_md_t              *md,
4337                     float                  *OUTPUT)
4338   {
4339     vrna_ep_t               pp;
4340     std::vector<vrna_ep_t>  pl = plist;
4341 
4342     pp.i = pp.j = 0;
4343     pp.p = 0.;
4344     pp.type = VRNA_PLIST_TYPE_BASEPAIR;
4345     pl.push_back(pp);
4346 
4347     return vrna_MEA_from_plist(&pl[0],
4348                                sequence.c_str(),
4349                                1.,
4350                                md,
4351                                OUTPUT);
4352   }
4353 
4354   char *
my_MEA_from_plist(std::vector<vrna_ep_t> plist,std::string sequence,double gamma,float * OUTPUT)4355   my_MEA_from_plist(std::vector<vrna_ep_t> plist,
4356                     std::string            sequence,
4357                     double                 gamma,
4358                     float                  *OUTPUT)
4359   {
4360     vrna_ep_t               pp;
4361     std::vector<vrna_ep_t>  pl = plist;
4362 
4363     pp.i = pp.j = 0;
4364     pp.p = 0.;
4365     pp.type = VRNA_PLIST_TYPE_BASEPAIR;
4366     pl.push_back(pp);
4367 
4368     return vrna_MEA_from_plist(&pl[0],
4369                                sequence.c_str(),
4370                                gamma,
4371                                NULL,
4372                                OUTPUT);
4373   }
4374 
4375   char *
my_MEA_from_plist(std::vector<vrna_ep_t> plist,std::string sequence,float * OUTPUT)4376   my_MEA_from_plist(std::vector<vrna_ep_t> plist,
4377                     std::string            sequence,
4378                     float                  *OUTPUT)
4379   {
4380     vrna_ep_t               pp;
4381     std::vector<vrna_ep_t>  pl = plist;
4382 
4383     pp.i = pp.j = 0;
4384     pp.p = 0.;
4385     pp.type = VRNA_PLIST_TYPE_BASEPAIR;
4386     pl.push_back(pp);
4387 
4388     return vrna_MEA_from_plist(&pl[0],
4389                                sequence.c_str(),
4390                                1.,
4391                                NULL,
4392                                OUTPUT);
4393   }
4394 
4395 
new_vrna_pbacktrack_mem_t()4396 SWIGINTERN vrna_pbacktrack_mem_t *new_vrna_pbacktrack_mem_t(){
4397     vrna_pbacktrack_mem_t *m = (vrna_pbacktrack_mem_t *)vrna_alloc(sizeof(vrna_pbacktrack_mem_t));
4398     *m = NULL;
4399     return m;
4400   }
delete_vrna_pbacktrack_mem_t(vrna_pbacktrack_mem_t * self)4401 SWIGINTERN void delete_vrna_pbacktrack_mem_t(vrna_pbacktrack_mem_t *self){
4402     vrna_pbacktrack_mem_free(*self);
4403     delete self;
4404   }
4405 
4406 #include <vector>
4407 
4408   std::vector<vrna_ep_t>
my_pfl_fold(std::string sequence,int w,int L,double cutoff)4409   my_pfl_fold(std::string sequence,
4410               int         w,
4411               int         L,
4412               double      cutoff)
4413   {
4414     std::vector<vrna_ep_t > vplist;
4415     vrna_ep_t *ptr, *plist;
4416 
4417     plist = vrna_pfl_fold(sequence.c_str(), w, L, (float)cutoff);
4418 
4419     for (ptr = plist; ptr->i && ptr->j; ptr++) {
4420       vrna_ep_t pl;
4421       pl.i    = ptr->i;
4422       pl.j    = ptr->j;
4423       pl.p    = ptr->p;
4424       pl.type = ptr->type;
4425       vplist.push_back(pl);
4426     }
4427     free(plist);
4428 
4429     return vplist;
4430   }
4431 
4432   std::vector<std::vector<double> >
pfl_fold_up(std::string sequence,int ulength,int window_size,int max_bp_span)4433   pfl_fold_up(std::string sequence,
4434                int        ulength,
4435                int        window_size,
4436                int        max_bp_span)
4437   {
4438     double **up = vrna_pfl_fold_up(sequence.c_str(), ulength, window_size, max_bp_span);
4439 
4440     std::vector<std::vector<double> > up_vec;
4441 
4442     std::vector<double> nullvec(ulength + 1, 0.);
4443 
4444     /* insert a 0th element, since we start a 1-based N x M matrix here */
4445     up_vec.push_back(nullvec);
4446     free(up[0]);
4447     for (unsigned int i = 1; i <= sequence.length(); i++) {
4448       std::vector<double> row;
4449       /* insert a 0th element, again, everything should be 1-based */
4450       row.push_back(0.);
4451 
4452       /* add remaining elements for this row */
4453       for (int j = 1; j <= ulength; j++) {
4454         row.push_back(up[i][j]);
4455       }
4456 
4457       /* free memory of i-th row in up array */
4458       free(up[i]);
4459 
4460       up_vec.push_back(row);
4461     }
4462     free(up);
4463 
4464     return up_vec;
4465   }
4466 
4467 
4468 #include <sstream>
4469 
SOLUTION_get(SOLUTION * self,int i)4470 SWIGINTERN SOLUTION *SOLUTION_get(SOLUTION *self,int i){
4471            return self+i;
4472         }
SOLUTION_size(SOLUTION * self)4473 SWIGINTERN int SOLUTION_size(SOLUTION *self){
4474            SOLUTION *s;
4475            for (s=self; s->structure; s++);
4476            return (int)(s-self);
4477         }
delete_SOLUTION(SOLUTION * self)4478 SWIGINTERN void delete_SOLUTION(SOLUTION *self){
4479            SOLUTION *s;
4480            for (s=self; s->structure; s++) free(s->structure);
4481            free(self);
4482         }
4483 
4484 
4485 extern "C" {
4486   typedef struct {
4487     float energy;
4488     char *structure;
4489   } subopt_solution;
4490 }
4491 
4492 
delete_subopt_solution(subopt_solution * self)4493 SWIGINTERN void delete_subopt_solution(subopt_solution *self){
4494     free(self->structure);
4495     free(self);
4496   }
std_vector_Sl_subopt_solution_Sg__pop(std::vector<subopt_solution> * self)4497 SWIGINTERN subopt_solution std_vector_Sl_subopt_solution_Sg__pop(std::vector< subopt_solution > *self){
4498                 if (self->size() == 0)
4499                     throw std::out_of_range("pop from empty vector");
4500                 subopt_solution x = self->back();
4501                 self->pop_back();
4502                 return x;
4503             }
std_vector_Sl_subopt_solution_Sg__get(std::vector<subopt_solution> * self,int i)4504 SWIGINTERN subopt_solution &std_vector_Sl_subopt_solution_Sg__get(std::vector< subopt_solution > *self,int i){
4505                 int size = int(self->size());
4506                 if (i>=0 && i<size)
4507                     return (*self)[i];
4508                 else
4509                     throw std::out_of_range("vector index out of range");
4510             }
std_vector_Sl_subopt_solution_Sg__set(std::vector<subopt_solution> * self,int i,subopt_solution const & x)4511 SWIGINTERN void std_vector_Sl_subopt_solution_Sg__set(std::vector< subopt_solution > *self,int i,subopt_solution const &x){
4512                 int size = int(self->size());
4513                 if (i>=0 && i<size)
4514                     (*self)[i] = x;
4515                 else
4516                     throw std::out_of_range("vector index out of range");
4517             }
4518 
4519 
4520   SOLUTION *
my_subopt(char * seq,char * constraint,int delta,FILE * nullfile=NULL)4521   my_subopt(char  *seq,
4522             char  *constraint,
4523             int   delta,
4524             FILE  *nullfile = NULL)
4525   {
4526     return subopt(seq, constraint, delta, nullfile);
4527   }
4528 
4529   std::vector<subopt_solution>
my_subopt(char * seq,int delta,FILE * nullfile=NULL)4530   my_subopt(char  *seq,
4531             int   delta,
4532             FILE  *nullfile = NULL)
4533   {
4534     std::vector<subopt_solution> ret;
4535     SOLUTION *sol = subopt(seq, NULL, delta, nullfile);
4536     if (sol)
4537       for(int i = 0; sol[i].structure != NULL; i++){
4538         subopt_solution a;
4539         a.energy = sol[i].energy;
4540         a.structure = sol[i].structure;
4541         ret.push_back(a);
4542       }
4543 
4544     free(sol);
4545     /* The memory occupied by the individual structures will be free'd automatically
4546        by swig, when the vector is destroyed
4547     */
4548     return ret;
4549   }
4550 
4551 
4552 
4553   char *
my_inverse_fold(char * start,const char * target,float * cost)4554   my_inverse_fold(char        *start,
4555                   const char  *target,
4556                   float *cost)
4557   {
4558     char *seq;
4559     int n;
4560     n = strlen(target);
4561     seq = vrna_random_string(n, symbolset);
4562     if (start)
4563       strncpy(seq, start, n);
4564     *cost = inverse_fold(seq, target);
4565     if (start)
4566       /* for backward compatibility modify start */
4567       strncpy(start, seq, n);
4568     return(seq);
4569   }
4570 
4571 
4572   char *
my_inverse_pf_fold(char * start,const char * target,float * cost)4573   my_inverse_pf_fold( char        *start,
4574                       const char  *target,
4575                       float       *cost)
4576   {
4577     char *seq;
4578     int n;
4579     n = strlen(target);
4580     seq = vrna_random_string(n, symbolset);
4581     if (start)
4582       strncpy(seq, start, n);
4583     *cost = inverse_pf_fold(seq, target);
4584     if (start)
4585       /* for backward compatibility modify start */
4586       strncpy(start, seq, n);
4587     return(seq);
4588   }
4589 
4590 
deref_any(void ** ptr,int index)4591 void *deref_any(void **ptr, int index) {
4592    /* dereference arbitray pointer */
4593    return (void *) ptr[index];
4594 }
4595 
4596 
get_aligned_line(int i)4597 char *get_aligned_line(int i) {
4598   i = i % 2;
4599   return aligned_line[i];
4600 }
4601 
4602 
4603 
4604   std::vector<double>
my_file_SHAPE_read(std::string file_name,int length,double default_value,std::string * shape_sequence,int * status)4605   my_file_SHAPE_read( std::string file_name,
4606                       int         length,
4607                       double      default_value,
4608                       std::string *shape_sequence,
4609                       int         *status)
4610   {
4611     std::vector<double> values (length+1, -999);
4612     char *seq = (char *)vrna_alloc(sizeof(char) * (length + 1));
4613 
4614     *status = vrna_file_SHAPE_read(file_name.c_str(), length, default_value, seq, (double *)&values[0]);
4615 
4616     *shape_sequence = std::string(seq);
4617 
4618     free(seq);
4619     return values;
4620   }
4621 
4622 
4623 
4624   int
my_file_fasta_read(std::string * id,std::string * sequence,std::vector<std::string> * rest,FILE * file,unsigned int options=0)4625   my_file_fasta_read( std::string               *id,
4626                       std::string               *sequence,
4627                       std::vector<std::string>  *rest,
4628                       FILE                      *file,
4629                       unsigned int              options = 0)
4630   {
4631     char  *c_seq, *c_id, **c_rest, **ptr;
4632     int   ret;
4633 
4634     ret = vrna_file_fasta_read_record(&c_id, &c_seq, &c_rest, file, options);
4635 
4636     if (ret != -1) {
4637       rest->clear();
4638       rest->reserve(ret);
4639 
4640       *id        = (c_id) ? c_id : "";
4641       *sequence  = (c_seq) ? c_seq : "";
4642 
4643       if ((c_rest) &&
4644           (*c_rest))
4645         for (ptr = c_rest; *ptr; ptr++) {
4646           std::string line(*ptr);
4647           rest->push_back(line);
4648           free(*ptr);
4649         }
4650 
4651       free(c_id);
4652       free(c_seq);
4653       free(c_rest);
4654     }
4655 
4656     return ret;
4657   }
4658 
4659 
4660 
4661 
4662   unsigned int
my_file_msa_detect_format(std::string filename,unsigned int options=VRNA_FILE_FORMAT_MSA_DEFAULT)4663   my_file_msa_detect_format(std::string   filename,
4664                             unsigned int  options = VRNA_FILE_FORMAT_MSA_DEFAULT)
4665   {
4666     return vrna_file_msa_detect_format(filename.c_str(), options);
4667   }
4668 
4669 
4670   int
my_file_msa_read(std::string filename,std::vector<std::string> * names,std::vector<std::string> * alignment,std::string * id,std::string * structure,unsigned int options=VRNA_FILE_FORMAT_MSA_STOCKHOLM)4671   my_file_msa_read( std::string               filename,
4672                     std::vector<std::string>  *names,
4673                     std::vector<std::string>  *alignment,
4674                     std::string               *id,
4675                     std::string               *structure,
4676                     unsigned int              options = VRNA_FILE_FORMAT_MSA_STOCKHOLM)
4677   {
4678     char **c_names, **c_aln, *c_id, *c_structure;
4679 
4680     int ret = vrna_file_msa_read(filename.c_str(), &c_names, &c_aln, &c_id, &c_structure, options);
4681 
4682     if (ret != -1) {
4683       names->clear();
4684       alignment->clear();
4685 
4686       names->reserve(ret);
4687       alignment->reserve(ret);
4688 
4689       for (int i = 0; i < ret; i++) {
4690         std::string id(c_names[i]);
4691         std::string seq(c_aln[i]);
4692         names->push_back(id);
4693         alignment->push_back(seq);
4694         free(c_names[i]);
4695         free(c_aln[i]);
4696       }
4697       *id        = (c_id) ? c_id : "";
4698       *structure = (c_structure) ? c_structure : "";
4699 
4700       free(c_names);
4701       free(c_aln);
4702       free(c_id);
4703       free(c_structure);
4704     }
4705 
4706     return ret;
4707   }
4708 
4709 
4710   int
my_file_msa_read_record(FILE * filehandle,std::vector<std::string> * names,std::vector<std::string> * alignment,std::string * id,std::string * structure,unsigned int options=VRNA_FILE_FORMAT_MSA_STOCKHOLM)4711   my_file_msa_read_record(FILE                      *filehandle,
4712                           std::vector<std::string>  *names,
4713                           std::vector<std::string>  *alignment,
4714                           std::string               *id,
4715                           std::string               *structure,
4716                           unsigned int              options = VRNA_FILE_FORMAT_MSA_STOCKHOLM)
4717   {
4718     char **c_names, **c_aln, *c_id, *c_structure;
4719 
4720     int ret = vrna_file_msa_read_record(filehandle, &c_names, &c_aln, &c_id, &c_structure, options);
4721 
4722     if (ret != -1) {
4723       names->clear();
4724       alignment->clear();
4725 
4726       names->reserve(ret);
4727       alignment->reserve(ret);
4728 
4729       for (int i = 0; i < ret; i++) {
4730         std::string id(c_names[i]);
4731         std::string seq(c_aln[i]);
4732         names->push_back(id);
4733         alignment->push_back(seq);
4734         free(c_names[i]);
4735         free(c_aln[i]);
4736       }
4737       *id        = (c_id) ? c_id : "";
4738       *structure = (c_structure) ? c_structure : "";
4739 
4740       free(c_names);
4741       free(c_aln);
4742       free(c_id);
4743       free(c_structure);
4744     }
4745 
4746     return ret;
4747   }
4748 
4749 
4750   int
my_file_msa_write(std::string filename,std::vector<std::string> names,std::vector<std::string> alignment,std::string id="",std::string structure="",std::string source="",unsigned int options=VRNA_FILE_FORMAT_MSA_STOCKHOLM|VRNA_FILE_FORMAT_MSA_APPEND)4751   my_file_msa_write(std::string               filename,
4752                     std::vector<std::string>  names,
4753                     std::vector<std::string>  alignment,
4754                     std::string               id = "",
4755                     std::string               structure = "",
4756                     std::string               source = "",
4757                     unsigned int              options = VRNA_FILE_FORMAT_MSA_STOCKHOLM | VRNA_FILE_FORMAT_MSA_APPEND)
4758   {
4759     std::vector<const char*>  v_names;
4760     std::vector<const char*>  v_aln;
4761 
4762     transform(names.begin(), names.end(), back_inserter(v_names), convert_vecstring2veccharcp);
4763     v_names.push_back(NULL); /* mark end of sequences */
4764     transform(alignment.begin(), alignment.end(), back_inserter(v_aln), convert_vecstring2veccharcp);
4765     v_aln.push_back(NULL); /* mark end of sequences */
4766 
4767     return vrna_file_msa_write(filename.c_str(),
4768                               (const char **)&v_names[0],
4769                               (const char **)&v_aln[0],
4770                               (id != "") ? id.c_str() : NULL,
4771                               (structure != "") ? structure.c_str() : NULL,
4772                               (source != "") ? source.c_str() : NULL,
4773                               options);
4774   }
4775 
4776 
4777 
4778 #include <vector>
4779 
4780   std::vector<int>
my_seq_encode(std::string sequence,vrna_md_t * md_p=NULL)4781   my_seq_encode(std::string sequence,
4782                 vrna_md_t   *md_p = NULL)
4783   {
4784     short             *s;
4785     int               n;
4786     std::vector<int>  encoding;
4787     vrna_md_t         md;
4788 
4789     if (!md_p) {
4790       vrna_md_set_default(&md);
4791       md_p = &md;
4792     }
4793 
4794     n = sequence.length();
4795     s = vrna_seq_encode(sequence.c_str(),
4796                         md_p);
4797 
4798     encoding.push_back(n);
4799     for (int i = 1; i <= n; i++)
4800       encoding.push_back(s[i]);
4801 
4802     free(s);
4803 
4804     return encoding;
4805   }
4806 
4807 
new_vrna_command_s()4808 SWIGINTERN vrna_command_s *new_vrna_command_s(){
4809     vrna_command_s *c = NULL;
4810     return c;
4811   }
delete_vrna_command_s(vrna_command_s * self)4812 SWIGINTERN void delete_vrna_command_s(vrna_command_s *self){
4813     vrna_commands_free(self);
4814   }
4815 
4816   struct vrna_command_s *
my_file_commands_read(std::string filename,unsigned int options=VRNA_CMD_PARSE_DEFAULTS)4817   my_file_commands_read(std::string   filename,
4818                         unsigned int  options = VRNA_CMD_PARSE_DEFAULTS)
4819   {
4820     int i;
4821 
4822     return vrna_file_commands_read(filename.c_str(),
4823                                    options);
4824   }
4825 
4826 
4827   std::vector<std::vector<int> >
my_enumerate_necklaces(std::vector<unsigned int> entity_counts)4828   my_enumerate_necklaces( std::vector<unsigned int> entity_counts)
4829   {
4830     std::vector<std::vector<int> > permutations;
4831     /* add a 0 entry, just in case it has been forgotten */
4832     entity_counts.push_back(0);
4833     unsigned int **result = vrna_enumerate_necklaces((const unsigned int *)&entity_counts[0]);
4834     if(result){
4835       /* get line length */
4836       unsigned int n = 0;
4837       for(std::vector<unsigned int>::iterator it = entity_counts.begin(); it != entity_counts.end(); ++it)
4838         n += *it;
4839 
4840       for(int i = 0; result[i]; i++){
4841         std::vector<int> line;
4842         for(unsigned int j = 1; j <= n; j++)
4843           line.push_back((int)result[i][j]);
4844         free(result[i]);
4845         permutations.push_back(line);
4846       }
4847       free(result);
4848     }
4849     return permutations;
4850   }
4851 
4852 
4853   std::vector<unsigned int>
my_rotational_symmetry(std::string string)4854   my_rotational_symmetry(std::string string)
4855   {
4856     std::vector<unsigned int> positions;
4857     unsigned int i, r, *pos;
4858 
4859     r = vrna_rotational_symmetry_pos(string.c_str(), &pos);
4860 
4861     if (r)
4862       for (i = 0; i < r; i++)
4863         positions.push_back(pos[i]);
4864 
4865     free(pos);
4866 
4867     return positions;
4868   }
4869 
4870 
4871   std::vector<unsigned int>
my_rotational_symmetry(std::vector<unsigned int> string)4872   my_rotational_symmetry(std::vector<unsigned int> string)
4873   {
4874     std::vector<unsigned int> positions;
4875     unsigned int i, r, *pos;
4876 
4877     r = vrna_rotational_symmetry_pos_num((unsigned int*)&string[0], string.size(), &pos);
4878 
4879     if (r)
4880       for (i = 0; i < r; i++)
4881         positions.push_back(pos[i]);
4882 
4883     free(pos);
4884 
4885     return positions;
4886   }
4887 
4888 
delete_duplexT(duplexT * self)4889 SWIGINTERN void delete_duplexT(duplexT *self){
4890     free(self->structure);
4891     free(self);
4892   }
4893 
4894 
4895 extern "C" {
4896   typedef struct {
4897     int i;
4898     int j;
4899     char *structure;
4900     float energy;
4901   } duplex_list_t;
4902 }
4903 
4904 
delete_duplex_list_t(duplex_list_t * self)4905 SWIGINTERN void delete_duplex_list_t(duplex_list_t *self){
4906     free(self->structure);
4907     free(self);
4908   }
std_vector_Sl_duplex_list_t_Sg__pop(std::vector<duplex_list_t> * self)4909 SWIGINTERN duplex_list_t std_vector_Sl_duplex_list_t_Sg__pop(std::vector< duplex_list_t > *self){
4910                 if (self->size() == 0)
4911                     throw std::out_of_range("pop from empty vector");
4912                 duplex_list_t x = self->back();
4913                 self->pop_back();
4914                 return x;
4915             }
std_vector_Sl_duplex_list_t_Sg__get(std::vector<duplex_list_t> * self,int i)4916 SWIGINTERN duplex_list_t &std_vector_Sl_duplex_list_t_Sg__get(std::vector< duplex_list_t > *self,int i){
4917                 int size = int(self->size());
4918                 if (i>=0 && i<size)
4919                     return (*self)[i];
4920                 else
4921                     throw std::out_of_range("vector index out of range");
4922             }
std_vector_Sl_duplex_list_t_Sg__set(std::vector<duplex_list_t> * self,int i,duplex_list_t const & x)4923 SWIGINTERN void std_vector_Sl_duplex_list_t_Sg__set(std::vector< duplex_list_t > *self,int i,duplex_list_t const &x){
4924                 int size = int(self->size());
4925                 if (i>=0 && i<size)
4926                     (*self)[i] = x;
4927                 else
4928                     throw std::out_of_range("vector index out of range");
4929             }
4930 
4931 
4932   duplexT
my_duplexfold(std::string s1,std::string s2)4933   my_duplexfold(std::string s1,
4934                 std::string s2)
4935   {
4936     return duplexfold(s1.c_str(), s2.c_str());
4937   }
4938 
4939   std::vector<duplex_list_t>
my_duplex_subopt(std::string s1,std::string s2,int delta,int w)4940   my_duplex_subopt( std::string s1,
4941                     std::string s2,
4942                     int         delta,
4943                     int         w)
4944   {
4945     std::vector<duplex_list_t> ret;
4946     duplexT *list, *ptr;
4947     list = duplex_subopt(s1.c_str(), s2.c_str(), delta, w);
4948 
4949     for (ptr = list; ptr->structure != NULL; ptr++) {
4950       duplex_list_t a;
4951       a.i         = ptr->i;
4952       a.j         = ptr->j;
4953       a.energy    = ptr->energy;
4954       a.structure = ptr->structure;
4955       ret.push_back(a);
4956     }
4957     free(list);
4958 
4959     return ret;
4960   }
4961 
4962   duplexT
my_aliduplexfold(std::vector<std::string> alignment1,std::vector<std::string> alignment2)4963   my_aliduplexfold(std::vector<std::string> alignment1,
4964                    std::vector<std::string> alignment2)
4965   {
4966     std::vector<const char*> aln_vec1;
4967     std::transform(alignment1.begin(), alignment1.end(), std::back_inserter(aln_vec1), convert_vecstring2veccharcp);
4968     aln_vec1.push_back(NULL); /* mark end of sequences */
4969     std::vector<const char*> aln_vec2;
4970     std::transform(alignment2.begin(), alignment2.end(), std::back_inserter(aln_vec2), convert_vecstring2veccharcp);
4971     aln_vec2.push_back(NULL); /* mark end of sequences */
4972 
4973     return aliduplexfold((const char **)&aln_vec1[0], (const char **)&aln_vec2[0]);
4974   }
4975 
4976   std::vector<duplex_list_t>
aliduplex_subopt(std::vector<std::string> alignment1,std::vector<std::string> alignment2,int delta,int w)4977   aliduplex_subopt(std::vector<std::string> alignment1,
4978                    std::vector<std::string> alignment2,
4979                    int                      delta,
4980                    int                      w)
4981   {
4982     std::vector<duplex_list_t> ret;
4983     duplexT *list, *ptr;
4984     std::vector<const char*> aln_vec1;
4985     std::transform(alignment1.begin(), alignment1.end(), std::back_inserter(aln_vec1), convert_vecstring2veccharcp);
4986     aln_vec1.push_back(NULL); /* mark end of sequences */
4987     std::vector<const char*> aln_vec2;
4988     std::transform(alignment2.begin(), alignment2.end(), std::back_inserter(aln_vec2), convert_vecstring2veccharcp);
4989     aln_vec2.push_back(NULL); /* mark end of sequences */
4990 
4991     list = aliduplex_subopt((const char **)&aln_vec1[0], (const char **)&aln_vec2[0], delta, w);
4992     for (ptr = list; ptr->structure != NULL; ptr++) {
4993       duplex_list_t a;
4994       a.i         = ptr->i;
4995       a.j         = ptr->j;
4996       a.energy    = ptr->energy;
4997       a.structure = ptr->structure;
4998       ret.push_back(a);
4999     }
5000     free(list);
5001 
5002     return ret;
5003   }
5004 
5005 
5006 #include <sstream>
5007 
new_vrna_move_t__SWIG_0(int pos_5=0,int pos_3=0)5008 SWIGINTERN vrna_move_t *new_vrna_move_t__SWIG_0(int pos_5=0,int pos_3=0){
5009     vrna_move_t *m = (vrna_move_t *)vrna_alloc(sizeof(vrna_move_t));
5010     *m = vrna_move_init(pos_5, pos_3);
5011     return m;
5012   }
delete_vrna_move_t(vrna_move_t * self)5013 SWIGINTERN void delete_vrna_move_t(vrna_move_t *self){
5014     vrna_move_list_free(self->next);
5015     free(self);
5016   }
vrna_move_t_is_removal(vrna_move_t * self)5017 SWIGINTERN int vrna_move_t_is_removal(vrna_move_t *self){
5018     return vrna_move_is_removal((const vrna_move_t *)self);
5019   }
vrna_move_t_is_insertion(vrna_move_t * self)5020 SWIGINTERN int vrna_move_t_is_insertion(vrna_move_t *self){
5021     return vrna_move_is_insertion((const vrna_move_t *)self);
5022   }
vrna_move_t_is_shift(vrna_move_t * self)5023 SWIGINTERN int vrna_move_t_is_shift(vrna_move_t *self){
5024     return vrna_move_is_shift((const vrna_move_t *)self);
5025   }
vrna_move_t_compare__SWIG_0(vrna_move_t * self,vrna_move_t const * b,std::vector<int> const pt=std::vector<int> ())5026 SWIGINTERN int vrna_move_t_compare__SWIG_0(vrna_move_t *self,vrna_move_t const *b,std::vector< int > const pt=std::vector< int >()){
5027     int result;
5028     std::vector<short> vs;
5029     transform(pt.begin(), pt.end(), back_inserter(vs), convert_vecint2vecshort);
5030 
5031     result =  vrna_move_compare(self,
5032                                 b,
5033                                 (const short *)&vs[0]);
5034 
5035     return result;
5036   }
5037 
5038 #include <sstream>
5039 
new_vrna_path_t__SWIG_0(double en,std::string s="",vrna_move_t * move=NULL,unsigned int type=VRNA_PATH_TYPE_DOT_BRACKET)5040 SWIGINTERN vrna_path_t *new_vrna_path_t__SWIG_0(double en,std::string s="",vrna_move_t *move=NULL,unsigned int type=VRNA_PATH_TYPE_DOT_BRACKET){
5041     vrna_path_t *step = (vrna_path_t *)vrna_alloc(sizeof(vrna_path_t));
5042 
5043     step->type  = type;
5044     step->en    = en;
5045 
5046     if ((s == "") && (move))
5047       type = VRNA_PATH_TYPE_MOVES;
5048 
5049     switch (type) {
5050       case VRNA_PATH_TYPE_DOT_BRACKET:
5051         if (s != "") {
5052           step->s = (char *)vrna_alloc(sizeof(char) * (s.length() + 1));
5053           memcpy(step->s, s.c_str(), sizeof(char) * s.length());
5054         } else {
5055           step->s = NULL;
5056         }
5057         break;
5058 
5059       case VRNA_PATH_TYPE_MOVES:
5060         if (move) {
5061           step->move.pos_5 = move->pos_5;
5062           step->move.pos_3 = move->pos_3;
5063         } else {
5064           step->move.pos_5 = 0;
5065           step->move.pos_3 = 0;
5066         }
5067         break;
5068 
5069       default:
5070         break;
5071     }
5072 
5073 
5074     return step;
5075   }
delete_vrna_path_t(vrna_path_t * self)5076 SWIGINTERN void delete_vrna_path_t(vrna_path_t *self){
5077     free(self->s);
5078     free(self);
5079   }
new_vrna_path_options_s()5080 SWIGINTERN vrna_path_options_s *new_vrna_path_options_s(){
5081     return NULL;
5082   }
delete_vrna_path_options_s(vrna_path_options_s * self)5083 SWIGINTERN void delete_vrna_path_options_s(vrna_path_options_s *self){
5084     vrna_path_options_free(self);
5085   }
5086 
5087   struct vrna_path_options_s *
my_path_options_findpath(int width=10,unsigned int type=VRNA_PATH_TYPE_DOT_BRACKET)5088   my_path_options_findpath(int          width = 10,
5089                            unsigned int type  = VRNA_PATH_TYPE_DOT_BRACKET)
5090   {
5091     return vrna_path_options_findpath(width, type);
5092   }
5093 
5094 
5095   std::vector<vrna_path_t>
my_get_path(std::string seq,std::string s1,std::string s2,int maxkeep)5096   my_get_path(std::string seq,
5097               std::string s1,
5098               std::string s2,
5099               int         maxkeep)
5100   {
5101     std::vector<vrna_path_t>  v; /* fill vector with returned vrna_path_t*/
5102     vrna_path_t *path_t, *ptr;
5103 
5104     path_t = ptr = get_path(seq.c_str(), s1.c_str(), s2.c_str(), maxkeep);
5105 
5106     while (ptr->s != NULL)
5107     {
5108         vrna_path_t p;
5109 
5110         p.type  = VRNA_PATH_TYPE_DOT_BRACKET;
5111         p.en    = ptr->en;
5112         p.s     = ptr->s;
5113 
5114         v.push_back(p);
5115         ptr++;
5116 
5117     }
5118     free(path_t);
5119     return v;
5120   }
5121 
5122 
5123 
5124 extern "C" {
5125   typedef struct {
5126     float temperature;    /**< @brief   The temperature in &deg;C */
5127     float heat_capacity;  /**< @brief   The specific heat at this temperature in Kcal/(Mol * K) */
5128   } heat_capacity_result;
5129 }
5130 
5131 
std_vector_Sl_heat_capacity_result_Sg__pop(std::vector<heat_capacity_result> * self)5132 SWIGINTERN heat_capacity_result std_vector_Sl_heat_capacity_result_Sg__pop(std::vector< heat_capacity_result > *self){
5133                 if (self->size() == 0)
5134                     throw std::out_of_range("pop from empty vector");
5135                 heat_capacity_result x = self->back();
5136                 self->pop_back();
5137                 return x;
5138             }
std_vector_Sl_heat_capacity_result_Sg__get(std::vector<heat_capacity_result> * self,int i)5139 SWIGINTERN heat_capacity_result &std_vector_Sl_heat_capacity_result_Sg__get(std::vector< heat_capacity_result > *self,int i){
5140                 int size = int(self->size());
5141                 if (i>=0 && i<size)
5142                     return (*self)[i];
5143                 else
5144                     throw std::out_of_range("vector index out of range");
5145             }
std_vector_Sl_heat_capacity_result_Sg__set(std::vector<heat_capacity_result> * self,int i,heat_capacity_result const & x)5146 SWIGINTERN void std_vector_Sl_heat_capacity_result_Sg__set(std::vector< heat_capacity_result > *self,int i,heat_capacity_result const &x){
5147                 int size = int(self->size());
5148                 if (i>=0 && i<size)
5149                     (*self)[i] = x;
5150                 else
5151                     throw std::out_of_range("vector index out of range");
5152             }
5153 
5154   std::vector<heat_capacity_result>
my_heat_capacity(std::string sequence,float T_min=0.,float T_max=100.,float T_increment=1.,unsigned int mpoints=2U)5155   my_heat_capacity(std::string   sequence,
5156                    float         T_min        = 0.,
5157                    float         T_max        = 100.,
5158                    float         T_increment  = 1.,
5159                    unsigned int  mpoints      = 2U)
5160   {
5161     vrna_heat_capacity_t              *result_c;
5162     std::vector<heat_capacity_result> result;
5163 
5164     result_c = vrna_heat_capacity_simple(sequence.c_str(), T_min, T_max, T_increment, mpoints);
5165 
5166     if (result_c) {
5167       for (size_t i = 0; result_c[i].temperature >= T_min; i++) {
5168         heat_capacity_result r;
5169         r.temperature = result_c[i].temperature;
5170         r.heat_capacity = result_c[i].heat_capacity;
5171         result.push_back(r);
5172       }
5173     }
5174 
5175     free(result_c);
5176 
5177     return result;
5178   }
5179 
5180 
5181 
5182 typedef struct {
5183   SV  *cb;
5184   SV  *data;
5185   SV  *delete_data;
5186 } perl_callback_t;
5187 
5188 static void perl_wrap_fc_status_callback(unsigned char status, void *data);
5189 
5190 static void
delete_perl_callback(void * data)5191 delete_perl_callback(void * data){
5192 
5193   perl_callback_t *cb = (perl_callback_t *)data;
5194   /* first delete user data */
5195   if(cb->data && SvOK(cb->data)){
5196     if(cb->delete_data && SvOK(cb->delete_data)){
5197       dSP;
5198 
5199       SV *err_tmp;
5200 
5201       /* call Perl subroutine */
5202       ENTER;
5203       SAVETMPS;
5204       PUSHMARK(SP);
5205 
5206       XPUSHs(cb->data);
5207       PUTBACK;
5208 
5209       perl_call_sv(cb->delete_data, G_EVAL | G_DISCARD);
5210 
5211       SPAGAIN;
5212 
5213       err_tmp = ERRSV;
5214       if (SvTRUE(err_tmp)) {
5215         croak ("Some error occurred while executing fold compound delete_data() callback - %s\n", SvPV_nolen(err_tmp));
5216       }
5217 
5218       FREETMPS;
5219       LEAVE;
5220       SvREFCNT_dec(cb->delete_data);
5221     }
5222     SvREFCNT_dec(cb->data);
5223   }
5224 
5225   /* now dispose of the callback */
5226   if(cb->cb && SvOK(cb->cb))
5227     SvREFCNT_dec(cb->cb);
5228 
5229   /* finally free perl callback */
5230   free(cb);
5231 }
5232 
5233 static void
fc_add_perl_data(vrna_fold_compound_t * vc,SV * data,SV * PerlFunc)5234 fc_add_perl_data(vrna_fold_compound_t *vc,
5235                 SV *data,
5236                 SV *PerlFunc){
5237 
5238   /* check whether PerlFunc actually is a reference to a Perl subroutine */
5239   if(!SvOK(data)){
5240     fprintf(stderr, "Warning: argument 1 for fold_compound::add_auxdata, must be defined\n");
5241     return;
5242   }
5243 
5244   if(PerlFunc && SvOK(PerlFunc)){
5245     if(SvTYPE(SvRV(PerlFunc)) != SVt_PVCV){
5246       fprintf(stderr, "Warning: argument 2 for fold_compound::add_auxdata, must be undef or code reference\n");
5247       return;
5248     }
5249   }
5250 
5251   perl_callback_t * cb;
5252   /* try to dispose of previous data */
5253   if(vc->auxdata){
5254     cb = (perl_callback_t *)vc->auxdata;
5255     if(cb->data && SvOK(cb->data)){
5256       if(cb->delete_data && SvOK(cb->delete_data)){
5257         dSP;
5258 
5259         SV *err_tmp;
5260 
5261         /* call Perl subroutine */
5262         ENTER;
5263         SAVETMPS;
5264         PUSHMARK(SP);
5265 
5266         XPUSHs(cb->data);
5267         PUTBACK;
5268 
5269         perl_call_sv(cb->delete_data, G_EVAL | G_DISCARD);
5270 
5271         SPAGAIN;
5272 
5273         err_tmp = ERRSV;
5274         if (SvTRUE(err_tmp)) {
5275           croak ("Some error occurred while executing fold compound delete_data() callback - %s\n", SvPV_nolen(err_tmp));
5276         }
5277 
5278         FREETMPS;
5279         LEAVE;
5280         SvREFCNT_dec(cb->delete_data);
5281       }
5282       SvREFCNT_dec(cb->data);
5283     }
5284   } else {
5285     cb              = (perl_callback_t *)vrna_alloc(sizeof(perl_callback_t));
5286     cb->cb          = NULL;
5287     cb->data        = NULL;
5288     cb->delete_data = NULL;
5289   }
5290   cb->data        = data;     /* remember data */
5291   cb->delete_data = PerlFunc; /* remember delete data function */
5292   /* increase reference counter */
5293   if(data && SvOK(data))
5294     SvREFCNT_inc(data);
5295   if(PerlFunc && SvOK(PerlFunc))
5296     SvREFCNT_inc(PerlFunc);
5297 
5298   vc->auxdata = (void *)cb;
5299   if(!vc->free_auxdata){
5300     vc->free_auxdata = &delete_perl_callback;
5301   }
5302 }
5303 
5304 static void
fc_add_perl_callback(vrna_fold_compound_t * vc,SV * PerlFunc)5305 fc_add_perl_callback( vrna_fold_compound_t *vc,
5306                       SV *PerlFunc){
5307 
5308   /* check whether PerlFunc actually is a reference to a Perl subroutine */
5309   if(SvTYPE(SvRV(PerlFunc)) != SVt_PVCV){
5310     fprintf(stderr, "Warning: invalid argument for fold_compound::add_callback, must be code reference\n");
5311     return;
5312   }
5313 
5314   /* try to dispose of previous callback */
5315   perl_callback_t * cb;
5316   if(vc->auxdata){
5317     cb = (perl_callback_t *)vc->auxdata;
5318     /* release previous callback */
5319     SvREFCNT_dec(cb->cb);
5320   } else {
5321     cb = (perl_callback_t *)vrna_alloc(sizeof(perl_callback_t));
5322     cb->data = NULL;
5323     cb->delete_data = NULL;
5324   }
5325   cb->cb = PerlFunc;      /* remember callback */
5326   SvREFCNT_inc(PerlFunc); /* Increase reference counter */
5327 
5328   /* finaly bind callback wrapper to fold compound */
5329   vc->auxdata = (void *)cb;
5330   if(!vc->free_auxdata){
5331     vc->free_auxdata = &delete_perl_callback;
5332   }
5333   vrna_fold_compound_add_callback(vc, &perl_wrap_fc_status_callback);
5334 }
5335 
5336 static void
perl_wrap_fc_status_callback(unsigned char status,void * data)5337 perl_wrap_fc_status_callback( unsigned char status,
5338                               void *data){
5339 
5340   SV *func;
5341   perl_callback_t *cb = (perl_callback_t *)data;
5342   func = cb->cb;
5343 
5344   if(func && SvOK(func)){
5345     dSP;
5346 
5347     SV *err_tmp;
5348 
5349     /* call Perl subroutine */
5350     ENTER;
5351     SAVETMPS;
5352     PUSHMARK(SP);
5353 
5354     SV* pSV = sv_newmortal();
5355     sv_setiv(pSV, (IV)status);  /* add status value to perl stack */
5356     XPUSHs(pSV);
5357     if(cb->data && SvOK(cb->data))          /* add data object to perl stack (if any) */
5358       XPUSHs(cb->data);
5359     PUTBACK;
5360 
5361     perl_call_sv(func, G_EVAL | G_DISCARD);
5362 
5363     SPAGAIN;
5364 
5365     err_tmp = ERRSV;
5366     if (SvTRUE(err_tmp)) {
5367       croak ("Some error occurred while executing fold compound callback - %s\n", SvPV_nolen(err_tmp));
5368     }
5369 
5370     FREETMPS;
5371     LEAVE;
5372   }
5373 
5374   return /*void*/;
5375 }
5376 
5377 
5378 
5379 
5380   typedef struct {
5381     SV  *cb_f;
5382     SV  *cb_bt;
5383     SV  *cb_exp_f;
5384     SV  *data;
5385     SV  *delete_data;
5386   } perl_sc_callback_t;
5387 
5388   static int
5389   perl_wrap_sc_f_callback(int           i,
5390                           int           j,
5391                           int           k,
5392                           int           l,
5393                           unsigned char d,
5394                           void          *data);
5395 
5396 
5397   static vrna_basepair_t *
5398   perl_wrap_sc_bt_callback(int            i,
5399                            int            j,
5400                            int            k,
5401                            int            l,
5402                            unsigned char  d,
5403                            void           *data);
5404 
5405 
5406   static FLT_OR_DBL
5407   perl_wrap_sc_exp_f_callback(int           i,
5408                               int           j,
5409                               int           k,
5410                               int           l,
5411                               unsigned char d,
5412                               void          *data);
5413 
5414 
5415   static perl_sc_callback_t *
get_new_cb(void)5416   get_new_cb(void)
5417   {
5418     perl_sc_callback_t *cb;
5419 
5420     cb              = (perl_sc_callback_t *)vrna_alloc(sizeof(perl_sc_callback_t));
5421     cb->cb_f        = NULL;
5422     cb->cb_bt       = NULL;
5423     cb->cb_exp_f    = NULL;
5424     cb->data        = NULL;
5425     cb->delete_data = NULL;
5426 
5427     return cb;
5428   }
5429 
5430 
5431   static void
clean_cb_data(perl_sc_callback_t * cb)5432   clean_cb_data(perl_sc_callback_t *cb)
5433   {
5434     if ((cb->data) &&
5435         (SvOK(cb->data))) {
5436       if ((cb->delete_data) &&
5437           (SvOK(cb->delete_data))) {
5438         dSP;
5439 
5440         SV *err_tmp;
5441 
5442         ENTER;
5443         SAVETMPS;
5444         PUSHMARK(SP);
5445         XPUSHs(cb->data);
5446         PUTBACK;
5447 
5448         perl_call_sv(cb->delete_data, G_EVAL | G_DISCARD);
5449 
5450         SPAGAIN;
5451 
5452         /* Check the eval first */
5453         err_tmp = ERRSV;
5454 
5455         if (SvTRUE(err_tmp))
5456           croak(
5457             "Some error occurred while executing generic soft constraint delete_data() callback - %s\n",
5458             SvPV_nolen(err_tmp));
5459 
5460         FREETMPS;
5461         LEAVE;
5462         SvREFCNT_dec(cb->delete_data);
5463       }
5464 
5465       SvREFCNT_dec(cb->data);
5466 
5467       cb->data        = NULL;
5468       cb->delete_data = NULL;
5469     }
5470   }
5471 
5472 
5473   static perl_sc_callback_t *
reuse_or_new_cb_f(vrna_sc_t * sc)5474   reuse_or_new_cb_f(vrna_sc_t *sc)
5475   {
5476     perl_sc_callback_t *cb;
5477 
5478     cb = (sc->data) ? (perl_sc_callback_t *)sc->data : get_new_cb();
5479 
5480     /* release previous callback */
5481     if ((cb->cb_f) &&
5482         (SvOK(cb->cb_f)))
5483       SvREFCNT_dec(cb->cb_f);
5484 
5485     return cb;
5486   }
5487 
5488 
5489   static perl_sc_callback_t *
reuse_or_new_cb_exp_f(vrna_sc_t * sc)5490   reuse_or_new_cb_exp_f(vrna_sc_t *sc)
5491   {
5492     perl_sc_callback_t *cb;
5493 
5494     cb = (sc->data) ? (perl_sc_callback_t *)sc->data : get_new_cb();
5495 
5496     /* release previous callback */
5497     if ((cb->cb_exp_f) &&
5498         (SvOK(cb->cb_exp_f)))
5499       SvREFCNT_dec(cb->cb_exp_f);
5500 
5501     return cb;
5502   }
5503 
5504 
5505   static perl_sc_callback_t *
reuse_or_new_cb_data(vrna_sc_t * sc)5506   reuse_or_new_cb_data(vrna_sc_t *sc)
5507   {
5508     perl_sc_callback_t *cb;
5509 
5510     cb = (sc->data) ? (perl_sc_callback_t *)sc->data : get_new_cb();
5511 
5512     clean_cb_data(cb);
5513 
5514     return cb;
5515   }
5516 
5517 
5518   static void
delete_perl_sc_callback(void * data)5519   delete_perl_sc_callback(void *data)
5520   {
5521     perl_sc_callback_t *cb = (perl_sc_callback_t *)data;
5522 
5523     /* first delete user data */
5524     clean_cb_data(cb);
5525 
5526     /* now dispose of the registered callbacks */
5527     if ((cb->cb_f) &&
5528         (SvOK(cb->cb_f)))
5529       SvREFCNT_dec(cb->cb_f);
5530 
5531     if ((cb->cb_bt) &&
5532         (SvOK(cb->cb_bt)))
5533       SvREFCNT_dec(cb->cb_bt);
5534 
5535     if ((cb->cb_exp_f) &&
5536         (SvOK(cb->cb_exp_f)))
5537       SvREFCNT_dec(cb->cb_exp_f);
5538 
5539     /* finally free pycallback */
5540     free(cb);
5541   }
5542 
5543 
5544   static int
sc_add_f_perl_callback(vrna_fold_compound_t * vc,SV * callback)5545   sc_add_f_perl_callback(vrna_fold_compound_t *vc,
5546                          SV                   *callback)
5547   {
5548     unsigned int        s;
5549 
5550     perl_sc_callback_t  *cb;
5551 
5552     switch (vc->type) {
5553       case VRNA_FC_TYPE_SINGLE:
5554         /* check whether PerlFunc actually is a reference to a Perl subroutine */
5555         if (SvTYPE(SvRV(callback)) != SVt_PVCV) {
5556           fprintf(stderr,
5557                   "Warning: invalid argument for fold_compound::sc_add_f, must be code reference\n");
5558           return 0;
5559         } else if (vrna_sc_add_f(vc, &perl_wrap_sc_f_callback)) {
5560           /*
5561            *  The above call returns 0 on any error.
5562            *  Otherwise it binds the wrapper function and
5563            *  prepares the soft constraint data structure
5564            *  inside vc
5565            */
5566 
5567           /* now bind the Perl function to the wrapper structure */
5568           cb = reuse_or_new_cb_f(vc->sc);
5569 
5570           SvREFCNT_inc(callback); /* Increase referenc counter */
5571           cb->cb_f = callback;    /* remember callback */
5572 
5573           /* finaly bind callback wrapper to fold compound */
5574           vc->sc->data = (void *)cb;
5575 
5576           vc->sc->free_data = &delete_perl_sc_callback;
5577 
5578           return 1;
5579         }
5580 
5581         break;
5582 
5583       case VRNA_FC_TYPE_COMPARATIVE:
5584         /* Find out if the function argument actually is defined and an array reference */
5585         if ((SvOK(callback)) &&
5586             (SvROK(callback)) &&
5587             (SvTYPE(SvRV(callback)) == SVt_PVAV)) {
5588           if ((av_top_index((AV *)SvRV(callback)) + 1) < (int)vc->n_seq) {
5589             fprintf(stderr,
5590                     "Warning: invalid argument for fold_compound::sc_add_f: Too few code references in array\n");
5591             return 0;
5592           }
5593 
5594           if (!vc->scs)
5595             vrna_sc_init(vc);
5596 
5597           for (s = 0; s < vc->n_seq; s++) {
5598             /* first, dispose of previous callback if necessary */
5599             cb = reuse_or_new_cb_f(vc->scs[s]);
5600 
5601             /* try to retrieve one subroutine at a time */
5602             SV **f = av_fetch((AV *)SvRV(callback),
5603                               (SSize_t)s,
5604                               (I32)0);
5605 
5606             /* check if refrence retrieved is defined */
5607             if ((f) &&
5608                 (SvOK(*f))) {
5609               /* warn if not a code refernce */
5610               if ((!SvROK(*f)) ||
5611                   (SvTYPE(SvRV(*f)) != SVt_PVCV)) {
5612                 fprintf(stderr,
5613                         "Warning: invalid argument for fold_compound::sc_add_f, Not a code reference at %d\n",
5614                         s);
5615               } else {
5616                 /* actually prepare and bind callback wrapper */
5617                 SvREFCNT_inc(*f); /* Increase reference counter */
5618                 cb->cb_f = *f;    /* remember callback */
5619               }
5620             }
5621 
5622             /* finaly bind callback wrapper to fold compound */
5623             vc->scs[s]->f         = &perl_wrap_sc_f_callback;
5624             vc->scs[s]->data      = (void *)cb;
5625             vc->scs[s]->free_data = &delete_perl_sc_callback;
5626           }
5627 
5628           return 1;
5629         } else {
5630           fprintf(stderr,
5631                   "Warning: invalid argument for fold_compound::sc_add_f, must be reference to array of code references\n");
5632         }
5633 
5634         break;
5635     }
5636 
5637     return 0;
5638   }
5639 
5640 
5641   static int
sc_add_exp_f_perl_callback(vrna_fold_compound_t * vc,SV * callback)5642   sc_add_exp_f_perl_callback(vrna_fold_compound_t *vc,
5643                              SV                   *callback)
5644   {
5645     unsigned int        s;
5646     perl_sc_callback_t  *cb;
5647 
5648     switch (vc->type) {
5649       case VRNA_FC_TYPE_SINGLE:
5650         /* check whether PerlFunc actually is a reference to a Perl subroutine */
5651         if (SvTYPE(SvRV(callback)) != SVt_PVCV) {
5652           fprintf(stderr,
5653                   "Warning: invalid argument for fold_compound::sc_add_exp_f, must be code reference\n");
5654           return 0;
5655         } else if (vrna_sc_add_exp_f(vc, &perl_wrap_sc_exp_f_callback)) {
5656           /*
5657            *  The above call returns 0 on any error.
5658            *  Otherwise it binds the wrapper function and
5659            *  prepares the soft constraint data structure
5660            *  inside vc
5661            */
5662 
5663           /* now bind the python function to the wrapper structure */
5664           cb = reuse_or_new_cb_exp_f(vc->sc);
5665 
5666           SvREFCNT_inc(callback);   /* Increase referenc counter */
5667           cb->cb_exp_f = callback;  /* remember callback */
5668 
5669           /* finaly bind callback wrapper to fold compound */
5670           vc->sc->data = (void *)cb;
5671 
5672           vc->sc->free_data = &delete_perl_sc_callback;
5673 
5674           return 1;
5675         }
5676 
5677         break;
5678 
5679       case VRNA_FC_TYPE_COMPARATIVE:
5680         /* Find out if the function argument actually is defined and an array reference */
5681         if ((SvOK(callback)) &&
5682             (SvROK(callback)) &&
5683             (SvTYPE(SvRV(callback)) == SVt_PVAV)) {
5684           if ((av_top_index((AV *)SvRV(callback)) + 1) < (int)vc->n_seq) {
5685             fprintf(stderr,
5686                     "Warning: invalid argument for fold_compound::sc_add_exp_f: Too few code references in array\n");
5687             return 0;
5688           }
5689 
5690           if (!vc->scs)
5691             vrna_sc_init(vc);
5692 
5693           for (s = 0; s < vc->n_seq; s++) {
5694             /* first, dispose of previous callback if necessary */
5695             cb = reuse_or_new_cb_exp_f(vc->scs[s]);
5696 
5697             /* try to retrieve one subroutine at a time */
5698             SV **f = av_fetch((AV *)SvRV(callback),
5699                               (SSize_t)s,
5700                               (I32)0);
5701 
5702             /* check if refrence retrieved is defined */
5703             if ((f) &&
5704                 (SvOK(*f))) {
5705               /* warn if not a code refernce */
5706               if ((!SvROK(*f)) ||
5707                   (SvTYPE(SvRV(*f)) != SVt_PVCV)) {
5708                 fprintf(stderr,
5709                         "Warning: invalid argument for fold_compound::sc_add_exp_f, Not a code reference at %d\n",
5710                         s);
5711               } else {
5712                 /* actually prepare and bind callback wrapper */
5713                 SvREFCNT_inc(*f);   /* Increase reference counter */
5714                 cb->cb_exp_f = *f;  /* remember callback */
5715               }
5716             }
5717 
5718             /* finaly bind callback wrapper to fold compound */
5719             vc->scs[s]->exp_f     = &perl_wrap_sc_exp_f_callback;
5720             vc->scs[s]->data      = (void *)cb;
5721             vc->scs[s]->free_data = &delete_perl_sc_callback;
5722           }
5723 
5724           return 1;
5725         } else {
5726           fprintf(stderr,
5727                   "Warning: invalid argument for fold_compound::sc_add_exp_f, must be reference to array of code references\n");
5728         }
5729 
5730         break;
5731     }
5732 
5733     return 0;
5734   }
5735 
5736 
5737   static int
sc_add_bt_perl_callback(vrna_fold_compound_t * vc,SV * PerlFunc)5738   sc_add_bt_perl_callback(vrna_fold_compound_t  *vc,
5739                           SV                    *PerlFunc)
5740   {
5741     /* check whether PerlFunc actually is a reference to a Perl subroutine */
5742     if (SvTYPE(SvRV(PerlFunc)) != SVt_PVCV) {
5743       fprintf(stderr,
5744               "Warning: invalid argument for fold_compound::sc_add_bt, must be code reference\n");
5745       return 0;
5746     }
5747 
5748     /* try to dispose of previous callback */
5749     perl_sc_callback_t *cb;
5750 
5751     if (vrna_sc_add_bt(vc, &perl_wrap_sc_bt_callback)) {
5752       /* now bind the Perl function to the wrapper structure */
5753       if (vc->sc->data) {
5754         cb = (perl_sc_callback_t *)vc->sc->data;
5755         /* release previous callback */
5756         if ((cb->cb_bt) &&
5757             (SvOK(cb->cb_bt)))
5758           SvREFCNT_dec(cb->cb_bt);
5759       } else {
5760         cb = get_new_cb();
5761       }
5762 
5763       cb->cb_bt = PerlFunc;   /* remember callback */
5764       SvREFCNT_inc(PerlFunc); /* Increase referenc counter */
5765 
5766       /* finaly bind callback wrapper to fold compound */
5767       vc->sc->data      = (void *)cb;
5768       vc->sc->free_data = &delete_perl_sc_callback;
5769 
5770       return 1;
5771     }
5772 
5773     return 0;
5774   }
5775 
5776 
5777   static int
sc_add_perl_data(vrna_fold_compound_t * vc,SV * data,SV * PerlFunc)5778   sc_add_perl_data(vrna_fold_compound_t *vc,
5779                    SV                   *data,
5780                    SV                   *PerlFunc)
5781   {
5782     unsigned int        s;
5783     perl_sc_callback_t  *cb;
5784 
5785     switch (vc->type) {
5786       case VRNA_FC_TYPE_SINGLE:
5787         /* check whether data is defined */
5788         if (!SvOK(data)) {
5789           fprintf(stderr, "Warning: argument 1 for fold_compound::sc_add_data, must be defined\n");
5790           return 0;
5791         }
5792 
5793         /* check whether free-callback is defined and callable */
5794         if ((PerlFunc) &&
5795             (SvOK(PerlFunc))) {
5796           if (SvTYPE(SvRV(PerlFunc)) != SVt_PVCV) {
5797             fprintf(stderr,
5798                     "Warning: argument 2 for fold_compound::sc_add_data, must be undef or code reference\n");
5799             return 0;
5800           }
5801         }
5802 
5803         /* create soft constraints data structure */
5804         if (!vc->sc)
5805           vrna_sc_init(vc);
5806 
5807         /* try to dispose of previous data */
5808         cb = reuse_or_new_cb_data(vc->sc);
5809 
5810         cb->data        = data;     /* remember data */
5811         cb->delete_data = PerlFunc; /* remember delete data function */
5812         /* increase reference counter */
5813         if ((data) &&
5814             (SvOK(data)))
5815           SvREFCNT_inc(data);
5816 
5817         if ((PerlFunc) &&
5818             (SvOK(PerlFunc)))
5819           SvREFCNT_inc(PerlFunc);
5820 
5821         vc->sc->data      = (void *)cb;
5822         vc->sc->free_data = &delete_perl_sc_callback;
5823 
5824         return 1;
5825 
5826         break;
5827 
5828       case VRNA_FC_TYPE_COMPARATIVE:
5829         int data_good, free_data_good;
5830 
5831         data_good = free_data_good = 0;
5832 
5833         /* Find out if the data argument actually is defined and an array reference */
5834         if ((SvOK(data)) &&
5835             (SvROK(data)) &&
5836             (SvTYPE(SvRV(data)) == SVt_PVAV)) {
5837           if ((av_top_index((AV *)SvRV(data)) + 1) < (int)vc->n_seq) {
5838             fprintf(stderr,
5839                     "Warning: invalid argument for fold_compound::sc_add_data: Too few code references in array\n");
5840             return 0;
5841           }
5842 
5843           data_good = 1;
5844         }
5845 
5846         if ((SvOK(PerlFunc)) &&
5847             (SvROK(PerlFunc)) &&
5848             (SvTYPE(SvRV(PerlFunc)) == SVt_PVAV))
5849           if ((av_top_index((AV *)SvRV(PerlFunc)) + 1) >= (int)vc->n_seq)
5850             free_data_good = 1;
5851 
5852         if (data_good) {
5853           if (!vc->scs)
5854             vrna_sc_init(vc);
5855 
5856           for (s = 0; s < vc->n_seq; s++) {
5857             /* first, dispose of previous callback if necessary */
5858             cb = reuse_or_new_cb_data(vc->scs[s]);
5859 
5860             /* try to retrieve one subroutine at a time */
5861             SV **d = av_fetch((AV *)SvRV(data),
5862                               (SSize_t)s,
5863                               (I32)0);
5864 
5865             /* check if refrence retrieved is defined */
5866             if ((d) &&
5867                 (SvOK(*d))) {
5868               /* actually prepare and bind callback wrapper */
5869               SvREFCNT_inc(*d); /* Increase reference counter */
5870               cb->data = *d;    /* remember data */
5871             }
5872 
5873             if (free_data_good) {
5874               SV **f = av_fetch((AV *)SvRV(PerlFunc),
5875                                 (SSize_t)s,
5876                                 (I32)0);
5877 
5878               if ((f) &&
5879                   (SvOK(*f))) {
5880                 /* warn if not a code refernce */
5881                 if ((!SvROK(*f)) ||
5882                     (SvTYPE(SvRV(*f)) != SVt_PVCV)) {
5883                   fprintf(stderr,
5884                           "Warning: invalid argument for fold_compound::sc_add_data, Not a code reference at %d\n",
5885                           s);
5886                 } else {
5887                   /* actually prepare and bind callback wrapper */
5888                   SvREFCNT_inc(*f);     /* Increase reference counter */
5889                   cb->delete_data = *f; /* remember callback */
5890                 }
5891               }
5892             }
5893 
5894             /* finaly bind callback wrapper to fold compound */
5895             vc->scs[s]->data      = (void *)cb;
5896             vc->scs[s]->free_data = &delete_perl_sc_callback;
5897           }
5898 
5899           return 1;
5900         }
5901 
5902         break;
5903     }
5904 
5905     return 0;
5906   }
5907 
5908 
5909   static int
perl_wrap_sc_f_callback(int i,int j,int k,int l,unsigned char d,void * data)5910   perl_wrap_sc_f_callback(int           i,
5911                           int           j,
5912                           int           k,
5913                           int           l,
5914                           unsigned char d,
5915                           void          *data)
5916   {
5917     int                 ret, count;
5918     SV                  *func;
5919 
5920     perl_sc_callback_t  *cb = (perl_sc_callback_t *)data;
5921 
5922     func = cb->cb_f;
5923 
5924     ret = 0;
5925 
5926     if (func && SvOK(func)) {
5927       dSP;
5928 
5929       SV  *err_tmp;
5930       I32 ax; /* expected by ST(x) macro */
5931 
5932       /* call Perl subroutine */
5933       ENTER;
5934       SAVETMPS;
5935       PUSHMARK(SP);
5936 
5937       SV  *pSVi = sv_newmortal();
5938       sv_setiv(pSVi, (IV)i);
5939       XPUSHs(pSVi);
5940       SV  *pSVj = sv_newmortal();
5941       sv_setiv(pSVj, (IV)j);
5942       XPUSHs(pSVj);
5943       SV  *pSVk = sv_newmortal();
5944       sv_setiv(pSVk, (IV)k);
5945       XPUSHs(pSVk);
5946       SV  *pSVl = sv_newmortal();
5947       sv_setiv(pSVl, (IV)l);
5948       XPUSHs(pSVl);
5949       SV  *pSVd = sv_newmortal();
5950       sv_setiv(pSVd, (IV)d);
5951       XPUSHs(pSVd);
5952 
5953       if (cb->data && SvOK(cb->data))        /* add data object to perl stack (if any) */
5954         XPUSHs(cb->data);
5955 
5956       PUTBACK;
5957 
5958       count = perl_call_sv(func, G_EVAL | G_ARRAY);
5959 
5960       SPAGAIN; /* refresh local copy of the perl stack pointer */
5961 
5962       /* prepare the stack such that we can use the ST(x) macro */
5963       SP  -= count;
5964       ax  = (SP - PL_stack_base) + 1;
5965 
5966       /* Check the eval first */
5967       err_tmp = ERRSV;
5968       if (SvTRUE(err_tmp)) {
5969         croak("Some error occurred while executing generic soft constraint callback - %s\n",
5970               SvPV_nolen(err_tmp));
5971         POPs;
5972       } else {
5973         /* we expect a single value to be returned */
5974         if (count != 1)         /* more or less than 1 return value */
5975           croak("Generic soft constraint callback must return exactly 1 item\n");
5976         else if (!SvOK(ST(0)))  /* return value is undefined */
5977           croak("Generic soft constraint callback must not return undef\n");
5978         else if (!SvIOK(ST(0))) /* return value is not an integer scalar */
5979           croak("Generic soft constraint callback must return pseudo energy value\n");
5980         else
5981           ret = SvIV(ST(0));
5982       }
5983 
5984       PUTBACK;
5985       FREETMPS;
5986       LEAVE;
5987     }
5988 
5989     return ret;
5990   }
5991 
5992 
5993   static FLT_OR_DBL
perl_wrap_sc_exp_f_callback(int i,int j,int k,int l,unsigned char d,void * data)5994   perl_wrap_sc_exp_f_callback(int           i,
5995                               int           j,
5996                               int           k,
5997                               int           l,
5998                               unsigned char d,
5999                               void          *data)
6000   {
6001     int                 count;
6002     FLT_OR_DBL          ret;
6003     SV                  *func;
6004 
6005     perl_sc_callback_t  *cb = (perl_sc_callback_t *)data;
6006 
6007     func  = cb->cb_f;
6008     ret   = 1.0;
6009 
6010     if (SvOK(func)) {
6011       dSP;
6012 
6013       SV  *err_tmp;
6014       I32 ax; /* expected by ST(x) macro */
6015 
6016       /* call Perl subroutine */
6017       ENTER;
6018       SAVETMPS;
6019       PUSHMARK(SP);
6020 
6021       SV  *pSVi = sv_newmortal();
6022       sv_setiv(pSVi, (IV)i);
6023       XPUSHs(pSVi);
6024       SV  *pSVj = sv_newmortal();
6025       sv_setiv(pSVj, (IV)j);
6026       XPUSHs(pSVj);
6027       SV  *pSVk = sv_newmortal();
6028       sv_setiv(pSVk, (IV)k);
6029       XPUSHs(pSVk);
6030       SV  *pSVl = sv_newmortal();
6031       sv_setiv(pSVl, (IV)l);
6032       XPUSHs(pSVl);
6033       SV  *pSVd = sv_newmortal();
6034       sv_setiv(pSVd, (IV)d);
6035       XPUSHs(pSVd);
6036 
6037       if (cb->data && SvOK(cb->data))        /* add data object to perl stack (if any) */
6038         XPUSHs(cb->data);
6039 
6040       PUTBACK;
6041 
6042       count = perl_call_sv(func, G_EVAL | G_ARRAY);
6043 
6044       SPAGAIN; /* refresh local copy of the perl stack pointer */
6045 
6046       /* prepare the stack such that we can use the ST(x) macro */
6047       SP  -= count;
6048       ax  = (SP - PL_stack_base) + 1;
6049 
6050       /* Check the eval first */
6051       err_tmp = ERRSV;
6052       if (SvTRUE(err_tmp)) {
6053         croak(
6054           "Some error occurred while executing generic soft constraint callback (partition function) - %s\n",
6055           SvPV_nolen(err_tmp));
6056         POPs;
6057       } else {
6058         /* we expect a single value to be returned */
6059         if (count != 1)         /* more or less than 1 return value */
6060           croak("Generic soft constraint callback (partition function) must return exactly 1 item\n");
6061         else if (!SvOK(ST(0)))  /* return value is undefined */
6062           croak("Generic soft constraint callback (partition function) must not return undef\n");
6063         else if (!SvIOK(ST(0))) /* return value is not an integer scalar */
6064           croak(
6065             "Generic soft constraint callback (partition function) must return Boltzmann weighted pseudo energy value\n");
6066         else
6067           ret = SvIV(ST(0));
6068       }
6069 
6070       PUTBACK;
6071       FREETMPS;
6072       LEAVE;
6073     }
6074 
6075     return ret;
6076   }
6077 
6078 
6079   static vrna_basepair_t *
perl_wrap_sc_bt_callback(int i,int j,int k,int l,unsigned char d,void * data)6080   perl_wrap_sc_bt_callback(int            i,
6081                            int            j,
6082                            int            k,
6083                            int            l,
6084                            unsigned char  d,
6085                            void           *data)
6086   {
6087     int                 c, count, len, num_pairs;
6088     SV                  *func, *bp;
6089     perl_sc_callback_t  *cb = (perl_sc_callback_t *)data;
6090     vrna_basepair_t     *ptr, *pairs = NULL;
6091 
6092     func = cb->cb_bt;
6093 
6094     /* compose function call */
6095     if (SvOK(func)) {
6096       dSP;
6097 
6098       SV *err_tmp;
6099 
6100       ENTER;
6101       SAVETMPS;
6102       PUSHMARK(SP);
6103 
6104       SV  *pSVi = sv_newmortal();
6105       sv_setiv(pSVi, (IV)i);
6106       XPUSHs(pSVi);
6107       SV  *pSVj = sv_newmortal();
6108       sv_setiv(pSVj, (IV)j);
6109       XPUSHs(pSVj);
6110       SV  *pSVk = sv_newmortal();
6111       sv_setiv(pSVk, (IV)k);
6112       XPUSHs(pSVk);
6113       SV  *pSVl = sv_newmortal();
6114       sv_setiv(pSVl, (IV)l);
6115       XPUSHs(pSVl);
6116       SV  *pSVd = sv_newmortal();
6117       sv_setiv(pSVd, (IV)d);
6118       XPUSHs(pSVd);
6119 
6120       if (cb->data && SvOK(cb->data))        /* add data object to perl stack (if any) */
6121         XPUSHs(cb->data);
6122 
6123       PUTBACK;
6124 
6125       count = perl_call_sv(func, G_EVAL | G_ARRAY);
6126 
6127       SPAGAIN;
6128 
6129       /* Check the eval first */
6130       err_tmp = ERRSV;
6131       if (SvTRUE(err_tmp)) {
6132         croak(
6133           "Some error occurred while executing generic soft constraint backtrack callback - %s\n",
6134           SvPV_nolen(err_tmp));
6135         POPs;
6136         PUTBACK;
6137         FREETMPS;
6138         LEAVE;
6139         return NULL;
6140       } else if (count == 0) {
6141         /* no additional base pairs */
6142         PUTBACK;
6143         FREETMPS;
6144         LEAVE;
6145         return NULL;
6146       } else {
6147         /* when we get here, we should have got an array of something */
6148         len       = 10;
6149         num_pairs = 0;
6150         pairs     = (vrna_basepair_t *)vrna_alloc(sizeof(vrna_basepair_t) * len);
6151         /* result should be list of pairs */
6152         for (c = 0; c < count; c++) {
6153           /* pop SV off the stack */
6154           bp = POPs;
6155           /* if list entry is defined and a reference */
6156           if (SvOK(bp) && SvROK(bp)) {
6157             /* maybe the user was so kind to create a list of vrna_basepair_t? */
6158             if (SWIG_ConvertPtr(bp, (void **)&ptr, SWIGTYPE_p_vrna_basepair_t,
6159                                 SWIG_POINTER_EXCEPTION) == 0) {
6160               pairs[num_pairs] = *ptr;
6161               num_pairs++;
6162             } else if (SvTYPE(SvRV(bp)) == SVt_PVHV) {
6163               /* check whether we've got a reference to a hash */
6164               HV *pair = (HV *)SvRV(bp);
6165               /* check whether the hash has 'i' and 'j' keys */
6166               if (hv_exists(pair, "i", 1) && hv_exists(pair, "j", 1)) {
6167                 pairs[num_pairs].i  = (int)SvIV(*hv_fetch(pair, "i", 1, 0));
6168                 pairs[num_pairs].j  = (int)SvIV(*hv_fetch(pair, "j", 1, 0));
6169                 num_pairs++;
6170               }
6171             } else if (SvTYPE(SvRV(bp)) == SVt_PVAV) {
6172               /* check whether we've got a refrence to an array */
6173               AV *pair = (AV *)SvRV(bp);
6174               if (av_len(pair) == 1) {
6175                 /* size of array must be 2, av_len() returns highest index */
6176                 SV  **pair_i  = av_fetch(pair, 0, 0);
6177                 SV  **pair_j  = av_fetch(pair, 1, 0);
6178                 if (pair_i && pair_j) {
6179                   pairs[num_pairs].i  = (int)SvIV(*pair_i);
6180                   pairs[num_pairs].j  = (int)SvIV(*pair_j);
6181                   num_pairs++;
6182                 }
6183               }
6184             } else {
6185               continue;
6186             }
6187           }
6188 
6189           /* increase length if necessary */
6190           if (num_pairs == len) {
6191             len   = (int)(1.2 * len);
6192             pairs = (vrna_basepair_t *)vrna_realloc(pairs, sizeof(vrna_basepair_t) * len);
6193           }
6194         }
6195       }
6196 
6197       /* put end marker in list */
6198       pairs[num_pairs].i  = pairs[num_pairs].j = 0;
6199       pairs               =
6200         (vrna_basepair_t *)vrna_realloc(pairs, sizeof(vrna_basepair_t) * (num_pairs + 1));
6201 
6202       PUTBACK;
6203       FREETMPS;
6204       LEAVE;
6205     }
6206 
6207     return pairs;
6208   }
6209 
6210 
6211 
6212 
6213 
6214 typedef struct {
6215   SV  *prod_rule;
6216   SV  *exp_prod_rule;
6217   SV  *energy;
6218   SV  *exp_energy;
6219   SV  *data;
6220   SV  *delete_data;
6221   SV  *prob_add;
6222   SV  *prob_get;
6223 } perl5_ud_callback_t;
6224 
6225 static vrna_callback_ud_production      perl5_wrap_ud_prod_rule;
6226 static vrna_callback_ud_exp_production  perl5_wrap_ud_exp_prod_rule;
6227 static vrna_callback_ud_energy          perl5_wrap_ud_energy;
6228 static vrna_callback_ud_exp_energy      perl5_wrap_ud_exp_energy;
6229 static vrna_callback_ud_probs_add       perl5_wrap_ud_prob_add;
6230 static vrna_callback_ud_probs_get       perl5_wrap_ud_prob_get;
6231 
6232 static perl5_ud_callback_t *
new_perl_ud_cb(void)6233 new_perl_ud_cb(void){
6234 
6235   perl5_ud_callback_t *cb = (perl5_ud_callback_t *)vrna_alloc(sizeof(perl5_ud_callback_t));
6236 
6237   cb->prod_rule     = NULL;
6238   cb->exp_prod_rule = NULL;
6239   cb->energy        = NULL;
6240   cb->exp_energy    = NULL;
6241   cb->data          = NULL;
6242   cb->delete_data   = NULL;
6243   cb->prob_add      = NULL;
6244   cb->prob_get      = NULL;
6245 
6246   return cb;
6247 }
6248 
6249 
6250 
6251 static void
delete_perl_ud_callback(void * data)6252 delete_perl_ud_callback(void * data){
6253 
6254   perl5_ud_callback_t *cb = (perl5_ud_callback_t *)data;
6255   /* first delete user data */
6256   if(cb->data && SvOK(cb->data)){
6257     if(cb->delete_data && SvOK(cb->delete_data)){
6258       dSP;
6259 
6260       SV *err_tmp;
6261 
6262       ENTER;
6263       SAVETMPS;
6264       PUSHMARK(SP);
6265 
6266       XPUSHs(cb->data);
6267       PUTBACK;
6268 
6269       perl_call_sv(cb->delete_data, G_EVAL | G_DISCARD);
6270 
6271       SPAGAIN;
6272 
6273       /* Check the eval first */
6274       err_tmp = ERRSV;
6275       if (SvTRUE(err_tmp)) {
6276         croak ("Some error occurred while executing unstructured domains delete_data() callback - %s\n", SvPV_nolen(err_tmp));
6277       }
6278 
6279       FREETMPS;
6280       LEAVE;
6281       SvREFCNT_dec(cb->delete_data);
6282     }
6283     SvREFCNT_dec(cb->data);
6284   }
6285 
6286   /* now dispose of the registered callbacks */
6287   if(cb->prod_rule && SvOK(cb->prod_rule))
6288     SvREFCNT_dec(cb->prod_rule);
6289   if(cb->exp_prod_rule && SvOK(cb->exp_prod_rule))
6290     SvREFCNT_dec(cb->exp_prod_rule);
6291   if(cb->energy && SvOK(cb->energy))
6292     SvREFCNT_dec(cb->energy);
6293   if(cb->exp_energy && SvOK(cb->exp_energy))
6294     SvREFCNT_dec(cb->exp_energy);
6295   if(cb->prob_add && SvOK(cb->prob_add))
6296     SvREFCNT_dec(cb->prob_add);
6297   if(cb->prob_get && SvOK(cb->prob_get))
6298     SvREFCNT_dec(cb->prob_get);
6299 
6300   /* finally free callback */
6301   free(cb);
6302 }
6303 
6304 
6305 static void
ud_set_data(vrna_fold_compound_t * vc,SV * data,SV * PerlFunc)6306 ud_set_data(vrna_fold_compound_t *vc,
6307             SV *data,
6308             SV *PerlFunc){
6309 
6310   if(!SvOK(data)){
6311     fprintf(stderr, "Warning: argument 1 for fold_compound::ud_set_data must be defined\n");
6312     return;
6313   }
6314 
6315   /* check whether PerlFunc actually is a reference to a Perl subroutine */
6316   if(PerlFunc && SvOK(PerlFunc)){
6317     if(SvTYPE(SvRV(PerlFunc)) != SVt_PVCV){
6318       fprintf(stderr, "Warning: argument 2 for fold_compound::ud_set_data must be undef or code reference\n");
6319       return;
6320     }
6321   }
6322 
6323   perl5_ud_callback_t * cb;
6324   /* try to dispose of previous data */
6325   if(vc->domains_up && vc->domains_up->data){
6326     cb = (perl5_ud_callback_t *)vc->domains_up->data;
6327     if(cb->data && SvOK(cb->data)){
6328       if(cb->delete_data && SvOK(cb->delete_data)){
6329         dSP;
6330 
6331         SV *err_tmp;
6332 
6333         /* call Perl subroutine */
6334         ENTER;
6335         SAVETMPS;
6336         PUSHMARK(SP);
6337 
6338         XPUSHs(cb->data);
6339         PUTBACK;
6340 
6341         perl_call_sv(cb->delete_data, G_EVAL | G_DISCARD);
6342 
6343         SPAGAIN;
6344 
6345         /* Check the eval first */
6346         err_tmp = ERRSV;
6347         if (SvTRUE(err_tmp)) {
6348           croak ("Some error occurred while executing unstructured domains delete_data() callback - %s\n", SvPV_nolen(err_tmp));
6349         }
6350 
6351         FREETMPS;
6352         LEAVE;
6353         SvREFCNT_dec(cb->delete_data);
6354       }
6355       SvREFCNT_dec(cb->data);
6356     }
6357   } else {
6358     cb  = new_perl_ud_cb();
6359   }
6360   cb->data        = data;     /* remember data */
6361   cb->delete_data = PerlFunc; /* remember delete data function */
6362   /* increase reference counter */
6363   if(data && SvOK(data))
6364     SvREFCNT_inc(data);
6365   if(PerlFunc && SvOK(PerlFunc))
6366     SvREFCNT_inc(PerlFunc);
6367 
6368   /* bind callback wrapper to fold compound */
6369   vrna_ud_set_data(vc, (void *)cb, &delete_perl_ud_callback);
6370 }
6371 
6372 static void
ud_set_prod_rule_cb(vrna_fold_compound_t * vc,SV * prod_cb,SV * eval_cb)6373 ud_set_prod_rule_cb(vrna_fold_compound_t *vc,
6374                     SV *prod_cb,
6375                     SV *eval_cb){
6376 
6377   /* check whether prod_cb and eval_cb are references to Perl subroutines */
6378   if(SvTYPE(SvRV(prod_cb)) != SVt_PVCV){
6379     fprintf(stderr, "Warning: invalid argument 1 for fold_compound::ud_set_prod_rule_cb must be code reference\n");
6380     return;
6381   }
6382   if(SvTYPE(SvRV(eval_cb)) != SVt_PVCV){
6383     fprintf(stderr, "Warning: invalid argument 2 for fold_compound::ud_set_prod_rule_cb must be code reference\n");
6384     return;
6385   }
6386 
6387   /* try to dispose of previous callback */
6388   perl5_ud_callback_t * cb;
6389 
6390   /* now bind the python function to the wrapper structure */
6391   if(vc->domains_up && vc->domains_up->data){
6392     cb = (perl5_ud_callback_t *)vc->domains_up->data;
6393     /* release previous callbacks */
6394     if(cb->prod_rule && SvOK(cb->prod_rule))
6395       SvREFCNT_dec(cb->prod_rule);
6396     if(cb->energy && SvOK(cb->energy))
6397       SvREFCNT_dec(cb->energy);
6398   } else {
6399     cb = new_perl_ud_cb();
6400     vrna_ud_set_data(vc, (void *)cb, &delete_perl_ud_callback);
6401   }
6402   cb->prod_rule = prod_cb;      /* remember callback */
6403   cb->energy    = eval_cb;      /* remember callback */
6404   SvREFCNT_inc(prod_cb);   /* Increase reference counter */
6405   SvREFCNT_inc(eval_cb);   /* Increase reference counter */
6406 
6407   vrna_ud_set_prod_rule_cb(vc, &perl5_wrap_ud_prod_rule, &perl5_wrap_ud_energy);
6408 }
6409 
6410 static void
ud_set_exp_prod_rule_cb(vrna_fold_compound_t * vc,SV * prod_cb,SV * eval_cb)6411 ud_set_exp_prod_rule_cb(vrna_fold_compound_t *vc,
6412                         SV *prod_cb,
6413                         SV *eval_cb){
6414 
6415   /* check whether prod_cb and eval_cb are references to Perl subroutines */
6416   if(SvTYPE(SvRV(prod_cb)) != SVt_PVCV){
6417     fprintf(stderr, "Warning: invalid argument 1 for fold_compound::ud_set_exp_prod_rule_cb must be code reference\n");
6418     return;
6419   }
6420   if(SvTYPE(SvRV(eval_cb)) != SVt_PVCV){
6421     fprintf(stderr, "Warning: invalid argument 2 for fold_compound::ud_set_exp_prod_rule_cb must be code reference\n");
6422     return;
6423   }
6424 
6425   /* try to dispose of previous callback */
6426   perl5_ud_callback_t * cb;
6427 
6428   /* now bind the python function to the wrapper structure */
6429   if(vc->domains_up && vc->domains_up->data){
6430     cb = (perl5_ud_callback_t *)vc->domains_up->data;
6431     /* release previous callbacks */
6432     if(cb->exp_prod_rule && SvOK(cb->exp_prod_rule))
6433       SvREFCNT_dec(cb->exp_prod_rule);
6434     if(cb->exp_energy && SvOK(cb->exp_energy))
6435       SvREFCNT_dec(cb->exp_energy);
6436   } else {
6437     cb = new_perl_ud_cb();
6438     vrna_ud_set_data(vc, (void *)cb, &delete_perl_ud_callback);
6439   }
6440   cb->exp_prod_rule = prod_cb;      /* remember callback */
6441   cb->exp_energy    = eval_cb;      /* remember callback */
6442   SvREFCNT_inc(prod_cb);   /* Increase reference counter */
6443   SvREFCNT_inc(eval_cb);   /* Increase reference counter */
6444 
6445   vrna_ud_set_exp_prod_rule_cb(vc, &perl5_wrap_ud_exp_prod_rule, &perl5_wrap_ud_exp_energy);
6446 }
6447 
6448 static void
ud_set_prob_cb(vrna_fold_compound_t * vc,SV * setter,SV * getter)6449 ud_set_prob_cb( vrna_fold_compound_t *vc,
6450                 SV *setter,
6451                 SV *getter){
6452 
6453   /* check whether prod_cb and eval_cb are references to Perl subroutines */
6454   if(SvTYPE(SvRV(setter)) != SVt_PVCV){
6455     fprintf(stderr, "Warning: invalid argument 1 for fold_compound::ud_set_prob_cb must be code reference\n");
6456     return;
6457   }
6458   if(SvTYPE(SvRV(getter)) != SVt_PVCV){
6459     fprintf(stderr, "Warning: invalid argument 2 for fold_compound::ud_set_prob_cb must be code reference\n");
6460     return;
6461   }
6462 
6463   /* try to dispose of previous callback */
6464   perl5_ud_callback_t * cb;
6465 
6466   /* now bind the python function to the wrapper structure */
6467   if(vc->domains_up && vc->domains_up->data){
6468     cb = (perl5_ud_callback_t *)vc->domains_up->data;
6469     /* release previous callbacks */
6470     if(cb->prob_add && SvOK(cb->prob_add))
6471       SvREFCNT_dec(cb->prob_add);
6472     if(cb->prob_get && SvOK(cb->prob_get))
6473       SvREFCNT_dec(cb->prob_get);
6474   } else {
6475     cb = new_perl_ud_cb();
6476     vrna_ud_set_data(vc, (void *)cb, &delete_perl_ud_callback);
6477   }
6478   cb->prob_add = setter;  /* remember callback */
6479   cb->prob_get = getter;  /* remember callback */
6480   SvREFCNT_inc(setter);   /* Increase reference counter */
6481   SvREFCNT_inc(getter);   /* Increase reference counter */
6482 
6483   vrna_ud_set_prob_cb(vc, &perl5_wrap_ud_prob_add, &perl5_wrap_ud_prob_get);
6484 }
6485 
6486 
6487 static void
perl5_wrap_ud_prod_rule(vrna_fold_compound_t * vc,void * data)6488 perl5_wrap_ud_prod_rule(vrna_fold_compound_t *vc,
6489                         void *data){
6490 
6491   SV *func;
6492   perl5_ud_callback_t *cb = (perl5_ud_callback_t *)data;
6493   func = cb->prod_rule;
6494 
6495   if(func && SvOK(func)){
6496     dSP;
6497 
6498     SV *err_tmp;
6499 
6500     /* call Perl subroutine */
6501     ENTER;
6502     SAVETMPS;
6503     PUSHMARK(SP);
6504 
6505     if(cb->data && SvOK(cb->data))  /* add data object to perl stack (if any) */
6506       XPUSHs(cb->data);
6507     PUTBACK;
6508 
6509     perl_call_sv(func, G_EVAL | G_DISCARD);
6510 
6511     SPAGAIN;
6512 
6513     /* Check the eval first */
6514     err_tmp = ERRSV;
6515     if (SvTRUE(err_tmp)) {
6516       croak ("Some error occurred while executing unstructured domains production rule callback - %s\n", SvPV_nolen(err_tmp));
6517     }
6518 
6519     FREETMPS;
6520     LEAVE;
6521   }
6522 
6523   return /*void*/;
6524 }
6525 
6526 
6527 static void
perl5_wrap_ud_exp_prod_rule(vrna_fold_compound_t * vc,void * data)6528 perl5_wrap_ud_exp_prod_rule(vrna_fold_compound_t *vc,
6529                             void *data){
6530 
6531   SV *func;
6532   perl5_ud_callback_t *cb = (perl5_ud_callback_t *)data;
6533   func = cb->exp_prod_rule;
6534 
6535   if(func && SvOK(func)){
6536     dSP;
6537 
6538     SV *err_tmp;
6539 
6540     /* call Perl subroutine */
6541     ENTER;
6542     SAVETMPS;
6543     PUSHMARK(SP);
6544 
6545     if(cb->data && SvOK(cb->data))  /* add data object to perl stack (if any) */
6546       XPUSHs(cb->data);
6547     PUTBACK;
6548 
6549     perl_call_sv(func, G_EVAL | G_DISCARD);
6550 
6551     SPAGAIN;
6552 
6553     /* Check the eval first */
6554     err_tmp = ERRSV;
6555     if (SvTRUE(err_tmp)) {
6556       croak ("Some error occurred while executing unstructured domains production rule callback (partition function) - %s\n", SvPV_nolen(err_tmp));
6557     }
6558 
6559     FREETMPS;
6560     LEAVE;
6561   }
6562 
6563   return /*void*/;
6564 }
6565 
6566 
6567 static int
perl5_wrap_ud_energy(vrna_fold_compound_t * vc,int i,int j,unsigned int looptype,void * data)6568 perl5_wrap_ud_energy( vrna_fold_compound_t *vc,
6569                       int i,
6570                       int j,
6571                       unsigned int looptype,
6572                       void *data){
6573 
6574   int ret, count;
6575   SV *func;
6576   perl5_ud_callback_t *cb = (perl5_ud_callback_t *)data;
6577 
6578   func = cb->energy;
6579 
6580   ret = 0;
6581 
6582   if(func && SvOK(func)){
6583     dSP;
6584 
6585     SV  *err_tmp;
6586     I32 ax; /* expected by ST(x) macro */
6587 
6588     /* call Perl subroutine */
6589     ENTER;
6590     SAVETMPS;
6591     PUSHMARK(SP);
6592 
6593     SV* pSVi = sv_newmortal();
6594     sv_setiv(pSVi, (IV)i);
6595     XPUSHs(pSVi);
6596     SV* pSVj = sv_newmortal();
6597     sv_setiv(pSVj, (IV)j);
6598     XPUSHs(pSVj);
6599     SV* pSVt = sv_newmortal();
6600     sv_setiv(pSVt, (IV)looptype);
6601     XPUSHs(pSVt);
6602 
6603     if(cb->data && SvOK(cb->data))          /* add data object to perl stack (if any) */
6604       XPUSHs(cb->data);
6605     PUTBACK;
6606 
6607     count = perl_call_sv(func, G_EVAL | G_ARRAY);
6608 
6609     SPAGAIN; /* refresh local copy of the perl stack pointer */
6610 
6611     /* prepare the stack such that we can use the ST(x) macro */
6612     SP -= count;
6613     ax = (SP - PL_stack_base) + 1;
6614 
6615     /* Check the eval first */
6616     err_tmp = ERRSV;
6617     if (SvTRUE(err_tmp)) {
6618        croak ("Some error occurred while executing unstructured domains energy callback - %s\n", SvPV_nolen(err_tmp));
6619        POPs;
6620     } else {
6621       /* we expect a single value to be returned */
6622       if (count != 1) { /* more or less than 1 return value */
6623         croak("Unstructured domains energy callback must return exactly 1 item\n");
6624       } else if (!SvOK(ST(0))) { /* return value is undefined */
6625         croak("Unstructured domains energy callback must not return undef\n");
6626       } else if (!SvIOK(ST(0))) { /* return value is not an integer scalar */
6627         croak("Unstructured domains energy callback must return pseudo energy value\n");
6628       } else {
6629         ret = SvIV(ST(0));
6630       }
6631     }
6632 
6633     PUTBACK;
6634     FREETMPS;
6635     LEAVE;
6636   }
6637 
6638   return ret;
6639 }
6640 
6641 
6642 static FLT_OR_DBL
perl5_wrap_ud_exp_energy(vrna_fold_compound_t * vc,int i,int j,unsigned int looptype,void * data)6643 perl5_wrap_ud_exp_energy( vrna_fold_compound_t *vc,
6644                           int i,
6645                           int j,
6646                           unsigned int looptype,
6647                           void *data){
6648 
6649   int count;
6650   FLT_OR_DBL ret;
6651   SV *func;
6652 
6653   perl_sc_callback_t *cb = (perl_sc_callback_t *)data;
6654 
6655   func = cb->cb_f;
6656   ret = 1.0;
6657 
6658   if(SvOK(func)){
6659     dSP;
6660 
6661     SV  *err_tmp;
6662     I32 ax; /* expected by ST(x) macro */
6663 
6664     /* call Perl subroutine */
6665     ENTER;
6666     SAVETMPS;
6667     PUSHMARK(SP);
6668 
6669     SV* pSVi = sv_newmortal();
6670     sv_setiv(pSVi, (IV)i);
6671     XPUSHs(pSVi);
6672     SV* pSVj = sv_newmortal();
6673     sv_setiv(pSVj, (IV)j);
6674     XPUSHs(pSVj);
6675     SV* pSVt = sv_newmortal();
6676     sv_setiv(pSVt, (IV)looptype);
6677     XPUSHs(pSVt);
6678 
6679     if(cb->data && SvOK(cb->data))          /* add data object to perl stack (if any) */
6680       XPUSHs(cb->data);
6681     PUTBACK;
6682 
6683     count = perl_call_sv(func, G_EVAL | G_ARRAY);
6684 
6685     SPAGAIN; /* refresh local copy of the perl stack pointer */
6686 
6687     /* prepare the stack such that we can use the ST(x) macro */
6688     SP -= count;
6689     ax = (SP - PL_stack_base) + 1;
6690 
6691     /* Check the eval first */
6692     err_tmp = ERRSV;
6693     if (SvTRUE(err_tmp)) {
6694        croak ("Some error occurred while executing unstructured domains energy callback (partition function) - %s\n", SvPV_nolen(err_tmp));
6695        POPs;
6696     } else {
6697       /* we expect a single value to be returned */
6698       if (count != 1) { /* more or less than 1 return value */
6699         croak("Unstructured domains energy callback (partition function) must return exactly 1 item\n");
6700       } else if (!SvOK(ST(0))) { /* return value is undefined */
6701         croak("Unstructured domains energy callback (partition function) must not return undef\n");
6702       } else if (!SvNOK(ST(0))) { /* return value is not an integer scalar */
6703         croak("Unstructured domains energy callback (partition function) must return Boltzmann weighted pseudo energy value\n");
6704       } else {
6705         ret = (FLT_OR_DBL)SvNV(ST(0));
6706       }
6707     }
6708 
6709     PUTBACK;
6710     FREETMPS;
6711     LEAVE;
6712   }
6713 
6714   return ret;
6715 }
6716 
6717 
6718 static void
perl5_wrap_ud_prob_add(vrna_fold_compound_t * vc,int i,int j,unsigned int looptype,FLT_OR_DBL prob,void * data)6719 perl5_wrap_ud_prob_add( vrna_fold_compound_t *vc,
6720                         int i,
6721                         int j,
6722                         unsigned int looptype,
6723                         FLT_OR_DBL prob,
6724                         void *data){
6725 
6726   SV *func;
6727   perl5_ud_callback_t *cb = (perl5_ud_callback_t *)data;
6728   func = cb->prob_add;
6729 
6730   if(func && SvOK(func)){
6731     dSP;
6732 
6733     SV *err_tmp;
6734 
6735     /* call Perl subroutine */
6736     ENTER;
6737     SAVETMPS;
6738     PUSHMARK(SP);
6739 
6740     SV* pSVi = sv_newmortal();
6741     sv_setiv(pSVi, (IV)i);
6742     XPUSHs(pSVi);
6743     SV* pSVj = sv_newmortal();
6744     sv_setiv(pSVj, (IV)j);
6745     XPUSHs(pSVj);
6746     SV* pSVt = sv_newmortal();
6747     sv_setiv(pSVt, (IV)looptype);
6748     XPUSHs(pSVt);
6749     SV* pSVp = sv_newmortal();
6750     sv_setnv(pSVp, (double)prob);
6751     XPUSHs(pSVp);
6752 
6753     if(cb->data && SvOK(cb->data))  /* add data object to perl stack (if any) */
6754       XPUSHs(cb->data);
6755     PUTBACK;
6756 
6757     perl_call_sv(func, G_EVAL | G_DISCARD);
6758 
6759     SPAGAIN;
6760 
6761     /* Check the eval first */
6762     err_tmp = ERRSV;
6763     if (SvTRUE(err_tmp)) {
6764       croak ("Some error occurred while executing unstructured domains add_probability() callback - %s\n", SvPV_nolen(err_tmp));
6765     }
6766 
6767     FREETMPS;
6768     LEAVE;
6769   }
6770 
6771   return /*void*/;
6772 }
6773 
6774 
6775 static FLT_OR_DBL
perl5_wrap_ud_prob_get(vrna_fold_compound_t * vc,int i,int j,unsigned int looptype,int motif,void * data)6776 perl5_wrap_ud_prob_get( vrna_fold_compound_t *vc,
6777                         int i,
6778                         int j,
6779                         unsigned int looptype,
6780                         int motif,
6781                         void *data){
6782 
6783   int count;
6784   FLT_OR_DBL ret;
6785   SV *func;
6786   perl5_ud_callback_t *cb = (perl5_ud_callback_t *)data;
6787 
6788   func  = cb->prob_add;
6789   ret   = 0.;
6790 
6791   if(SvOK(func)){
6792     dSP;
6793 
6794     SV  *err_tmp;
6795     I32 ax; /* expected by ST(x) macro */
6796 
6797     /* call Perl subroutine */
6798     ENTER;
6799     SAVETMPS;
6800     PUSHMARK(SP);
6801 
6802     SV* pSVi = sv_newmortal();
6803     sv_setiv(pSVi, (IV)i);
6804     XPUSHs(pSVi);
6805     SV* pSVj = sv_newmortal();
6806     sv_setiv(pSVj, (IV)j);
6807     XPUSHs(pSVj);
6808     SV* pSVt = sv_newmortal();
6809     sv_setiv(pSVt, (IV)looptype);
6810     XPUSHs(pSVt);
6811     SV* pSVm = sv_newmortal();
6812     sv_setiv(pSVm, (IV)motif);
6813     XPUSHs(pSVt);
6814 
6815     if(cb->data && SvOK(cb->data))          /* add data object to perl stack (if any) */
6816       XPUSHs(cb->data);
6817     PUTBACK;
6818 
6819     count = perl_call_sv(func, G_EVAL | G_ARRAY);
6820 
6821     SPAGAIN; /* refresh local copy of the perl stack pointer */
6822 
6823     /* prepare the stack such that we can use the ST(x) macro */
6824     SP -= count;
6825     ax = (SP - PL_stack_base) + 1;
6826 
6827     /* Check the eval first */
6828     err_tmp = ERRSV;
6829     if (SvTRUE(err_tmp)) {
6830       croak ("Some error occurred while executing unstructured domains get_probability() callback - %s\n", SvPV_nolen(err_tmp));
6831       POPs;
6832     } else {
6833       /* we expect a single value to be returned */
6834       if (count != 1) { /* more or less than 1 return value */
6835         croak("Unstructured domains get_probability() callback must return exactly 1 item\n");
6836       } else if (!SvOK(ST(0))) { /* return value is undefined */
6837         croak("Unstructured domains get_probability() callback must not return undef\n");
6838       } else if (!SvNOK(ST(0))) { /* return value is not an integer scalar */
6839         croak("Unstructured domains get_probability() callback must return probability\n");
6840       } else {
6841         ret = (FLT_OR_DBL)SvNV(ST(0));
6842       }
6843     }
6844 
6845     PUTBACK;
6846     FREETMPS;
6847     LEAVE;
6848   }
6849 
6850   return ret;
6851 }
6852 
6853 
6854 
6855 
6856 typedef struct {
6857   SV  *cb;
6858   SV  *data;
6859 } perl_subopt_callback_t;
6860 
6861 static perl_subopt_callback_t * bind_subopt_callback(SV *PerlFunc, SV *PerlData);
6862 
6863 static void perl_wrap_subopt_cb(const char *stucture, float energy, void *data);
6864 
6865 static perl_subopt_callback_t *
bind_subopt_callback(SV * PerlFunc,SV * PerlData)6866 bind_subopt_callback(SV *PerlFunc, SV *PerlData){
6867 
6868   /* check whether PerlFunc actually is a reference to a Perl subroutine */
6869   if((!SvOK(PerlFunc)) || (SvTYPE(SvRV(PerlFunc)) != SVt_PVCV)){
6870     fprintf(stderr, "Warning: invalid argument 1 for fold_compound::subopt_cb, must be code reference\n");
6871     return NULL;
6872   }
6873 
6874   perl_subopt_callback_t *cb = (perl_subopt_callback_t *)vrna_alloc(sizeof(perl_subopt_callback_t));
6875 
6876   cb->cb = PerlFunc;      /* store callback */
6877   cb->data = PerlData;    /* bind data */
6878 
6879   return cb;
6880 }
6881 
6882 static void
perl_wrap_subopt_cb(const char * stucture,float energy,void * data)6883 perl_wrap_subopt_cb(const char *stucture, float energy, void *data){
6884 
6885   SV *func;
6886   perl_subopt_callback_t *cb = (perl_subopt_callback_t *)data;
6887 
6888   func  = cb->cb;
6889 
6890   if(func && SvOK(func)){
6891     dSP;
6892 
6893     SV *err_tmp;
6894 
6895     /* call Perl subroutine */
6896     ENTER;
6897     SAVETMPS;
6898     PUSHMARK(SP);
6899 
6900     SV *structureSV = sv_newmortal();
6901     SV *energySV    = sv_newmortal();
6902     /* add structure and free energy to perl stack */
6903     sv_setpv(structureSV, stucture);
6904     sv_setnv(energySV, (double)energy);
6905     XPUSHs(structureSV);
6906     XPUSHs(energySV);
6907     if(cb->data && SvOK(cb->data))          /* add data object to perl stack (if any) */
6908       XPUSHs(cb->data);
6909     PUTBACK;
6910 
6911     perl_call_sv(func, G_EVAL | G_DISCARD);
6912 
6913     SPAGAIN;
6914 
6915     err_tmp = ERRSV;
6916     if (SvTRUE(err_tmp)) {
6917       croak ("Some error occurred while executing subopt callback - %s\n", SvPV_nolen(err_tmp));
6918     }
6919 
6920     FREETMPS;
6921     LEAVE;
6922   }
6923 
6924   return /*void*/;
6925 }
6926 
6927 
6928 
6929 
6930 typedef struct {
6931   SV  *cb;
6932   SV  *data;
6933 } perl_bs_callback_t;
6934 
6935 static perl_bs_callback_t * bind_bs_callback(SV *PerlFunc, SV *PerlData);
6936 
6937 static void perl_wrap_bs_cb(const char *stucture, void *data);
6938 
6939 static perl_bs_callback_t *
bind_bs_callback(SV * PerlFunc,SV * PerlData)6940 bind_bs_callback(SV *PerlFunc, SV *PerlData){
6941 
6942   /* check whether PerlFunc actually is a reference to a Perl subroutine */
6943   if((!SvOK(PerlFunc)) || (SvTYPE(SvRV(PerlFunc)) != SVt_PVCV)){
6944     fprintf(stderr, "Warning: invalid argument 1 for fold_compound::pbacktrack*_cb, must be code reference\n");
6945     return NULL;
6946   }
6947 
6948   perl_bs_callback_t *cb = (perl_bs_callback_t *)vrna_alloc(sizeof(perl_bs_callback_t));
6949 
6950   cb->cb = PerlFunc;      /* store callback */
6951   cb->data = PerlData;    /* bind data */
6952 
6953   return cb;
6954 }
6955 
6956 static void
perl_wrap_bs_cb(const char * stucture,void * data)6957 perl_wrap_bs_cb(const char *stucture, void *data){
6958 
6959   SV *func;
6960   perl_bs_callback_t *cb = (perl_bs_callback_t *)data;
6961 
6962   func  = cb->cb;
6963 
6964   if(func && SvOK(func)){
6965     dSP;
6966 
6967     SV *err_tmp;
6968 
6969     /* call Perl subroutine */
6970     ENTER;
6971     SAVETMPS;
6972     PUSHMARK(SP);
6973 
6974     SV *structureSV = sv_newmortal();
6975     /* add structure and free energy to perl stack */
6976     sv_setpv(structureSV, stucture);
6977     XPUSHs(structureSV);
6978     if(cb->data && SvOK(cb->data))          /* add data object to perl stack (if any) */
6979       XPUSHs(cb->data);
6980     PUTBACK;
6981 
6982     perl_call_sv(func, G_EVAL | G_DISCARD);
6983 
6984     SPAGAIN;
6985 
6986     err_tmp = ERRSV;
6987     if (SvTRUE(err_tmp)) {
6988       croak ("Some error occurred while executing Boltzmann sampling callback - %s\n", SvPV_nolen(err_tmp));
6989     }
6990 
6991     FREETMPS;
6992     LEAVE;
6993   }
6994 
6995   return /*void*/;
6996 }
6997 
6998 
6999 
7000 
7001 typedef struct {
7002   SV  *cb;
7003   SV  *data;
7004 } perl_mfe_window_callback_t;
7005 
7006 static perl_mfe_window_callback_t * bind_mfe_window_callback(SV *PerlFunc, SV *PerlData);
7007 
7008 static void perl_wrap_mfe_window_cb(int start, int end, const char *stucture, float energy, void *data);
7009 
7010 #ifdef VRNA_WITH_SVM
7011 static void perl_wrap_mfe_window_zscore_cb(int start, int end, const char *stucture, float energy, float zscore, void *data);
7012 #endif
7013 
7014 static perl_mfe_window_callback_t *
bind_mfe_window_callback(SV * PerlFunc,SV * PerlData)7015 bind_mfe_window_callback(SV *PerlFunc, SV *PerlData){
7016 
7017   /* check whether PerlFunc actually is a reference to a Perl subroutine */
7018   if((!SvOK(PerlFunc)) || (SvTYPE(SvRV(PerlFunc)) != SVt_PVCV)){
7019     fprintf(stderr, "Warning: invalid argument 1 for fold_compound::mfe_window_cb, must be code reference\n");
7020     return NULL;
7021   }
7022 
7023   perl_mfe_window_callback_t *cb = (perl_mfe_window_callback_t *)vrna_alloc(sizeof(perl_mfe_window_callback_t));
7024 
7025   cb->cb = PerlFunc;      /* store callback */
7026   cb->data = PerlData;    /* bind data */
7027 
7028   return cb;
7029 }
7030 
7031 static void
perl_wrap_mfe_window_cb(int start,int end,const char * stucture,float energy,void * data)7032 perl_wrap_mfe_window_cb(int start, int end, const char *stucture, float energy, void *data){
7033 
7034   SV *func;
7035   perl_mfe_window_callback_t *cb = (perl_mfe_window_callback_t *)data;
7036 
7037   func  = cb->cb;
7038 
7039   if(func && SvOK(func)){
7040     dSP;
7041 
7042     SV *err_tmp;
7043 
7044     /* call Perl subroutine */
7045     ENTER;
7046     SAVETMPS;
7047     PUSHMARK(SP);
7048 
7049     SV *startSV     = sv_newmortal();
7050     SV *stopSV      = sv_newmortal();
7051     SV *structureSV = sv_newmortal();
7052     SV *energySV    = sv_newmortal();
7053     /* add start, end, structure, and free energy to perl stack */
7054     sv_setiv(startSV, (IV)start);
7055     sv_setiv(stopSV, (IV)end);
7056     sv_setpv(structureSV, stucture);
7057     sv_setnv(energySV, (double)energy);
7058     XPUSHs(startSV);
7059     XPUSHs(stopSV);
7060     XPUSHs(structureSV);
7061     XPUSHs(energySV);
7062     if(cb->data && SvOK(cb->data))          /* add data object to perl stack (if any) */
7063       XPUSHs(cb->data);
7064     PUTBACK;
7065 
7066     perl_call_sv(func, G_EVAL | G_DISCARD);
7067 
7068     SPAGAIN;
7069 
7070     err_tmp = ERRSV;
7071     if (SvTRUE(err_tmp)) {
7072       croak ("Some error occurred while executing sliding window MFE callback - %s\n", SvPV_nolen(err_tmp));
7073     }
7074 
7075     FREETMPS;
7076     LEAVE;
7077   }
7078 
7079   return /*void*/;
7080 }
7081 
7082 #ifdef VRNA_WITH_SVM
7083 static void
perl_wrap_mfe_window_zscore_cb(int start,int end,const char * stucture,float energy,float zscore,void * data)7084 perl_wrap_mfe_window_zscore_cb(int start, int end, const char *stucture, float energy, float zscore, void *data){
7085 
7086   SV *func;
7087   perl_mfe_window_callback_t *cb = (perl_mfe_window_callback_t *)data;
7088 
7089   func  = cb->cb;
7090 
7091   if(func && SvOK(func)){
7092     dSP;
7093 
7094     SV *err_tmp;
7095 
7096     /* call Perl subroutine */
7097     ENTER;
7098     SAVETMPS;
7099     PUSHMARK(SP);
7100 
7101     SV *startSV     = sv_newmortal();
7102     SV *stopSV      = sv_newmortal();
7103     SV *structureSV = sv_newmortal();
7104     SV *energySV    = sv_newmortal();
7105     SV *zscoreSV    = sv_newmortal();
7106     /* add start, end, structure, and free energy to perl stack */
7107     sv_setiv(startSV, (IV)start);
7108     sv_setiv(stopSV, (IV)end);
7109     sv_setpv(structureSV, stucture);
7110     sv_setnv(energySV, (double)energy);
7111     sv_setnv(zscoreSV, (double)zscore);
7112     XPUSHs(startSV);
7113     XPUSHs(stopSV);
7114     XPUSHs(structureSV);
7115     XPUSHs(energySV);
7116     XPUSHs(zscoreSV);
7117     if(cb->data && SvOK(cb->data))          /* add data object to perl stack (if any) */
7118       XPUSHs(cb->data);
7119     PUTBACK;
7120 
7121     perl_call_sv(func, G_EVAL | G_DISCARD);
7122 
7123     SPAGAIN;
7124 
7125     err_tmp = ERRSV;
7126     if (SvTRUE(err_tmp)) {
7127       croak ("Some error occurred while executing sliding window MFE callback (z-score) - %s\n", SvPV_nolen(err_tmp));
7128     }
7129 
7130     FREETMPS;
7131     LEAVE;
7132   }
7133 
7134   return /*void*/;
7135 }
7136 #endif
7137 
7138 
7139 
my_Lfold_cb(char * string,int window_size,SV * PerlFunc,SV * PerlData=NULL)7140   float my_Lfold_cb(char *string, int window_size, SV *PerlFunc, SV *PerlData = NULL) {
7141     float en;
7142     perl_mfe_window_callback_t *cb = bind_mfe_window_callback(PerlFunc, PerlData);
7143     en = vrna_Lfold_cb(string, window_size, &perl_wrap_mfe_window_cb, (void *)cb);
7144     free(cb);
7145     return en;
7146   }
7147 
7148 #ifdef VRNA_WITH_SVM
my_Lfoldz_cb(char * string,int window_size,double min_z,SV * PerlFunc,SV * PerlData=NULL)7149   float my_Lfoldz_cb(char *string, int window_size, double min_z, SV *PerlFunc, SV *PerlData = NULL) {
7150     float en;
7151     perl_mfe_window_callback_t *cb = bind_mfe_window_callback(PerlFunc, PerlData);
7152     en = vrna_Lfoldz_cb(string, window_size, min_z, &perl_wrap_mfe_window_zscore_cb, (void *)cb);
7153     free(cb);
7154     return en;
7155   }
7156 #endif
7157 
my_aliLfold_cb(std::vector<std::string> alignment,int window_size,SV * PerlFunc,SV * PerlData=NULL)7158   float my_aliLfold_cb(std::vector<std::string> alignment, int window_size, SV *PerlFunc, SV *PerlData = NULL) {
7159     float en;
7160     perl_mfe_window_callback_t *cb = bind_mfe_window_callback(PerlFunc, PerlData);
7161     std::vector<const char*>  vc;
7162     std::transform(alignment.begin(), alignment.end(), std::back_inserter(vc), convert_vecstring2veccharcp);
7163     vc.push_back(NULL); /* mark end of sequences */
7164     en = vrna_aliLfold_cb((const char **)&vc[0], window_size, &perl_wrap_mfe_window_cb, (void *)cb);
7165     free(cb);
7166     return en;
7167   }
7168 
7169 
7170 
7171 
7172 typedef struct {
7173   SV  *cb;
7174   SV  *data;
7175 } perl_pf_window_callback_t;
7176 
7177 static perl_pf_window_callback_t * bind_pf_window_callback(SV *PerlFunc, SV *PerlData);
7178 
7179 static void perl_wrap_pf_window_cb(FLT_OR_DBL *pr, int pr_size, int i, int max, unsigned int type, void *data);
7180 
7181 static perl_pf_window_callback_t *
bind_pf_window_callback(SV * PerlFunc,SV * PerlData)7182 bind_pf_window_callback(SV *PerlFunc, SV *PerlData){
7183 
7184   /* check whether PerlFunc actually is a reference to a Perl subroutine */
7185   if((!SvOK(PerlFunc)) || (SvTYPE(SvRV(PerlFunc)) != SVt_PVCV)){
7186     fprintf(stderr, "Warning: invalid argument 1 for fold_compound::probs_window, must be code reference\n");
7187     return NULL;
7188   }
7189 
7190   perl_pf_window_callback_t *cb = (perl_pf_window_callback_t *)vrna_alloc(sizeof(perl_pf_window_callback_t));
7191 
7192   cb->cb = PerlFunc;      /* store callback */
7193   cb->data = PerlData;    /* bind data */
7194 
7195   return cb;
7196 }
7197 
7198 static void
perl_wrap_pf_window_cb(FLT_OR_DBL * pr,int pr_size,int i,int max,unsigned int type,void * data)7199 perl_wrap_pf_window_cb(FLT_OR_DBL *pr, int pr_size, int i, int max, unsigned int type, void *data){
7200 
7201   SV  *func, *pr_sizeSV, *iSV, *maxSV, *typeSV;
7202   AV  *prAV;
7203 
7204   perl_pf_window_callback_t *cb = (perl_pf_window_callback_t *)data;
7205 
7206   func  = cb->cb;
7207 
7208   if(func && SvOK(func)){
7209     dSP;
7210 
7211     SV *err_tmp;
7212 
7213     /* call Perl subroutine */
7214     ENTER;
7215     SAVETMPS;
7216     PUSHMARK(SP);
7217 
7218     pr_sizeSV = sv_newmortal();
7219     iSV       = sv_newmortal();
7220     maxSV     = sv_newmortal();
7221     typeSV    = sv_newmortal();
7222 
7223     prAV = (AV *)sv_2mortal((SV *)newAV()); /* newAV(); */
7224 
7225     if (type & VRNA_PROBS_WINDOW_UP) { /* We distinguish output for unpaired probabilities */
7226 
7227       /* 0th element */
7228       av_push(prAV, newSV(0));
7229 
7230       /* actual values in range [1, MIN(i, max)] */
7231       for (int cnt = 1; cnt <= pr_size; cnt++)
7232         av_push(prAV, newSVnv((double)pr[cnt]));
7233 
7234       /* empty values in range [0,i - 1] */
7235       for (int cnt = pr_size + 1; cnt <= max; cnt++)
7236         av_push(prAV, newSV(0));
7237 
7238     } else { /* and pairing/stacking probabilities for pair (i, j) or ensemble free energies for subsegment [i, j] */
7239 
7240       /* empty values in range [0, i] */
7241       for (int cnt = 0; cnt <= i; cnt++)
7242         av_push(prAV, newSV(0));
7243 
7244       /* actual values in range [i + 1, pr_size] */
7245       for (int cnt = i + 1; cnt <= pr_size; cnt++) {
7246         av_push(prAV, newSVnv((double)pr[cnt]));
7247       }
7248     }
7249 
7250     /* add pr_size, i, max, and type to perl stack */
7251     sv_setiv(pr_sizeSV, (IV)pr_size);
7252     sv_setiv(iSV, (IV)i);
7253     sv_setiv(maxSV, (IV)max);
7254     sv_setuv(typeSV, (UV)type);
7255 
7256     XPUSHs((SV *)sv_2mortal(newRV_inc((SV*) prAV)));
7257     XPUSHs(pr_sizeSV);
7258     XPUSHs(iSV);
7259     XPUSHs(maxSV);
7260     XPUSHs(typeSV);
7261 
7262     if(cb->data && SvOK(cb->data))          /* add data object to perl stack (if any) */
7263       XPUSHs(cb->data);
7264 
7265     PUTBACK;
7266 
7267     perl_call_sv(func, G_EVAL | G_DISCARD);
7268 
7269     SPAGAIN;
7270 
7271     err_tmp = ERRSV;
7272     if (SvTRUE(err_tmp)) {
7273       croak ("Some error occurred while executing sliding window partition function callback - %s\n", SvPV_nolen(err_tmp));
7274     }
7275 
7276     FREETMPS;
7277     LEAVE;
7278   }
7279 
7280   return /*void*/;
7281 }
7282 
7283 
7284 
7285 
pfl_fold_cb(std::string sequence,int window_size,int max_bp_span,SV * PerlFunc,SV * PerlData=NULL)7286   int pfl_fold_cb(std::string sequence, int window_size, int max_bp_span, SV *PerlFunc, SV *PerlData = NULL) {
7287     perl_pf_window_callback_t *cb = bind_pf_window_callback(PerlFunc, PerlData);
7288     int r = vrna_pfl_fold_cb(sequence.c_str(), window_size, max_bp_span, &perl_wrap_pf_window_cb, (void *)cb);
7289     free(cb);
7290     return r;
7291   }
7292 
pfl_fold_up_cb(std::string sequence,int ulength,int window_size,int max_bp_span,SV * PerlFunc,SV * PerlData=NULL)7293   int pfl_fold_up_cb(std::string sequence, int ulength, int window_size, int max_bp_span, SV *PerlFunc, SV *PerlData = NULL) {
7294     perl_pf_window_callback_t *cb = bind_pf_window_callback(PerlFunc, PerlData);
7295     int r = vrna_pfl_fold_up_cb(sequence.c_str(), ulength, window_size, max_bp_span, &perl_wrap_pf_window_cb, (void *)cb);
7296     free(cb);
7297     return r;
7298   }
7299 
7300 
7301 
7302 
7303 typedef struct {
7304   SV  *cb;
7305   SV  *data;
7306 } perl_heat_capacity_callback_t;
7307 
7308 static perl_heat_capacity_callback_t * bind_heat_capacity_callback(SV *PerlFunc, SV *PerlData);
7309 
7310 static void perl_wrap_heat_capacity_cb(float temperature, float hc, void *data);
7311 
7312 static perl_heat_capacity_callback_t *
bind_heat_capacity_callback(SV * PerlFunc,SV * PerlData)7313 bind_heat_capacity_callback(SV *PerlFunc, SV *PerlData){
7314 
7315   /* check whether PerlFunc actually is a reference to a Perl subroutine */
7316   if((!SvOK(PerlFunc)) || (SvTYPE(SvRV(PerlFunc)) != SVt_PVCV)){
7317     fprintf(stderr, "Warning: invalid argument 1 for fold_compound::heat_capacity_cb, must be code reference\n");
7318     return NULL;
7319   }
7320 
7321   perl_heat_capacity_callback_t *cb = (perl_heat_capacity_callback_t *)vrna_alloc(sizeof(perl_heat_capacity_callback_t));
7322 
7323   cb->cb = PerlFunc;      /* store callback */
7324   cb->data = PerlData;    /* bind data */
7325 
7326   return cb;
7327 }
7328 
7329 static void
perl_wrap_heat_capacity_cb(float temp,float hc,void * data)7330 perl_wrap_heat_capacity_cb(float temp, float hc, void *data){
7331 
7332   SV *func;
7333   perl_heat_capacity_callback_t *cb = (perl_heat_capacity_callback_t *)data;
7334 
7335   func  = cb->cb;
7336 
7337   if(func && SvOK(func)){
7338     dSP;
7339 
7340     SV *err_tmp;
7341 
7342     /* call Perl subroutine */
7343     ENTER;
7344     SAVETMPS;
7345     PUSHMARK(SP);
7346 
7347     SV *tempSV = sv_newmortal();
7348     SV *hcSV   = sv_newmortal();
7349     /* add structure and free energy to perl stack */
7350     sv_setnv(tempSV, (double)temp);
7351     sv_setnv(hcSV, (double)hc);
7352     XPUSHs(tempSV);
7353     XPUSHs(hcSV);
7354     if(cb->data && SvOK(cb->data))          /* add data object to perl stack (if any) */
7355       XPUSHs(cb->data);
7356     PUTBACK;
7357 
7358     perl_call_sv(func, G_EVAL | G_DISCARD);
7359 
7360     SPAGAIN;
7361 
7362     err_tmp = ERRSV;
7363     if (SvTRUE(err_tmp)) {
7364       croak ("Some error occurred while executing heat_capacity callback - %s\n", SvPV_nolen(err_tmp));
7365     }
7366 
7367     FREETMPS;
7368     LEAVE;
7369   }
7370 
7371   return /*void*/;
7372 }
7373 
7374 
7375 
7376   typedef enum {
7377     FC_TYPE_SINGLE      = VRNA_FC_TYPE_SINGLE,
7378     FC_TYPE_COMPARATIVE = VRNA_FC_TYPE_COMPARATIVE
7379   } my_fc_type_e;
7380 
vrna_fold_compound_t_params_reset__SWIG_0(vrna_fold_compound_t * self,vrna_md_t * md=NULL)7381 SWIGINTERN void vrna_fold_compound_t_params_reset__SWIG_0(vrna_fold_compound_t *self,vrna_md_t *md=NULL){
7382     vrna_params_reset(self, md);
7383   }
vrna_fold_compound_t_params_subst__SWIG_0(vrna_fold_compound_t * self,vrna_param_t * par=NULL)7384 SWIGINTERN void vrna_fold_compound_t_params_subst__SWIG_0(vrna_fold_compound_t *self,vrna_param_t *par=NULL){
7385     vrna_params_subst(self, par);
7386   }
vrna_fold_compound_t_exp_params_rescale__SWIG_0(vrna_fold_compound_t * self)7387 SWIGINTERN void vrna_fold_compound_t_exp_params_rescale__SWIG_0(vrna_fold_compound_t *self){
7388     vrna_exp_params_rescale(self, NULL);
7389   }
vrna_fold_compound_t_exp_params_rescale__SWIG_1(vrna_fold_compound_t * self,double fe)7390 SWIGINTERN void vrna_fold_compound_t_exp_params_rescale__SWIG_1(vrna_fold_compound_t *self,double fe){
7391     vrna_exp_params_rescale(self, &fe);
7392   }
vrna_fold_compound_t_exp_params_reset__SWIG_0(vrna_fold_compound_t * self,vrna_md_t * md=NULL)7393 SWIGINTERN void vrna_fold_compound_t_exp_params_reset__SWIG_0(vrna_fold_compound_t *self,vrna_md_t *md=NULL){
7394     vrna_exp_params_reset(self, md);
7395   }
vrna_fold_compound_t_exp_params_subst(vrna_fold_compound_t * self,vrna_exp_param_t * par)7396 SWIGINTERN void vrna_fold_compound_t_exp_params_subst(vrna_fold_compound_t *self,vrna_exp_param_t *par){
7397     vrna_exp_params_subst(self, par);
7398   }
vrna_fold_compound_t_plist_from_probs(vrna_fold_compound_t * self,double cutoff)7399 SWIGINTERN std::vector< vrna_ep_t > vrna_fold_compound_t_plist_from_probs(vrna_fold_compound_t *self,double cutoff){
7400     std::vector<vrna_ep_t > ep_v;
7401     vrna_ep_t               *ptr, *plist;
7402 
7403     plist = vrna_plist_from_probs(self, cutoff);
7404 
7405     for (ptr = plist; ptr->i && ptr->j; ptr++) {
7406       vrna_ep_t pl;
7407       pl.i = ptr->i;
7408       pl.j = ptr->j;
7409       pl.p = ptr->p;
7410       pl.type = ptr->type;
7411       ep_v.push_back(pl);
7412     }
7413 
7414     free(plist);
7415 
7416     return ep_v;
7417   }
vrna_fold_compound_t_constraints_add__SWIG_0(vrna_fold_compound_t * self,char const * constraint,unsigned int options=VRNA_OPTION_MFE)7418 SWIGINTERN void vrna_fold_compound_t_constraints_add__SWIG_0(vrna_fold_compound_t *self,char const *constraint,unsigned int options=VRNA_OPTION_MFE){
7419     vrna_constraints_add(self,constraint, options);
7420   }
vrna_fold_compound_t_hc_init(vrna_fold_compound_t * self)7421 SWIGINTERN void vrna_fold_compound_t_hc_init(vrna_fold_compound_t *self){
7422     vrna_hc_init(self);
7423   }
vrna_fold_compound_t_hc_add_up__SWIG_0(vrna_fold_compound_t * self,int i,unsigned int option=VRNA_CONSTRAINT_CONTEXT_ALL_LOOPS)7424 SWIGINTERN void vrna_fold_compound_t_hc_add_up__SWIG_0(vrna_fold_compound_t *self,int i,unsigned int option=VRNA_CONSTRAINT_CONTEXT_ALL_LOOPS){
7425     vrna_hc_add_up(self,i, (unsigned char)option);
7426   }
vrna_fold_compound_t_hc_add_bp_nonspecific__SWIG_0(vrna_fold_compound_t * self,int i,int d,unsigned int option=VRNA_CONSTRAINT_CONTEXT_ALL_LOOPS)7427 SWIGINTERN void vrna_fold_compound_t_hc_add_bp_nonspecific__SWIG_0(vrna_fold_compound_t *self,int i,int d,unsigned int option=VRNA_CONSTRAINT_CONTEXT_ALL_LOOPS){
7428     vrna_hc_add_bp_nonspecific(self,i,d, (unsigned char)option);
7429   }
vrna_fold_compound_t_hc_add_bp__SWIG_0(vrna_fold_compound_t * self,int i,int j,unsigned int option=VRNA_CONSTRAINT_CONTEXT_ALL_LOOPS)7430 SWIGINTERN void vrna_fold_compound_t_hc_add_bp__SWIG_0(vrna_fold_compound_t *self,int i,int j,unsigned int option=VRNA_CONSTRAINT_CONTEXT_ALL_LOOPS){
7431     vrna_hc_add_bp(self,i,j,(unsigned char)option);
7432   }
vrna_fold_compound_t_hc_add_from_db__SWIG_0(vrna_fold_compound_t * self,char const * constraint,unsigned int options=VRNA_CONSTRAINT_DB_DEFAULT)7433 SWIGINTERN int vrna_fold_compound_t_hc_add_from_db__SWIG_0(vrna_fold_compound_t *self,char const *constraint,unsigned int options=VRNA_CONSTRAINT_DB_DEFAULT){
7434     return vrna_hc_add_from_db(self,constraint, options);
7435   }
vrna_fold_compound_t_sc_remove(vrna_fold_compound_t * self)7436 SWIGINTERN void vrna_fold_compound_t_sc_remove(vrna_fold_compound_t *self){
7437     vrna_sc_remove(self);
7438   }
vrna_fold_compound_t_sc_init(vrna_fold_compound_t * self)7439 SWIGINTERN void vrna_fold_compound_t_sc_init(vrna_fold_compound_t *self){
7440     vrna_sc_init(self);
7441   }
vrna_fold_compound_t_sc_add_up__SWIG_0(vrna_fold_compound_t * self,int i,double energy,unsigned int options=VRNA_OPTION_DEFAULT)7442 SWIGINTERN int vrna_fold_compound_t_sc_add_up__SWIG_0(vrna_fold_compound_t *self,int i,double energy,unsigned int options=VRNA_OPTION_DEFAULT){
7443     return vrna_sc_add_up(self, i, energy, options);
7444   }
vrna_fold_compound_t_sc_add_up__SWIG_2(vrna_fold_compound_t * self,std::vector<double> constraints,unsigned int options=VRNA_OPTION_DEFAULT)7445 SWIGINTERN int vrna_fold_compound_t_sc_add_up__SWIG_2(vrna_fold_compound_t *self,std::vector< double > constraints,unsigned int options=VRNA_OPTION_DEFAULT){
7446     std::vector<double>::iterator it;
7447     int i = 1, ret = 1;
7448     it = constraints.begin();
7449     for(it++; it != constraints.end(); it++, i++){
7450       ret &= (vrna_sc_add_up(self, i, *it, options)) ? 1 : 0;
7451     }
7452 
7453     return ret;
7454   }
vrna_fold_compound_t_sc_add_bp__SWIG_0(vrna_fold_compound_t * self,int i,int j,double energy,unsigned int options=VRNA_OPTION_DEFAULT)7455 SWIGINTERN int vrna_fold_compound_t_sc_add_bp__SWIG_0(vrna_fold_compound_t *self,int i,int j,double energy,unsigned int options=VRNA_OPTION_DEFAULT){
7456     return vrna_sc_add_bp(self, i, j, energy, options);
7457   }
vrna_fold_compound_t_sc_add_bp__SWIG_2(vrna_fold_compound_t * self,std::vector<std::vector<double>> constraints,unsigned int options=VRNA_OPTION_DEFAULT)7458 SWIGINTERN int vrna_fold_compound_t_sc_add_bp__SWIG_2(vrna_fold_compound_t *self,std::vector< std::vector< double > > constraints,unsigned int options=VRNA_OPTION_DEFAULT){
7459     std::vector<std::vector<double> >::iterator it;
7460     std::vector<double>::iterator it2;
7461     int i, j, ret;
7462 
7463     i = 1;
7464     ret = 1;
7465     it = constraints.begin();
7466     for(it++; it != constraints.end(); it++, i++){
7467       it2 = (*it).begin();
7468       j   = 1;
7469       for(it2++; it2 != (*it).end(); it2++, j++){
7470         ret &= (vrna_sc_add_bp(self, i, j, *it2, options)) ? 1 : 0;
7471       }
7472     }
7473 
7474     return ret;
7475   }
vrna_fold_compound_t_sc_set_bp__SWIG_0(vrna_fold_compound_t * self,std::vector<std::vector<double>> constraints,unsigned int options=VRNA_OPTION_DEFAULT)7476 SWIGINTERN int vrna_fold_compound_t_sc_set_bp__SWIG_0(vrna_fold_compound_t *self,std::vector< std::vector< double > > constraints,unsigned int options=VRNA_OPTION_DEFAULT){
7477     int ret = 0;
7478 
7479     /* make sure that the constraints matrix is large enough */
7480     FLT_OR_DBL **c = (FLT_OR_DBL **)vrna_alloc(sizeof(FLT_OR_DBL *) * (self->length + 1));
7481     for(unsigned int i = 0; i <= self->length; i++)
7482       c[i] = (FLT_OR_DBL *)vrna_alloc(sizeof(FLT_OR_DBL) * (self->length + 1));
7483 
7484     /* copy input data (missing values have value 0 */
7485     for(unsigned int i = 0; (i < constraints.size()) && (i <= self->length); i++)
7486       for(unsigned int j = i; (j < constraints[i].size()) && (j <= self->length); j++)
7487         c[i][j] = (FLT_OR_DBL)constraints[i][j];
7488 
7489     ret = vrna_sc_set_bp(self, (const FLT_OR_DBL **)c, options);
7490 
7491     /* cleanup */
7492     for(unsigned int i = 0; i <= self->length; i++)
7493       free(c[i]);
7494     free(c);
7495 
7496     return ret;
7497   }
vrna_fold_compound_t_sc_set_up__SWIG_0(vrna_fold_compound_t * self,std::vector<double> constraints,unsigned int options=VRNA_OPTION_DEFAULT)7498 SWIGINTERN int vrna_fold_compound_t_sc_set_up__SWIG_0(vrna_fold_compound_t *self,std::vector< double > constraints,unsigned int options=VRNA_OPTION_DEFAULT){
7499     std::vector<FLT_OR_DBL>  v;
7500     transform(constraints.begin(), constraints.end(), std::back_inserter(v), convert_vecdbl2vecFLR_OR_DBL);
7501     return vrna_sc_set_up(self, (const FLT_OR_DBL *)&v[0], options);
7502   }
vrna_fold_compound_t_sc_set_stack__SWIG_0(vrna_fold_compound_t * self,std::vector<double> constraints,unsigned int options=VRNA_OPTION_DEFAULT)7503 SWIGINTERN int vrna_fold_compound_t_sc_set_stack__SWIG_0(vrna_fold_compound_t *self,std::vector< double > constraints,unsigned int options=VRNA_OPTION_DEFAULT){
7504     std::vector<FLT_OR_DBL>  v;
7505     transform(constraints.begin(), constraints.end(), std::back_inserter(v), convert_vecdbl2vecFLR_OR_DBL);
7506     return vrna_sc_set_stack(self, (const FLT_OR_DBL *)&v[0], options);
7507   }
vrna_fold_compound_t_sc_set_stack__SWIG_2(vrna_fold_compound_t * self,std::vector<std::vector<double>> constraints,unsigned int options=VRNA_OPTION_DEFAULT)7508 SWIGINTERN int vrna_fold_compound_t_sc_set_stack__SWIG_2(vrna_fold_compound_t *self,std::vector< std::vector< double > > constraints,unsigned int options=VRNA_OPTION_DEFAULT){
7509     int ret = 0;
7510 
7511     if (self->type == VRNA_FC_TYPE_COMPARATIVE) {
7512       FLT_OR_DBL **c = (FLT_OR_DBL **)vrna_alloc(sizeof(FLT_OR_DBL *) * (self->n_seq + 1));
7513 
7514       for(unsigned int s = 0; s <= self->n_seq; s++)
7515         c[s] = (FLT_OR_DBL *)vrna_alloc(sizeof(FLT_OR_DBL) * (self->length + 1));
7516 
7517       /* copy input data (missing values have value 0 */
7518       for(unsigned int s = 0; (s < constraints.size()) && (s <= self->n_seq); s++)
7519         for(unsigned int i = 1; (i < constraints[s].size()) && (i <= self->length); i++)
7520           c[s][i] = (FLT_OR_DBL)constraints[s][i];
7521 
7522       ret = vrna_sc_set_stack_comparative(self, (const FLT_OR_DBL **)c, options);
7523 
7524       /* cleanup */
7525       for(unsigned int i = 0; i <= self->length; i++)
7526         free(c[i]);
7527       free(c);
7528     }
7529 
7530     return ret;
7531   }
vrna_fold_compound_t_sc_add_stack__SWIG_0(vrna_fold_compound_t * self,int i,double energy,unsigned int options=VRNA_OPTION_DEFAULT)7532 SWIGINTERN int vrna_fold_compound_t_sc_add_stack__SWIG_0(vrna_fold_compound_t *self,int i,double energy,unsigned int options=VRNA_OPTION_DEFAULT){
7533     return vrna_sc_add_stack(self, i, energy, options);
7534   }
vrna_fold_compound_t_sc_add_stack__SWIG_2(vrna_fold_compound_t * self,int i,std::vector<double> energies,unsigned int options=VRNA_OPTION_DEFAULT)7535 SWIGINTERN int vrna_fold_compound_t_sc_add_stack__SWIG_2(vrna_fold_compound_t *self,int i,std::vector< double > energies,unsigned int options=VRNA_OPTION_DEFAULT){
7536     std::vector<FLT_OR_DBL>  v;
7537     transform(energies.begin(), energies.end(), std::back_inserter(v), convert_vecdbl2vecFLR_OR_DBL);
7538     return vrna_sc_add_stack_comparative(self, i, (const FLT_OR_DBL *)&v[0], options);
7539   }
vrna_fold_compound_t_sc_add_SHAPE_deigan__SWIG_0(vrna_fold_compound_t * self,std::vector<double> reactivities,double m,double b,unsigned int options=VRNA_OPTION_DEFAULT)7540 SWIGINTERN int vrna_fold_compound_t_sc_add_SHAPE_deigan__SWIG_0(vrna_fold_compound_t *self,std::vector< double > reactivities,double m,double b,unsigned int options=VRNA_OPTION_DEFAULT){
7541     return vrna_sc_add_SHAPE_deigan(self, (const double *)&reactivities[0], m, b, options);
7542   }
vrna_fold_compound_t_sc_add_SHAPE_deigan_ali__SWIG_0(vrna_fold_compound_t * self,std::vector<std::string> shape_files,std::vector<int> shape_file_association,double m,double b,unsigned int options=VRNA_OPTION_DEFAULT)7543 SWIGINTERN int vrna_fold_compound_t_sc_add_SHAPE_deigan_ali__SWIG_0(vrna_fold_compound_t *self,std::vector< std::string > shape_files,std::vector< int > shape_file_association,double m,double b,unsigned int options=VRNA_OPTION_DEFAULT){
7544     std::vector<const char*>  vc;
7545     transform(shape_files.begin(), shape_files.end(), back_inserter(vc), convert_vecstring2veccharcp);
7546     vc.push_back(NULL); /* mark end of vector */
7547     return vrna_sc_add_SHAPE_deigan_ali(self, (const char **) &vc[0], (const int *) &shape_file_association[0], m, b, options);
7548   }
vrna_fold_compound_t_sc_add_SHAPE_zarringhalam__SWIG_0(vrna_fold_compound_t * self,std::vector<double> reactivities,double b,double default_value,char const * shape_conversion,unsigned int options=VRNA_OPTION_DEFAULT)7549 SWIGINTERN int vrna_fold_compound_t_sc_add_SHAPE_zarringhalam__SWIG_0(vrna_fold_compound_t *self,std::vector< double > reactivities,double b,double default_value,char const *shape_conversion,unsigned int options=VRNA_OPTION_DEFAULT){
7550     return vrna_sc_add_SHAPE_zarringhalam(self, (const double *) &reactivities[0], b, default_value, shape_conversion, options);
7551   }
vrna_fold_compound_t_sc_add_hi_motif__SWIG_0(vrna_fold_compound_t * self,char const * seq,char const * structure,FLT_OR_DBL energy,unsigned int options=VRNA_OPTION_DEFAULT)7552 SWIGINTERN int vrna_fold_compound_t_sc_add_hi_motif__SWIG_0(vrna_fold_compound_t *self,char const *seq,char const *structure,FLT_OR_DBL energy,unsigned int options=VRNA_OPTION_DEFAULT){
7553     return vrna_sc_add_hi_motif(self, seq, structure, energy,options);
7554   }
vrna_fold_compound_t_eval_structure(vrna_fold_compound_t * self,char const * structure)7555 SWIGINTERN float vrna_fold_compound_t_eval_structure(vrna_fold_compound_t *self,char const *structure){
7556     return vrna_eval_structure(self,structure);
7557   }
vrna_fold_compound_t_eval_structure_pt(vrna_fold_compound_t * self,std::vector<int> pt)7558 SWIGINTERN int vrna_fold_compound_t_eval_structure_pt(vrna_fold_compound_t *self,std::vector< int > pt){
7559     std::vector<short> vc;
7560     transform(pt.begin(), pt.end(), back_inserter(vc), convert_vecint2vecshort);
7561     return vrna_eval_structure_pt(self, (const short*)&vc[0]);
7562   }
vrna_fold_compound_t_eval_structure_verbose__SWIG_0(vrna_fold_compound_t * self,char * structure,FILE * nullfile=NULL)7563 SWIGINTERN float vrna_fold_compound_t_eval_structure_verbose__SWIG_0(vrna_fold_compound_t *self,char *structure,FILE *nullfile=NULL){
7564     return vrna_eval_structure_verbose(self, structure, nullfile);
7565   }
vrna_fold_compound_t_eval_structure_pt_verbose__SWIG_0(vrna_fold_compound_t * self,std::vector<int> pt,FILE * nullfile=NULL)7566 SWIGINTERN int vrna_fold_compound_t_eval_structure_pt_verbose__SWIG_0(vrna_fold_compound_t *self,std::vector< int > pt,FILE *nullfile=NULL){
7567     std::vector<short> vc;
7568     transform(pt.begin(), pt.end(), back_inserter(vc), convert_vecint2vecshort);
7569     return vrna_eval_structure_pt_verbose(self, (const short*)&vc[0], nullfile);
7570   }
vrna_fold_compound_t_eval_covar_structure(vrna_fold_compound_t * self,char * structure)7571 SWIGINTERN float vrna_fold_compound_t_eval_covar_structure(vrna_fold_compound_t *self,char *structure){
7572     return vrna_eval_covar_structure(self, structure);
7573   }
vrna_fold_compound_t_eval_loop_pt(vrna_fold_compound_t * self,int i,std::vector<int> pt)7574 SWIGINTERN int vrna_fold_compound_t_eval_loop_pt(vrna_fold_compound_t *self,int i,std::vector< int > pt){
7575     std::vector<short> vc;
7576     transform(pt.begin(), pt.end(), back_inserter(vc), convert_vecint2vecshort);
7577     return vrna_eval_loop_pt(self, i, (const short*)&vc[0]);
7578   }
vrna_fold_compound_t_eval_move(vrna_fold_compound_t * self,char const * structure,int m1,int m2)7579 SWIGINTERN float vrna_fold_compound_t_eval_move(vrna_fold_compound_t *self,char const *structure,int m1,int m2){
7580     return vrna_eval_move(self, structure, m1, m2);
7581   }
vrna_fold_compound_t_eval_move_pt(vrna_fold_compound_t * self,std::vector<int> pt,int m1,int m2)7582 SWIGINTERN int vrna_fold_compound_t_eval_move_pt(vrna_fold_compound_t *self,std::vector< int > pt,int m1,int m2){
7583     std::vector<short> vc;
7584     transform(pt.begin(), pt.end(), back_inserter(vc), convert_vecint2vecshort);
7585     return vrna_eval_move_pt(self, ((short*)&vc[0]), m1, m2);   /*attention here no const short* as argument*/
7586   }
vrna_fold_compound_t_E_ext_loop(vrna_fold_compound_t * self,int i,int j)7587 SWIGINTERN int vrna_fold_compound_t_E_ext_loop(vrna_fold_compound_t *self,int i,int j){
7588     return vrna_E_ext_loop(self, i, j);
7589   }
vrna_fold_compound_t_E_hp_loop(vrna_fold_compound_t * self,int i,int j)7590 SWIGINTERN int vrna_fold_compound_t_E_hp_loop(vrna_fold_compound_t *self,int i,int j){
7591     return vrna_E_hp_loop(self, i, j);
7592   }
vrna_fold_compound_t_E_ext_hp_loop(vrna_fold_compound_t * self,int i,int j)7593 SWIGINTERN int vrna_fold_compound_t_E_ext_hp_loop(vrna_fold_compound_t *self,int i,int j){
7594     return vrna_E_ext_hp_loop(self, i, j);
7595   }
vrna_fold_compound_t_eval_ext_hp_loop(vrna_fold_compound_t * self,int i,int j)7596 SWIGINTERN int vrna_fold_compound_t_eval_ext_hp_loop(vrna_fold_compound_t *self,int i,int j){
7597     return vrna_eval_ext_hp_loop(self, i, j);
7598   }
vrna_fold_compound_t_eval_hp_loop(vrna_fold_compound_t * self,int i,int j)7599 SWIGINTERN int vrna_fold_compound_t_eval_hp_loop(vrna_fold_compound_t *self,int i,int j){
7600     return vrna_eval_hp_loop(self, i, j);
7601   }
vrna_fold_compound_t_exp_E_hp_loop(vrna_fold_compound_t * self,int i,int j)7602 SWIGINTERN double vrna_fold_compound_t_exp_E_hp_loop(vrna_fold_compound_t *self,int i,int j){
7603     return (double)vrna_exp_E_hp_loop(self, i, j);
7604   }
vrna_fold_compound_t_E_int_loop(vrna_fold_compound_t * self,int i,int j)7605 SWIGINTERN int vrna_fold_compound_t_E_int_loop(vrna_fold_compound_t *self,int i,int j){
7606     return vrna_E_int_loop(self, i, j);
7607   }
vrna_fold_compound_t_eval_int_loop(vrna_fold_compound_t * self,int i,int j,int k,int l)7608 SWIGINTERN int vrna_fold_compound_t_eval_int_loop(vrna_fold_compound_t *self,int i,int j,int k,int l){
7609     return vrna_eval_int_loop(self, i, j, k, l);
7610   }
vrna_fold_compound_t_E_ext_int_loop(vrna_fold_compound_t * self,int i,int j,int * ip,int * iq)7611 SWIGINTERN int vrna_fold_compound_t_E_ext_int_loop(vrna_fold_compound_t *self,int i,int j,int *ip,int *iq){
7612     return vrna_E_ext_int_loop(self, i, j, ip, iq);
7613   }
vrna_fold_compound_t_E_stack(vrna_fold_compound_t * self,int i,int j)7614 SWIGINTERN int vrna_fold_compound_t_E_stack(vrna_fold_compound_t *self,int i,int j){
7615     return vrna_E_stack(self, i, j);
7616   }
vrna_fold_compound_t_exp_E_int_loop(vrna_fold_compound_t * self,int i,int j)7617 SWIGINTERN double vrna_fold_compound_t_exp_E_int_loop(vrna_fold_compound_t *self,int i,int j){
7618     return (double)vrna_exp_E_int_loop(self, i, j);
7619   }
vrna_fold_compound_t_exp_E_interior_loop(vrna_fold_compound_t * self,int i,int j,int k,int l)7620 SWIGINTERN double vrna_fold_compound_t_exp_E_interior_loop(vrna_fold_compound_t *self,int i,int j,int k,int l){
7621     return (double)vrna_exp_E_interior_loop(self, i, j, k, l);
7622   }
vrna_fold_compound_t_maxmimum_matching(vrna_fold_compound_t * self)7623 SWIGINTERN int vrna_fold_compound_t_maxmimum_matching(vrna_fold_compound_t *self){
7624     return vrna_maximum_matching(self);
7625   }
vrna_fold_compound_t_mfe(vrna_fold_compound_t * self,float * OUTPUT)7626 SWIGINTERN char *vrna_fold_compound_t_mfe(vrna_fold_compound_t *self,float *OUTPUT){
7627 
7628     char *structure = (char *)vrna_alloc(sizeof(char) * (self->length + 1));
7629     *OUTPUT = vrna_mfe(self, structure);
7630     return structure;
7631   }
vrna_fold_compound_t_mfe_dimer(vrna_fold_compound_t * self,float * OUTPUT)7632 SWIGINTERN char *vrna_fold_compound_t_mfe_dimer(vrna_fold_compound_t *self,float *OUTPUT){
7633 
7634     char *structure = (char*)vrna_alloc(sizeof(char) * (self->length + 1));
7635     *OUTPUT = vrna_mfe_dimer(self, structure);
7636     return structure;
7637   }
vrna_fold_compound_t_backtrack__SWIG_0(vrna_fold_compound_t * self,unsigned int length,float * OUTPUT)7638 SWIGINTERN char *vrna_fold_compound_t_backtrack__SWIG_0(vrna_fold_compound_t *self,unsigned int length,float *OUTPUT){
7639     char *structure = (char *)vrna_alloc(sizeof(char) * (length + 1));
7640     *OUTPUT = vrna_backtrack5(self, length, structure);
7641     return structure;
7642   }
vrna_fold_compound_t_backtrack__SWIG_1(vrna_fold_compound_t * self,float * OUTPUT)7643 SWIGINTERN char *vrna_fold_compound_t_backtrack__SWIG_1(vrna_fold_compound_t *self,float *OUTPUT){
7644     char *structure = (char *)vrna_alloc(sizeof(char) * (self->length + 1));
7645     *OUTPUT = vrna_backtrack5(self, self->length, structure);
7646     return structure;
7647   }
vrna_fold_compound_t_mfe_window__SWIG_0(vrna_fold_compound_t * self,FILE * nullfile=NULL)7648 SWIGINTERN float vrna_fold_compound_t_mfe_window__SWIG_0(vrna_fold_compound_t *self,FILE *nullfile=NULL){
7649     return vrna_mfe_window(self, nullfile);
7650   }
vrna_fold_compound_t_mfe_window_zscore__SWIG_0(vrna_fold_compound_t * self,double min_z,FILE * nullfile=NULL)7651 SWIGINTERN float vrna_fold_compound_t_mfe_window_zscore__SWIG_0(vrna_fold_compound_t *self,double min_z,FILE *nullfile=NULL){
7652     return vrna_mfe_window_zscore(self, min_z, nullfile);
7653   }
vrna_fold_compound_t_zsc_filter_init__SWIG_0(vrna_fold_compound_t * self,double min_z=-2.0,unsigned int options=VRNA_ZSCORE_SETTINGS_DEFAULT)7654 SWIGINTERN int vrna_fold_compound_t_zsc_filter_init__SWIG_0(vrna_fold_compound_t *self,double min_z=-2.0,unsigned int options=VRNA_ZSCORE_SETTINGS_DEFAULT){
7655     return vrna_zsc_filter_init(self, min_z, options);
7656   }
vrna_fold_compound_t_zsc_filter_update__SWIG_0(vrna_fold_compound_t * self,double min_z,unsigned int options=VRNA_ZSCORE_OPTIONS_NONE)7657 SWIGINTERN int vrna_fold_compound_t_zsc_filter_update__SWIG_0(vrna_fold_compound_t *self,double min_z,unsigned int options=VRNA_ZSCORE_OPTIONS_NONE){
7658     return vrna_zsc_filter_update(self, min_z, options);
7659   }
vrna_fold_compound_t_zsc_filter_free(vrna_fold_compound_t * self)7660 SWIGINTERN void vrna_fold_compound_t_zsc_filter_free(vrna_fold_compound_t *self){
7661     vrna_zsc_filter_free(self);
7662   }
vrna_fold_compound_t_zsc_filter_on(vrna_fold_compound_t * self)7663 SWIGINTERN int vrna_fold_compound_t_zsc_filter_on(vrna_fold_compound_t *self){
7664     return vrna_zsc_filter_on(self);
7665   }
vrna_fold_compound_t_zsc_filter_threshold(vrna_fold_compound_t * self)7666 SWIGINTERN double vrna_fold_compound_t_zsc_filter_threshold(vrna_fold_compound_t *self){
7667     return vrna_zsc_filter_threshold(self);
7668   }
vrna_fold_compound_t_zsc_compute(vrna_fold_compound_t * self,unsigned int i,unsigned int j,int e)7669 SWIGINTERN double vrna_fold_compound_t_zsc_compute(vrna_fold_compound_t *self,unsigned int i,unsigned int j,int e){
7670     return vrna_zsc_compute(self, i, j, e);
7671   }
vrna_fold_compound_t_pf(vrna_fold_compound_t * self,float * OUTPUT)7672 SWIGINTERN char *vrna_fold_compound_t_pf(vrna_fold_compound_t *self,float *OUTPUT){
7673     char *structure = (char *)vrna_alloc(sizeof(char) * (self->length + 1)); /*output is a structure pointer*/
7674     *OUTPUT= vrna_pf(self, structure);
7675     return structure;
7676   }
vrna_fold_compound_t_mean_bp_distance(vrna_fold_compound_t * self)7677 SWIGINTERN double vrna_fold_compound_t_mean_bp_distance(vrna_fold_compound_t *self){
7678     return vrna_mean_bp_distance(self);
7679   }
vrna_fold_compound_t_ensemble_defect__SWIG_0(vrna_fold_compound_t * self,std::string structure,unsigned int options=8U)7680 SWIGINTERN double vrna_fold_compound_t_ensemble_defect__SWIG_0(vrna_fold_compound_t *self,std::string structure,unsigned int options=8U){
7681     double ed;
7682     short int         *pt;
7683 
7684     pt = vrna_ptable_from_string(structure.c_str(), options);
7685 
7686     ed = vrna_ensemble_defect_pt(self, pt);
7687 
7688     free(pt);
7689 
7690     return ed;
7691   }
vrna_fold_compound_t_ensemble_defect__SWIG_2(vrna_fold_compound_t * self,std::vector<int> pair_table)7692 SWIGINTERN double vrna_fold_compound_t_ensemble_defect__SWIG_2(vrna_fold_compound_t *self,std::vector< int > pair_table){
7693     double ed;
7694 
7695     std::vector<short> pt_v_short;
7696     transform(pair_table.begin(), pair_table.end(), back_inserter(pt_v_short), convert_vecint2vecshort);
7697     return vrna_ensemble_defect_pt(self, (short*)&pt_v_short[0]);
7698   }
vrna_fold_compound_t_positional_entropy(vrna_fold_compound_t * self)7699 SWIGINTERN std::vector< double > vrna_fold_compound_t_positional_entropy(vrna_fold_compound_t *self){
7700     unsigned int        n;
7701     double              *pos_ent;
7702     std::vector<double> dv;
7703 
7704     n       = self->length;
7705     pos_ent = vrna_positional_entropy(self);
7706 
7707     if (pos_ent)
7708       dv.assign(pos_ent, pos_ent + (n + 1));
7709 
7710     return dv;
7711   }
vrna_fold_compound_t_pr_structure(vrna_fold_compound_t * self,std::string structure)7712 SWIGINTERN double vrna_fold_compound_t_pr_structure(vrna_fold_compound_t *self,std::string structure){
7713     return vrna_pr_structure(self, structure.c_str());
7714   }
vrna_fold_compound_t_pr_energy(vrna_fold_compound_t * self,double e)7715 SWIGINTERN double vrna_fold_compound_t_pr_energy(vrna_fold_compound_t *self,double e){
7716     return vrna_pr_energy(self, e);
7717   }
vrna_fold_compound_t_pf_dimer(vrna_fold_compound_t * self,float * FA,float * FB,float * FcAB,float * FAB)7718 SWIGINTERN char *vrna_fold_compound_t_pf_dimer(vrna_fold_compound_t *self,float *FA,float *FB,float *FcAB,float *FAB){
7719     char *structure = (char *)vrna_alloc(sizeof(char) * (self->length + 1)); /*output is a structure pointer*/
7720     vrna_dimer_pf_t temp = vrna_pf_dimer(self, structure);
7721     *FAB  = (float)temp.FAB;
7722     *FcAB = (float)temp.FcAB;
7723     *FA   = (float)temp.FA;
7724     *FB   = (float)temp.FB;
7725     return structure;
7726   }
vrna_fold_compound_t_bpp(vrna_fold_compound_t * self)7727 SWIGINTERN std::vector< std::vector< double > > vrna_fold_compound_t_bpp(vrna_fold_compound_t *self){
7728     std::vector<std::vector<double> > probabilities;
7729     vrna_fold_compound_t *vc = self;
7730     if(vc->exp_matrices && vc->exp_matrices->probs){
7731       int turn, i, j, *idx, n;
7732       FLT_OR_DBL *probs;
7733 
7734       n     = vc->length;
7735       idx   = vc->iindx;
7736       turn  = vc->exp_params->model_details.min_loop_size;
7737       probs = vc->exp_matrices->probs;
7738 
7739       probabilities.push_back(std::vector<double>(n+1, 0.));
7740       for(i=1; i <= n; i++){
7741         int u = ((i + turn + 1) < (n) ? (i + turn + 1) : (n));
7742         probabilities.push_back(std::vector<double>(u, 0.));
7743         for(j = u; j <= n; j++)
7744           probabilities[i].push_back((double)probs[idx[i] - j]);
7745       }
7746     }
7747     return probabilities;
7748   }
vrna_fold_compound_t_centroid(vrna_fold_compound_t * self,double * OUTPUT)7749 SWIGINTERN char *vrna_fold_compound_t_centroid(vrna_fold_compound_t *self,double *OUTPUT){
7750     return vrna_centroid(self, OUTPUT);
7751   }
vrna_fold_compound_t_MEA__SWIG_0(vrna_fold_compound_t * self,float * OUTPUT)7752 SWIGINTERN char *vrna_fold_compound_t_MEA__SWIG_0(vrna_fold_compound_t *self,float *OUTPUT){
7753     return vrna_MEA(self, 1., OUTPUT);
7754   }
vrna_fold_compound_t_MEA__SWIG_1(vrna_fold_compound_t * self,double gamma,float * OUTPUT)7755 SWIGINTERN char *vrna_fold_compound_t_MEA__SWIG_1(vrna_fold_compound_t *self,double gamma,float *OUTPUT){
7756     return vrna_MEA(self, gamma, OUTPUT);
7757   }
vrna_fold_compound_t_pbacktrack__SWIG_0(vrna_fold_compound_t * self)7758 SWIGINTERN char *vrna_fold_compound_t_pbacktrack__SWIG_0(vrna_fold_compound_t *self){
7759     return vrna_pbacktrack(self);
7760   }
vrna_fold_compound_t_pbacktrack5__SWIG_0(vrna_fold_compound_t * self,unsigned int length)7761 SWIGINTERN char *vrna_fold_compound_t_pbacktrack5__SWIG_0(vrna_fold_compound_t *self,unsigned int length){
7762     return vrna_pbacktrack5(self, length);
7763   }
vrna_fold_compound_t_pbacktrack__SWIG_1(vrna_fold_compound_t * self,unsigned int num_samples,unsigned int options=VRNA_PBACKTRACK_DEFAULT)7764 SWIGINTERN std::vector< std::string > vrna_fold_compound_t_pbacktrack__SWIG_1(vrna_fold_compound_t *self,unsigned int num_samples,unsigned int options=VRNA_PBACKTRACK_DEFAULT){
7765     std::vector<std::string> str_vec;
7766     char  **ptr, **output;
7767 
7768     output = vrna_pbacktrack_num(self, num_samples, options);
7769 
7770     if (output) {
7771       for (ptr = output; *ptr != NULL; ptr++) {
7772         str_vec.push_back(std::string(*ptr));
7773         free(*ptr);
7774       }
7775 
7776       free(output);
7777     }
7778 
7779     return str_vec;
7780   }
vrna_fold_compound_t_pbacktrack5__SWIG_1(vrna_fold_compound_t * self,unsigned int num_samples,unsigned int length,unsigned int options=VRNA_PBACKTRACK_DEFAULT)7781 SWIGINTERN std::vector< std::string > vrna_fold_compound_t_pbacktrack5__SWIG_1(vrna_fold_compound_t *self,unsigned int num_samples,unsigned int length,unsigned int options=VRNA_PBACKTRACK_DEFAULT){
7782     std::vector<std::string> str_vec;
7783     char  **ptr, **output;
7784 
7785     output = vrna_pbacktrack5_num(self, num_samples, length, options);
7786 
7787     if (output) {
7788       for (ptr = output; *ptr != NULL; ptr++) {
7789         str_vec.push_back(std::string(*ptr));
7790         free(*ptr);
7791       }
7792 
7793       free(output);
7794     }
7795 
7796     return str_vec;
7797   }
vrna_fold_compound_t_pbacktrack__SWIG_3(vrna_fold_compound_t * self,unsigned int num_samples,vrna_pbacktrack_mem_t * nr_memory,unsigned int options=VRNA_PBACKTRACK_DEFAULT)7798 SWIGINTERN std::vector< std::string > vrna_fold_compound_t_pbacktrack__SWIG_3(vrna_fold_compound_t *self,unsigned int num_samples,vrna_pbacktrack_mem_t *nr_memory,unsigned int options=VRNA_PBACKTRACK_DEFAULT){
7799     std::vector<std::string> str_vec;
7800 
7801     char **ptr, **output = vrna_pbacktrack_resume(self,
7802                                                   num_samples,
7803                                                   nr_memory,
7804                                                   options);
7805 
7806     if (output) {
7807       for (ptr = output; *ptr != NULL; ptr++) {
7808         str_vec.push_back(std::string(*ptr));
7809         free(*ptr);
7810       }
7811 
7812       free(output);
7813     }
7814 
7815     return str_vec;
7816   }
vrna_fold_compound_t_pbacktrack5__SWIG_3(vrna_fold_compound_t * self,unsigned int num_samples,unsigned int length,vrna_pbacktrack_mem_t * nr_memory,unsigned int options=VRNA_PBACKTRACK_DEFAULT)7817 SWIGINTERN std::vector< std::string > vrna_fold_compound_t_pbacktrack5__SWIG_3(vrna_fold_compound_t *self,unsigned int num_samples,unsigned int length,vrna_pbacktrack_mem_t *nr_memory,unsigned int options=VRNA_PBACKTRACK_DEFAULT){
7818     std::vector<std::string> str_vec;
7819 
7820     char **ptr, **output;
7821 
7822     output = vrna_pbacktrack5_resume(self,
7823                                      num_samples,
7824                                      length,
7825                                      nr_memory,
7826                                      options);
7827 
7828     if (output) {
7829       for (ptr = output; *ptr != NULL; ptr++) {
7830         str_vec.push_back(std::string(*ptr));
7831         free(*ptr);
7832       }
7833 
7834       free(output);
7835     }
7836 
7837     return str_vec;
7838   }
vrna_fold_compound_t_subopt__SWIG_0(vrna_fold_compound_t * self,int delta,int sorted=1,FILE * nullfile=NULL)7839 SWIGINTERN std::vector< subopt_solution > vrna_fold_compound_t_subopt__SWIG_0(vrna_fold_compound_t *self,int delta,int sorted=1,FILE *nullfile=NULL){
7840     std::vector<subopt_solution> ret;
7841     SOLUTION *sol = vrna_subopt(self, delta, sorted, nullfile);
7842     if (sol)
7843       for(int i = 0; sol[i].structure != NULL; i++){
7844         subopt_solution a;
7845         a.energy = sol[i].energy;
7846         a.structure = sol[i].structure;
7847         ret.push_back(a);
7848       }
7849 
7850     free(sol);
7851     /* The memory occupied by the individual structures will be free'd automatically
7852        by swig, when the vector is destroyed
7853     */
7854     return ret;
7855   }
vrna_fold_compound_t_subopt_zuker(vrna_fold_compound_t * self)7856 SWIGINTERN std::vector< subopt_solution > vrna_fold_compound_t_subopt_zuker(vrna_fold_compound_t *self){
7857     std::vector<subopt_solution> ret;
7858     SOLUTION *sol = vrna_subopt_zuker(self);
7859     if (sol)
7860       for(int i = 0; sol[i].structure != NULL; i++){
7861         subopt_solution a;
7862         a.energy = sol[i].energy;
7863         a.structure = sol[i].structure;
7864         ret.push_back(a);
7865       }
7866 
7867     free(sol);
7868     /* The memory occupied by the individual structures will be free'd automatically
7869        by swig, when the vector is destroyed
7870     */
7871     return ret;
7872   }
vrna_fold_compound_t_sequence_add__SWIG_0(vrna_fold_compound_t * self,std::string sequence,unsigned int options=VRNA_SEQUENCE_RNA)7873 SWIGINTERN int vrna_fold_compound_t_sequence_add__SWIG_0(vrna_fold_compound_t *self,std::string sequence,unsigned int options=VRNA_SEQUENCE_RNA){
7874     return vrna_sequence_add(self,
7875                              sequence.c_str(),
7876                              options);
7877   }
vrna_fold_compound_t_sequence_remove(vrna_fold_compound_t * self,unsigned int i)7878 SWIGINTERN int vrna_fold_compound_t_sequence_remove(vrna_fold_compound_t *self,unsigned int i){
7879     return vrna_sequence_remove(self,
7880                                 i);
7881   }
vrna_fold_compound_t_sequence_remove_all(vrna_fold_compound_t * self)7882 SWIGINTERN void vrna_fold_compound_t_sequence_remove_all(vrna_fold_compound_t *self){
7883     vrna_sequence_remove_all(self);
7884   }
vrna_fold_compound_t_sequence_prepare(vrna_fold_compound_t * self)7885 SWIGINTERN void vrna_fold_compound_t_sequence_prepare(vrna_fold_compound_t *self){
7886     vrna_sequence_prepare(self);
7887   }
vrna_fold_compound_t_ud_add_motif__SWIG_0(vrna_fold_compound_t * self,std::string motif,double motif_en,std::string name="",unsigned int options=VRNA_UNSTRUCTURED_DOMAIN_ALL_LOOPS)7888 SWIGINTERN void vrna_fold_compound_t_ud_add_motif__SWIG_0(vrna_fold_compound_t *self,std::string motif,double motif_en,std::string name="",unsigned int options=VRNA_UNSTRUCTURED_DOMAIN_ALL_LOOPS){
7889     if (name == "")
7890       vrna_ud_add_motif(self, motif.c_str(), motif_en, NULL, options);
7891     else
7892       vrna_ud_add_motif(self, motif.c_str(), motif_en, name.c_str(), options);
7893   }
vrna_fold_compound_t_ud_remove(vrna_fold_compound_t * self)7894 SWIGINTERN void vrna_fold_compound_t_ud_remove(vrna_fold_compound_t *self){
7895     vrna_ud_remove(self);
7896   }
vrna_fold_compound_t_commands_apply__SWIG_0(vrna_fold_compound_t * self,vrna_command_s * commands,unsigned int options=VRNA_CMD_PARSE_DEFAULTS)7897 SWIGINTERN int vrna_fold_compound_t_commands_apply__SWIG_0(vrna_fold_compound_t *self,vrna_command_s *commands,unsigned int options=VRNA_CMD_PARSE_DEFAULTS){
7898     return vrna_commands_apply(self,
7899                                commands,
7900                                options);
7901   }
vrna_fold_compound_t_file_commands_apply__SWIG_0(vrna_fold_compound_t * self,std::string filename,unsigned int options=VRNA_CMD_PARSE_DEFAULTS)7902 SWIGINTERN int vrna_fold_compound_t_file_commands_apply__SWIG_0(vrna_fold_compound_t *self,std::string filename,unsigned int options=VRNA_CMD_PARSE_DEFAULTS){
7903     return vrna_file_commands_apply(self,
7904                                     filename.c_str(),
7905                                     options);
7906   }
vrna_fold_compound_t_rotational_symmetry_db(vrna_fold_compound_t * self,std::string structure)7907 SWIGINTERN std::vector< unsigned int > vrna_fold_compound_t_rotational_symmetry_db(vrna_fold_compound_t *self,std::string structure){
7908     std::vector<unsigned int> positions;
7909     unsigned int i, r, *pos;
7910 
7911     r = vrna_rotational_symmetry_db_pos(self, structure.c_str(), &pos);
7912 
7913     if (r)
7914       for (i = 0; i < r; i++)
7915         positions.push_back(pos[i]);
7916 
7917     free(pos);
7918 
7919     return positions;
7920   }
vrna_fold_compound_t_neighbors__SWIG_0(vrna_fold_compound_t * self,std::vector<int> pt,unsigned int options=(4|8))7921 SWIGINTERN std::vector< vrna_move_t > vrna_fold_compound_t_neighbors__SWIG_0(vrna_fold_compound_t *self,std::vector< int > pt,unsigned int options=(4|8)){
7922     std::vector<vrna_move_t>  v; /* fill vector with returned vrna_move_t */
7923     vrna_move_t *move_t, *ptr;
7924     std::vector<short> vc;
7925 
7926     transform(pt.begin(), pt.end(), back_inserter(vc), convert_vecint2vecshort);
7927 
7928     move_t = ptr = vrna_neighbors(self, (short*)&vc[0], options);
7929 
7930     if (ptr)
7931       while ((ptr->pos_5 != 0) && (ptr->pos_3 != 0)) {
7932         vrna_move_t m;
7933         m = vrna_move_init(ptr->pos_5, ptr->pos_3);
7934         v.push_back(m);
7935         ptr++;
7936       }
7937 
7938     free(move_t);
7939     return v;
7940   }
vrna_fold_compound_t_path__SWIG_0(vrna_fold_compound_t * self,std::vector<int> & pt,unsigned int steps,unsigned int options=VRNA_PATH_DEFAULT)7941 SWIGINTERN std::vector< vrna_move_t > vrna_fold_compound_t_path__SWIG_0(vrna_fold_compound_t *self,std::vector< int > &pt,unsigned int steps,unsigned int options=VRNA_PATH_DEFAULT){
7942     int i;
7943     std::vector<short>::iterator it;
7944     std::vector<vrna_move_t>  v; /* fill vector with returned vrna_move_t */
7945     vrna_move_t *move_t, *ptr;
7946     std::vector<short> vc;
7947 
7948     transform(pt.begin(), pt.end(), back_inserter(vc), convert_vecint2vecshort);
7949 
7950     move_t = ptr = vrna_path(self, (short*)&vc[0], steps, options);
7951 
7952     if (ptr)
7953       while ((ptr->pos_5 != 0) && (ptr->pos_3 != 0)) {
7954         vrna_move_t m;
7955         m = vrna_move_init(ptr->pos_5, ptr->pos_3);
7956         v.push_back(m);
7957         ptr++;
7958       }
7959 
7960     /* copy over the values from vc to pt */
7961     for (i = 0, it = vc.begin(); it != vc.end(); ++it, i++)
7962       pt[i] = *it;
7963 
7964     free(move_t);
7965     return v;
7966   }
vrna_fold_compound_t_path_gradient__SWIG_0(vrna_fold_compound_t * self,std::vector<int> & pt,unsigned int options=VRNA_PATH_DEFAULT)7967 SWIGINTERN std::vector< vrna_move_t > vrna_fold_compound_t_path_gradient__SWIG_0(vrna_fold_compound_t *self,std::vector< int > &pt,unsigned int options=VRNA_PATH_DEFAULT){
7968     int i;
7969     std::vector<short>::iterator it;
7970     std::vector<vrna_move_t>  v; /* fill vector with returned vrna_move_t */
7971     vrna_move_t *move_t, *ptr;
7972 
7973     std::vector<short> vc;
7974     transform(pt.begin(), pt.end(), back_inserter(vc), convert_vecint2vecshort);
7975 
7976     move_t = ptr = vrna_path_gradient(self, (short*)&vc[0], options);
7977 
7978     if (ptr)
7979       while ((ptr->pos_5 != 0) && (ptr->pos_3 != 0)) {
7980         vrna_move_t m;
7981         m = vrna_move_init(ptr->pos_5, ptr->pos_3);
7982         v.push_back(m);
7983         ptr++;
7984       }
7985 
7986     /* copy over the values from vc to pt */
7987     for (i = 0, it = vc.begin(); it != vc.end(); ++it, i++)
7988       pt[i] = *it;
7989 
7990     free(move_t);
7991     return v;
7992   }
vrna_fold_compound_t_path_random__SWIG_0(vrna_fold_compound_t * self,std::vector<int> & pt,unsigned int steps,unsigned int options=VRNA_PATH_DEFAULT)7993 SWIGINTERN std::vector< vrna_move_t > vrna_fold_compound_t_path_random__SWIG_0(vrna_fold_compound_t *self,std::vector< int > &pt,unsigned int steps,unsigned int options=VRNA_PATH_DEFAULT){
7994     int i;
7995     std::vector<short>::iterator it;
7996     std::vector<vrna_move_t>  v; /* fill vector with returned vrna_move_t */
7997     vrna_move_t *move_t, *ptr;
7998 
7999     std::vector<short> vc;
8000     transform(pt.begin(), pt.end(), back_inserter(vc), convert_vecint2vecshort);
8001 
8002     move_t = ptr = vrna_path_random(self, (short*)&vc[0], steps, options);
8003 
8004     if (ptr)
8005       while ((ptr->pos_5 != 0) && (ptr->pos_3 != 0)) {
8006         vrna_move_t m;
8007         m = vrna_move_init(ptr->pos_5, ptr->pos_3);
8008         v.push_back(m);
8009         ptr++;
8010       }
8011 
8012     /* copy over the values from vc to pt */
8013     for (i = 0, it = vc.begin(); it != vc.end(); ++it, i++)
8014       pt[i] = *it;
8015 
8016     free(move_t);
8017     return v;
8018   }
vrna_fold_compound_t_path_findpath_saddle__SWIG_0(vrna_fold_compound_t * self,std::string s1,std::string s2,int width=1,int maxE=INT_MAX-1)8019 SWIGINTERN SV *vrna_fold_compound_t_path_findpath_saddle__SWIG_0(vrna_fold_compound_t *self,std::string s1,std::string s2,int width=1,int maxE=INT_MAX-1){
8020     SV *E_obj;
8021 
8022     int E = vrna_path_findpath_saddle_ub(self, s1.c_str(), s2.c_str(), width, maxE);
8023 
8024     if (E < maxE)
8025       E_obj = newSViv((IV)E);
8026     else
8027       E_obj = newSV(0);
8028 
8029     sv_2mortal(E_obj);
8030 
8031     return E_obj;
8032   }
vrna_fold_compound_t_path_findpath__SWIG_0(vrna_fold_compound_t * self,std::string s1,std::string s2,int width=1,int maxE=INT_MAX-1)8033 SWIGINTERN std::vector< vrna_path_t > vrna_fold_compound_t_path_findpath__SWIG_0(vrna_fold_compound_t *self,std::string s1,std::string s2,int width=1,int maxE=INT_MAX-1){
8034       std::vector<vrna_path_t>  v; /* fill vector with returned vrna_path_t*/
8035       vrna_path_t *path_t, *ptr;
8036       path_t = ptr = vrna_path_findpath_ub(self, s1.c_str(), s2.c_str(), width, maxE);
8037 
8038       if (ptr) {
8039         while (ptr->s != NULL)
8040         {
8041             vrna_path_t p;
8042 
8043             p.type  = VRNA_PATH_TYPE_DOT_BRACKET;
8044             p.en    = ptr->en;
8045             p.s     = ptr->s;
8046 
8047             v.push_back(p);
8048             ptr++;
8049         }
8050         free(path_t);
8051       }
8052       return v;
8053   }
vrna_fold_compound_t_path_direct__SWIG_0(vrna_fold_compound_t * self,std::string s1,std::string s2,int maxE=INT_MAX-1,vrna_path_options_s * options=NULL)8054 SWIGINTERN std::vector< vrna_path_t > vrna_fold_compound_t_path_direct__SWIG_0(vrna_fold_compound_t *self,std::string s1,std::string s2,int maxE=INT_MAX-1,vrna_path_options_s *options=NULL){
8055       std::vector<vrna_path_t>  v; /* fill vector with returned vrna_path_t*/
8056       vrna_path_t *path_t, *ptr;
8057       path_t = ptr = vrna_path_direct_ub(self, s1.c_str(), s2.c_str(), maxE, options);
8058 
8059       if (ptr) {
8060         if (ptr->type == VRNA_PATH_TYPE_DOT_BRACKET)
8061           for (; ptr->s != NULL; ptr++) {
8062             vrna_path_t p;
8063             p.type = ptr->type;
8064             p.en   = ptr->en;
8065             p.s    = ptr->s;
8066             p.move = ptr->move;
8067             v.push_back(p);
8068           }
8069         else if (ptr->type == VRNA_PATH_TYPE_MOVES)
8070           for (; ptr->move.pos_5 != 0; ptr++) {
8071             vrna_path_t p;
8072             p.type = ptr->type;
8073             p.en   = ptr->en;
8074             p.s    = ptr->s;
8075             p.move = ptr->move;
8076             v.push_back(p);
8077           }
8078       }
8079 
8080       free(path_t);
8081 
8082       return v;
8083   }
vrna_fold_compound_t_heat_capacity__SWIG_0(vrna_fold_compound_t * self,float T_min=0.,float T_max=100.,float T_increment=1.,unsigned int mpoints=2U)8084 SWIGINTERN std::vector< heat_capacity_result > vrna_fold_compound_t_heat_capacity__SWIG_0(vrna_fold_compound_t *self,float T_min=0.,float T_max=100.,float T_increment=1.,unsigned int mpoints=2U){
8085     vrna_heat_capacity_t              *result_c;
8086     std::vector<heat_capacity_result> result;
8087 
8088     result_c = vrna_heat_capacity(self, T_min, T_max, T_increment, mpoints);
8089 
8090     if (result_c) {
8091       for (size_t i = 0; result_c[i].temperature >= T_min; i++) {
8092         heat_capacity_result r;
8093         r.temperature = result_c[i].temperature;
8094         r.heat_capacity = result_c[i].heat_capacity;
8095         result.push_back(r);
8096       }
8097     }
8098 
8099     free(result_c);
8100 
8101     return result;
8102   }
vrna_fold_compound_t_add_auxdata(vrna_fold_compound_t * self,SV * data,SV * PerlFunc)8103 SWIGINTERN void vrna_fold_compound_t_add_auxdata(vrna_fold_compound_t *self,SV *data,SV *PerlFunc){
8104     fc_add_perl_data(self, data, PerlFunc);
8105   }
vrna_fold_compound_t_add_callback(vrna_fold_compound_t * self,SV * PerlFunc)8106 SWIGINTERN void vrna_fold_compound_t_add_callback(vrna_fold_compound_t *self,SV *PerlFunc){
8107     fc_add_perl_callback(self, PerlFunc);
8108   }
vrna_fold_compound_t_sc_add_data(vrna_fold_compound_t * self,SV * data,SV * PerlFunc)8109 SWIGINTERN int vrna_fold_compound_t_sc_add_data(vrna_fold_compound_t *self,SV *data,SV *PerlFunc){
8110     return sc_add_perl_data(self, data, PerlFunc);
8111   }
vrna_fold_compound_t_sc_add_f(vrna_fold_compound_t * self,SV * PerlFunc)8112 SWIGINTERN int vrna_fold_compound_t_sc_add_f(vrna_fold_compound_t *self,SV *PerlFunc){
8113     return sc_add_f_perl_callback(self, PerlFunc);
8114   }
vrna_fold_compound_t_sc_add_bt(vrna_fold_compound_t * self,SV * PerlFunc)8115 SWIGINTERN int vrna_fold_compound_t_sc_add_bt(vrna_fold_compound_t *self,SV *PerlFunc){
8116     return sc_add_bt_perl_callback(self, PerlFunc);
8117   }
vrna_fold_compound_t_sc_add_exp_f(vrna_fold_compound_t * self,SV * PerlFunc)8118 SWIGINTERN int vrna_fold_compound_t_sc_add_exp_f(vrna_fold_compound_t *self,SV *PerlFunc){
8119     return sc_add_exp_f_perl_callback(self, PerlFunc);
8120   }
vrna_fold_compound_t_ud_set_data(vrna_fold_compound_t * self,SV * data,SV * PerlFunc)8121 SWIGINTERN void vrna_fold_compound_t_ud_set_data(vrna_fold_compound_t *self,SV *data,SV *PerlFunc){
8122     ud_set_data(self, data, PerlFunc);
8123   }
vrna_fold_compound_t_ud_set_prod_rule_cb(vrna_fold_compound_t * self,SV * prod_cb,SV * eval_cb)8124 SWIGINTERN void vrna_fold_compound_t_ud_set_prod_rule_cb(vrna_fold_compound_t *self,SV *prod_cb,SV *eval_cb){
8125 
8126     ud_set_prod_rule_cb(self, prod_cb, eval_cb);
8127   }
vrna_fold_compound_t_ud_set_exp_prod_rule_cb(vrna_fold_compound_t * self,SV * prod_cb,SV * eval_cb)8128 SWIGINTERN void vrna_fold_compound_t_ud_set_exp_prod_rule_cb(vrna_fold_compound_t *self,SV *prod_cb,SV *eval_cb){
8129 
8130     ud_set_exp_prod_rule_cb(self, prod_cb, eval_cb);
8131   }
vrna_fold_compound_t_ud_set_prob_cb(vrna_fold_compound_t * self,SV * setter,SV * getter)8132 SWIGINTERN void vrna_fold_compound_t_ud_set_prob_cb(vrna_fold_compound_t *self,SV *setter,SV *getter){
8133 
8134     ud_set_prob_cb(self, setter, getter);
8135   }
vrna_fold_compound_t_subopt_cb__SWIG_0(vrna_fold_compound_t * self,int delta,SV * PerlFunc,SV * PerlData=NULL)8136 SWIGINTERN void vrna_fold_compound_t_subopt_cb__SWIG_0(vrna_fold_compound_t *self,int delta,SV *PerlFunc,SV *PerlData=NULL){
8137 
8138     perl_subopt_callback_t *cb = bind_subopt_callback(PerlFunc, PerlData);
8139     vrna_subopt_cb(self, delta, &perl_wrap_subopt_cb, (void *)cb);
8140     free(cb);
8141   }
vrna_fold_compound_t_pbacktrack5__SWIG_5(vrna_fold_compound_t * self,unsigned int num_samples,unsigned int length,SV * PerlFunc,SV * PerlData=NULL,unsigned int options=0)8142 SWIGINTERN unsigned int vrna_fold_compound_t_pbacktrack5__SWIG_5(vrna_fold_compound_t *self,unsigned int num_samples,unsigned int length,SV *PerlFunc,SV *PerlData=NULL,unsigned int options=0){
8143     unsigned int i;
8144     perl_bs_callback_t *cb = bind_bs_callback(PerlFunc, PerlData);
8145 
8146     i = vrna_pbacktrack5_cb(self,
8147                             num_samples,
8148                             length,
8149                             &perl_wrap_bs_cb,
8150                             (void *)cb,
8151                             options);
8152 
8153     free(cb);
8154 
8155     return i;
8156   }
vrna_fold_compound_t_pbacktrack__SWIG_5(vrna_fold_compound_t * self,unsigned int num_samples,SV * PerlFunc,SV * PerlData=NULL,unsigned int options=0)8157 SWIGINTERN unsigned int vrna_fold_compound_t_pbacktrack__SWIG_5(vrna_fold_compound_t *self,unsigned int num_samples,SV *PerlFunc,SV *PerlData=NULL,unsigned int options=0){
8158     unsigned int i;
8159     perl_bs_callback_t *cb = bind_bs_callback(PerlFunc, PerlData);
8160 
8161     i = vrna_pbacktrack_cb(self,
8162                            num_samples,
8163                            &perl_wrap_bs_cb,
8164                            (void *)cb,
8165                            options);
8166 
8167     free(cb);
8168 
8169     return i;
8170   }
vrna_fold_compound_t_pbacktrack__SWIG_8(vrna_fold_compound_t * self,unsigned int num_samples,SV * PerlFunc,SV * PerlData,vrna_pbacktrack_mem_t * nr_memory,unsigned int options=0)8171 SWIGINTERN unsigned int vrna_fold_compound_t_pbacktrack__SWIG_8(vrna_fold_compound_t *self,unsigned int num_samples,SV *PerlFunc,SV *PerlData,vrna_pbacktrack_mem_t *nr_memory,unsigned int options=0){
8172     unsigned int i;
8173     perl_bs_callback_t *cb = bind_bs_callback(PerlFunc, PerlData);
8174 
8175     i = vrna_pbacktrack_resume_cb(self,
8176                                   num_samples,
8177                                   &perl_wrap_bs_cb,
8178                                   (void *)cb,
8179                                   nr_memory,
8180                                   options);
8181 
8182     free(cb);
8183 
8184     return i;
8185   }
vrna_fold_compound_t_pbacktrack5__SWIG_8(vrna_fold_compound_t * self,unsigned int num_samples,unsigned int length,SV * PerlFunc,SV * PerlData,vrna_pbacktrack_mem_t * nr_memory,unsigned int options=0)8186 SWIGINTERN unsigned int vrna_fold_compound_t_pbacktrack5__SWIG_8(vrna_fold_compound_t *self,unsigned int num_samples,unsigned int length,SV *PerlFunc,SV *PerlData,vrna_pbacktrack_mem_t *nr_memory,unsigned int options=0){
8187     unsigned int i;
8188     perl_bs_callback_t *cb = bind_bs_callback(PerlFunc, PerlData);
8189 
8190     i = vrna_pbacktrack5_resume_cb(self,
8191                                    num_samples,
8192                                    length,
8193                                    &perl_wrap_bs_cb,
8194                                    (void *)cb,
8195                                    nr_memory,
8196                                    options);
8197 
8198     free(cb);
8199 
8200     return i;
8201   }
vrna_fold_compound_t_mfe_window_cb__SWIG_0(vrna_fold_compound_t * self,SV * PerlFunc,SV * PerlData=NULL)8202 SWIGINTERN float vrna_fold_compound_t_mfe_window_cb__SWIG_0(vrna_fold_compound_t *self,SV *PerlFunc,SV *PerlData=NULL){
8203     float en;
8204     perl_mfe_window_callback_t *cb = bind_mfe_window_callback(PerlFunc, PerlData);
8205     en = vrna_mfe_window_cb(self, &perl_wrap_mfe_window_cb, (void *)cb);
8206     free(cb);
8207     return en;
8208   }
vrna_fold_compound_t_mfe_window_zscore_cb__SWIG_0(vrna_fold_compound_t * self,double min_z,SV * PerlFunc,SV * PerlData=NULL)8209 SWIGINTERN float vrna_fold_compound_t_mfe_window_zscore_cb__SWIG_0(vrna_fold_compound_t *self,double min_z,SV *PerlFunc,SV *PerlData=NULL){
8210     float en;
8211     perl_mfe_window_callback_t *cb = bind_mfe_window_callback(PerlFunc, PerlData);
8212     en = vrna_mfe_window_zscore_cb(self, min_z, &perl_wrap_mfe_window_zscore_cb, (void *)cb);
8213     free(cb);
8214     return en;
8215   }
vrna_fold_compound_t_probs_window__SWIG_0(vrna_fold_compound_t * self,int ulength,unsigned int options,SV * PerlFunc,SV * PerlData=NULL)8216 SWIGINTERN int vrna_fold_compound_t_probs_window__SWIG_0(vrna_fold_compound_t *self,int ulength,unsigned int options,SV *PerlFunc,SV *PerlData=NULL){
8217     perl_pf_window_callback_t *cb = bind_pf_window_callback(PerlFunc, PerlData);
8218     int r = vrna_probs_window(self, ulength, options, &perl_wrap_pf_window_cb, (void *)cb);
8219     free(cb);
8220     return r;
8221   }
vrna_fold_compound_t_heat_capacity_cb__SWIG_0(vrna_fold_compound_t * self,float T_min,float T_max,float T_increment,unsigned int mpoints,SV * PerlFunc,SV * PerlData=NULL)8222 SWIGINTERN void vrna_fold_compound_t_heat_capacity_cb__SWIG_0(vrna_fold_compound_t *self,float T_min,float T_max,float T_increment,unsigned int mpoints,SV *PerlFunc,SV *PerlData=NULL){
8223     perl_heat_capacity_callback_t *cb = bind_heat_capacity_callback(PerlFunc, PerlData);
8224     vrna_heat_capacity_cb(self, T_min, T_max, T_increment, mpoints, &perl_wrap_heat_capacity_cb, (void *)cb);
8225     free(cb);
8226   }
new_vrna_fold_compound_t__SWIG_0(char const * sequence,vrna_md_t * md=NULL,unsigned int options=VRNA_OPTION_DEFAULT)8227 SWIGINTERN vrna_fold_compound_t *new_vrna_fold_compound_t__SWIG_0(char const *sequence,vrna_md_t *md=NULL,unsigned int options=VRNA_OPTION_DEFAULT){
8228     return vrna_fold_compound(sequence, md, options);
8229   }
new_vrna_fold_compound_t__SWIG_3(std::vector<std::string> alignment,vrna_md_t * md=NULL,unsigned int options=VRNA_OPTION_DEFAULT)8230 SWIGINTERN vrna_fold_compound_t *new_vrna_fold_compound_t__SWIG_3(std::vector< std::string > alignment,vrna_md_t *md=NULL,unsigned int options=VRNA_OPTION_DEFAULT){
8231     std::vector<const char*>  vc;
8232     transform(alignment.begin(), alignment.end(), back_inserter(vc), convert_vecstring2veccharcp);
8233     vc.push_back(NULL); /* mark end of sequences */
8234     return vrna_fold_compound_comparative((const char **)&vc[0], md, options);
8235   }
new_vrna_fold_compound_t__SWIG_6(char const * sequence,char * s1,char * s2,vrna_md_t * md=NULL,unsigned int options=VRNA_OPTION_DEFAULT)8236 SWIGINTERN vrna_fold_compound_t *new_vrna_fold_compound_t__SWIG_6(char const *sequence,char *s1,char *s2,vrna_md_t *md=NULL,unsigned int options=VRNA_OPTION_DEFAULT){
8237     return vrna_fold_compound_TwoD(sequence,s1,s2, md, options);
8238   }
delete_vrna_fold_compound_t(vrna_fold_compound_t * self)8239 SWIGINTERN void delete_vrna_fold_compound_t(vrna_fold_compound_t *self){
8240     vrna_fold_compound_free(self);
8241   }
8242 
8243 SWIGINTERNINLINE SV *
SWIG_PERL_DECL_ARGS_1(unsigned char value)8244 SWIG_From_unsigned_SS_char  SWIG_PERL_DECL_ARGS_1(unsigned char value)
8245 {
8246   return SWIG_From_unsigned_SS_long  SWIG_PERL_CALL_ARGS_1(value);
8247 }
8248 
8249 #ifdef __cplusplus
8250 extern "C" {
8251 #endif
8252 
8253 #ifdef PERL_OBJECT
8254 #define MAGIC_CLASS _wrap_RNA_var::
8255 class _wrap_RNA_var : public CPerlObj {
8256 public:
8257 #else
8258 #define MAGIC_CLASS
8259 #endif
swig_magic_readonly(pTHX_ SV * SWIGUNUSEDPARM (sv),MAGIC * SWIGUNUSEDPARM (mg))8260 SWIGCLASS_STATIC int swig_magic_readonly(pTHX_ SV *SWIGUNUSEDPARM(sv), MAGIC *SWIGUNUSEDPARM(mg)) {
8261     MAGIC_PPERL
8262     croak("Value is read-only.");
8263     return 0;
8264 }
_wrap_lxc37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8265 SWIGCLASS_STATIC int _wrap_lxc37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8266   MAGIC_PPERL
8267   sv_setsv(sv,SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(lxc37)))  ;
8268   return 1;
8269 }
8270 
8271 
_wrap_stack37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8272 SWIGCLASS_STATIC int _wrap_stack37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8273   MAGIC_PPERL
8274   {
8275     AV *arr = (AV*)sv_2mortal((SV*)newAV());
8276     int i,j = 0, len1 = 0, len2 = 0;
8277 
8278     len1 = 7+1;
8279     len2 = 7+1;
8280 
8281     for (i = 0; i < len1 ; i++) {
8282       AV *vec = newAV();
8283       for (j = 0; j < len2; j++) {
8284         SV *v = newSViv(stack37[i][j]);
8285         if (!av_store(vec, j, v))
8286         SvREFCNT_dec(v);
8287       }
8288       /* store reference to array */
8289       av_store(arr, i, newRV_noinc((SV*) vec));
8290     }
8291 
8292     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) arr )));
8293   }
8294   return 1;
8295 }
8296 
8297 
_wrap_stackdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8298 SWIGCLASS_STATIC int _wrap_stackdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8299   MAGIC_PPERL
8300   {
8301     AV *arr = (AV*)sv_2mortal((SV*)newAV());
8302     int i,j = 0, len1 = 0, len2 = 0;
8303 
8304     len1 = 7+1;
8305     len2 = 7+1;
8306 
8307     for (i = 0; i < len1 ; i++) {
8308       AV *vec = newAV();
8309       for (j = 0; j < len2; j++) {
8310         SV *v = newSViv(stackdH[i][j]);
8311         if (!av_store(vec, j, v))
8312         SvREFCNT_dec(v);
8313       }
8314       /* store reference to array */
8315       av_store(arr, i, newRV_noinc((SV*) vec));
8316     }
8317 
8318     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) arr )));
8319   }
8320   return 1;
8321 }
8322 
8323 
_wrap_hairpin37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8324 SWIGCLASS_STATIC int _wrap_hairpin37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8325   MAGIC_PPERL
8326   {
8327     AV* av = (AV*)sv_2mortal((SV*)newAV());
8328     int i = 0,len = 0;
8329     len = 31;
8330 
8331     for (i = 0; i < len ; i++) {
8332       SV *v = newSViv(hairpin37[i]);
8333       if (!av_store(av, i, v))
8334       SvREFCNT_dec(v);
8335     }
8336     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
8337   }
8338   return 1;
8339 }
8340 
8341 
_wrap_hairpindH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8342 SWIGCLASS_STATIC int _wrap_hairpindH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8343   MAGIC_PPERL
8344   {
8345     AV* av = (AV*)sv_2mortal((SV*)newAV());
8346     int i = 0,len = 0;
8347     len = 31;
8348 
8349     for (i = 0; i < len ; i++) {
8350       SV *v = newSViv(hairpindH[i]);
8351       if (!av_store(av, i, v))
8352       SvREFCNT_dec(v);
8353     }
8354     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
8355   }
8356   return 1;
8357 }
8358 
8359 
_wrap_bulge37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8360 SWIGCLASS_STATIC int _wrap_bulge37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8361   MAGIC_PPERL
8362   {
8363     AV* av = (AV*)sv_2mortal((SV*)newAV());
8364     int i = 0,len = 0;
8365     len = 31;
8366 
8367     for (i = 0; i < len ; i++) {
8368       SV *v = newSViv(bulge37[i]);
8369       if (!av_store(av, i, v))
8370       SvREFCNT_dec(v);
8371     }
8372     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
8373   }
8374   return 1;
8375 }
8376 
8377 
_wrap_bulgedH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8378 SWIGCLASS_STATIC int _wrap_bulgedH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8379   MAGIC_PPERL
8380   {
8381     AV* av = (AV*)sv_2mortal((SV*)newAV());
8382     int i = 0,len = 0;
8383     len = 31;
8384 
8385     for (i = 0; i < len ; i++) {
8386       SV *v = newSViv(bulgedH[i]);
8387       if (!av_store(av, i, v))
8388       SvREFCNT_dec(v);
8389     }
8390     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
8391   }
8392   return 1;
8393 }
8394 
8395 
_wrap_internal_loop37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8396 SWIGCLASS_STATIC int _wrap_internal_loop37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8397   MAGIC_PPERL
8398   {
8399     AV* av = (AV*)sv_2mortal((SV*)newAV());
8400     int i = 0,len = 0;
8401     len = 31;
8402 
8403     for (i = 0; i < len ; i++) {
8404       SV *v = newSViv(internal_loop37[i]);
8405       if (!av_store(av, i, v))
8406       SvREFCNT_dec(v);
8407     }
8408     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
8409   }
8410   return 1;
8411 }
8412 
8413 
_wrap_internal_loopdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8414 SWIGCLASS_STATIC int _wrap_internal_loopdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8415   MAGIC_PPERL
8416   {
8417     AV* av = (AV*)sv_2mortal((SV*)newAV());
8418     int i = 0,len = 0;
8419     len = 31;
8420 
8421     for (i = 0; i < len ; i++) {
8422       SV *v = newSViv(internal_loopdH[i]);
8423       if (!av_store(av, i, v))
8424       SvREFCNT_dec(v);
8425     }
8426     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
8427   }
8428   return 1;
8429 }
8430 
8431 
_wrap_mismatchI37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8432 SWIGCLASS_STATIC int _wrap_mismatchI37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8433   MAGIC_PPERL
8434   sv_setiv(SvRV(sv),PTR2IV(mismatchI37));
8435   return 1;
8436 }
8437 
8438 
_wrap_mismatchIdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8439 SWIGCLASS_STATIC int _wrap_mismatchIdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8440   MAGIC_PPERL
8441   sv_setiv(SvRV(sv),PTR2IV(mismatchIdH));
8442   return 1;
8443 }
8444 
8445 
_wrap_mismatch1nI37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8446 SWIGCLASS_STATIC int _wrap_mismatch1nI37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8447   MAGIC_PPERL
8448   sv_setiv(SvRV(sv),PTR2IV(mismatch1nI37));
8449   return 1;
8450 }
8451 
8452 
_wrap_mismatch23I37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8453 SWIGCLASS_STATIC int _wrap_mismatch23I37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8454   MAGIC_PPERL
8455   sv_setiv(SvRV(sv),PTR2IV(mismatch23I37));
8456   return 1;
8457 }
8458 
8459 
_wrap_mismatch1nIdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8460 SWIGCLASS_STATIC int _wrap_mismatch1nIdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8461   MAGIC_PPERL
8462   sv_setiv(SvRV(sv),PTR2IV(mismatch1nIdH));
8463   return 1;
8464 }
8465 
8466 
_wrap_mismatch23IdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8467 SWIGCLASS_STATIC int _wrap_mismatch23IdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8468   MAGIC_PPERL
8469   sv_setiv(SvRV(sv),PTR2IV(mismatch23IdH));
8470   return 1;
8471 }
8472 
8473 
_wrap_mismatchH37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8474 SWIGCLASS_STATIC int _wrap_mismatchH37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8475   MAGIC_PPERL
8476   sv_setiv(SvRV(sv),PTR2IV(mismatchH37));
8477   return 1;
8478 }
8479 
8480 
_wrap_mismatchM37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8481 SWIGCLASS_STATIC int _wrap_mismatchM37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8482   MAGIC_PPERL
8483   sv_setiv(SvRV(sv),PTR2IV(mismatchM37));
8484   return 1;
8485 }
8486 
8487 
_wrap_mismatchHdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8488 SWIGCLASS_STATIC int _wrap_mismatchHdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8489   MAGIC_PPERL
8490   sv_setiv(SvRV(sv),PTR2IV(mismatchHdH));
8491   return 1;
8492 }
8493 
8494 
_wrap_mismatchMdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8495 SWIGCLASS_STATIC int _wrap_mismatchMdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8496   MAGIC_PPERL
8497   sv_setiv(SvRV(sv),PTR2IV(mismatchMdH));
8498   return 1;
8499 }
8500 
8501 
_wrap_mismatchExt37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8502 SWIGCLASS_STATIC int _wrap_mismatchExt37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8503   MAGIC_PPERL
8504   sv_setiv(SvRV(sv),PTR2IV(mismatchExt37));
8505   return 1;
8506 }
8507 
8508 
_wrap_mismatchExtdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8509 SWIGCLASS_STATIC int _wrap_mismatchExtdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8510   MAGIC_PPERL
8511   sv_setiv(SvRV(sv),PTR2IV(mismatchExtdH));
8512   return 1;
8513 }
8514 
8515 
_wrap_dangle5_37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8516 SWIGCLASS_STATIC int _wrap_dangle5_37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8517   MAGIC_PPERL
8518   {
8519     AV *arr = (AV*)sv_2mortal((SV*)newAV());
8520     int i,j = 0, len1 = 0, len2 = 0;
8521 
8522     len1 = 7+1;
8523     len2 = 5;
8524 
8525     for (i = 0; i < len1 ; i++) {
8526       AV *vec = newAV();
8527       for (j = 0; j < len2; j++) {
8528         SV *v = newSViv(dangle5_37[i][j]);
8529         if (!av_store(vec, j, v))
8530         SvREFCNT_dec(v);
8531       }
8532       /* store reference to array */
8533       av_store(arr, i, newRV_noinc((SV*) vec));
8534     }
8535 
8536     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) arr )));
8537   }
8538   return 1;
8539 }
8540 
8541 
_wrap_dangle3_37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8542 SWIGCLASS_STATIC int _wrap_dangle3_37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8543   MAGIC_PPERL
8544   {
8545     AV *arr = (AV*)sv_2mortal((SV*)newAV());
8546     int i,j = 0, len1 = 0, len2 = 0;
8547 
8548     len1 = 7+1;
8549     len2 = 5;
8550 
8551     for (i = 0; i < len1 ; i++) {
8552       AV *vec = newAV();
8553       for (j = 0; j < len2; j++) {
8554         SV *v = newSViv(dangle3_37[i][j]);
8555         if (!av_store(vec, j, v))
8556         SvREFCNT_dec(v);
8557       }
8558       /* store reference to array */
8559       av_store(arr, i, newRV_noinc((SV*) vec));
8560     }
8561 
8562     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) arr )));
8563   }
8564   return 1;
8565 }
8566 
8567 
_wrap_dangle3_dH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8568 SWIGCLASS_STATIC int _wrap_dangle3_dH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8569   MAGIC_PPERL
8570   {
8571     AV *arr = (AV*)sv_2mortal((SV*)newAV());
8572     int i,j = 0, len1 = 0, len2 = 0;
8573 
8574     len1 = 7+1;
8575     len2 = 5;
8576 
8577     for (i = 0; i < len1 ; i++) {
8578       AV *vec = newAV();
8579       for (j = 0; j < len2; j++) {
8580         SV *v = newSViv(dangle3_dH[i][j]);
8581         if (!av_store(vec, j, v))
8582         SvREFCNT_dec(v);
8583       }
8584       /* store reference to array */
8585       av_store(arr, i, newRV_noinc((SV*) vec));
8586     }
8587 
8588     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) arr )));
8589   }
8590   return 1;
8591 }
8592 
8593 
_wrap_dangle5_dH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8594 SWIGCLASS_STATIC int _wrap_dangle5_dH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8595   MAGIC_PPERL
8596   {
8597     AV *arr = (AV*)sv_2mortal((SV*)newAV());
8598     int i,j = 0, len1 = 0, len2 = 0;
8599 
8600     len1 = 7+1;
8601     len2 = 5;
8602 
8603     for (i = 0; i < len1 ; i++) {
8604       AV *vec = newAV();
8605       for (j = 0; j < len2; j++) {
8606         SV *v = newSViv(dangle5_dH[i][j]);
8607         if (!av_store(vec, j, v))
8608         SvREFCNT_dec(v);
8609       }
8610       /* store reference to array */
8611       av_store(arr, i, newRV_noinc((SV*) vec));
8612     }
8613 
8614     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) arr )));
8615   }
8616   return 1;
8617 }
8618 
8619 
_wrap_int11_37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8620 SWIGCLASS_STATIC int _wrap_int11_37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8621   MAGIC_PPERL
8622   sv_setiv(SvRV(sv),PTR2IV(int11_37));
8623   return 1;
8624 }
8625 
8626 
_wrap_int11_dH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8627 SWIGCLASS_STATIC int _wrap_int11_dH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8628   MAGIC_PPERL
8629   sv_setiv(SvRV(sv),PTR2IV(int11_dH));
8630   return 1;
8631 }
8632 
8633 
_wrap_int21_37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8634 SWIGCLASS_STATIC int _wrap_int21_37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8635   MAGIC_PPERL
8636   sv_setiv(SvRV(sv),PTR2IV(int21_37));
8637   return 1;
8638 }
8639 
8640 
_wrap_int21_dH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8641 SWIGCLASS_STATIC int _wrap_int21_dH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8642   MAGIC_PPERL
8643   sv_setiv(SvRV(sv),PTR2IV(int21_dH));
8644   return 1;
8645 }
8646 
8647 
_wrap_int22_37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8648 SWIGCLASS_STATIC int _wrap_int22_37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8649   MAGIC_PPERL
8650   sv_setiv(SvRV(sv),PTR2IV(int22_37));
8651   return 1;
8652 }
8653 
8654 
_wrap_int22_dH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8655 SWIGCLASS_STATIC int _wrap_int22_dH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8656   MAGIC_PPERL
8657   sv_setiv(SvRV(sv),PTR2IV(int22_dH));
8658   return 1;
8659 }
8660 
8661 
_wrap_ML_BASE37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8662 SWIGCLASS_STATIC int _wrap_ML_BASE37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8663   MAGIC_PPERL
8664   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(ML_BASE37)))  ;
8665   return 1;
8666 }
8667 
8668 
_wrap_ML_BASEdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8669 SWIGCLASS_STATIC int _wrap_ML_BASEdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8670   MAGIC_PPERL
8671   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(ML_BASEdH)))  ;
8672   return 1;
8673 }
8674 
8675 
_wrap_ML_closing37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8676 SWIGCLASS_STATIC int _wrap_ML_closing37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8677   MAGIC_PPERL
8678   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(ML_closing37)))  ;
8679   return 1;
8680 }
8681 
8682 
_wrap_ML_closingdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8683 SWIGCLASS_STATIC int _wrap_ML_closingdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8684   MAGIC_PPERL
8685   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(ML_closingdH)))  ;
8686   return 1;
8687 }
8688 
8689 
_wrap_ML_intern37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8690 SWIGCLASS_STATIC int _wrap_ML_intern37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8691   MAGIC_PPERL
8692   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(ML_intern37)))  ;
8693   return 1;
8694 }
8695 
8696 
_wrap_ML_interndH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8697 SWIGCLASS_STATIC int _wrap_ML_interndH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8698   MAGIC_PPERL
8699   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(ML_interndH)))  ;
8700   return 1;
8701 }
8702 
8703 
_wrap_TripleC37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8704 SWIGCLASS_STATIC int _wrap_TripleC37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8705   MAGIC_PPERL
8706   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(TripleC37)))  ;
8707   return 1;
8708 }
8709 
8710 
_wrap_TripleCdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8711 SWIGCLASS_STATIC int _wrap_TripleCdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8712   MAGIC_PPERL
8713   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(TripleCdH)))  ;
8714   return 1;
8715 }
8716 
8717 
_wrap_MultipleCA37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8718 SWIGCLASS_STATIC int _wrap_MultipleCA37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8719   MAGIC_PPERL
8720   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MultipleCA37)))  ;
8721   return 1;
8722 }
8723 
8724 
_wrap_MultipleCAdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8725 SWIGCLASS_STATIC int _wrap_MultipleCAdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8726   MAGIC_PPERL
8727   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MultipleCAdH)))  ;
8728   return 1;
8729 }
8730 
8731 
_wrap_MultipleCB37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8732 SWIGCLASS_STATIC int _wrap_MultipleCB37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8733   MAGIC_PPERL
8734   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MultipleCB37)))  ;
8735   return 1;
8736 }
8737 
8738 
_wrap_MultipleCBdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8739 SWIGCLASS_STATIC int _wrap_MultipleCBdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8740   MAGIC_PPERL
8741   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MultipleCBdH)))  ;
8742   return 1;
8743 }
8744 
8745 
_wrap_MAX_NINIO_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8746 SWIGCLASS_STATIC int _wrap_MAX_NINIO_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8747   MAGIC_PPERL
8748   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MAX_NINIO)))  ;
8749   return 1;
8750 }
8751 
8752 
_wrap_ninio37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8753 SWIGCLASS_STATIC int _wrap_ninio37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8754   MAGIC_PPERL
8755   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(ninio37)))  ;
8756   return 1;
8757 }
8758 
8759 
_wrap_niniodH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8760 SWIGCLASS_STATIC int _wrap_niniodH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8761   MAGIC_PPERL
8762   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(niniodH)))  ;
8763   return 1;
8764 }
8765 
8766 
_wrap_TerminalAU37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8767 SWIGCLASS_STATIC int _wrap_TerminalAU37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8768   MAGIC_PPERL
8769   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(TerminalAU37)))  ;
8770   return 1;
8771 }
8772 
8773 
_wrap_TerminalAUdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8774 SWIGCLASS_STATIC int _wrap_TerminalAUdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8775   MAGIC_PPERL
8776   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(TerminalAUdH)))  ;
8777   return 1;
8778 }
8779 
8780 
_wrap_DuplexInit37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8781 SWIGCLASS_STATIC int _wrap_DuplexInit37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8782   MAGIC_PPERL
8783   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(DuplexInit37)))  ;
8784   return 1;
8785 }
8786 
8787 
_wrap_DuplexInitdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8788 SWIGCLASS_STATIC int _wrap_DuplexInitdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8789   MAGIC_PPERL
8790   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(DuplexInitdH)))  ;
8791   return 1;
8792 }
8793 
8794 
_wrap_Tetraloops_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8795 SWIGCLASS_STATIC int _wrap_Tetraloops_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8796   MAGIC_PPERL
8797   {
8798     size_t size = SWIG_strnlen(Tetraloops, 281);
8799 
8800 
8801 
8802     sv_setsv(sv,SWIG_FromCharPtrAndSize(Tetraloops, size))  ;
8803   }
8804   return 1;
8805 }
8806 
8807 
_wrap_Tetraloop37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8808 SWIGCLASS_STATIC int _wrap_Tetraloop37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8809   MAGIC_PPERL
8810   {
8811     AV* av = (AV*)sv_2mortal((SV*)newAV());
8812     int i = 0,len = 0;
8813     len = 40;
8814 
8815     for (i = 0; i < len ; i++) {
8816       SV *v = newSViv(Tetraloop37[i]);
8817       if (!av_store(av, i, v))
8818       SvREFCNT_dec(v);
8819     }
8820     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
8821   }
8822   return 1;
8823 }
8824 
8825 
_wrap_TetraloopdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8826 SWIGCLASS_STATIC int _wrap_TetraloopdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8827   MAGIC_PPERL
8828   {
8829     AV* av = (AV*)sv_2mortal((SV*)newAV());
8830     int i = 0,len = 0;
8831     len = 40;
8832 
8833     for (i = 0; i < len ; i++) {
8834       SV *v = newSViv(TetraloopdH[i]);
8835       if (!av_store(av, i, v))
8836       SvREFCNT_dec(v);
8837     }
8838     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
8839   }
8840   return 1;
8841 }
8842 
8843 
_wrap_Triloops_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8844 SWIGCLASS_STATIC int _wrap_Triloops_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8845   MAGIC_PPERL
8846   {
8847     size_t size = SWIG_strnlen(Triloops, 241);
8848 
8849 
8850 
8851     sv_setsv(sv,SWIG_FromCharPtrAndSize(Triloops, size))  ;
8852   }
8853   return 1;
8854 }
8855 
8856 
_wrap_Triloop37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8857 SWIGCLASS_STATIC int _wrap_Triloop37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8858   MAGIC_PPERL
8859   {
8860     AV* av = (AV*)sv_2mortal((SV*)newAV());
8861     int i = 0,len = 0;
8862     len = 40;
8863 
8864     for (i = 0; i < len ; i++) {
8865       SV *v = newSViv(Triloop37[i]);
8866       if (!av_store(av, i, v))
8867       SvREFCNT_dec(v);
8868     }
8869     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
8870   }
8871   return 1;
8872 }
8873 
8874 
_wrap_TriloopdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8875 SWIGCLASS_STATIC int _wrap_TriloopdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8876   MAGIC_PPERL
8877   {
8878     AV* av = (AV*)sv_2mortal((SV*)newAV());
8879     int i = 0,len = 0;
8880     len = 40;
8881 
8882     for (i = 0; i < len ; i++) {
8883       SV *v = newSViv(TriloopdH[i]);
8884       if (!av_store(av, i, v))
8885       SvREFCNT_dec(v);
8886     }
8887     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
8888   }
8889   return 1;
8890 }
8891 
8892 
_wrap_Hexaloops_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8893 SWIGCLASS_STATIC int _wrap_Hexaloops_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8894   MAGIC_PPERL
8895   {
8896     size_t size = SWIG_strnlen(Hexaloops, 361);
8897 
8898 
8899 
8900     sv_setsv(sv,SWIG_FromCharPtrAndSize(Hexaloops, size))  ;
8901   }
8902   return 1;
8903 }
8904 
8905 
_wrap_Hexaloop37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8906 SWIGCLASS_STATIC int _wrap_Hexaloop37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8907   MAGIC_PPERL
8908   {
8909     AV* av = (AV*)sv_2mortal((SV*)newAV());
8910     int i = 0,len = 0;
8911     len = 40;
8912 
8913     for (i = 0; i < len ; i++) {
8914       SV *v = newSViv(Hexaloop37[i]);
8915       if (!av_store(av, i, v))
8916       SvREFCNT_dec(v);
8917     }
8918     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
8919   }
8920   return 1;
8921 }
8922 
8923 
_wrap_HexaloopdH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8924 SWIGCLASS_STATIC int _wrap_HexaloopdH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8925   MAGIC_PPERL
8926   {
8927     AV* av = (AV*)sv_2mortal((SV*)newAV());
8928     int i = 0,len = 0;
8929     len = 40;
8930 
8931     for (i = 0; i < len ; i++) {
8932       SV *v = newSViv(HexaloopdH[i]);
8933       if (!av_store(av, i, v))
8934       SvREFCNT_dec(v);
8935     }
8936     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
8937   }
8938   return 1;
8939 }
8940 
8941 
_wrap_GQuadAlpha37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8942 SWIGCLASS_STATIC int _wrap_GQuadAlpha37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8943   MAGIC_PPERL
8944   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(GQuadAlpha37)))  ;
8945   return 1;
8946 }
8947 
8948 
_wrap_GQuadAlphadH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8949 SWIGCLASS_STATIC int _wrap_GQuadAlphadH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8950   MAGIC_PPERL
8951   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(GQuadAlphadH)))  ;
8952   return 1;
8953 }
8954 
8955 
_wrap_GQuadBeta37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8956 SWIGCLASS_STATIC int _wrap_GQuadBeta37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8957   MAGIC_PPERL
8958   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(GQuadBeta37)))  ;
8959   return 1;
8960 }
8961 
8962 
_wrap_GQuadBetadH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8963 SWIGCLASS_STATIC int _wrap_GQuadBetadH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8964   MAGIC_PPERL
8965   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(GQuadBetadH)))  ;
8966   return 1;
8967 }
8968 
8969 
_wrap_GQuadLayerMismatch37_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8970 SWIGCLASS_STATIC int _wrap_GQuadLayerMismatch37_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8971   MAGIC_PPERL
8972   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(GQuadLayerMismatch37)))  ;
8973   return 1;
8974 }
8975 
8976 
_wrap_GQuadLayerMismatchH_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8977 SWIGCLASS_STATIC int _wrap_GQuadLayerMismatchH_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8978   MAGIC_PPERL
8979   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(GQuadLayerMismatchH)))  ;
8980   return 1;
8981 }
8982 
8983 
_wrap_GQuadLayerMismatchMax_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8984 SWIGCLASS_STATIC int _wrap_GQuadLayerMismatchMax_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8985   MAGIC_PPERL
8986   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(GQuadLayerMismatchMax)))  ;
8987   return 1;
8988 }
8989 
8990 
_wrap_Tmeasure_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8991 SWIGCLASS_STATIC int _wrap_Tmeasure_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
8992   MAGIC_PPERL
8993   sv_setsv(sv,SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(Tmeasure)))  ;
8994   return 1;
8995 }
8996 
8997 
_wrap_temperature_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))8998 SWIGCLASS_STATIC int _wrap_temperature_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
8999   MAGIC_PPERL
9000   {
9001     vrna_md_defaults_temperature((double)SvNV(sv));
9002   }
9003 fail:
9004   return 1;
9005 }
9006 
9007 
_wrap_temperature_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9008 SWIGCLASS_STATIC int _wrap_temperature_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9009   MAGIC_PPERL
9010   {
9011     sv_setnv(sv, (double) vrna_md_defaults_temperature_get());
9012   }
9013   return 1;
9014 }
9015 
9016 
_wrap_dangles_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9017 SWIGCLASS_STATIC int _wrap_dangles_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9018   MAGIC_PPERL
9019   {
9020     vrna_md_defaults_dangles(SvIV(sv));
9021   }
9022 fail:
9023   return 1;
9024 }
9025 
9026 
_wrap_dangles_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9027 SWIGCLASS_STATIC int _wrap_dangles_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9028   MAGIC_PPERL
9029   {
9030     sv_setiv(sv, (IV) vrna_md_defaults_dangles_get());
9031   }
9032   return 1;
9033 }
9034 
9035 
_wrap_betaScale_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9036 SWIGCLASS_STATIC int _wrap_betaScale_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9037   MAGIC_PPERL
9038   {
9039     vrna_md_defaults_betaScale((double)SvNV(sv));
9040   }
9041 fail:
9042   return 1;
9043 }
9044 
9045 
_wrap_betaScale_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9046 SWIGCLASS_STATIC int _wrap_betaScale_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9047   MAGIC_PPERL
9048   {
9049     sv_setnv(sv, (double) vrna_md_defaults_betaScale_get());
9050   }
9051   return 1;
9052 }
9053 
9054 
_wrap_pf_smooth_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9055 SWIGCLASS_STATIC int _wrap_pf_smooth_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9056   MAGIC_PPERL
9057   {
9058     vrna_md_defaults_pf_smooth(SvIV(sv));
9059   }
9060 fail:
9061   return 1;
9062 }
9063 
9064 
_wrap_pf_smooth_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9065 SWIGCLASS_STATIC int _wrap_pf_smooth_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9066   MAGIC_PPERL
9067   {
9068     sv_setiv(sv, (IV) vrna_md_defaults_pf_smooth_get());
9069   }
9070   return 1;
9071 }
9072 
9073 
_wrap_tetra_loop_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9074 SWIGCLASS_STATIC int _wrap_tetra_loop_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9075   MAGIC_PPERL
9076   {
9077     vrna_md_defaults_special_hp(SvIV(sv));
9078   }
9079 fail:
9080   return 1;
9081 }
9082 
9083 
_wrap_tetra_loop_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9084 SWIGCLASS_STATIC int _wrap_tetra_loop_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9085   MAGIC_PPERL
9086   {
9087     sv_setiv(sv, (IV) vrna_md_defaults_special_hp_get());
9088   }
9089   return 1;
9090 }
9091 
9092 
_wrap_special_hp_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9093 SWIGCLASS_STATIC int _wrap_special_hp_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9094   MAGIC_PPERL
9095   {
9096     vrna_md_defaults_special_hp(SvIV(sv));
9097   }
9098 fail:
9099   return 1;
9100 }
9101 
9102 
_wrap_special_hp_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9103 SWIGCLASS_STATIC int _wrap_special_hp_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9104   MAGIC_PPERL
9105   {
9106     sv_setiv(sv, (IV) vrna_md_defaults_special_hp_get());
9107   }
9108   return 1;
9109 }
9110 
9111 
_wrap_noLonelyPairs_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9112 SWIGCLASS_STATIC int _wrap_noLonelyPairs_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9113   MAGIC_PPERL
9114   {
9115     vrna_md_defaults_noLP(SvIV(sv));
9116   }
9117 fail:
9118   return 1;
9119 }
9120 
9121 
_wrap_noLonelyPairs_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9122 SWIGCLASS_STATIC int _wrap_noLonelyPairs_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9123   MAGIC_PPERL
9124   {
9125     sv_setiv(sv, (IV) vrna_md_defaults_noLP_get());
9126   }
9127   return 1;
9128 }
9129 
9130 
_wrap_noLP_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9131 SWIGCLASS_STATIC int _wrap_noLP_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9132   MAGIC_PPERL
9133   {
9134     vrna_md_defaults_noLP(SvIV(sv));
9135   }
9136 fail:
9137   return 1;
9138 }
9139 
9140 
_wrap_noLP_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9141 SWIGCLASS_STATIC int _wrap_noLP_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9142   MAGIC_PPERL
9143   {
9144     sv_setiv(sv, (IV) vrna_md_defaults_noLP_get());
9145   }
9146   return 1;
9147 }
9148 
9149 
_wrap_noGU_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9150 SWIGCLASS_STATIC int _wrap_noGU_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9151   MAGIC_PPERL
9152   {
9153     vrna_md_defaults_noGU(SvIV(sv));
9154   }
9155 fail:
9156   return 1;
9157 }
9158 
9159 
_wrap_noGU_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9160 SWIGCLASS_STATIC int _wrap_noGU_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9161   MAGIC_PPERL
9162   {
9163     sv_setiv(sv, (IV) vrna_md_defaults_noGU_get());
9164   }
9165   return 1;
9166 }
9167 
9168 
_wrap_no_closingGU_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9169 SWIGCLASS_STATIC int _wrap_no_closingGU_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9170   MAGIC_PPERL
9171   {
9172     vrna_md_defaults_noGUclosure(SvIV(sv));
9173   }
9174 fail:
9175   return 1;
9176 }
9177 
9178 
_wrap_no_closingGU_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9179 SWIGCLASS_STATIC int _wrap_no_closingGU_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9180   MAGIC_PPERL
9181   {
9182     sv_setiv(sv, (IV) vrna_md_defaults_noGUclosure_get());
9183   }
9184   return 1;
9185 }
9186 
9187 
_wrap_noGUclosure_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9188 SWIGCLASS_STATIC int _wrap_noGUclosure_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9189   MAGIC_PPERL
9190   {
9191     vrna_md_defaults_noGUclosure(SvIV(sv));
9192   }
9193 fail:
9194   return 1;
9195 }
9196 
9197 
_wrap_noGUclosure_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9198 SWIGCLASS_STATIC int _wrap_noGUclosure_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9199   MAGIC_PPERL
9200   {
9201     sv_setiv(sv, (IV) vrna_md_defaults_noGUclosure_get());
9202   }
9203   return 1;
9204 }
9205 
9206 
_wrap_logML_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9207 SWIGCLASS_STATIC int _wrap_logML_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9208   MAGIC_PPERL
9209   {
9210     vrna_md_defaults_logML(SvIV(sv));
9211   }
9212 fail:
9213   return 1;
9214 }
9215 
9216 
_wrap_logML_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9217 SWIGCLASS_STATIC int _wrap_logML_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9218   MAGIC_PPERL
9219   {
9220     sv_setiv(sv, (IV) vrna_md_defaults_logML_get());
9221   }
9222   return 1;
9223 }
9224 
9225 
_wrap_circ_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9226 SWIGCLASS_STATIC int _wrap_circ_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9227   MAGIC_PPERL
9228   {
9229     vrna_md_defaults_circ(SvIV(sv));
9230   }
9231 fail:
9232   return 1;
9233 }
9234 
9235 
_wrap_circ_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9236 SWIGCLASS_STATIC int _wrap_circ_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9237   MAGIC_PPERL
9238   {
9239     sv_setiv(sv, (IV) vrna_md_defaults_circ_get());
9240   }
9241   return 1;
9242 }
9243 
9244 
_wrap_gquad_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9245 SWIGCLASS_STATIC int _wrap_gquad_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9246   MAGIC_PPERL
9247   {
9248     vrna_md_defaults_gquad(SvIV(sv));
9249   }
9250 fail:
9251   return 1;
9252 }
9253 
9254 
_wrap_gquad_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9255 SWIGCLASS_STATIC int _wrap_gquad_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9256   MAGIC_PPERL
9257   {
9258     sv_setiv(sv, (IV) vrna_md_defaults_gquad_get());
9259   }
9260   return 1;
9261 }
9262 
9263 
_wrap_uniq_ML_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9264 SWIGCLASS_STATIC int _wrap_uniq_ML_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9265   MAGIC_PPERL
9266   {
9267     vrna_md_defaults_uniq_ML(SvIV(sv));
9268   }
9269 fail:
9270   return 1;
9271 }
9272 
9273 
_wrap_uniq_ML_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9274 SWIGCLASS_STATIC int _wrap_uniq_ML_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9275   MAGIC_PPERL
9276   {
9277     sv_setiv(sv, (IV) vrna_md_defaults_uniq_ML_get());
9278   }
9279   return 1;
9280 }
9281 
9282 
_wrap_energy_set_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9283 SWIGCLASS_STATIC int _wrap_energy_set_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9284   MAGIC_PPERL
9285   {
9286     vrna_md_defaults_energy_set(SvIV(sv));
9287   }
9288 fail:
9289   return 1;
9290 }
9291 
9292 
_wrap_energy_set_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9293 SWIGCLASS_STATIC int _wrap_energy_set_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9294   MAGIC_PPERL
9295   {
9296     sv_setiv(sv, (IV) vrna_md_defaults_energy_set_get());
9297   }
9298   return 1;
9299 }
9300 
9301 
_wrap_backtrack_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9302 SWIGCLASS_STATIC int _wrap_backtrack_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9303   MAGIC_PPERL
9304   {
9305     vrna_md_defaults_backtrack(SvIV(sv));
9306   }
9307 fail:
9308   return 1;
9309 }
9310 
9311 
_wrap_backtrack_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9312 SWIGCLASS_STATIC int _wrap_backtrack_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9313   MAGIC_PPERL
9314   {
9315     sv_setiv(sv, (IV) vrna_md_defaults_backtrack_get());
9316   }
9317   return 1;
9318 }
9319 
9320 
_wrap_backtrack_type_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9321 SWIGCLASS_STATIC int _wrap_backtrack_type_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9322   MAGIC_PPERL
9323   {
9324     char val;
9325     int res = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(sv, &val);
9326     if (!SWIG_IsOK(res)) {
9327       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""backtrack_type""' of type '""char""'");
9328     }
9329     backtrack_type = static_cast< char >(val);
9330   }
9331 fail:
9332   return 1;
9333 }
9334 
9335 
_wrap_backtrack_type_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9336 SWIGCLASS_STATIC int _wrap_backtrack_type_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9337   MAGIC_PPERL
9338   sv_setsv(sv,SWIG_From_char  SWIG_PERL_CALL_ARGS_1(static_cast< char >(backtrack_type)))  ;
9339   return 1;
9340 }
9341 
9342 
_wrap_do_backtrack_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9343 SWIGCLASS_STATIC int _wrap_do_backtrack_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9344   MAGIC_PPERL
9345   {
9346     vrna_md_defaults_compute_bpp(SvIV(sv));
9347   }
9348 fail:
9349   return 1;
9350 }
9351 
9352 
_wrap_do_backtrack_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9353 SWIGCLASS_STATIC int _wrap_do_backtrack_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9354   MAGIC_PPERL
9355   {
9356     sv_setiv(sv, (IV) vrna_md_defaults_compute_bpp_get());
9357   }
9358   return 1;
9359 }
9360 
9361 
_wrap_compute_bpp_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9362 SWIGCLASS_STATIC int _wrap_compute_bpp_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9363   MAGIC_PPERL
9364   {
9365     vrna_md_defaults_compute_bpp(SvIV(sv));
9366   }
9367 fail:
9368   return 1;
9369 }
9370 
9371 
_wrap_compute_bpp_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9372 SWIGCLASS_STATIC int _wrap_compute_bpp_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9373   MAGIC_PPERL
9374   {
9375     sv_setiv(sv, (IV) vrna_md_defaults_compute_bpp_get());
9376   }
9377   return 1;
9378 }
9379 
9380 
_wrap_max_bp_span_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9381 SWIGCLASS_STATIC int _wrap_max_bp_span_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9382   MAGIC_PPERL
9383   {
9384     vrna_md_defaults_max_bp_span(SvIV(sv));
9385   }
9386 fail:
9387   return 1;
9388 }
9389 
9390 
_wrap_max_bp_span_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9391 SWIGCLASS_STATIC int _wrap_max_bp_span_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9392   MAGIC_PPERL
9393   {
9394     sv_setiv(sv, (IV) vrna_md_defaults_max_bp_span_get());
9395   }
9396   return 1;
9397 }
9398 
9399 
_wrap_min_loop_size_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9400 SWIGCLASS_STATIC int _wrap_min_loop_size_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9401   MAGIC_PPERL
9402   {
9403     vrna_md_defaults_min_loop_size(SvIV(sv));
9404   }
9405 fail:
9406   return 1;
9407 }
9408 
9409 
_wrap_min_loop_size_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9410 SWIGCLASS_STATIC int _wrap_min_loop_size_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9411   MAGIC_PPERL
9412   {
9413     sv_setiv(sv, (IV) vrna_md_defaults_min_loop_size_get());
9414   }
9415   return 1;
9416 }
9417 
9418 
_wrap_window_size_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9419 SWIGCLASS_STATIC int _wrap_window_size_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9420   MAGIC_PPERL
9421   {
9422     vrna_md_defaults_window_size(SvIV(sv));
9423   }
9424 fail:
9425   return 1;
9426 }
9427 
9428 
_wrap_window_size_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9429 SWIGCLASS_STATIC int _wrap_window_size_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9430   MAGIC_PPERL
9431   {
9432     sv_setiv(sv, (IV) vrna_md_defaults_window_size_get());
9433   }
9434   return 1;
9435 }
9436 
9437 
_wrap_oldAliEn_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9438 SWIGCLASS_STATIC int _wrap_oldAliEn_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9439   MAGIC_PPERL
9440   {
9441     vrna_md_defaults_oldAliEn(SvIV(sv));
9442   }
9443 fail:
9444   return 1;
9445 }
9446 
9447 
_wrap_oldAliEn_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9448 SWIGCLASS_STATIC int _wrap_oldAliEn_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9449   MAGIC_PPERL
9450   {
9451     sv_setiv(sv, (IV) vrna_md_defaults_oldAliEn_get());
9452   }
9453   return 1;
9454 }
9455 
9456 
_wrap_ribo_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9457 SWIGCLASS_STATIC int _wrap_ribo_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9458   MAGIC_PPERL
9459   {
9460     vrna_md_defaults_ribo(SvIV(sv));
9461   }
9462 fail:
9463   return 1;
9464 }
9465 
9466 
_wrap_ribo_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9467 SWIGCLASS_STATIC int _wrap_ribo_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9468   MAGIC_PPERL
9469   {
9470     sv_setiv(sv, (IV) vrna_md_defaults_ribo_get());
9471   }
9472   return 1;
9473 }
9474 
9475 
_wrap_cv_fact_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9476 SWIGCLASS_STATIC int _wrap_cv_fact_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9477   MAGIC_PPERL
9478   {
9479     vrna_md_defaults_cv_fact((double)SvNV(sv));
9480   }
9481 fail:
9482   return 1;
9483 }
9484 
9485 
_wrap_cv_fact_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9486 SWIGCLASS_STATIC int _wrap_cv_fact_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9487   MAGIC_PPERL
9488   {
9489     sv_setnv(sv, (double) vrna_md_defaults_cv_fact_get());
9490   }
9491   return 1;
9492 }
9493 
9494 
_wrap_nc_fact_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9495 SWIGCLASS_STATIC int _wrap_nc_fact_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9496   MAGIC_PPERL
9497   {
9498     vrna_md_defaults_nc_fact((double)SvNV(sv));
9499   }
9500 fail:
9501   return 1;
9502 }
9503 
9504 
_wrap_nc_fact_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9505 SWIGCLASS_STATIC int _wrap_nc_fact_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9506   MAGIC_PPERL
9507   {
9508     sv_setnv(sv, (double) vrna_md_defaults_nc_fact_get());
9509   }
9510   return 1;
9511 }
9512 
9513 
_wrap_sfact_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9514 SWIGCLASS_STATIC int _wrap_sfact_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9515   MAGIC_PPERL
9516   {
9517     vrna_md_defaults_sfact((double)SvNV(sv));
9518   }
9519 fail:
9520   return 1;
9521 }
9522 
9523 
_wrap_sfact_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9524 SWIGCLASS_STATIC int _wrap_sfact_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9525   MAGIC_PPERL
9526   {
9527     sv_setnv(sv, (double) vrna_md_defaults_sfact_get());
9528   }
9529   return 1;
9530 }
9531 
9532 
_wrap_pf_scale_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9533 SWIGCLASS_STATIC int _wrap_pf_scale_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9534   MAGIC_PPERL
9535   {
9536     double val;
9537     int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(sv, &val);
9538     if (!SWIG_IsOK(res)) {
9539       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""pf_scale""' of type '""double""'");
9540     }
9541     pf_scale = static_cast< double >(val);
9542   }
9543 fail:
9544   return 1;
9545 }
9546 
9547 
_wrap_pf_scale_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9548 SWIGCLASS_STATIC int _wrap_pf_scale_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9549   MAGIC_PPERL
9550   sv_setsv(sv,SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(pf_scale)))  ;
9551   return 1;
9552 }
9553 
9554 
_wrap_nonstandards_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9555 SWIGCLASS_STATIC int _wrap_nonstandards_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9556   MAGIC_PPERL
9557   {
9558     char *cptr = 0; size_t csize = 0; int alloc = SWIG_NEWOBJ;
9559     int res = SWIG_AsCharPtrAndSize(sv, &cptr, &csize, &alloc);
9560     if (!SWIG_IsOK(res)) {
9561       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""nonstandards""' of type '""char *""'");
9562     }
9563     if (nonstandards) delete[] nonstandards;
9564     if (alloc == SWIG_NEWOBJ) {
9565       nonstandards = cptr;
9566     } else {
9567       nonstandards = csize ? (char *)reinterpret_cast< char* >(memcpy(new char[csize], cptr, sizeof(char)*(csize))) : 0;
9568     }
9569   }
9570 fail:
9571   return 1;
9572 }
9573 
9574 
_wrap_nonstandards_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9575 SWIGCLASS_STATIC int _wrap_nonstandards_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9576   MAGIC_PPERL
9577   sv_setsv(sv,SWIG_FromCharPtr(nonstandards))  ;
9578   return 1;
9579 }
9580 
9581 
_wrap_xsubi_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9582 SWIGCLASS_STATIC int _wrap_xsubi_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9583   MAGIC_PPERL
9584   {
9585     unsigned short *inp = 0;
9586     int res = SWIG_ConvertPtr(sv, SWIG_as_voidptrptr(&inp), SWIGTYPE_p_unsigned_short,  0 );
9587     if (!SWIG_IsOK(res)) {
9588       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""xsubi""' of type '""unsigned short [3]""'");
9589     } else if (inp) {
9590       size_t ii = 0;
9591       for (; ii < (size_t)3; ++ii) *(unsigned short *)&xsubi[ii] = *((unsigned short *)inp + ii);
9592     } else {
9593       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in variable '""xsubi""' of type '""unsigned short [3]""'");
9594     }
9595   }
9596 fail:
9597   return 1;
9598 }
9599 
9600 
_wrap_xsubi_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9601 SWIGCLASS_STATIC int _wrap_xsubi_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9602   MAGIC_PPERL
9603   sv_setiv(SvRV(sv),PTR2IV(xsubi));
9604   return 1;
9605 }
9606 
9607 
_wrap_rna_plot_type_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9608 SWIGCLASS_STATIC int _wrap_rna_plot_type_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9609   MAGIC_PPERL
9610   {
9611     int val;
9612     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
9613     if (!SWIG_IsOK(res)) {
9614       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""rna_plot_type""' of type '""int""'");
9615     }
9616     rna_plot_type = static_cast< int >(val);
9617   }
9618 fail:
9619   return 1;
9620 }
9621 
9622 
_wrap_rna_plot_type_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9623 SWIGCLASS_STATIC int _wrap_rna_plot_type_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9624   MAGIC_PPERL
9625   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(rna_plot_type)))  ;
9626   return 1;
9627 }
9628 
9629 
_wrap_cut_point_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9630 SWIGCLASS_STATIC int _wrap_cut_point_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9631   MAGIC_PPERL
9632   {
9633     int val;
9634     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
9635     if (!SWIG_IsOK(res)) {
9636       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""cut_point""' of type '""int""'");
9637     }
9638     cut_point = static_cast< int >(val);
9639   }
9640 fail:
9641   return 1;
9642 }
9643 
9644 
_wrap_cut_point_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9645 SWIGCLASS_STATIC int _wrap_cut_point_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9646   MAGIC_PPERL
9647   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(cut_point)))  ;
9648   return 1;
9649 }
9650 
9651 
_wrap_eos_debug_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9652 SWIGCLASS_STATIC int _wrap_eos_debug_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9653   MAGIC_PPERL
9654   {
9655     int val;
9656     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
9657     if (!SWIG_IsOK(res)) {
9658       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""eos_debug""' of type '""int""'");
9659     }
9660     eos_debug = static_cast< int >(val);
9661   }
9662 fail:
9663   return 1;
9664 }
9665 
9666 
_wrap_eos_debug_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9667 SWIGCLASS_STATIC int _wrap_eos_debug_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9668   MAGIC_PPERL
9669   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(eos_debug)))  ;
9670   return 1;
9671 }
9672 
9673 
_wrap_st_back_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9674 SWIGCLASS_STATIC int _wrap_st_back_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9675   MAGIC_PPERL
9676   {
9677     int val;
9678     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
9679     if (!SWIG_IsOK(res)) {
9680       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""st_back""' of type '""int""'");
9681     }
9682     st_back = static_cast< int >(val);
9683   }
9684 fail:
9685   return 1;
9686 }
9687 
9688 
_wrap_st_back_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9689 SWIGCLASS_STATIC int _wrap_st_back_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9690   MAGIC_PPERL
9691   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(st_back)))  ;
9692   return 1;
9693 }
9694 
9695 
_wrap_mirnatog_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9696 SWIGCLASS_STATIC int _wrap_mirnatog_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9697   MAGIC_PPERL
9698   {
9699     int val;
9700     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
9701     if (!SWIG_IsOK(res)) {
9702       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""mirnatog""' of type '""int""'");
9703     }
9704     mirnatog = static_cast< int >(val);
9705   }
9706 fail:
9707   return 1;
9708 }
9709 
9710 
_wrap_mirnatog_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9711 SWIGCLASS_STATIC int _wrap_mirnatog_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9712   MAGIC_PPERL
9713   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(mirnatog)))  ;
9714   return 1;
9715 }
9716 
9717 
_wrap_F_monomer_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9718 SWIGCLASS_STATIC int _wrap_F_monomer_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9719   MAGIC_PPERL
9720   {
9721     double *inp = 0;
9722     int res = SWIG_ConvertPtr(sv, SWIG_as_voidptrptr(&inp), SWIGTYPE_p_double,  0 );
9723     if (!SWIG_IsOK(res)) {
9724       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""F_monomer""' of type '""double [2]""'");
9725     } else if (inp) {
9726       size_t ii = 0;
9727       for (; ii < (size_t)2; ++ii) *(double *)&F_monomer[ii] = *((double *)inp + ii);
9728     } else {
9729       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in variable '""F_monomer""' of type '""double [2]""'");
9730     }
9731   }
9732 fail:
9733   return 1;
9734 }
9735 
9736 
_wrap_F_monomer_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9737 SWIGCLASS_STATIC int _wrap_F_monomer_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9738   MAGIC_PPERL
9739   sv_setiv(SvRV(sv),PTR2IV(F_monomer));
9740   return 1;
9741 }
9742 
9743 
_wrap_subopt_sorted_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9744 SWIGCLASS_STATIC int _wrap_subopt_sorted_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9745   MAGIC_PPERL
9746   {
9747     int val;
9748     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
9749     if (!SWIG_IsOK(res)) {
9750       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""subopt_sorted""' of type '""int""'");
9751     }
9752     subopt_sorted = static_cast< int >(val);
9753   }
9754 fail:
9755   return 1;
9756 }
9757 
9758 
_wrap_subopt_sorted_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9759 SWIGCLASS_STATIC int _wrap_subopt_sorted_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9760   MAGIC_PPERL
9761   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(subopt_sorted)))  ;
9762   return 1;
9763 }
9764 
9765 
_wrap_print_energy_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9766 SWIGCLASS_STATIC int _wrap_print_energy_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9767   MAGIC_PPERL
9768   {
9769     double val;
9770     int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(sv, &val);
9771     if (!SWIG_IsOK(res)) {
9772       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""print_energy""' of type '""double""'");
9773     }
9774     print_energy = static_cast< double >(val);
9775   }
9776 fail:
9777   return 1;
9778 }
9779 
9780 
_wrap_print_energy_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9781 SWIGCLASS_STATIC int _wrap_print_energy_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9782   MAGIC_PPERL
9783   sv_setsv(sv,SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(print_energy)))  ;
9784   return 1;
9785 }
9786 
9787 
_wrap_density_of_states_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9788 SWIGCLASS_STATIC int _wrap_density_of_states_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9789   MAGIC_PPERL
9790   {
9791     int *inp = 0;
9792     int res = SWIG_ConvertPtr(sv, SWIG_as_voidptrptr(&inp), SWIGTYPE_p_int,  0 );
9793     if (!SWIG_IsOK(res)) {
9794       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""density_of_states""' of type '""int [1000+1]""'");
9795     } else if (inp) {
9796       size_t ii = 0;
9797       for (; ii < (size_t)1000+1; ++ii) *(int *)&density_of_states[ii] = *((int *)inp + ii);
9798     } else {
9799       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in variable '""density_of_states""' of type '""int [1000+1]""'");
9800     }
9801   }
9802 fail:
9803   return 1;
9804 }
9805 
9806 
_wrap_density_of_states_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9807 SWIGCLASS_STATIC int _wrap_density_of_states_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9808   MAGIC_PPERL
9809   {
9810     AV* av = (AV*)sv_2mortal((SV*)newAV());
9811     int i = 0,len = 0;
9812     len = 1000+1;
9813 
9814     for (i = 0; i < len ; i++) {
9815       SV *v = newSViv(density_of_states[i]);
9816       if (!av_store(av, i, v))
9817       SvREFCNT_dec(v);
9818     }
9819     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
9820   }
9821   return 1;
9822 }
9823 
9824 
_wrap_symbolset_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9825 SWIGCLASS_STATIC int _wrap_symbolset_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9826   MAGIC_PPERL
9827   {
9828     char *cptr = 0; size_t csize = 0; int alloc = SWIG_NEWOBJ;
9829     int res = SWIG_AsCharPtrAndSize(sv, &cptr, &csize, &alloc);
9830     if (!SWIG_IsOK(res)) {
9831       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""symbolset""' of type '""char *""'");
9832     }
9833     if (symbolset) delete[] symbolset;
9834     if (alloc == SWIG_NEWOBJ) {
9835       symbolset = cptr;
9836     } else {
9837       symbolset = csize ? (char *)reinterpret_cast< char* >(memcpy(new char[csize], cptr, sizeof(char)*(csize))) : 0;
9838     }
9839   }
9840 fail:
9841   return 1;
9842 }
9843 
9844 
_wrap_symbolset_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9845 SWIGCLASS_STATIC int _wrap_symbolset_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9846   MAGIC_PPERL
9847   sv_setsv(sv,SWIG_FromCharPtr(symbolset))  ;
9848   return 1;
9849 }
9850 
9851 
_wrap_final_cost_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9852 SWIGCLASS_STATIC int _wrap_final_cost_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9853   MAGIC_PPERL
9854   {
9855     float val;
9856     int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(sv, &val);
9857     if (!SWIG_IsOK(res)) {
9858       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""final_cost""' of type '""float""'");
9859     }
9860     final_cost = static_cast< float >(val);
9861   }
9862 fail:
9863   return 1;
9864 }
9865 
9866 
_wrap_final_cost_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9867 SWIGCLASS_STATIC int _wrap_final_cost_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9868   MAGIC_PPERL
9869   sv_setsv(sv,SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(final_cost)))  ;
9870   return 1;
9871 }
9872 
9873 
_wrap_give_up_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9874 SWIGCLASS_STATIC int _wrap_give_up_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9875   MAGIC_PPERL
9876   {
9877     int val;
9878     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
9879     if (!SWIG_IsOK(res)) {
9880       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""give_up""' of type '""int""'");
9881     }
9882     give_up = static_cast< int >(val);
9883   }
9884 fail:
9885   return 1;
9886 }
9887 
9888 
_wrap_give_up_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9889 SWIGCLASS_STATIC int _wrap_give_up_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9890   MAGIC_PPERL
9891   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(give_up)))  ;
9892   return 1;
9893 }
9894 
9895 
_wrap_inv_verbose_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9896 SWIGCLASS_STATIC int _wrap_inv_verbose_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9897   MAGIC_PPERL
9898   {
9899     int val;
9900     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
9901     if (!SWIG_IsOK(res)) {
9902       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""inv_verbose""' of type '""int""'");
9903     }
9904     inv_verbose = static_cast< int >(val);
9905   }
9906 fail:
9907   return 1;
9908 }
9909 
9910 
_wrap_inv_verbose_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9911 SWIGCLASS_STATIC int _wrap_inv_verbose_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9912   MAGIC_PPERL
9913   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(inv_verbose)))  ;
9914   return 1;
9915 }
9916 
9917 
_wrap_loop_size_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9918 SWIGCLASS_STATIC int _wrap_loop_size_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9919   MAGIC_PPERL
9920   {
9921     int *inp = 0;
9922     int res = SWIG_ConvertPtr(sv, SWIG_as_voidptrptr(&inp), SWIGTYPE_p_int,  0 );
9923     if (!SWIG_IsOK(res)) {
9924       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""loop_size""' of type '""int [1000]""'");
9925     } else if (inp) {
9926       size_t ii = 0;
9927       for (; ii < (size_t)1000; ++ii) *(int *)&loop_size[ii] = *((int *)inp + ii);
9928     } else {
9929       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in variable '""loop_size""' of type '""int [1000]""'");
9930     }
9931   }
9932 fail:
9933   return 1;
9934 }
9935 
9936 
_wrap_loop_size_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9937 SWIGCLASS_STATIC int _wrap_loop_size_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9938   MAGIC_PPERL
9939   {
9940     AV* av = (AV*)sv_2mortal((SV*)newAV());
9941     int i = 0,len = 0;
9942     len = 1000;
9943 
9944     for (i = 0; i < len ; i++) {
9945       SV *v = newSViv(loop_size[i]);
9946       if (!av_store(av, i, v))
9947       SvREFCNT_dec(v);
9948     }
9949     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
9950   }
9951   return 1;
9952 }
9953 
9954 
_wrap_helix_size_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9955 SWIGCLASS_STATIC int _wrap_helix_size_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9956   MAGIC_PPERL
9957   {
9958     int *inp = 0;
9959     int res = SWIG_ConvertPtr(sv, SWIG_as_voidptrptr(&inp), SWIGTYPE_p_int,  0 );
9960     if (!SWIG_IsOK(res)) {
9961       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""helix_size""' of type '""int [1000]""'");
9962     } else if (inp) {
9963       size_t ii = 0;
9964       for (; ii < (size_t)1000; ++ii) *(int *)&helix_size[ii] = *((int *)inp + ii);
9965     } else {
9966       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in variable '""helix_size""' of type '""int [1000]""'");
9967     }
9968   }
9969 fail:
9970   return 1;
9971 }
9972 
9973 
_wrap_helix_size_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9974 SWIGCLASS_STATIC int _wrap_helix_size_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
9975   MAGIC_PPERL
9976   {
9977     AV* av = (AV*)sv_2mortal((SV*)newAV());
9978     int i = 0,len = 0;
9979     len = 1000;
9980 
9981     for (i = 0; i < len ; i++) {
9982       SV *v = newSViv(helix_size[i]);
9983       if (!av_store(av, i, v))
9984       SvREFCNT_dec(v);
9985     }
9986     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
9987   }
9988   return 1;
9989 }
9990 
9991 
_wrap_loop_degree_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))9992 SWIGCLASS_STATIC int _wrap_loop_degree_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
9993   MAGIC_PPERL
9994   {
9995     int *inp = 0;
9996     int res = SWIG_ConvertPtr(sv, SWIG_as_voidptrptr(&inp), SWIGTYPE_p_int,  0 );
9997     if (!SWIG_IsOK(res)) {
9998       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""loop_degree""' of type '""int [1000]""'");
9999     } else if (inp) {
10000       size_t ii = 0;
10001       for (; ii < (size_t)1000; ++ii) *(int *)&loop_degree[ii] = *((int *)inp + ii);
10002     } else {
10003       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in variable '""loop_degree""' of type '""int [1000]""'");
10004     }
10005   }
10006 fail:
10007   return 1;
10008 }
10009 
10010 
_wrap_loop_degree_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10011 SWIGCLASS_STATIC int _wrap_loop_degree_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
10012   MAGIC_PPERL
10013   {
10014     AV* av = (AV*)sv_2mortal((SV*)newAV());
10015     int i = 0,len = 0;
10016     len = 1000;
10017 
10018     for (i = 0; i < len ; i++) {
10019       SV *v = newSViv(loop_degree[i]);
10020       if (!av_store(av, i, v))
10021       SvREFCNT_dec(v);
10022     }
10023     sv_setsv(sv, sv_2mortal(newRV_noinc((SV*) av )));
10024   }
10025   return 1;
10026 }
10027 
10028 
_wrap_loops_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10029 SWIGCLASS_STATIC int _wrap_loops_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
10030   MAGIC_PPERL
10031   {
10032     int val;
10033     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
10034     if (!SWIG_IsOK(res)) {
10035       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""loops""' of type '""int""'");
10036     }
10037     loops = static_cast< int >(val);
10038   }
10039 fail:
10040   return 1;
10041 }
10042 
10043 
_wrap_loops_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10044 SWIGCLASS_STATIC int _wrap_loops_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
10045   MAGIC_PPERL
10046   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(loops)))  ;
10047   return 1;
10048 }
10049 
10050 
_wrap_unpaired_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10051 SWIGCLASS_STATIC int _wrap_unpaired_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
10052   MAGIC_PPERL
10053   {
10054     int val;
10055     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
10056     if (!SWIG_IsOK(res)) {
10057       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""unpaired""' of type '""int""'");
10058     }
10059     unpaired = static_cast< int >(val);
10060   }
10061 fail:
10062   return 1;
10063 }
10064 
10065 
_wrap_unpaired_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10066 SWIGCLASS_STATIC int _wrap_unpaired_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
10067   MAGIC_PPERL
10068   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(unpaired)))  ;
10069   return 1;
10070 }
10071 
10072 
_wrap_pairs_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10073 SWIGCLASS_STATIC int _wrap_pairs_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
10074   MAGIC_PPERL
10075   {
10076     int val;
10077     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
10078     if (!SWIG_IsOK(res)) {
10079       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""pairs""' of type '""int""'");
10080     }
10081     pairs = static_cast< int >(val);
10082   }
10083 fail:
10084   return 1;
10085 }
10086 
10087 
_wrap_pairs_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10088 SWIGCLASS_STATIC int _wrap_pairs_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
10089   MAGIC_PPERL
10090   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(pairs)))  ;
10091   return 1;
10092 }
10093 
10094 
_wrap_edit_backtrack_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10095 SWIGCLASS_STATIC int _wrap_edit_backtrack_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
10096   MAGIC_PPERL
10097   {
10098     int val;
10099     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
10100     if (!SWIG_IsOK(res)) {
10101       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""edit_backtrack""' of type '""int""'");
10102     }
10103     edit_backtrack = static_cast< int >(val);
10104   }
10105 fail:
10106   return 1;
10107 }
10108 
10109 
_wrap_edit_backtrack_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10110 SWIGCLASS_STATIC int _wrap_edit_backtrack_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
10111   MAGIC_PPERL
10112   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(edit_backtrack)))  ;
10113   return 1;
10114 }
10115 
10116 
_wrap_aligned_line_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10117 SWIGCLASS_STATIC int _wrap_aligned_line_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
10118   MAGIC_PPERL
10119   {
10120     char * *inp = 0;
10121     int res = SWIG_ConvertPtr(sv, SWIG_as_voidptrptr(&inp), SWIGTYPE_p_p_char,  0 );
10122     if (!SWIG_IsOK(res)) {
10123       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""aligned_line""' of type '""char *[2]""'");
10124     } else if (inp) {
10125       size_t ii = 0;
10126       for (; ii < (size_t)2; ++ii) *(char * *)&aligned_line[ii] = *((char * *)inp + ii);
10127     } else {
10128       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in variable '""aligned_line""' of type '""char *[2]""'");
10129     }
10130   }
10131 fail:
10132   return 1;
10133 }
10134 
10135 
_wrap_aligned_line_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10136 SWIGCLASS_STATIC int _wrap_aligned_line_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
10137   MAGIC_PPERL
10138   sv_setiv(SvRV(sv),PTR2IV(aligned_line));
10139   return 1;
10140 }
10141 
10142 
_wrap_cost_matrix_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10143 SWIGCLASS_STATIC int _wrap_cost_matrix_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
10144   MAGIC_PPERL
10145   {
10146     int val;
10147     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
10148     if (!SWIG_IsOK(res)) {
10149       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""cost_matrix""' of type '""int""'");
10150     }
10151     cost_matrix = static_cast< int >(val);
10152   }
10153 fail:
10154   return 1;
10155 }
10156 
10157 
_wrap_cost_matrix_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10158 SWIGCLASS_STATIC int _wrap_cost_matrix_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
10159   MAGIC_PPERL
10160   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(cost_matrix)))  ;
10161   return 1;
10162 }
10163 
10164 
_wrap_base_pair_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10165 SWIGCLASS_STATIC int _wrap_base_pair_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
10166   MAGIC_PPERL
10167   sv_setiv(SvRV(sv),PTR2IV(base_pair));
10168   return 1;
10169 }
10170 
10171 
_wrap_pr_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10172 SWIGCLASS_STATIC int _wrap_pr_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
10173   MAGIC_PPERL
10174   sv_setiv(SvRV(sv),PTR2IV(pr));
10175   return 1;
10176 }
10177 
10178 
_wrap_iindx_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10179 SWIGCLASS_STATIC int _wrap_iindx_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
10180   MAGIC_PPERL
10181   sv_setiv(SvRV(sv),PTR2IV(iindx));
10182   return 1;
10183 }
10184 
10185 
_wrap_fold_constrained_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10186 SWIGCLASS_STATIC int _wrap_fold_constrained_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
10187   MAGIC_PPERL
10188   {
10189     int val;
10190     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
10191     if (!SWIG_IsOK(res)) {
10192       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""fold_constrained""' of type '""int""'");
10193     }
10194     fold_constrained = static_cast< int >(val);
10195   }
10196 fail:
10197   return 1;
10198 }
10199 
10200 
_wrap_fold_constrained_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10201 SWIGCLASS_STATIC int _wrap_fold_constrained_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
10202   MAGIC_PPERL
10203   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(fold_constrained)))  ;
10204   return 1;
10205 }
10206 
10207 
_wrap_csv_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10208 SWIGCLASS_STATIC int _wrap_csv_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
10209   MAGIC_PPERL
10210   {
10211     int val;
10212     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
10213     if (!SWIG_IsOK(res)) {
10214       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""csv""' of type '""int""'");
10215     }
10216     csv = static_cast< int >(val);
10217   }
10218 fail:
10219   return 1;
10220 }
10221 
10222 
_wrap_csv_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10223 SWIGCLASS_STATIC int _wrap_csv_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
10224   MAGIC_PPERL
10225   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(csv)))  ;
10226   return 1;
10227 }
10228 
10229 
_wrap_RibosumFile_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10230 SWIGCLASS_STATIC int _wrap_RibosumFile_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
10231   MAGIC_PPERL
10232   {
10233     char *cptr = 0; size_t csize = 0; int alloc = SWIG_NEWOBJ;
10234     int res = SWIG_AsCharPtrAndSize(sv, &cptr, &csize, &alloc);
10235     if (!SWIG_IsOK(res)) {
10236       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""RibosumFile""' of type '""char *""'");
10237     }
10238     if (RibosumFile) delete[] RibosumFile;
10239     if (alloc == SWIG_NEWOBJ) {
10240       RibosumFile = cptr;
10241     } else {
10242       RibosumFile = csize ? (char *)reinterpret_cast< char* >(memcpy(new char[csize], cptr, sizeof(char)*(csize))) : 0;
10243     }
10244   }
10245 fail:
10246   return 1;
10247 }
10248 
10249 
_wrap_RibosumFile_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10250 SWIGCLASS_STATIC int _wrap_RibosumFile_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
10251   MAGIC_PPERL
10252   sv_setsv(sv,SWIG_FromCharPtr(RibosumFile))  ;
10253   return 1;
10254 }
10255 
10256 
_wrap_james_rule_set(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10257 SWIGCLASS_STATIC int _wrap_james_rule_set(pTHX_ SV* sv, MAGIC * SWIGUNUSEDPARM(mg)) {
10258   MAGIC_PPERL
10259   {
10260     int val;
10261     int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(sv, &val);
10262     if (!SWIG_IsOK(res)) {
10263       SWIG_exception_fail(SWIG_ArgError(res), "in variable '""james_rule""' of type '""int""'");
10264     }
10265     james_rule = static_cast< int >(val);
10266   }
10267 fail:
10268   return 1;
10269 }
10270 
10271 
_wrap_james_rule_get(pTHX_ SV * sv,MAGIC * SWIGUNUSEDPARM (mg))10272 SWIGCLASS_STATIC int _wrap_james_rule_get(pTHX_ SV *sv, MAGIC *SWIGUNUSEDPARM(mg)) {
10273   MAGIC_PPERL
10274   sv_setsv(sv,SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(james_rule)))  ;
10275   return 1;
10276 }
10277 
10278 
10279 
10280 
10281 #ifdef PERL_OBJECT
10282 };
10283 #endif
10284 
10285 #ifdef __cplusplus
10286 }
10287 #endif
10288 
10289 #ifdef __cplusplus
10290 extern "C" {
10291 #endif
XS(_wrap_new_intP)10292 XS(_wrap_new_intP) {
10293   {
10294     size_t arg1 ;
10295     size_t val1 ;
10296     int ecode1 = 0 ;
10297     int argvi = 0;
10298     int *result = 0 ;
10299     dXSARGS;
10300 
10301     if ((items < 1) || (items > 1)) {
10302       SWIG_croak("Usage: new_intP(nelements);");
10303     }
10304     ecode1 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
10305     if (!SWIG_IsOK(ecode1)) {
10306       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_intP" "', argument " "1"" of type '" "size_t""'");
10307     }
10308     arg1 = static_cast< size_t >(val1);
10309     result = (int *)new_intP(arg1);
10310     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_int, 0 | 0); argvi++ ;
10311 
10312     XSRETURN(argvi);
10313   fail:
10314 
10315     SWIG_croak_null();
10316   }
10317 }
10318 
10319 
XS(_wrap_delete_intP)10320 XS(_wrap_delete_intP) {
10321   {
10322     int *arg1 = (int *) 0 ;
10323     void *argp1 = 0 ;
10324     int res1 = 0 ;
10325     int argvi = 0;
10326     dXSARGS;
10327 
10328     if ((items < 1) || (items > 1)) {
10329       SWIG_croak("Usage: delete_intP(ary);");
10330     }
10331     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_int, 0 |  0 );
10332     if (!SWIG_IsOK(res1)) {
10333       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_intP" "', argument " "1"" of type '" "int *""'");
10334     }
10335     arg1 = reinterpret_cast< int * >(argp1);
10336     delete_intP(arg1);
10337     ST(argvi) = &PL_sv_undef;
10338 
10339     XSRETURN(argvi);
10340   fail:
10341 
10342     SWIG_croak_null();
10343   }
10344 }
10345 
10346 
XS(_wrap_intP_getitem)10347 XS(_wrap_intP_getitem) {
10348   {
10349     int *arg1 = (int *) 0 ;
10350     size_t arg2 ;
10351     void *argp1 = 0 ;
10352     int res1 = 0 ;
10353     size_t val2 ;
10354     int ecode2 = 0 ;
10355     int argvi = 0;
10356     int result;
10357     dXSARGS;
10358 
10359     if ((items < 2) || (items > 2)) {
10360       SWIG_croak("Usage: intP_getitem(ary,index);");
10361     }
10362     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_int, 0 |  0 );
10363     if (!SWIG_IsOK(res1)) {
10364       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "intP_getitem" "', argument " "1"" of type '" "int *""'");
10365     }
10366     arg1 = reinterpret_cast< int * >(argp1);
10367     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10368     if (!SWIG_IsOK(ecode2)) {
10369       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "intP_getitem" "', argument " "2"" of type '" "size_t""'");
10370     }
10371     arg2 = static_cast< size_t >(val2);
10372     result = (int)intP_getitem(arg1,arg2);
10373     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
10374 
10375 
10376     XSRETURN(argvi);
10377   fail:
10378 
10379 
10380     SWIG_croak_null();
10381   }
10382 }
10383 
10384 
XS(_wrap_intP_setitem)10385 XS(_wrap_intP_setitem) {
10386   {
10387     int *arg1 = (int *) 0 ;
10388     size_t arg2 ;
10389     int arg3 ;
10390     void *argp1 = 0 ;
10391     int res1 = 0 ;
10392     size_t val2 ;
10393     int ecode2 = 0 ;
10394     int val3 ;
10395     int ecode3 = 0 ;
10396     int argvi = 0;
10397     dXSARGS;
10398 
10399     if ((items < 3) || (items > 3)) {
10400       SWIG_croak("Usage: intP_setitem(ary,index,value);");
10401     }
10402     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_int, 0 |  0 );
10403     if (!SWIG_IsOK(res1)) {
10404       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "intP_setitem" "', argument " "1"" of type '" "int *""'");
10405     }
10406     arg1 = reinterpret_cast< int * >(argp1);
10407     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10408     if (!SWIG_IsOK(ecode2)) {
10409       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "intP_setitem" "', argument " "2"" of type '" "size_t""'");
10410     }
10411     arg2 = static_cast< size_t >(val2);
10412     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
10413     if (!SWIG_IsOK(ecode3)) {
10414       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "intP_setitem" "', argument " "3"" of type '" "int""'");
10415     }
10416     arg3 = static_cast< int >(val3);
10417     intP_setitem(arg1,arg2,arg3);
10418     ST(argvi) = &PL_sv_undef;
10419 
10420 
10421 
10422     XSRETURN(argvi);
10423   fail:
10424 
10425 
10426 
10427     SWIG_croak_null();
10428   }
10429 }
10430 
10431 
XS(_wrap_new_intArray)10432 XS(_wrap_new_intArray) {
10433   {
10434     size_t arg1 ;
10435     size_t val1 ;
10436     int ecode1 = 0 ;
10437     int argvi = 0;
10438     intArray *result = 0 ;
10439     dXSARGS;
10440 
10441     if ((items < 1) || (items > 1)) {
10442       SWIG_croak("Usage: new_intArray(nelements);");
10443     }
10444     ecode1 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
10445     if (!SWIG_IsOK(ecode1)) {
10446       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_intArray" "', argument " "1"" of type '" "size_t""'");
10447     }
10448     arg1 = static_cast< size_t >(val1);
10449     result = (intArray *)new_intArray(arg1);
10450     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_intArray, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
10451 
10452     XSRETURN(argvi);
10453   fail:
10454 
10455     SWIG_croak_null();
10456   }
10457 }
10458 
10459 
XS(_wrap_delete_intArray)10460 XS(_wrap_delete_intArray) {
10461   {
10462     intArray *arg1 = (intArray *) 0 ;
10463     void *argp1 = 0 ;
10464     int res1 = 0 ;
10465     int argvi = 0;
10466     dXSARGS;
10467 
10468     if ((items < 1) || (items > 1)) {
10469       SWIG_croak("Usage: delete_intArray(self);");
10470     }
10471     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_intArray, SWIG_POINTER_DISOWN |  0 );
10472     if (!SWIG_IsOK(res1)) {
10473       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_intArray" "', argument " "1"" of type '" "intArray *""'");
10474     }
10475     arg1 = reinterpret_cast< intArray * >(argp1);
10476     delete_intArray(arg1);
10477     ST(argvi) = &PL_sv_undef;
10478 
10479     XSRETURN(argvi);
10480   fail:
10481 
10482     SWIG_croak_null();
10483   }
10484 }
10485 
10486 
XS(_wrap_intArray_getitem)10487 XS(_wrap_intArray_getitem) {
10488   {
10489     intArray *arg1 = (intArray *) 0 ;
10490     size_t arg2 ;
10491     void *argp1 = 0 ;
10492     int res1 = 0 ;
10493     size_t val2 ;
10494     int ecode2 = 0 ;
10495     int argvi = 0;
10496     int result;
10497     dXSARGS;
10498 
10499     if ((items < 2) || (items > 2)) {
10500       SWIG_croak("Usage: intArray_getitem(self,index);");
10501     }
10502     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_intArray, 0 |  0 );
10503     if (!SWIG_IsOK(res1)) {
10504       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "intArray_getitem" "', argument " "1"" of type '" "intArray *""'");
10505     }
10506     arg1 = reinterpret_cast< intArray * >(argp1);
10507     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10508     if (!SWIG_IsOK(ecode2)) {
10509       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "intArray_getitem" "', argument " "2"" of type '" "size_t""'");
10510     }
10511     arg2 = static_cast< size_t >(val2);
10512     result = (int)intArray_getitem(arg1,arg2);
10513     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
10514 
10515 
10516     XSRETURN(argvi);
10517   fail:
10518 
10519 
10520     SWIG_croak_null();
10521   }
10522 }
10523 
10524 
XS(_wrap_intArray_setitem)10525 XS(_wrap_intArray_setitem) {
10526   {
10527     intArray *arg1 = (intArray *) 0 ;
10528     size_t arg2 ;
10529     int arg3 ;
10530     void *argp1 = 0 ;
10531     int res1 = 0 ;
10532     size_t val2 ;
10533     int ecode2 = 0 ;
10534     int val3 ;
10535     int ecode3 = 0 ;
10536     int argvi = 0;
10537     dXSARGS;
10538 
10539     if ((items < 3) || (items > 3)) {
10540       SWIG_croak("Usage: intArray_setitem(self,index,value);");
10541     }
10542     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_intArray, 0 |  0 );
10543     if (!SWIG_IsOK(res1)) {
10544       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "intArray_setitem" "', argument " "1"" of type '" "intArray *""'");
10545     }
10546     arg1 = reinterpret_cast< intArray * >(argp1);
10547     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10548     if (!SWIG_IsOK(ecode2)) {
10549       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "intArray_setitem" "', argument " "2"" of type '" "size_t""'");
10550     }
10551     arg2 = static_cast< size_t >(val2);
10552     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
10553     if (!SWIG_IsOK(ecode3)) {
10554       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "intArray_setitem" "', argument " "3"" of type '" "int""'");
10555     }
10556     arg3 = static_cast< int >(val3);
10557     intArray_setitem(arg1,arg2,arg3);
10558     ST(argvi) = &PL_sv_undef;
10559 
10560 
10561 
10562     XSRETURN(argvi);
10563   fail:
10564 
10565 
10566 
10567     SWIG_croak_null();
10568   }
10569 }
10570 
10571 
XS(_wrap_intArray_cast)10572 XS(_wrap_intArray_cast) {
10573   {
10574     intArray *arg1 = (intArray *) 0 ;
10575     void *argp1 = 0 ;
10576     int res1 = 0 ;
10577     int argvi = 0;
10578     int *result = 0 ;
10579     dXSARGS;
10580 
10581     if ((items < 1) || (items > 1)) {
10582       SWIG_croak("Usage: intArray_cast(self);");
10583     }
10584     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_intArray, 0 |  0 );
10585     if (!SWIG_IsOK(res1)) {
10586       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "intArray_cast" "', argument " "1"" of type '" "intArray *""'");
10587     }
10588     arg1 = reinterpret_cast< intArray * >(argp1);
10589     result = (int *)intArray_cast(arg1);
10590     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_int, 0 | 0); argvi++ ;
10591 
10592     XSRETURN(argvi);
10593   fail:
10594 
10595     SWIG_croak_null();
10596   }
10597 }
10598 
10599 
XS(_wrap_intArray_frompointer)10600 XS(_wrap_intArray_frompointer) {
10601   {
10602     int *arg1 = (int *) 0 ;
10603     void *argp1 = 0 ;
10604     int res1 = 0 ;
10605     int argvi = 0;
10606     intArray *result = 0 ;
10607     dXSARGS;
10608 
10609     if ((items < 1) || (items > 1)) {
10610       SWIG_croak("Usage: intArray_frompointer(t);");
10611     }
10612     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_int, 0 |  0 );
10613     if (!SWIG_IsOK(res1)) {
10614       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "intArray_frompointer" "', argument " "1"" of type '" "int *""'");
10615     }
10616     arg1 = reinterpret_cast< int * >(argp1);
10617     result = (intArray *)intArray_frompointer(arg1);
10618     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_intArray, 0 | SWIG_SHADOW); argvi++ ;
10619 
10620     XSRETURN(argvi);
10621   fail:
10622 
10623     SWIG_croak_null();
10624   }
10625 }
10626 
10627 
XS(_wrap_new_floatP)10628 XS(_wrap_new_floatP) {
10629   {
10630     size_t arg1 ;
10631     size_t val1 ;
10632     int ecode1 = 0 ;
10633     int argvi = 0;
10634     float *result = 0 ;
10635     dXSARGS;
10636 
10637     if ((items < 1) || (items > 1)) {
10638       SWIG_croak("Usage: new_floatP(nelements);");
10639     }
10640     ecode1 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
10641     if (!SWIG_IsOK(ecode1)) {
10642       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_floatP" "', argument " "1"" of type '" "size_t""'");
10643     }
10644     arg1 = static_cast< size_t >(val1);
10645     result = (float *)new_floatP(arg1);
10646     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_float, 0 | 0); argvi++ ;
10647 
10648     XSRETURN(argvi);
10649   fail:
10650 
10651     SWIG_croak_null();
10652   }
10653 }
10654 
10655 
XS(_wrap_delete_floatP)10656 XS(_wrap_delete_floatP) {
10657   {
10658     float *arg1 = (float *) 0 ;
10659     void *argp1 = 0 ;
10660     int res1 = 0 ;
10661     int argvi = 0;
10662     dXSARGS;
10663 
10664     if ((items < 1) || (items > 1)) {
10665       SWIG_croak("Usage: delete_floatP(ary);");
10666     }
10667     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_float, 0 |  0 );
10668     if (!SWIG_IsOK(res1)) {
10669       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_floatP" "', argument " "1"" of type '" "float *""'");
10670     }
10671     arg1 = reinterpret_cast< float * >(argp1);
10672     delete_floatP(arg1);
10673     ST(argvi) = &PL_sv_undef;
10674 
10675     XSRETURN(argvi);
10676   fail:
10677 
10678     SWIG_croak_null();
10679   }
10680 }
10681 
10682 
XS(_wrap_floatP_getitem)10683 XS(_wrap_floatP_getitem) {
10684   {
10685     float *arg1 = (float *) 0 ;
10686     size_t arg2 ;
10687     void *argp1 = 0 ;
10688     int res1 = 0 ;
10689     size_t val2 ;
10690     int ecode2 = 0 ;
10691     int argvi = 0;
10692     float result;
10693     dXSARGS;
10694 
10695     if ((items < 2) || (items > 2)) {
10696       SWIG_croak("Usage: floatP_getitem(ary,index);");
10697     }
10698     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_float, 0 |  0 );
10699     if (!SWIG_IsOK(res1)) {
10700       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "floatP_getitem" "', argument " "1"" of type '" "float *""'");
10701     }
10702     arg1 = reinterpret_cast< float * >(argp1);
10703     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10704     if (!SWIG_IsOK(ecode2)) {
10705       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "floatP_getitem" "', argument " "2"" of type '" "size_t""'");
10706     }
10707     arg2 = static_cast< size_t >(val2);
10708     result = (float)floatP_getitem(arg1,arg2);
10709     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
10710 
10711 
10712     XSRETURN(argvi);
10713   fail:
10714 
10715 
10716     SWIG_croak_null();
10717   }
10718 }
10719 
10720 
XS(_wrap_floatP_setitem)10721 XS(_wrap_floatP_setitem) {
10722   {
10723     float *arg1 = (float *) 0 ;
10724     size_t arg2 ;
10725     float arg3 ;
10726     void *argp1 = 0 ;
10727     int res1 = 0 ;
10728     size_t val2 ;
10729     int ecode2 = 0 ;
10730     float val3 ;
10731     int ecode3 = 0 ;
10732     int argvi = 0;
10733     dXSARGS;
10734 
10735     if ((items < 3) || (items > 3)) {
10736       SWIG_croak("Usage: floatP_setitem(ary,index,value);");
10737     }
10738     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_float, 0 |  0 );
10739     if (!SWIG_IsOK(res1)) {
10740       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "floatP_setitem" "', argument " "1"" of type '" "float *""'");
10741     }
10742     arg1 = reinterpret_cast< float * >(argp1);
10743     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10744     if (!SWIG_IsOK(ecode2)) {
10745       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "floatP_setitem" "', argument " "2"" of type '" "size_t""'");
10746     }
10747     arg2 = static_cast< size_t >(val2);
10748     ecode3 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
10749     if (!SWIG_IsOK(ecode3)) {
10750       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "floatP_setitem" "', argument " "3"" of type '" "float""'");
10751     }
10752     arg3 = static_cast< float >(val3);
10753     floatP_setitem(arg1,arg2,arg3);
10754     ST(argvi) = &PL_sv_undef;
10755 
10756 
10757 
10758     XSRETURN(argvi);
10759   fail:
10760 
10761 
10762 
10763     SWIG_croak_null();
10764   }
10765 }
10766 
10767 
XS(_wrap_new_floatArray)10768 XS(_wrap_new_floatArray) {
10769   {
10770     size_t arg1 ;
10771     size_t val1 ;
10772     int ecode1 = 0 ;
10773     int argvi = 0;
10774     floatArray *result = 0 ;
10775     dXSARGS;
10776 
10777     if ((items < 1) || (items > 1)) {
10778       SWIG_croak("Usage: new_floatArray(nelements);");
10779     }
10780     ecode1 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
10781     if (!SWIG_IsOK(ecode1)) {
10782       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_floatArray" "', argument " "1"" of type '" "size_t""'");
10783     }
10784     arg1 = static_cast< size_t >(val1);
10785     result = (floatArray *)new_floatArray(arg1);
10786     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_floatArray, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
10787 
10788     XSRETURN(argvi);
10789   fail:
10790 
10791     SWIG_croak_null();
10792   }
10793 }
10794 
10795 
XS(_wrap_delete_floatArray)10796 XS(_wrap_delete_floatArray) {
10797   {
10798     floatArray *arg1 = (floatArray *) 0 ;
10799     void *argp1 = 0 ;
10800     int res1 = 0 ;
10801     int argvi = 0;
10802     dXSARGS;
10803 
10804     if ((items < 1) || (items > 1)) {
10805       SWIG_croak("Usage: delete_floatArray(self);");
10806     }
10807     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_floatArray, SWIG_POINTER_DISOWN |  0 );
10808     if (!SWIG_IsOK(res1)) {
10809       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_floatArray" "', argument " "1"" of type '" "floatArray *""'");
10810     }
10811     arg1 = reinterpret_cast< floatArray * >(argp1);
10812     delete_floatArray(arg1);
10813     ST(argvi) = &PL_sv_undef;
10814 
10815     XSRETURN(argvi);
10816   fail:
10817 
10818     SWIG_croak_null();
10819   }
10820 }
10821 
10822 
XS(_wrap_floatArray_getitem)10823 XS(_wrap_floatArray_getitem) {
10824   {
10825     floatArray *arg1 = (floatArray *) 0 ;
10826     size_t arg2 ;
10827     void *argp1 = 0 ;
10828     int res1 = 0 ;
10829     size_t val2 ;
10830     int ecode2 = 0 ;
10831     int argvi = 0;
10832     float result;
10833     dXSARGS;
10834 
10835     if ((items < 2) || (items > 2)) {
10836       SWIG_croak("Usage: floatArray_getitem(self,index);");
10837     }
10838     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_floatArray, 0 |  0 );
10839     if (!SWIG_IsOK(res1)) {
10840       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "floatArray_getitem" "', argument " "1"" of type '" "floatArray *""'");
10841     }
10842     arg1 = reinterpret_cast< floatArray * >(argp1);
10843     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10844     if (!SWIG_IsOK(ecode2)) {
10845       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "floatArray_getitem" "', argument " "2"" of type '" "size_t""'");
10846     }
10847     arg2 = static_cast< size_t >(val2);
10848     result = (float)floatArray_getitem(arg1,arg2);
10849     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
10850 
10851 
10852     XSRETURN(argvi);
10853   fail:
10854 
10855 
10856     SWIG_croak_null();
10857   }
10858 }
10859 
10860 
XS(_wrap_floatArray_setitem)10861 XS(_wrap_floatArray_setitem) {
10862   {
10863     floatArray *arg1 = (floatArray *) 0 ;
10864     size_t arg2 ;
10865     float arg3 ;
10866     void *argp1 = 0 ;
10867     int res1 = 0 ;
10868     size_t val2 ;
10869     int ecode2 = 0 ;
10870     float val3 ;
10871     int ecode3 = 0 ;
10872     int argvi = 0;
10873     dXSARGS;
10874 
10875     if ((items < 3) || (items > 3)) {
10876       SWIG_croak("Usage: floatArray_setitem(self,index,value);");
10877     }
10878     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_floatArray, 0 |  0 );
10879     if (!SWIG_IsOK(res1)) {
10880       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "floatArray_setitem" "', argument " "1"" of type '" "floatArray *""'");
10881     }
10882     arg1 = reinterpret_cast< floatArray * >(argp1);
10883     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
10884     if (!SWIG_IsOK(ecode2)) {
10885       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "floatArray_setitem" "', argument " "2"" of type '" "size_t""'");
10886     }
10887     arg2 = static_cast< size_t >(val2);
10888     ecode3 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
10889     if (!SWIG_IsOK(ecode3)) {
10890       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "floatArray_setitem" "', argument " "3"" of type '" "float""'");
10891     }
10892     arg3 = static_cast< float >(val3);
10893     floatArray_setitem(arg1,arg2,arg3);
10894     ST(argvi) = &PL_sv_undef;
10895 
10896 
10897 
10898     XSRETURN(argvi);
10899   fail:
10900 
10901 
10902 
10903     SWIG_croak_null();
10904   }
10905 }
10906 
10907 
XS(_wrap_floatArray_cast)10908 XS(_wrap_floatArray_cast) {
10909   {
10910     floatArray *arg1 = (floatArray *) 0 ;
10911     void *argp1 = 0 ;
10912     int res1 = 0 ;
10913     int argvi = 0;
10914     float *result = 0 ;
10915     dXSARGS;
10916 
10917     if ((items < 1) || (items > 1)) {
10918       SWIG_croak("Usage: floatArray_cast(self);");
10919     }
10920     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_floatArray, 0 |  0 );
10921     if (!SWIG_IsOK(res1)) {
10922       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "floatArray_cast" "', argument " "1"" of type '" "floatArray *""'");
10923     }
10924     arg1 = reinterpret_cast< floatArray * >(argp1);
10925     result = (float *)floatArray_cast(arg1);
10926     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_float, 0 | 0); argvi++ ;
10927 
10928     XSRETURN(argvi);
10929   fail:
10930 
10931     SWIG_croak_null();
10932   }
10933 }
10934 
10935 
XS(_wrap_floatArray_frompointer)10936 XS(_wrap_floatArray_frompointer) {
10937   {
10938     float *arg1 = (float *) 0 ;
10939     void *argp1 = 0 ;
10940     int res1 = 0 ;
10941     int argvi = 0;
10942     floatArray *result = 0 ;
10943     dXSARGS;
10944 
10945     if ((items < 1) || (items > 1)) {
10946       SWIG_croak("Usage: floatArray_frompointer(t);");
10947     }
10948     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_float, 0 |  0 );
10949     if (!SWIG_IsOK(res1)) {
10950       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "floatArray_frompointer" "', argument " "1"" of type '" "float *""'");
10951     }
10952     arg1 = reinterpret_cast< float * >(argp1);
10953     result = (floatArray *)floatArray_frompointer(arg1);
10954     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_floatArray, 0 | SWIG_SHADOW); argvi++ ;
10955 
10956     XSRETURN(argvi);
10957   fail:
10958 
10959     SWIG_croak_null();
10960   }
10961 }
10962 
10963 
XS(_wrap_new_doubleP)10964 XS(_wrap_new_doubleP) {
10965   {
10966     size_t arg1 ;
10967     size_t val1 ;
10968     int ecode1 = 0 ;
10969     int argvi = 0;
10970     double *result = 0 ;
10971     dXSARGS;
10972 
10973     if ((items < 1) || (items > 1)) {
10974       SWIG_croak("Usage: new_doubleP(nelements);");
10975     }
10976     ecode1 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
10977     if (!SWIG_IsOK(ecode1)) {
10978       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_doubleP" "', argument " "1"" of type '" "size_t""'");
10979     }
10980     arg1 = static_cast< size_t >(val1);
10981     result = (double *)new_doubleP(arg1);
10982     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_double, 0 | 0); argvi++ ;
10983 
10984     XSRETURN(argvi);
10985   fail:
10986 
10987     SWIG_croak_null();
10988   }
10989 }
10990 
10991 
XS(_wrap_delete_doubleP)10992 XS(_wrap_delete_doubleP) {
10993   {
10994     double *arg1 = (double *) 0 ;
10995     void *argp1 = 0 ;
10996     int res1 = 0 ;
10997     int argvi = 0;
10998     dXSARGS;
10999 
11000     if ((items < 1) || (items > 1)) {
11001       SWIG_croak("Usage: delete_doubleP(ary);");
11002     }
11003     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_double, 0 |  0 );
11004     if (!SWIG_IsOK(res1)) {
11005       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_doubleP" "', argument " "1"" of type '" "double *""'");
11006     }
11007     arg1 = reinterpret_cast< double * >(argp1);
11008     delete_doubleP(arg1);
11009     ST(argvi) = &PL_sv_undef;
11010 
11011     XSRETURN(argvi);
11012   fail:
11013 
11014     SWIG_croak_null();
11015   }
11016 }
11017 
11018 
XS(_wrap_doubleP_getitem)11019 XS(_wrap_doubleP_getitem) {
11020   {
11021     double *arg1 = (double *) 0 ;
11022     size_t arg2 ;
11023     void *argp1 = 0 ;
11024     int res1 = 0 ;
11025     size_t val2 ;
11026     int ecode2 = 0 ;
11027     int argvi = 0;
11028     double result;
11029     dXSARGS;
11030 
11031     if ((items < 2) || (items > 2)) {
11032       SWIG_croak("Usage: doubleP_getitem(ary,index);");
11033     }
11034     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_double, 0 |  0 );
11035     if (!SWIG_IsOK(res1)) {
11036       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "doubleP_getitem" "', argument " "1"" of type '" "double *""'");
11037     }
11038     arg1 = reinterpret_cast< double * >(argp1);
11039     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11040     if (!SWIG_IsOK(ecode2)) {
11041       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "doubleP_getitem" "', argument " "2"" of type '" "size_t""'");
11042     }
11043     arg2 = static_cast< size_t >(val2);
11044     result = (double)doubleP_getitem(arg1,arg2);
11045     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
11046 
11047 
11048     XSRETURN(argvi);
11049   fail:
11050 
11051 
11052     SWIG_croak_null();
11053   }
11054 }
11055 
11056 
XS(_wrap_doubleP_setitem)11057 XS(_wrap_doubleP_setitem) {
11058   {
11059     double *arg1 = (double *) 0 ;
11060     size_t arg2 ;
11061     double arg3 ;
11062     void *argp1 = 0 ;
11063     int res1 = 0 ;
11064     size_t val2 ;
11065     int ecode2 = 0 ;
11066     double val3 ;
11067     int ecode3 = 0 ;
11068     int argvi = 0;
11069     dXSARGS;
11070 
11071     if ((items < 3) || (items > 3)) {
11072       SWIG_croak("Usage: doubleP_setitem(ary,index,value);");
11073     }
11074     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_double, 0 |  0 );
11075     if (!SWIG_IsOK(res1)) {
11076       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "doubleP_setitem" "', argument " "1"" of type '" "double *""'");
11077     }
11078     arg1 = reinterpret_cast< double * >(argp1);
11079     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11080     if (!SWIG_IsOK(ecode2)) {
11081       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "doubleP_setitem" "', argument " "2"" of type '" "size_t""'");
11082     }
11083     arg2 = static_cast< size_t >(val2);
11084     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
11085     if (!SWIG_IsOK(ecode3)) {
11086       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "doubleP_setitem" "', argument " "3"" of type '" "double""'");
11087     }
11088     arg3 = static_cast< double >(val3);
11089     doubleP_setitem(arg1,arg2,arg3);
11090     ST(argvi) = &PL_sv_undef;
11091 
11092 
11093 
11094     XSRETURN(argvi);
11095   fail:
11096 
11097 
11098 
11099     SWIG_croak_null();
11100   }
11101 }
11102 
11103 
XS(_wrap_new_doubleArray)11104 XS(_wrap_new_doubleArray) {
11105   {
11106     size_t arg1 ;
11107     size_t val1 ;
11108     int ecode1 = 0 ;
11109     int argvi = 0;
11110     doubleArray *result = 0 ;
11111     dXSARGS;
11112 
11113     if ((items < 1) || (items > 1)) {
11114       SWIG_croak("Usage: new_doubleArray(nelements);");
11115     }
11116     ecode1 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
11117     if (!SWIG_IsOK(ecode1)) {
11118       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_doubleArray" "', argument " "1"" of type '" "size_t""'");
11119     }
11120     arg1 = static_cast< size_t >(val1);
11121     result = (doubleArray *)new_doubleArray(arg1);
11122     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_doubleArray, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
11123 
11124     XSRETURN(argvi);
11125   fail:
11126 
11127     SWIG_croak_null();
11128   }
11129 }
11130 
11131 
XS(_wrap_delete_doubleArray)11132 XS(_wrap_delete_doubleArray) {
11133   {
11134     doubleArray *arg1 = (doubleArray *) 0 ;
11135     void *argp1 = 0 ;
11136     int res1 = 0 ;
11137     int argvi = 0;
11138     dXSARGS;
11139 
11140     if ((items < 1) || (items > 1)) {
11141       SWIG_croak("Usage: delete_doubleArray(self);");
11142     }
11143     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_doubleArray, SWIG_POINTER_DISOWN |  0 );
11144     if (!SWIG_IsOK(res1)) {
11145       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_doubleArray" "', argument " "1"" of type '" "doubleArray *""'");
11146     }
11147     arg1 = reinterpret_cast< doubleArray * >(argp1);
11148     delete_doubleArray(arg1);
11149     ST(argvi) = &PL_sv_undef;
11150 
11151     XSRETURN(argvi);
11152   fail:
11153 
11154     SWIG_croak_null();
11155   }
11156 }
11157 
11158 
XS(_wrap_doubleArray_getitem)11159 XS(_wrap_doubleArray_getitem) {
11160   {
11161     doubleArray *arg1 = (doubleArray *) 0 ;
11162     size_t arg2 ;
11163     void *argp1 = 0 ;
11164     int res1 = 0 ;
11165     size_t val2 ;
11166     int ecode2 = 0 ;
11167     int argvi = 0;
11168     double result;
11169     dXSARGS;
11170 
11171     if ((items < 2) || (items > 2)) {
11172       SWIG_croak("Usage: doubleArray_getitem(self,index);");
11173     }
11174     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_doubleArray, 0 |  0 );
11175     if (!SWIG_IsOK(res1)) {
11176       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "doubleArray_getitem" "', argument " "1"" of type '" "doubleArray *""'");
11177     }
11178     arg1 = reinterpret_cast< doubleArray * >(argp1);
11179     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11180     if (!SWIG_IsOK(ecode2)) {
11181       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "doubleArray_getitem" "', argument " "2"" of type '" "size_t""'");
11182     }
11183     arg2 = static_cast< size_t >(val2);
11184     result = (double)doubleArray_getitem(arg1,arg2);
11185     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
11186 
11187 
11188     XSRETURN(argvi);
11189   fail:
11190 
11191 
11192     SWIG_croak_null();
11193   }
11194 }
11195 
11196 
XS(_wrap_doubleArray_setitem)11197 XS(_wrap_doubleArray_setitem) {
11198   {
11199     doubleArray *arg1 = (doubleArray *) 0 ;
11200     size_t arg2 ;
11201     double arg3 ;
11202     void *argp1 = 0 ;
11203     int res1 = 0 ;
11204     size_t val2 ;
11205     int ecode2 = 0 ;
11206     double val3 ;
11207     int ecode3 = 0 ;
11208     int argvi = 0;
11209     dXSARGS;
11210 
11211     if ((items < 3) || (items > 3)) {
11212       SWIG_croak("Usage: doubleArray_setitem(self,index,value);");
11213     }
11214     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_doubleArray, 0 |  0 );
11215     if (!SWIG_IsOK(res1)) {
11216       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "doubleArray_setitem" "', argument " "1"" of type '" "doubleArray *""'");
11217     }
11218     arg1 = reinterpret_cast< doubleArray * >(argp1);
11219     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11220     if (!SWIG_IsOK(ecode2)) {
11221       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "doubleArray_setitem" "', argument " "2"" of type '" "size_t""'");
11222     }
11223     arg2 = static_cast< size_t >(val2);
11224     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
11225     if (!SWIG_IsOK(ecode3)) {
11226       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "doubleArray_setitem" "', argument " "3"" of type '" "double""'");
11227     }
11228     arg3 = static_cast< double >(val3);
11229     doubleArray_setitem(arg1,arg2,arg3);
11230     ST(argvi) = &PL_sv_undef;
11231 
11232 
11233 
11234     XSRETURN(argvi);
11235   fail:
11236 
11237 
11238 
11239     SWIG_croak_null();
11240   }
11241 }
11242 
11243 
XS(_wrap_doubleArray_cast)11244 XS(_wrap_doubleArray_cast) {
11245   {
11246     doubleArray *arg1 = (doubleArray *) 0 ;
11247     void *argp1 = 0 ;
11248     int res1 = 0 ;
11249     int argvi = 0;
11250     double *result = 0 ;
11251     dXSARGS;
11252 
11253     if ((items < 1) || (items > 1)) {
11254       SWIG_croak("Usage: doubleArray_cast(self);");
11255     }
11256     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_doubleArray, 0 |  0 );
11257     if (!SWIG_IsOK(res1)) {
11258       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "doubleArray_cast" "', argument " "1"" of type '" "doubleArray *""'");
11259     }
11260     arg1 = reinterpret_cast< doubleArray * >(argp1);
11261     result = (double *)doubleArray_cast(arg1);
11262     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_double, 0 | 0); argvi++ ;
11263 
11264     XSRETURN(argvi);
11265   fail:
11266 
11267     SWIG_croak_null();
11268   }
11269 }
11270 
11271 
XS(_wrap_doubleArray_frompointer)11272 XS(_wrap_doubleArray_frompointer) {
11273   {
11274     double *arg1 = (double *) 0 ;
11275     void *argp1 = 0 ;
11276     int res1 = 0 ;
11277     int argvi = 0;
11278     doubleArray *result = 0 ;
11279     dXSARGS;
11280 
11281     if ((items < 1) || (items > 1)) {
11282       SWIG_croak("Usage: doubleArray_frompointer(t);");
11283     }
11284     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_double, 0 |  0 );
11285     if (!SWIG_IsOK(res1)) {
11286       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "doubleArray_frompointer" "', argument " "1"" of type '" "double *""'");
11287     }
11288     arg1 = reinterpret_cast< double * >(argp1);
11289     result = (doubleArray *)doubleArray_frompointer(arg1);
11290     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_doubleArray, 0 | SWIG_SHADOW); argvi++ ;
11291 
11292     XSRETURN(argvi);
11293   fail:
11294 
11295     SWIG_croak_null();
11296   }
11297 }
11298 
11299 
XS(_wrap_new_ushortP)11300 XS(_wrap_new_ushortP) {
11301   {
11302     size_t arg1 ;
11303     size_t val1 ;
11304     int ecode1 = 0 ;
11305     int argvi = 0;
11306     unsigned short *result = 0 ;
11307     dXSARGS;
11308 
11309     if ((items < 1) || (items > 1)) {
11310       SWIG_croak("Usage: new_ushortP(nelements);");
11311     }
11312     ecode1 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
11313     if (!SWIG_IsOK(ecode1)) {
11314       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_ushortP" "', argument " "1"" of type '" "size_t""'");
11315     }
11316     arg1 = static_cast< size_t >(val1);
11317     result = (unsigned short *)new_ushortP(arg1);
11318     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_unsigned_short, 0 | 0); argvi++ ;
11319 
11320     XSRETURN(argvi);
11321   fail:
11322 
11323     SWIG_croak_null();
11324   }
11325 }
11326 
11327 
XS(_wrap_delete_ushortP)11328 XS(_wrap_delete_ushortP) {
11329   {
11330     unsigned short *arg1 = (unsigned short *) 0 ;
11331     void *argp1 = 0 ;
11332     int res1 = 0 ;
11333     int argvi = 0;
11334     dXSARGS;
11335 
11336     if ((items < 1) || (items > 1)) {
11337       SWIG_croak("Usage: delete_ushortP(ary);");
11338     }
11339     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_unsigned_short, 0 |  0 );
11340     if (!SWIG_IsOK(res1)) {
11341       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_ushortP" "', argument " "1"" of type '" "unsigned short *""'");
11342     }
11343     arg1 = reinterpret_cast< unsigned short * >(argp1);
11344     delete_ushortP(arg1);
11345     ST(argvi) = &PL_sv_undef;
11346 
11347     XSRETURN(argvi);
11348   fail:
11349 
11350     SWIG_croak_null();
11351   }
11352 }
11353 
11354 
XS(_wrap_ushortP_getitem)11355 XS(_wrap_ushortP_getitem) {
11356   {
11357     unsigned short *arg1 = (unsigned short *) 0 ;
11358     size_t arg2 ;
11359     void *argp1 = 0 ;
11360     int res1 = 0 ;
11361     size_t val2 ;
11362     int ecode2 = 0 ;
11363     int argvi = 0;
11364     unsigned short result;
11365     dXSARGS;
11366 
11367     if ((items < 2) || (items > 2)) {
11368       SWIG_croak("Usage: ushortP_getitem(ary,index);");
11369     }
11370     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_unsigned_short, 0 |  0 );
11371     if (!SWIG_IsOK(res1)) {
11372       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ushortP_getitem" "', argument " "1"" of type '" "unsigned short *""'");
11373     }
11374     arg1 = reinterpret_cast< unsigned short * >(argp1);
11375     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11376     if (!SWIG_IsOK(ecode2)) {
11377       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ushortP_getitem" "', argument " "2"" of type '" "size_t""'");
11378     }
11379     arg2 = static_cast< size_t >(val2);
11380     result = (unsigned short)ushortP_getitem(arg1,arg2);
11381     ST(argvi) = SWIG_From_unsigned_SS_short  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned short >(result)); argvi++ ;
11382 
11383 
11384     XSRETURN(argvi);
11385   fail:
11386 
11387 
11388     SWIG_croak_null();
11389   }
11390 }
11391 
11392 
XS(_wrap_ushortP_setitem)11393 XS(_wrap_ushortP_setitem) {
11394   {
11395     unsigned short *arg1 = (unsigned short *) 0 ;
11396     size_t arg2 ;
11397     unsigned short arg3 ;
11398     void *argp1 = 0 ;
11399     int res1 = 0 ;
11400     size_t val2 ;
11401     int ecode2 = 0 ;
11402     unsigned short val3 ;
11403     int ecode3 = 0 ;
11404     int argvi = 0;
11405     dXSARGS;
11406 
11407     if ((items < 3) || (items > 3)) {
11408       SWIG_croak("Usage: ushortP_setitem(ary,index,value);");
11409     }
11410     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_unsigned_short, 0 |  0 );
11411     if (!SWIG_IsOK(res1)) {
11412       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ushortP_setitem" "', argument " "1"" of type '" "unsigned short *""'");
11413     }
11414     arg1 = reinterpret_cast< unsigned short * >(argp1);
11415     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11416     if (!SWIG_IsOK(ecode2)) {
11417       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ushortP_setitem" "', argument " "2"" of type '" "size_t""'");
11418     }
11419     arg2 = static_cast< size_t >(val2);
11420     ecode3 = SWIG_AsVal_unsigned_SS_short SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
11421     if (!SWIG_IsOK(ecode3)) {
11422       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "ushortP_setitem" "', argument " "3"" of type '" "unsigned short""'");
11423     }
11424     arg3 = static_cast< unsigned short >(val3);
11425     ushortP_setitem(arg1,arg2,arg3);
11426     ST(argvi) = &PL_sv_undef;
11427 
11428 
11429 
11430     XSRETURN(argvi);
11431   fail:
11432 
11433 
11434 
11435     SWIG_croak_null();
11436   }
11437 }
11438 
11439 
XS(_wrap_new_shortP)11440 XS(_wrap_new_shortP) {
11441   {
11442     size_t arg1 ;
11443     size_t val1 ;
11444     int ecode1 = 0 ;
11445     int argvi = 0;
11446     short *result = 0 ;
11447     dXSARGS;
11448 
11449     if ((items < 1) || (items > 1)) {
11450       SWIG_croak("Usage: new_shortP(nelements);");
11451     }
11452     ecode1 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
11453     if (!SWIG_IsOK(ecode1)) {
11454       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_shortP" "', argument " "1"" of type '" "size_t""'");
11455     }
11456     arg1 = static_cast< size_t >(val1);
11457     result = (short *)new_shortP(arg1);
11458     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_short, 0 | 0); argvi++ ;
11459 
11460     XSRETURN(argvi);
11461   fail:
11462 
11463     SWIG_croak_null();
11464   }
11465 }
11466 
11467 
XS(_wrap_delete_shortP)11468 XS(_wrap_delete_shortP) {
11469   {
11470     short *arg1 = (short *) 0 ;
11471     void *argp1 = 0 ;
11472     int res1 = 0 ;
11473     int argvi = 0;
11474     dXSARGS;
11475 
11476     if ((items < 1) || (items > 1)) {
11477       SWIG_croak("Usage: delete_shortP(ary);");
11478     }
11479     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_short, 0 |  0 );
11480     if (!SWIG_IsOK(res1)) {
11481       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_shortP" "', argument " "1"" of type '" "short *""'");
11482     }
11483     arg1 = reinterpret_cast< short * >(argp1);
11484     delete_shortP(arg1);
11485     ST(argvi) = &PL_sv_undef;
11486 
11487     XSRETURN(argvi);
11488   fail:
11489 
11490     SWIG_croak_null();
11491   }
11492 }
11493 
11494 
XS(_wrap_shortP_getitem)11495 XS(_wrap_shortP_getitem) {
11496   {
11497     short *arg1 = (short *) 0 ;
11498     size_t arg2 ;
11499     void *argp1 = 0 ;
11500     int res1 = 0 ;
11501     size_t val2 ;
11502     int ecode2 = 0 ;
11503     int argvi = 0;
11504     short result;
11505     dXSARGS;
11506 
11507     if ((items < 2) || (items > 2)) {
11508       SWIG_croak("Usage: shortP_getitem(ary,index);");
11509     }
11510     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_short, 0 |  0 );
11511     if (!SWIG_IsOK(res1)) {
11512       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "shortP_getitem" "', argument " "1"" of type '" "short *""'");
11513     }
11514     arg1 = reinterpret_cast< short * >(argp1);
11515     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11516     if (!SWIG_IsOK(ecode2)) {
11517       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "shortP_getitem" "', argument " "2"" of type '" "size_t""'");
11518     }
11519     arg2 = static_cast< size_t >(val2);
11520     result = (short)shortP_getitem(arg1,arg2);
11521     ST(argvi) = SWIG_From_short  SWIG_PERL_CALL_ARGS_1(static_cast< short >(result)); argvi++ ;
11522 
11523 
11524     XSRETURN(argvi);
11525   fail:
11526 
11527 
11528     SWIG_croak_null();
11529   }
11530 }
11531 
11532 
XS(_wrap_shortP_setitem)11533 XS(_wrap_shortP_setitem) {
11534   {
11535     short *arg1 = (short *) 0 ;
11536     size_t arg2 ;
11537     short arg3 ;
11538     void *argp1 = 0 ;
11539     int res1 = 0 ;
11540     size_t val2 ;
11541     int ecode2 = 0 ;
11542     short val3 ;
11543     int ecode3 = 0 ;
11544     int argvi = 0;
11545     dXSARGS;
11546 
11547     if ((items < 3) || (items > 3)) {
11548       SWIG_croak("Usage: shortP_setitem(ary,index,value);");
11549     }
11550     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_short, 0 |  0 );
11551     if (!SWIG_IsOK(res1)) {
11552       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "shortP_setitem" "', argument " "1"" of type '" "short *""'");
11553     }
11554     arg1 = reinterpret_cast< short * >(argp1);
11555     ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11556     if (!SWIG_IsOK(ecode2)) {
11557       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "shortP_setitem" "', argument " "2"" of type '" "size_t""'");
11558     }
11559     arg2 = static_cast< size_t >(val2);
11560     ecode3 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
11561     if (!SWIG_IsOK(ecode3)) {
11562       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "shortP_setitem" "', argument " "3"" of type '" "short""'");
11563     }
11564     arg3 = static_cast< short >(val3);
11565     shortP_setitem(arg1,arg2,arg3);
11566     ST(argvi) = &PL_sv_undef;
11567 
11568 
11569 
11570     XSRETURN(argvi);
11571   fail:
11572 
11573 
11574 
11575     SWIG_croak_null();
11576   }
11577 }
11578 
11579 
XS(_wrap_cdata)11580 XS(_wrap_cdata) {
11581   {
11582     void *arg1 = (void *) 0 ;
11583     size_t arg2 = (size_t) 1 ;
11584     int res1 ;
11585     size_t val2 ;
11586     int ecode2 = 0 ;
11587     int argvi = 0;
11588     SWIGCDATA result;
11589     dXSARGS;
11590 
11591     if ((items < 1) || (items > 2)) {
11592       SWIG_croak("Usage: cdata(ptr,nelements);");
11593     }
11594     res1 = SWIG_ConvertPtr(ST(0),SWIG_as_voidptrptr(&arg1), 0, 0);
11595     if (!SWIG_IsOK(res1)) {
11596       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cdata" "', argument " "1"" of type '" "void *""'");
11597     }
11598     if (items > 1) {
11599       ecode2 = SWIG_AsVal_size_t SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11600       if (!SWIG_IsOK(ecode2)) {
11601         SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cdata" "', argument " "2"" of type '" "size_t""'");
11602       }
11603       arg2 = static_cast< size_t >(val2);
11604     }
11605     result = cdata_void(arg1,arg2);
11606     ST(argvi) = SWIG_FromCharPtrAndSize((&result)->data,(&result)->len); argvi++ ;
11607 
11608 
11609     XSRETURN(argvi);
11610   fail:
11611 
11612 
11613     SWIG_croak_null();
11614   }
11615 }
11616 
11617 
XS(_wrap_memmove)11618 XS(_wrap_memmove) {
11619   {
11620     void *arg1 = (void *) 0 ;
11621     void *arg2 = (void *) 0 ;
11622     size_t arg3 ;
11623     int res1 ;
11624     int res2 ;
11625     char *buf2 = 0 ;
11626     size_t size2 = 0 ;
11627     int alloc2 = 0 ;
11628     int argvi = 0;
11629     dXSARGS;
11630 
11631     if ((items < 2) || (items > 2)) {
11632       SWIG_croak("Usage: memmove(data,indata,inlen);");
11633     }
11634     res1 = SWIG_ConvertPtr(ST(0),SWIG_as_voidptrptr(&arg1), 0, 0);
11635     if (!SWIG_IsOK(res1)) {
11636       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "memmove" "', argument " "1"" of type '" "void *""'");
11637     }
11638     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, &size2, &alloc2);
11639     if (!SWIG_IsOK(res2)) {
11640       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "memmove" "', argument " "2"" of type '" "void const *""'");
11641     }
11642     arg2 = reinterpret_cast< void * >(buf2);
11643     arg3 = static_cast< size_t >(size2);
11644     memmove(arg1,(void const *)arg2,arg3);
11645     ST(argvi) = &PL_sv_undef;
11646 
11647     XSRETURN(argvi);
11648   fail:
11649 
11650     SWIG_croak_null();
11651   }
11652 }
11653 
11654 
XS(_wrap_new_DoublePair__SWIG_0)11655 XS(_wrap_new_DoublePair__SWIG_0) {
11656   {
11657     int argvi = 0;
11658     std::pair< double,double > *result = 0 ;
11659     dXSARGS;
11660 
11661     if ((items < 0) || (items > 0)) {
11662       SWIG_croak("Usage: new_DoublePair();");
11663     }
11664     {
11665       try {
11666         result = (std::pair< double,double > *)new std::pair< double,double >();
11667       } catch (const std::exception& e) {
11668         SWIG_exception(SWIG_RuntimeError, e.what());
11669       }
11670     }
11671     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__pairT_double_double_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
11672     XSRETURN(argvi);
11673   fail:
11674     SWIG_croak_null();
11675   }
11676 }
11677 
11678 
XS(_wrap_new_DoublePair__SWIG_1)11679 XS(_wrap_new_DoublePair__SWIG_1) {
11680   {
11681     double arg1 ;
11682     double arg2 ;
11683     double val1 ;
11684     int ecode1 = 0 ;
11685     double val2 ;
11686     int ecode2 = 0 ;
11687     int argvi = 0;
11688     std::pair< double,double > *result = 0 ;
11689     dXSARGS;
11690 
11691     if ((items < 2) || (items > 2)) {
11692       SWIG_croak("Usage: new_DoublePair(first,second);");
11693     }
11694     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
11695     if (!SWIG_IsOK(ecode1)) {
11696       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_DoublePair" "', argument " "1"" of type '" "double""'");
11697     }
11698     arg1 = static_cast< double >(val1);
11699     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11700     if (!SWIG_IsOK(ecode2)) {
11701       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_DoublePair" "', argument " "2"" of type '" "double""'");
11702     }
11703     arg2 = static_cast< double >(val2);
11704     {
11705       try {
11706         result = (std::pair< double,double > *)new std::pair< double,double >(arg1,arg2);
11707       } catch (const std::exception& e) {
11708         SWIG_exception(SWIG_RuntimeError, e.what());
11709       }
11710     }
11711     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__pairT_double_double_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
11712 
11713 
11714     XSRETURN(argvi);
11715   fail:
11716 
11717 
11718     SWIG_croak_null();
11719   }
11720 }
11721 
11722 
XS(_wrap_new_DoublePair__SWIG_2)11723 XS(_wrap_new_DoublePair__SWIG_2) {
11724   {
11725     std::pair< double,double > *arg1 = 0 ;
11726     void *argp1 ;
11727     int res1 = 0 ;
11728     int argvi = 0;
11729     std::pair< double,double > *result = 0 ;
11730     dXSARGS;
11731 
11732     if ((items < 1) || (items > 1)) {
11733       SWIG_croak("Usage: new_DoublePair(other);");
11734     }
11735     res1 = SWIG_ConvertPtr(ST(0), &argp1, SWIGTYPE_p_std__pairT_double_double_t,  0 );
11736     if (!SWIG_IsOK(res1)) {
11737       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_DoublePair" "', argument " "1"" of type '" "std::pair< double,double > const &""'");
11738     }
11739     if (!argp1) {
11740       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DoublePair" "', argument " "1"" of type '" "std::pair< double,double > const &""'");
11741     }
11742     arg1 = reinterpret_cast< std::pair< double,double > * >(argp1);
11743     {
11744       try {
11745         result = (std::pair< double,double > *)new std::pair< double,double >((std::pair< double,double > const &)*arg1);
11746       } catch (const std::exception& e) {
11747         SWIG_exception(SWIG_RuntimeError, e.what());
11748       }
11749     }
11750     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__pairT_double_double_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
11751 
11752     XSRETURN(argvi);
11753   fail:
11754 
11755     SWIG_croak_null();
11756   }
11757 }
11758 
11759 
XS(_wrap_new_DoublePair)11760 XS(_wrap_new_DoublePair) {
11761   dXSARGS;
11762 
11763   {
11764     unsigned long _index = 0;
11765     SWIG_TypeRank _rank = 0;
11766     if (items == 0) {
11767       SWIG_TypeRank _ranki = 0;
11768       SWIG_TypeRank _rankm = 0;
11769       if (!_index || (_ranki < _rank)) {
11770         _rank = _ranki; _index = 1;
11771         if (_rank == _rankm) goto dispatch;
11772       }
11773     }
11774     if (items == 1) {
11775       SWIG_TypeRank _ranki = 0;
11776       SWIG_TypeRank _rankm = 0;
11777       SWIG_TypeRank _pi = 1;
11778       int _v = 0;
11779       {
11780         void *vptr = 0;
11781         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_std__pairT_double_double_t, SWIG_POINTER_NO_NULL);
11782         _v = SWIG_CheckState(res);
11783       }
11784       if (!_v) goto check_2;
11785       _ranki += _v*_pi;
11786       _rankm += _pi;
11787       _pi *= SWIG_MAXCASTRANK;
11788       if (!_index || (_ranki < _rank)) {
11789         _rank = _ranki; _index = 2;
11790         if (_rank == _rankm) goto dispatch;
11791       }
11792     }
11793   check_2:
11794 
11795     if (items == 2) {
11796       SWIG_TypeRank _ranki = 0;
11797       SWIG_TypeRank _rankm = 0;
11798       SWIG_TypeRank _pi = 1;
11799       int _v = 0;
11800       {
11801         {
11802           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
11803           _v = SWIG_CheckState(res);
11804         }
11805       }
11806       if (!_v) goto check_3;
11807       _ranki += _v*_pi;
11808       _rankm += _pi;
11809       _pi *= SWIG_MAXCASTRANK;
11810       {
11811         {
11812           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
11813           _v = SWIG_CheckState(res);
11814         }
11815       }
11816       if (!_v) goto check_3;
11817       _ranki += _v*_pi;
11818       _rankm += _pi;
11819       _pi *= SWIG_MAXCASTRANK;
11820       if (!_index || (_ranki < _rank)) {
11821         _rank = _ranki; _index = 3;
11822         if (_rank == _rankm) goto dispatch;
11823       }
11824     }
11825   check_3:
11826 
11827   dispatch:
11828     switch(_index) {
11829     case 1:
11830       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DoublePair__SWIG_0); return;
11831     case 2:
11832       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DoublePair__SWIG_2); return;
11833     case 3:
11834       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DoublePair__SWIG_1); return;
11835     }
11836   }
11837 
11838   croak("No matching function for overloaded 'new_DoublePair'");
11839   XSRETURN(0);
11840 }
11841 
11842 
XS(_wrap_DoublePair_first_set)11843 XS(_wrap_DoublePair_first_set) {
11844   {
11845     std::pair< double,double > *arg1 = (std::pair< double,double > *) 0 ;
11846     double arg2 ;
11847     void *argp1 = 0 ;
11848     int res1 = 0 ;
11849     double val2 ;
11850     int ecode2 = 0 ;
11851     int argvi = 0;
11852     dXSARGS;
11853 
11854     if ((items < 2) || (items > 2)) {
11855       SWIG_croak("Usage: DoublePair_first_set(self,first);");
11856     }
11857     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__pairT_double_double_t, 0 |  0 );
11858     if (!SWIG_IsOK(res1)) {
11859       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DoublePair_first_set" "', argument " "1"" of type '" "std::pair< double,double > *""'");
11860     }
11861     arg1 = reinterpret_cast< std::pair< double,double > * >(argp1);
11862     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11863     if (!SWIG_IsOK(ecode2)) {
11864       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "DoublePair_first_set" "', argument " "2"" of type '" "double""'");
11865     }
11866     arg2 = static_cast< double >(val2);
11867     if (arg1) (arg1)->first = arg2;
11868     ST(argvi) = &PL_sv_undef;
11869 
11870 
11871     XSRETURN(argvi);
11872   fail:
11873 
11874 
11875     SWIG_croak_null();
11876   }
11877 }
11878 
11879 
XS(_wrap_DoublePair_first_get)11880 XS(_wrap_DoublePair_first_get) {
11881   {
11882     std::pair< double,double > *arg1 = (std::pair< double,double > *) 0 ;
11883     void *argp1 = 0 ;
11884     int res1 = 0 ;
11885     int argvi = 0;
11886     double result;
11887     dXSARGS;
11888 
11889     if ((items < 1) || (items > 1)) {
11890       SWIG_croak("Usage: DoublePair_first_get(self);");
11891     }
11892     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__pairT_double_double_t, 0 |  0 );
11893     if (!SWIG_IsOK(res1)) {
11894       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DoublePair_first_get" "', argument " "1"" of type '" "std::pair< double,double > *""'");
11895     }
11896     arg1 = reinterpret_cast< std::pair< double,double > * >(argp1);
11897     result = (double) ((arg1)->first);
11898     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
11899 
11900     XSRETURN(argvi);
11901   fail:
11902 
11903     SWIG_croak_null();
11904   }
11905 }
11906 
11907 
XS(_wrap_DoublePair_second_set)11908 XS(_wrap_DoublePair_second_set) {
11909   {
11910     std::pair< double,double > *arg1 = (std::pair< double,double > *) 0 ;
11911     double arg2 ;
11912     void *argp1 = 0 ;
11913     int res1 = 0 ;
11914     double val2 ;
11915     int ecode2 = 0 ;
11916     int argvi = 0;
11917     dXSARGS;
11918 
11919     if ((items < 2) || (items > 2)) {
11920       SWIG_croak("Usage: DoublePair_second_set(self,second);");
11921     }
11922     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__pairT_double_double_t, 0 |  0 );
11923     if (!SWIG_IsOK(res1)) {
11924       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DoublePair_second_set" "', argument " "1"" of type '" "std::pair< double,double > *""'");
11925     }
11926     arg1 = reinterpret_cast< std::pair< double,double > * >(argp1);
11927     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
11928     if (!SWIG_IsOK(ecode2)) {
11929       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "DoublePair_second_set" "', argument " "2"" of type '" "double""'");
11930     }
11931     arg2 = static_cast< double >(val2);
11932     if (arg1) (arg1)->second = arg2;
11933     ST(argvi) = &PL_sv_undef;
11934 
11935 
11936     XSRETURN(argvi);
11937   fail:
11938 
11939 
11940     SWIG_croak_null();
11941   }
11942 }
11943 
11944 
XS(_wrap_DoublePair_second_get)11945 XS(_wrap_DoublePair_second_get) {
11946   {
11947     std::pair< double,double > *arg1 = (std::pair< double,double > *) 0 ;
11948     void *argp1 = 0 ;
11949     int res1 = 0 ;
11950     int argvi = 0;
11951     double result;
11952     dXSARGS;
11953 
11954     if ((items < 1) || (items > 1)) {
11955       SWIG_croak("Usage: DoublePair_second_get(self);");
11956     }
11957     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__pairT_double_double_t, 0 |  0 );
11958     if (!SWIG_IsOK(res1)) {
11959       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DoublePair_second_get" "', argument " "1"" of type '" "std::pair< double,double > *""'");
11960     }
11961     arg1 = reinterpret_cast< std::pair< double,double > * >(argp1);
11962     result = (double) ((arg1)->second);
11963     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
11964 
11965     XSRETURN(argvi);
11966   fail:
11967 
11968     SWIG_croak_null();
11969   }
11970 }
11971 
11972 
XS(_wrap_delete_DoublePair)11973 XS(_wrap_delete_DoublePair) {
11974   {
11975     std::pair< double,double > *arg1 = (std::pair< double,double > *) 0 ;
11976     void *argp1 = 0 ;
11977     int res1 = 0 ;
11978     int argvi = 0;
11979     dXSARGS;
11980 
11981     if ((items < 1) || (items > 1)) {
11982       SWIG_croak("Usage: delete_DoublePair(self);");
11983     }
11984     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__pairT_double_double_t, SWIG_POINTER_DISOWN |  0 );
11985     if (!SWIG_IsOK(res1)) {
11986       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DoublePair" "', argument " "1"" of type '" "std::pair< double,double > *""'");
11987     }
11988     arg1 = reinterpret_cast< std::pair< double,double > * >(argp1);
11989     {
11990       try {
11991         delete arg1;
11992       } catch (const std::exception& e) {
11993         SWIG_exception(SWIG_RuntimeError, e.what());
11994       }
11995     }
11996     ST(argvi) = &PL_sv_undef;
11997 
11998     XSRETURN(argvi);
11999   fail:
12000 
12001     SWIG_croak_null();
12002   }
12003 }
12004 
12005 
XS(_wrap_new_IntVector__SWIG_0)12006 XS(_wrap_new_IntVector__SWIG_0) {
12007   {
12008     unsigned int arg1 ;
12009     unsigned int val1 ;
12010     int ecode1 = 0 ;
12011     int argvi = 0;
12012     std::vector< int > *result = 0 ;
12013     dXSARGS;
12014 
12015     if ((items < 1) || (items > 1)) {
12016       SWIG_croak("Usage: new_IntVector(size);");
12017     }
12018     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
12019     if (!SWIG_IsOK(ecode1)) {
12020       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_IntVector" "', argument " "1"" of type '" "unsigned int""'");
12021     }
12022     arg1 = static_cast< unsigned int >(val1);
12023     {
12024       try {
12025         result = (std::vector< int > *)new std::vector< int >(arg1);
12026       } catch (const std::exception& e) {
12027         SWIG_exception(SWIG_RuntimeError, e.what());
12028       }
12029     }
12030     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
12031 
12032     XSRETURN(argvi);
12033   fail:
12034 
12035     SWIG_croak_null();
12036   }
12037 }
12038 
12039 
XS(_wrap_new_IntVector__SWIG_1)12040 XS(_wrap_new_IntVector__SWIG_1) {
12041   {
12042     int argvi = 0;
12043     std::vector< int > *result = 0 ;
12044     dXSARGS;
12045 
12046     if ((items < 0) || (items > 0)) {
12047       SWIG_croak("Usage: new_IntVector();");
12048     }
12049     {
12050       try {
12051         result = (std::vector< int > *)new std::vector< int >();
12052       } catch (const std::exception& e) {
12053         SWIG_exception(SWIG_RuntimeError, e.what());
12054       }
12055     }
12056     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
12057     XSRETURN(argvi);
12058   fail:
12059     SWIG_croak_null();
12060   }
12061 }
12062 
12063 
XS(_wrap_new_IntVector__SWIG_2)12064 XS(_wrap_new_IntVector__SWIG_2) {
12065   {
12066     unsigned int arg1 ;
12067     int arg2 ;
12068     unsigned int val1 ;
12069     int ecode1 = 0 ;
12070     int val2 ;
12071     int ecode2 = 0 ;
12072     int argvi = 0;
12073     std::vector< int > *result = 0 ;
12074     dXSARGS;
12075 
12076     if ((items < 2) || (items > 2)) {
12077       SWIG_croak("Usage: new_IntVector(size,value);");
12078     }
12079     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
12080     if (!SWIG_IsOK(ecode1)) {
12081       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_IntVector" "', argument " "1"" of type '" "unsigned int""'");
12082     }
12083     arg1 = static_cast< unsigned int >(val1);
12084     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
12085     if (!SWIG_IsOK(ecode2)) {
12086       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_IntVector" "', argument " "2"" of type '" "int""'");
12087     }
12088     arg2 = static_cast< int >(val2);
12089     {
12090       try {
12091         result = (std::vector< int > *)new std::vector< int >(arg1,arg2);
12092       } catch (const std::exception& e) {
12093         SWIG_exception(SWIG_RuntimeError, e.what());
12094       }
12095     }
12096     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
12097 
12098 
12099     XSRETURN(argvi);
12100   fail:
12101 
12102 
12103     SWIG_croak_null();
12104   }
12105 }
12106 
12107 
XS(_wrap_new_IntVector__SWIG_3)12108 XS(_wrap_new_IntVector__SWIG_3) {
12109   {
12110     std::vector< int > *arg1 = 0 ;
12111     std::vector< int > temp1 ;
12112     std::vector< int > *v1 ;
12113     int argvi = 0;
12114     std::vector< int > *result = 0 ;
12115     dXSARGS;
12116 
12117     if ((items < 1) || (items > 1)) {
12118       SWIG_croak("Usage: new_IntVector(other);");
12119     }
12120     {
12121       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
12122           SWIGTYPE_p_std__vectorT_int_t,1) != -1) {
12123         arg1 = v1;
12124       } else if (SvROK(ST(0))) {
12125         AV *av = (AV *)SvRV(ST(0));
12126         if (SvTYPE(av) != SVt_PVAV)
12127         SWIG_croak("Type error in argument 1 of new_IntVector. "
12128           "Expected an array of ""int");
12129         SV **tv;
12130         I32 len = av_len(av) + 1;
12131         for (int i=0; i<len; i++) {
12132           tv = av_fetch(av, i, 0);
12133           if (SvIOK(*tv)) {
12134             temp1.push_back((int)SvIVX(*tv));
12135           } else {
12136             SWIG_croak("Type error in argument 1 of "
12137               "new_IntVector. "
12138               "Expected an array of ""int");
12139           }
12140         }
12141         arg1 = &temp1;
12142       } else {
12143         SWIG_croak("Type error in argument 1 of new_IntVector. "
12144           "Expected an array of ""int");
12145       }
12146     }
12147     {
12148       try {
12149         result = (std::vector< int > *)new std::vector< int >((std::vector< int > const &)*arg1);
12150       } catch (const std::exception& e) {
12151         SWIG_exception(SWIG_RuntimeError, e.what());
12152       }
12153     }
12154     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
12155 
12156     XSRETURN(argvi);
12157   fail:
12158 
12159     SWIG_croak_null();
12160   }
12161 }
12162 
12163 
XS(_wrap_new_IntVector)12164 XS(_wrap_new_IntVector) {
12165   dXSARGS;
12166 
12167   {
12168     unsigned long _index = 0;
12169     SWIG_TypeRank _rank = 0;
12170     if (items == 0) {
12171       SWIG_TypeRank _ranki = 0;
12172       SWIG_TypeRank _rankm = 0;
12173       if (!_index || (_ranki < _rank)) {
12174         _rank = _ranki; _index = 1;
12175         if (_rank == _rankm) goto dispatch;
12176       }
12177     }
12178     if (items == 1) {
12179       SWIG_TypeRank _ranki = 0;
12180       SWIG_TypeRank _rankm = 0;
12181       SWIG_TypeRank _pi = 1;
12182       int _v = 0;
12183       {
12184         {
12185           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
12186           _v = SWIG_CheckState(res);
12187         }
12188       }
12189       if (!_v) goto check_2;
12190       _ranki += _v*_pi;
12191       _rankm += _pi;
12192       _pi *= SWIG_MAXCASTRANK;
12193       if (!_index || (_ranki < _rank)) {
12194         _rank = _ranki; _index = 2;
12195         if (_rank == _rankm) goto dispatch;
12196       }
12197     }
12198   check_2:
12199 
12200     if (items == 1) {
12201       SWIG_TypeRank _ranki = 0;
12202       SWIG_TypeRank _rankm = 0;
12203       SWIG_TypeRank _pi = 1;
12204       int _v = 0;
12205       {
12206         {
12207           {
12208             /* wrapped vector? */
12209             std::vector< int >* v;
12210             if (SWIG_ConvertPtr(ST(0),(void **) &v,
12211                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
12212               _v = 1;
12213             } else if (SvROK(ST(0))) {
12214               /* native sequence? */
12215               AV *av = (AV *)SvRV(ST(0));
12216               if (SvTYPE(av) == SVt_PVAV) {
12217                 I32 len = av_len(av) + 1;
12218                 if (len == 0) {
12219                   /* an empty sequence can be of any type */
12220                   _v = 1;
12221                 } else {
12222                   /* check the first element only */
12223                   SV **tv = av_fetch(av, 0, 0);
12224                   if (SvIOK(*tv))
12225                   _v = 1;
12226                   else
12227                   _v = 0;
12228                 }
12229               }
12230             } else {
12231               _v = 0;
12232             }
12233           }
12234         }
12235       }
12236       if (!_v) goto check_3;
12237       _ranki += _v*_pi;
12238       _rankm += _pi;
12239       _pi *= SWIG_MAXCASTRANK;
12240       if (!_index || (_ranki < _rank)) {
12241         _rank = _ranki; _index = 3;
12242         if (_rank == _rankm) goto dispatch;
12243       }
12244     }
12245   check_3:
12246 
12247     if (items == 2) {
12248       SWIG_TypeRank _ranki = 0;
12249       SWIG_TypeRank _rankm = 0;
12250       SWIG_TypeRank _pi = 1;
12251       int _v = 0;
12252       {
12253         {
12254           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
12255           _v = SWIG_CheckState(res);
12256         }
12257       }
12258       if (!_v) goto check_4;
12259       _ranki += _v*_pi;
12260       _rankm += _pi;
12261       _pi *= SWIG_MAXCASTRANK;
12262       {
12263         {
12264           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
12265           _v = SWIG_CheckState(res);
12266         }
12267       }
12268       if (!_v) goto check_4;
12269       _ranki += _v*_pi;
12270       _rankm += _pi;
12271       _pi *= SWIG_MAXCASTRANK;
12272       if (!_index || (_ranki < _rank)) {
12273         _rank = _ranki; _index = 4;
12274         if (_rank == _rankm) goto dispatch;
12275       }
12276     }
12277   check_4:
12278 
12279   dispatch:
12280     switch(_index) {
12281     case 1:
12282       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_IntVector__SWIG_1); return;
12283     case 2:
12284       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_IntVector__SWIG_0); return;
12285     case 3:
12286       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_IntVector__SWIG_3); return;
12287     case 4:
12288       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_IntVector__SWIG_2); return;
12289     }
12290   }
12291 
12292   croak("No matching function for overloaded 'new_IntVector'");
12293   XSRETURN(0);
12294 }
12295 
12296 
XS(_wrap_IntVector_size)12297 XS(_wrap_IntVector_size) {
12298   {
12299     std::vector< int > *arg1 = (std::vector< int > *) 0 ;
12300     std::vector< int > temp1 ;
12301     std::vector< int > *v1 ;
12302     int argvi = 0;
12303     unsigned int result;
12304     dXSARGS;
12305 
12306     if ((items < 1) || (items > 1)) {
12307       SWIG_croak("Usage: IntVector_size(self);");
12308     }
12309     {
12310       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
12311           SWIGTYPE_p_std__vectorT_int_t,1) != -1) {
12312         arg1 = v1;
12313       } else if (SvROK(ST(0))) {
12314         AV *av = (AV *)SvRV(ST(0));
12315         if (SvTYPE(av) != SVt_PVAV)
12316         SWIG_croak("Type error in argument 1 of IntVector_size. "
12317           "Expected an array of ""int");
12318         SV **tv;
12319         I32 len = av_len(av) + 1;
12320         for (int i=0; i<len; i++) {
12321           tv = av_fetch(av, i, 0);
12322           if (SvIOK(*tv)) {
12323             temp1.push_back((int)SvIVX(*tv));
12324           } else {
12325             SWIG_croak("Type error in argument 1 of "
12326               "IntVector_size. "
12327               "Expected an array of ""int");
12328           }
12329         }
12330         arg1 = &temp1;
12331       } else {
12332         SWIG_croak("Type error in argument 1 of IntVector_size. "
12333           "Expected an array of ""int");
12334       }
12335     }
12336     {
12337       try {
12338         result = (unsigned int)((std::vector< int > const *)arg1)->size();
12339       } catch (const std::exception& e) {
12340         SWIG_exception(SWIG_RuntimeError, e.what());
12341       }
12342     }
12343     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
12344 
12345     XSRETURN(argvi);
12346   fail:
12347 
12348     SWIG_croak_null();
12349   }
12350 }
12351 
12352 
XS(_wrap_IntVector_empty)12353 XS(_wrap_IntVector_empty) {
12354   {
12355     std::vector< int > *arg1 = (std::vector< int > *) 0 ;
12356     std::vector< int > temp1 ;
12357     std::vector< int > *v1 ;
12358     int argvi = 0;
12359     bool result;
12360     dXSARGS;
12361 
12362     if ((items < 1) || (items > 1)) {
12363       SWIG_croak("Usage: IntVector_empty(self);");
12364     }
12365     {
12366       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
12367           SWIGTYPE_p_std__vectorT_int_t,1) != -1) {
12368         arg1 = v1;
12369       } else if (SvROK(ST(0))) {
12370         AV *av = (AV *)SvRV(ST(0));
12371         if (SvTYPE(av) != SVt_PVAV)
12372         SWIG_croak("Type error in argument 1 of IntVector_empty. "
12373           "Expected an array of ""int");
12374         SV **tv;
12375         I32 len = av_len(av) + 1;
12376         for (int i=0; i<len; i++) {
12377           tv = av_fetch(av, i, 0);
12378           if (SvIOK(*tv)) {
12379             temp1.push_back((int)SvIVX(*tv));
12380           } else {
12381             SWIG_croak("Type error in argument 1 of "
12382               "IntVector_empty. "
12383               "Expected an array of ""int");
12384           }
12385         }
12386         arg1 = &temp1;
12387       } else {
12388         SWIG_croak("Type error in argument 1 of IntVector_empty. "
12389           "Expected an array of ""int");
12390       }
12391     }
12392     {
12393       try {
12394         result = (bool)((std::vector< int > const *)arg1)->empty();
12395       } catch (const std::exception& e) {
12396         SWIG_exception(SWIG_RuntimeError, e.what());
12397       }
12398     }
12399     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
12400 
12401     XSRETURN(argvi);
12402   fail:
12403 
12404     SWIG_croak_null();
12405   }
12406 }
12407 
12408 
XS(_wrap_IntVector_clear)12409 XS(_wrap_IntVector_clear) {
12410   {
12411     std::vector< int > *arg1 = (std::vector< int > *) 0 ;
12412     void *argp1 = 0 ;
12413     int res1 = 0 ;
12414     int argvi = 0;
12415     dXSARGS;
12416 
12417     if ((items < 1) || (items > 1)) {
12418       SWIG_croak("Usage: IntVector_clear(self);");
12419     }
12420     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_int_t, 0 |  0 );
12421     if (!SWIG_IsOK(res1)) {
12422       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IntVector_clear" "', argument " "1"" of type '" "std::vector< int > *""'");
12423     }
12424     arg1 = reinterpret_cast< std::vector< int > * >(argp1);
12425     {
12426       try {
12427         (arg1)->clear();
12428       } catch (const std::exception& e) {
12429         SWIG_exception(SWIG_RuntimeError, e.what());
12430       }
12431     }
12432     ST(argvi) = &PL_sv_undef;
12433 
12434     XSRETURN(argvi);
12435   fail:
12436 
12437     SWIG_croak_null();
12438   }
12439 }
12440 
12441 
XS(_wrap_IntVector_push)12442 XS(_wrap_IntVector_push) {
12443   {
12444     std::vector< int > *arg1 = (std::vector< int > *) 0 ;
12445     int arg2 ;
12446     void *argp1 = 0 ;
12447     int res1 = 0 ;
12448     int val2 ;
12449     int ecode2 = 0 ;
12450     int argvi = 0;
12451     dXSARGS;
12452 
12453     if ((items < 2) || (items > 2)) {
12454       SWIG_croak("Usage: IntVector_push(self,x);");
12455     }
12456     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_int_t, 0 |  0 );
12457     if (!SWIG_IsOK(res1)) {
12458       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IntVector_push" "', argument " "1"" of type '" "std::vector< int > *""'");
12459     }
12460     arg1 = reinterpret_cast< std::vector< int > * >(argp1);
12461     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
12462     if (!SWIG_IsOK(ecode2)) {
12463       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "IntVector_push" "', argument " "2"" of type '" "int""'");
12464     }
12465     arg2 = static_cast< int >(val2);
12466     {
12467       try {
12468         (arg1)->push_back(arg2);
12469       } catch (const std::exception& e) {
12470         SWIG_exception(SWIG_RuntimeError, e.what());
12471       }
12472     }
12473     ST(argvi) = &PL_sv_undef;
12474 
12475 
12476     XSRETURN(argvi);
12477   fail:
12478 
12479 
12480     SWIG_croak_null();
12481   }
12482 }
12483 
12484 
XS(_wrap_IntVector_pop)12485 XS(_wrap_IntVector_pop) {
12486   {
12487     std::vector< int > *arg1 = (std::vector< int > *) 0 ;
12488     void *argp1 = 0 ;
12489     int res1 = 0 ;
12490     int argvi = 0;
12491     int result;
12492     dXSARGS;
12493 
12494     if ((items < 1) || (items > 1)) {
12495       SWIG_croak("Usage: IntVector_pop(self);");
12496     }
12497     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_int_t, 0 |  0 );
12498     if (!SWIG_IsOK(res1)) {
12499       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IntVector_pop" "', argument " "1"" of type '" "std::vector< int > *""'");
12500     }
12501     arg1 = reinterpret_cast< std::vector< int > * >(argp1);
12502     {
12503       try {
12504         try {
12505           result = (int)std_vector_Sl_int_Sg__pop(arg1);
12506         } catch(std::out_of_range &_e) {
12507           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
12508         }
12509       } catch (const std::exception& e) {
12510         SWIG_exception(SWIG_RuntimeError, e.what());
12511       }
12512     }
12513     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
12514 
12515     XSRETURN(argvi);
12516   fail:
12517 
12518     SWIG_croak_null();
12519   }
12520 }
12521 
12522 
XS(_wrap_IntVector_get)12523 XS(_wrap_IntVector_get) {
12524   {
12525     std::vector< int > *arg1 = (std::vector< int > *) 0 ;
12526     int arg2 ;
12527     void *argp1 = 0 ;
12528     int res1 = 0 ;
12529     int val2 ;
12530     int ecode2 = 0 ;
12531     int argvi = 0;
12532     int result;
12533     dXSARGS;
12534 
12535     if ((items < 2) || (items > 2)) {
12536       SWIG_croak("Usage: IntVector_get(self,i);");
12537     }
12538     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_int_t, 0 |  0 );
12539     if (!SWIG_IsOK(res1)) {
12540       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IntVector_get" "', argument " "1"" of type '" "std::vector< int > *""'");
12541     }
12542     arg1 = reinterpret_cast< std::vector< int > * >(argp1);
12543     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
12544     if (!SWIG_IsOK(ecode2)) {
12545       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "IntVector_get" "', argument " "2"" of type '" "int""'");
12546     }
12547     arg2 = static_cast< int >(val2);
12548     {
12549       try {
12550         try {
12551           result = (int)std_vector_Sl_int_Sg__get(arg1,arg2);
12552         } catch(std::out_of_range &_e) {
12553           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
12554         }
12555       } catch (const std::exception& e) {
12556         SWIG_exception(SWIG_RuntimeError, e.what());
12557       }
12558     }
12559     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
12560 
12561 
12562     XSRETURN(argvi);
12563   fail:
12564 
12565 
12566     SWIG_croak_null();
12567   }
12568 }
12569 
12570 
XS(_wrap_IntVector_set)12571 XS(_wrap_IntVector_set) {
12572   {
12573     std::vector< int > *arg1 = (std::vector< int > *) 0 ;
12574     int arg2 ;
12575     int arg3 ;
12576     void *argp1 = 0 ;
12577     int res1 = 0 ;
12578     int val2 ;
12579     int ecode2 = 0 ;
12580     int val3 ;
12581     int ecode3 = 0 ;
12582     int argvi = 0;
12583     dXSARGS;
12584 
12585     if ((items < 3) || (items > 3)) {
12586       SWIG_croak("Usage: IntVector_set(self,i,x);");
12587     }
12588     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_int_t, 0 |  0 );
12589     if (!SWIG_IsOK(res1)) {
12590       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IntVector_set" "', argument " "1"" of type '" "std::vector< int > *""'");
12591     }
12592     arg1 = reinterpret_cast< std::vector< int > * >(argp1);
12593     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
12594     if (!SWIG_IsOK(ecode2)) {
12595       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "IntVector_set" "', argument " "2"" of type '" "int""'");
12596     }
12597     arg2 = static_cast< int >(val2);
12598     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
12599     if (!SWIG_IsOK(ecode3)) {
12600       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "IntVector_set" "', argument " "3"" of type '" "int""'");
12601     }
12602     arg3 = static_cast< int >(val3);
12603     {
12604       try {
12605         try {
12606           std_vector_Sl_int_Sg__set(arg1,arg2,arg3);
12607         } catch(std::out_of_range &_e) {
12608           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
12609         }
12610       } catch (const std::exception& e) {
12611         SWIG_exception(SWIG_RuntimeError, e.what());
12612       }
12613     }
12614     ST(argvi) = &PL_sv_undef;
12615 
12616 
12617 
12618     XSRETURN(argvi);
12619   fail:
12620 
12621 
12622 
12623     SWIG_croak_null();
12624   }
12625 }
12626 
12627 
XS(_wrap_delete_IntVector)12628 XS(_wrap_delete_IntVector) {
12629   {
12630     std::vector< int > *arg1 = (std::vector< int > *) 0 ;
12631     void *argp1 = 0 ;
12632     int res1 = 0 ;
12633     int argvi = 0;
12634     dXSARGS;
12635 
12636     if ((items < 1) || (items > 1)) {
12637       SWIG_croak("Usage: delete_IntVector(self);");
12638     }
12639     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_int_t, SWIG_POINTER_DISOWN |  0 );
12640     if (!SWIG_IsOK(res1)) {
12641       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_IntVector" "', argument " "1"" of type '" "std::vector< int > *""'");
12642     }
12643     arg1 = reinterpret_cast< std::vector< int > * >(argp1);
12644     {
12645       try {
12646         delete arg1;
12647       } catch (const std::exception& e) {
12648         SWIG_exception(SWIG_RuntimeError, e.what());
12649       }
12650     }
12651     ST(argvi) = &PL_sv_undef;
12652 
12653     XSRETURN(argvi);
12654   fail:
12655 
12656     SWIG_croak_null();
12657   }
12658 }
12659 
12660 
XS(_wrap_new_UIntVector__SWIG_0)12661 XS(_wrap_new_UIntVector__SWIG_0) {
12662   {
12663     unsigned int arg1 ;
12664     unsigned int val1 ;
12665     int ecode1 = 0 ;
12666     int argvi = 0;
12667     std::vector< unsigned int > *result = 0 ;
12668     dXSARGS;
12669 
12670     if ((items < 1) || (items > 1)) {
12671       SWIG_croak("Usage: new_UIntVector(size);");
12672     }
12673     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
12674     if (!SWIG_IsOK(ecode1)) {
12675       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_UIntVector" "', argument " "1"" of type '" "unsigned int""'");
12676     }
12677     arg1 = static_cast< unsigned int >(val1);
12678     {
12679       try {
12680         result = (std::vector< unsigned int > *)new std::vector< unsigned int >(arg1);
12681       } catch (const std::exception& e) {
12682         SWIG_exception(SWIG_RuntimeError, e.what());
12683       }
12684     }
12685     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_unsigned_int_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
12686 
12687     XSRETURN(argvi);
12688   fail:
12689 
12690     SWIG_croak_null();
12691   }
12692 }
12693 
12694 
XS(_wrap_new_UIntVector__SWIG_1)12695 XS(_wrap_new_UIntVector__SWIG_1) {
12696   {
12697     int argvi = 0;
12698     std::vector< unsigned int > *result = 0 ;
12699     dXSARGS;
12700 
12701     if ((items < 0) || (items > 0)) {
12702       SWIG_croak("Usage: new_UIntVector();");
12703     }
12704     {
12705       try {
12706         result = (std::vector< unsigned int > *)new std::vector< unsigned int >();
12707       } catch (const std::exception& e) {
12708         SWIG_exception(SWIG_RuntimeError, e.what());
12709       }
12710     }
12711     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_unsigned_int_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
12712     XSRETURN(argvi);
12713   fail:
12714     SWIG_croak_null();
12715   }
12716 }
12717 
12718 
XS(_wrap_new_UIntVector__SWIG_2)12719 XS(_wrap_new_UIntVector__SWIG_2) {
12720   {
12721     unsigned int arg1 ;
12722     unsigned int arg2 ;
12723     unsigned int val1 ;
12724     int ecode1 = 0 ;
12725     unsigned int val2 ;
12726     int ecode2 = 0 ;
12727     int argvi = 0;
12728     std::vector< unsigned int > *result = 0 ;
12729     dXSARGS;
12730 
12731     if ((items < 2) || (items > 2)) {
12732       SWIG_croak("Usage: new_UIntVector(size,value);");
12733     }
12734     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
12735     if (!SWIG_IsOK(ecode1)) {
12736       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_UIntVector" "', argument " "1"" of type '" "unsigned int""'");
12737     }
12738     arg1 = static_cast< unsigned int >(val1);
12739     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
12740     if (!SWIG_IsOK(ecode2)) {
12741       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_UIntVector" "', argument " "2"" of type '" "unsigned int""'");
12742     }
12743     arg2 = static_cast< unsigned int >(val2);
12744     {
12745       try {
12746         result = (std::vector< unsigned int > *)new std::vector< unsigned int >(arg1,arg2);
12747       } catch (const std::exception& e) {
12748         SWIG_exception(SWIG_RuntimeError, e.what());
12749       }
12750     }
12751     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_unsigned_int_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
12752 
12753 
12754     XSRETURN(argvi);
12755   fail:
12756 
12757 
12758     SWIG_croak_null();
12759   }
12760 }
12761 
12762 
XS(_wrap_new_UIntVector__SWIG_3)12763 XS(_wrap_new_UIntVector__SWIG_3) {
12764   {
12765     std::vector< unsigned int > *arg1 = 0 ;
12766     std::vector< unsigned int > temp1 ;
12767     std::vector< unsigned int > *v1 ;
12768     int argvi = 0;
12769     std::vector< unsigned int > *result = 0 ;
12770     dXSARGS;
12771 
12772     if ((items < 1) || (items > 1)) {
12773       SWIG_croak("Usage: new_UIntVector(other);");
12774     }
12775     {
12776       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
12777           SWIGTYPE_p_std__vectorT_unsigned_int_t,1) != -1) {
12778         arg1 = v1;
12779       } else if (SvROK(ST(0))) {
12780         AV *av = (AV *)SvRV(ST(0));
12781         if (SvTYPE(av) != SVt_PVAV)
12782         SWIG_croak("Type error in argument 1 of new_UIntVector. "
12783           "Expected an array of ""unsigned int");
12784         SV **tv;
12785         I32 len = av_len(av) + 1;
12786         for (int i=0; i<len; i++) {
12787           tv = av_fetch(av, i, 0);
12788           if (SvIOK(*tv)) {
12789             temp1.push_back((unsigned int)SvIVX(*tv));
12790           } else {
12791             SWIG_croak("Type error in argument 1 of "
12792               "new_UIntVector. "
12793               "Expected an array of ""unsigned int");
12794           }
12795         }
12796         arg1 = &temp1;
12797       } else {
12798         SWIG_croak("Type error in argument 1 of new_UIntVector. "
12799           "Expected an array of ""unsigned int");
12800       }
12801     }
12802     {
12803       try {
12804         result = (std::vector< unsigned int > *)new std::vector< unsigned int >((std::vector< unsigned int > const &)*arg1);
12805       } catch (const std::exception& e) {
12806         SWIG_exception(SWIG_RuntimeError, e.what());
12807       }
12808     }
12809     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_unsigned_int_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
12810 
12811     XSRETURN(argvi);
12812   fail:
12813 
12814     SWIG_croak_null();
12815   }
12816 }
12817 
12818 
XS(_wrap_new_UIntVector)12819 XS(_wrap_new_UIntVector) {
12820   dXSARGS;
12821 
12822   {
12823     unsigned long _index = 0;
12824     SWIG_TypeRank _rank = 0;
12825     if (items == 0) {
12826       SWIG_TypeRank _ranki = 0;
12827       SWIG_TypeRank _rankm = 0;
12828       if (!_index || (_ranki < _rank)) {
12829         _rank = _ranki; _index = 1;
12830         if (_rank == _rankm) goto dispatch;
12831       }
12832     }
12833     if (items == 1) {
12834       SWIG_TypeRank _ranki = 0;
12835       SWIG_TypeRank _rankm = 0;
12836       SWIG_TypeRank _pi = 1;
12837       int _v = 0;
12838       {
12839         {
12840           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
12841           _v = SWIG_CheckState(res);
12842         }
12843       }
12844       if (!_v) goto check_2;
12845       _ranki += _v*_pi;
12846       _rankm += _pi;
12847       _pi *= SWIG_MAXCASTRANK;
12848       if (!_index || (_ranki < _rank)) {
12849         _rank = _ranki; _index = 2;
12850         if (_rank == _rankm) goto dispatch;
12851       }
12852     }
12853   check_2:
12854 
12855     if (items == 1) {
12856       SWIG_TypeRank _ranki = 0;
12857       SWIG_TypeRank _rankm = 0;
12858       SWIG_TypeRank _pi = 1;
12859       int _v = 0;
12860       {
12861         {
12862           {
12863             /* wrapped vector? */
12864             std::vector< unsigned int >* v;
12865             if (SWIG_ConvertPtr(ST(0),(void **) &v,
12866                 SWIGTYPE_p_std__vectorT_unsigned_int_t,0) != -1) {
12867               _v = 1;
12868             } else if (SvROK(ST(0))) {
12869               /* native sequence? */
12870               AV *av = (AV *)SvRV(ST(0));
12871               if (SvTYPE(av) == SVt_PVAV) {
12872                 I32 len = av_len(av) + 1;
12873                 if (len == 0) {
12874                   /* an empty sequence can be of any type */
12875                   _v = 1;
12876                 } else {
12877                   /* check the first element only */
12878                   SV **tv = av_fetch(av, 0, 0);
12879                   if (SvIOK(*tv))
12880                   _v = 1;
12881                   else
12882                   _v = 0;
12883                 }
12884               }
12885             } else {
12886               _v = 0;
12887             }
12888           }
12889         }
12890       }
12891       if (!_v) goto check_3;
12892       _ranki += _v*_pi;
12893       _rankm += _pi;
12894       _pi *= SWIG_MAXCASTRANK;
12895       if (!_index || (_ranki < _rank)) {
12896         _rank = _ranki; _index = 3;
12897         if (_rank == _rankm) goto dispatch;
12898       }
12899     }
12900   check_3:
12901 
12902     if (items == 2) {
12903       SWIG_TypeRank _ranki = 0;
12904       SWIG_TypeRank _rankm = 0;
12905       SWIG_TypeRank _pi = 1;
12906       int _v = 0;
12907       {
12908         {
12909           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
12910           _v = SWIG_CheckState(res);
12911         }
12912       }
12913       if (!_v) goto check_4;
12914       _ranki += _v*_pi;
12915       _rankm += _pi;
12916       _pi *= SWIG_MAXCASTRANK;
12917       {
12918         {
12919           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
12920           _v = SWIG_CheckState(res);
12921         }
12922       }
12923       if (!_v) goto check_4;
12924       _ranki += _v*_pi;
12925       _rankm += _pi;
12926       _pi *= SWIG_MAXCASTRANK;
12927       if (!_index || (_ranki < _rank)) {
12928         _rank = _ranki; _index = 4;
12929         if (_rank == _rankm) goto dispatch;
12930       }
12931     }
12932   check_4:
12933 
12934   dispatch:
12935     switch(_index) {
12936     case 1:
12937       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_UIntVector__SWIG_1); return;
12938     case 2:
12939       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_UIntVector__SWIG_0); return;
12940     case 3:
12941       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_UIntVector__SWIG_3); return;
12942     case 4:
12943       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_UIntVector__SWIG_2); return;
12944     }
12945   }
12946 
12947   croak("No matching function for overloaded 'new_UIntVector'");
12948   XSRETURN(0);
12949 }
12950 
12951 
XS(_wrap_UIntVector_size)12952 XS(_wrap_UIntVector_size) {
12953   {
12954     std::vector< unsigned int > *arg1 = (std::vector< unsigned int > *) 0 ;
12955     std::vector< unsigned int > temp1 ;
12956     std::vector< unsigned int > *v1 ;
12957     int argvi = 0;
12958     unsigned int result;
12959     dXSARGS;
12960 
12961     if ((items < 1) || (items > 1)) {
12962       SWIG_croak("Usage: UIntVector_size(self);");
12963     }
12964     {
12965       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
12966           SWIGTYPE_p_std__vectorT_unsigned_int_t,1) != -1) {
12967         arg1 = v1;
12968       } else if (SvROK(ST(0))) {
12969         AV *av = (AV *)SvRV(ST(0));
12970         if (SvTYPE(av) != SVt_PVAV)
12971         SWIG_croak("Type error in argument 1 of UIntVector_size. "
12972           "Expected an array of ""unsigned int");
12973         SV **tv;
12974         I32 len = av_len(av) + 1;
12975         for (int i=0; i<len; i++) {
12976           tv = av_fetch(av, i, 0);
12977           if (SvIOK(*tv)) {
12978             temp1.push_back((unsigned int)SvIVX(*tv));
12979           } else {
12980             SWIG_croak("Type error in argument 1 of "
12981               "UIntVector_size. "
12982               "Expected an array of ""unsigned int");
12983           }
12984         }
12985         arg1 = &temp1;
12986       } else {
12987         SWIG_croak("Type error in argument 1 of UIntVector_size. "
12988           "Expected an array of ""unsigned int");
12989       }
12990     }
12991     {
12992       try {
12993         result = (unsigned int)((std::vector< unsigned int > const *)arg1)->size();
12994       } catch (const std::exception& e) {
12995         SWIG_exception(SWIG_RuntimeError, e.what());
12996       }
12997     }
12998     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
12999 
13000     XSRETURN(argvi);
13001   fail:
13002 
13003     SWIG_croak_null();
13004   }
13005 }
13006 
13007 
XS(_wrap_UIntVector_empty)13008 XS(_wrap_UIntVector_empty) {
13009   {
13010     std::vector< unsigned int > *arg1 = (std::vector< unsigned int > *) 0 ;
13011     std::vector< unsigned int > temp1 ;
13012     std::vector< unsigned int > *v1 ;
13013     int argvi = 0;
13014     bool result;
13015     dXSARGS;
13016 
13017     if ((items < 1) || (items > 1)) {
13018       SWIG_croak("Usage: UIntVector_empty(self);");
13019     }
13020     {
13021       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
13022           SWIGTYPE_p_std__vectorT_unsigned_int_t,1) != -1) {
13023         arg1 = v1;
13024       } else if (SvROK(ST(0))) {
13025         AV *av = (AV *)SvRV(ST(0));
13026         if (SvTYPE(av) != SVt_PVAV)
13027         SWIG_croak("Type error in argument 1 of UIntVector_empty. "
13028           "Expected an array of ""unsigned int");
13029         SV **tv;
13030         I32 len = av_len(av) + 1;
13031         for (int i=0; i<len; i++) {
13032           tv = av_fetch(av, i, 0);
13033           if (SvIOK(*tv)) {
13034             temp1.push_back((unsigned int)SvIVX(*tv));
13035           } else {
13036             SWIG_croak("Type error in argument 1 of "
13037               "UIntVector_empty. "
13038               "Expected an array of ""unsigned int");
13039           }
13040         }
13041         arg1 = &temp1;
13042       } else {
13043         SWIG_croak("Type error in argument 1 of UIntVector_empty. "
13044           "Expected an array of ""unsigned int");
13045       }
13046     }
13047     {
13048       try {
13049         result = (bool)((std::vector< unsigned int > const *)arg1)->empty();
13050       } catch (const std::exception& e) {
13051         SWIG_exception(SWIG_RuntimeError, e.what());
13052       }
13053     }
13054     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
13055 
13056     XSRETURN(argvi);
13057   fail:
13058 
13059     SWIG_croak_null();
13060   }
13061 }
13062 
13063 
XS(_wrap_UIntVector_clear)13064 XS(_wrap_UIntVector_clear) {
13065   {
13066     std::vector< unsigned int > *arg1 = (std::vector< unsigned int > *) 0 ;
13067     void *argp1 = 0 ;
13068     int res1 = 0 ;
13069     int argvi = 0;
13070     dXSARGS;
13071 
13072     if ((items < 1) || (items > 1)) {
13073       SWIG_croak("Usage: UIntVector_clear(self);");
13074     }
13075     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_unsigned_int_t, 0 |  0 );
13076     if (!SWIG_IsOK(res1)) {
13077       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "UIntVector_clear" "', argument " "1"" of type '" "std::vector< unsigned int > *""'");
13078     }
13079     arg1 = reinterpret_cast< std::vector< unsigned int > * >(argp1);
13080     {
13081       try {
13082         (arg1)->clear();
13083       } catch (const std::exception& e) {
13084         SWIG_exception(SWIG_RuntimeError, e.what());
13085       }
13086     }
13087     ST(argvi) = &PL_sv_undef;
13088 
13089     XSRETURN(argvi);
13090   fail:
13091 
13092     SWIG_croak_null();
13093   }
13094 }
13095 
13096 
XS(_wrap_UIntVector_push)13097 XS(_wrap_UIntVector_push) {
13098   {
13099     std::vector< unsigned int > *arg1 = (std::vector< unsigned int > *) 0 ;
13100     unsigned int arg2 ;
13101     void *argp1 = 0 ;
13102     int res1 = 0 ;
13103     unsigned int val2 ;
13104     int ecode2 = 0 ;
13105     int argvi = 0;
13106     dXSARGS;
13107 
13108     if ((items < 2) || (items > 2)) {
13109       SWIG_croak("Usage: UIntVector_push(self,x);");
13110     }
13111     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_unsigned_int_t, 0 |  0 );
13112     if (!SWIG_IsOK(res1)) {
13113       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "UIntVector_push" "', argument " "1"" of type '" "std::vector< unsigned int > *""'");
13114     }
13115     arg1 = reinterpret_cast< std::vector< unsigned int > * >(argp1);
13116     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
13117     if (!SWIG_IsOK(ecode2)) {
13118       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "UIntVector_push" "', argument " "2"" of type '" "unsigned int""'");
13119     }
13120     arg2 = static_cast< unsigned int >(val2);
13121     {
13122       try {
13123         (arg1)->push_back(arg2);
13124       } catch (const std::exception& e) {
13125         SWIG_exception(SWIG_RuntimeError, e.what());
13126       }
13127     }
13128     ST(argvi) = &PL_sv_undef;
13129 
13130 
13131     XSRETURN(argvi);
13132   fail:
13133 
13134 
13135     SWIG_croak_null();
13136   }
13137 }
13138 
13139 
XS(_wrap_UIntVector_pop)13140 XS(_wrap_UIntVector_pop) {
13141   {
13142     std::vector< unsigned int > *arg1 = (std::vector< unsigned int > *) 0 ;
13143     void *argp1 = 0 ;
13144     int res1 = 0 ;
13145     int argvi = 0;
13146     unsigned int result;
13147     dXSARGS;
13148 
13149     if ((items < 1) || (items > 1)) {
13150       SWIG_croak("Usage: UIntVector_pop(self);");
13151     }
13152     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_unsigned_int_t, 0 |  0 );
13153     if (!SWIG_IsOK(res1)) {
13154       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "UIntVector_pop" "', argument " "1"" of type '" "std::vector< unsigned int > *""'");
13155     }
13156     arg1 = reinterpret_cast< std::vector< unsigned int > * >(argp1);
13157     {
13158       try {
13159         try {
13160           result = (unsigned int)std_vector_Sl_unsigned_SS_int_Sg__pop(arg1);
13161         } catch(std::out_of_range &_e) {
13162           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
13163         }
13164       } catch (const std::exception& e) {
13165         SWIG_exception(SWIG_RuntimeError, e.what());
13166       }
13167     }
13168     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
13169 
13170     XSRETURN(argvi);
13171   fail:
13172 
13173     SWIG_croak_null();
13174   }
13175 }
13176 
13177 
XS(_wrap_UIntVector_get)13178 XS(_wrap_UIntVector_get) {
13179   {
13180     std::vector< unsigned int > *arg1 = (std::vector< unsigned int > *) 0 ;
13181     int arg2 ;
13182     void *argp1 = 0 ;
13183     int res1 = 0 ;
13184     int val2 ;
13185     int ecode2 = 0 ;
13186     int argvi = 0;
13187     unsigned int result;
13188     dXSARGS;
13189 
13190     if ((items < 2) || (items > 2)) {
13191       SWIG_croak("Usage: UIntVector_get(self,i);");
13192     }
13193     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_unsigned_int_t, 0 |  0 );
13194     if (!SWIG_IsOK(res1)) {
13195       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "UIntVector_get" "', argument " "1"" of type '" "std::vector< unsigned int > *""'");
13196     }
13197     arg1 = reinterpret_cast< std::vector< unsigned int > * >(argp1);
13198     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
13199     if (!SWIG_IsOK(ecode2)) {
13200       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "UIntVector_get" "', argument " "2"" of type '" "int""'");
13201     }
13202     arg2 = static_cast< int >(val2);
13203     {
13204       try {
13205         try {
13206           result = (unsigned int)std_vector_Sl_unsigned_SS_int_Sg__get(arg1,arg2);
13207         } catch(std::out_of_range &_e) {
13208           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
13209         }
13210       } catch (const std::exception& e) {
13211         SWIG_exception(SWIG_RuntimeError, e.what());
13212       }
13213     }
13214     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
13215 
13216 
13217     XSRETURN(argvi);
13218   fail:
13219 
13220 
13221     SWIG_croak_null();
13222   }
13223 }
13224 
13225 
XS(_wrap_UIntVector_set)13226 XS(_wrap_UIntVector_set) {
13227   {
13228     std::vector< unsigned int > *arg1 = (std::vector< unsigned int > *) 0 ;
13229     int arg2 ;
13230     unsigned int arg3 ;
13231     void *argp1 = 0 ;
13232     int res1 = 0 ;
13233     int val2 ;
13234     int ecode2 = 0 ;
13235     unsigned int val3 ;
13236     int ecode3 = 0 ;
13237     int argvi = 0;
13238     dXSARGS;
13239 
13240     if ((items < 3) || (items > 3)) {
13241       SWIG_croak("Usage: UIntVector_set(self,i,x);");
13242     }
13243     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_unsigned_int_t, 0 |  0 );
13244     if (!SWIG_IsOK(res1)) {
13245       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "UIntVector_set" "', argument " "1"" of type '" "std::vector< unsigned int > *""'");
13246     }
13247     arg1 = reinterpret_cast< std::vector< unsigned int > * >(argp1);
13248     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
13249     if (!SWIG_IsOK(ecode2)) {
13250       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "UIntVector_set" "', argument " "2"" of type '" "int""'");
13251     }
13252     arg2 = static_cast< int >(val2);
13253     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
13254     if (!SWIG_IsOK(ecode3)) {
13255       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "UIntVector_set" "', argument " "3"" of type '" "unsigned int""'");
13256     }
13257     arg3 = static_cast< unsigned int >(val3);
13258     {
13259       try {
13260         try {
13261           std_vector_Sl_unsigned_SS_int_Sg__set(arg1,arg2,arg3);
13262         } catch(std::out_of_range &_e) {
13263           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
13264         }
13265       } catch (const std::exception& e) {
13266         SWIG_exception(SWIG_RuntimeError, e.what());
13267       }
13268     }
13269     ST(argvi) = &PL_sv_undef;
13270 
13271 
13272 
13273     XSRETURN(argvi);
13274   fail:
13275 
13276 
13277 
13278     SWIG_croak_null();
13279   }
13280 }
13281 
13282 
XS(_wrap_delete_UIntVector)13283 XS(_wrap_delete_UIntVector) {
13284   {
13285     std::vector< unsigned int > *arg1 = (std::vector< unsigned int > *) 0 ;
13286     void *argp1 = 0 ;
13287     int res1 = 0 ;
13288     int argvi = 0;
13289     dXSARGS;
13290 
13291     if ((items < 1) || (items > 1)) {
13292       SWIG_croak("Usage: delete_UIntVector(self);");
13293     }
13294     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_unsigned_int_t, SWIG_POINTER_DISOWN |  0 );
13295     if (!SWIG_IsOK(res1)) {
13296       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_UIntVector" "', argument " "1"" of type '" "std::vector< unsigned int > *""'");
13297     }
13298     arg1 = reinterpret_cast< std::vector< unsigned int > * >(argp1);
13299     {
13300       try {
13301         delete arg1;
13302       } catch (const std::exception& e) {
13303         SWIG_exception(SWIG_RuntimeError, e.what());
13304       }
13305     }
13306     ST(argvi) = &PL_sv_undef;
13307 
13308     XSRETURN(argvi);
13309   fail:
13310 
13311     SWIG_croak_null();
13312   }
13313 }
13314 
13315 
XS(_wrap_new_DoubleVector__SWIG_0)13316 XS(_wrap_new_DoubleVector__SWIG_0) {
13317   {
13318     unsigned int arg1 ;
13319     unsigned int val1 ;
13320     int ecode1 = 0 ;
13321     int argvi = 0;
13322     std::vector< double > *result = 0 ;
13323     dXSARGS;
13324 
13325     if ((items < 1) || (items > 1)) {
13326       SWIG_croak("Usage: new_DoubleVector(size);");
13327     }
13328     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
13329     if (!SWIG_IsOK(ecode1)) {
13330       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_DoubleVector" "', argument " "1"" of type '" "unsigned int""'");
13331     }
13332     arg1 = static_cast< unsigned int >(val1);
13333     {
13334       try {
13335         result = (std::vector< double > *)new std::vector< double >(arg1);
13336       } catch (const std::exception& e) {
13337         SWIG_exception(SWIG_RuntimeError, e.what());
13338       }
13339     }
13340     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_double_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
13341 
13342     XSRETURN(argvi);
13343   fail:
13344 
13345     SWIG_croak_null();
13346   }
13347 }
13348 
13349 
XS(_wrap_new_DoubleVector__SWIG_1)13350 XS(_wrap_new_DoubleVector__SWIG_1) {
13351   {
13352     int argvi = 0;
13353     std::vector< double > *result = 0 ;
13354     dXSARGS;
13355 
13356     if ((items < 0) || (items > 0)) {
13357       SWIG_croak("Usage: new_DoubleVector();");
13358     }
13359     {
13360       try {
13361         result = (std::vector< double > *)new std::vector< double >();
13362       } catch (const std::exception& e) {
13363         SWIG_exception(SWIG_RuntimeError, e.what());
13364       }
13365     }
13366     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_double_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
13367     XSRETURN(argvi);
13368   fail:
13369     SWIG_croak_null();
13370   }
13371 }
13372 
13373 
XS(_wrap_new_DoubleVector__SWIG_2)13374 XS(_wrap_new_DoubleVector__SWIG_2) {
13375   {
13376     unsigned int arg1 ;
13377     double arg2 ;
13378     unsigned int val1 ;
13379     int ecode1 = 0 ;
13380     double val2 ;
13381     int ecode2 = 0 ;
13382     int argvi = 0;
13383     std::vector< double > *result = 0 ;
13384     dXSARGS;
13385 
13386     if ((items < 2) || (items > 2)) {
13387       SWIG_croak("Usage: new_DoubleVector(size,value);");
13388     }
13389     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
13390     if (!SWIG_IsOK(ecode1)) {
13391       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_DoubleVector" "', argument " "1"" of type '" "unsigned int""'");
13392     }
13393     arg1 = static_cast< unsigned int >(val1);
13394     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
13395     if (!SWIG_IsOK(ecode2)) {
13396       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_DoubleVector" "', argument " "2"" of type '" "double""'");
13397     }
13398     arg2 = static_cast< double >(val2);
13399     {
13400       try {
13401         result = (std::vector< double > *)new std::vector< double >(arg1,arg2);
13402       } catch (const std::exception& e) {
13403         SWIG_exception(SWIG_RuntimeError, e.what());
13404       }
13405     }
13406     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_double_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
13407 
13408 
13409     XSRETURN(argvi);
13410   fail:
13411 
13412 
13413     SWIG_croak_null();
13414   }
13415 }
13416 
13417 
XS(_wrap_new_DoubleVector__SWIG_3)13418 XS(_wrap_new_DoubleVector__SWIG_3) {
13419   {
13420     std::vector< double > *arg1 = 0 ;
13421     std::vector< double > temp1 ;
13422     std::vector< double > *v1 ;
13423     int argvi = 0;
13424     std::vector< double > *result = 0 ;
13425     dXSARGS;
13426 
13427     if ((items < 1) || (items > 1)) {
13428       SWIG_croak("Usage: new_DoubleVector(other);");
13429     }
13430     {
13431       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
13432           SWIGTYPE_p_std__vectorT_double_t,1) != -1) {
13433         arg1 = v1;
13434       } else if (SvROK(ST(0))) {
13435         AV *av = (AV *)SvRV(ST(0));
13436         if (SvTYPE(av) != SVt_PVAV)
13437         SWIG_croak("Type error in argument 1 of new_DoubleVector. "
13438           "Expected an array of ""double");
13439         SV **tv;
13440         I32 len = av_len(av) + 1;
13441         for (int i=0; i<len; i++) {
13442           tv = av_fetch(av, i, 0);
13443           if (SvNIOK(*tv)) {
13444             temp1.push_back((double)SwigSvToNumber(*tv));
13445           } else {
13446             SWIG_croak("Type error in argument 1 of "
13447               "new_DoubleVector. "
13448               "Expected an array of ""double");
13449           }
13450         }
13451         arg1 = &temp1;
13452       } else {
13453         SWIG_croak("Type error in argument 1 of new_DoubleVector. "
13454           "Expected an array of ""double");
13455       }
13456     }
13457     {
13458       try {
13459         result = (std::vector< double > *)new std::vector< double >((std::vector< double > const &)*arg1);
13460       } catch (const std::exception& e) {
13461         SWIG_exception(SWIG_RuntimeError, e.what());
13462       }
13463     }
13464     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_double_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
13465 
13466     XSRETURN(argvi);
13467   fail:
13468 
13469     SWIG_croak_null();
13470   }
13471 }
13472 
13473 
XS(_wrap_new_DoubleVector)13474 XS(_wrap_new_DoubleVector) {
13475   dXSARGS;
13476 
13477   {
13478     unsigned long _index = 0;
13479     SWIG_TypeRank _rank = 0;
13480     if (items == 0) {
13481       SWIG_TypeRank _ranki = 0;
13482       SWIG_TypeRank _rankm = 0;
13483       if (!_index || (_ranki < _rank)) {
13484         _rank = _ranki; _index = 1;
13485         if (_rank == _rankm) goto dispatch;
13486       }
13487     }
13488     if (items == 1) {
13489       SWIG_TypeRank _ranki = 0;
13490       SWIG_TypeRank _rankm = 0;
13491       SWIG_TypeRank _pi = 1;
13492       int _v = 0;
13493       {
13494         {
13495           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
13496           _v = SWIG_CheckState(res);
13497         }
13498       }
13499       if (!_v) goto check_2;
13500       _ranki += _v*_pi;
13501       _rankm += _pi;
13502       _pi *= SWIG_MAXCASTRANK;
13503       if (!_index || (_ranki < _rank)) {
13504         _rank = _ranki; _index = 2;
13505         if (_rank == _rankm) goto dispatch;
13506       }
13507     }
13508   check_2:
13509 
13510     if (items == 1) {
13511       SWIG_TypeRank _ranki = 0;
13512       SWIG_TypeRank _rankm = 0;
13513       SWIG_TypeRank _pi = 1;
13514       int _v = 0;
13515       {
13516         {
13517           {
13518             /* wrapped vector? */
13519             std::vector< double >* v;
13520             if (SWIG_ConvertPtr(ST(0),(void **) &v,
13521                 SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
13522               _v = 1;
13523             } else if (SvROK(ST(0))) {
13524               /* native sequence? */
13525               AV *av = (AV *)SvRV(ST(0));
13526               if (SvTYPE(av) == SVt_PVAV) {
13527                 I32 len = av_len(av) + 1;
13528                 if (len == 0) {
13529                   /* an empty sequence can be of any type */
13530                   _v = 1;
13531                 } else {
13532                   /* check the first element only */
13533                   SV **tv = av_fetch(av, 0, 0);
13534                   if (SvNIOK(*tv))
13535                   _v = 1;
13536                   else
13537                   _v = 0;
13538                 }
13539               }
13540             } else {
13541               _v = 0;
13542             }
13543           }
13544         }
13545       }
13546       if (!_v) goto check_3;
13547       _ranki += _v*_pi;
13548       _rankm += _pi;
13549       _pi *= SWIG_MAXCASTRANK;
13550       if (!_index || (_ranki < _rank)) {
13551         _rank = _ranki; _index = 3;
13552         if (_rank == _rankm) goto dispatch;
13553       }
13554     }
13555   check_3:
13556 
13557     if (items == 2) {
13558       SWIG_TypeRank _ranki = 0;
13559       SWIG_TypeRank _rankm = 0;
13560       SWIG_TypeRank _pi = 1;
13561       int _v = 0;
13562       {
13563         {
13564           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
13565           _v = SWIG_CheckState(res);
13566         }
13567       }
13568       if (!_v) goto check_4;
13569       _ranki += _v*_pi;
13570       _rankm += _pi;
13571       _pi *= SWIG_MAXCASTRANK;
13572       {
13573         {
13574           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
13575           _v = SWIG_CheckState(res);
13576         }
13577       }
13578       if (!_v) goto check_4;
13579       _ranki += _v*_pi;
13580       _rankm += _pi;
13581       _pi *= SWIG_MAXCASTRANK;
13582       if (!_index || (_ranki < _rank)) {
13583         _rank = _ranki; _index = 4;
13584         if (_rank == _rankm) goto dispatch;
13585       }
13586     }
13587   check_4:
13588 
13589   dispatch:
13590     switch(_index) {
13591     case 1:
13592       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DoubleVector__SWIG_1); return;
13593     case 2:
13594       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DoubleVector__SWIG_0); return;
13595     case 3:
13596       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DoubleVector__SWIG_3); return;
13597     case 4:
13598       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DoubleVector__SWIG_2); return;
13599     }
13600   }
13601 
13602   croak("No matching function for overloaded 'new_DoubleVector'");
13603   XSRETURN(0);
13604 }
13605 
13606 
XS(_wrap_DoubleVector_size)13607 XS(_wrap_DoubleVector_size) {
13608   {
13609     std::vector< double > *arg1 = (std::vector< double > *) 0 ;
13610     std::vector< double > temp1 ;
13611     std::vector< double > *v1 ;
13612     int argvi = 0;
13613     unsigned int result;
13614     dXSARGS;
13615 
13616     if ((items < 1) || (items > 1)) {
13617       SWIG_croak("Usage: DoubleVector_size(self);");
13618     }
13619     {
13620       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
13621           SWIGTYPE_p_std__vectorT_double_t,1) != -1) {
13622         arg1 = v1;
13623       } else if (SvROK(ST(0))) {
13624         AV *av = (AV *)SvRV(ST(0));
13625         if (SvTYPE(av) != SVt_PVAV)
13626         SWIG_croak("Type error in argument 1 of DoubleVector_size. "
13627           "Expected an array of ""double");
13628         SV **tv;
13629         I32 len = av_len(av) + 1;
13630         for (int i=0; i<len; i++) {
13631           tv = av_fetch(av, i, 0);
13632           if (SvNIOK(*tv)) {
13633             temp1.push_back((double)SwigSvToNumber(*tv));
13634           } else {
13635             SWIG_croak("Type error in argument 1 of "
13636               "DoubleVector_size. "
13637               "Expected an array of ""double");
13638           }
13639         }
13640         arg1 = &temp1;
13641       } else {
13642         SWIG_croak("Type error in argument 1 of DoubleVector_size. "
13643           "Expected an array of ""double");
13644       }
13645     }
13646     {
13647       try {
13648         result = (unsigned int)((std::vector< double > const *)arg1)->size();
13649       } catch (const std::exception& e) {
13650         SWIG_exception(SWIG_RuntimeError, e.what());
13651       }
13652     }
13653     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
13654 
13655     XSRETURN(argvi);
13656   fail:
13657 
13658     SWIG_croak_null();
13659   }
13660 }
13661 
13662 
XS(_wrap_DoubleVector_empty)13663 XS(_wrap_DoubleVector_empty) {
13664   {
13665     std::vector< double > *arg1 = (std::vector< double > *) 0 ;
13666     std::vector< double > temp1 ;
13667     std::vector< double > *v1 ;
13668     int argvi = 0;
13669     bool result;
13670     dXSARGS;
13671 
13672     if ((items < 1) || (items > 1)) {
13673       SWIG_croak("Usage: DoubleVector_empty(self);");
13674     }
13675     {
13676       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
13677           SWIGTYPE_p_std__vectorT_double_t,1) != -1) {
13678         arg1 = v1;
13679       } else if (SvROK(ST(0))) {
13680         AV *av = (AV *)SvRV(ST(0));
13681         if (SvTYPE(av) != SVt_PVAV)
13682         SWIG_croak("Type error in argument 1 of DoubleVector_empty. "
13683           "Expected an array of ""double");
13684         SV **tv;
13685         I32 len = av_len(av) + 1;
13686         for (int i=0; i<len; i++) {
13687           tv = av_fetch(av, i, 0);
13688           if (SvNIOK(*tv)) {
13689             temp1.push_back((double)SwigSvToNumber(*tv));
13690           } else {
13691             SWIG_croak("Type error in argument 1 of "
13692               "DoubleVector_empty. "
13693               "Expected an array of ""double");
13694           }
13695         }
13696         arg1 = &temp1;
13697       } else {
13698         SWIG_croak("Type error in argument 1 of DoubleVector_empty. "
13699           "Expected an array of ""double");
13700       }
13701     }
13702     {
13703       try {
13704         result = (bool)((std::vector< double > const *)arg1)->empty();
13705       } catch (const std::exception& e) {
13706         SWIG_exception(SWIG_RuntimeError, e.what());
13707       }
13708     }
13709     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
13710 
13711     XSRETURN(argvi);
13712   fail:
13713 
13714     SWIG_croak_null();
13715   }
13716 }
13717 
13718 
XS(_wrap_DoubleVector_clear)13719 XS(_wrap_DoubleVector_clear) {
13720   {
13721     std::vector< double > *arg1 = (std::vector< double > *) 0 ;
13722     void *argp1 = 0 ;
13723     int res1 = 0 ;
13724     int argvi = 0;
13725     dXSARGS;
13726 
13727     if ((items < 1) || (items > 1)) {
13728       SWIG_croak("Usage: DoubleVector_clear(self);");
13729     }
13730     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_double_t, 0 |  0 );
13731     if (!SWIG_IsOK(res1)) {
13732       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DoubleVector_clear" "', argument " "1"" of type '" "std::vector< double > *""'");
13733     }
13734     arg1 = reinterpret_cast< std::vector< double > * >(argp1);
13735     {
13736       try {
13737         (arg1)->clear();
13738       } catch (const std::exception& e) {
13739         SWIG_exception(SWIG_RuntimeError, e.what());
13740       }
13741     }
13742     ST(argvi) = &PL_sv_undef;
13743 
13744     XSRETURN(argvi);
13745   fail:
13746 
13747     SWIG_croak_null();
13748   }
13749 }
13750 
13751 
XS(_wrap_DoubleVector_push)13752 XS(_wrap_DoubleVector_push) {
13753   {
13754     std::vector< double > *arg1 = (std::vector< double > *) 0 ;
13755     double arg2 ;
13756     void *argp1 = 0 ;
13757     int res1 = 0 ;
13758     double val2 ;
13759     int ecode2 = 0 ;
13760     int argvi = 0;
13761     dXSARGS;
13762 
13763     if ((items < 2) || (items > 2)) {
13764       SWIG_croak("Usage: DoubleVector_push(self,x);");
13765     }
13766     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_double_t, 0 |  0 );
13767     if (!SWIG_IsOK(res1)) {
13768       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DoubleVector_push" "', argument " "1"" of type '" "std::vector< double > *""'");
13769     }
13770     arg1 = reinterpret_cast< std::vector< double > * >(argp1);
13771     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
13772     if (!SWIG_IsOK(ecode2)) {
13773       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "DoubleVector_push" "', argument " "2"" of type '" "double""'");
13774     }
13775     arg2 = static_cast< double >(val2);
13776     {
13777       try {
13778         (arg1)->push_back(arg2);
13779       } catch (const std::exception& e) {
13780         SWIG_exception(SWIG_RuntimeError, e.what());
13781       }
13782     }
13783     ST(argvi) = &PL_sv_undef;
13784 
13785 
13786     XSRETURN(argvi);
13787   fail:
13788 
13789 
13790     SWIG_croak_null();
13791   }
13792 }
13793 
13794 
XS(_wrap_DoubleVector_pop)13795 XS(_wrap_DoubleVector_pop) {
13796   {
13797     std::vector< double > *arg1 = (std::vector< double > *) 0 ;
13798     void *argp1 = 0 ;
13799     int res1 = 0 ;
13800     int argvi = 0;
13801     double result;
13802     dXSARGS;
13803 
13804     if ((items < 1) || (items > 1)) {
13805       SWIG_croak("Usage: DoubleVector_pop(self);");
13806     }
13807     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_double_t, 0 |  0 );
13808     if (!SWIG_IsOK(res1)) {
13809       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DoubleVector_pop" "', argument " "1"" of type '" "std::vector< double > *""'");
13810     }
13811     arg1 = reinterpret_cast< std::vector< double > * >(argp1);
13812     {
13813       try {
13814         try {
13815           result = (double)std_vector_Sl_double_Sg__pop(arg1);
13816         } catch(std::out_of_range &_e) {
13817           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
13818         }
13819       } catch (const std::exception& e) {
13820         SWIG_exception(SWIG_RuntimeError, e.what());
13821       }
13822     }
13823     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
13824 
13825     XSRETURN(argvi);
13826   fail:
13827 
13828     SWIG_croak_null();
13829   }
13830 }
13831 
13832 
XS(_wrap_DoubleVector_get)13833 XS(_wrap_DoubleVector_get) {
13834   {
13835     std::vector< double > *arg1 = (std::vector< double > *) 0 ;
13836     int arg2 ;
13837     void *argp1 = 0 ;
13838     int res1 = 0 ;
13839     int val2 ;
13840     int ecode2 = 0 ;
13841     int argvi = 0;
13842     double result;
13843     dXSARGS;
13844 
13845     if ((items < 2) || (items > 2)) {
13846       SWIG_croak("Usage: DoubleVector_get(self,i);");
13847     }
13848     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_double_t, 0 |  0 );
13849     if (!SWIG_IsOK(res1)) {
13850       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DoubleVector_get" "', argument " "1"" of type '" "std::vector< double > *""'");
13851     }
13852     arg1 = reinterpret_cast< std::vector< double > * >(argp1);
13853     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
13854     if (!SWIG_IsOK(ecode2)) {
13855       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "DoubleVector_get" "', argument " "2"" of type '" "int""'");
13856     }
13857     arg2 = static_cast< int >(val2);
13858     {
13859       try {
13860         try {
13861           result = (double)std_vector_Sl_double_Sg__get(arg1,arg2);
13862         } catch(std::out_of_range &_e) {
13863           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
13864         }
13865       } catch (const std::exception& e) {
13866         SWIG_exception(SWIG_RuntimeError, e.what());
13867       }
13868     }
13869     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
13870 
13871 
13872     XSRETURN(argvi);
13873   fail:
13874 
13875 
13876     SWIG_croak_null();
13877   }
13878 }
13879 
13880 
XS(_wrap_DoubleVector_set)13881 XS(_wrap_DoubleVector_set) {
13882   {
13883     std::vector< double > *arg1 = (std::vector< double > *) 0 ;
13884     int arg2 ;
13885     double arg3 ;
13886     void *argp1 = 0 ;
13887     int res1 = 0 ;
13888     int val2 ;
13889     int ecode2 = 0 ;
13890     double val3 ;
13891     int ecode3 = 0 ;
13892     int argvi = 0;
13893     dXSARGS;
13894 
13895     if ((items < 3) || (items > 3)) {
13896       SWIG_croak("Usage: DoubleVector_set(self,i,x);");
13897     }
13898     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_double_t, 0 |  0 );
13899     if (!SWIG_IsOK(res1)) {
13900       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DoubleVector_set" "', argument " "1"" of type '" "std::vector< double > *""'");
13901     }
13902     arg1 = reinterpret_cast< std::vector< double > * >(argp1);
13903     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
13904     if (!SWIG_IsOK(ecode2)) {
13905       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "DoubleVector_set" "', argument " "2"" of type '" "int""'");
13906     }
13907     arg2 = static_cast< int >(val2);
13908     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
13909     if (!SWIG_IsOK(ecode3)) {
13910       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "DoubleVector_set" "', argument " "3"" of type '" "double""'");
13911     }
13912     arg3 = static_cast< double >(val3);
13913     {
13914       try {
13915         try {
13916           std_vector_Sl_double_Sg__set(arg1,arg2,arg3);
13917         } catch(std::out_of_range &_e) {
13918           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
13919         }
13920       } catch (const std::exception& e) {
13921         SWIG_exception(SWIG_RuntimeError, e.what());
13922       }
13923     }
13924     ST(argvi) = &PL_sv_undef;
13925 
13926 
13927 
13928     XSRETURN(argvi);
13929   fail:
13930 
13931 
13932 
13933     SWIG_croak_null();
13934   }
13935 }
13936 
13937 
XS(_wrap_delete_DoubleVector)13938 XS(_wrap_delete_DoubleVector) {
13939   {
13940     std::vector< double > *arg1 = (std::vector< double > *) 0 ;
13941     void *argp1 = 0 ;
13942     int res1 = 0 ;
13943     int argvi = 0;
13944     dXSARGS;
13945 
13946     if ((items < 1) || (items > 1)) {
13947       SWIG_croak("Usage: delete_DoubleVector(self);");
13948     }
13949     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_double_t, SWIG_POINTER_DISOWN |  0 );
13950     if (!SWIG_IsOK(res1)) {
13951       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DoubleVector" "', argument " "1"" of type '" "std::vector< double > *""'");
13952     }
13953     arg1 = reinterpret_cast< std::vector< double > * >(argp1);
13954     {
13955       try {
13956         delete arg1;
13957       } catch (const std::exception& e) {
13958         SWIG_exception(SWIG_RuntimeError, e.what());
13959       }
13960     }
13961     ST(argvi) = &PL_sv_undef;
13962 
13963     XSRETURN(argvi);
13964   fail:
13965 
13966     SWIG_croak_null();
13967   }
13968 }
13969 
13970 
XS(_wrap_new_StringVector__SWIG_0)13971 XS(_wrap_new_StringVector__SWIG_0) {
13972   {
13973     unsigned int arg1 ;
13974     unsigned int val1 ;
13975     int ecode1 = 0 ;
13976     int argvi = 0;
13977     std::vector< std::string > *result = 0 ;
13978     dXSARGS;
13979 
13980     if ((items < 1) || (items > 1)) {
13981       SWIG_croak("Usage: new_StringVector(size);");
13982     }
13983     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
13984     if (!SWIG_IsOK(ecode1)) {
13985       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_StringVector" "', argument " "1"" of type '" "unsigned int""'");
13986     }
13987     arg1 = static_cast< unsigned int >(val1);
13988     {
13989       try {
13990         result = (std::vector< std::string > *)new std::vector< std::string >(arg1);
13991       } catch (const std::exception& e) {
13992         SWIG_exception(SWIG_RuntimeError, e.what());
13993       }
13994     }
13995     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_std__string_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
13996 
13997     XSRETURN(argvi);
13998   fail:
13999 
14000     SWIG_croak_null();
14001   }
14002 }
14003 
14004 
XS(_wrap_new_StringVector__SWIG_1)14005 XS(_wrap_new_StringVector__SWIG_1) {
14006   {
14007     int argvi = 0;
14008     std::vector< std::string > *result = 0 ;
14009     dXSARGS;
14010 
14011     if ((items < 0) || (items > 0)) {
14012       SWIG_croak("Usage: new_StringVector();");
14013     }
14014     {
14015       try {
14016         result = (std::vector< std::string > *)new std::vector< std::string >();
14017       } catch (const std::exception& e) {
14018         SWIG_exception(SWIG_RuntimeError, e.what());
14019       }
14020     }
14021     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_std__string_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
14022     XSRETURN(argvi);
14023   fail:
14024     SWIG_croak_null();
14025   }
14026 }
14027 
14028 
XS(_wrap_new_StringVector__SWIG_2)14029 XS(_wrap_new_StringVector__SWIG_2) {
14030   {
14031     unsigned int arg1 ;
14032     std::string arg2 ;
14033     unsigned int val1 ;
14034     int ecode1 = 0 ;
14035     int argvi = 0;
14036     std::vector< std::string > *result = 0 ;
14037     dXSARGS;
14038 
14039     if ((items < 2) || (items > 2)) {
14040       SWIG_croak("Usage: new_StringVector(size,value);");
14041     }
14042     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
14043     if (!SWIG_IsOK(ecode1)) {
14044       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_StringVector" "', argument " "1"" of type '" "unsigned int""'");
14045     }
14046     arg1 = static_cast< unsigned int >(val1);
14047     {
14048       std::string *ptr = (std::string *)0;
14049       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
14050       if (!SWIG_IsOK(res) || !ptr) {
14051         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "new_StringVector" "', argument " "2"" of type '" "std::string""'");
14052       }
14053       arg2 = *ptr;
14054       if (SWIG_IsNewObj(res)) delete ptr;
14055     }
14056     {
14057       try {
14058         result = (std::vector< std::string > *)new std::vector< std::string >(arg1,arg2);
14059       } catch (const std::exception& e) {
14060         SWIG_exception(SWIG_RuntimeError, e.what());
14061       }
14062     }
14063     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_std__string_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
14064 
14065 
14066     XSRETURN(argvi);
14067   fail:
14068 
14069 
14070     SWIG_croak_null();
14071   }
14072 }
14073 
14074 
XS(_wrap_new_StringVector__SWIG_3)14075 XS(_wrap_new_StringVector__SWIG_3) {
14076   {
14077     std::vector< std::string > *arg1 = 0 ;
14078     std::vector< std::string > temp1 ;
14079     std::vector< std::string > *v1 ;
14080     int argvi = 0;
14081     std::vector< std::string > *result = 0 ;
14082     dXSARGS;
14083 
14084     if ((items < 1) || (items > 1)) {
14085       SWIG_croak("Usage: new_StringVector(other);");
14086     }
14087     {
14088       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
14089           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1) {
14090         arg1 = v1;
14091       } else if (SvROK(ST(0))) {
14092         AV *av = (AV *)SvRV(ST(0));
14093         if (SvTYPE(av) != SVt_PVAV)
14094         SWIG_croak("Type error in argument 1 of new_StringVector. "
14095           "Expected an array of ""std::string");
14096         SV **tv;
14097         I32 len = av_len(av) + 1;
14098         for (int i=0; i<len; i++) {
14099           tv = av_fetch(av, i, 0);
14100           if (SvPOK(*tv)) {
14101             temp1.push_back((std::string)SwigSvToString(*tv));
14102           } else {
14103             SWIG_croak("Type error in argument 1 of "
14104               "new_StringVector. "
14105               "Expected an array of ""std::string");
14106           }
14107         }
14108         arg1 = &temp1;
14109       } else {
14110         SWIG_croak("Type error in argument 1 of new_StringVector. "
14111           "Expected an array of ""std::string");
14112       }
14113     }
14114     {
14115       try {
14116         result = (std::vector< std::string > *)new std::vector< std::string >((std::vector< std::string > const &)*arg1);
14117       } catch (const std::exception& e) {
14118         SWIG_exception(SWIG_RuntimeError, e.what());
14119       }
14120     }
14121     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_std__string_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
14122 
14123     XSRETURN(argvi);
14124   fail:
14125 
14126     SWIG_croak_null();
14127   }
14128 }
14129 
14130 
XS(_wrap_new_StringVector)14131 XS(_wrap_new_StringVector) {
14132   dXSARGS;
14133 
14134   {
14135     unsigned long _index = 0;
14136     SWIG_TypeRank _rank = 0;
14137     if (items == 0) {
14138       SWIG_TypeRank _ranki = 0;
14139       SWIG_TypeRank _rankm = 0;
14140       if (!_index || (_ranki < _rank)) {
14141         _rank = _ranki; _index = 1;
14142         if (_rank == _rankm) goto dispatch;
14143       }
14144     }
14145     if (items == 1) {
14146       SWIG_TypeRank _ranki = 0;
14147       SWIG_TypeRank _rankm = 0;
14148       SWIG_TypeRank _pi = 1;
14149       int _v = 0;
14150       {
14151         {
14152           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
14153           _v = SWIG_CheckState(res);
14154         }
14155       }
14156       if (!_v) goto check_2;
14157       _ranki += _v*_pi;
14158       _rankm += _pi;
14159       _pi *= SWIG_MAXCASTRANK;
14160       if (!_index || (_ranki < _rank)) {
14161         _rank = _ranki; _index = 2;
14162         if (_rank == _rankm) goto dispatch;
14163       }
14164     }
14165   check_2:
14166 
14167     if (items == 1) {
14168       SWIG_TypeRank _ranki = 0;
14169       SWIG_TypeRank _rankm = 0;
14170       SWIG_TypeRank _pi = 1;
14171       int _v = 0;
14172       {
14173         {
14174           {
14175             /* wrapped vector? */
14176             std::vector< std::string >* v;
14177             if (SWIG_ConvertPtr(ST(0),(void **) &v,
14178                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
14179               _v = 1;
14180             } else if (SvROK(ST(0))) {
14181               /* native sequence? */
14182               AV *av = (AV *)SvRV(ST(0));
14183               if (SvTYPE(av) == SVt_PVAV) {
14184                 I32 len = av_len(av) + 1;
14185                 if (len == 0) {
14186                   /* an empty sequence can be of any type */
14187                   _v = 1;
14188                 } else {
14189                   /* check the first element only */
14190                   SV **tv = av_fetch(av, 0, 0);
14191                   if (SvPOK(*tv))
14192                   _v = 1;
14193                   else
14194                   _v = 0;
14195                 }
14196               }
14197             } else {
14198               _v = 0;
14199             }
14200           }
14201         }
14202       }
14203       if (!_v) goto check_3;
14204       _ranki += _v*_pi;
14205       _rankm += _pi;
14206       _pi *= SWIG_MAXCASTRANK;
14207       if (!_index || (_ranki < _rank)) {
14208         _rank = _ranki; _index = 3;
14209         if (_rank == _rankm) goto dispatch;
14210       }
14211     }
14212   check_3:
14213 
14214     if (items == 2) {
14215       SWIG_TypeRank _ranki = 0;
14216       SWIG_TypeRank _rankm = 0;
14217       SWIG_TypeRank _pi = 1;
14218       int _v = 0;
14219       {
14220         {
14221           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
14222           _v = SWIG_CheckState(res);
14223         }
14224       }
14225       if (!_v) goto check_4;
14226       _ranki += _v*_pi;
14227       _rankm += _pi;
14228       _pi *= SWIG_MAXCASTRANK;
14229       {
14230         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
14231         _v = SWIG_CheckState(res);
14232       }
14233       if (!_v) goto check_4;
14234       _ranki += _v*_pi;
14235       _rankm += _pi;
14236       _pi *= SWIG_MAXCASTRANK;
14237       if (!_index || (_ranki < _rank)) {
14238         _rank = _ranki; _index = 4;
14239         if (_rank == _rankm) goto dispatch;
14240       }
14241     }
14242   check_4:
14243 
14244   dispatch:
14245     switch(_index) {
14246     case 1:
14247       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_StringVector__SWIG_1); return;
14248     case 2:
14249       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_StringVector__SWIG_0); return;
14250     case 3:
14251       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_StringVector__SWIG_3); return;
14252     case 4:
14253       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_StringVector__SWIG_2); return;
14254     }
14255   }
14256 
14257   croak("No matching function for overloaded 'new_StringVector'");
14258   XSRETURN(0);
14259 }
14260 
14261 
XS(_wrap_StringVector_size)14262 XS(_wrap_StringVector_size) {
14263   {
14264     std::vector< std::string > *arg1 = (std::vector< std::string > *) 0 ;
14265     std::vector< std::string > temp1 ;
14266     std::vector< std::string > *v1 ;
14267     int argvi = 0;
14268     unsigned int result;
14269     dXSARGS;
14270 
14271     if ((items < 1) || (items > 1)) {
14272       SWIG_croak("Usage: StringVector_size(self);");
14273     }
14274     {
14275       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
14276           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1) {
14277         arg1 = v1;
14278       } else if (SvROK(ST(0))) {
14279         AV *av = (AV *)SvRV(ST(0));
14280         if (SvTYPE(av) != SVt_PVAV)
14281         SWIG_croak("Type error in argument 1 of StringVector_size. "
14282           "Expected an array of ""std::string");
14283         SV **tv;
14284         I32 len = av_len(av) + 1;
14285         for (int i=0; i<len; i++) {
14286           tv = av_fetch(av, i, 0);
14287           if (SvPOK(*tv)) {
14288             temp1.push_back((std::string)SwigSvToString(*tv));
14289           } else {
14290             SWIG_croak("Type error in argument 1 of "
14291               "StringVector_size. "
14292               "Expected an array of ""std::string");
14293           }
14294         }
14295         arg1 = &temp1;
14296       } else {
14297         SWIG_croak("Type error in argument 1 of StringVector_size. "
14298           "Expected an array of ""std::string");
14299       }
14300     }
14301     {
14302       try {
14303         result = (unsigned int)((std::vector< std::string > const *)arg1)->size();
14304       } catch (const std::exception& e) {
14305         SWIG_exception(SWIG_RuntimeError, e.what());
14306       }
14307     }
14308     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
14309 
14310     XSRETURN(argvi);
14311   fail:
14312 
14313     SWIG_croak_null();
14314   }
14315 }
14316 
14317 
XS(_wrap_StringVector_empty)14318 XS(_wrap_StringVector_empty) {
14319   {
14320     std::vector< std::string > *arg1 = (std::vector< std::string > *) 0 ;
14321     std::vector< std::string > temp1 ;
14322     std::vector< std::string > *v1 ;
14323     int argvi = 0;
14324     bool result;
14325     dXSARGS;
14326 
14327     if ((items < 1) || (items > 1)) {
14328       SWIG_croak("Usage: StringVector_empty(self);");
14329     }
14330     {
14331       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
14332           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1) {
14333         arg1 = v1;
14334       } else if (SvROK(ST(0))) {
14335         AV *av = (AV *)SvRV(ST(0));
14336         if (SvTYPE(av) != SVt_PVAV)
14337         SWIG_croak("Type error in argument 1 of StringVector_empty. "
14338           "Expected an array of ""std::string");
14339         SV **tv;
14340         I32 len = av_len(av) + 1;
14341         for (int i=0; i<len; i++) {
14342           tv = av_fetch(av, i, 0);
14343           if (SvPOK(*tv)) {
14344             temp1.push_back((std::string)SwigSvToString(*tv));
14345           } else {
14346             SWIG_croak("Type error in argument 1 of "
14347               "StringVector_empty. "
14348               "Expected an array of ""std::string");
14349           }
14350         }
14351         arg1 = &temp1;
14352       } else {
14353         SWIG_croak("Type error in argument 1 of StringVector_empty. "
14354           "Expected an array of ""std::string");
14355       }
14356     }
14357     {
14358       try {
14359         result = (bool)((std::vector< std::string > const *)arg1)->empty();
14360       } catch (const std::exception& e) {
14361         SWIG_exception(SWIG_RuntimeError, e.what());
14362       }
14363     }
14364     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
14365 
14366     XSRETURN(argvi);
14367   fail:
14368 
14369     SWIG_croak_null();
14370   }
14371 }
14372 
14373 
XS(_wrap_StringVector_clear)14374 XS(_wrap_StringVector_clear) {
14375   {
14376     std::vector< std::string > *arg1 = (std::vector< std::string > *) 0 ;
14377     void *argp1 = 0 ;
14378     int res1 = 0 ;
14379     int argvi = 0;
14380     dXSARGS;
14381 
14382     if ((items < 1) || (items > 1)) {
14383       SWIG_croak("Usage: StringVector_clear(self);");
14384     }
14385     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__string_t, 0 |  0 );
14386     if (!SWIG_IsOK(res1)) {
14387       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "StringVector_clear" "', argument " "1"" of type '" "std::vector< std::string > *""'");
14388     }
14389     arg1 = reinterpret_cast< std::vector< std::string > * >(argp1);
14390     {
14391       try {
14392         (arg1)->clear();
14393       } catch (const std::exception& e) {
14394         SWIG_exception(SWIG_RuntimeError, e.what());
14395       }
14396     }
14397     ST(argvi) = &PL_sv_undef;
14398 
14399     XSRETURN(argvi);
14400   fail:
14401 
14402     SWIG_croak_null();
14403   }
14404 }
14405 
14406 
XS(_wrap_StringVector_push)14407 XS(_wrap_StringVector_push) {
14408   {
14409     std::vector< std::string > *arg1 = (std::vector< std::string > *) 0 ;
14410     std::string arg2 ;
14411     void *argp1 = 0 ;
14412     int res1 = 0 ;
14413     int argvi = 0;
14414     dXSARGS;
14415 
14416     if ((items < 2) || (items > 2)) {
14417       SWIG_croak("Usage: StringVector_push(self,x);");
14418     }
14419     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__string_t, 0 |  0 );
14420     if (!SWIG_IsOK(res1)) {
14421       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "StringVector_push" "', argument " "1"" of type '" "std::vector< std::string > *""'");
14422     }
14423     arg1 = reinterpret_cast< std::vector< std::string > * >(argp1);
14424     {
14425       std::string *ptr = (std::string *)0;
14426       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
14427       if (!SWIG_IsOK(res) || !ptr) {
14428         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "StringVector_push" "', argument " "2"" of type '" "std::string""'");
14429       }
14430       arg2 = *ptr;
14431       if (SWIG_IsNewObj(res)) delete ptr;
14432     }
14433     {
14434       try {
14435         (arg1)->push_back(arg2);
14436       } catch (const std::exception& e) {
14437         SWIG_exception(SWIG_RuntimeError, e.what());
14438       }
14439     }
14440     ST(argvi) = &PL_sv_undef;
14441 
14442 
14443     XSRETURN(argvi);
14444   fail:
14445 
14446 
14447     SWIG_croak_null();
14448   }
14449 }
14450 
14451 
XS(_wrap_StringVector_pop)14452 XS(_wrap_StringVector_pop) {
14453   {
14454     std::vector< std::string > *arg1 = (std::vector< std::string > *) 0 ;
14455     void *argp1 = 0 ;
14456     int res1 = 0 ;
14457     int argvi = 0;
14458     std::string result;
14459     dXSARGS;
14460 
14461     if ((items < 1) || (items > 1)) {
14462       SWIG_croak("Usage: StringVector_pop(self);");
14463     }
14464     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__string_t, 0 |  0 );
14465     if (!SWIG_IsOK(res1)) {
14466       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "StringVector_pop" "', argument " "1"" of type '" "std::vector< std::string > *""'");
14467     }
14468     arg1 = reinterpret_cast< std::vector< std::string > * >(argp1);
14469     {
14470       try {
14471         try {
14472           result = std_vector_Sl_std_string_Sg__pop(arg1);
14473         } catch(std::out_of_range &_e) {
14474           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
14475         }
14476       } catch (const std::exception& e) {
14477         SWIG_exception(SWIG_RuntimeError, e.what());
14478       }
14479     }
14480     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
14481 
14482     XSRETURN(argvi);
14483   fail:
14484 
14485     SWIG_croak_null();
14486   }
14487 }
14488 
14489 
XS(_wrap_StringVector_get)14490 XS(_wrap_StringVector_get) {
14491   {
14492     std::vector< std::string > *arg1 = (std::vector< std::string > *) 0 ;
14493     int arg2 ;
14494     void *argp1 = 0 ;
14495     int res1 = 0 ;
14496     int val2 ;
14497     int ecode2 = 0 ;
14498     int argvi = 0;
14499     std::string result;
14500     dXSARGS;
14501 
14502     if ((items < 2) || (items > 2)) {
14503       SWIG_croak("Usage: StringVector_get(self,i);");
14504     }
14505     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__string_t, 0 |  0 );
14506     if (!SWIG_IsOK(res1)) {
14507       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "StringVector_get" "', argument " "1"" of type '" "std::vector< std::string > *""'");
14508     }
14509     arg1 = reinterpret_cast< std::vector< std::string > * >(argp1);
14510     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
14511     if (!SWIG_IsOK(ecode2)) {
14512       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "StringVector_get" "', argument " "2"" of type '" "int""'");
14513     }
14514     arg2 = static_cast< int >(val2);
14515     {
14516       try {
14517         try {
14518           result = std_vector_Sl_std_string_Sg__get(arg1,arg2);
14519         } catch(std::out_of_range &_e) {
14520           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
14521         }
14522       } catch (const std::exception& e) {
14523         SWIG_exception(SWIG_RuntimeError, e.what());
14524       }
14525     }
14526     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
14527 
14528 
14529     XSRETURN(argvi);
14530   fail:
14531 
14532 
14533     SWIG_croak_null();
14534   }
14535 }
14536 
14537 
XS(_wrap_StringVector_set)14538 XS(_wrap_StringVector_set) {
14539   {
14540     std::vector< std::string > *arg1 = (std::vector< std::string > *) 0 ;
14541     int arg2 ;
14542     std::string arg3 ;
14543     void *argp1 = 0 ;
14544     int res1 = 0 ;
14545     int val2 ;
14546     int ecode2 = 0 ;
14547     int argvi = 0;
14548     dXSARGS;
14549 
14550     if ((items < 3) || (items > 3)) {
14551       SWIG_croak("Usage: StringVector_set(self,i,x);");
14552     }
14553     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__string_t, 0 |  0 );
14554     if (!SWIG_IsOK(res1)) {
14555       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "StringVector_set" "', argument " "1"" of type '" "std::vector< std::string > *""'");
14556     }
14557     arg1 = reinterpret_cast< std::vector< std::string > * >(argp1);
14558     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
14559     if (!SWIG_IsOK(ecode2)) {
14560       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "StringVector_set" "', argument " "2"" of type '" "int""'");
14561     }
14562     arg2 = static_cast< int >(val2);
14563     {
14564       std::string *ptr = (std::string *)0;
14565       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
14566       if (!SWIG_IsOK(res) || !ptr) {
14567         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "StringVector_set" "', argument " "3"" of type '" "std::string""'");
14568       }
14569       arg3 = *ptr;
14570       if (SWIG_IsNewObj(res)) delete ptr;
14571     }
14572     {
14573       try {
14574         try {
14575           std_vector_Sl_std_string_Sg__set(arg1,arg2,arg3);
14576         } catch(std::out_of_range &_e) {
14577           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
14578         }
14579       } catch (const std::exception& e) {
14580         SWIG_exception(SWIG_RuntimeError, e.what());
14581       }
14582     }
14583     ST(argvi) = &PL_sv_undef;
14584 
14585 
14586 
14587     XSRETURN(argvi);
14588   fail:
14589 
14590 
14591 
14592     SWIG_croak_null();
14593   }
14594 }
14595 
14596 
XS(_wrap_delete_StringVector)14597 XS(_wrap_delete_StringVector) {
14598   {
14599     std::vector< std::string > *arg1 = (std::vector< std::string > *) 0 ;
14600     void *argp1 = 0 ;
14601     int res1 = 0 ;
14602     int argvi = 0;
14603     dXSARGS;
14604 
14605     if ((items < 1) || (items > 1)) {
14606       SWIG_croak("Usage: delete_StringVector(self);");
14607     }
14608     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__string_t, SWIG_POINTER_DISOWN |  0 );
14609     if (!SWIG_IsOK(res1)) {
14610       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_StringVector" "', argument " "1"" of type '" "std::vector< std::string > *""'");
14611     }
14612     arg1 = reinterpret_cast< std::vector< std::string > * >(argp1);
14613     {
14614       try {
14615         delete arg1;
14616       } catch (const std::exception& e) {
14617         SWIG_exception(SWIG_RuntimeError, e.what());
14618       }
14619     }
14620     ST(argvi) = &PL_sv_undef;
14621 
14622     XSRETURN(argvi);
14623   fail:
14624 
14625     SWIG_croak_null();
14626   }
14627 }
14628 
14629 
XS(_wrap_new_ConstCharVector__SWIG_0)14630 XS(_wrap_new_ConstCharVector__SWIG_0) {
14631   {
14632     unsigned int arg1 ;
14633     unsigned int val1 ;
14634     int ecode1 = 0 ;
14635     int argvi = 0;
14636     std::vector< char const * > *result = 0 ;
14637     dXSARGS;
14638 
14639     if ((items < 1) || (items > 1)) {
14640       SWIG_croak("Usage: new_ConstCharVector(size);");
14641     }
14642     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
14643     if (!SWIG_IsOK(ecode1)) {
14644       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_ConstCharVector" "', argument " "1"" of type '" "unsigned int""'");
14645     }
14646     arg1 = static_cast< unsigned int >(val1);
14647     {
14648       try {
14649         result = (std::vector< char const * > *)new std::vector< char const * >(arg1);
14650       } catch (const std::exception& e) {
14651         SWIG_exception(SWIG_RuntimeError, e.what());
14652       }
14653     }
14654     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_char_const_p_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
14655 
14656     XSRETURN(argvi);
14657   fail:
14658 
14659     SWIG_croak_null();
14660   }
14661 }
14662 
14663 
XS(_wrap_new_ConstCharVector__SWIG_1)14664 XS(_wrap_new_ConstCharVector__SWIG_1) {
14665   {
14666     int argvi = 0;
14667     std::vector< char const * > *result = 0 ;
14668     dXSARGS;
14669 
14670     if ((items < 0) || (items > 0)) {
14671       SWIG_croak("Usage: new_ConstCharVector();");
14672     }
14673     {
14674       try {
14675         result = (std::vector< char const * > *)new std::vector< char const * >();
14676       } catch (const std::exception& e) {
14677         SWIG_exception(SWIG_RuntimeError, e.what());
14678       }
14679     }
14680     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_char_const_p_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
14681     XSRETURN(argvi);
14682   fail:
14683     SWIG_croak_null();
14684   }
14685 }
14686 
14687 
XS(_wrap_new_ConstCharVector__SWIG_2)14688 XS(_wrap_new_ConstCharVector__SWIG_2) {
14689   {
14690     unsigned int arg1 ;
14691     char *arg2 = (char *) 0 ;
14692     unsigned int val1 ;
14693     int ecode1 = 0 ;
14694     int res2 ;
14695     char *buf2 = 0 ;
14696     int alloc2 = 0 ;
14697     int argvi = 0;
14698     std::vector< char const * > *result = 0 ;
14699     dXSARGS;
14700 
14701     if ((items < 2) || (items > 2)) {
14702       SWIG_croak("Usage: new_ConstCharVector(size,value);");
14703     }
14704     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
14705     if (!SWIG_IsOK(ecode1)) {
14706       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_ConstCharVector" "', argument " "1"" of type '" "unsigned int""'");
14707     }
14708     arg1 = static_cast< unsigned int >(val1);
14709     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
14710     if (!SWIG_IsOK(res2)) {
14711       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_ConstCharVector" "', argument " "2"" of type '" "char const *""'");
14712     }
14713     arg2 = reinterpret_cast< char * >(buf2);
14714     {
14715       try {
14716         result = (std::vector< char const * > *)new std::vector< char const * >(arg1,(char const *)arg2);
14717       } catch (const std::exception& e) {
14718         SWIG_exception(SWIG_RuntimeError, e.what());
14719       }
14720     }
14721     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_char_const_p_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
14722 
14723     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
14724     XSRETURN(argvi);
14725   fail:
14726 
14727     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
14728     SWIG_croak_null();
14729   }
14730 }
14731 
14732 
XS(_wrap_new_ConstCharVector__SWIG_3)14733 XS(_wrap_new_ConstCharVector__SWIG_3) {
14734   {
14735     std::vector< char const * > *arg1 = 0 ;
14736     std::vector< char const * > temp1 ;
14737     std::vector< char const * > *v1 ;
14738     int argvi = 0;
14739     std::vector< char const * > *result = 0 ;
14740     dXSARGS;
14741 
14742     if ((items < 1) || (items > 1)) {
14743       SWIG_croak("Usage: new_ConstCharVector(other);");
14744     }
14745     {
14746       int res = SWIG_ConvertPtr(ST(0),(void **) &v1, SWIGTYPE_p_std__vectorT_char_const_p_t,0);
14747       if (SWIG_IsOK(res)) {
14748         arg1 = v1;
14749       } else if (SvROK(ST(0))) {
14750         AV *av = (AV *)SvRV(ST(0));
14751         if (SvTYPE(av) != SVt_PVAV)
14752         SWIG_croak("Type error in argument 1 of new_ConstCharVector. "
14753           "Expected an array of " "char const");
14754         I32 len = av_len(av) + 1;
14755         for (int i=0; i<len; i++) {
14756           void *v1;
14757           SV **tv = av_fetch(av, i, 0);
14758           int res = SWIG_ConvertPtr(*tv, &v1, SWIGTYPE_p_char,0);
14759           if (SWIG_IsOK(res)) {
14760             temp1.push_back(static_cast< char const * >(v1));
14761           } else {
14762             SWIG_croak("Type error in argument 1 of "
14763               "new_ConstCharVector. "
14764               "Expected an array of " "char const");
14765           }
14766         }
14767         arg1 = &temp1;
14768       } else {
14769         SWIG_croak("Type error in argument 1 of new_ConstCharVector. "
14770           "Expected an array of " "char const");
14771       }
14772     }
14773     {
14774       try {
14775         result = (std::vector< char const * > *)new std::vector< char const * >((std::vector< char const * > const &)*arg1);
14776       } catch (const std::exception& e) {
14777         SWIG_exception(SWIG_RuntimeError, e.what());
14778       }
14779     }
14780     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_char_const_p_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
14781 
14782     XSRETURN(argvi);
14783   fail:
14784 
14785     SWIG_croak_null();
14786   }
14787 }
14788 
14789 
XS(_wrap_new_ConstCharVector)14790 XS(_wrap_new_ConstCharVector) {
14791   dXSARGS;
14792 
14793   {
14794     unsigned long _index = 0;
14795     SWIG_TypeRank _rank = 0;
14796     if (items == 0) {
14797       SWIG_TypeRank _ranki = 0;
14798       SWIG_TypeRank _rankm = 0;
14799       if (!_index || (_ranki < _rank)) {
14800         _rank = _ranki; _index = 1;
14801         if (_rank == _rankm) goto dispatch;
14802       }
14803     }
14804     if (items == 1) {
14805       SWIG_TypeRank _ranki = 0;
14806       SWIG_TypeRank _rankm = 0;
14807       SWIG_TypeRank _pi = 1;
14808       int _v = 0;
14809       {
14810         {
14811           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
14812           _v = SWIG_CheckState(res);
14813         }
14814       }
14815       if (!_v) goto check_2;
14816       _ranki += _v*_pi;
14817       _rankm += _pi;
14818       _pi *= SWIG_MAXCASTRANK;
14819       if (!_index || (_ranki < _rank)) {
14820         _rank = _ranki; _index = 2;
14821         if (_rank == _rankm) goto dispatch;
14822       }
14823     }
14824   check_2:
14825 
14826     if (items == 1) {
14827       SWIG_TypeRank _ranki = 0;
14828       SWIG_TypeRank _rankm = 0;
14829       SWIG_TypeRank _pi = 1;
14830       int _v = 0;
14831       {
14832         {
14833           {
14834             /* wrapped vector? */
14835             std::vector< char const *> *v;
14836             int res = SWIG_ConvertPtr(ST(0),SWIG_as_voidptrptr(&v), SWIGTYPE_p_std__vectorT_char_const_p_t,0);
14837             if (SWIG_IsOK(res)) {
14838               _v = 1;
14839             } else if (SvROK(ST(0))) {
14840               /* native sequence? */
14841               AV *av = (AV *)SvRV(ST(0));
14842               if (SvTYPE(av) == SVt_PVAV) {
14843                 I32 len = av_len(av) + 1;
14844                 if (len == 0) {
14845                   /* an empty sequence can be of any type */
14846                   _v = 1;
14847                 } else {
14848                   /* check the first element only */
14849                   void *v;
14850                   SV **tv = av_fetch(av, 0, 0);
14851                   int res = SWIG_ConvertPtr(*tv, &v, SWIGTYPE_p_char,0);
14852                   if (SWIG_IsOK(res))
14853                   _v = 1;
14854                   else
14855                   _v = 0;
14856                 }
14857               }
14858             } else {
14859               _v = 0;
14860             }
14861           }
14862         }
14863       }
14864       if (!_v) goto check_3;
14865       _ranki += _v*_pi;
14866       _rankm += _pi;
14867       _pi *= SWIG_MAXCASTRANK;
14868       if (!_index || (_ranki < _rank)) {
14869         _rank = _ranki; _index = 3;
14870         if (_rank == _rankm) goto dispatch;
14871       }
14872     }
14873   check_3:
14874 
14875     if (items == 2) {
14876       SWIG_TypeRank _ranki = 0;
14877       SWIG_TypeRank _rankm = 0;
14878       SWIG_TypeRank _pi = 1;
14879       int _v = 0;
14880       {
14881         {
14882           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
14883           _v = SWIG_CheckState(res);
14884         }
14885       }
14886       if (!_v) goto check_4;
14887       _ranki += _v*_pi;
14888       _rankm += _pi;
14889       _pi *= SWIG_MAXCASTRANK;
14890       {
14891         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
14892         _v = SWIG_CheckState(res);
14893       }
14894       if (!_v) goto check_4;
14895       _ranki += _v*_pi;
14896       _rankm += _pi;
14897       _pi *= SWIG_MAXCASTRANK;
14898       if (!_index || (_ranki < _rank)) {
14899         _rank = _ranki; _index = 4;
14900         if (_rank == _rankm) goto dispatch;
14901       }
14902     }
14903   check_4:
14904 
14905   dispatch:
14906     switch(_index) {
14907     case 1:
14908       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_ConstCharVector__SWIG_1); return;
14909     case 2:
14910       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_ConstCharVector__SWIG_0); return;
14911     case 3:
14912       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_ConstCharVector__SWIG_3); return;
14913     case 4:
14914       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_ConstCharVector__SWIG_2); return;
14915     }
14916   }
14917 
14918   croak("No matching function for overloaded 'new_ConstCharVector'");
14919   XSRETURN(0);
14920 }
14921 
14922 
XS(_wrap_ConstCharVector_size)14923 XS(_wrap_ConstCharVector_size) {
14924   {
14925     std::vector< char const * > *arg1 = (std::vector< char const * > *) 0 ;
14926     std::vector< char const * > temp1 ;
14927     std::vector< char const * > *v1 ;
14928     int argvi = 0;
14929     unsigned int result;
14930     dXSARGS;
14931 
14932     if ((items < 1) || (items > 1)) {
14933       SWIG_croak("Usage: ConstCharVector_size(self);");
14934     }
14935     {
14936       int res = SWIG_ConvertPtr(ST(0),(void **) &v1, SWIGTYPE_p_std__vectorT_char_const_p_t,0);
14937       if (SWIG_IsOK(res)) {
14938         arg1 = v1;
14939       } else if (SvROK(ST(0))) {
14940         AV *av = (AV *)SvRV(ST(0));
14941         if (SvTYPE(av) != SVt_PVAV)
14942         SWIG_croak("Type error in argument 1 of ConstCharVector_size. "
14943           "Expected an array of " "char const");
14944         I32 len = av_len(av) + 1;
14945         for (int i=0; i<len; i++) {
14946           void *v1;
14947           SV **tv = av_fetch(av, i, 0);
14948           int res = SWIG_ConvertPtr(*tv, &v1, SWIGTYPE_p_char,0);
14949           if (SWIG_IsOK(res)) {
14950             temp1.push_back(static_cast< char const * >(v1));
14951           } else {
14952             SWIG_croak("Type error in argument 1 of "
14953               "ConstCharVector_size. "
14954               "Expected an array of " "char const");
14955           }
14956         }
14957         arg1 = &temp1;
14958       } else {
14959         SWIG_croak("Type error in argument 1 of ConstCharVector_size. "
14960           "Expected an array of " "char const");
14961       }
14962     }
14963     {
14964       try {
14965         result = (unsigned int)((std::vector< char const * > const *)arg1)->size();
14966       } catch (const std::exception& e) {
14967         SWIG_exception(SWIG_RuntimeError, e.what());
14968       }
14969     }
14970     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
14971 
14972     XSRETURN(argvi);
14973   fail:
14974 
14975     SWIG_croak_null();
14976   }
14977 }
14978 
14979 
XS(_wrap_ConstCharVector_empty)14980 XS(_wrap_ConstCharVector_empty) {
14981   {
14982     std::vector< char const * > *arg1 = (std::vector< char const * > *) 0 ;
14983     std::vector< char const * > temp1 ;
14984     std::vector< char const * > *v1 ;
14985     int argvi = 0;
14986     bool result;
14987     dXSARGS;
14988 
14989     if ((items < 1) || (items > 1)) {
14990       SWIG_croak("Usage: ConstCharVector_empty(self);");
14991     }
14992     {
14993       int res = SWIG_ConvertPtr(ST(0),(void **) &v1, SWIGTYPE_p_std__vectorT_char_const_p_t,0);
14994       if (SWIG_IsOK(res)) {
14995         arg1 = v1;
14996       } else if (SvROK(ST(0))) {
14997         AV *av = (AV *)SvRV(ST(0));
14998         if (SvTYPE(av) != SVt_PVAV)
14999         SWIG_croak("Type error in argument 1 of ConstCharVector_empty. "
15000           "Expected an array of " "char const");
15001         I32 len = av_len(av) + 1;
15002         for (int i=0; i<len; i++) {
15003           void *v1;
15004           SV **tv = av_fetch(av, i, 0);
15005           int res = SWIG_ConvertPtr(*tv, &v1, SWIGTYPE_p_char,0);
15006           if (SWIG_IsOK(res)) {
15007             temp1.push_back(static_cast< char const * >(v1));
15008           } else {
15009             SWIG_croak("Type error in argument 1 of "
15010               "ConstCharVector_empty. "
15011               "Expected an array of " "char const");
15012           }
15013         }
15014         arg1 = &temp1;
15015       } else {
15016         SWIG_croak("Type error in argument 1 of ConstCharVector_empty. "
15017           "Expected an array of " "char const");
15018       }
15019     }
15020     {
15021       try {
15022         result = (bool)((std::vector< char const * > const *)arg1)->empty();
15023       } catch (const std::exception& e) {
15024         SWIG_exception(SWIG_RuntimeError, e.what());
15025       }
15026     }
15027     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
15028 
15029     XSRETURN(argvi);
15030   fail:
15031 
15032     SWIG_croak_null();
15033   }
15034 }
15035 
15036 
XS(_wrap_ConstCharVector_clear)15037 XS(_wrap_ConstCharVector_clear) {
15038   {
15039     std::vector< char const * > *arg1 = (std::vector< char const * > *) 0 ;
15040     void *argp1 = 0 ;
15041     int res1 = 0 ;
15042     int argvi = 0;
15043     dXSARGS;
15044 
15045     if ((items < 1) || (items > 1)) {
15046       SWIG_croak("Usage: ConstCharVector_clear(self);");
15047     }
15048     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_char_const_p_t, 0 |  0 );
15049     if (!SWIG_IsOK(res1)) {
15050       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ConstCharVector_clear" "', argument " "1"" of type '" "std::vector< char const * > *""'");
15051     }
15052     arg1 = reinterpret_cast< std::vector< char const * > * >(argp1);
15053     {
15054       try {
15055         (arg1)->clear();
15056       } catch (const std::exception& e) {
15057         SWIG_exception(SWIG_RuntimeError, e.what());
15058       }
15059     }
15060     ST(argvi) = &PL_sv_undef;
15061 
15062     XSRETURN(argvi);
15063   fail:
15064 
15065     SWIG_croak_null();
15066   }
15067 }
15068 
15069 
XS(_wrap_ConstCharVector_push)15070 XS(_wrap_ConstCharVector_push) {
15071   {
15072     std::vector< char const * > *arg1 = (std::vector< char const * > *) 0 ;
15073     char *arg2 = (char *) 0 ;
15074     void *argp1 = 0 ;
15075     int res1 = 0 ;
15076     int res2 ;
15077     char *buf2 = 0 ;
15078     int alloc2 = 0 ;
15079     int argvi = 0;
15080     dXSARGS;
15081 
15082     if ((items < 2) || (items > 2)) {
15083       SWIG_croak("Usage: ConstCharVector_push(self,x);");
15084     }
15085     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_char_const_p_t, 0 |  0 );
15086     if (!SWIG_IsOK(res1)) {
15087       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ConstCharVector_push" "', argument " "1"" of type '" "std::vector< char const * > *""'");
15088     }
15089     arg1 = reinterpret_cast< std::vector< char const * > * >(argp1);
15090     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
15091     if (!SWIG_IsOK(res2)) {
15092       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "ConstCharVector_push" "', argument " "2"" of type '" "char const *""'");
15093     }
15094     arg2 = reinterpret_cast< char * >(buf2);
15095     {
15096       try {
15097         (arg1)->push_back((char const *)arg2);
15098       } catch (const std::exception& e) {
15099         SWIG_exception(SWIG_RuntimeError, e.what());
15100       }
15101     }
15102     ST(argvi) = &PL_sv_undef;
15103 
15104     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
15105     XSRETURN(argvi);
15106   fail:
15107 
15108     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
15109     SWIG_croak_null();
15110   }
15111 }
15112 
15113 
XS(_wrap_ConstCharVector_pop)15114 XS(_wrap_ConstCharVector_pop) {
15115   {
15116     std::vector< char const * > *arg1 = (std::vector< char const * > *) 0 ;
15117     void *argp1 = 0 ;
15118     int res1 = 0 ;
15119     int argvi = 0;
15120     char *result = 0 ;
15121     dXSARGS;
15122 
15123     if ((items < 1) || (items > 1)) {
15124       SWIG_croak("Usage: ConstCharVector_pop(self);");
15125     }
15126     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_char_const_p_t, 0 |  0 );
15127     if (!SWIG_IsOK(res1)) {
15128       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ConstCharVector_pop" "', argument " "1"" of type '" "std::vector< char const * > *""'");
15129     }
15130     arg1 = reinterpret_cast< std::vector< char const * > * >(argp1);
15131     {
15132       try {
15133         try {
15134           result = (char *)std_vector_Sl_char_SS_const_Sm__Sg__pop(arg1);
15135         } catch(std::out_of_range &_e) {
15136           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
15137         }
15138       } catch (const std::exception& e) {
15139         SWIG_exception(SWIG_RuntimeError, e.what());
15140       }
15141     }
15142     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
15143 
15144     XSRETURN(argvi);
15145   fail:
15146 
15147     SWIG_croak_null();
15148   }
15149 }
15150 
15151 
XS(_wrap_ConstCharVector_get)15152 XS(_wrap_ConstCharVector_get) {
15153   {
15154     std::vector< char const * > *arg1 = (std::vector< char const * > *) 0 ;
15155     int arg2 ;
15156     void *argp1 = 0 ;
15157     int res1 = 0 ;
15158     int val2 ;
15159     int ecode2 = 0 ;
15160     int argvi = 0;
15161     char *result = 0 ;
15162     dXSARGS;
15163 
15164     if ((items < 2) || (items > 2)) {
15165       SWIG_croak("Usage: ConstCharVector_get(self,i);");
15166     }
15167     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_char_const_p_t, 0 |  0 );
15168     if (!SWIG_IsOK(res1)) {
15169       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ConstCharVector_get" "', argument " "1"" of type '" "std::vector< char const * > *""'");
15170     }
15171     arg1 = reinterpret_cast< std::vector< char const * > * >(argp1);
15172     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
15173     if (!SWIG_IsOK(ecode2)) {
15174       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ConstCharVector_get" "', argument " "2"" of type '" "int""'");
15175     }
15176     arg2 = static_cast< int >(val2);
15177     {
15178       try {
15179         try {
15180           result = (char *)std_vector_Sl_char_SS_const_Sm__Sg__get(arg1,arg2);
15181         } catch(std::out_of_range &_e) {
15182           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
15183         }
15184       } catch (const std::exception& e) {
15185         SWIG_exception(SWIG_RuntimeError, e.what());
15186       }
15187     }
15188     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
15189 
15190 
15191     XSRETURN(argvi);
15192   fail:
15193 
15194 
15195     SWIG_croak_null();
15196   }
15197 }
15198 
15199 
XS(_wrap_ConstCharVector_set)15200 XS(_wrap_ConstCharVector_set) {
15201   {
15202     std::vector< char const * > *arg1 = (std::vector< char const * > *) 0 ;
15203     int arg2 ;
15204     char *arg3 = (char *) 0 ;
15205     void *argp1 = 0 ;
15206     int res1 = 0 ;
15207     int val2 ;
15208     int ecode2 = 0 ;
15209     int res3 ;
15210     char *buf3 = 0 ;
15211     int alloc3 = 0 ;
15212     int argvi = 0;
15213     dXSARGS;
15214 
15215     if ((items < 3) || (items > 3)) {
15216       SWIG_croak("Usage: ConstCharVector_set(self,i,x);");
15217     }
15218     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_char_const_p_t, 0 |  0 );
15219     if (!SWIG_IsOK(res1)) {
15220       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ConstCharVector_set" "', argument " "1"" of type '" "std::vector< char const * > *""'");
15221     }
15222     arg1 = reinterpret_cast< std::vector< char const * > * >(argp1);
15223     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
15224     if (!SWIG_IsOK(ecode2)) {
15225       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ConstCharVector_set" "', argument " "2"" of type '" "int""'");
15226     }
15227     arg2 = static_cast< int >(val2);
15228     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
15229     if (!SWIG_IsOK(res3)) {
15230       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "ConstCharVector_set" "', argument " "3"" of type '" "char const *""'");
15231     }
15232     arg3 = reinterpret_cast< char * >(buf3);
15233     {
15234       try {
15235         try {
15236           std_vector_Sl_char_SS_const_Sm__Sg__set(arg1,arg2,(char const *)arg3);
15237         } catch(std::out_of_range &_e) {
15238           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
15239         }
15240       } catch (const std::exception& e) {
15241         SWIG_exception(SWIG_RuntimeError, e.what());
15242       }
15243     }
15244     ST(argvi) = &PL_sv_undef;
15245 
15246 
15247     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
15248     XSRETURN(argvi);
15249   fail:
15250 
15251 
15252     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
15253     SWIG_croak_null();
15254   }
15255 }
15256 
15257 
XS(_wrap_delete_ConstCharVector)15258 XS(_wrap_delete_ConstCharVector) {
15259   {
15260     std::vector< char const * > *arg1 = (std::vector< char const * > *) 0 ;
15261     void *argp1 = 0 ;
15262     int res1 = 0 ;
15263     int argvi = 0;
15264     dXSARGS;
15265 
15266     if ((items < 1) || (items > 1)) {
15267       SWIG_croak("Usage: delete_ConstCharVector(self);");
15268     }
15269     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_char_const_p_t, SWIG_POINTER_DISOWN |  0 );
15270     if (!SWIG_IsOK(res1)) {
15271       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_ConstCharVector" "', argument " "1"" of type '" "std::vector< char const * > *""'");
15272     }
15273     arg1 = reinterpret_cast< std::vector< char const * > * >(argp1);
15274     {
15275       try {
15276         delete arg1;
15277       } catch (const std::exception& e) {
15278         SWIG_exception(SWIG_RuntimeError, e.what());
15279       }
15280     }
15281     ST(argvi) = &PL_sv_undef;
15282 
15283     XSRETURN(argvi);
15284   fail:
15285 
15286     SWIG_croak_null();
15287   }
15288 }
15289 
15290 
XS(_wrap_new_SOLUTIONVector__SWIG_0)15291 XS(_wrap_new_SOLUTIONVector__SWIG_0) {
15292   {
15293     unsigned int arg1 ;
15294     unsigned int val1 ;
15295     int ecode1 = 0 ;
15296     int argvi = 0;
15297     std::vector< SOLUTION > *result = 0 ;
15298     dXSARGS;
15299 
15300     if ((items < 1) || (items > 1)) {
15301       SWIG_croak("Usage: new_SOLUTIONVector(size);");
15302     }
15303     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
15304     if (!SWIG_IsOK(ecode1)) {
15305       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_SOLUTIONVector" "', argument " "1"" of type '" "unsigned int""'");
15306     }
15307     arg1 = static_cast< unsigned int >(val1);
15308     {
15309       try {
15310         result = (std::vector< SOLUTION > *)new std::vector< SOLUTION >(arg1);
15311       } catch (const std::exception& e) {
15312         SWIG_exception(SWIG_RuntimeError, e.what());
15313       }
15314     }
15315     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_SOLUTION_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
15316 
15317     XSRETURN(argvi);
15318   fail:
15319 
15320     SWIG_croak_null();
15321   }
15322 }
15323 
15324 
XS(_wrap_new_SOLUTIONVector__SWIG_1)15325 XS(_wrap_new_SOLUTIONVector__SWIG_1) {
15326   {
15327     int argvi = 0;
15328     std::vector< SOLUTION > *result = 0 ;
15329     dXSARGS;
15330 
15331     if ((items < 0) || (items > 0)) {
15332       SWIG_croak("Usage: new_SOLUTIONVector();");
15333     }
15334     {
15335       try {
15336         result = (std::vector< SOLUTION > *)new std::vector< SOLUTION >();
15337       } catch (const std::exception& e) {
15338         SWIG_exception(SWIG_RuntimeError, e.what());
15339       }
15340     }
15341     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_SOLUTION_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
15342     XSRETURN(argvi);
15343   fail:
15344     SWIG_croak_null();
15345   }
15346 }
15347 
15348 
XS(_wrap_new_SOLUTIONVector__SWIG_2)15349 XS(_wrap_new_SOLUTIONVector__SWIG_2) {
15350   {
15351     unsigned int arg1 ;
15352     SOLUTION *arg2 = 0 ;
15353     unsigned int val1 ;
15354     int ecode1 = 0 ;
15355     void *argp2 ;
15356     int res2 = 0 ;
15357     int argvi = 0;
15358     std::vector< SOLUTION > *result = 0 ;
15359     dXSARGS;
15360 
15361     if ((items < 2) || (items > 2)) {
15362       SWIG_croak("Usage: new_SOLUTIONVector(size,value);");
15363     }
15364     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
15365     if (!SWIG_IsOK(ecode1)) {
15366       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_SOLUTIONVector" "', argument " "1"" of type '" "unsigned int""'");
15367     }
15368     arg1 = static_cast< unsigned int >(val1);
15369     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_SOLUTION,  0 );
15370     if (!SWIG_IsOK(res2)) {
15371       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_SOLUTIONVector" "', argument " "2"" of type '" "SOLUTION const &""'");
15372     }
15373     if (!argp2) {
15374       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_SOLUTIONVector" "', argument " "2"" of type '" "SOLUTION const &""'");
15375     }
15376     arg2 = reinterpret_cast< SOLUTION * >(argp2);
15377     {
15378       try {
15379         result = (std::vector< SOLUTION > *)new std::vector< SOLUTION >(arg1,(SOLUTION const &)*arg2);
15380       } catch (const std::exception& e) {
15381         SWIG_exception(SWIG_RuntimeError, e.what());
15382       }
15383     }
15384     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_SOLUTION_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
15385 
15386 
15387     XSRETURN(argvi);
15388   fail:
15389 
15390 
15391     SWIG_croak_null();
15392   }
15393 }
15394 
15395 
XS(_wrap_new_SOLUTIONVector__SWIG_3)15396 XS(_wrap_new_SOLUTIONVector__SWIG_3) {
15397   {
15398     std::vector< SOLUTION > *arg1 = 0 ;
15399     std::vector< SOLUTION > temp1 ;
15400     std::vector< SOLUTION > *v1 ;
15401     int argvi = 0;
15402     std::vector< SOLUTION > *result = 0 ;
15403     dXSARGS;
15404 
15405     if ((items < 1) || (items > 1)) {
15406       SWIG_croak("Usage: new_SOLUTIONVector(other);");
15407     }
15408     {
15409       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
15410           SWIGTYPE_p_std__vectorT_SOLUTION_t,1) != -1) {
15411         arg1 = v1;
15412       } else if (SvROK(ST(0))) {
15413         AV *av = (AV *)SvRV(ST(0));
15414         if (SvTYPE(av) != SVt_PVAV)
15415         SWIG_croak("Type error in argument 1 of new_SOLUTIONVector. "
15416           "Expected an array of " "SOLUTION");
15417         SV **tv;
15418         I32 len = av_len(av) + 1;
15419         SOLUTION* obj;
15420         for (int i=0; i<len; i++) {
15421           tv = av_fetch(av, i, 0);
15422           if (SWIG_ConvertPtr(*tv, (void **)&obj,
15423               SWIGTYPE_p_SOLUTION,0) != -1) {
15424             temp1.push_back(*obj);
15425           } else {
15426             SWIG_croak("Type error in argument 1 of "
15427               "new_SOLUTIONVector. "
15428               "Expected an array of " "SOLUTION");
15429           }
15430         }
15431         arg1 = &temp1;
15432       } else {
15433         SWIG_croak("Type error in argument 1 of new_SOLUTIONVector. "
15434           "Expected an array of " "SOLUTION");
15435       }
15436     }
15437     {
15438       try {
15439         result = (std::vector< SOLUTION > *)new std::vector< SOLUTION >((std::vector< SOLUTION > const &)*arg1);
15440       } catch (const std::exception& e) {
15441         SWIG_exception(SWIG_RuntimeError, e.what());
15442       }
15443     }
15444     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_SOLUTION_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
15445 
15446     XSRETURN(argvi);
15447   fail:
15448 
15449     SWIG_croak_null();
15450   }
15451 }
15452 
15453 
XS(_wrap_new_SOLUTIONVector)15454 XS(_wrap_new_SOLUTIONVector) {
15455   dXSARGS;
15456 
15457   {
15458     unsigned long _index = 0;
15459     SWIG_TypeRank _rank = 0;
15460     if (items == 0) {
15461       SWIG_TypeRank _ranki = 0;
15462       SWIG_TypeRank _rankm = 0;
15463       if (!_index || (_ranki < _rank)) {
15464         _rank = _ranki; _index = 1;
15465         if (_rank == _rankm) goto dispatch;
15466       }
15467     }
15468     if (items == 1) {
15469       SWIG_TypeRank _ranki = 0;
15470       SWIG_TypeRank _rankm = 0;
15471       SWIG_TypeRank _pi = 1;
15472       int _v = 0;
15473       {
15474         {
15475           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
15476           _v = SWIG_CheckState(res);
15477         }
15478       }
15479       if (!_v) goto check_2;
15480       _ranki += _v*_pi;
15481       _rankm += _pi;
15482       _pi *= SWIG_MAXCASTRANK;
15483       if (!_index || (_ranki < _rank)) {
15484         _rank = _ranki; _index = 2;
15485         if (_rank == _rankm) goto dispatch;
15486       }
15487     }
15488   check_2:
15489 
15490     if (items == 1) {
15491       SWIG_TypeRank _ranki = 0;
15492       SWIG_TypeRank _rankm = 0;
15493       SWIG_TypeRank _pi = 1;
15494       int _v = 0;
15495       {
15496         {
15497           {
15498             /* wrapped vector? */
15499             std::vector< SOLUTION >* v;
15500             if (SWIG_ConvertPtr(ST(0),(void **) &v,
15501                 SWIGTYPE_p_std__vectorT_SOLUTION_t,0) != -1) {
15502               _v = 1;
15503             } else if (SvROK(ST(0))) {
15504               /* native sequence? */
15505               AV *av = (AV *)SvRV(ST(0));
15506               if (SvTYPE(av) == SVt_PVAV) {
15507                 I32 len = av_len(av) + 1;
15508                 if (len == 0) {
15509                   /* an empty sequence can be of any type */
15510                   _v = 1;
15511                 } else {
15512                   /* check the first element only */
15513                   SOLUTION* obj;
15514                   SV **tv = av_fetch(av, 0, 0);
15515                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
15516                       SWIGTYPE_p_SOLUTION,0) != -1)
15517                   _v = 1;
15518                   else
15519                   _v = 0;
15520                 }
15521               }
15522             } else {
15523               _v = 0;
15524             }
15525           }
15526         }
15527       }
15528       if (!_v) goto check_3;
15529       _ranki += _v*_pi;
15530       _rankm += _pi;
15531       _pi *= SWIG_MAXCASTRANK;
15532       if (!_index || (_ranki < _rank)) {
15533         _rank = _ranki; _index = 3;
15534         if (_rank == _rankm) goto dispatch;
15535       }
15536     }
15537   check_3:
15538 
15539     if (items == 2) {
15540       SWIG_TypeRank _ranki = 0;
15541       SWIG_TypeRank _rankm = 0;
15542       SWIG_TypeRank _pi = 1;
15543       int _v = 0;
15544       {
15545         {
15546           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
15547           _v = SWIG_CheckState(res);
15548         }
15549       }
15550       if (!_v) goto check_4;
15551       _ranki += _v*_pi;
15552       _rankm += _pi;
15553       _pi *= SWIG_MAXCASTRANK;
15554       {
15555         void *vptr = 0;
15556         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_SOLUTION, SWIG_POINTER_NO_NULL);
15557         _v = SWIG_CheckState(res);
15558       }
15559       if (!_v) goto check_4;
15560       _ranki += _v*_pi;
15561       _rankm += _pi;
15562       _pi *= SWIG_MAXCASTRANK;
15563       if (!_index || (_ranki < _rank)) {
15564         _rank = _ranki; _index = 4;
15565         if (_rank == _rankm) goto dispatch;
15566       }
15567     }
15568   check_4:
15569 
15570   dispatch:
15571     switch(_index) {
15572     case 1:
15573       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_SOLUTIONVector__SWIG_1); return;
15574     case 2:
15575       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_SOLUTIONVector__SWIG_0); return;
15576     case 3:
15577       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_SOLUTIONVector__SWIG_3); return;
15578     case 4:
15579       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_SOLUTIONVector__SWIG_2); return;
15580     }
15581   }
15582 
15583   croak("No matching function for overloaded 'new_SOLUTIONVector'");
15584   XSRETURN(0);
15585 }
15586 
15587 
XS(_wrap_SOLUTIONVector_size)15588 XS(_wrap_SOLUTIONVector_size) {
15589   {
15590     std::vector< SOLUTION > *arg1 = (std::vector< SOLUTION > *) 0 ;
15591     std::vector< SOLUTION > temp1 ;
15592     std::vector< SOLUTION > *v1 ;
15593     int argvi = 0;
15594     unsigned int result;
15595     dXSARGS;
15596 
15597     if ((items < 1) || (items > 1)) {
15598       SWIG_croak("Usage: SOLUTIONVector_size(self);");
15599     }
15600     {
15601       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
15602           SWIGTYPE_p_std__vectorT_SOLUTION_t,1) != -1) {
15603         arg1 = v1;
15604       } else if (SvROK(ST(0))) {
15605         AV *av = (AV *)SvRV(ST(0));
15606         if (SvTYPE(av) != SVt_PVAV)
15607         SWIG_croak("Type error in argument 1 of SOLUTIONVector_size. "
15608           "Expected an array of " "SOLUTION");
15609         SV **tv;
15610         I32 len = av_len(av) + 1;
15611         SOLUTION* obj;
15612         for (int i=0; i<len; i++) {
15613           tv = av_fetch(av, i, 0);
15614           if (SWIG_ConvertPtr(*tv, (void **)&obj,
15615               SWIGTYPE_p_SOLUTION,0) != -1) {
15616             temp1.push_back(*obj);
15617           } else {
15618             SWIG_croak("Type error in argument 1 of "
15619               "SOLUTIONVector_size. "
15620               "Expected an array of " "SOLUTION");
15621           }
15622         }
15623         arg1 = &temp1;
15624       } else {
15625         SWIG_croak("Type error in argument 1 of SOLUTIONVector_size. "
15626           "Expected an array of " "SOLUTION");
15627       }
15628     }
15629     {
15630       try {
15631         result = (unsigned int)((std::vector< SOLUTION > const *)arg1)->size();
15632       } catch (const std::exception& e) {
15633         SWIG_exception(SWIG_RuntimeError, e.what());
15634       }
15635     }
15636     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
15637 
15638     XSRETURN(argvi);
15639   fail:
15640 
15641     SWIG_croak_null();
15642   }
15643 }
15644 
15645 
XS(_wrap_SOLUTIONVector_empty)15646 XS(_wrap_SOLUTIONVector_empty) {
15647   {
15648     std::vector< SOLUTION > *arg1 = (std::vector< SOLUTION > *) 0 ;
15649     std::vector< SOLUTION > temp1 ;
15650     std::vector< SOLUTION > *v1 ;
15651     int argvi = 0;
15652     bool result;
15653     dXSARGS;
15654 
15655     if ((items < 1) || (items > 1)) {
15656       SWIG_croak("Usage: SOLUTIONVector_empty(self);");
15657     }
15658     {
15659       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
15660           SWIGTYPE_p_std__vectorT_SOLUTION_t,1) != -1) {
15661         arg1 = v1;
15662       } else if (SvROK(ST(0))) {
15663         AV *av = (AV *)SvRV(ST(0));
15664         if (SvTYPE(av) != SVt_PVAV)
15665         SWIG_croak("Type error in argument 1 of SOLUTIONVector_empty. "
15666           "Expected an array of " "SOLUTION");
15667         SV **tv;
15668         I32 len = av_len(av) + 1;
15669         SOLUTION* obj;
15670         for (int i=0; i<len; i++) {
15671           tv = av_fetch(av, i, 0);
15672           if (SWIG_ConvertPtr(*tv, (void **)&obj,
15673               SWIGTYPE_p_SOLUTION,0) != -1) {
15674             temp1.push_back(*obj);
15675           } else {
15676             SWIG_croak("Type error in argument 1 of "
15677               "SOLUTIONVector_empty. "
15678               "Expected an array of " "SOLUTION");
15679           }
15680         }
15681         arg1 = &temp1;
15682       } else {
15683         SWIG_croak("Type error in argument 1 of SOLUTIONVector_empty. "
15684           "Expected an array of " "SOLUTION");
15685       }
15686     }
15687     {
15688       try {
15689         result = (bool)((std::vector< SOLUTION > const *)arg1)->empty();
15690       } catch (const std::exception& e) {
15691         SWIG_exception(SWIG_RuntimeError, e.what());
15692       }
15693     }
15694     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
15695 
15696     XSRETURN(argvi);
15697   fail:
15698 
15699     SWIG_croak_null();
15700   }
15701 }
15702 
15703 
XS(_wrap_SOLUTIONVector_clear)15704 XS(_wrap_SOLUTIONVector_clear) {
15705   {
15706     std::vector< SOLUTION > *arg1 = (std::vector< SOLUTION > *) 0 ;
15707     void *argp1 = 0 ;
15708     int res1 = 0 ;
15709     int argvi = 0;
15710     dXSARGS;
15711 
15712     if ((items < 1) || (items > 1)) {
15713       SWIG_croak("Usage: SOLUTIONVector_clear(self);");
15714     }
15715     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_SOLUTION_t, 0 |  0 );
15716     if (!SWIG_IsOK(res1)) {
15717       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SOLUTIONVector_clear" "', argument " "1"" of type '" "std::vector< SOLUTION > *""'");
15718     }
15719     arg1 = reinterpret_cast< std::vector< SOLUTION > * >(argp1);
15720     {
15721       try {
15722         (arg1)->clear();
15723       } catch (const std::exception& e) {
15724         SWIG_exception(SWIG_RuntimeError, e.what());
15725       }
15726     }
15727     ST(argvi) = &PL_sv_undef;
15728 
15729     XSRETURN(argvi);
15730   fail:
15731 
15732     SWIG_croak_null();
15733   }
15734 }
15735 
15736 
XS(_wrap_SOLUTIONVector_push)15737 XS(_wrap_SOLUTIONVector_push) {
15738   {
15739     std::vector< SOLUTION > *arg1 = (std::vector< SOLUTION > *) 0 ;
15740     SOLUTION *arg2 = 0 ;
15741     void *argp1 = 0 ;
15742     int res1 = 0 ;
15743     void *argp2 ;
15744     int res2 = 0 ;
15745     int argvi = 0;
15746     dXSARGS;
15747 
15748     if ((items < 2) || (items > 2)) {
15749       SWIG_croak("Usage: SOLUTIONVector_push(self,x);");
15750     }
15751     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_SOLUTION_t, 0 |  0 );
15752     if (!SWIG_IsOK(res1)) {
15753       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SOLUTIONVector_push" "', argument " "1"" of type '" "std::vector< SOLUTION > *""'");
15754     }
15755     arg1 = reinterpret_cast< std::vector< SOLUTION > * >(argp1);
15756     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_SOLUTION,  0 );
15757     if (!SWIG_IsOK(res2)) {
15758       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "SOLUTIONVector_push" "', argument " "2"" of type '" "SOLUTION const &""'");
15759     }
15760     if (!argp2) {
15761       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "SOLUTIONVector_push" "', argument " "2"" of type '" "SOLUTION const &""'");
15762     }
15763     arg2 = reinterpret_cast< SOLUTION * >(argp2);
15764     {
15765       try {
15766         (arg1)->push_back((SOLUTION const &)*arg2);
15767       } catch (const std::exception& e) {
15768         SWIG_exception(SWIG_RuntimeError, e.what());
15769       }
15770     }
15771     ST(argvi) = &PL_sv_undef;
15772 
15773 
15774     XSRETURN(argvi);
15775   fail:
15776 
15777 
15778     SWIG_croak_null();
15779   }
15780 }
15781 
15782 
XS(_wrap_SOLUTIONVector_pop)15783 XS(_wrap_SOLUTIONVector_pop) {
15784   {
15785     std::vector< SOLUTION > *arg1 = (std::vector< SOLUTION > *) 0 ;
15786     void *argp1 = 0 ;
15787     int res1 = 0 ;
15788     int argvi = 0;
15789     SOLUTION result;
15790     dXSARGS;
15791 
15792     if ((items < 1) || (items > 1)) {
15793       SWIG_croak("Usage: SOLUTIONVector_pop(self);");
15794     }
15795     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_SOLUTION_t, 0 |  0 );
15796     if (!SWIG_IsOK(res1)) {
15797       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SOLUTIONVector_pop" "', argument " "1"" of type '" "std::vector< SOLUTION > *""'");
15798     }
15799     arg1 = reinterpret_cast< std::vector< SOLUTION > * >(argp1);
15800     {
15801       try {
15802         try {
15803           result = std_vector_Sl_SOLUTION_Sg__pop(arg1);
15804         } catch(std::out_of_range &_e) {
15805           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
15806         }
15807       } catch (const std::exception& e) {
15808         SWIG_exception(SWIG_RuntimeError, e.what());
15809       }
15810     }
15811     ST(argvi) = SWIG_NewPointerObj((new SOLUTION(static_cast< const SOLUTION& >(result))), SWIGTYPE_p_SOLUTION, SWIG_POINTER_OWN | SWIG_SHADOW); argvi++ ;
15812 
15813     XSRETURN(argvi);
15814   fail:
15815 
15816     SWIG_croak_null();
15817   }
15818 }
15819 
15820 
XS(_wrap_SOLUTIONVector_get)15821 XS(_wrap_SOLUTIONVector_get) {
15822   {
15823     std::vector< SOLUTION > *arg1 = (std::vector< SOLUTION > *) 0 ;
15824     int arg2 ;
15825     void *argp1 = 0 ;
15826     int res1 = 0 ;
15827     int val2 ;
15828     int ecode2 = 0 ;
15829     int argvi = 0;
15830     SOLUTION *result = 0 ;
15831     dXSARGS;
15832 
15833     if ((items < 2) || (items > 2)) {
15834       SWIG_croak("Usage: SOLUTIONVector_get(self,i);");
15835     }
15836     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_SOLUTION_t, 0 |  0 );
15837     if (!SWIG_IsOK(res1)) {
15838       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SOLUTIONVector_get" "', argument " "1"" of type '" "std::vector< SOLUTION > *""'");
15839     }
15840     arg1 = reinterpret_cast< std::vector< SOLUTION > * >(argp1);
15841     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
15842     if (!SWIG_IsOK(ecode2)) {
15843       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "SOLUTIONVector_get" "', argument " "2"" of type '" "int""'");
15844     }
15845     arg2 = static_cast< int >(val2);
15846     {
15847       try {
15848         try {
15849           result = (SOLUTION *) &std_vector_Sl_SOLUTION_Sg__get(arg1,arg2);
15850         } catch(std::out_of_range &_e) {
15851           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
15852         }
15853       } catch (const std::exception& e) {
15854         SWIG_exception(SWIG_RuntimeError, e.what());
15855       }
15856     }
15857     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_SOLUTION, 0 | SWIG_SHADOW); argvi++ ;
15858 
15859 
15860     XSRETURN(argvi);
15861   fail:
15862 
15863 
15864     SWIG_croak_null();
15865   }
15866 }
15867 
15868 
XS(_wrap_SOLUTIONVector_set)15869 XS(_wrap_SOLUTIONVector_set) {
15870   {
15871     std::vector< SOLUTION > *arg1 = (std::vector< SOLUTION > *) 0 ;
15872     int arg2 ;
15873     SOLUTION *arg3 = 0 ;
15874     void *argp1 = 0 ;
15875     int res1 = 0 ;
15876     int val2 ;
15877     int ecode2 = 0 ;
15878     void *argp3 ;
15879     int res3 = 0 ;
15880     int argvi = 0;
15881     dXSARGS;
15882 
15883     if ((items < 3) || (items > 3)) {
15884       SWIG_croak("Usage: SOLUTIONVector_set(self,i,x);");
15885     }
15886     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_SOLUTION_t, 0 |  0 );
15887     if (!SWIG_IsOK(res1)) {
15888       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SOLUTIONVector_set" "', argument " "1"" of type '" "std::vector< SOLUTION > *""'");
15889     }
15890     arg1 = reinterpret_cast< std::vector< SOLUTION > * >(argp1);
15891     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
15892     if (!SWIG_IsOK(ecode2)) {
15893       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "SOLUTIONVector_set" "', argument " "2"" of type '" "int""'");
15894     }
15895     arg2 = static_cast< int >(val2);
15896     res3 = SWIG_ConvertPtr(ST(2), &argp3, SWIGTYPE_p_SOLUTION,  0 );
15897     if (!SWIG_IsOK(res3)) {
15898       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "SOLUTIONVector_set" "', argument " "3"" of type '" "SOLUTION const &""'");
15899     }
15900     if (!argp3) {
15901       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "SOLUTIONVector_set" "', argument " "3"" of type '" "SOLUTION const &""'");
15902     }
15903     arg3 = reinterpret_cast< SOLUTION * >(argp3);
15904     {
15905       try {
15906         try {
15907           std_vector_Sl_SOLUTION_Sg__set(arg1,arg2,(SOLUTION const &)*arg3);
15908         } catch(std::out_of_range &_e) {
15909           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
15910         }
15911       } catch (const std::exception& e) {
15912         SWIG_exception(SWIG_RuntimeError, e.what());
15913       }
15914     }
15915     ST(argvi) = &PL_sv_undef;
15916 
15917 
15918 
15919     XSRETURN(argvi);
15920   fail:
15921 
15922 
15923 
15924     SWIG_croak_null();
15925   }
15926 }
15927 
15928 
XS(_wrap_delete_SOLUTIONVector)15929 XS(_wrap_delete_SOLUTIONVector) {
15930   {
15931     std::vector< SOLUTION > *arg1 = (std::vector< SOLUTION > *) 0 ;
15932     void *argp1 = 0 ;
15933     int res1 = 0 ;
15934     int argvi = 0;
15935     dXSARGS;
15936 
15937     if ((items < 1) || (items > 1)) {
15938       SWIG_croak("Usage: delete_SOLUTIONVector(self);");
15939     }
15940     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_SOLUTION_t, SWIG_POINTER_DISOWN |  0 );
15941     if (!SWIG_IsOK(res1)) {
15942       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_SOLUTIONVector" "', argument " "1"" of type '" "std::vector< SOLUTION > *""'");
15943     }
15944     arg1 = reinterpret_cast< std::vector< SOLUTION > * >(argp1);
15945     {
15946       try {
15947         delete arg1;
15948       } catch (const std::exception& e) {
15949         SWIG_exception(SWIG_RuntimeError, e.what());
15950       }
15951     }
15952     ST(argvi) = &PL_sv_undef;
15953 
15954     XSRETURN(argvi);
15955   fail:
15956 
15957     SWIG_croak_null();
15958   }
15959 }
15960 
15961 
XS(_wrap_new_CoordinateVector__SWIG_0)15962 XS(_wrap_new_CoordinateVector__SWIG_0) {
15963   {
15964     unsigned int arg1 ;
15965     unsigned int val1 ;
15966     int ecode1 = 0 ;
15967     int argvi = 0;
15968     std::vector< COORDINATE > *result = 0 ;
15969     dXSARGS;
15970 
15971     if ((items < 1) || (items > 1)) {
15972       SWIG_croak("Usage: new_CoordinateVector(size);");
15973     }
15974     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
15975     if (!SWIG_IsOK(ecode1)) {
15976       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_CoordinateVector" "', argument " "1"" of type '" "unsigned int""'");
15977     }
15978     arg1 = static_cast< unsigned int >(val1);
15979     {
15980       try {
15981         result = (std::vector< COORDINATE > *)new std::vector< COORDINATE >(arg1);
15982       } catch (const std::exception& e) {
15983         SWIG_exception(SWIG_RuntimeError, e.what());
15984       }
15985     }
15986     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_COORDINATE_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
15987 
15988     XSRETURN(argvi);
15989   fail:
15990 
15991     SWIG_croak_null();
15992   }
15993 }
15994 
15995 
XS(_wrap_new_CoordinateVector__SWIG_1)15996 XS(_wrap_new_CoordinateVector__SWIG_1) {
15997   {
15998     int argvi = 0;
15999     std::vector< COORDINATE > *result = 0 ;
16000     dXSARGS;
16001 
16002     if ((items < 0) || (items > 0)) {
16003       SWIG_croak("Usage: new_CoordinateVector();");
16004     }
16005     {
16006       try {
16007         result = (std::vector< COORDINATE > *)new std::vector< COORDINATE >();
16008       } catch (const std::exception& e) {
16009         SWIG_exception(SWIG_RuntimeError, e.what());
16010       }
16011     }
16012     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_COORDINATE_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
16013     XSRETURN(argvi);
16014   fail:
16015     SWIG_croak_null();
16016   }
16017 }
16018 
16019 
XS(_wrap_new_CoordinateVector__SWIG_2)16020 XS(_wrap_new_CoordinateVector__SWIG_2) {
16021   {
16022     unsigned int arg1 ;
16023     COORDINATE *arg2 = 0 ;
16024     unsigned int val1 ;
16025     int ecode1 = 0 ;
16026     void *argp2 ;
16027     int res2 = 0 ;
16028     int argvi = 0;
16029     std::vector< COORDINATE > *result = 0 ;
16030     dXSARGS;
16031 
16032     if ((items < 2) || (items > 2)) {
16033       SWIG_croak("Usage: new_CoordinateVector(size,value);");
16034     }
16035     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
16036     if (!SWIG_IsOK(ecode1)) {
16037       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_CoordinateVector" "', argument " "1"" of type '" "unsigned int""'");
16038     }
16039     arg1 = static_cast< unsigned int >(val1);
16040     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_COORDINATE,  0 );
16041     if (!SWIG_IsOK(res2)) {
16042       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_CoordinateVector" "', argument " "2"" of type '" "COORDINATE const &""'");
16043     }
16044     if (!argp2) {
16045       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_CoordinateVector" "', argument " "2"" of type '" "COORDINATE const &""'");
16046     }
16047     arg2 = reinterpret_cast< COORDINATE * >(argp2);
16048     {
16049       try {
16050         result = (std::vector< COORDINATE > *)new std::vector< COORDINATE >(arg1,(COORDINATE const &)*arg2);
16051       } catch (const std::exception& e) {
16052         SWIG_exception(SWIG_RuntimeError, e.what());
16053       }
16054     }
16055     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_COORDINATE_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
16056 
16057 
16058     XSRETURN(argvi);
16059   fail:
16060 
16061 
16062     SWIG_croak_null();
16063   }
16064 }
16065 
16066 
XS(_wrap_new_CoordinateVector__SWIG_3)16067 XS(_wrap_new_CoordinateVector__SWIG_3) {
16068   {
16069     std::vector< COORDINATE > *arg1 = 0 ;
16070     std::vector< COORDINATE > temp1 ;
16071     std::vector< COORDINATE > *v1 ;
16072     int argvi = 0;
16073     std::vector< COORDINATE > *result = 0 ;
16074     dXSARGS;
16075 
16076     if ((items < 1) || (items > 1)) {
16077       SWIG_croak("Usage: new_CoordinateVector(other);");
16078     }
16079     {
16080       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
16081           SWIGTYPE_p_std__vectorT_COORDINATE_t,1) != -1) {
16082         arg1 = v1;
16083       } else if (SvROK(ST(0))) {
16084         AV *av = (AV *)SvRV(ST(0));
16085         if (SvTYPE(av) != SVt_PVAV)
16086         SWIG_croak("Type error in argument 1 of new_CoordinateVector. "
16087           "Expected an array of " "COORDINATE");
16088         SV **tv;
16089         I32 len = av_len(av) + 1;
16090         COORDINATE* obj;
16091         for (int i=0; i<len; i++) {
16092           tv = av_fetch(av, i, 0);
16093           if (SWIG_ConvertPtr(*tv, (void **)&obj,
16094               SWIGTYPE_p_COORDINATE,0) != -1) {
16095             temp1.push_back(*obj);
16096           } else {
16097             SWIG_croak("Type error in argument 1 of "
16098               "new_CoordinateVector. "
16099               "Expected an array of " "COORDINATE");
16100           }
16101         }
16102         arg1 = &temp1;
16103       } else {
16104         SWIG_croak("Type error in argument 1 of new_CoordinateVector. "
16105           "Expected an array of " "COORDINATE");
16106       }
16107     }
16108     {
16109       try {
16110         result = (std::vector< COORDINATE > *)new std::vector< COORDINATE >((std::vector< COORDINATE > const &)*arg1);
16111       } catch (const std::exception& e) {
16112         SWIG_exception(SWIG_RuntimeError, e.what());
16113       }
16114     }
16115     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_COORDINATE_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
16116 
16117     XSRETURN(argvi);
16118   fail:
16119 
16120     SWIG_croak_null();
16121   }
16122 }
16123 
16124 
XS(_wrap_new_CoordinateVector)16125 XS(_wrap_new_CoordinateVector) {
16126   dXSARGS;
16127 
16128   {
16129     unsigned long _index = 0;
16130     SWIG_TypeRank _rank = 0;
16131     if (items == 0) {
16132       SWIG_TypeRank _ranki = 0;
16133       SWIG_TypeRank _rankm = 0;
16134       if (!_index || (_ranki < _rank)) {
16135         _rank = _ranki; _index = 1;
16136         if (_rank == _rankm) goto dispatch;
16137       }
16138     }
16139     if (items == 1) {
16140       SWIG_TypeRank _ranki = 0;
16141       SWIG_TypeRank _rankm = 0;
16142       SWIG_TypeRank _pi = 1;
16143       int _v = 0;
16144       {
16145         {
16146           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
16147           _v = SWIG_CheckState(res);
16148         }
16149       }
16150       if (!_v) goto check_2;
16151       _ranki += _v*_pi;
16152       _rankm += _pi;
16153       _pi *= SWIG_MAXCASTRANK;
16154       if (!_index || (_ranki < _rank)) {
16155         _rank = _ranki; _index = 2;
16156         if (_rank == _rankm) goto dispatch;
16157       }
16158     }
16159   check_2:
16160 
16161     if (items == 1) {
16162       SWIG_TypeRank _ranki = 0;
16163       SWIG_TypeRank _rankm = 0;
16164       SWIG_TypeRank _pi = 1;
16165       int _v = 0;
16166       {
16167         {
16168           {
16169             /* wrapped vector? */
16170             std::vector< COORDINATE >* v;
16171             if (SWIG_ConvertPtr(ST(0),(void **) &v,
16172                 SWIGTYPE_p_std__vectorT_COORDINATE_t,0) != -1) {
16173               _v = 1;
16174             } else if (SvROK(ST(0))) {
16175               /* native sequence? */
16176               AV *av = (AV *)SvRV(ST(0));
16177               if (SvTYPE(av) == SVt_PVAV) {
16178                 I32 len = av_len(av) + 1;
16179                 if (len == 0) {
16180                   /* an empty sequence can be of any type */
16181                   _v = 1;
16182                 } else {
16183                   /* check the first element only */
16184                   COORDINATE* obj;
16185                   SV **tv = av_fetch(av, 0, 0);
16186                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
16187                       SWIGTYPE_p_COORDINATE,0) != -1)
16188                   _v = 1;
16189                   else
16190                   _v = 0;
16191                 }
16192               }
16193             } else {
16194               _v = 0;
16195             }
16196           }
16197         }
16198       }
16199       if (!_v) goto check_3;
16200       _ranki += _v*_pi;
16201       _rankm += _pi;
16202       _pi *= SWIG_MAXCASTRANK;
16203       if (!_index || (_ranki < _rank)) {
16204         _rank = _ranki; _index = 3;
16205         if (_rank == _rankm) goto dispatch;
16206       }
16207     }
16208   check_3:
16209 
16210     if (items == 2) {
16211       SWIG_TypeRank _ranki = 0;
16212       SWIG_TypeRank _rankm = 0;
16213       SWIG_TypeRank _pi = 1;
16214       int _v = 0;
16215       {
16216         {
16217           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
16218           _v = SWIG_CheckState(res);
16219         }
16220       }
16221       if (!_v) goto check_4;
16222       _ranki += _v*_pi;
16223       _rankm += _pi;
16224       _pi *= SWIG_MAXCASTRANK;
16225       {
16226         void *vptr = 0;
16227         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_COORDINATE, SWIG_POINTER_NO_NULL);
16228         _v = SWIG_CheckState(res);
16229       }
16230       if (!_v) goto check_4;
16231       _ranki += _v*_pi;
16232       _rankm += _pi;
16233       _pi *= SWIG_MAXCASTRANK;
16234       if (!_index || (_ranki < _rank)) {
16235         _rank = _ranki; _index = 4;
16236         if (_rank == _rankm) goto dispatch;
16237       }
16238     }
16239   check_4:
16240 
16241   dispatch:
16242     switch(_index) {
16243     case 1:
16244       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_CoordinateVector__SWIG_1); return;
16245     case 2:
16246       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_CoordinateVector__SWIG_0); return;
16247     case 3:
16248       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_CoordinateVector__SWIG_3); return;
16249     case 4:
16250       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_CoordinateVector__SWIG_2); return;
16251     }
16252   }
16253 
16254   croak("No matching function for overloaded 'new_CoordinateVector'");
16255   XSRETURN(0);
16256 }
16257 
16258 
XS(_wrap_CoordinateVector_size)16259 XS(_wrap_CoordinateVector_size) {
16260   {
16261     std::vector< COORDINATE > *arg1 = (std::vector< COORDINATE > *) 0 ;
16262     std::vector< COORDINATE > temp1 ;
16263     std::vector< COORDINATE > *v1 ;
16264     int argvi = 0;
16265     unsigned int result;
16266     dXSARGS;
16267 
16268     if ((items < 1) || (items > 1)) {
16269       SWIG_croak("Usage: CoordinateVector_size(self);");
16270     }
16271     {
16272       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
16273           SWIGTYPE_p_std__vectorT_COORDINATE_t,1) != -1) {
16274         arg1 = v1;
16275       } else if (SvROK(ST(0))) {
16276         AV *av = (AV *)SvRV(ST(0));
16277         if (SvTYPE(av) != SVt_PVAV)
16278         SWIG_croak("Type error in argument 1 of CoordinateVector_size. "
16279           "Expected an array of " "COORDINATE");
16280         SV **tv;
16281         I32 len = av_len(av) + 1;
16282         COORDINATE* obj;
16283         for (int i=0; i<len; i++) {
16284           tv = av_fetch(av, i, 0);
16285           if (SWIG_ConvertPtr(*tv, (void **)&obj,
16286               SWIGTYPE_p_COORDINATE,0) != -1) {
16287             temp1.push_back(*obj);
16288           } else {
16289             SWIG_croak("Type error in argument 1 of "
16290               "CoordinateVector_size. "
16291               "Expected an array of " "COORDINATE");
16292           }
16293         }
16294         arg1 = &temp1;
16295       } else {
16296         SWIG_croak("Type error in argument 1 of CoordinateVector_size. "
16297           "Expected an array of " "COORDINATE");
16298       }
16299     }
16300     {
16301       try {
16302         result = (unsigned int)((std::vector< COORDINATE > const *)arg1)->size();
16303       } catch (const std::exception& e) {
16304         SWIG_exception(SWIG_RuntimeError, e.what());
16305       }
16306     }
16307     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
16308 
16309     XSRETURN(argvi);
16310   fail:
16311 
16312     SWIG_croak_null();
16313   }
16314 }
16315 
16316 
XS(_wrap_CoordinateVector_empty)16317 XS(_wrap_CoordinateVector_empty) {
16318   {
16319     std::vector< COORDINATE > *arg1 = (std::vector< COORDINATE > *) 0 ;
16320     std::vector< COORDINATE > temp1 ;
16321     std::vector< COORDINATE > *v1 ;
16322     int argvi = 0;
16323     bool result;
16324     dXSARGS;
16325 
16326     if ((items < 1) || (items > 1)) {
16327       SWIG_croak("Usage: CoordinateVector_empty(self);");
16328     }
16329     {
16330       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
16331           SWIGTYPE_p_std__vectorT_COORDINATE_t,1) != -1) {
16332         arg1 = v1;
16333       } else if (SvROK(ST(0))) {
16334         AV *av = (AV *)SvRV(ST(0));
16335         if (SvTYPE(av) != SVt_PVAV)
16336         SWIG_croak("Type error in argument 1 of CoordinateVector_empty. "
16337           "Expected an array of " "COORDINATE");
16338         SV **tv;
16339         I32 len = av_len(av) + 1;
16340         COORDINATE* obj;
16341         for (int i=0; i<len; i++) {
16342           tv = av_fetch(av, i, 0);
16343           if (SWIG_ConvertPtr(*tv, (void **)&obj,
16344               SWIGTYPE_p_COORDINATE,0) != -1) {
16345             temp1.push_back(*obj);
16346           } else {
16347             SWIG_croak("Type error in argument 1 of "
16348               "CoordinateVector_empty. "
16349               "Expected an array of " "COORDINATE");
16350           }
16351         }
16352         arg1 = &temp1;
16353       } else {
16354         SWIG_croak("Type error in argument 1 of CoordinateVector_empty. "
16355           "Expected an array of " "COORDINATE");
16356       }
16357     }
16358     {
16359       try {
16360         result = (bool)((std::vector< COORDINATE > const *)arg1)->empty();
16361       } catch (const std::exception& e) {
16362         SWIG_exception(SWIG_RuntimeError, e.what());
16363       }
16364     }
16365     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
16366 
16367     XSRETURN(argvi);
16368   fail:
16369 
16370     SWIG_croak_null();
16371   }
16372 }
16373 
16374 
XS(_wrap_CoordinateVector_clear)16375 XS(_wrap_CoordinateVector_clear) {
16376   {
16377     std::vector< COORDINATE > *arg1 = (std::vector< COORDINATE > *) 0 ;
16378     void *argp1 = 0 ;
16379     int res1 = 0 ;
16380     int argvi = 0;
16381     dXSARGS;
16382 
16383     if ((items < 1) || (items > 1)) {
16384       SWIG_croak("Usage: CoordinateVector_clear(self);");
16385     }
16386     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_COORDINATE_t, 0 |  0 );
16387     if (!SWIG_IsOK(res1)) {
16388       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CoordinateVector_clear" "', argument " "1"" of type '" "std::vector< COORDINATE > *""'");
16389     }
16390     arg1 = reinterpret_cast< std::vector< COORDINATE > * >(argp1);
16391     {
16392       try {
16393         (arg1)->clear();
16394       } catch (const std::exception& e) {
16395         SWIG_exception(SWIG_RuntimeError, e.what());
16396       }
16397     }
16398     ST(argvi) = &PL_sv_undef;
16399 
16400     XSRETURN(argvi);
16401   fail:
16402 
16403     SWIG_croak_null();
16404   }
16405 }
16406 
16407 
XS(_wrap_CoordinateVector_push)16408 XS(_wrap_CoordinateVector_push) {
16409   {
16410     std::vector< COORDINATE > *arg1 = (std::vector< COORDINATE > *) 0 ;
16411     COORDINATE *arg2 = 0 ;
16412     void *argp1 = 0 ;
16413     int res1 = 0 ;
16414     void *argp2 ;
16415     int res2 = 0 ;
16416     int argvi = 0;
16417     dXSARGS;
16418 
16419     if ((items < 2) || (items > 2)) {
16420       SWIG_croak("Usage: CoordinateVector_push(self,x);");
16421     }
16422     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_COORDINATE_t, 0 |  0 );
16423     if (!SWIG_IsOK(res1)) {
16424       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CoordinateVector_push" "', argument " "1"" of type '" "std::vector< COORDINATE > *""'");
16425     }
16426     arg1 = reinterpret_cast< std::vector< COORDINATE > * >(argp1);
16427     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_COORDINATE,  0 );
16428     if (!SWIG_IsOK(res2)) {
16429       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CoordinateVector_push" "', argument " "2"" of type '" "COORDINATE const &""'");
16430     }
16431     if (!argp2) {
16432       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "CoordinateVector_push" "', argument " "2"" of type '" "COORDINATE const &""'");
16433     }
16434     arg2 = reinterpret_cast< COORDINATE * >(argp2);
16435     {
16436       try {
16437         (arg1)->push_back((COORDINATE const &)*arg2);
16438       } catch (const std::exception& e) {
16439         SWIG_exception(SWIG_RuntimeError, e.what());
16440       }
16441     }
16442     ST(argvi) = &PL_sv_undef;
16443 
16444 
16445     XSRETURN(argvi);
16446   fail:
16447 
16448 
16449     SWIG_croak_null();
16450   }
16451 }
16452 
16453 
XS(_wrap_CoordinateVector_pop)16454 XS(_wrap_CoordinateVector_pop) {
16455   {
16456     std::vector< COORDINATE > *arg1 = (std::vector< COORDINATE > *) 0 ;
16457     void *argp1 = 0 ;
16458     int res1 = 0 ;
16459     int argvi = 0;
16460     COORDINATE result;
16461     dXSARGS;
16462 
16463     if ((items < 1) || (items > 1)) {
16464       SWIG_croak("Usage: CoordinateVector_pop(self);");
16465     }
16466     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_COORDINATE_t, 0 |  0 );
16467     if (!SWIG_IsOK(res1)) {
16468       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CoordinateVector_pop" "', argument " "1"" of type '" "std::vector< COORDINATE > *""'");
16469     }
16470     arg1 = reinterpret_cast< std::vector< COORDINATE > * >(argp1);
16471     {
16472       try {
16473         try {
16474           result = std_vector_Sl_COORDINATE_Sg__pop(arg1);
16475         } catch(std::out_of_range &_e) {
16476           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
16477         }
16478       } catch (const std::exception& e) {
16479         SWIG_exception(SWIG_RuntimeError, e.what());
16480       }
16481     }
16482     ST(argvi) = SWIG_NewPointerObj((new COORDINATE(static_cast< const COORDINATE& >(result))), SWIGTYPE_p_COORDINATE, SWIG_POINTER_OWN | SWIG_SHADOW); argvi++ ;
16483 
16484     XSRETURN(argvi);
16485   fail:
16486 
16487     SWIG_croak_null();
16488   }
16489 }
16490 
16491 
XS(_wrap_CoordinateVector_get)16492 XS(_wrap_CoordinateVector_get) {
16493   {
16494     std::vector< COORDINATE > *arg1 = (std::vector< COORDINATE > *) 0 ;
16495     int arg2 ;
16496     void *argp1 = 0 ;
16497     int res1 = 0 ;
16498     int val2 ;
16499     int ecode2 = 0 ;
16500     int argvi = 0;
16501     COORDINATE *result = 0 ;
16502     dXSARGS;
16503 
16504     if ((items < 2) || (items > 2)) {
16505       SWIG_croak("Usage: CoordinateVector_get(self,i);");
16506     }
16507     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_COORDINATE_t, 0 |  0 );
16508     if (!SWIG_IsOK(res1)) {
16509       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CoordinateVector_get" "', argument " "1"" of type '" "std::vector< COORDINATE > *""'");
16510     }
16511     arg1 = reinterpret_cast< std::vector< COORDINATE > * >(argp1);
16512     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
16513     if (!SWIG_IsOK(ecode2)) {
16514       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "CoordinateVector_get" "', argument " "2"" of type '" "int""'");
16515     }
16516     arg2 = static_cast< int >(val2);
16517     {
16518       try {
16519         try {
16520           result = (COORDINATE *) &std_vector_Sl_COORDINATE_Sg__get(arg1,arg2);
16521         } catch(std::out_of_range &_e) {
16522           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
16523         }
16524       } catch (const std::exception& e) {
16525         SWIG_exception(SWIG_RuntimeError, e.what());
16526       }
16527     }
16528     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_COORDINATE, 0 | SWIG_SHADOW); argvi++ ;
16529 
16530 
16531     XSRETURN(argvi);
16532   fail:
16533 
16534 
16535     SWIG_croak_null();
16536   }
16537 }
16538 
16539 
XS(_wrap_CoordinateVector_set)16540 XS(_wrap_CoordinateVector_set) {
16541   {
16542     std::vector< COORDINATE > *arg1 = (std::vector< COORDINATE > *) 0 ;
16543     int arg2 ;
16544     COORDINATE *arg3 = 0 ;
16545     void *argp1 = 0 ;
16546     int res1 = 0 ;
16547     int val2 ;
16548     int ecode2 = 0 ;
16549     void *argp3 ;
16550     int res3 = 0 ;
16551     int argvi = 0;
16552     dXSARGS;
16553 
16554     if ((items < 3) || (items > 3)) {
16555       SWIG_croak("Usage: CoordinateVector_set(self,i,x);");
16556     }
16557     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_COORDINATE_t, 0 |  0 );
16558     if (!SWIG_IsOK(res1)) {
16559       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CoordinateVector_set" "', argument " "1"" of type '" "std::vector< COORDINATE > *""'");
16560     }
16561     arg1 = reinterpret_cast< std::vector< COORDINATE > * >(argp1);
16562     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
16563     if (!SWIG_IsOK(ecode2)) {
16564       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "CoordinateVector_set" "', argument " "2"" of type '" "int""'");
16565     }
16566     arg2 = static_cast< int >(val2);
16567     res3 = SWIG_ConvertPtr(ST(2), &argp3, SWIGTYPE_p_COORDINATE,  0 );
16568     if (!SWIG_IsOK(res3)) {
16569       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "CoordinateVector_set" "', argument " "3"" of type '" "COORDINATE const &""'");
16570     }
16571     if (!argp3) {
16572       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "CoordinateVector_set" "', argument " "3"" of type '" "COORDINATE const &""'");
16573     }
16574     arg3 = reinterpret_cast< COORDINATE * >(argp3);
16575     {
16576       try {
16577         try {
16578           std_vector_Sl_COORDINATE_Sg__set(arg1,arg2,(COORDINATE const &)*arg3);
16579         } catch(std::out_of_range &_e) {
16580           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
16581         }
16582       } catch (const std::exception& e) {
16583         SWIG_exception(SWIG_RuntimeError, e.what());
16584       }
16585     }
16586     ST(argvi) = &PL_sv_undef;
16587 
16588 
16589 
16590     XSRETURN(argvi);
16591   fail:
16592 
16593 
16594 
16595     SWIG_croak_null();
16596   }
16597 }
16598 
16599 
XS(_wrap_delete_CoordinateVector)16600 XS(_wrap_delete_CoordinateVector) {
16601   {
16602     std::vector< COORDINATE > *arg1 = (std::vector< COORDINATE > *) 0 ;
16603     void *argp1 = 0 ;
16604     int res1 = 0 ;
16605     int argvi = 0;
16606     dXSARGS;
16607 
16608     if ((items < 1) || (items > 1)) {
16609       SWIG_croak("Usage: delete_CoordinateVector(self);");
16610     }
16611     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_COORDINATE_t, SWIG_POINTER_DISOWN |  0 );
16612     if (!SWIG_IsOK(res1)) {
16613       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_CoordinateVector" "', argument " "1"" of type '" "std::vector< COORDINATE > *""'");
16614     }
16615     arg1 = reinterpret_cast< std::vector< COORDINATE > * >(argp1);
16616     {
16617       try {
16618         delete arg1;
16619       } catch (const std::exception& e) {
16620         SWIG_exception(SWIG_RuntimeError, e.what());
16621       }
16622     }
16623     ST(argvi) = &PL_sv_undef;
16624 
16625     XSRETURN(argvi);
16626   fail:
16627 
16628     SWIG_croak_null();
16629   }
16630 }
16631 
16632 
XS(_wrap_new_DoubleDoubleVector__SWIG_0)16633 XS(_wrap_new_DoubleDoubleVector__SWIG_0) {
16634   {
16635     unsigned int arg1 ;
16636     unsigned int val1 ;
16637     int ecode1 = 0 ;
16638     int argvi = 0;
16639     std::vector< std::vector< double > > *result = 0 ;
16640     dXSARGS;
16641 
16642     if ((items < 1) || (items > 1)) {
16643       SWIG_croak("Usage: new_DoubleDoubleVector(size);");
16644     }
16645     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
16646     if (!SWIG_IsOK(ecode1)) {
16647       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_DoubleDoubleVector" "', argument " "1"" of type '" "unsigned int""'");
16648     }
16649     arg1 = static_cast< unsigned int >(val1);
16650     {
16651       try {
16652         result = (std::vector< std::vector< double > > *)new std::vector< std::vector< double > >(arg1);
16653       } catch (const std::exception& e) {
16654         SWIG_exception(SWIG_RuntimeError, e.what());
16655       }
16656     }
16657     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
16658 
16659     XSRETURN(argvi);
16660   fail:
16661 
16662     SWIG_croak_null();
16663   }
16664 }
16665 
16666 
XS(_wrap_new_DoubleDoubleVector__SWIG_1)16667 XS(_wrap_new_DoubleDoubleVector__SWIG_1) {
16668   {
16669     int argvi = 0;
16670     std::vector< std::vector< double > > *result = 0 ;
16671     dXSARGS;
16672 
16673     if ((items < 0) || (items > 0)) {
16674       SWIG_croak("Usage: new_DoubleDoubleVector();");
16675     }
16676     {
16677       try {
16678         result = (std::vector< std::vector< double > > *)new std::vector< std::vector< double > >();
16679       } catch (const std::exception& e) {
16680         SWIG_exception(SWIG_RuntimeError, e.what());
16681       }
16682     }
16683     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
16684     XSRETURN(argvi);
16685   fail:
16686     SWIG_croak_null();
16687   }
16688 }
16689 
16690 
XS(_wrap_new_DoubleDoubleVector__SWIG_2)16691 XS(_wrap_new_DoubleDoubleVector__SWIG_2) {
16692   {
16693     unsigned int arg1 ;
16694     std::vector< double > *arg2 = 0 ;
16695     unsigned int val1 ;
16696     int ecode1 = 0 ;
16697     std::vector< double > temp2 ;
16698     std::vector< double > *v2 ;
16699     int argvi = 0;
16700     std::vector< std::vector< double > > *result = 0 ;
16701     dXSARGS;
16702 
16703     if ((items < 2) || (items > 2)) {
16704       SWIG_croak("Usage: new_DoubleDoubleVector(size,value);");
16705     }
16706     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
16707     if (!SWIG_IsOK(ecode1)) {
16708       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_DoubleDoubleVector" "', argument " "1"" of type '" "unsigned int""'");
16709     }
16710     arg1 = static_cast< unsigned int >(val1);
16711     {
16712       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
16713           SWIGTYPE_p_std__vectorT_double_t,1) != -1) {
16714         arg2 = v2;
16715       } else if (SvROK(ST(1))) {
16716         AV *av = (AV *)SvRV(ST(1));
16717         if (SvTYPE(av) != SVt_PVAV)
16718         SWIG_croak("Type error in argument 2 of new_DoubleDoubleVector. "
16719           "Expected an array of ""double");
16720         SV **tv;
16721         I32 len = av_len(av) + 1;
16722         for (int i=0; i<len; i++) {
16723           tv = av_fetch(av, i, 0);
16724           if (SvNIOK(*tv)) {
16725             temp2.push_back((double)SwigSvToNumber(*tv));
16726           } else {
16727             SWIG_croak("Type error in argument 2 of "
16728               "new_DoubleDoubleVector. "
16729               "Expected an array of ""double");
16730           }
16731         }
16732         arg2 = &temp2;
16733       } else {
16734         SWIG_croak("Type error in argument 2 of new_DoubleDoubleVector. "
16735           "Expected an array of ""double");
16736       }
16737     }
16738     {
16739       try {
16740         result = (std::vector< std::vector< double > > *)new std::vector< std::vector< double > >(arg1,(std::vector< double > const &)*arg2);
16741       } catch (const std::exception& e) {
16742         SWIG_exception(SWIG_RuntimeError, e.what());
16743       }
16744     }
16745     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
16746 
16747 
16748     XSRETURN(argvi);
16749   fail:
16750 
16751 
16752     SWIG_croak_null();
16753   }
16754 }
16755 
16756 
XS(_wrap_new_DoubleDoubleVector__SWIG_3)16757 XS(_wrap_new_DoubleDoubleVector__SWIG_3) {
16758   {
16759     std::vector< std::vector< double > > *arg1 = 0 ;
16760     std::vector< std::vector< double > > temp1 ;
16761     std::vector< std::vector< double > > *v1 ;
16762     int argvi = 0;
16763     std::vector< std::vector< double > > *result = 0 ;
16764     dXSARGS;
16765 
16766     if ((items < 1) || (items > 1)) {
16767       SWIG_croak("Usage: new_DoubleDoubleVector(other);");
16768     }
16769     {
16770       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
16771           SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,1) != -1) {
16772         arg1 = v1;
16773       } else if (SvROK(ST(0))) {
16774         AV *av = (AV *)SvRV(ST(0));
16775         if (SvTYPE(av) != SVt_PVAV)
16776         SWIG_croak("Type error in argument 1 of new_DoubleDoubleVector. "
16777           "Expected an array of " "std::vector< double >");
16778         SV **tv;
16779         I32 len = av_len(av) + 1;
16780         std::vector< double >* obj;
16781         for (int i=0; i<len; i++) {
16782           tv = av_fetch(av, i, 0);
16783           if (SWIG_ConvertPtr(*tv, (void **)&obj,
16784               SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
16785             temp1.push_back(*obj);
16786           } else {
16787             SWIG_croak("Type error in argument 1 of "
16788               "new_DoubleDoubleVector. "
16789               "Expected an array of " "std::vector< double >");
16790           }
16791         }
16792         arg1 = &temp1;
16793       } else {
16794         SWIG_croak("Type error in argument 1 of new_DoubleDoubleVector. "
16795           "Expected an array of " "std::vector< double >");
16796       }
16797     }
16798     {
16799       try {
16800         result = (std::vector< std::vector< double > > *)new std::vector< std::vector< double > >((std::vector< std::vector< double > > const &)*arg1);
16801       } catch (const std::exception& e) {
16802         SWIG_exception(SWIG_RuntimeError, e.what());
16803       }
16804     }
16805     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
16806 
16807     XSRETURN(argvi);
16808   fail:
16809 
16810     SWIG_croak_null();
16811   }
16812 }
16813 
16814 
XS(_wrap_new_DoubleDoubleVector)16815 XS(_wrap_new_DoubleDoubleVector) {
16816   dXSARGS;
16817 
16818   {
16819     unsigned long _index = 0;
16820     SWIG_TypeRank _rank = 0;
16821     if (items == 0) {
16822       SWIG_TypeRank _ranki = 0;
16823       SWIG_TypeRank _rankm = 0;
16824       if (!_index || (_ranki < _rank)) {
16825         _rank = _ranki; _index = 1;
16826         if (_rank == _rankm) goto dispatch;
16827       }
16828     }
16829     if (items == 1) {
16830       SWIG_TypeRank _ranki = 0;
16831       SWIG_TypeRank _rankm = 0;
16832       SWIG_TypeRank _pi = 1;
16833       int _v = 0;
16834       {
16835         {
16836           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
16837           _v = SWIG_CheckState(res);
16838         }
16839       }
16840       if (!_v) goto check_2;
16841       _ranki += _v*_pi;
16842       _rankm += _pi;
16843       _pi *= SWIG_MAXCASTRANK;
16844       if (!_index || (_ranki < _rank)) {
16845         _rank = _ranki; _index = 2;
16846         if (_rank == _rankm) goto dispatch;
16847       }
16848     }
16849   check_2:
16850 
16851     if (items == 1) {
16852       SWIG_TypeRank _ranki = 0;
16853       SWIG_TypeRank _rankm = 0;
16854       SWIG_TypeRank _pi = 1;
16855       int _v = 0;
16856       {
16857         {
16858           {
16859             /* wrapped vector? */
16860             std::vector< std::vector< double > >* v;
16861             if (SWIG_ConvertPtr(ST(0),(void **) &v,
16862                 SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,0) != -1) {
16863               _v = 1;
16864             } else if (SvROK(ST(0))) {
16865               /* native sequence? */
16866               AV *av = (AV *)SvRV(ST(0));
16867               if (SvTYPE(av) == SVt_PVAV) {
16868                 I32 len = av_len(av) + 1;
16869                 if (len == 0) {
16870                   /* an empty sequence can be of any type */
16871                   _v = 1;
16872                 } else {
16873                   /* check the first element only */
16874                   std::vector< double >* obj;
16875                   SV **tv = av_fetch(av, 0, 0);
16876                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
16877                       SWIGTYPE_p_std__vectorT_double_t,0) != -1)
16878                   _v = 1;
16879                   else
16880                   _v = 0;
16881                 }
16882               }
16883             } else {
16884               _v = 0;
16885             }
16886           }
16887         }
16888       }
16889       if (!_v) goto check_3;
16890       _ranki += _v*_pi;
16891       _rankm += _pi;
16892       _pi *= SWIG_MAXCASTRANK;
16893       if (!_index || (_ranki < _rank)) {
16894         _rank = _ranki; _index = 3;
16895         if (_rank == _rankm) goto dispatch;
16896       }
16897     }
16898   check_3:
16899 
16900     if (items == 2) {
16901       SWIG_TypeRank _ranki = 0;
16902       SWIG_TypeRank _rankm = 0;
16903       SWIG_TypeRank _pi = 1;
16904       int _v = 0;
16905       {
16906         {
16907           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
16908           _v = SWIG_CheckState(res);
16909         }
16910       }
16911       if (!_v) goto check_4;
16912       _ranki += _v*_pi;
16913       _rankm += _pi;
16914       _pi *= SWIG_MAXCASTRANK;
16915       {
16916         {
16917           {
16918             /* wrapped vector? */
16919             std::vector< double >* v;
16920             if (SWIG_ConvertPtr(ST(1),(void **) &v,
16921                 SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
16922               _v = 1;
16923             } else if (SvROK(ST(1))) {
16924               /* native sequence? */
16925               AV *av = (AV *)SvRV(ST(1));
16926               if (SvTYPE(av) == SVt_PVAV) {
16927                 I32 len = av_len(av) + 1;
16928                 if (len == 0) {
16929                   /* an empty sequence can be of any type */
16930                   _v = 1;
16931                 } else {
16932                   /* check the first element only */
16933                   SV **tv = av_fetch(av, 0, 0);
16934                   if (SvNIOK(*tv))
16935                   _v = 1;
16936                   else
16937                   _v = 0;
16938                 }
16939               }
16940             } else {
16941               _v = 0;
16942             }
16943           }
16944         }
16945       }
16946       if (!_v) goto check_4;
16947       _ranki += _v*_pi;
16948       _rankm += _pi;
16949       _pi *= SWIG_MAXCASTRANK;
16950       if (!_index || (_ranki < _rank)) {
16951         _rank = _ranki; _index = 4;
16952         if (_rank == _rankm) goto dispatch;
16953       }
16954     }
16955   check_4:
16956 
16957   dispatch:
16958     switch(_index) {
16959     case 1:
16960       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DoubleDoubleVector__SWIG_1); return;
16961     case 2:
16962       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DoubleDoubleVector__SWIG_0); return;
16963     case 3:
16964       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DoubleDoubleVector__SWIG_3); return;
16965     case 4:
16966       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DoubleDoubleVector__SWIG_2); return;
16967     }
16968   }
16969 
16970   croak("No matching function for overloaded 'new_DoubleDoubleVector'");
16971   XSRETURN(0);
16972 }
16973 
16974 
XS(_wrap_DoubleDoubleVector_size)16975 XS(_wrap_DoubleDoubleVector_size) {
16976   {
16977     std::vector< std::vector< double > > *arg1 = (std::vector< std::vector< double > > *) 0 ;
16978     std::vector< std::vector< double > > temp1 ;
16979     std::vector< std::vector< double > > *v1 ;
16980     int argvi = 0;
16981     unsigned int result;
16982     dXSARGS;
16983 
16984     if ((items < 1) || (items > 1)) {
16985       SWIG_croak("Usage: DoubleDoubleVector_size(self);");
16986     }
16987     {
16988       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
16989           SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,1) != -1) {
16990         arg1 = v1;
16991       } else if (SvROK(ST(0))) {
16992         AV *av = (AV *)SvRV(ST(0));
16993         if (SvTYPE(av) != SVt_PVAV)
16994         SWIG_croak("Type error in argument 1 of DoubleDoubleVector_size. "
16995           "Expected an array of " "std::vector< double >");
16996         SV **tv;
16997         I32 len = av_len(av) + 1;
16998         std::vector< double >* obj;
16999         for (int i=0; i<len; i++) {
17000           tv = av_fetch(av, i, 0);
17001           if (SWIG_ConvertPtr(*tv, (void **)&obj,
17002               SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
17003             temp1.push_back(*obj);
17004           } else {
17005             SWIG_croak("Type error in argument 1 of "
17006               "DoubleDoubleVector_size. "
17007               "Expected an array of " "std::vector< double >");
17008           }
17009         }
17010         arg1 = &temp1;
17011       } else {
17012         SWIG_croak("Type error in argument 1 of DoubleDoubleVector_size. "
17013           "Expected an array of " "std::vector< double >");
17014       }
17015     }
17016     {
17017       try {
17018         result = (unsigned int)((std::vector< std::vector< double > > const *)arg1)->size();
17019       } catch (const std::exception& e) {
17020         SWIG_exception(SWIG_RuntimeError, e.what());
17021       }
17022     }
17023     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
17024 
17025     XSRETURN(argvi);
17026   fail:
17027 
17028     SWIG_croak_null();
17029   }
17030 }
17031 
17032 
XS(_wrap_DoubleDoubleVector_empty)17033 XS(_wrap_DoubleDoubleVector_empty) {
17034   {
17035     std::vector< std::vector< double > > *arg1 = (std::vector< std::vector< double > > *) 0 ;
17036     std::vector< std::vector< double > > temp1 ;
17037     std::vector< std::vector< double > > *v1 ;
17038     int argvi = 0;
17039     bool result;
17040     dXSARGS;
17041 
17042     if ((items < 1) || (items > 1)) {
17043       SWIG_croak("Usage: DoubleDoubleVector_empty(self);");
17044     }
17045     {
17046       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
17047           SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,1) != -1) {
17048         arg1 = v1;
17049       } else if (SvROK(ST(0))) {
17050         AV *av = (AV *)SvRV(ST(0));
17051         if (SvTYPE(av) != SVt_PVAV)
17052         SWIG_croak("Type error in argument 1 of DoubleDoubleVector_empty. "
17053           "Expected an array of " "std::vector< double >");
17054         SV **tv;
17055         I32 len = av_len(av) + 1;
17056         std::vector< double >* obj;
17057         for (int i=0; i<len; i++) {
17058           tv = av_fetch(av, i, 0);
17059           if (SWIG_ConvertPtr(*tv, (void **)&obj,
17060               SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
17061             temp1.push_back(*obj);
17062           } else {
17063             SWIG_croak("Type error in argument 1 of "
17064               "DoubleDoubleVector_empty. "
17065               "Expected an array of " "std::vector< double >");
17066           }
17067         }
17068         arg1 = &temp1;
17069       } else {
17070         SWIG_croak("Type error in argument 1 of DoubleDoubleVector_empty. "
17071           "Expected an array of " "std::vector< double >");
17072       }
17073     }
17074     {
17075       try {
17076         result = (bool)((std::vector< std::vector< double > > const *)arg1)->empty();
17077       } catch (const std::exception& e) {
17078         SWIG_exception(SWIG_RuntimeError, e.what());
17079       }
17080     }
17081     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
17082 
17083     XSRETURN(argvi);
17084   fail:
17085 
17086     SWIG_croak_null();
17087   }
17088 }
17089 
17090 
XS(_wrap_DoubleDoubleVector_clear)17091 XS(_wrap_DoubleDoubleVector_clear) {
17092   {
17093     std::vector< std::vector< double > > *arg1 = (std::vector< std::vector< double > > *) 0 ;
17094     void *argp1 = 0 ;
17095     int res1 = 0 ;
17096     int argvi = 0;
17097     dXSARGS;
17098 
17099     if ((items < 1) || (items > 1)) {
17100       SWIG_croak("Usage: DoubleDoubleVector_clear(self);");
17101     }
17102     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t, 0 |  0 );
17103     if (!SWIG_IsOK(res1)) {
17104       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DoubleDoubleVector_clear" "', argument " "1"" of type '" "std::vector< std::vector< double > > *""'");
17105     }
17106     arg1 = reinterpret_cast< std::vector< std::vector< double > > * >(argp1);
17107     {
17108       try {
17109         (arg1)->clear();
17110       } catch (const std::exception& e) {
17111         SWIG_exception(SWIG_RuntimeError, e.what());
17112       }
17113     }
17114     ST(argvi) = &PL_sv_undef;
17115 
17116     XSRETURN(argvi);
17117   fail:
17118 
17119     SWIG_croak_null();
17120   }
17121 }
17122 
17123 
XS(_wrap_DoubleDoubleVector_push)17124 XS(_wrap_DoubleDoubleVector_push) {
17125   {
17126     std::vector< std::vector< double > > *arg1 = (std::vector< std::vector< double > > *) 0 ;
17127     std::vector< double > *arg2 = 0 ;
17128     void *argp1 = 0 ;
17129     int res1 = 0 ;
17130     std::vector< double > temp2 ;
17131     std::vector< double > *v2 ;
17132     int argvi = 0;
17133     dXSARGS;
17134 
17135     if ((items < 2) || (items > 2)) {
17136       SWIG_croak("Usage: DoubleDoubleVector_push(self,x);");
17137     }
17138     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t, 0 |  0 );
17139     if (!SWIG_IsOK(res1)) {
17140       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DoubleDoubleVector_push" "', argument " "1"" of type '" "std::vector< std::vector< double > > *""'");
17141     }
17142     arg1 = reinterpret_cast< std::vector< std::vector< double > > * >(argp1);
17143     {
17144       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
17145           SWIGTYPE_p_std__vectorT_double_t,1) != -1) {
17146         arg2 = v2;
17147       } else if (SvROK(ST(1))) {
17148         AV *av = (AV *)SvRV(ST(1));
17149         if (SvTYPE(av) != SVt_PVAV)
17150         SWIG_croak("Type error in argument 2 of DoubleDoubleVector_push. "
17151           "Expected an array of ""double");
17152         SV **tv;
17153         I32 len = av_len(av) + 1;
17154         for (int i=0; i<len; i++) {
17155           tv = av_fetch(av, i, 0);
17156           if (SvNIOK(*tv)) {
17157             temp2.push_back((double)SwigSvToNumber(*tv));
17158           } else {
17159             SWIG_croak("Type error in argument 2 of "
17160               "DoubleDoubleVector_push. "
17161               "Expected an array of ""double");
17162           }
17163         }
17164         arg2 = &temp2;
17165       } else {
17166         SWIG_croak("Type error in argument 2 of DoubleDoubleVector_push. "
17167           "Expected an array of ""double");
17168       }
17169     }
17170     {
17171       try {
17172         (arg1)->push_back((std::vector< double > const &)*arg2);
17173       } catch (const std::exception& e) {
17174         SWIG_exception(SWIG_RuntimeError, e.what());
17175       }
17176     }
17177     ST(argvi) = &PL_sv_undef;
17178 
17179 
17180     XSRETURN(argvi);
17181   fail:
17182 
17183 
17184     SWIG_croak_null();
17185   }
17186 }
17187 
17188 
XS(_wrap_DoubleDoubleVector_pop)17189 XS(_wrap_DoubleDoubleVector_pop) {
17190   {
17191     std::vector< std::vector< double > > *arg1 = (std::vector< std::vector< double > > *) 0 ;
17192     void *argp1 = 0 ;
17193     int res1 = 0 ;
17194     int argvi = 0;
17195     std::vector< double > result;
17196     dXSARGS;
17197 
17198     if ((items < 1) || (items > 1)) {
17199       SWIG_croak("Usage: DoubleDoubleVector_pop(self);");
17200     }
17201     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t, 0 |  0 );
17202     if (!SWIG_IsOK(res1)) {
17203       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DoubleDoubleVector_pop" "', argument " "1"" of type '" "std::vector< std::vector< double > > *""'");
17204     }
17205     arg1 = reinterpret_cast< std::vector< std::vector< double > > * >(argp1);
17206     {
17207       try {
17208         try {
17209           result = std_vector_Sl_std_vector_Sl_double_Sg__Sg__pop(arg1);
17210         } catch(std::out_of_range &_e) {
17211           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
17212         }
17213       } catch (const std::exception& e) {
17214         SWIG_exception(SWIG_RuntimeError, e.what());
17215       }
17216     }
17217     {
17218       size_t len = (&result)->size();
17219       SV **svs = new SV*[len];
17220       for (size_t i=0; i<len; i++) {
17221         svs[i] = sv_newmortal();
17222         sv_setnv(svs[i], result[i]);
17223       }
17224       AV *myav = av_make(len, svs);
17225       delete[] svs;
17226       ST(argvi) = newRV_noinc((SV*) myav);
17227       sv_2mortal(ST(argvi));
17228       argvi++;
17229     }
17230 
17231     XSRETURN(argvi);
17232   fail:
17233 
17234     SWIG_croak_null();
17235   }
17236 }
17237 
17238 
XS(_wrap_DoubleDoubleVector_get)17239 XS(_wrap_DoubleDoubleVector_get) {
17240   {
17241     std::vector< std::vector< double > > *arg1 = (std::vector< std::vector< double > > *) 0 ;
17242     int arg2 ;
17243     void *argp1 = 0 ;
17244     int res1 = 0 ;
17245     int val2 ;
17246     int ecode2 = 0 ;
17247     int argvi = 0;
17248     std::vector< double > *result = 0 ;
17249     dXSARGS;
17250 
17251     if ((items < 2) || (items > 2)) {
17252       SWIG_croak("Usage: DoubleDoubleVector_get(self,i);");
17253     }
17254     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t, 0 |  0 );
17255     if (!SWIG_IsOK(res1)) {
17256       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DoubleDoubleVector_get" "', argument " "1"" of type '" "std::vector< std::vector< double > > *""'");
17257     }
17258     arg1 = reinterpret_cast< std::vector< std::vector< double > > * >(argp1);
17259     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
17260     if (!SWIG_IsOK(ecode2)) {
17261       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "DoubleDoubleVector_get" "', argument " "2"" of type '" "int""'");
17262     }
17263     arg2 = static_cast< int >(val2);
17264     {
17265       try {
17266         try {
17267           result = (std::vector< double > *) &std_vector_Sl_std_vector_Sl_double_Sg__Sg__get(arg1,arg2);
17268         } catch(std::out_of_range &_e) {
17269           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
17270         }
17271       } catch (const std::exception& e) {
17272         SWIG_exception(SWIG_RuntimeError, e.what());
17273       }
17274     }
17275     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_double_t, 0 | SWIG_SHADOW); argvi++ ;
17276 
17277 
17278     XSRETURN(argvi);
17279   fail:
17280 
17281 
17282     SWIG_croak_null();
17283   }
17284 }
17285 
17286 
XS(_wrap_DoubleDoubleVector_set)17287 XS(_wrap_DoubleDoubleVector_set) {
17288   {
17289     std::vector< std::vector< double > > *arg1 = (std::vector< std::vector< double > > *) 0 ;
17290     int arg2 ;
17291     std::vector< double > *arg3 = 0 ;
17292     void *argp1 = 0 ;
17293     int res1 = 0 ;
17294     int val2 ;
17295     int ecode2 = 0 ;
17296     std::vector< double > temp3 ;
17297     std::vector< double > *v3 ;
17298     int argvi = 0;
17299     dXSARGS;
17300 
17301     if ((items < 3) || (items > 3)) {
17302       SWIG_croak("Usage: DoubleDoubleVector_set(self,i,x);");
17303     }
17304     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t, 0 |  0 );
17305     if (!SWIG_IsOK(res1)) {
17306       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DoubleDoubleVector_set" "', argument " "1"" of type '" "std::vector< std::vector< double > > *""'");
17307     }
17308     arg1 = reinterpret_cast< std::vector< std::vector< double > > * >(argp1);
17309     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
17310     if (!SWIG_IsOK(ecode2)) {
17311       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "DoubleDoubleVector_set" "', argument " "2"" of type '" "int""'");
17312     }
17313     arg2 = static_cast< int >(val2);
17314     {
17315       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
17316           SWIGTYPE_p_std__vectorT_double_t,1) != -1) {
17317         arg3 = v3;
17318       } else if (SvROK(ST(2))) {
17319         AV *av = (AV *)SvRV(ST(2));
17320         if (SvTYPE(av) != SVt_PVAV)
17321         SWIG_croak("Type error in argument 3 of DoubleDoubleVector_set. "
17322           "Expected an array of ""double");
17323         SV **tv;
17324         I32 len = av_len(av) + 1;
17325         for (int i=0; i<len; i++) {
17326           tv = av_fetch(av, i, 0);
17327           if (SvNIOK(*tv)) {
17328             temp3.push_back((double)SwigSvToNumber(*tv));
17329           } else {
17330             SWIG_croak("Type error in argument 3 of "
17331               "DoubleDoubleVector_set. "
17332               "Expected an array of ""double");
17333           }
17334         }
17335         arg3 = &temp3;
17336       } else {
17337         SWIG_croak("Type error in argument 3 of DoubleDoubleVector_set. "
17338           "Expected an array of ""double");
17339       }
17340     }
17341     {
17342       try {
17343         try {
17344           std_vector_Sl_std_vector_Sl_double_Sg__Sg__set(arg1,arg2,(std::vector< double > const &)*arg3);
17345         } catch(std::out_of_range &_e) {
17346           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
17347         }
17348       } catch (const std::exception& e) {
17349         SWIG_exception(SWIG_RuntimeError, e.what());
17350       }
17351     }
17352     ST(argvi) = &PL_sv_undef;
17353 
17354 
17355 
17356     XSRETURN(argvi);
17357   fail:
17358 
17359 
17360 
17361     SWIG_croak_null();
17362   }
17363 }
17364 
17365 
XS(_wrap_delete_DoubleDoubleVector)17366 XS(_wrap_delete_DoubleDoubleVector) {
17367   {
17368     std::vector< std::vector< double > > *arg1 = (std::vector< std::vector< double > > *) 0 ;
17369     void *argp1 = 0 ;
17370     int res1 = 0 ;
17371     int argvi = 0;
17372     dXSARGS;
17373 
17374     if ((items < 1) || (items > 1)) {
17375       SWIG_croak("Usage: delete_DoubleDoubleVector(self);");
17376     }
17377     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t, SWIG_POINTER_DISOWN |  0 );
17378     if (!SWIG_IsOK(res1)) {
17379       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DoubleDoubleVector" "', argument " "1"" of type '" "std::vector< std::vector< double > > *""'");
17380     }
17381     arg1 = reinterpret_cast< std::vector< std::vector< double > > * >(argp1);
17382     {
17383       try {
17384         delete arg1;
17385       } catch (const std::exception& e) {
17386         SWIG_exception(SWIG_RuntimeError, e.what());
17387       }
17388     }
17389     ST(argvi) = &PL_sv_undef;
17390 
17391     XSRETURN(argvi);
17392   fail:
17393 
17394     SWIG_croak_null();
17395   }
17396 }
17397 
17398 
XS(_wrap_new_IntIntVector__SWIG_0)17399 XS(_wrap_new_IntIntVector__SWIG_0) {
17400   {
17401     unsigned int arg1 ;
17402     unsigned int val1 ;
17403     int ecode1 = 0 ;
17404     int argvi = 0;
17405     std::vector< std::vector< int > > *result = 0 ;
17406     dXSARGS;
17407 
17408     if ((items < 1) || (items > 1)) {
17409       SWIG_croak("Usage: new_IntIntVector(size);");
17410     }
17411     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
17412     if (!SWIG_IsOK(ecode1)) {
17413       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_IntIntVector" "', argument " "1"" of type '" "unsigned int""'");
17414     }
17415     arg1 = static_cast< unsigned int >(val1);
17416     {
17417       try {
17418         result = (std::vector< std::vector< int > > *)new std::vector< std::vector< int > >(arg1);
17419       } catch (const std::exception& e) {
17420         SWIG_exception(SWIG_RuntimeError, e.what());
17421       }
17422     }
17423     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
17424 
17425     XSRETURN(argvi);
17426   fail:
17427 
17428     SWIG_croak_null();
17429   }
17430 }
17431 
17432 
XS(_wrap_new_IntIntVector__SWIG_1)17433 XS(_wrap_new_IntIntVector__SWIG_1) {
17434   {
17435     int argvi = 0;
17436     std::vector< std::vector< int > > *result = 0 ;
17437     dXSARGS;
17438 
17439     if ((items < 0) || (items > 0)) {
17440       SWIG_croak("Usage: new_IntIntVector();");
17441     }
17442     {
17443       try {
17444         result = (std::vector< std::vector< int > > *)new std::vector< std::vector< int > >();
17445       } catch (const std::exception& e) {
17446         SWIG_exception(SWIG_RuntimeError, e.what());
17447       }
17448     }
17449     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
17450     XSRETURN(argvi);
17451   fail:
17452     SWIG_croak_null();
17453   }
17454 }
17455 
17456 
XS(_wrap_new_IntIntVector__SWIG_2)17457 XS(_wrap_new_IntIntVector__SWIG_2) {
17458   {
17459     unsigned int arg1 ;
17460     std::vector< int > *arg2 = 0 ;
17461     unsigned int val1 ;
17462     int ecode1 = 0 ;
17463     std::vector< int > temp2 ;
17464     std::vector< int > *v2 ;
17465     int argvi = 0;
17466     std::vector< std::vector< int > > *result = 0 ;
17467     dXSARGS;
17468 
17469     if ((items < 2) || (items > 2)) {
17470       SWIG_croak("Usage: new_IntIntVector(size,value);");
17471     }
17472     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
17473     if (!SWIG_IsOK(ecode1)) {
17474       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_IntIntVector" "', argument " "1"" of type '" "unsigned int""'");
17475     }
17476     arg1 = static_cast< unsigned int >(val1);
17477     {
17478       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
17479           SWIGTYPE_p_std__vectorT_int_t,1) != -1) {
17480         arg2 = v2;
17481       } else if (SvROK(ST(1))) {
17482         AV *av = (AV *)SvRV(ST(1));
17483         if (SvTYPE(av) != SVt_PVAV)
17484         SWIG_croak("Type error in argument 2 of new_IntIntVector. "
17485           "Expected an array of ""int");
17486         SV **tv;
17487         I32 len = av_len(av) + 1;
17488         for (int i=0; i<len; i++) {
17489           tv = av_fetch(av, i, 0);
17490           if (SvIOK(*tv)) {
17491             temp2.push_back((int)SvIVX(*tv));
17492           } else {
17493             SWIG_croak("Type error in argument 2 of "
17494               "new_IntIntVector. "
17495               "Expected an array of ""int");
17496           }
17497         }
17498         arg2 = &temp2;
17499       } else {
17500         SWIG_croak("Type error in argument 2 of new_IntIntVector. "
17501           "Expected an array of ""int");
17502       }
17503     }
17504     {
17505       try {
17506         result = (std::vector< std::vector< int > > *)new std::vector< std::vector< int > >(arg1,(std::vector< int > const &)*arg2);
17507       } catch (const std::exception& e) {
17508         SWIG_exception(SWIG_RuntimeError, e.what());
17509       }
17510     }
17511     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
17512 
17513 
17514     XSRETURN(argvi);
17515   fail:
17516 
17517 
17518     SWIG_croak_null();
17519   }
17520 }
17521 
17522 
XS(_wrap_new_IntIntVector__SWIG_3)17523 XS(_wrap_new_IntIntVector__SWIG_3) {
17524   {
17525     std::vector< std::vector< int > > *arg1 = 0 ;
17526     std::vector< std::vector< int > > temp1 ;
17527     std::vector< std::vector< int > > *v1 ;
17528     int argvi = 0;
17529     std::vector< std::vector< int > > *result = 0 ;
17530     dXSARGS;
17531 
17532     if ((items < 1) || (items > 1)) {
17533       SWIG_croak("Usage: new_IntIntVector(other);");
17534     }
17535     {
17536       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
17537           SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t,1) != -1) {
17538         arg1 = v1;
17539       } else if (SvROK(ST(0))) {
17540         AV *av = (AV *)SvRV(ST(0));
17541         if (SvTYPE(av) != SVt_PVAV)
17542         SWIG_croak("Type error in argument 1 of new_IntIntVector. "
17543           "Expected an array of " "std::vector< int >");
17544         SV **tv;
17545         I32 len = av_len(av) + 1;
17546         std::vector< int >* obj;
17547         for (int i=0; i<len; i++) {
17548           tv = av_fetch(av, i, 0);
17549           if (SWIG_ConvertPtr(*tv, (void **)&obj,
17550               SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
17551             temp1.push_back(*obj);
17552           } else {
17553             SWIG_croak("Type error in argument 1 of "
17554               "new_IntIntVector. "
17555               "Expected an array of " "std::vector< int >");
17556           }
17557         }
17558         arg1 = &temp1;
17559       } else {
17560         SWIG_croak("Type error in argument 1 of new_IntIntVector. "
17561           "Expected an array of " "std::vector< int >");
17562       }
17563     }
17564     {
17565       try {
17566         result = (std::vector< std::vector< int > > *)new std::vector< std::vector< int > >((std::vector< std::vector< int > > const &)*arg1);
17567       } catch (const std::exception& e) {
17568         SWIG_exception(SWIG_RuntimeError, e.what());
17569       }
17570     }
17571     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
17572 
17573     XSRETURN(argvi);
17574   fail:
17575 
17576     SWIG_croak_null();
17577   }
17578 }
17579 
17580 
XS(_wrap_new_IntIntVector)17581 XS(_wrap_new_IntIntVector) {
17582   dXSARGS;
17583 
17584   {
17585     unsigned long _index = 0;
17586     SWIG_TypeRank _rank = 0;
17587     if (items == 0) {
17588       SWIG_TypeRank _ranki = 0;
17589       SWIG_TypeRank _rankm = 0;
17590       if (!_index || (_ranki < _rank)) {
17591         _rank = _ranki; _index = 1;
17592         if (_rank == _rankm) goto dispatch;
17593       }
17594     }
17595     if (items == 1) {
17596       SWIG_TypeRank _ranki = 0;
17597       SWIG_TypeRank _rankm = 0;
17598       SWIG_TypeRank _pi = 1;
17599       int _v = 0;
17600       {
17601         {
17602           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
17603           _v = SWIG_CheckState(res);
17604         }
17605       }
17606       if (!_v) goto check_2;
17607       _ranki += _v*_pi;
17608       _rankm += _pi;
17609       _pi *= SWIG_MAXCASTRANK;
17610       if (!_index || (_ranki < _rank)) {
17611         _rank = _ranki; _index = 2;
17612         if (_rank == _rankm) goto dispatch;
17613       }
17614     }
17615   check_2:
17616 
17617     if (items == 1) {
17618       SWIG_TypeRank _ranki = 0;
17619       SWIG_TypeRank _rankm = 0;
17620       SWIG_TypeRank _pi = 1;
17621       int _v = 0;
17622       {
17623         {
17624           {
17625             /* wrapped vector? */
17626             std::vector< std::vector< int > >* v;
17627             if (SWIG_ConvertPtr(ST(0),(void **) &v,
17628                 SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t,0) != -1) {
17629               _v = 1;
17630             } else if (SvROK(ST(0))) {
17631               /* native sequence? */
17632               AV *av = (AV *)SvRV(ST(0));
17633               if (SvTYPE(av) == SVt_PVAV) {
17634                 I32 len = av_len(av) + 1;
17635                 if (len == 0) {
17636                   /* an empty sequence can be of any type */
17637                   _v = 1;
17638                 } else {
17639                   /* check the first element only */
17640                   std::vector< int >* obj;
17641                   SV **tv = av_fetch(av, 0, 0);
17642                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
17643                       SWIGTYPE_p_std__vectorT_int_t,0) != -1)
17644                   _v = 1;
17645                   else
17646                   _v = 0;
17647                 }
17648               }
17649             } else {
17650               _v = 0;
17651             }
17652           }
17653         }
17654       }
17655       if (!_v) goto check_3;
17656       _ranki += _v*_pi;
17657       _rankm += _pi;
17658       _pi *= SWIG_MAXCASTRANK;
17659       if (!_index || (_ranki < _rank)) {
17660         _rank = _ranki; _index = 3;
17661         if (_rank == _rankm) goto dispatch;
17662       }
17663     }
17664   check_3:
17665 
17666     if (items == 2) {
17667       SWIG_TypeRank _ranki = 0;
17668       SWIG_TypeRank _rankm = 0;
17669       SWIG_TypeRank _pi = 1;
17670       int _v = 0;
17671       {
17672         {
17673           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
17674           _v = SWIG_CheckState(res);
17675         }
17676       }
17677       if (!_v) goto check_4;
17678       _ranki += _v*_pi;
17679       _rankm += _pi;
17680       _pi *= SWIG_MAXCASTRANK;
17681       {
17682         {
17683           {
17684             /* wrapped vector? */
17685             std::vector< int >* v;
17686             if (SWIG_ConvertPtr(ST(1),(void **) &v,
17687                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
17688               _v = 1;
17689             } else if (SvROK(ST(1))) {
17690               /* native sequence? */
17691               AV *av = (AV *)SvRV(ST(1));
17692               if (SvTYPE(av) == SVt_PVAV) {
17693                 I32 len = av_len(av) + 1;
17694                 if (len == 0) {
17695                   /* an empty sequence can be of any type */
17696                   _v = 1;
17697                 } else {
17698                   /* check the first element only */
17699                   SV **tv = av_fetch(av, 0, 0);
17700                   if (SvIOK(*tv))
17701                   _v = 1;
17702                   else
17703                   _v = 0;
17704                 }
17705               }
17706             } else {
17707               _v = 0;
17708             }
17709           }
17710         }
17711       }
17712       if (!_v) goto check_4;
17713       _ranki += _v*_pi;
17714       _rankm += _pi;
17715       _pi *= SWIG_MAXCASTRANK;
17716       if (!_index || (_ranki < _rank)) {
17717         _rank = _ranki; _index = 4;
17718         if (_rank == _rankm) goto dispatch;
17719       }
17720     }
17721   check_4:
17722 
17723   dispatch:
17724     switch(_index) {
17725     case 1:
17726       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_IntIntVector__SWIG_1); return;
17727     case 2:
17728       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_IntIntVector__SWIG_0); return;
17729     case 3:
17730       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_IntIntVector__SWIG_3); return;
17731     case 4:
17732       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_IntIntVector__SWIG_2); return;
17733     }
17734   }
17735 
17736   croak("No matching function for overloaded 'new_IntIntVector'");
17737   XSRETURN(0);
17738 }
17739 
17740 
XS(_wrap_IntIntVector_size)17741 XS(_wrap_IntIntVector_size) {
17742   {
17743     std::vector< std::vector< int > > *arg1 = (std::vector< std::vector< int > > *) 0 ;
17744     std::vector< std::vector< int > > temp1 ;
17745     std::vector< std::vector< int > > *v1 ;
17746     int argvi = 0;
17747     unsigned int result;
17748     dXSARGS;
17749 
17750     if ((items < 1) || (items > 1)) {
17751       SWIG_croak("Usage: IntIntVector_size(self);");
17752     }
17753     {
17754       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
17755           SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t,1) != -1) {
17756         arg1 = v1;
17757       } else if (SvROK(ST(0))) {
17758         AV *av = (AV *)SvRV(ST(0));
17759         if (SvTYPE(av) != SVt_PVAV)
17760         SWIG_croak("Type error in argument 1 of IntIntVector_size. "
17761           "Expected an array of " "std::vector< int >");
17762         SV **tv;
17763         I32 len = av_len(av) + 1;
17764         std::vector< int >* obj;
17765         for (int i=0; i<len; i++) {
17766           tv = av_fetch(av, i, 0);
17767           if (SWIG_ConvertPtr(*tv, (void **)&obj,
17768               SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
17769             temp1.push_back(*obj);
17770           } else {
17771             SWIG_croak("Type error in argument 1 of "
17772               "IntIntVector_size. "
17773               "Expected an array of " "std::vector< int >");
17774           }
17775         }
17776         arg1 = &temp1;
17777       } else {
17778         SWIG_croak("Type error in argument 1 of IntIntVector_size. "
17779           "Expected an array of " "std::vector< int >");
17780       }
17781     }
17782     {
17783       try {
17784         result = (unsigned int)((std::vector< std::vector< int > > const *)arg1)->size();
17785       } catch (const std::exception& e) {
17786         SWIG_exception(SWIG_RuntimeError, e.what());
17787       }
17788     }
17789     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
17790 
17791     XSRETURN(argvi);
17792   fail:
17793 
17794     SWIG_croak_null();
17795   }
17796 }
17797 
17798 
XS(_wrap_IntIntVector_empty)17799 XS(_wrap_IntIntVector_empty) {
17800   {
17801     std::vector< std::vector< int > > *arg1 = (std::vector< std::vector< int > > *) 0 ;
17802     std::vector< std::vector< int > > temp1 ;
17803     std::vector< std::vector< int > > *v1 ;
17804     int argvi = 0;
17805     bool result;
17806     dXSARGS;
17807 
17808     if ((items < 1) || (items > 1)) {
17809       SWIG_croak("Usage: IntIntVector_empty(self);");
17810     }
17811     {
17812       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
17813           SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t,1) != -1) {
17814         arg1 = v1;
17815       } else if (SvROK(ST(0))) {
17816         AV *av = (AV *)SvRV(ST(0));
17817         if (SvTYPE(av) != SVt_PVAV)
17818         SWIG_croak("Type error in argument 1 of IntIntVector_empty. "
17819           "Expected an array of " "std::vector< int >");
17820         SV **tv;
17821         I32 len = av_len(av) + 1;
17822         std::vector< int >* obj;
17823         for (int i=0; i<len; i++) {
17824           tv = av_fetch(av, i, 0);
17825           if (SWIG_ConvertPtr(*tv, (void **)&obj,
17826               SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
17827             temp1.push_back(*obj);
17828           } else {
17829             SWIG_croak("Type error in argument 1 of "
17830               "IntIntVector_empty. "
17831               "Expected an array of " "std::vector< int >");
17832           }
17833         }
17834         arg1 = &temp1;
17835       } else {
17836         SWIG_croak("Type error in argument 1 of IntIntVector_empty. "
17837           "Expected an array of " "std::vector< int >");
17838       }
17839     }
17840     {
17841       try {
17842         result = (bool)((std::vector< std::vector< int > > const *)arg1)->empty();
17843       } catch (const std::exception& e) {
17844         SWIG_exception(SWIG_RuntimeError, e.what());
17845       }
17846     }
17847     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
17848 
17849     XSRETURN(argvi);
17850   fail:
17851 
17852     SWIG_croak_null();
17853   }
17854 }
17855 
17856 
XS(_wrap_IntIntVector_clear)17857 XS(_wrap_IntIntVector_clear) {
17858   {
17859     std::vector< std::vector< int > > *arg1 = (std::vector< std::vector< int > > *) 0 ;
17860     void *argp1 = 0 ;
17861     int res1 = 0 ;
17862     int argvi = 0;
17863     dXSARGS;
17864 
17865     if ((items < 1) || (items > 1)) {
17866       SWIG_croak("Usage: IntIntVector_clear(self);");
17867     }
17868     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t, 0 |  0 );
17869     if (!SWIG_IsOK(res1)) {
17870       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IntIntVector_clear" "', argument " "1"" of type '" "std::vector< std::vector< int > > *""'");
17871     }
17872     arg1 = reinterpret_cast< std::vector< std::vector< int > > * >(argp1);
17873     {
17874       try {
17875         (arg1)->clear();
17876       } catch (const std::exception& e) {
17877         SWIG_exception(SWIG_RuntimeError, e.what());
17878       }
17879     }
17880     ST(argvi) = &PL_sv_undef;
17881 
17882     XSRETURN(argvi);
17883   fail:
17884 
17885     SWIG_croak_null();
17886   }
17887 }
17888 
17889 
XS(_wrap_IntIntVector_push)17890 XS(_wrap_IntIntVector_push) {
17891   {
17892     std::vector< std::vector< int > > *arg1 = (std::vector< std::vector< int > > *) 0 ;
17893     std::vector< int > *arg2 = 0 ;
17894     void *argp1 = 0 ;
17895     int res1 = 0 ;
17896     std::vector< int > temp2 ;
17897     std::vector< int > *v2 ;
17898     int argvi = 0;
17899     dXSARGS;
17900 
17901     if ((items < 2) || (items > 2)) {
17902       SWIG_croak("Usage: IntIntVector_push(self,x);");
17903     }
17904     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t, 0 |  0 );
17905     if (!SWIG_IsOK(res1)) {
17906       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IntIntVector_push" "', argument " "1"" of type '" "std::vector< std::vector< int > > *""'");
17907     }
17908     arg1 = reinterpret_cast< std::vector< std::vector< int > > * >(argp1);
17909     {
17910       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
17911           SWIGTYPE_p_std__vectorT_int_t,1) != -1) {
17912         arg2 = v2;
17913       } else if (SvROK(ST(1))) {
17914         AV *av = (AV *)SvRV(ST(1));
17915         if (SvTYPE(av) != SVt_PVAV)
17916         SWIG_croak("Type error in argument 2 of IntIntVector_push. "
17917           "Expected an array of ""int");
17918         SV **tv;
17919         I32 len = av_len(av) + 1;
17920         for (int i=0; i<len; i++) {
17921           tv = av_fetch(av, i, 0);
17922           if (SvIOK(*tv)) {
17923             temp2.push_back((int)SvIVX(*tv));
17924           } else {
17925             SWIG_croak("Type error in argument 2 of "
17926               "IntIntVector_push. "
17927               "Expected an array of ""int");
17928           }
17929         }
17930         arg2 = &temp2;
17931       } else {
17932         SWIG_croak("Type error in argument 2 of IntIntVector_push. "
17933           "Expected an array of ""int");
17934       }
17935     }
17936     {
17937       try {
17938         (arg1)->push_back((std::vector< int > const &)*arg2);
17939       } catch (const std::exception& e) {
17940         SWIG_exception(SWIG_RuntimeError, e.what());
17941       }
17942     }
17943     ST(argvi) = &PL_sv_undef;
17944 
17945 
17946     XSRETURN(argvi);
17947   fail:
17948 
17949 
17950     SWIG_croak_null();
17951   }
17952 }
17953 
17954 
XS(_wrap_IntIntVector_pop)17955 XS(_wrap_IntIntVector_pop) {
17956   {
17957     std::vector< std::vector< int > > *arg1 = (std::vector< std::vector< int > > *) 0 ;
17958     void *argp1 = 0 ;
17959     int res1 = 0 ;
17960     int argvi = 0;
17961     std::vector< int > result;
17962     dXSARGS;
17963 
17964     if ((items < 1) || (items > 1)) {
17965       SWIG_croak("Usage: IntIntVector_pop(self);");
17966     }
17967     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t, 0 |  0 );
17968     if (!SWIG_IsOK(res1)) {
17969       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IntIntVector_pop" "', argument " "1"" of type '" "std::vector< std::vector< int > > *""'");
17970     }
17971     arg1 = reinterpret_cast< std::vector< std::vector< int > > * >(argp1);
17972     {
17973       try {
17974         try {
17975           result = std_vector_Sl_std_vector_Sl_int_Sg__Sg__pop(arg1);
17976         } catch(std::out_of_range &_e) {
17977           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
17978         }
17979       } catch (const std::exception& e) {
17980         SWIG_exception(SWIG_RuntimeError, e.what());
17981       }
17982     }
17983     {
17984       size_t len = (&result)->size();
17985       SV **svs = new SV*[len];
17986       for (size_t i=0; i<len; i++) {
17987         svs[i] = sv_newmortal();
17988         sv_setiv(svs[i], result[i]);
17989       }
17990       AV *myav = av_make(len, svs);
17991       delete[] svs;
17992       ST(argvi) = newRV_noinc((SV*) myav);
17993       sv_2mortal(ST(argvi));
17994       argvi++;
17995     }
17996 
17997     XSRETURN(argvi);
17998   fail:
17999 
18000     SWIG_croak_null();
18001   }
18002 }
18003 
18004 
XS(_wrap_IntIntVector_get)18005 XS(_wrap_IntIntVector_get) {
18006   {
18007     std::vector< std::vector< int > > *arg1 = (std::vector< std::vector< int > > *) 0 ;
18008     int arg2 ;
18009     void *argp1 = 0 ;
18010     int res1 = 0 ;
18011     int val2 ;
18012     int ecode2 = 0 ;
18013     int argvi = 0;
18014     std::vector< int > *result = 0 ;
18015     dXSARGS;
18016 
18017     if ((items < 2) || (items > 2)) {
18018       SWIG_croak("Usage: IntIntVector_get(self,i);");
18019     }
18020     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t, 0 |  0 );
18021     if (!SWIG_IsOK(res1)) {
18022       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IntIntVector_get" "', argument " "1"" of type '" "std::vector< std::vector< int > > *""'");
18023     }
18024     arg1 = reinterpret_cast< std::vector< std::vector< int > > * >(argp1);
18025     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
18026     if (!SWIG_IsOK(ecode2)) {
18027       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "IntIntVector_get" "', argument " "2"" of type '" "int""'");
18028     }
18029     arg2 = static_cast< int >(val2);
18030     {
18031       try {
18032         try {
18033           result = (std::vector< int > *) &std_vector_Sl_std_vector_Sl_int_Sg__Sg__get(arg1,arg2);
18034         } catch(std::out_of_range &_e) {
18035           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
18036         }
18037       } catch (const std::exception& e) {
18038         SWIG_exception(SWIG_RuntimeError, e.what());
18039       }
18040     }
18041     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_t, 0 | SWIG_SHADOW); argvi++ ;
18042 
18043 
18044     XSRETURN(argvi);
18045   fail:
18046 
18047 
18048     SWIG_croak_null();
18049   }
18050 }
18051 
18052 
XS(_wrap_IntIntVector_set)18053 XS(_wrap_IntIntVector_set) {
18054   {
18055     std::vector< std::vector< int > > *arg1 = (std::vector< std::vector< int > > *) 0 ;
18056     int arg2 ;
18057     std::vector< int > *arg3 = 0 ;
18058     void *argp1 = 0 ;
18059     int res1 = 0 ;
18060     int val2 ;
18061     int ecode2 = 0 ;
18062     std::vector< int > temp3 ;
18063     std::vector< int > *v3 ;
18064     int argvi = 0;
18065     dXSARGS;
18066 
18067     if ((items < 3) || (items > 3)) {
18068       SWIG_croak("Usage: IntIntVector_set(self,i,x);");
18069     }
18070     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t, 0 |  0 );
18071     if (!SWIG_IsOK(res1)) {
18072       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IntIntVector_set" "', argument " "1"" of type '" "std::vector< std::vector< int > > *""'");
18073     }
18074     arg1 = reinterpret_cast< std::vector< std::vector< int > > * >(argp1);
18075     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
18076     if (!SWIG_IsOK(ecode2)) {
18077       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "IntIntVector_set" "', argument " "2"" of type '" "int""'");
18078     }
18079     arg2 = static_cast< int >(val2);
18080     {
18081       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
18082           SWIGTYPE_p_std__vectorT_int_t,1) != -1) {
18083         arg3 = v3;
18084       } else if (SvROK(ST(2))) {
18085         AV *av = (AV *)SvRV(ST(2));
18086         if (SvTYPE(av) != SVt_PVAV)
18087         SWIG_croak("Type error in argument 3 of IntIntVector_set. "
18088           "Expected an array of ""int");
18089         SV **tv;
18090         I32 len = av_len(av) + 1;
18091         for (int i=0; i<len; i++) {
18092           tv = av_fetch(av, i, 0);
18093           if (SvIOK(*tv)) {
18094             temp3.push_back((int)SvIVX(*tv));
18095           } else {
18096             SWIG_croak("Type error in argument 3 of "
18097               "IntIntVector_set. "
18098               "Expected an array of ""int");
18099           }
18100         }
18101         arg3 = &temp3;
18102       } else {
18103         SWIG_croak("Type error in argument 3 of IntIntVector_set. "
18104           "Expected an array of ""int");
18105       }
18106     }
18107     {
18108       try {
18109         try {
18110           std_vector_Sl_std_vector_Sl_int_Sg__Sg__set(arg1,arg2,(std::vector< int > const &)*arg3);
18111         } catch(std::out_of_range &_e) {
18112           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
18113         }
18114       } catch (const std::exception& e) {
18115         SWIG_exception(SWIG_RuntimeError, e.what());
18116       }
18117     }
18118     ST(argvi) = &PL_sv_undef;
18119 
18120 
18121 
18122     XSRETURN(argvi);
18123   fail:
18124 
18125 
18126 
18127     SWIG_croak_null();
18128   }
18129 }
18130 
18131 
XS(_wrap_delete_IntIntVector)18132 XS(_wrap_delete_IntIntVector) {
18133   {
18134     std::vector< std::vector< int > > *arg1 = (std::vector< std::vector< int > > *) 0 ;
18135     void *argp1 = 0 ;
18136     int res1 = 0 ;
18137     int argvi = 0;
18138     dXSARGS;
18139 
18140     if ((items < 1) || (items > 1)) {
18141       SWIG_croak("Usage: delete_IntIntVector(self);");
18142     }
18143     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t, SWIG_POINTER_DISOWN |  0 );
18144     if (!SWIG_IsOK(res1)) {
18145       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_IntIntVector" "', argument " "1"" of type '" "std::vector< std::vector< int > > *""'");
18146     }
18147     arg1 = reinterpret_cast< std::vector< std::vector< int > > * >(argp1);
18148     {
18149       try {
18150         delete arg1;
18151       } catch (const std::exception& e) {
18152         SWIG_exception(SWIG_RuntimeError, e.what());
18153       }
18154     }
18155     ST(argvi) = &PL_sv_undef;
18156 
18157     XSRETURN(argvi);
18158   fail:
18159 
18160     SWIG_croak_null();
18161   }
18162 }
18163 
18164 
XS(_wrap_new_ElemProbVector__SWIG_0)18165 XS(_wrap_new_ElemProbVector__SWIG_0) {
18166   {
18167     unsigned int arg1 ;
18168     unsigned int val1 ;
18169     int ecode1 = 0 ;
18170     int argvi = 0;
18171     std::vector< vrna_ep_t > *result = 0 ;
18172     dXSARGS;
18173 
18174     if ((items < 1) || (items > 1)) {
18175       SWIG_croak("Usage: new_ElemProbVector(size);");
18176     }
18177     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
18178     if (!SWIG_IsOK(ecode1)) {
18179       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_ElemProbVector" "', argument " "1"" of type '" "unsigned int""'");
18180     }
18181     arg1 = static_cast< unsigned int >(val1);
18182     {
18183       try {
18184         result = (std::vector< vrna_ep_t > *)new std::vector< vrna_ep_t >(arg1);
18185       } catch (const std::exception& e) {
18186         SWIG_exception(SWIG_RuntimeError, e.what());
18187       }
18188     }
18189     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_vrna_ep_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
18190 
18191     XSRETURN(argvi);
18192   fail:
18193 
18194     SWIG_croak_null();
18195   }
18196 }
18197 
18198 
XS(_wrap_new_ElemProbVector__SWIG_1)18199 XS(_wrap_new_ElemProbVector__SWIG_1) {
18200   {
18201     int argvi = 0;
18202     std::vector< vrna_ep_t > *result = 0 ;
18203     dXSARGS;
18204 
18205     if ((items < 0) || (items > 0)) {
18206       SWIG_croak("Usage: new_ElemProbVector();");
18207     }
18208     {
18209       try {
18210         result = (std::vector< vrna_ep_t > *)new std::vector< vrna_ep_t >();
18211       } catch (const std::exception& e) {
18212         SWIG_exception(SWIG_RuntimeError, e.what());
18213       }
18214     }
18215     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_vrna_ep_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
18216     XSRETURN(argvi);
18217   fail:
18218     SWIG_croak_null();
18219   }
18220 }
18221 
18222 
XS(_wrap_new_ElemProbVector__SWIG_2)18223 XS(_wrap_new_ElemProbVector__SWIG_2) {
18224   {
18225     unsigned int arg1 ;
18226     vrna_ep_t *arg2 = 0 ;
18227     unsigned int val1 ;
18228     int ecode1 = 0 ;
18229     void *argp2 ;
18230     int res2 = 0 ;
18231     int argvi = 0;
18232     std::vector< vrna_ep_t > *result = 0 ;
18233     dXSARGS;
18234 
18235     if ((items < 2) || (items > 2)) {
18236       SWIG_croak("Usage: new_ElemProbVector(size,value);");
18237     }
18238     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
18239     if (!SWIG_IsOK(ecode1)) {
18240       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_ElemProbVector" "', argument " "1"" of type '" "unsigned int""'");
18241     }
18242     arg1 = static_cast< unsigned int >(val1);
18243     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_vrna_ep_t,  0 );
18244     if (!SWIG_IsOK(res2)) {
18245       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_ElemProbVector" "', argument " "2"" of type '" "vrna_ep_t const &""'");
18246     }
18247     if (!argp2) {
18248       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_ElemProbVector" "', argument " "2"" of type '" "vrna_ep_t const &""'");
18249     }
18250     arg2 = reinterpret_cast< vrna_ep_t * >(argp2);
18251     {
18252       try {
18253         result = (std::vector< vrna_ep_t > *)new std::vector< vrna_ep_t >(arg1,(vrna_ep_t const &)*arg2);
18254       } catch (const std::exception& e) {
18255         SWIG_exception(SWIG_RuntimeError, e.what());
18256       }
18257     }
18258     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_vrna_ep_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
18259 
18260 
18261     XSRETURN(argvi);
18262   fail:
18263 
18264 
18265     SWIG_croak_null();
18266   }
18267 }
18268 
18269 
XS(_wrap_new_ElemProbVector__SWIG_3)18270 XS(_wrap_new_ElemProbVector__SWIG_3) {
18271   {
18272     std::vector< vrna_ep_t > *arg1 = 0 ;
18273     std::vector< vrna_ep_t > temp1 ;
18274     std::vector< vrna_ep_t > *v1 ;
18275     int argvi = 0;
18276     std::vector< vrna_ep_t > *result = 0 ;
18277     dXSARGS;
18278 
18279     if ((items < 1) || (items > 1)) {
18280       SWIG_croak("Usage: new_ElemProbVector(other);");
18281     }
18282     {
18283       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
18284           SWIGTYPE_p_std__vectorT_vrna_ep_t_t,1) != -1) {
18285         arg1 = v1;
18286       } else if (SvROK(ST(0))) {
18287         AV *av = (AV *)SvRV(ST(0));
18288         if (SvTYPE(av) != SVt_PVAV)
18289         SWIG_croak("Type error in argument 1 of new_ElemProbVector. "
18290           "Expected an array of " "vrna_ep_t");
18291         SV **tv;
18292         I32 len = av_len(av) + 1;
18293         vrna_ep_t* obj;
18294         for (int i=0; i<len; i++) {
18295           tv = av_fetch(av, i, 0);
18296           if (SWIG_ConvertPtr(*tv, (void **)&obj,
18297               SWIGTYPE_p_vrna_ep_t,0) != -1) {
18298             temp1.push_back(*obj);
18299           } else {
18300             SWIG_croak("Type error in argument 1 of "
18301               "new_ElemProbVector. "
18302               "Expected an array of " "vrna_ep_t");
18303           }
18304         }
18305         arg1 = &temp1;
18306       } else {
18307         SWIG_croak("Type error in argument 1 of new_ElemProbVector. "
18308           "Expected an array of " "vrna_ep_t");
18309       }
18310     }
18311     {
18312       try {
18313         result = (std::vector< vrna_ep_t > *)new std::vector< vrna_ep_t >((std::vector< vrna_ep_t > const &)*arg1);
18314       } catch (const std::exception& e) {
18315         SWIG_exception(SWIG_RuntimeError, e.what());
18316       }
18317     }
18318     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_vrna_ep_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
18319 
18320     XSRETURN(argvi);
18321   fail:
18322 
18323     SWIG_croak_null();
18324   }
18325 }
18326 
18327 
XS(_wrap_new_ElemProbVector)18328 XS(_wrap_new_ElemProbVector) {
18329   dXSARGS;
18330 
18331   {
18332     unsigned long _index = 0;
18333     SWIG_TypeRank _rank = 0;
18334     if (items == 0) {
18335       SWIG_TypeRank _ranki = 0;
18336       SWIG_TypeRank _rankm = 0;
18337       if (!_index || (_ranki < _rank)) {
18338         _rank = _ranki; _index = 1;
18339         if (_rank == _rankm) goto dispatch;
18340       }
18341     }
18342     if (items == 1) {
18343       SWIG_TypeRank _ranki = 0;
18344       SWIG_TypeRank _rankm = 0;
18345       SWIG_TypeRank _pi = 1;
18346       int _v = 0;
18347       {
18348         {
18349           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
18350           _v = SWIG_CheckState(res);
18351         }
18352       }
18353       if (!_v) goto check_2;
18354       _ranki += _v*_pi;
18355       _rankm += _pi;
18356       _pi *= SWIG_MAXCASTRANK;
18357       if (!_index || (_ranki < _rank)) {
18358         _rank = _ranki; _index = 2;
18359         if (_rank == _rankm) goto dispatch;
18360       }
18361     }
18362   check_2:
18363 
18364     if (items == 1) {
18365       SWIG_TypeRank _ranki = 0;
18366       SWIG_TypeRank _rankm = 0;
18367       SWIG_TypeRank _pi = 1;
18368       int _v = 0;
18369       {
18370         {
18371           {
18372             /* wrapped vector? */
18373             std::vector< vrna_ep_t >* v;
18374             if (SWIG_ConvertPtr(ST(0),(void **) &v,
18375                 SWIGTYPE_p_std__vectorT_vrna_ep_t_t,0) != -1) {
18376               _v = 1;
18377             } else if (SvROK(ST(0))) {
18378               /* native sequence? */
18379               AV *av = (AV *)SvRV(ST(0));
18380               if (SvTYPE(av) == SVt_PVAV) {
18381                 I32 len = av_len(av) + 1;
18382                 if (len == 0) {
18383                   /* an empty sequence can be of any type */
18384                   _v = 1;
18385                 } else {
18386                   /* check the first element only */
18387                   vrna_ep_t* obj;
18388                   SV **tv = av_fetch(av, 0, 0);
18389                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
18390                       SWIGTYPE_p_vrna_ep_t,0) != -1)
18391                   _v = 1;
18392                   else
18393                   _v = 0;
18394                 }
18395               }
18396             } else {
18397               _v = 0;
18398             }
18399           }
18400         }
18401       }
18402       if (!_v) goto check_3;
18403       _ranki += _v*_pi;
18404       _rankm += _pi;
18405       _pi *= SWIG_MAXCASTRANK;
18406       if (!_index || (_ranki < _rank)) {
18407         _rank = _ranki; _index = 3;
18408         if (_rank == _rankm) goto dispatch;
18409       }
18410     }
18411   check_3:
18412 
18413     if (items == 2) {
18414       SWIG_TypeRank _ranki = 0;
18415       SWIG_TypeRank _rankm = 0;
18416       SWIG_TypeRank _pi = 1;
18417       int _v = 0;
18418       {
18419         {
18420           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
18421           _v = SWIG_CheckState(res);
18422         }
18423       }
18424       if (!_v) goto check_4;
18425       _ranki += _v*_pi;
18426       _rankm += _pi;
18427       _pi *= SWIG_MAXCASTRANK;
18428       {
18429         void *vptr = 0;
18430         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_ep_t, SWIG_POINTER_NO_NULL);
18431         _v = SWIG_CheckState(res);
18432       }
18433       if (!_v) goto check_4;
18434       _ranki += _v*_pi;
18435       _rankm += _pi;
18436       _pi *= SWIG_MAXCASTRANK;
18437       if (!_index || (_ranki < _rank)) {
18438         _rank = _ranki; _index = 4;
18439         if (_rank == _rankm) goto dispatch;
18440       }
18441     }
18442   check_4:
18443 
18444   dispatch:
18445     switch(_index) {
18446     case 1:
18447       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_ElemProbVector__SWIG_1); return;
18448     case 2:
18449       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_ElemProbVector__SWIG_0); return;
18450     case 3:
18451       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_ElemProbVector__SWIG_3); return;
18452     case 4:
18453       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_ElemProbVector__SWIG_2); return;
18454     }
18455   }
18456 
18457   croak("No matching function for overloaded 'new_ElemProbVector'");
18458   XSRETURN(0);
18459 }
18460 
18461 
XS(_wrap_ElemProbVector_size)18462 XS(_wrap_ElemProbVector_size) {
18463   {
18464     std::vector< vrna_ep_t > *arg1 = (std::vector< vrna_ep_t > *) 0 ;
18465     std::vector< vrna_ep_t > temp1 ;
18466     std::vector< vrna_ep_t > *v1 ;
18467     int argvi = 0;
18468     unsigned int result;
18469     dXSARGS;
18470 
18471     if ((items < 1) || (items > 1)) {
18472       SWIG_croak("Usage: ElemProbVector_size(self);");
18473     }
18474     {
18475       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
18476           SWIGTYPE_p_std__vectorT_vrna_ep_t_t,1) != -1) {
18477         arg1 = v1;
18478       } else if (SvROK(ST(0))) {
18479         AV *av = (AV *)SvRV(ST(0));
18480         if (SvTYPE(av) != SVt_PVAV)
18481         SWIG_croak("Type error in argument 1 of ElemProbVector_size. "
18482           "Expected an array of " "vrna_ep_t");
18483         SV **tv;
18484         I32 len = av_len(av) + 1;
18485         vrna_ep_t* obj;
18486         for (int i=0; i<len; i++) {
18487           tv = av_fetch(av, i, 0);
18488           if (SWIG_ConvertPtr(*tv, (void **)&obj,
18489               SWIGTYPE_p_vrna_ep_t,0) != -1) {
18490             temp1.push_back(*obj);
18491           } else {
18492             SWIG_croak("Type error in argument 1 of "
18493               "ElemProbVector_size. "
18494               "Expected an array of " "vrna_ep_t");
18495           }
18496         }
18497         arg1 = &temp1;
18498       } else {
18499         SWIG_croak("Type error in argument 1 of ElemProbVector_size. "
18500           "Expected an array of " "vrna_ep_t");
18501       }
18502     }
18503     {
18504       try {
18505         result = (unsigned int)((std::vector< vrna_ep_t > const *)arg1)->size();
18506       } catch (const std::exception& e) {
18507         SWIG_exception(SWIG_RuntimeError, e.what());
18508       }
18509     }
18510     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
18511 
18512     XSRETURN(argvi);
18513   fail:
18514 
18515     SWIG_croak_null();
18516   }
18517 }
18518 
18519 
XS(_wrap_ElemProbVector_empty)18520 XS(_wrap_ElemProbVector_empty) {
18521   {
18522     std::vector< vrna_ep_t > *arg1 = (std::vector< vrna_ep_t > *) 0 ;
18523     std::vector< vrna_ep_t > temp1 ;
18524     std::vector< vrna_ep_t > *v1 ;
18525     int argvi = 0;
18526     bool result;
18527     dXSARGS;
18528 
18529     if ((items < 1) || (items > 1)) {
18530       SWIG_croak("Usage: ElemProbVector_empty(self);");
18531     }
18532     {
18533       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
18534           SWIGTYPE_p_std__vectorT_vrna_ep_t_t,1) != -1) {
18535         arg1 = v1;
18536       } else if (SvROK(ST(0))) {
18537         AV *av = (AV *)SvRV(ST(0));
18538         if (SvTYPE(av) != SVt_PVAV)
18539         SWIG_croak("Type error in argument 1 of ElemProbVector_empty. "
18540           "Expected an array of " "vrna_ep_t");
18541         SV **tv;
18542         I32 len = av_len(av) + 1;
18543         vrna_ep_t* obj;
18544         for (int i=0; i<len; i++) {
18545           tv = av_fetch(av, i, 0);
18546           if (SWIG_ConvertPtr(*tv, (void **)&obj,
18547               SWIGTYPE_p_vrna_ep_t,0) != -1) {
18548             temp1.push_back(*obj);
18549           } else {
18550             SWIG_croak("Type error in argument 1 of "
18551               "ElemProbVector_empty. "
18552               "Expected an array of " "vrna_ep_t");
18553           }
18554         }
18555         arg1 = &temp1;
18556       } else {
18557         SWIG_croak("Type error in argument 1 of ElemProbVector_empty. "
18558           "Expected an array of " "vrna_ep_t");
18559       }
18560     }
18561     {
18562       try {
18563         result = (bool)((std::vector< vrna_ep_t > const *)arg1)->empty();
18564       } catch (const std::exception& e) {
18565         SWIG_exception(SWIG_RuntimeError, e.what());
18566       }
18567     }
18568     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
18569 
18570     XSRETURN(argvi);
18571   fail:
18572 
18573     SWIG_croak_null();
18574   }
18575 }
18576 
18577 
XS(_wrap_ElemProbVector_clear)18578 XS(_wrap_ElemProbVector_clear) {
18579   {
18580     std::vector< vrna_ep_t > *arg1 = (std::vector< vrna_ep_t > *) 0 ;
18581     void *argp1 = 0 ;
18582     int res1 = 0 ;
18583     int argvi = 0;
18584     dXSARGS;
18585 
18586     if ((items < 1) || (items > 1)) {
18587       SWIG_croak("Usage: ElemProbVector_clear(self);");
18588     }
18589     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_ep_t_t, 0 |  0 );
18590     if (!SWIG_IsOK(res1)) {
18591       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ElemProbVector_clear" "', argument " "1"" of type '" "std::vector< vrna_ep_t > *""'");
18592     }
18593     arg1 = reinterpret_cast< std::vector< vrna_ep_t > * >(argp1);
18594     {
18595       try {
18596         (arg1)->clear();
18597       } catch (const std::exception& e) {
18598         SWIG_exception(SWIG_RuntimeError, e.what());
18599       }
18600     }
18601     ST(argvi) = &PL_sv_undef;
18602 
18603     XSRETURN(argvi);
18604   fail:
18605 
18606     SWIG_croak_null();
18607   }
18608 }
18609 
18610 
XS(_wrap_ElemProbVector_push)18611 XS(_wrap_ElemProbVector_push) {
18612   {
18613     std::vector< vrna_ep_t > *arg1 = (std::vector< vrna_ep_t > *) 0 ;
18614     vrna_ep_t *arg2 = 0 ;
18615     void *argp1 = 0 ;
18616     int res1 = 0 ;
18617     void *argp2 ;
18618     int res2 = 0 ;
18619     int argvi = 0;
18620     dXSARGS;
18621 
18622     if ((items < 2) || (items > 2)) {
18623       SWIG_croak("Usage: ElemProbVector_push(self,x);");
18624     }
18625     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_ep_t_t, 0 |  0 );
18626     if (!SWIG_IsOK(res1)) {
18627       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ElemProbVector_push" "', argument " "1"" of type '" "std::vector< vrna_ep_t > *""'");
18628     }
18629     arg1 = reinterpret_cast< std::vector< vrna_ep_t > * >(argp1);
18630     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_vrna_ep_t,  0 );
18631     if (!SWIG_IsOK(res2)) {
18632       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "ElemProbVector_push" "', argument " "2"" of type '" "vrna_ep_t const &""'");
18633     }
18634     if (!argp2) {
18635       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "ElemProbVector_push" "', argument " "2"" of type '" "vrna_ep_t const &""'");
18636     }
18637     arg2 = reinterpret_cast< vrna_ep_t * >(argp2);
18638     {
18639       try {
18640         (arg1)->push_back((vrna_ep_t const &)*arg2);
18641       } catch (const std::exception& e) {
18642         SWIG_exception(SWIG_RuntimeError, e.what());
18643       }
18644     }
18645     ST(argvi) = &PL_sv_undef;
18646 
18647 
18648     XSRETURN(argvi);
18649   fail:
18650 
18651 
18652     SWIG_croak_null();
18653   }
18654 }
18655 
18656 
XS(_wrap_ElemProbVector_pop)18657 XS(_wrap_ElemProbVector_pop) {
18658   {
18659     std::vector< vrna_ep_t > *arg1 = (std::vector< vrna_ep_t > *) 0 ;
18660     void *argp1 = 0 ;
18661     int res1 = 0 ;
18662     int argvi = 0;
18663     SwigValueWrapper< vrna_ep_t > result;
18664     dXSARGS;
18665 
18666     if ((items < 1) || (items > 1)) {
18667       SWIG_croak("Usage: ElemProbVector_pop(self);");
18668     }
18669     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_ep_t_t, 0 |  0 );
18670     if (!SWIG_IsOK(res1)) {
18671       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ElemProbVector_pop" "', argument " "1"" of type '" "std::vector< vrna_ep_t > *""'");
18672     }
18673     arg1 = reinterpret_cast< std::vector< vrna_ep_t > * >(argp1);
18674     {
18675       try {
18676         try {
18677           result = std_vector_Sl_vrna_ep_t_Sg__pop(arg1);
18678         } catch(std::out_of_range &_e) {
18679           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
18680         }
18681       } catch (const std::exception& e) {
18682         SWIG_exception(SWIG_RuntimeError, e.what());
18683       }
18684     }
18685     ST(argvi) = SWIG_NewPointerObj((new vrna_ep_t(static_cast< const vrna_ep_t& >(result))), SWIGTYPE_p_vrna_ep_t, SWIG_POINTER_OWN | SWIG_SHADOW); argvi++ ;
18686 
18687     XSRETURN(argvi);
18688   fail:
18689 
18690     SWIG_croak_null();
18691   }
18692 }
18693 
18694 
XS(_wrap_ElemProbVector_get)18695 XS(_wrap_ElemProbVector_get) {
18696   {
18697     std::vector< vrna_ep_t > *arg1 = (std::vector< vrna_ep_t > *) 0 ;
18698     int arg2 ;
18699     void *argp1 = 0 ;
18700     int res1 = 0 ;
18701     int val2 ;
18702     int ecode2 = 0 ;
18703     int argvi = 0;
18704     vrna_ep_t *result = 0 ;
18705     dXSARGS;
18706 
18707     if ((items < 2) || (items > 2)) {
18708       SWIG_croak("Usage: ElemProbVector_get(self,i);");
18709     }
18710     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_ep_t_t, 0 |  0 );
18711     if (!SWIG_IsOK(res1)) {
18712       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ElemProbVector_get" "', argument " "1"" of type '" "std::vector< vrna_ep_t > *""'");
18713     }
18714     arg1 = reinterpret_cast< std::vector< vrna_ep_t > * >(argp1);
18715     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
18716     if (!SWIG_IsOK(ecode2)) {
18717       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ElemProbVector_get" "', argument " "2"" of type '" "int""'");
18718     }
18719     arg2 = static_cast< int >(val2);
18720     {
18721       try {
18722         try {
18723           result = (vrna_ep_t *) &std_vector_Sl_vrna_ep_t_Sg__get(arg1,arg2);
18724         } catch(std::out_of_range &_e) {
18725           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
18726         }
18727       } catch (const std::exception& e) {
18728         SWIG_exception(SWIG_RuntimeError, e.what());
18729       }
18730     }
18731     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_ep_t, 0 | SWIG_SHADOW); argvi++ ;
18732 
18733 
18734     XSRETURN(argvi);
18735   fail:
18736 
18737 
18738     SWIG_croak_null();
18739   }
18740 }
18741 
18742 
XS(_wrap_ElemProbVector_set)18743 XS(_wrap_ElemProbVector_set) {
18744   {
18745     std::vector< vrna_ep_t > *arg1 = (std::vector< vrna_ep_t > *) 0 ;
18746     int arg2 ;
18747     vrna_ep_t *arg3 = 0 ;
18748     void *argp1 = 0 ;
18749     int res1 = 0 ;
18750     int val2 ;
18751     int ecode2 = 0 ;
18752     void *argp3 ;
18753     int res3 = 0 ;
18754     int argvi = 0;
18755     dXSARGS;
18756 
18757     if ((items < 3) || (items > 3)) {
18758       SWIG_croak("Usage: ElemProbVector_set(self,i,x);");
18759     }
18760     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_ep_t_t, 0 |  0 );
18761     if (!SWIG_IsOK(res1)) {
18762       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ElemProbVector_set" "', argument " "1"" of type '" "std::vector< vrna_ep_t > *""'");
18763     }
18764     arg1 = reinterpret_cast< std::vector< vrna_ep_t > * >(argp1);
18765     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
18766     if (!SWIG_IsOK(ecode2)) {
18767       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ElemProbVector_set" "', argument " "2"" of type '" "int""'");
18768     }
18769     arg2 = static_cast< int >(val2);
18770     res3 = SWIG_ConvertPtr(ST(2), &argp3, SWIGTYPE_p_vrna_ep_t,  0 );
18771     if (!SWIG_IsOK(res3)) {
18772       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "ElemProbVector_set" "', argument " "3"" of type '" "vrna_ep_t const &""'");
18773     }
18774     if (!argp3) {
18775       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "ElemProbVector_set" "', argument " "3"" of type '" "vrna_ep_t const &""'");
18776     }
18777     arg3 = reinterpret_cast< vrna_ep_t * >(argp3);
18778     {
18779       try {
18780         try {
18781           std_vector_Sl_vrna_ep_t_Sg__set(arg1,arg2,(vrna_ep_t const &)*arg3);
18782         } catch(std::out_of_range &_e) {
18783           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
18784         }
18785       } catch (const std::exception& e) {
18786         SWIG_exception(SWIG_RuntimeError, e.what());
18787       }
18788     }
18789     ST(argvi) = &PL_sv_undef;
18790 
18791 
18792 
18793     XSRETURN(argvi);
18794   fail:
18795 
18796 
18797 
18798     SWIG_croak_null();
18799   }
18800 }
18801 
18802 
XS(_wrap_delete_ElemProbVector)18803 XS(_wrap_delete_ElemProbVector) {
18804   {
18805     std::vector< vrna_ep_t > *arg1 = (std::vector< vrna_ep_t > *) 0 ;
18806     void *argp1 = 0 ;
18807     int res1 = 0 ;
18808     int argvi = 0;
18809     dXSARGS;
18810 
18811     if ((items < 1) || (items > 1)) {
18812       SWIG_croak("Usage: delete_ElemProbVector(self);");
18813     }
18814     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_ep_t_t, SWIG_POINTER_DISOWN |  0 );
18815     if (!SWIG_IsOK(res1)) {
18816       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_ElemProbVector" "', argument " "1"" of type '" "std::vector< vrna_ep_t > *""'");
18817     }
18818     arg1 = reinterpret_cast< std::vector< vrna_ep_t > * >(argp1);
18819     {
18820       try {
18821         delete arg1;
18822       } catch (const std::exception& e) {
18823         SWIG_exception(SWIG_RuntimeError, e.what());
18824       }
18825     }
18826     ST(argvi) = &PL_sv_undef;
18827 
18828     XSRETURN(argvi);
18829   fail:
18830 
18831     SWIG_croak_null();
18832   }
18833 }
18834 
18835 
XS(_wrap_new_PathVector__SWIG_0)18836 XS(_wrap_new_PathVector__SWIG_0) {
18837   {
18838     unsigned int arg1 ;
18839     unsigned int val1 ;
18840     int ecode1 = 0 ;
18841     int argvi = 0;
18842     std::vector< vrna_path_t > *result = 0 ;
18843     dXSARGS;
18844 
18845     if ((items < 1) || (items > 1)) {
18846       SWIG_croak("Usage: new_PathVector(size);");
18847     }
18848     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
18849     if (!SWIG_IsOK(ecode1)) {
18850       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_PathVector" "', argument " "1"" of type '" "unsigned int""'");
18851     }
18852     arg1 = static_cast< unsigned int >(val1);
18853     {
18854       try {
18855         result = (std::vector< vrna_path_t > *)new std::vector< vrna_path_t >(arg1);
18856       } catch (const std::exception& e) {
18857         SWIG_exception(SWIG_RuntimeError, e.what());
18858       }
18859     }
18860     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_vrna_path_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
18861 
18862     XSRETURN(argvi);
18863   fail:
18864 
18865     SWIG_croak_null();
18866   }
18867 }
18868 
18869 
XS(_wrap_new_PathVector__SWIG_1)18870 XS(_wrap_new_PathVector__SWIG_1) {
18871   {
18872     int argvi = 0;
18873     std::vector< vrna_path_t > *result = 0 ;
18874     dXSARGS;
18875 
18876     if ((items < 0) || (items > 0)) {
18877       SWIG_croak("Usage: new_PathVector();");
18878     }
18879     {
18880       try {
18881         result = (std::vector< vrna_path_t > *)new std::vector< vrna_path_t >();
18882       } catch (const std::exception& e) {
18883         SWIG_exception(SWIG_RuntimeError, e.what());
18884       }
18885     }
18886     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_vrna_path_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
18887     XSRETURN(argvi);
18888   fail:
18889     SWIG_croak_null();
18890   }
18891 }
18892 
18893 
XS(_wrap_new_PathVector__SWIG_2)18894 XS(_wrap_new_PathVector__SWIG_2) {
18895   {
18896     unsigned int arg1 ;
18897     vrna_path_t *arg2 = 0 ;
18898     unsigned int val1 ;
18899     int ecode1 = 0 ;
18900     void *argp2 ;
18901     int res2 = 0 ;
18902     int argvi = 0;
18903     std::vector< vrna_path_t > *result = 0 ;
18904     dXSARGS;
18905 
18906     if ((items < 2) || (items > 2)) {
18907       SWIG_croak("Usage: new_PathVector(size,value);");
18908     }
18909     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
18910     if (!SWIG_IsOK(ecode1)) {
18911       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_PathVector" "', argument " "1"" of type '" "unsigned int""'");
18912     }
18913     arg1 = static_cast< unsigned int >(val1);
18914     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_vrna_path_t,  0 );
18915     if (!SWIG_IsOK(res2)) {
18916       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_PathVector" "', argument " "2"" of type '" "vrna_path_t const &""'");
18917     }
18918     if (!argp2) {
18919       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_PathVector" "', argument " "2"" of type '" "vrna_path_t const &""'");
18920     }
18921     arg2 = reinterpret_cast< vrna_path_t * >(argp2);
18922     {
18923       try {
18924         result = (std::vector< vrna_path_t > *)new std::vector< vrna_path_t >(arg1,(vrna_path_t const &)*arg2);
18925       } catch (const std::exception& e) {
18926         SWIG_exception(SWIG_RuntimeError, e.what());
18927       }
18928     }
18929     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_vrna_path_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
18930 
18931 
18932     XSRETURN(argvi);
18933   fail:
18934 
18935 
18936     SWIG_croak_null();
18937   }
18938 }
18939 
18940 
XS(_wrap_new_PathVector__SWIG_3)18941 XS(_wrap_new_PathVector__SWIG_3) {
18942   {
18943     std::vector< vrna_path_t > *arg1 = 0 ;
18944     std::vector< vrna_path_t > temp1 ;
18945     std::vector< vrna_path_t > *v1 ;
18946     int argvi = 0;
18947     std::vector< vrna_path_t > *result = 0 ;
18948     dXSARGS;
18949 
18950     if ((items < 1) || (items > 1)) {
18951       SWIG_croak("Usage: new_PathVector(other);");
18952     }
18953     {
18954       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
18955           SWIGTYPE_p_std__vectorT_vrna_path_t_t,1) != -1) {
18956         arg1 = v1;
18957       } else if (SvROK(ST(0))) {
18958         AV *av = (AV *)SvRV(ST(0));
18959         if (SvTYPE(av) != SVt_PVAV)
18960         SWIG_croak("Type error in argument 1 of new_PathVector. "
18961           "Expected an array of " "vrna_path_t");
18962         SV **tv;
18963         I32 len = av_len(av) + 1;
18964         vrna_path_t* obj;
18965         for (int i=0; i<len; i++) {
18966           tv = av_fetch(av, i, 0);
18967           if (SWIG_ConvertPtr(*tv, (void **)&obj,
18968               SWIGTYPE_p_vrna_path_t,0) != -1) {
18969             temp1.push_back(*obj);
18970           } else {
18971             SWIG_croak("Type error in argument 1 of "
18972               "new_PathVector. "
18973               "Expected an array of " "vrna_path_t");
18974           }
18975         }
18976         arg1 = &temp1;
18977       } else {
18978         SWIG_croak("Type error in argument 1 of new_PathVector. "
18979           "Expected an array of " "vrna_path_t");
18980       }
18981     }
18982     {
18983       try {
18984         result = (std::vector< vrna_path_t > *)new std::vector< vrna_path_t >((std::vector< vrna_path_t > const &)*arg1);
18985       } catch (const std::exception& e) {
18986         SWIG_exception(SWIG_RuntimeError, e.what());
18987       }
18988     }
18989     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_vrna_path_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
18990 
18991     XSRETURN(argvi);
18992   fail:
18993 
18994     SWIG_croak_null();
18995   }
18996 }
18997 
18998 
XS(_wrap_new_PathVector)18999 XS(_wrap_new_PathVector) {
19000   dXSARGS;
19001 
19002   {
19003     unsigned long _index = 0;
19004     SWIG_TypeRank _rank = 0;
19005     if (items == 0) {
19006       SWIG_TypeRank _ranki = 0;
19007       SWIG_TypeRank _rankm = 0;
19008       if (!_index || (_ranki < _rank)) {
19009         _rank = _ranki; _index = 1;
19010         if (_rank == _rankm) goto dispatch;
19011       }
19012     }
19013     if (items == 1) {
19014       SWIG_TypeRank _ranki = 0;
19015       SWIG_TypeRank _rankm = 0;
19016       SWIG_TypeRank _pi = 1;
19017       int _v = 0;
19018       {
19019         {
19020           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
19021           _v = SWIG_CheckState(res);
19022         }
19023       }
19024       if (!_v) goto check_2;
19025       _ranki += _v*_pi;
19026       _rankm += _pi;
19027       _pi *= SWIG_MAXCASTRANK;
19028       if (!_index || (_ranki < _rank)) {
19029         _rank = _ranki; _index = 2;
19030         if (_rank == _rankm) goto dispatch;
19031       }
19032     }
19033   check_2:
19034 
19035     if (items == 1) {
19036       SWIG_TypeRank _ranki = 0;
19037       SWIG_TypeRank _rankm = 0;
19038       SWIG_TypeRank _pi = 1;
19039       int _v = 0;
19040       {
19041         {
19042           {
19043             /* wrapped vector? */
19044             std::vector< vrna_path_t >* v;
19045             if (SWIG_ConvertPtr(ST(0),(void **) &v,
19046                 SWIGTYPE_p_std__vectorT_vrna_path_t_t,0) != -1) {
19047               _v = 1;
19048             } else if (SvROK(ST(0))) {
19049               /* native sequence? */
19050               AV *av = (AV *)SvRV(ST(0));
19051               if (SvTYPE(av) == SVt_PVAV) {
19052                 I32 len = av_len(av) + 1;
19053                 if (len == 0) {
19054                   /* an empty sequence can be of any type */
19055                   _v = 1;
19056                 } else {
19057                   /* check the first element only */
19058                   vrna_path_t* obj;
19059                   SV **tv = av_fetch(av, 0, 0);
19060                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
19061                       SWIGTYPE_p_vrna_path_t,0) != -1)
19062                   _v = 1;
19063                   else
19064                   _v = 0;
19065                 }
19066               }
19067             } else {
19068               _v = 0;
19069             }
19070           }
19071         }
19072       }
19073       if (!_v) goto check_3;
19074       _ranki += _v*_pi;
19075       _rankm += _pi;
19076       _pi *= SWIG_MAXCASTRANK;
19077       if (!_index || (_ranki < _rank)) {
19078         _rank = _ranki; _index = 3;
19079         if (_rank == _rankm) goto dispatch;
19080       }
19081     }
19082   check_3:
19083 
19084     if (items == 2) {
19085       SWIG_TypeRank _ranki = 0;
19086       SWIG_TypeRank _rankm = 0;
19087       SWIG_TypeRank _pi = 1;
19088       int _v = 0;
19089       {
19090         {
19091           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
19092           _v = SWIG_CheckState(res);
19093         }
19094       }
19095       if (!_v) goto check_4;
19096       _ranki += _v*_pi;
19097       _rankm += _pi;
19098       _pi *= SWIG_MAXCASTRANK;
19099       {
19100         void *vptr = 0;
19101         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_path_t, SWIG_POINTER_NO_NULL);
19102         _v = SWIG_CheckState(res);
19103       }
19104       if (!_v) goto check_4;
19105       _ranki += _v*_pi;
19106       _rankm += _pi;
19107       _pi *= SWIG_MAXCASTRANK;
19108       if (!_index || (_ranki < _rank)) {
19109         _rank = _ranki; _index = 4;
19110         if (_rank == _rankm) goto dispatch;
19111       }
19112     }
19113   check_4:
19114 
19115   dispatch:
19116     switch(_index) {
19117     case 1:
19118       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_PathVector__SWIG_1); return;
19119     case 2:
19120       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_PathVector__SWIG_0); return;
19121     case 3:
19122       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_PathVector__SWIG_3); return;
19123     case 4:
19124       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_PathVector__SWIG_2); return;
19125     }
19126   }
19127 
19128   croak("No matching function for overloaded 'new_PathVector'");
19129   XSRETURN(0);
19130 }
19131 
19132 
XS(_wrap_PathVector_size)19133 XS(_wrap_PathVector_size) {
19134   {
19135     std::vector< vrna_path_t > *arg1 = (std::vector< vrna_path_t > *) 0 ;
19136     std::vector< vrna_path_t > temp1 ;
19137     std::vector< vrna_path_t > *v1 ;
19138     int argvi = 0;
19139     unsigned int result;
19140     dXSARGS;
19141 
19142     if ((items < 1) || (items > 1)) {
19143       SWIG_croak("Usage: PathVector_size(self);");
19144     }
19145     {
19146       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
19147           SWIGTYPE_p_std__vectorT_vrna_path_t_t,1) != -1) {
19148         arg1 = v1;
19149       } else if (SvROK(ST(0))) {
19150         AV *av = (AV *)SvRV(ST(0));
19151         if (SvTYPE(av) != SVt_PVAV)
19152         SWIG_croak("Type error in argument 1 of PathVector_size. "
19153           "Expected an array of " "vrna_path_t");
19154         SV **tv;
19155         I32 len = av_len(av) + 1;
19156         vrna_path_t* obj;
19157         for (int i=0; i<len; i++) {
19158           tv = av_fetch(av, i, 0);
19159           if (SWIG_ConvertPtr(*tv, (void **)&obj,
19160               SWIGTYPE_p_vrna_path_t,0) != -1) {
19161             temp1.push_back(*obj);
19162           } else {
19163             SWIG_croak("Type error in argument 1 of "
19164               "PathVector_size. "
19165               "Expected an array of " "vrna_path_t");
19166           }
19167         }
19168         arg1 = &temp1;
19169       } else {
19170         SWIG_croak("Type error in argument 1 of PathVector_size. "
19171           "Expected an array of " "vrna_path_t");
19172       }
19173     }
19174     {
19175       try {
19176         result = (unsigned int)((std::vector< vrna_path_t > const *)arg1)->size();
19177       } catch (const std::exception& e) {
19178         SWIG_exception(SWIG_RuntimeError, e.what());
19179       }
19180     }
19181     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
19182 
19183     XSRETURN(argvi);
19184   fail:
19185 
19186     SWIG_croak_null();
19187   }
19188 }
19189 
19190 
XS(_wrap_PathVector_empty)19191 XS(_wrap_PathVector_empty) {
19192   {
19193     std::vector< vrna_path_t > *arg1 = (std::vector< vrna_path_t > *) 0 ;
19194     std::vector< vrna_path_t > temp1 ;
19195     std::vector< vrna_path_t > *v1 ;
19196     int argvi = 0;
19197     bool result;
19198     dXSARGS;
19199 
19200     if ((items < 1) || (items > 1)) {
19201       SWIG_croak("Usage: PathVector_empty(self);");
19202     }
19203     {
19204       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
19205           SWIGTYPE_p_std__vectorT_vrna_path_t_t,1) != -1) {
19206         arg1 = v1;
19207       } else if (SvROK(ST(0))) {
19208         AV *av = (AV *)SvRV(ST(0));
19209         if (SvTYPE(av) != SVt_PVAV)
19210         SWIG_croak("Type error in argument 1 of PathVector_empty. "
19211           "Expected an array of " "vrna_path_t");
19212         SV **tv;
19213         I32 len = av_len(av) + 1;
19214         vrna_path_t* obj;
19215         for (int i=0; i<len; i++) {
19216           tv = av_fetch(av, i, 0);
19217           if (SWIG_ConvertPtr(*tv, (void **)&obj,
19218               SWIGTYPE_p_vrna_path_t,0) != -1) {
19219             temp1.push_back(*obj);
19220           } else {
19221             SWIG_croak("Type error in argument 1 of "
19222               "PathVector_empty. "
19223               "Expected an array of " "vrna_path_t");
19224           }
19225         }
19226         arg1 = &temp1;
19227       } else {
19228         SWIG_croak("Type error in argument 1 of PathVector_empty. "
19229           "Expected an array of " "vrna_path_t");
19230       }
19231     }
19232     {
19233       try {
19234         result = (bool)((std::vector< vrna_path_t > const *)arg1)->empty();
19235       } catch (const std::exception& e) {
19236         SWIG_exception(SWIG_RuntimeError, e.what());
19237       }
19238     }
19239     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
19240 
19241     XSRETURN(argvi);
19242   fail:
19243 
19244     SWIG_croak_null();
19245   }
19246 }
19247 
19248 
XS(_wrap_PathVector_clear)19249 XS(_wrap_PathVector_clear) {
19250   {
19251     std::vector< vrna_path_t > *arg1 = (std::vector< vrna_path_t > *) 0 ;
19252     void *argp1 = 0 ;
19253     int res1 = 0 ;
19254     int argvi = 0;
19255     dXSARGS;
19256 
19257     if ((items < 1) || (items > 1)) {
19258       SWIG_croak("Usage: PathVector_clear(self);");
19259     }
19260     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_path_t_t, 0 |  0 );
19261     if (!SWIG_IsOK(res1)) {
19262       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PathVector_clear" "', argument " "1"" of type '" "std::vector< vrna_path_t > *""'");
19263     }
19264     arg1 = reinterpret_cast< std::vector< vrna_path_t > * >(argp1);
19265     {
19266       try {
19267         (arg1)->clear();
19268       } catch (const std::exception& e) {
19269         SWIG_exception(SWIG_RuntimeError, e.what());
19270       }
19271     }
19272     ST(argvi) = &PL_sv_undef;
19273 
19274     XSRETURN(argvi);
19275   fail:
19276 
19277     SWIG_croak_null();
19278   }
19279 }
19280 
19281 
XS(_wrap_PathVector_push)19282 XS(_wrap_PathVector_push) {
19283   {
19284     std::vector< vrna_path_t > *arg1 = (std::vector< vrna_path_t > *) 0 ;
19285     vrna_path_t *arg2 = 0 ;
19286     void *argp1 = 0 ;
19287     int res1 = 0 ;
19288     void *argp2 ;
19289     int res2 = 0 ;
19290     int argvi = 0;
19291     dXSARGS;
19292 
19293     if ((items < 2) || (items > 2)) {
19294       SWIG_croak("Usage: PathVector_push(self,x);");
19295     }
19296     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_path_t_t, 0 |  0 );
19297     if (!SWIG_IsOK(res1)) {
19298       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PathVector_push" "', argument " "1"" of type '" "std::vector< vrna_path_t > *""'");
19299     }
19300     arg1 = reinterpret_cast< std::vector< vrna_path_t > * >(argp1);
19301     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_vrna_path_t,  0 );
19302     if (!SWIG_IsOK(res2)) {
19303       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PathVector_push" "', argument " "2"" of type '" "vrna_path_t const &""'");
19304     }
19305     if (!argp2) {
19306       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "PathVector_push" "', argument " "2"" of type '" "vrna_path_t const &""'");
19307     }
19308     arg2 = reinterpret_cast< vrna_path_t * >(argp2);
19309     {
19310       try {
19311         (arg1)->push_back((vrna_path_t const &)*arg2);
19312       } catch (const std::exception& e) {
19313         SWIG_exception(SWIG_RuntimeError, e.what());
19314       }
19315     }
19316     ST(argvi) = &PL_sv_undef;
19317 
19318 
19319     XSRETURN(argvi);
19320   fail:
19321 
19322 
19323     SWIG_croak_null();
19324   }
19325 }
19326 
19327 
XS(_wrap_PathVector_pop)19328 XS(_wrap_PathVector_pop) {
19329   {
19330     std::vector< vrna_path_t > *arg1 = (std::vector< vrna_path_t > *) 0 ;
19331     void *argp1 = 0 ;
19332     int res1 = 0 ;
19333     int argvi = 0;
19334     SwigValueWrapper< vrna_path_t > result;
19335     dXSARGS;
19336 
19337     if ((items < 1) || (items > 1)) {
19338       SWIG_croak("Usage: PathVector_pop(self);");
19339     }
19340     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_path_t_t, 0 |  0 );
19341     if (!SWIG_IsOK(res1)) {
19342       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PathVector_pop" "', argument " "1"" of type '" "std::vector< vrna_path_t > *""'");
19343     }
19344     arg1 = reinterpret_cast< std::vector< vrna_path_t > * >(argp1);
19345     {
19346       try {
19347         try {
19348           result = std_vector_Sl_vrna_path_t_Sg__pop(arg1);
19349         } catch(std::out_of_range &_e) {
19350           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
19351         }
19352       } catch (const std::exception& e) {
19353         SWIG_exception(SWIG_RuntimeError, e.what());
19354       }
19355     }
19356     ST(argvi) = SWIG_NewPointerObj((new vrna_path_t(static_cast< const vrna_path_t& >(result))), SWIGTYPE_p_vrna_path_t, SWIG_POINTER_OWN | SWIG_SHADOW); argvi++ ;
19357 
19358     XSRETURN(argvi);
19359   fail:
19360 
19361     SWIG_croak_null();
19362   }
19363 }
19364 
19365 
XS(_wrap_PathVector_get)19366 XS(_wrap_PathVector_get) {
19367   {
19368     std::vector< vrna_path_t > *arg1 = (std::vector< vrna_path_t > *) 0 ;
19369     int arg2 ;
19370     void *argp1 = 0 ;
19371     int res1 = 0 ;
19372     int val2 ;
19373     int ecode2 = 0 ;
19374     int argvi = 0;
19375     vrna_path_t *result = 0 ;
19376     dXSARGS;
19377 
19378     if ((items < 2) || (items > 2)) {
19379       SWIG_croak("Usage: PathVector_get(self,i);");
19380     }
19381     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_path_t_t, 0 |  0 );
19382     if (!SWIG_IsOK(res1)) {
19383       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PathVector_get" "', argument " "1"" of type '" "std::vector< vrna_path_t > *""'");
19384     }
19385     arg1 = reinterpret_cast< std::vector< vrna_path_t > * >(argp1);
19386     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
19387     if (!SWIG_IsOK(ecode2)) {
19388       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PathVector_get" "', argument " "2"" of type '" "int""'");
19389     }
19390     arg2 = static_cast< int >(val2);
19391     {
19392       try {
19393         try {
19394           result = (vrna_path_t *) &std_vector_Sl_vrna_path_t_Sg__get(arg1,arg2);
19395         } catch(std::out_of_range &_e) {
19396           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
19397         }
19398       } catch (const std::exception& e) {
19399         SWIG_exception(SWIG_RuntimeError, e.what());
19400       }
19401     }
19402     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_path_t, 0 | SWIG_SHADOW); argvi++ ;
19403 
19404 
19405     XSRETURN(argvi);
19406   fail:
19407 
19408 
19409     SWIG_croak_null();
19410   }
19411 }
19412 
19413 
XS(_wrap_PathVector_set)19414 XS(_wrap_PathVector_set) {
19415   {
19416     std::vector< vrna_path_t > *arg1 = (std::vector< vrna_path_t > *) 0 ;
19417     int arg2 ;
19418     vrna_path_t *arg3 = 0 ;
19419     void *argp1 = 0 ;
19420     int res1 = 0 ;
19421     int val2 ;
19422     int ecode2 = 0 ;
19423     void *argp3 ;
19424     int res3 = 0 ;
19425     int argvi = 0;
19426     dXSARGS;
19427 
19428     if ((items < 3) || (items > 3)) {
19429       SWIG_croak("Usage: PathVector_set(self,i,x);");
19430     }
19431     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_path_t_t, 0 |  0 );
19432     if (!SWIG_IsOK(res1)) {
19433       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PathVector_set" "', argument " "1"" of type '" "std::vector< vrna_path_t > *""'");
19434     }
19435     arg1 = reinterpret_cast< std::vector< vrna_path_t > * >(argp1);
19436     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
19437     if (!SWIG_IsOK(ecode2)) {
19438       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "PathVector_set" "', argument " "2"" of type '" "int""'");
19439     }
19440     arg2 = static_cast< int >(val2);
19441     res3 = SWIG_ConvertPtr(ST(2), &argp3, SWIGTYPE_p_vrna_path_t,  0 );
19442     if (!SWIG_IsOK(res3)) {
19443       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "PathVector_set" "', argument " "3"" of type '" "vrna_path_t const &""'");
19444     }
19445     if (!argp3) {
19446       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "PathVector_set" "', argument " "3"" of type '" "vrna_path_t const &""'");
19447     }
19448     arg3 = reinterpret_cast< vrna_path_t * >(argp3);
19449     {
19450       try {
19451         try {
19452           std_vector_Sl_vrna_path_t_Sg__set(arg1,arg2,(vrna_path_t const &)*arg3);
19453         } catch(std::out_of_range &_e) {
19454           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
19455         }
19456       } catch (const std::exception& e) {
19457         SWIG_exception(SWIG_RuntimeError, e.what());
19458       }
19459     }
19460     ST(argvi) = &PL_sv_undef;
19461 
19462 
19463 
19464     XSRETURN(argvi);
19465   fail:
19466 
19467 
19468 
19469     SWIG_croak_null();
19470   }
19471 }
19472 
19473 
XS(_wrap_delete_PathVector)19474 XS(_wrap_delete_PathVector) {
19475   {
19476     std::vector< vrna_path_t > *arg1 = (std::vector< vrna_path_t > *) 0 ;
19477     void *argp1 = 0 ;
19478     int res1 = 0 ;
19479     int argvi = 0;
19480     dXSARGS;
19481 
19482     if ((items < 1) || (items > 1)) {
19483       SWIG_croak("Usage: delete_PathVector(self);");
19484     }
19485     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_path_t_t, SWIG_POINTER_DISOWN |  0 );
19486     if (!SWIG_IsOK(res1)) {
19487       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_PathVector" "', argument " "1"" of type '" "std::vector< vrna_path_t > *""'");
19488     }
19489     arg1 = reinterpret_cast< std::vector< vrna_path_t > * >(argp1);
19490     {
19491       try {
19492         delete arg1;
19493       } catch (const std::exception& e) {
19494         SWIG_exception(SWIG_RuntimeError, e.what());
19495       }
19496     }
19497     ST(argvi) = &PL_sv_undef;
19498 
19499     XSRETURN(argvi);
19500   fail:
19501 
19502     SWIG_croak_null();
19503   }
19504 }
19505 
19506 
XS(_wrap_new_MoveVector__SWIG_0)19507 XS(_wrap_new_MoveVector__SWIG_0) {
19508   {
19509     unsigned int arg1 ;
19510     unsigned int val1 ;
19511     int ecode1 = 0 ;
19512     int argvi = 0;
19513     std::vector< vrna_move_t > *result = 0 ;
19514     dXSARGS;
19515 
19516     if ((items < 1) || (items > 1)) {
19517       SWIG_croak("Usage: new_MoveVector(size);");
19518     }
19519     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
19520     if (!SWIG_IsOK(ecode1)) {
19521       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_MoveVector" "', argument " "1"" of type '" "unsigned int""'");
19522     }
19523     arg1 = static_cast< unsigned int >(val1);
19524     {
19525       try {
19526         result = (std::vector< vrna_move_t > *)new std::vector< vrna_move_t >(arg1);
19527       } catch (const std::exception& e) {
19528         SWIG_exception(SWIG_RuntimeError, e.what());
19529       }
19530     }
19531     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_vrna_move_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
19532 
19533     XSRETURN(argvi);
19534   fail:
19535 
19536     SWIG_croak_null();
19537   }
19538 }
19539 
19540 
XS(_wrap_new_MoveVector__SWIG_1)19541 XS(_wrap_new_MoveVector__SWIG_1) {
19542   {
19543     int argvi = 0;
19544     std::vector< vrna_move_t > *result = 0 ;
19545     dXSARGS;
19546 
19547     if ((items < 0) || (items > 0)) {
19548       SWIG_croak("Usage: new_MoveVector();");
19549     }
19550     {
19551       try {
19552         result = (std::vector< vrna_move_t > *)new std::vector< vrna_move_t >();
19553       } catch (const std::exception& e) {
19554         SWIG_exception(SWIG_RuntimeError, e.what());
19555       }
19556     }
19557     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_vrna_move_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
19558     XSRETURN(argvi);
19559   fail:
19560     SWIG_croak_null();
19561   }
19562 }
19563 
19564 
XS(_wrap_new_MoveVector__SWIG_2)19565 XS(_wrap_new_MoveVector__SWIG_2) {
19566   {
19567     unsigned int arg1 ;
19568     vrna_move_t *arg2 = 0 ;
19569     unsigned int val1 ;
19570     int ecode1 = 0 ;
19571     void *argp2 ;
19572     int res2 = 0 ;
19573     int argvi = 0;
19574     std::vector< vrna_move_t > *result = 0 ;
19575     dXSARGS;
19576 
19577     if ((items < 2) || (items > 2)) {
19578       SWIG_croak("Usage: new_MoveVector(size,value);");
19579     }
19580     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
19581     if (!SWIG_IsOK(ecode1)) {
19582       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_MoveVector" "', argument " "1"" of type '" "unsigned int""'");
19583     }
19584     arg1 = static_cast< unsigned int >(val1);
19585     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_vrna_move_t,  0 );
19586     if (!SWIG_IsOK(res2)) {
19587       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_MoveVector" "', argument " "2"" of type '" "vrna_move_t const &""'");
19588     }
19589     if (!argp2) {
19590       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_MoveVector" "', argument " "2"" of type '" "vrna_move_t const &""'");
19591     }
19592     arg2 = reinterpret_cast< vrna_move_t * >(argp2);
19593     {
19594       try {
19595         result = (std::vector< vrna_move_t > *)new std::vector< vrna_move_t >(arg1,(vrna_move_t const &)*arg2);
19596       } catch (const std::exception& e) {
19597         SWIG_exception(SWIG_RuntimeError, e.what());
19598       }
19599     }
19600     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_vrna_move_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
19601 
19602 
19603     XSRETURN(argvi);
19604   fail:
19605 
19606 
19607     SWIG_croak_null();
19608   }
19609 }
19610 
19611 
XS(_wrap_new_MoveVector__SWIG_3)19612 XS(_wrap_new_MoveVector__SWIG_3) {
19613   {
19614     std::vector< vrna_move_t > *arg1 = 0 ;
19615     std::vector< vrna_move_t > temp1 ;
19616     std::vector< vrna_move_t > *v1 ;
19617     int argvi = 0;
19618     std::vector< vrna_move_t > *result = 0 ;
19619     dXSARGS;
19620 
19621     if ((items < 1) || (items > 1)) {
19622       SWIG_croak("Usage: new_MoveVector(other);");
19623     }
19624     {
19625       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
19626           SWIGTYPE_p_std__vectorT_vrna_move_t_t,1) != -1) {
19627         arg1 = v1;
19628       } else if (SvROK(ST(0))) {
19629         AV *av = (AV *)SvRV(ST(0));
19630         if (SvTYPE(av) != SVt_PVAV)
19631         SWIG_croak("Type error in argument 1 of new_MoveVector. "
19632           "Expected an array of " "vrna_move_t");
19633         SV **tv;
19634         I32 len = av_len(av) + 1;
19635         vrna_move_t* obj;
19636         for (int i=0; i<len; i++) {
19637           tv = av_fetch(av, i, 0);
19638           if (SWIG_ConvertPtr(*tv, (void **)&obj,
19639               SWIGTYPE_p_vrna_move_t,0) != -1) {
19640             temp1.push_back(*obj);
19641           } else {
19642             SWIG_croak("Type error in argument 1 of "
19643               "new_MoveVector. "
19644               "Expected an array of " "vrna_move_t");
19645           }
19646         }
19647         arg1 = &temp1;
19648       } else {
19649         SWIG_croak("Type error in argument 1 of new_MoveVector. "
19650           "Expected an array of " "vrna_move_t");
19651       }
19652     }
19653     {
19654       try {
19655         result = (std::vector< vrna_move_t > *)new std::vector< vrna_move_t >((std::vector< vrna_move_t > const &)*arg1);
19656       } catch (const std::exception& e) {
19657         SWIG_exception(SWIG_RuntimeError, e.what());
19658       }
19659     }
19660     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_vrna_move_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
19661 
19662     XSRETURN(argvi);
19663   fail:
19664 
19665     SWIG_croak_null();
19666   }
19667 }
19668 
19669 
XS(_wrap_new_MoveVector)19670 XS(_wrap_new_MoveVector) {
19671   dXSARGS;
19672 
19673   {
19674     unsigned long _index = 0;
19675     SWIG_TypeRank _rank = 0;
19676     if (items == 0) {
19677       SWIG_TypeRank _ranki = 0;
19678       SWIG_TypeRank _rankm = 0;
19679       if (!_index || (_ranki < _rank)) {
19680         _rank = _ranki; _index = 1;
19681         if (_rank == _rankm) goto dispatch;
19682       }
19683     }
19684     if (items == 1) {
19685       SWIG_TypeRank _ranki = 0;
19686       SWIG_TypeRank _rankm = 0;
19687       SWIG_TypeRank _pi = 1;
19688       int _v = 0;
19689       {
19690         {
19691           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
19692           _v = SWIG_CheckState(res);
19693         }
19694       }
19695       if (!_v) goto check_2;
19696       _ranki += _v*_pi;
19697       _rankm += _pi;
19698       _pi *= SWIG_MAXCASTRANK;
19699       if (!_index || (_ranki < _rank)) {
19700         _rank = _ranki; _index = 2;
19701         if (_rank == _rankm) goto dispatch;
19702       }
19703     }
19704   check_2:
19705 
19706     if (items == 1) {
19707       SWIG_TypeRank _ranki = 0;
19708       SWIG_TypeRank _rankm = 0;
19709       SWIG_TypeRank _pi = 1;
19710       int _v = 0;
19711       {
19712         {
19713           {
19714             /* wrapped vector? */
19715             std::vector< vrna_move_t >* v;
19716             if (SWIG_ConvertPtr(ST(0),(void **) &v,
19717                 SWIGTYPE_p_std__vectorT_vrna_move_t_t,0) != -1) {
19718               _v = 1;
19719             } else if (SvROK(ST(0))) {
19720               /* native sequence? */
19721               AV *av = (AV *)SvRV(ST(0));
19722               if (SvTYPE(av) == SVt_PVAV) {
19723                 I32 len = av_len(av) + 1;
19724                 if (len == 0) {
19725                   /* an empty sequence can be of any type */
19726                   _v = 1;
19727                 } else {
19728                   /* check the first element only */
19729                   vrna_move_t* obj;
19730                   SV **tv = av_fetch(av, 0, 0);
19731                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
19732                       SWIGTYPE_p_vrna_move_t,0) != -1)
19733                   _v = 1;
19734                   else
19735                   _v = 0;
19736                 }
19737               }
19738             } else {
19739               _v = 0;
19740             }
19741           }
19742         }
19743       }
19744       if (!_v) goto check_3;
19745       _ranki += _v*_pi;
19746       _rankm += _pi;
19747       _pi *= SWIG_MAXCASTRANK;
19748       if (!_index || (_ranki < _rank)) {
19749         _rank = _ranki; _index = 3;
19750         if (_rank == _rankm) goto dispatch;
19751       }
19752     }
19753   check_3:
19754 
19755     if (items == 2) {
19756       SWIG_TypeRank _ranki = 0;
19757       SWIG_TypeRank _rankm = 0;
19758       SWIG_TypeRank _pi = 1;
19759       int _v = 0;
19760       {
19761         {
19762           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
19763           _v = SWIG_CheckState(res);
19764         }
19765       }
19766       if (!_v) goto check_4;
19767       _ranki += _v*_pi;
19768       _rankm += _pi;
19769       _pi *= SWIG_MAXCASTRANK;
19770       {
19771         void *vptr = 0;
19772         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_move_t, SWIG_POINTER_NO_NULL);
19773         _v = SWIG_CheckState(res);
19774       }
19775       if (!_v) goto check_4;
19776       _ranki += _v*_pi;
19777       _rankm += _pi;
19778       _pi *= SWIG_MAXCASTRANK;
19779       if (!_index || (_ranki < _rank)) {
19780         _rank = _ranki; _index = 4;
19781         if (_rank == _rankm) goto dispatch;
19782       }
19783     }
19784   check_4:
19785 
19786   dispatch:
19787     switch(_index) {
19788     case 1:
19789       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_MoveVector__SWIG_1); return;
19790     case 2:
19791       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_MoveVector__SWIG_0); return;
19792     case 3:
19793       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_MoveVector__SWIG_3); return;
19794     case 4:
19795       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_MoveVector__SWIG_2); return;
19796     }
19797   }
19798 
19799   croak("No matching function for overloaded 'new_MoveVector'");
19800   XSRETURN(0);
19801 }
19802 
19803 
XS(_wrap_MoveVector_size)19804 XS(_wrap_MoveVector_size) {
19805   {
19806     std::vector< vrna_move_t > *arg1 = (std::vector< vrna_move_t > *) 0 ;
19807     std::vector< vrna_move_t > temp1 ;
19808     std::vector< vrna_move_t > *v1 ;
19809     int argvi = 0;
19810     unsigned int result;
19811     dXSARGS;
19812 
19813     if ((items < 1) || (items > 1)) {
19814       SWIG_croak("Usage: MoveVector_size(self);");
19815     }
19816     {
19817       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
19818           SWIGTYPE_p_std__vectorT_vrna_move_t_t,1) != -1) {
19819         arg1 = v1;
19820       } else if (SvROK(ST(0))) {
19821         AV *av = (AV *)SvRV(ST(0));
19822         if (SvTYPE(av) != SVt_PVAV)
19823         SWIG_croak("Type error in argument 1 of MoveVector_size. "
19824           "Expected an array of " "vrna_move_t");
19825         SV **tv;
19826         I32 len = av_len(av) + 1;
19827         vrna_move_t* obj;
19828         for (int i=0; i<len; i++) {
19829           tv = av_fetch(av, i, 0);
19830           if (SWIG_ConvertPtr(*tv, (void **)&obj,
19831               SWIGTYPE_p_vrna_move_t,0) != -1) {
19832             temp1.push_back(*obj);
19833           } else {
19834             SWIG_croak("Type error in argument 1 of "
19835               "MoveVector_size. "
19836               "Expected an array of " "vrna_move_t");
19837           }
19838         }
19839         arg1 = &temp1;
19840       } else {
19841         SWIG_croak("Type error in argument 1 of MoveVector_size. "
19842           "Expected an array of " "vrna_move_t");
19843       }
19844     }
19845     {
19846       try {
19847         result = (unsigned int)((std::vector< vrna_move_t > const *)arg1)->size();
19848       } catch (const std::exception& e) {
19849         SWIG_exception(SWIG_RuntimeError, e.what());
19850       }
19851     }
19852     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
19853 
19854     XSRETURN(argvi);
19855   fail:
19856 
19857     SWIG_croak_null();
19858   }
19859 }
19860 
19861 
XS(_wrap_MoveVector_empty)19862 XS(_wrap_MoveVector_empty) {
19863   {
19864     std::vector< vrna_move_t > *arg1 = (std::vector< vrna_move_t > *) 0 ;
19865     std::vector< vrna_move_t > temp1 ;
19866     std::vector< vrna_move_t > *v1 ;
19867     int argvi = 0;
19868     bool result;
19869     dXSARGS;
19870 
19871     if ((items < 1) || (items > 1)) {
19872       SWIG_croak("Usage: MoveVector_empty(self);");
19873     }
19874     {
19875       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
19876           SWIGTYPE_p_std__vectorT_vrna_move_t_t,1) != -1) {
19877         arg1 = v1;
19878       } else if (SvROK(ST(0))) {
19879         AV *av = (AV *)SvRV(ST(0));
19880         if (SvTYPE(av) != SVt_PVAV)
19881         SWIG_croak("Type error in argument 1 of MoveVector_empty. "
19882           "Expected an array of " "vrna_move_t");
19883         SV **tv;
19884         I32 len = av_len(av) + 1;
19885         vrna_move_t* obj;
19886         for (int i=0; i<len; i++) {
19887           tv = av_fetch(av, i, 0);
19888           if (SWIG_ConvertPtr(*tv, (void **)&obj,
19889               SWIGTYPE_p_vrna_move_t,0) != -1) {
19890             temp1.push_back(*obj);
19891           } else {
19892             SWIG_croak("Type error in argument 1 of "
19893               "MoveVector_empty. "
19894               "Expected an array of " "vrna_move_t");
19895           }
19896         }
19897         arg1 = &temp1;
19898       } else {
19899         SWIG_croak("Type error in argument 1 of MoveVector_empty. "
19900           "Expected an array of " "vrna_move_t");
19901       }
19902     }
19903     {
19904       try {
19905         result = (bool)((std::vector< vrna_move_t > const *)arg1)->empty();
19906       } catch (const std::exception& e) {
19907         SWIG_exception(SWIG_RuntimeError, e.what());
19908       }
19909     }
19910     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
19911 
19912     XSRETURN(argvi);
19913   fail:
19914 
19915     SWIG_croak_null();
19916   }
19917 }
19918 
19919 
XS(_wrap_MoveVector_clear)19920 XS(_wrap_MoveVector_clear) {
19921   {
19922     std::vector< vrna_move_t > *arg1 = (std::vector< vrna_move_t > *) 0 ;
19923     void *argp1 = 0 ;
19924     int res1 = 0 ;
19925     int argvi = 0;
19926     dXSARGS;
19927 
19928     if ((items < 1) || (items > 1)) {
19929       SWIG_croak("Usage: MoveVector_clear(self);");
19930     }
19931     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_move_t_t, 0 |  0 );
19932     if (!SWIG_IsOK(res1)) {
19933       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MoveVector_clear" "', argument " "1"" of type '" "std::vector< vrna_move_t > *""'");
19934     }
19935     arg1 = reinterpret_cast< std::vector< vrna_move_t > * >(argp1);
19936     {
19937       try {
19938         (arg1)->clear();
19939       } catch (const std::exception& e) {
19940         SWIG_exception(SWIG_RuntimeError, e.what());
19941       }
19942     }
19943     ST(argvi) = &PL_sv_undef;
19944 
19945     XSRETURN(argvi);
19946   fail:
19947 
19948     SWIG_croak_null();
19949   }
19950 }
19951 
19952 
XS(_wrap_MoveVector_push)19953 XS(_wrap_MoveVector_push) {
19954   {
19955     std::vector< vrna_move_t > *arg1 = (std::vector< vrna_move_t > *) 0 ;
19956     vrna_move_t *arg2 = 0 ;
19957     void *argp1 = 0 ;
19958     int res1 = 0 ;
19959     void *argp2 ;
19960     int res2 = 0 ;
19961     int argvi = 0;
19962     dXSARGS;
19963 
19964     if ((items < 2) || (items > 2)) {
19965       SWIG_croak("Usage: MoveVector_push(self,x);");
19966     }
19967     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_move_t_t, 0 |  0 );
19968     if (!SWIG_IsOK(res1)) {
19969       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MoveVector_push" "', argument " "1"" of type '" "std::vector< vrna_move_t > *""'");
19970     }
19971     arg1 = reinterpret_cast< std::vector< vrna_move_t > * >(argp1);
19972     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_vrna_move_t,  0 );
19973     if (!SWIG_IsOK(res2)) {
19974       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "MoveVector_push" "', argument " "2"" of type '" "vrna_move_t const &""'");
19975     }
19976     if (!argp2) {
19977       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MoveVector_push" "', argument " "2"" of type '" "vrna_move_t const &""'");
19978     }
19979     arg2 = reinterpret_cast< vrna_move_t * >(argp2);
19980     {
19981       try {
19982         (arg1)->push_back((vrna_move_t const &)*arg2);
19983       } catch (const std::exception& e) {
19984         SWIG_exception(SWIG_RuntimeError, e.what());
19985       }
19986     }
19987     ST(argvi) = &PL_sv_undef;
19988 
19989 
19990     XSRETURN(argvi);
19991   fail:
19992 
19993 
19994     SWIG_croak_null();
19995   }
19996 }
19997 
19998 
XS(_wrap_MoveVector_pop)19999 XS(_wrap_MoveVector_pop) {
20000   {
20001     std::vector< vrna_move_t > *arg1 = (std::vector< vrna_move_t > *) 0 ;
20002     void *argp1 = 0 ;
20003     int res1 = 0 ;
20004     int argvi = 0;
20005     SwigValueWrapper< vrna_move_t > result;
20006     dXSARGS;
20007 
20008     if ((items < 1) || (items > 1)) {
20009       SWIG_croak("Usage: MoveVector_pop(self);");
20010     }
20011     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_move_t_t, 0 |  0 );
20012     if (!SWIG_IsOK(res1)) {
20013       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MoveVector_pop" "', argument " "1"" of type '" "std::vector< vrna_move_t > *""'");
20014     }
20015     arg1 = reinterpret_cast< std::vector< vrna_move_t > * >(argp1);
20016     {
20017       try {
20018         try {
20019           result = std_vector_Sl_vrna_move_t_Sg__pop(arg1);
20020         } catch(std::out_of_range &_e) {
20021           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
20022         }
20023       } catch (const std::exception& e) {
20024         SWIG_exception(SWIG_RuntimeError, e.what());
20025       }
20026     }
20027     ST(argvi) = SWIG_NewPointerObj((new vrna_move_t(static_cast< const vrna_move_t& >(result))), SWIGTYPE_p_vrna_move_t, SWIG_POINTER_OWN | SWIG_SHADOW); argvi++ ;
20028 
20029     XSRETURN(argvi);
20030   fail:
20031 
20032     SWIG_croak_null();
20033   }
20034 }
20035 
20036 
XS(_wrap_MoveVector_get)20037 XS(_wrap_MoveVector_get) {
20038   {
20039     std::vector< vrna_move_t > *arg1 = (std::vector< vrna_move_t > *) 0 ;
20040     int arg2 ;
20041     void *argp1 = 0 ;
20042     int res1 = 0 ;
20043     int val2 ;
20044     int ecode2 = 0 ;
20045     int argvi = 0;
20046     vrna_move_t *result = 0 ;
20047     dXSARGS;
20048 
20049     if ((items < 2) || (items > 2)) {
20050       SWIG_croak("Usage: MoveVector_get(self,i);");
20051     }
20052     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_move_t_t, 0 |  0 );
20053     if (!SWIG_IsOK(res1)) {
20054       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MoveVector_get" "', argument " "1"" of type '" "std::vector< vrna_move_t > *""'");
20055     }
20056     arg1 = reinterpret_cast< std::vector< vrna_move_t > * >(argp1);
20057     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
20058     if (!SWIG_IsOK(ecode2)) {
20059       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "MoveVector_get" "', argument " "2"" of type '" "int""'");
20060     }
20061     arg2 = static_cast< int >(val2);
20062     {
20063       try {
20064         try {
20065           result = (vrna_move_t *) &std_vector_Sl_vrna_move_t_Sg__get(arg1,arg2);
20066         } catch(std::out_of_range &_e) {
20067           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
20068         }
20069       } catch (const std::exception& e) {
20070         SWIG_exception(SWIG_RuntimeError, e.what());
20071       }
20072     }
20073     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_move_t, 0 | SWIG_SHADOW); argvi++ ;
20074 
20075 
20076     XSRETURN(argvi);
20077   fail:
20078 
20079 
20080     SWIG_croak_null();
20081   }
20082 }
20083 
20084 
XS(_wrap_MoveVector_set)20085 XS(_wrap_MoveVector_set) {
20086   {
20087     std::vector< vrna_move_t > *arg1 = (std::vector< vrna_move_t > *) 0 ;
20088     int arg2 ;
20089     vrna_move_t *arg3 = 0 ;
20090     void *argp1 = 0 ;
20091     int res1 = 0 ;
20092     int val2 ;
20093     int ecode2 = 0 ;
20094     void *argp3 ;
20095     int res3 = 0 ;
20096     int argvi = 0;
20097     dXSARGS;
20098 
20099     if ((items < 3) || (items > 3)) {
20100       SWIG_croak("Usage: MoveVector_set(self,i,x);");
20101     }
20102     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_move_t_t, 0 |  0 );
20103     if (!SWIG_IsOK(res1)) {
20104       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "MoveVector_set" "', argument " "1"" of type '" "std::vector< vrna_move_t > *""'");
20105     }
20106     arg1 = reinterpret_cast< std::vector< vrna_move_t > * >(argp1);
20107     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
20108     if (!SWIG_IsOK(ecode2)) {
20109       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "MoveVector_set" "', argument " "2"" of type '" "int""'");
20110     }
20111     arg2 = static_cast< int >(val2);
20112     res3 = SWIG_ConvertPtr(ST(2), &argp3, SWIGTYPE_p_vrna_move_t,  0 );
20113     if (!SWIG_IsOK(res3)) {
20114       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "MoveVector_set" "', argument " "3"" of type '" "vrna_move_t const &""'");
20115     }
20116     if (!argp3) {
20117       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "MoveVector_set" "', argument " "3"" of type '" "vrna_move_t const &""'");
20118     }
20119     arg3 = reinterpret_cast< vrna_move_t * >(argp3);
20120     {
20121       try {
20122         try {
20123           std_vector_Sl_vrna_move_t_Sg__set(arg1,arg2,(vrna_move_t const &)*arg3);
20124         } catch(std::out_of_range &_e) {
20125           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
20126         }
20127       } catch (const std::exception& e) {
20128         SWIG_exception(SWIG_RuntimeError, e.what());
20129       }
20130     }
20131     ST(argvi) = &PL_sv_undef;
20132 
20133 
20134 
20135     XSRETURN(argvi);
20136   fail:
20137 
20138 
20139 
20140     SWIG_croak_null();
20141   }
20142 }
20143 
20144 
XS(_wrap_delete_MoveVector)20145 XS(_wrap_delete_MoveVector) {
20146   {
20147     std::vector< vrna_move_t > *arg1 = (std::vector< vrna_move_t > *) 0 ;
20148     void *argp1 = 0 ;
20149     int res1 = 0 ;
20150     int argvi = 0;
20151     dXSARGS;
20152 
20153     if ((items < 1) || (items > 1)) {
20154       SWIG_croak("Usage: delete_MoveVector(self);");
20155     }
20156     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_vrna_move_t_t, SWIG_POINTER_DISOWN |  0 );
20157     if (!SWIG_IsOK(res1)) {
20158       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_MoveVector" "', argument " "1"" of type '" "std::vector< vrna_move_t > *""'");
20159     }
20160     arg1 = reinterpret_cast< std::vector< vrna_move_t > * >(argp1);
20161     {
20162       try {
20163         delete arg1;
20164       } catch (const std::exception& e) {
20165         SWIG_exception(SWIG_RuntimeError, e.what());
20166       }
20167     }
20168     ST(argvi) = &PL_sv_undef;
20169 
20170     XSRETURN(argvi);
20171   fail:
20172 
20173     SWIG_croak_null();
20174   }
20175 }
20176 
20177 
XS(_wrap_param_id_get)20178 XS(_wrap_param_id_get) {
20179   {
20180     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20181     void *argp1 = 0 ;
20182     int res1 = 0 ;
20183     int argvi = 0;
20184     int result;
20185     dXSARGS;
20186 
20187     if ((items < 1) || (items > 1)) {
20188       SWIG_croak("Usage: param_id_get(self);");
20189     }
20190     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20191     if (!SWIG_IsOK(res1)) {
20192       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_id_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20193     }
20194     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20195     result = (int)(int) ((arg1)->id);
20196     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
20197 
20198     XSRETURN(argvi);
20199   fail:
20200 
20201     SWIG_croak_null();
20202   }
20203 }
20204 
20205 
XS(_wrap_param_stack_get)20206 XS(_wrap_param_stack_get) {
20207   {
20208     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20209     void *argp1 = 0 ;
20210     int res1 = 0 ;
20211     int argvi = 0;
20212     int (*result)[NBPAIRS+1] = 0 ;
20213     dXSARGS;
20214 
20215     if ((items < 1) || (items > 1)) {
20216       SWIG_croak("Usage: param_stack_get(self);");
20217     }
20218     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20219     if (!SWIG_IsOK(res1)) {
20220       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_stack_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20221     }
20222     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20223     result = (int (*)[NBPAIRS+1])(int (*)[NBPAIRS+1]) ((arg1)->stack);
20224     {
20225       AV *arr = newAV();
20226       int i,j = 0, len1 = 0, len2 = 0;
20227 
20228       len1 = NBPAIRS+1;
20229       len2 = NBPAIRS+1;
20230 
20231       for (i = 0; i < len1 ; i++) {
20232         AV *vec = newAV();
20233         for (j = 0; j < len2; j++) {
20234           SV *v = newSViv(result[i][j]);
20235           if (!av_store(vec, j, v))
20236           SvREFCNT_dec(v);
20237         }
20238         /* store reference to array */
20239         av_store(arr, i, newRV_noinc((SV*) vec));
20240       }
20241 
20242       ST(argvi) = newRV_noinc((SV*) arr );
20243       sv_2mortal( ST(argvi) );
20244       argvi++;
20245     }
20246 
20247     XSRETURN(argvi);
20248   fail:
20249 
20250     SWIG_croak_null();
20251   }
20252 }
20253 
20254 
XS(_wrap_param_hairpin_get)20255 XS(_wrap_param_hairpin_get) {
20256   {
20257     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20258     void *argp1 = 0 ;
20259     int res1 = 0 ;
20260     int argvi = 0;
20261     int *result = 0 ;
20262     dXSARGS;
20263 
20264     if ((items < 1) || (items > 1)) {
20265       SWIG_croak("Usage: param_hairpin_get(self);");
20266     }
20267     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20268     if (!SWIG_IsOK(res1)) {
20269       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_hairpin_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20270     }
20271     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20272     result = (int *)(int *) ((arg1)->hairpin);
20273     {
20274       AV* av = newAV();
20275       int i = 0,len = 0;
20276       len = 31;
20277 
20278       for (i = 0; i < len ; i++) {
20279         SV* perlval = newSV(0);
20280         sv_setiv(perlval, (IV)result[i]);
20281         av_push(av, perlval);
20282       }
20283       ST(argvi) = newRV_noinc((SV*) av );
20284       sv_2mortal( ST(argvi) );
20285       argvi++;
20286     }
20287 
20288     XSRETURN(argvi);
20289   fail:
20290 
20291     SWIG_croak_null();
20292   }
20293 }
20294 
20295 
XS(_wrap_param_bulge_get)20296 XS(_wrap_param_bulge_get) {
20297   {
20298     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20299     void *argp1 = 0 ;
20300     int res1 = 0 ;
20301     int argvi = 0;
20302     int *result = 0 ;
20303     dXSARGS;
20304 
20305     if ((items < 1) || (items > 1)) {
20306       SWIG_croak("Usage: param_bulge_get(self);");
20307     }
20308     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20309     if (!SWIG_IsOK(res1)) {
20310       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_bulge_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20311     }
20312     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20313     result = (int *)(int *) ((arg1)->bulge);
20314     {
20315       AV* av = newAV();
20316       int i = 0,len = 0;
20317       len = MAXLOOP+1;
20318 
20319       for (i = 0; i < len ; i++) {
20320         SV* perlval = newSV(0);
20321         sv_setiv(perlval, (IV)result[i]);
20322         av_push(av, perlval);
20323       }
20324       ST(argvi) = newRV_noinc((SV*) av );
20325       sv_2mortal( ST(argvi) );
20326       argvi++;
20327     }
20328 
20329     XSRETURN(argvi);
20330   fail:
20331 
20332     SWIG_croak_null();
20333   }
20334 }
20335 
20336 
XS(_wrap_param_internal_loop_get)20337 XS(_wrap_param_internal_loop_get) {
20338   {
20339     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20340     void *argp1 = 0 ;
20341     int res1 = 0 ;
20342     int argvi = 0;
20343     int *result = 0 ;
20344     dXSARGS;
20345 
20346     if ((items < 1) || (items > 1)) {
20347       SWIG_croak("Usage: param_internal_loop_get(self);");
20348     }
20349     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20350     if (!SWIG_IsOK(res1)) {
20351       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_internal_loop_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20352     }
20353     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20354     result = (int *)(int *) ((arg1)->internal_loop);
20355     {
20356       AV* av = newAV();
20357       int i = 0,len = 0;
20358       len = MAXLOOP+1;
20359 
20360       for (i = 0; i < len ; i++) {
20361         SV* perlval = newSV(0);
20362         sv_setiv(perlval, (IV)result[i]);
20363         av_push(av, perlval);
20364       }
20365       ST(argvi) = newRV_noinc((SV*) av );
20366       sv_2mortal( ST(argvi) );
20367       argvi++;
20368     }
20369 
20370     XSRETURN(argvi);
20371   fail:
20372 
20373     SWIG_croak_null();
20374   }
20375 }
20376 
20377 
XS(_wrap_param_mismatchExt_get)20378 XS(_wrap_param_mismatchExt_get) {
20379   {
20380     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20381     void *argp1 = 0 ;
20382     int res1 = 0 ;
20383     int argvi = 0;
20384     int (*result)[5][5] = 0 ;
20385     dXSARGS;
20386 
20387     if ((items < 1) || (items > 1)) {
20388       SWIG_croak("Usage: param_mismatchExt_get(self);");
20389     }
20390     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20391     if (!SWIG_IsOK(res1)) {
20392       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_mismatchExt_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20393     }
20394     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20395     result = (int (*)[5][5])(int (*)[5][5]) ((arg1)->mismatchExt);
20396     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_5__a_5__int, 0 | 0); argvi++ ;
20397 
20398     XSRETURN(argvi);
20399   fail:
20400 
20401     SWIG_croak_null();
20402   }
20403 }
20404 
20405 
XS(_wrap_param_mismatchI_get)20406 XS(_wrap_param_mismatchI_get) {
20407   {
20408     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20409     void *argp1 = 0 ;
20410     int res1 = 0 ;
20411     int argvi = 0;
20412     int (*result)[5][5] = 0 ;
20413     dXSARGS;
20414 
20415     if ((items < 1) || (items > 1)) {
20416       SWIG_croak("Usage: param_mismatchI_get(self);");
20417     }
20418     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20419     if (!SWIG_IsOK(res1)) {
20420       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_mismatchI_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20421     }
20422     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20423     result = (int (*)[5][5])(int (*)[5][5]) ((arg1)->mismatchI);
20424     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_5__a_5__int, 0 | 0); argvi++ ;
20425 
20426     XSRETURN(argvi);
20427   fail:
20428 
20429     SWIG_croak_null();
20430   }
20431 }
20432 
20433 
XS(_wrap_param_mismatch1nI_get)20434 XS(_wrap_param_mismatch1nI_get) {
20435   {
20436     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20437     void *argp1 = 0 ;
20438     int res1 = 0 ;
20439     int argvi = 0;
20440     int (*result)[5][5] = 0 ;
20441     dXSARGS;
20442 
20443     if ((items < 1) || (items > 1)) {
20444       SWIG_croak("Usage: param_mismatch1nI_get(self);");
20445     }
20446     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20447     if (!SWIG_IsOK(res1)) {
20448       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_mismatch1nI_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20449     }
20450     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20451     result = (int (*)[5][5])(int (*)[5][5]) ((arg1)->mismatch1nI);
20452     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_5__a_5__int, 0 | 0); argvi++ ;
20453 
20454     XSRETURN(argvi);
20455   fail:
20456 
20457     SWIG_croak_null();
20458   }
20459 }
20460 
20461 
XS(_wrap_param_mismatch23I_get)20462 XS(_wrap_param_mismatch23I_get) {
20463   {
20464     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20465     void *argp1 = 0 ;
20466     int res1 = 0 ;
20467     int argvi = 0;
20468     int (*result)[5][5] = 0 ;
20469     dXSARGS;
20470 
20471     if ((items < 1) || (items > 1)) {
20472       SWIG_croak("Usage: param_mismatch23I_get(self);");
20473     }
20474     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20475     if (!SWIG_IsOK(res1)) {
20476       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_mismatch23I_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20477     }
20478     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20479     result = (int (*)[5][5])(int (*)[5][5]) ((arg1)->mismatch23I);
20480     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_5__a_5__int, 0 | 0); argvi++ ;
20481 
20482     XSRETURN(argvi);
20483   fail:
20484 
20485     SWIG_croak_null();
20486   }
20487 }
20488 
20489 
XS(_wrap_param_mismatchH_get)20490 XS(_wrap_param_mismatchH_get) {
20491   {
20492     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20493     void *argp1 = 0 ;
20494     int res1 = 0 ;
20495     int argvi = 0;
20496     int (*result)[5][5] = 0 ;
20497     dXSARGS;
20498 
20499     if ((items < 1) || (items > 1)) {
20500       SWIG_croak("Usage: param_mismatchH_get(self);");
20501     }
20502     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20503     if (!SWIG_IsOK(res1)) {
20504       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_mismatchH_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20505     }
20506     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20507     result = (int (*)[5][5])(int (*)[5][5]) ((arg1)->mismatchH);
20508     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_5__a_5__int, 0 | 0); argvi++ ;
20509 
20510     XSRETURN(argvi);
20511   fail:
20512 
20513     SWIG_croak_null();
20514   }
20515 }
20516 
20517 
XS(_wrap_param_mismatchM_get)20518 XS(_wrap_param_mismatchM_get) {
20519   {
20520     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20521     void *argp1 = 0 ;
20522     int res1 = 0 ;
20523     int argvi = 0;
20524     int (*result)[5][5] = 0 ;
20525     dXSARGS;
20526 
20527     if ((items < 1) || (items > 1)) {
20528       SWIG_croak("Usage: param_mismatchM_get(self);");
20529     }
20530     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20531     if (!SWIG_IsOK(res1)) {
20532       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_mismatchM_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20533     }
20534     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20535     result = (int (*)[5][5])(int (*)[5][5]) ((arg1)->mismatchM);
20536     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_5__a_5__int, 0 | 0); argvi++ ;
20537 
20538     XSRETURN(argvi);
20539   fail:
20540 
20541     SWIG_croak_null();
20542   }
20543 }
20544 
20545 
XS(_wrap_param_dangle5_get)20546 XS(_wrap_param_dangle5_get) {
20547   {
20548     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20549     void *argp1 = 0 ;
20550     int res1 = 0 ;
20551     int argvi = 0;
20552     int (*result)[5] = 0 ;
20553     dXSARGS;
20554 
20555     if ((items < 1) || (items > 1)) {
20556       SWIG_croak("Usage: param_dangle5_get(self);");
20557     }
20558     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20559     if (!SWIG_IsOK(res1)) {
20560       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_dangle5_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20561     }
20562     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20563     result = (int (*)[5])(int (*)[5]) ((arg1)->dangle5);
20564     {
20565       AV *arr = newAV();
20566       int i,j = 0, len1 = 0, len2 = 0;
20567 
20568       len1 = NBPAIRS+1;
20569       len2 = 5;
20570 
20571       for (i = 0; i < len1 ; i++) {
20572         AV *vec = newAV();
20573         for (j = 0; j < len2; j++) {
20574           SV *v = newSViv(result[i][j]);
20575           if (!av_store(vec, j, v))
20576           SvREFCNT_dec(v);
20577         }
20578         /* store reference to array */
20579         av_store(arr, i, newRV_noinc((SV*) vec));
20580       }
20581 
20582       ST(argvi) = newRV_noinc((SV*) arr );
20583       sv_2mortal( ST(argvi) );
20584       argvi++;
20585     }
20586 
20587     XSRETURN(argvi);
20588   fail:
20589 
20590     SWIG_croak_null();
20591   }
20592 }
20593 
20594 
XS(_wrap_param_dangle3_get)20595 XS(_wrap_param_dangle3_get) {
20596   {
20597     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20598     void *argp1 = 0 ;
20599     int res1 = 0 ;
20600     int argvi = 0;
20601     int (*result)[5] = 0 ;
20602     dXSARGS;
20603 
20604     if ((items < 1) || (items > 1)) {
20605       SWIG_croak("Usage: param_dangle3_get(self);");
20606     }
20607     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20608     if (!SWIG_IsOK(res1)) {
20609       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_dangle3_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20610     }
20611     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20612     result = (int (*)[5])(int (*)[5]) ((arg1)->dangle3);
20613     {
20614       AV *arr = newAV();
20615       int i,j = 0, len1 = 0, len2 = 0;
20616 
20617       len1 = NBPAIRS+1;
20618       len2 = 5;
20619 
20620       for (i = 0; i < len1 ; i++) {
20621         AV *vec = newAV();
20622         for (j = 0; j < len2; j++) {
20623           SV *v = newSViv(result[i][j]);
20624           if (!av_store(vec, j, v))
20625           SvREFCNT_dec(v);
20626         }
20627         /* store reference to array */
20628         av_store(arr, i, newRV_noinc((SV*) vec));
20629       }
20630 
20631       ST(argvi) = newRV_noinc((SV*) arr );
20632       sv_2mortal( ST(argvi) );
20633       argvi++;
20634     }
20635 
20636     XSRETURN(argvi);
20637   fail:
20638 
20639     SWIG_croak_null();
20640   }
20641 }
20642 
20643 
XS(_wrap_param_int11_get)20644 XS(_wrap_param_int11_get) {
20645   {
20646     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20647     void *argp1 = 0 ;
20648     int res1 = 0 ;
20649     int argvi = 0;
20650     int (*result)[NBPAIRS+1][5][5] = 0 ;
20651     dXSARGS;
20652 
20653     if ((items < 1) || (items > 1)) {
20654       SWIG_croak("Usage: param_int11_get(self);");
20655     }
20656     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20657     if (!SWIG_IsOK(res1)) {
20658       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_int11_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20659     }
20660     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20661     result = (int (*)[NBPAIRS+1][5][5])(int (*)[NBPAIRS+1][5][5]) ((arg1)->int11);
20662     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__int, 0 | 0); argvi++ ;
20663 
20664     XSRETURN(argvi);
20665   fail:
20666 
20667     SWIG_croak_null();
20668   }
20669 }
20670 
20671 
XS(_wrap_param_int21_get)20672 XS(_wrap_param_int21_get) {
20673   {
20674     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20675     void *argp1 = 0 ;
20676     int res1 = 0 ;
20677     int argvi = 0;
20678     int (*result)[NBPAIRS+1][5][5][5] = 0 ;
20679     dXSARGS;
20680 
20681     if ((items < 1) || (items > 1)) {
20682       SWIG_croak("Usage: param_int21_get(self);");
20683     }
20684     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20685     if (!SWIG_IsOK(res1)) {
20686       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_int21_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20687     }
20688     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20689     result = (int (*)[NBPAIRS+1][5][5][5])(int (*)[NBPAIRS+1][5][5][5]) ((arg1)->int21);
20690     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__a_5__int, 0 | 0); argvi++ ;
20691 
20692     XSRETURN(argvi);
20693   fail:
20694 
20695     SWIG_croak_null();
20696   }
20697 }
20698 
20699 
XS(_wrap_param_int22_get)20700 XS(_wrap_param_int22_get) {
20701   {
20702     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20703     void *argp1 = 0 ;
20704     int res1 = 0 ;
20705     int argvi = 0;
20706     int (*result)[NBPAIRS+1][5][5][5][5] = 0 ;
20707     dXSARGS;
20708 
20709     if ((items < 1) || (items > 1)) {
20710       SWIG_croak("Usage: param_int22_get(self);");
20711     }
20712     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20713     if (!SWIG_IsOK(res1)) {
20714       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_int22_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20715     }
20716     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20717     result = (int (*)[NBPAIRS+1][5][5][5][5])(int (*)[NBPAIRS+1][5][5][5][5]) ((arg1)->int22);
20718     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__int, 0 | 0); argvi++ ;
20719 
20720     XSRETURN(argvi);
20721   fail:
20722 
20723     SWIG_croak_null();
20724   }
20725 }
20726 
20727 
XS(_wrap_param_ninio_get)20728 XS(_wrap_param_ninio_get) {
20729   {
20730     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20731     void *argp1 = 0 ;
20732     int res1 = 0 ;
20733     int argvi = 0;
20734     int *result = 0 ;
20735     dXSARGS;
20736 
20737     if ((items < 1) || (items > 1)) {
20738       SWIG_croak("Usage: param_ninio_get(self);");
20739     }
20740     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20741     if (!SWIG_IsOK(res1)) {
20742       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_ninio_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20743     }
20744     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20745     result = (int *)(int *) ((arg1)->ninio);
20746     {
20747       AV* av = newAV();
20748       int i = 0,len = 0;
20749       len = 5;
20750 
20751       for (i = 0; i < len ; i++) {
20752         SV* perlval = newSV(0);
20753         sv_setiv(perlval, (IV)result[i]);
20754         av_push(av, perlval);
20755       }
20756       ST(argvi) = newRV_noinc((SV*) av );
20757       sv_2mortal( ST(argvi) );
20758       argvi++;
20759     }
20760 
20761     XSRETURN(argvi);
20762   fail:
20763 
20764     SWIG_croak_null();
20765   }
20766 }
20767 
20768 
XS(_wrap_param_lxc_get)20769 XS(_wrap_param_lxc_get) {
20770   {
20771     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20772     void *argp1 = 0 ;
20773     int res1 = 0 ;
20774     int argvi = 0;
20775     double result;
20776     dXSARGS;
20777 
20778     if ((items < 1) || (items > 1)) {
20779       SWIG_croak("Usage: param_lxc_get(self);");
20780     }
20781     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20782     if (!SWIG_IsOK(res1)) {
20783       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_lxc_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20784     }
20785     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20786     result = (double)(double) ((arg1)->lxc);
20787     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
20788 
20789     XSRETURN(argvi);
20790   fail:
20791 
20792     SWIG_croak_null();
20793   }
20794 }
20795 
20796 
XS(_wrap_param_MLbase_get)20797 XS(_wrap_param_MLbase_get) {
20798   {
20799     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20800     void *argp1 = 0 ;
20801     int res1 = 0 ;
20802     int argvi = 0;
20803     int result;
20804     dXSARGS;
20805 
20806     if ((items < 1) || (items > 1)) {
20807       SWIG_croak("Usage: param_MLbase_get(self);");
20808     }
20809     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20810     if (!SWIG_IsOK(res1)) {
20811       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_MLbase_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20812     }
20813     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20814     result = (int)(int) ((arg1)->MLbase);
20815     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
20816 
20817     XSRETURN(argvi);
20818   fail:
20819 
20820     SWIG_croak_null();
20821   }
20822 }
20823 
20824 
XS(_wrap_param_MLintern_get)20825 XS(_wrap_param_MLintern_get) {
20826   {
20827     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20828     void *argp1 = 0 ;
20829     int res1 = 0 ;
20830     int argvi = 0;
20831     int *result = 0 ;
20832     dXSARGS;
20833 
20834     if ((items < 1) || (items > 1)) {
20835       SWIG_croak("Usage: param_MLintern_get(self);");
20836     }
20837     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20838     if (!SWIG_IsOK(res1)) {
20839       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_MLintern_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20840     }
20841     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20842     result = (int *)(int *) ((arg1)->MLintern);
20843     {
20844       AV* av = newAV();
20845       int i = 0,len = 0;
20846       len = NBPAIRS+1;
20847 
20848       for (i = 0; i < len ; i++) {
20849         SV* perlval = newSV(0);
20850         sv_setiv(perlval, (IV)result[i]);
20851         av_push(av, perlval);
20852       }
20853       ST(argvi) = newRV_noinc((SV*) av );
20854       sv_2mortal( ST(argvi) );
20855       argvi++;
20856     }
20857 
20858     XSRETURN(argvi);
20859   fail:
20860 
20861     SWIG_croak_null();
20862   }
20863 }
20864 
20865 
XS(_wrap_param_MLclosing_get)20866 XS(_wrap_param_MLclosing_get) {
20867   {
20868     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20869     void *argp1 = 0 ;
20870     int res1 = 0 ;
20871     int argvi = 0;
20872     int result;
20873     dXSARGS;
20874 
20875     if ((items < 1) || (items > 1)) {
20876       SWIG_croak("Usage: param_MLclosing_get(self);");
20877     }
20878     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20879     if (!SWIG_IsOK(res1)) {
20880       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_MLclosing_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20881     }
20882     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20883     result = (int)(int) ((arg1)->MLclosing);
20884     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
20885 
20886     XSRETURN(argvi);
20887   fail:
20888 
20889     SWIG_croak_null();
20890   }
20891 }
20892 
20893 
XS(_wrap_param_TerminalAU_get)20894 XS(_wrap_param_TerminalAU_get) {
20895   {
20896     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20897     void *argp1 = 0 ;
20898     int res1 = 0 ;
20899     int argvi = 0;
20900     int result;
20901     dXSARGS;
20902 
20903     if ((items < 1) || (items > 1)) {
20904       SWIG_croak("Usage: param_TerminalAU_get(self);");
20905     }
20906     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20907     if (!SWIG_IsOK(res1)) {
20908       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_TerminalAU_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20909     }
20910     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20911     result = (int)(int) ((arg1)->TerminalAU);
20912     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
20913 
20914     XSRETURN(argvi);
20915   fail:
20916 
20917     SWIG_croak_null();
20918   }
20919 }
20920 
20921 
XS(_wrap_param_DuplexInit_get)20922 XS(_wrap_param_DuplexInit_get) {
20923   {
20924     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20925     void *argp1 = 0 ;
20926     int res1 = 0 ;
20927     int argvi = 0;
20928     int result;
20929     dXSARGS;
20930 
20931     if ((items < 1) || (items > 1)) {
20932       SWIG_croak("Usage: param_DuplexInit_get(self);");
20933     }
20934     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20935     if (!SWIG_IsOK(res1)) {
20936       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_DuplexInit_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20937     }
20938     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20939     result = (int)(int) ((arg1)->DuplexInit);
20940     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
20941 
20942     XSRETURN(argvi);
20943   fail:
20944 
20945     SWIG_croak_null();
20946   }
20947 }
20948 
20949 
XS(_wrap_param_Tetraloop_E_get)20950 XS(_wrap_param_Tetraloop_E_get) {
20951   {
20952     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20953     void *argp1 = 0 ;
20954     int res1 = 0 ;
20955     int argvi = 0;
20956     int *result = 0 ;
20957     dXSARGS;
20958 
20959     if ((items < 1) || (items > 1)) {
20960       SWIG_croak("Usage: param_Tetraloop_E_get(self);");
20961     }
20962     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
20963     if (!SWIG_IsOK(res1)) {
20964       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_Tetraloop_E_get" "', argument " "1"" of type '" "vrna_param_t *""'");
20965     }
20966     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
20967     result = (int *)(int *) ((arg1)->Tetraloop_E);
20968     {
20969       AV* av = newAV();
20970       int i = 0,len = 0;
20971       len = 200;
20972 
20973       for (i = 0; i < len ; i++) {
20974         SV* perlval = newSV(0);
20975         sv_setiv(perlval, (IV)result[i]);
20976         av_push(av, perlval);
20977       }
20978       ST(argvi) = newRV_noinc((SV*) av );
20979       sv_2mortal( ST(argvi) );
20980       argvi++;
20981     }
20982 
20983     XSRETURN(argvi);
20984   fail:
20985 
20986     SWIG_croak_null();
20987   }
20988 }
20989 
20990 
XS(_wrap_param_Tetraloops_get)20991 XS(_wrap_param_Tetraloops_get) {
20992   {
20993     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
20994     void *argp1 = 0 ;
20995     int res1 = 0 ;
20996     int argvi = 0;
20997     char *result = 0 ;
20998     dXSARGS;
20999 
21000     if ((items < 1) || (items > 1)) {
21001       SWIG_croak("Usage: param_Tetraloops_get(self);");
21002     }
21003     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
21004     if (!SWIG_IsOK(res1)) {
21005       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_Tetraloops_get" "', argument " "1"" of type '" "vrna_param_t *""'");
21006     }
21007     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21008     result = (char *)(char *) ((arg1)->Tetraloops);
21009     {
21010       size_t size = SWIG_strnlen(result, 1401);
21011 
21012 
21013 
21014       ST(argvi) = SWIG_FromCharPtrAndSize(result, size); argvi++ ;
21015     }
21016 
21017     XSRETURN(argvi);
21018   fail:
21019 
21020     SWIG_croak_null();
21021   }
21022 }
21023 
21024 
XS(_wrap_param_Triloop_E_get)21025 XS(_wrap_param_Triloop_E_get) {
21026   {
21027     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
21028     void *argp1 = 0 ;
21029     int res1 = 0 ;
21030     int argvi = 0;
21031     int *result = 0 ;
21032     dXSARGS;
21033 
21034     if ((items < 1) || (items > 1)) {
21035       SWIG_croak("Usage: param_Triloop_E_get(self);");
21036     }
21037     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
21038     if (!SWIG_IsOK(res1)) {
21039       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_Triloop_E_get" "', argument " "1"" of type '" "vrna_param_t *""'");
21040     }
21041     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21042     result = (int *)(int *) ((arg1)->Triloop_E);
21043     {
21044       AV* av = newAV();
21045       int i = 0,len = 0;
21046       len = 40;
21047 
21048       for (i = 0; i < len ; i++) {
21049         SV* perlval = newSV(0);
21050         sv_setiv(perlval, (IV)result[i]);
21051         av_push(av, perlval);
21052       }
21053       ST(argvi) = newRV_noinc((SV*) av );
21054       sv_2mortal( ST(argvi) );
21055       argvi++;
21056     }
21057 
21058     XSRETURN(argvi);
21059   fail:
21060 
21061     SWIG_croak_null();
21062   }
21063 }
21064 
21065 
XS(_wrap_param_Triloops_get)21066 XS(_wrap_param_Triloops_get) {
21067   {
21068     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
21069     void *argp1 = 0 ;
21070     int res1 = 0 ;
21071     int argvi = 0;
21072     char *result = 0 ;
21073     dXSARGS;
21074 
21075     if ((items < 1) || (items > 1)) {
21076       SWIG_croak("Usage: param_Triloops_get(self);");
21077     }
21078     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
21079     if (!SWIG_IsOK(res1)) {
21080       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_Triloops_get" "', argument " "1"" of type '" "vrna_param_t *""'");
21081     }
21082     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21083     result = (char *)(char *) ((arg1)->Triloops);
21084     {
21085       size_t size = SWIG_strnlen(result, 241);
21086 
21087 
21088 
21089       ST(argvi) = SWIG_FromCharPtrAndSize(result, size); argvi++ ;
21090     }
21091 
21092     XSRETURN(argvi);
21093   fail:
21094 
21095     SWIG_croak_null();
21096   }
21097 }
21098 
21099 
XS(_wrap_param_Hexaloop_E_get)21100 XS(_wrap_param_Hexaloop_E_get) {
21101   {
21102     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
21103     void *argp1 = 0 ;
21104     int res1 = 0 ;
21105     int argvi = 0;
21106     int *result = 0 ;
21107     dXSARGS;
21108 
21109     if ((items < 1) || (items > 1)) {
21110       SWIG_croak("Usage: param_Hexaloop_E_get(self);");
21111     }
21112     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
21113     if (!SWIG_IsOK(res1)) {
21114       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_Hexaloop_E_get" "', argument " "1"" of type '" "vrna_param_t *""'");
21115     }
21116     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21117     result = (int *)(int *) ((arg1)->Hexaloop_E);
21118     {
21119       AV* av = newAV();
21120       int i = 0,len = 0;
21121       len = 40;
21122 
21123       for (i = 0; i < len ; i++) {
21124         SV* perlval = newSV(0);
21125         sv_setiv(perlval, (IV)result[i]);
21126         av_push(av, perlval);
21127       }
21128       ST(argvi) = newRV_noinc((SV*) av );
21129       sv_2mortal( ST(argvi) );
21130       argvi++;
21131     }
21132 
21133     XSRETURN(argvi);
21134   fail:
21135 
21136     SWIG_croak_null();
21137   }
21138 }
21139 
21140 
XS(_wrap_param_Hexaloops_get)21141 XS(_wrap_param_Hexaloops_get) {
21142   {
21143     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
21144     void *argp1 = 0 ;
21145     int res1 = 0 ;
21146     int argvi = 0;
21147     char *result = 0 ;
21148     dXSARGS;
21149 
21150     if ((items < 1) || (items > 1)) {
21151       SWIG_croak("Usage: param_Hexaloops_get(self);");
21152     }
21153     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
21154     if (!SWIG_IsOK(res1)) {
21155       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_Hexaloops_get" "', argument " "1"" of type '" "vrna_param_t *""'");
21156     }
21157     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21158     result = (char *)(char *) ((arg1)->Hexaloops);
21159     {
21160       size_t size = SWIG_strnlen(result, 1801);
21161 
21162 
21163 
21164       ST(argvi) = SWIG_FromCharPtrAndSize(result, size); argvi++ ;
21165     }
21166 
21167     XSRETURN(argvi);
21168   fail:
21169 
21170     SWIG_croak_null();
21171   }
21172 }
21173 
21174 
XS(_wrap_param_TripleC_get)21175 XS(_wrap_param_TripleC_get) {
21176   {
21177     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
21178     void *argp1 = 0 ;
21179     int res1 = 0 ;
21180     int argvi = 0;
21181     int result;
21182     dXSARGS;
21183 
21184     if ((items < 1) || (items > 1)) {
21185       SWIG_croak("Usage: param_TripleC_get(self);");
21186     }
21187     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
21188     if (!SWIG_IsOK(res1)) {
21189       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_TripleC_get" "', argument " "1"" of type '" "vrna_param_t *""'");
21190     }
21191     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21192     result = (int)(int) ((arg1)->TripleC);
21193     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
21194 
21195     XSRETURN(argvi);
21196   fail:
21197 
21198     SWIG_croak_null();
21199   }
21200 }
21201 
21202 
XS(_wrap_param_MultipleCA_get)21203 XS(_wrap_param_MultipleCA_get) {
21204   {
21205     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
21206     void *argp1 = 0 ;
21207     int res1 = 0 ;
21208     int argvi = 0;
21209     int result;
21210     dXSARGS;
21211 
21212     if ((items < 1) || (items > 1)) {
21213       SWIG_croak("Usage: param_MultipleCA_get(self);");
21214     }
21215     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
21216     if (!SWIG_IsOK(res1)) {
21217       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_MultipleCA_get" "', argument " "1"" of type '" "vrna_param_t *""'");
21218     }
21219     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21220     result = (int)(int) ((arg1)->MultipleCA);
21221     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
21222 
21223     XSRETURN(argvi);
21224   fail:
21225 
21226     SWIG_croak_null();
21227   }
21228 }
21229 
21230 
XS(_wrap_param_MultipleCB_get)21231 XS(_wrap_param_MultipleCB_get) {
21232   {
21233     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
21234     void *argp1 = 0 ;
21235     int res1 = 0 ;
21236     int argvi = 0;
21237     int result;
21238     dXSARGS;
21239 
21240     if ((items < 1) || (items > 1)) {
21241       SWIG_croak("Usage: param_MultipleCB_get(self);");
21242     }
21243     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
21244     if (!SWIG_IsOK(res1)) {
21245       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_MultipleCB_get" "', argument " "1"" of type '" "vrna_param_t *""'");
21246     }
21247     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21248     result = (int)(int) ((arg1)->MultipleCB);
21249     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
21250 
21251     XSRETURN(argvi);
21252   fail:
21253 
21254     SWIG_croak_null();
21255   }
21256 }
21257 
21258 
XS(_wrap_param_gquad_get)21259 XS(_wrap_param_gquad_get) {
21260   {
21261     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
21262     void *argp1 = 0 ;
21263     int res1 = 0 ;
21264     int argvi = 0;
21265     int (*result)[3*VRNA_GQUAD_MAX_LINKER_LENGTH+1] = 0 ;
21266     dXSARGS;
21267 
21268     if ((items < 1) || (items > 1)) {
21269       SWIG_croak("Usage: param_gquad_get(self);");
21270     }
21271     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
21272     if (!SWIG_IsOK(res1)) {
21273       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_gquad_get" "', argument " "1"" of type '" "vrna_param_t *""'");
21274     }
21275     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21276     result = (int (*)[3*VRNA_GQUAD_MAX_LINKER_LENGTH+1])(int (*)[3*VRNA_GQUAD_MAX_LINKER_LENGTH+1]) ((arg1)->gquad);
21277     {
21278       AV *arr = newAV();
21279       int i,j = 0, len1 = 0, len2 = 0;
21280 
21281       len1 = VRNA_GQUAD_MAX_STACK_SIZE+1;
21282       len2 = 3*VRNA_GQUAD_MAX_LINKER_LENGTH+1;
21283 
21284       for (i = 0; i < len1 ; i++) {
21285         AV *vec = newAV();
21286         for (j = 0; j < len2; j++) {
21287           SV *v = newSViv(result[i][j]);
21288           if (!av_store(vec, j, v))
21289           SvREFCNT_dec(v);
21290         }
21291         /* store reference to array */
21292         av_store(arr, i, newRV_noinc((SV*) vec));
21293       }
21294 
21295       ST(argvi) = newRV_noinc((SV*) arr );
21296       sv_2mortal( ST(argvi) );
21297       argvi++;
21298     }
21299 
21300     XSRETURN(argvi);
21301   fail:
21302 
21303     SWIG_croak_null();
21304   }
21305 }
21306 
21307 
XS(_wrap_param_gquadLayerMismatch_get)21308 XS(_wrap_param_gquadLayerMismatch_get) {
21309   {
21310     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
21311     void *argp1 = 0 ;
21312     int res1 = 0 ;
21313     int argvi = 0;
21314     int result;
21315     dXSARGS;
21316 
21317     if ((items < 1) || (items > 1)) {
21318       SWIG_croak("Usage: param_gquadLayerMismatch_get(self);");
21319     }
21320     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
21321     if (!SWIG_IsOK(res1)) {
21322       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_gquadLayerMismatch_get" "', argument " "1"" of type '" "vrna_param_t *""'");
21323     }
21324     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21325     result = (int)(int) ((arg1)->gquadLayerMismatch);
21326     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
21327 
21328     XSRETURN(argvi);
21329   fail:
21330 
21331     SWIG_croak_null();
21332   }
21333 }
21334 
21335 
XS(_wrap_param_gquadLayerMismatchMax_get)21336 XS(_wrap_param_gquadLayerMismatchMax_get) {
21337   {
21338     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
21339     void *argp1 = 0 ;
21340     int res1 = 0 ;
21341     int argvi = 0;
21342     int result;
21343     dXSARGS;
21344 
21345     if ((items < 1) || (items > 1)) {
21346       SWIG_croak("Usage: param_gquadLayerMismatchMax_get(self);");
21347     }
21348     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
21349     if (!SWIG_IsOK(res1)) {
21350       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_gquadLayerMismatchMax_get" "', argument " "1"" of type '" "vrna_param_t *""'");
21351     }
21352     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21353     result = (int)(int) ((arg1)->gquadLayerMismatchMax);
21354     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
21355 
21356     XSRETURN(argvi);
21357   fail:
21358 
21359     SWIG_croak_null();
21360   }
21361 }
21362 
21363 
XS(_wrap_param_temperature_get)21364 XS(_wrap_param_temperature_get) {
21365   {
21366     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
21367     void *argp1 = 0 ;
21368     int res1 = 0 ;
21369     int argvi = 0;
21370     double result;
21371     dXSARGS;
21372 
21373     if ((items < 1) || (items > 1)) {
21374       SWIG_croak("Usage: param_temperature_get(self);");
21375     }
21376     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
21377     if (!SWIG_IsOK(res1)) {
21378       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_temperature_get" "', argument " "1"" of type '" "vrna_param_t *""'");
21379     }
21380     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21381     result = (double)(double) ((arg1)->temperature);
21382     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
21383 
21384     XSRETURN(argvi);
21385   fail:
21386 
21387     SWIG_croak_null();
21388   }
21389 }
21390 
21391 
XS(_wrap_param_model_details_get)21392 XS(_wrap_param_model_details_get) {
21393   {
21394     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
21395     void *argp1 = 0 ;
21396     int res1 = 0 ;
21397     int argvi = 0;
21398     vrna_md_t *result = 0 ;
21399     dXSARGS;
21400 
21401     if ((items < 1) || (items > 1)) {
21402       SWIG_croak("Usage: param_model_details_get(self);");
21403     }
21404     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
21405     if (!SWIG_IsOK(res1)) {
21406       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_model_details_get" "', argument " "1"" of type '" "vrna_param_t *""'");
21407     }
21408     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21409     result = (vrna_md_t *)& ((arg1)->model_details);
21410     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, 0 | SWIG_SHADOW); argvi++ ;
21411 
21412     XSRETURN(argvi);
21413   fail:
21414 
21415     SWIG_croak_null();
21416   }
21417 }
21418 
21419 
XS(_wrap_param_param_file_get)21420 XS(_wrap_param_param_file_get) {
21421   {
21422     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
21423     void *argp1 = 0 ;
21424     int res1 = 0 ;
21425     int argvi = 0;
21426     char *result = 0 ;
21427     dXSARGS;
21428 
21429     if ((items < 1) || (items > 1)) {
21430       SWIG_croak("Usage: param_param_file_get(self);");
21431     }
21432     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, 0 |  0 );
21433     if (!SWIG_IsOK(res1)) {
21434       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "param_param_file_get" "', argument " "1"" of type '" "vrna_param_t *""'");
21435     }
21436     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21437     result = (char *)(char *) ((arg1)->param_file);
21438     {
21439       size_t size = SWIG_strnlen(result, 256);
21440 
21441 
21442 
21443       ST(argvi) = SWIG_FromCharPtrAndSize(result, size); argvi++ ;
21444     }
21445 
21446     XSRETURN(argvi);
21447   fail:
21448 
21449     SWIG_croak_null();
21450   }
21451 }
21452 
21453 
XS(_wrap_new_param__SWIG_0)21454 XS(_wrap_new_param__SWIG_0) {
21455   {
21456     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
21457     void *argp1 = 0 ;
21458     int res1 = 0 ;
21459     int argvi = 0;
21460     vrna_param_t *result = 0 ;
21461     dXSARGS;
21462 
21463     if ((items < 1) || (items > 1)) {
21464       SWIG_croak("Usage: new_param(model_details);");
21465     }
21466     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
21467     if (!SWIG_IsOK(res1)) {
21468       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_param" "', argument " "1"" of type '" "vrna_md_t *""'");
21469     }
21470     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
21471     {
21472       try {
21473         result = (vrna_param_t *)new_vrna_param_t__SWIG_0(arg1);
21474       } catch (const std::exception& e) {
21475         SWIG_exception(SWIG_RuntimeError, e.what());
21476       }
21477     }
21478     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_param_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
21479 
21480     XSRETURN(argvi);
21481   fail:
21482 
21483     SWIG_croak_null();
21484   }
21485 }
21486 
21487 
XS(_wrap_new_param__SWIG_1)21488 XS(_wrap_new_param__SWIG_1) {
21489   {
21490     int argvi = 0;
21491     vrna_param_t *result = 0 ;
21492     dXSARGS;
21493 
21494     if ((items < 0) || (items > 0)) {
21495       SWIG_croak("Usage: new_param();");
21496     }
21497     {
21498       try {
21499         result = (vrna_param_t *)new_vrna_param_t__SWIG_0();
21500       } catch (const std::exception& e) {
21501         SWIG_exception(SWIG_RuntimeError, e.what());
21502       }
21503     }
21504     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_param_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
21505     XSRETURN(argvi);
21506   fail:
21507     SWIG_croak_null();
21508   }
21509 }
21510 
21511 
XS(_wrap_new_param)21512 XS(_wrap_new_param) {
21513   dXSARGS;
21514 
21515   {
21516     unsigned long _index = 0;
21517     SWIG_TypeRank _rank = 0;
21518     if (items == 0) {
21519       SWIG_TypeRank _ranki = 0;
21520       SWIG_TypeRank _rankm = 0;
21521       if (!_index || (_ranki < _rank)) {
21522         _rank = _ranki; _index = 1;
21523         if (_rank == _rankm) goto dispatch;
21524       }
21525     }
21526     if (items == 1) {
21527       SWIG_TypeRank _ranki = 0;
21528       SWIG_TypeRank _rankm = 0;
21529       SWIG_TypeRank _pi = 1;
21530       int _v = 0;
21531       {
21532         void *vptr = 0;
21533         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_md_t, 0);
21534         _v = SWIG_CheckState(res);
21535       }
21536       if (!_v) goto check_2;
21537       _ranki += _v*_pi;
21538       _rankm += _pi;
21539       _pi *= SWIG_MAXCASTRANK;
21540       if (!_index || (_ranki < _rank)) {
21541         _rank = _ranki; _index = 2;
21542         if (_rank == _rankm) goto dispatch;
21543       }
21544     }
21545   check_2:
21546 
21547   dispatch:
21548     switch(_index) {
21549     case 1:
21550       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_param__SWIG_1); return;
21551     case 2:
21552       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_param__SWIG_0); return;
21553     }
21554   }
21555 
21556   croak("No matching function for overloaded 'new_param'");
21557   XSRETURN(0);
21558 }
21559 
21560 
XS(_wrap_delete_param)21561 XS(_wrap_delete_param) {
21562   {
21563     vrna_param_t *arg1 = (vrna_param_t *) 0 ;
21564     void *argp1 = 0 ;
21565     int res1 = 0 ;
21566     int argvi = 0;
21567     dXSARGS;
21568 
21569     if ((items < 1) || (items > 1)) {
21570       SWIG_croak("Usage: delete_param(self);");
21571     }
21572     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_param_t, SWIG_POINTER_DISOWN |  0 );
21573     if (!SWIG_IsOK(res1)) {
21574       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_param" "', argument " "1"" of type '" "vrna_param_t *""'");
21575     }
21576     arg1 = reinterpret_cast< vrna_param_t * >(argp1);
21577     {
21578       try {
21579         delete arg1;
21580       } catch (const std::exception& e) {
21581         SWIG_exception(SWIG_RuntimeError, e.what());
21582       }
21583     }
21584     ST(argvi) = &PL_sv_undef;
21585 
21586     XSRETURN(argvi);
21587   fail:
21588 
21589     SWIG_croak_null();
21590   }
21591 }
21592 
21593 
XS(_wrap_exp_param_id_get)21594 XS(_wrap_exp_param_id_get) {
21595   {
21596     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21597     void *argp1 = 0 ;
21598     int res1 = 0 ;
21599     int argvi = 0;
21600     int result;
21601     dXSARGS;
21602 
21603     if ((items < 1) || (items > 1)) {
21604       SWIG_croak("Usage: exp_param_id_get(self);");
21605     }
21606     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21607     if (!SWIG_IsOK(res1)) {
21608       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_id_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
21609     }
21610     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
21611     result = (int)(int) ((arg1)->id);
21612     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
21613 
21614     XSRETURN(argvi);
21615   fail:
21616 
21617     SWIG_croak_null();
21618   }
21619 }
21620 
21621 
XS(_wrap_exp_param_expstack_get)21622 XS(_wrap_exp_param_expstack_get) {
21623   {
21624     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21625     void *argp1 = 0 ;
21626     int res1 = 0 ;
21627     int argvi = 0;
21628     double (*result)[NBPAIRS+1] = 0 ;
21629     dXSARGS;
21630 
21631     if ((items < 1) || (items > 1)) {
21632       SWIG_croak("Usage: exp_param_expstack_get(self);");
21633     }
21634     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21635     if (!SWIG_IsOK(res1)) {
21636       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expstack_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
21637     }
21638     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
21639     result = (double (*)[NBPAIRS+1])(double (*)[NBPAIRS+1]) ((arg1)->expstack);
21640     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_NBPAIRS_1__double, 0 | 0); argvi++ ;
21641 
21642     XSRETURN(argvi);
21643   fail:
21644 
21645     SWIG_croak_null();
21646   }
21647 }
21648 
21649 
XS(_wrap_exp_param_exphairpin_get)21650 XS(_wrap_exp_param_exphairpin_get) {
21651   {
21652     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21653     void *argp1 = 0 ;
21654     int res1 = 0 ;
21655     int argvi = 0;
21656     double *result = 0 ;
21657     dXSARGS;
21658 
21659     if ((items < 1) || (items > 1)) {
21660       SWIG_croak("Usage: exp_param_exphairpin_get(self);");
21661     }
21662     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21663     if (!SWIG_IsOK(res1)) {
21664       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_exphairpin_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
21665     }
21666     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
21667     result = (double *)(double *) ((arg1)->exphairpin);
21668     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_double, 0 | 0); argvi++ ;
21669 
21670     XSRETURN(argvi);
21671   fail:
21672 
21673     SWIG_croak_null();
21674   }
21675 }
21676 
21677 
XS(_wrap_exp_param_expbulge_get)21678 XS(_wrap_exp_param_expbulge_get) {
21679   {
21680     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21681     void *argp1 = 0 ;
21682     int res1 = 0 ;
21683     int argvi = 0;
21684     double *result = 0 ;
21685     dXSARGS;
21686 
21687     if ((items < 1) || (items > 1)) {
21688       SWIG_croak("Usage: exp_param_expbulge_get(self);");
21689     }
21690     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21691     if (!SWIG_IsOK(res1)) {
21692       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expbulge_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
21693     }
21694     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
21695     result = (double *)(double *) ((arg1)->expbulge);
21696     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_double, 0 | 0); argvi++ ;
21697 
21698     XSRETURN(argvi);
21699   fail:
21700 
21701     SWIG_croak_null();
21702   }
21703 }
21704 
21705 
XS(_wrap_exp_param_expinternal_get)21706 XS(_wrap_exp_param_expinternal_get) {
21707   {
21708     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21709     void *argp1 = 0 ;
21710     int res1 = 0 ;
21711     int argvi = 0;
21712     double *result = 0 ;
21713     dXSARGS;
21714 
21715     if ((items < 1) || (items > 1)) {
21716       SWIG_croak("Usage: exp_param_expinternal_get(self);");
21717     }
21718     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21719     if (!SWIG_IsOK(res1)) {
21720       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expinternal_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
21721     }
21722     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
21723     result = (double *)(double *) ((arg1)->expinternal);
21724     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_double, 0 | 0); argvi++ ;
21725 
21726     XSRETURN(argvi);
21727   fail:
21728 
21729     SWIG_croak_null();
21730   }
21731 }
21732 
21733 
XS(_wrap_exp_param_expmismatchExt_get)21734 XS(_wrap_exp_param_expmismatchExt_get) {
21735   {
21736     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21737     void *argp1 = 0 ;
21738     int res1 = 0 ;
21739     int argvi = 0;
21740     double (*result)[5][5] = 0 ;
21741     dXSARGS;
21742 
21743     if ((items < 1) || (items > 1)) {
21744       SWIG_croak("Usage: exp_param_expmismatchExt_get(self);");
21745     }
21746     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21747     if (!SWIG_IsOK(res1)) {
21748       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expmismatchExt_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
21749     }
21750     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
21751     result = (double (*)[5][5])(double (*)[5][5]) ((arg1)->expmismatchExt);
21752     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_5__a_5__double, 0 | 0); argvi++ ;
21753 
21754     XSRETURN(argvi);
21755   fail:
21756 
21757     SWIG_croak_null();
21758   }
21759 }
21760 
21761 
XS(_wrap_exp_param_expmismatchI_get)21762 XS(_wrap_exp_param_expmismatchI_get) {
21763   {
21764     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21765     void *argp1 = 0 ;
21766     int res1 = 0 ;
21767     int argvi = 0;
21768     double (*result)[5][5] = 0 ;
21769     dXSARGS;
21770 
21771     if ((items < 1) || (items > 1)) {
21772       SWIG_croak("Usage: exp_param_expmismatchI_get(self);");
21773     }
21774     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21775     if (!SWIG_IsOK(res1)) {
21776       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expmismatchI_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
21777     }
21778     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
21779     result = (double (*)[5][5])(double (*)[5][5]) ((arg1)->expmismatchI);
21780     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_5__a_5__double, 0 | 0); argvi++ ;
21781 
21782     XSRETURN(argvi);
21783   fail:
21784 
21785     SWIG_croak_null();
21786   }
21787 }
21788 
21789 
XS(_wrap_exp_param_expmismatch23I_get)21790 XS(_wrap_exp_param_expmismatch23I_get) {
21791   {
21792     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21793     void *argp1 = 0 ;
21794     int res1 = 0 ;
21795     int argvi = 0;
21796     double (*result)[5][5] = 0 ;
21797     dXSARGS;
21798 
21799     if ((items < 1) || (items > 1)) {
21800       SWIG_croak("Usage: exp_param_expmismatch23I_get(self);");
21801     }
21802     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21803     if (!SWIG_IsOK(res1)) {
21804       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expmismatch23I_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
21805     }
21806     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
21807     result = (double (*)[5][5])(double (*)[5][5]) ((arg1)->expmismatch23I);
21808     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_5__a_5__double, 0 | 0); argvi++ ;
21809 
21810     XSRETURN(argvi);
21811   fail:
21812 
21813     SWIG_croak_null();
21814   }
21815 }
21816 
21817 
XS(_wrap_exp_param_expmismatch1nI_get)21818 XS(_wrap_exp_param_expmismatch1nI_get) {
21819   {
21820     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21821     void *argp1 = 0 ;
21822     int res1 = 0 ;
21823     int argvi = 0;
21824     double (*result)[5][5] = 0 ;
21825     dXSARGS;
21826 
21827     if ((items < 1) || (items > 1)) {
21828       SWIG_croak("Usage: exp_param_expmismatch1nI_get(self);");
21829     }
21830     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21831     if (!SWIG_IsOK(res1)) {
21832       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expmismatch1nI_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
21833     }
21834     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
21835     result = (double (*)[5][5])(double (*)[5][5]) ((arg1)->expmismatch1nI);
21836     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_5__a_5__double, 0 | 0); argvi++ ;
21837 
21838     XSRETURN(argvi);
21839   fail:
21840 
21841     SWIG_croak_null();
21842   }
21843 }
21844 
21845 
XS(_wrap_exp_param_expmismatchH_get)21846 XS(_wrap_exp_param_expmismatchH_get) {
21847   {
21848     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21849     void *argp1 = 0 ;
21850     int res1 = 0 ;
21851     int argvi = 0;
21852     double (*result)[5][5] = 0 ;
21853     dXSARGS;
21854 
21855     if ((items < 1) || (items > 1)) {
21856       SWIG_croak("Usage: exp_param_expmismatchH_get(self);");
21857     }
21858     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21859     if (!SWIG_IsOK(res1)) {
21860       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expmismatchH_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
21861     }
21862     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
21863     result = (double (*)[5][5])(double (*)[5][5]) ((arg1)->expmismatchH);
21864     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_5__a_5__double, 0 | 0); argvi++ ;
21865 
21866     XSRETURN(argvi);
21867   fail:
21868 
21869     SWIG_croak_null();
21870   }
21871 }
21872 
21873 
XS(_wrap_exp_param_expmismatchM_get)21874 XS(_wrap_exp_param_expmismatchM_get) {
21875   {
21876     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21877     void *argp1 = 0 ;
21878     int res1 = 0 ;
21879     int argvi = 0;
21880     double (*result)[5][5] = 0 ;
21881     dXSARGS;
21882 
21883     if ((items < 1) || (items > 1)) {
21884       SWIG_croak("Usage: exp_param_expmismatchM_get(self);");
21885     }
21886     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21887     if (!SWIG_IsOK(res1)) {
21888       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expmismatchM_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
21889     }
21890     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
21891     result = (double (*)[5][5])(double (*)[5][5]) ((arg1)->expmismatchM);
21892     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_5__a_5__double, 0 | 0); argvi++ ;
21893 
21894     XSRETURN(argvi);
21895   fail:
21896 
21897     SWIG_croak_null();
21898   }
21899 }
21900 
21901 
XS(_wrap_exp_param_expdangle5_get)21902 XS(_wrap_exp_param_expdangle5_get) {
21903   {
21904     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21905     void *argp1 = 0 ;
21906     int res1 = 0 ;
21907     int argvi = 0;
21908     double (*result)[5] = 0 ;
21909     dXSARGS;
21910 
21911     if ((items < 1) || (items > 1)) {
21912       SWIG_croak("Usage: exp_param_expdangle5_get(self);");
21913     }
21914     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21915     if (!SWIG_IsOK(res1)) {
21916       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expdangle5_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
21917     }
21918     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
21919     result = (double (*)[5])(double (*)[5]) ((arg1)->expdangle5);
21920     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_5__double, 0 | 0); argvi++ ;
21921 
21922     XSRETURN(argvi);
21923   fail:
21924 
21925     SWIG_croak_null();
21926   }
21927 }
21928 
21929 
XS(_wrap_exp_param_expdangle3_get)21930 XS(_wrap_exp_param_expdangle3_get) {
21931   {
21932     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21933     void *argp1 = 0 ;
21934     int res1 = 0 ;
21935     int argvi = 0;
21936     double (*result)[5] = 0 ;
21937     dXSARGS;
21938 
21939     if ((items < 1) || (items > 1)) {
21940       SWIG_croak("Usage: exp_param_expdangle3_get(self);");
21941     }
21942     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21943     if (!SWIG_IsOK(res1)) {
21944       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expdangle3_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
21945     }
21946     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
21947     result = (double (*)[5])(double (*)[5]) ((arg1)->expdangle3);
21948     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_5__double, 0 | 0); argvi++ ;
21949 
21950     XSRETURN(argvi);
21951   fail:
21952 
21953     SWIG_croak_null();
21954   }
21955 }
21956 
21957 
XS(_wrap_exp_param_expint11_get)21958 XS(_wrap_exp_param_expint11_get) {
21959   {
21960     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21961     void *argp1 = 0 ;
21962     int res1 = 0 ;
21963     int argvi = 0;
21964     double (*result)[NBPAIRS+1][5][5] = 0 ;
21965     dXSARGS;
21966 
21967     if ((items < 1) || (items > 1)) {
21968       SWIG_croak("Usage: exp_param_expint11_get(self);");
21969     }
21970     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21971     if (!SWIG_IsOK(res1)) {
21972       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expint11_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
21973     }
21974     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
21975     result = (double (*)[NBPAIRS+1][5][5])(double (*)[NBPAIRS+1][5][5]) ((arg1)->expint11);
21976     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__double, 0 | 0); argvi++ ;
21977 
21978     XSRETURN(argvi);
21979   fail:
21980 
21981     SWIG_croak_null();
21982   }
21983 }
21984 
21985 
XS(_wrap_exp_param_expint21_get)21986 XS(_wrap_exp_param_expint21_get) {
21987   {
21988     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
21989     void *argp1 = 0 ;
21990     int res1 = 0 ;
21991     int argvi = 0;
21992     double (*result)[NBPAIRS+1][5][5][5] = 0 ;
21993     dXSARGS;
21994 
21995     if ((items < 1) || (items > 1)) {
21996       SWIG_croak("Usage: exp_param_expint21_get(self);");
21997     }
21998     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
21999     if (!SWIG_IsOK(res1)) {
22000       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expint21_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22001     }
22002     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22003     result = (double (*)[NBPAIRS+1][5][5][5])(double (*)[NBPAIRS+1][5][5][5]) ((arg1)->expint21);
22004     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__a_5__double, 0 | 0); argvi++ ;
22005 
22006     XSRETURN(argvi);
22007   fail:
22008 
22009     SWIG_croak_null();
22010   }
22011 }
22012 
22013 
XS(_wrap_exp_param_expint22_get)22014 XS(_wrap_exp_param_expint22_get) {
22015   {
22016     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22017     void *argp1 = 0 ;
22018     int res1 = 0 ;
22019     int argvi = 0;
22020     double (*result)[NBPAIRS+1][5][5][5][5] = 0 ;
22021     dXSARGS;
22022 
22023     if ((items < 1) || (items > 1)) {
22024       SWIG_croak("Usage: exp_param_expint22_get(self);");
22025     }
22026     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22027     if (!SWIG_IsOK(res1)) {
22028       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expint22_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22029     }
22030     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22031     result = (double (*)[NBPAIRS+1][5][5][5][5])(double (*)[NBPAIRS+1][5][5][5][5]) ((arg1)->expint22);
22032     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__double, 0 | 0); argvi++ ;
22033 
22034     XSRETURN(argvi);
22035   fail:
22036 
22037     SWIG_croak_null();
22038   }
22039 }
22040 
22041 
XS(_wrap_exp_param_expninio_get)22042 XS(_wrap_exp_param_expninio_get) {
22043   {
22044     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22045     void *argp1 = 0 ;
22046     int res1 = 0 ;
22047     int argvi = 0;
22048     double (*result)[MAXLOOP+1] = 0 ;
22049     dXSARGS;
22050 
22051     if ((items < 1) || (items > 1)) {
22052       SWIG_croak("Usage: exp_param_expninio_get(self);");
22053     }
22054     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22055     if (!SWIG_IsOK(res1)) {
22056       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expninio_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22057     }
22058     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22059     result = (double (*)[MAXLOOP+1])(double (*)[MAXLOOP+1]) ((arg1)->expninio);
22060     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_MAXLOOP_1__double, 0 | 0); argvi++ ;
22061 
22062     XSRETURN(argvi);
22063   fail:
22064 
22065     SWIG_croak_null();
22066   }
22067 }
22068 
22069 
XS(_wrap_exp_param_lxc_get)22070 XS(_wrap_exp_param_lxc_get) {
22071   {
22072     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22073     void *argp1 = 0 ;
22074     int res1 = 0 ;
22075     int argvi = 0;
22076     double result;
22077     dXSARGS;
22078 
22079     if ((items < 1) || (items > 1)) {
22080       SWIG_croak("Usage: exp_param_lxc_get(self);");
22081     }
22082     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22083     if (!SWIG_IsOK(res1)) {
22084       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_lxc_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22085     }
22086     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22087     result = (double)(double) ((arg1)->lxc);
22088     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
22089 
22090     XSRETURN(argvi);
22091   fail:
22092 
22093     SWIG_croak_null();
22094   }
22095 }
22096 
22097 
XS(_wrap_exp_param_expMLbase_get)22098 XS(_wrap_exp_param_expMLbase_get) {
22099   {
22100     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22101     void *argp1 = 0 ;
22102     int res1 = 0 ;
22103     int argvi = 0;
22104     double result;
22105     dXSARGS;
22106 
22107     if ((items < 1) || (items > 1)) {
22108       SWIG_croak("Usage: exp_param_expMLbase_get(self);");
22109     }
22110     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22111     if (!SWIG_IsOK(res1)) {
22112       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expMLbase_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22113     }
22114     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22115     result = (double)(double) ((arg1)->expMLbase);
22116     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
22117 
22118     XSRETURN(argvi);
22119   fail:
22120 
22121     SWIG_croak_null();
22122   }
22123 }
22124 
22125 
XS(_wrap_exp_param_expMLintern_get)22126 XS(_wrap_exp_param_expMLintern_get) {
22127   {
22128     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22129     void *argp1 = 0 ;
22130     int res1 = 0 ;
22131     int argvi = 0;
22132     double *result = 0 ;
22133     dXSARGS;
22134 
22135     if ((items < 1) || (items > 1)) {
22136       SWIG_croak("Usage: exp_param_expMLintern_get(self);");
22137     }
22138     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22139     if (!SWIG_IsOK(res1)) {
22140       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expMLintern_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22141     }
22142     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22143     result = (double *)(double *) ((arg1)->expMLintern);
22144     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_double, 0 | 0); argvi++ ;
22145 
22146     XSRETURN(argvi);
22147   fail:
22148 
22149     SWIG_croak_null();
22150   }
22151 }
22152 
22153 
XS(_wrap_exp_param_expMLclosing_get)22154 XS(_wrap_exp_param_expMLclosing_get) {
22155   {
22156     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22157     void *argp1 = 0 ;
22158     int res1 = 0 ;
22159     int argvi = 0;
22160     double result;
22161     dXSARGS;
22162 
22163     if ((items < 1) || (items > 1)) {
22164       SWIG_croak("Usage: exp_param_expMLclosing_get(self);");
22165     }
22166     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22167     if (!SWIG_IsOK(res1)) {
22168       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expMLclosing_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22169     }
22170     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22171     result = (double)(double) ((arg1)->expMLclosing);
22172     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
22173 
22174     XSRETURN(argvi);
22175   fail:
22176 
22177     SWIG_croak_null();
22178   }
22179 }
22180 
22181 
XS(_wrap_exp_param_expTermAU_get)22182 XS(_wrap_exp_param_expTermAU_get) {
22183   {
22184     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22185     void *argp1 = 0 ;
22186     int res1 = 0 ;
22187     int argvi = 0;
22188     double result;
22189     dXSARGS;
22190 
22191     if ((items < 1) || (items > 1)) {
22192       SWIG_croak("Usage: exp_param_expTermAU_get(self);");
22193     }
22194     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22195     if (!SWIG_IsOK(res1)) {
22196       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expTermAU_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22197     }
22198     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22199     result = (double)(double) ((arg1)->expTermAU);
22200     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
22201 
22202     XSRETURN(argvi);
22203   fail:
22204 
22205     SWIG_croak_null();
22206   }
22207 }
22208 
22209 
XS(_wrap_exp_param_expDuplexInit_get)22210 XS(_wrap_exp_param_expDuplexInit_get) {
22211   {
22212     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22213     void *argp1 = 0 ;
22214     int res1 = 0 ;
22215     int argvi = 0;
22216     double result;
22217     dXSARGS;
22218 
22219     if ((items < 1) || (items > 1)) {
22220       SWIG_croak("Usage: exp_param_expDuplexInit_get(self);");
22221     }
22222     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22223     if (!SWIG_IsOK(res1)) {
22224       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expDuplexInit_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22225     }
22226     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22227     result = (double)(double) ((arg1)->expDuplexInit);
22228     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
22229 
22230     XSRETURN(argvi);
22231   fail:
22232 
22233     SWIG_croak_null();
22234   }
22235 }
22236 
22237 
XS(_wrap_exp_param_exptetra_get)22238 XS(_wrap_exp_param_exptetra_get) {
22239   {
22240     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22241     void *argp1 = 0 ;
22242     int res1 = 0 ;
22243     int argvi = 0;
22244     double *result = 0 ;
22245     dXSARGS;
22246 
22247     if ((items < 1) || (items > 1)) {
22248       SWIG_croak("Usage: exp_param_exptetra_get(self);");
22249     }
22250     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22251     if (!SWIG_IsOK(res1)) {
22252       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_exptetra_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22253     }
22254     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22255     result = (double *)(double *) ((arg1)->exptetra);
22256     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_double, 0 | 0); argvi++ ;
22257 
22258     XSRETURN(argvi);
22259   fail:
22260 
22261     SWIG_croak_null();
22262   }
22263 }
22264 
22265 
XS(_wrap_exp_param_exptri_get)22266 XS(_wrap_exp_param_exptri_get) {
22267   {
22268     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22269     void *argp1 = 0 ;
22270     int res1 = 0 ;
22271     int argvi = 0;
22272     double *result = 0 ;
22273     dXSARGS;
22274 
22275     if ((items < 1) || (items > 1)) {
22276       SWIG_croak("Usage: exp_param_exptri_get(self);");
22277     }
22278     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22279     if (!SWIG_IsOK(res1)) {
22280       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_exptri_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22281     }
22282     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22283     result = (double *)(double *) ((arg1)->exptri);
22284     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_double, 0 | 0); argvi++ ;
22285 
22286     XSRETURN(argvi);
22287   fail:
22288 
22289     SWIG_croak_null();
22290   }
22291 }
22292 
22293 
XS(_wrap_exp_param_exphex_get)22294 XS(_wrap_exp_param_exphex_get) {
22295   {
22296     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22297     void *argp1 = 0 ;
22298     int res1 = 0 ;
22299     int argvi = 0;
22300     double *result = 0 ;
22301     dXSARGS;
22302 
22303     if ((items < 1) || (items > 1)) {
22304       SWIG_croak("Usage: exp_param_exphex_get(self);");
22305     }
22306     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22307     if (!SWIG_IsOK(res1)) {
22308       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_exphex_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22309     }
22310     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22311     result = (double *)(double *) ((arg1)->exphex);
22312     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_double, 0 | 0); argvi++ ;
22313 
22314     XSRETURN(argvi);
22315   fail:
22316 
22317     SWIG_croak_null();
22318   }
22319 }
22320 
22321 
XS(_wrap_exp_param_Tetraloops_get)22322 XS(_wrap_exp_param_Tetraloops_get) {
22323   {
22324     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22325     void *argp1 = 0 ;
22326     int res1 = 0 ;
22327     int argvi = 0;
22328     char *result = 0 ;
22329     dXSARGS;
22330 
22331     if ((items < 1) || (items > 1)) {
22332       SWIG_croak("Usage: exp_param_Tetraloops_get(self);");
22333     }
22334     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22335     if (!SWIG_IsOK(res1)) {
22336       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_Tetraloops_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22337     }
22338     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22339     result = (char *)(char *) ((arg1)->Tetraloops);
22340     {
22341       size_t size = SWIG_strnlen(result, 1401);
22342 
22343 
22344 
22345       ST(argvi) = SWIG_FromCharPtrAndSize(result, size); argvi++ ;
22346     }
22347 
22348     XSRETURN(argvi);
22349   fail:
22350 
22351     SWIG_croak_null();
22352   }
22353 }
22354 
22355 
XS(_wrap_exp_param_expTriloop_get)22356 XS(_wrap_exp_param_expTriloop_get) {
22357   {
22358     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22359     void *argp1 = 0 ;
22360     int res1 = 0 ;
22361     int argvi = 0;
22362     double *result = 0 ;
22363     dXSARGS;
22364 
22365     if ((items < 1) || (items > 1)) {
22366       SWIG_croak("Usage: exp_param_expTriloop_get(self);");
22367     }
22368     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22369     if (!SWIG_IsOK(res1)) {
22370       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expTriloop_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22371     }
22372     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22373     result = (double *)(double *) ((arg1)->expTriloop);
22374     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_double, 0 | 0); argvi++ ;
22375 
22376     XSRETURN(argvi);
22377   fail:
22378 
22379     SWIG_croak_null();
22380   }
22381 }
22382 
22383 
XS(_wrap_exp_param_Triloops_get)22384 XS(_wrap_exp_param_Triloops_get) {
22385   {
22386     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22387     void *argp1 = 0 ;
22388     int res1 = 0 ;
22389     int argvi = 0;
22390     char *result = 0 ;
22391     dXSARGS;
22392 
22393     if ((items < 1) || (items > 1)) {
22394       SWIG_croak("Usage: exp_param_Triloops_get(self);");
22395     }
22396     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22397     if (!SWIG_IsOK(res1)) {
22398       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_Triloops_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22399     }
22400     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22401     result = (char *)(char *) ((arg1)->Triloops);
22402     {
22403       size_t size = SWIG_strnlen(result, 241);
22404 
22405 
22406 
22407       ST(argvi) = SWIG_FromCharPtrAndSize(result, size); argvi++ ;
22408     }
22409 
22410     XSRETURN(argvi);
22411   fail:
22412 
22413     SWIG_croak_null();
22414   }
22415 }
22416 
22417 
XS(_wrap_exp_param_Hexaloops_get)22418 XS(_wrap_exp_param_Hexaloops_get) {
22419   {
22420     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22421     void *argp1 = 0 ;
22422     int res1 = 0 ;
22423     int argvi = 0;
22424     char *result = 0 ;
22425     dXSARGS;
22426 
22427     if ((items < 1) || (items > 1)) {
22428       SWIG_croak("Usage: exp_param_Hexaloops_get(self);");
22429     }
22430     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22431     if (!SWIG_IsOK(res1)) {
22432       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_Hexaloops_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22433     }
22434     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22435     result = (char *)(char *) ((arg1)->Hexaloops);
22436     {
22437       size_t size = SWIG_strnlen(result, 1801);
22438 
22439 
22440 
22441       ST(argvi) = SWIG_FromCharPtrAndSize(result, size); argvi++ ;
22442     }
22443 
22444     XSRETURN(argvi);
22445   fail:
22446 
22447     SWIG_croak_null();
22448   }
22449 }
22450 
22451 
XS(_wrap_exp_param_expTripleC_get)22452 XS(_wrap_exp_param_expTripleC_get) {
22453   {
22454     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22455     void *argp1 = 0 ;
22456     int res1 = 0 ;
22457     int argvi = 0;
22458     double result;
22459     dXSARGS;
22460 
22461     if ((items < 1) || (items > 1)) {
22462       SWIG_croak("Usage: exp_param_expTripleC_get(self);");
22463     }
22464     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22465     if (!SWIG_IsOK(res1)) {
22466       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expTripleC_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22467     }
22468     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22469     result = (double)(double) ((arg1)->expTripleC);
22470     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
22471 
22472     XSRETURN(argvi);
22473   fail:
22474 
22475     SWIG_croak_null();
22476   }
22477 }
22478 
22479 
XS(_wrap_exp_param_expMultipleCA_get)22480 XS(_wrap_exp_param_expMultipleCA_get) {
22481   {
22482     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22483     void *argp1 = 0 ;
22484     int res1 = 0 ;
22485     int argvi = 0;
22486     double result;
22487     dXSARGS;
22488 
22489     if ((items < 1) || (items > 1)) {
22490       SWIG_croak("Usage: exp_param_expMultipleCA_get(self);");
22491     }
22492     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22493     if (!SWIG_IsOK(res1)) {
22494       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expMultipleCA_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22495     }
22496     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22497     result = (double)(double) ((arg1)->expMultipleCA);
22498     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
22499 
22500     XSRETURN(argvi);
22501   fail:
22502 
22503     SWIG_croak_null();
22504   }
22505 }
22506 
22507 
XS(_wrap_exp_param_expMultipleCB_get)22508 XS(_wrap_exp_param_expMultipleCB_get) {
22509   {
22510     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22511     void *argp1 = 0 ;
22512     int res1 = 0 ;
22513     int argvi = 0;
22514     double result;
22515     dXSARGS;
22516 
22517     if ((items < 1) || (items > 1)) {
22518       SWIG_croak("Usage: exp_param_expMultipleCB_get(self);");
22519     }
22520     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22521     if (!SWIG_IsOK(res1)) {
22522       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expMultipleCB_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22523     }
22524     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22525     result = (double)(double) ((arg1)->expMultipleCB);
22526     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
22527 
22528     XSRETURN(argvi);
22529   fail:
22530 
22531     SWIG_croak_null();
22532   }
22533 }
22534 
22535 
XS(_wrap_exp_param_expgquad_get)22536 XS(_wrap_exp_param_expgquad_get) {
22537   {
22538     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22539     void *argp1 = 0 ;
22540     int res1 = 0 ;
22541     int argvi = 0;
22542     double (*result)[3*VRNA_GQUAD_MAX_LINKER_LENGTH+1] = 0 ;
22543     dXSARGS;
22544 
22545     if ((items < 1) || (items > 1)) {
22546       SWIG_croak("Usage: exp_param_expgquad_get(self);");
22547     }
22548     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22549     if (!SWIG_IsOK(res1)) {
22550       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expgquad_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22551     }
22552     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22553     result = (double (*)[3*VRNA_GQUAD_MAX_LINKER_LENGTH+1])(double (*)[3*VRNA_GQUAD_MAX_LINKER_LENGTH+1]) ((arg1)->expgquad);
22554     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__double, 0 | 0); argvi++ ;
22555 
22556     XSRETURN(argvi);
22557   fail:
22558 
22559     SWIG_croak_null();
22560   }
22561 }
22562 
22563 
XS(_wrap_exp_param_expgquadLayerMismatch_get)22564 XS(_wrap_exp_param_expgquadLayerMismatch_get) {
22565   {
22566     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22567     void *argp1 = 0 ;
22568     int res1 = 0 ;
22569     int argvi = 0;
22570     double result;
22571     dXSARGS;
22572 
22573     if ((items < 1) || (items > 1)) {
22574       SWIG_croak("Usage: exp_param_expgquadLayerMismatch_get(self);");
22575     }
22576     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22577     if (!SWIG_IsOK(res1)) {
22578       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_expgquadLayerMismatch_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22579     }
22580     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22581     result = (double)(double) ((arg1)->expgquadLayerMismatch);
22582     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
22583 
22584     XSRETURN(argvi);
22585   fail:
22586 
22587     SWIG_croak_null();
22588   }
22589 }
22590 
22591 
XS(_wrap_exp_param_gquadLayerMismatchMax_get)22592 XS(_wrap_exp_param_gquadLayerMismatchMax_get) {
22593   {
22594     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22595     void *argp1 = 0 ;
22596     int res1 = 0 ;
22597     int argvi = 0;
22598     int result;
22599     dXSARGS;
22600 
22601     if ((items < 1) || (items > 1)) {
22602       SWIG_croak("Usage: exp_param_gquadLayerMismatchMax_get(self);");
22603     }
22604     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22605     if (!SWIG_IsOK(res1)) {
22606       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_gquadLayerMismatchMax_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22607     }
22608     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22609     result = (int)(int) ((arg1)->gquadLayerMismatchMax);
22610     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
22611 
22612     XSRETURN(argvi);
22613   fail:
22614 
22615     SWIG_croak_null();
22616   }
22617 }
22618 
22619 
XS(_wrap_exp_param_kT_get)22620 XS(_wrap_exp_param_kT_get) {
22621   {
22622     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22623     void *argp1 = 0 ;
22624     int res1 = 0 ;
22625     int argvi = 0;
22626     double result;
22627     dXSARGS;
22628 
22629     if ((items < 1) || (items > 1)) {
22630       SWIG_croak("Usage: exp_param_kT_get(self);");
22631     }
22632     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22633     if (!SWIG_IsOK(res1)) {
22634       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_kT_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22635     }
22636     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22637     result = (double)(double) ((arg1)->kT);
22638     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
22639 
22640     XSRETURN(argvi);
22641   fail:
22642 
22643     SWIG_croak_null();
22644   }
22645 }
22646 
22647 
XS(_wrap_exp_param_pf_scale_get)22648 XS(_wrap_exp_param_pf_scale_get) {
22649   {
22650     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22651     void *argp1 = 0 ;
22652     int res1 = 0 ;
22653     int argvi = 0;
22654     double result;
22655     dXSARGS;
22656 
22657     if ((items < 1) || (items > 1)) {
22658       SWIG_croak("Usage: exp_param_pf_scale_get(self);");
22659     }
22660     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22661     if (!SWIG_IsOK(res1)) {
22662       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_pf_scale_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22663     }
22664     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22665     result = (double)(double) ((arg1)->pf_scale);
22666     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
22667 
22668     XSRETURN(argvi);
22669   fail:
22670 
22671     SWIG_croak_null();
22672   }
22673 }
22674 
22675 
XS(_wrap_exp_param_temperature_get)22676 XS(_wrap_exp_param_temperature_get) {
22677   {
22678     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22679     void *argp1 = 0 ;
22680     int res1 = 0 ;
22681     int argvi = 0;
22682     double result;
22683     dXSARGS;
22684 
22685     if ((items < 1) || (items > 1)) {
22686       SWIG_croak("Usage: exp_param_temperature_get(self);");
22687     }
22688     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22689     if (!SWIG_IsOK(res1)) {
22690       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_temperature_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22691     }
22692     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22693     result = (double)(double) ((arg1)->temperature);
22694     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
22695 
22696     XSRETURN(argvi);
22697   fail:
22698 
22699     SWIG_croak_null();
22700   }
22701 }
22702 
22703 
XS(_wrap_exp_param_alpha_get)22704 XS(_wrap_exp_param_alpha_get) {
22705   {
22706     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22707     void *argp1 = 0 ;
22708     int res1 = 0 ;
22709     int argvi = 0;
22710     double result;
22711     dXSARGS;
22712 
22713     if ((items < 1) || (items > 1)) {
22714       SWIG_croak("Usage: exp_param_alpha_get(self);");
22715     }
22716     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22717     if (!SWIG_IsOK(res1)) {
22718       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_alpha_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22719     }
22720     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22721     result = (double)(double) ((arg1)->alpha);
22722     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
22723 
22724     XSRETURN(argvi);
22725   fail:
22726 
22727     SWIG_croak_null();
22728   }
22729 }
22730 
22731 
XS(_wrap_exp_param_model_details_get)22732 XS(_wrap_exp_param_model_details_get) {
22733   {
22734     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22735     void *argp1 = 0 ;
22736     int res1 = 0 ;
22737     int argvi = 0;
22738     vrna_md_t *result = 0 ;
22739     dXSARGS;
22740 
22741     if ((items < 1) || (items > 1)) {
22742       SWIG_croak("Usage: exp_param_model_details_get(self);");
22743     }
22744     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22745     if (!SWIG_IsOK(res1)) {
22746       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_model_details_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22747     }
22748     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22749     result = (vrna_md_t *)& ((arg1)->model_details);
22750     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, 0 | SWIG_SHADOW); argvi++ ;
22751 
22752     XSRETURN(argvi);
22753   fail:
22754 
22755     SWIG_croak_null();
22756   }
22757 }
22758 
22759 
XS(_wrap_exp_param_param_file_get)22760 XS(_wrap_exp_param_param_file_get) {
22761   {
22762     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22763     void *argp1 = 0 ;
22764     int res1 = 0 ;
22765     int argvi = 0;
22766     char *result = 0 ;
22767     dXSARGS;
22768 
22769     if ((items < 1) || (items > 1)) {
22770       SWIG_croak("Usage: exp_param_param_file_get(self);");
22771     }
22772     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
22773     if (!SWIG_IsOK(res1)) {
22774       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "exp_param_param_file_get" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22775     }
22776     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22777     result = (char *)(char *) ((arg1)->param_file);
22778     {
22779       size_t size = SWIG_strnlen(result, 256);
22780 
22781 
22782 
22783       ST(argvi) = SWIG_FromCharPtrAndSize(result, size); argvi++ ;
22784     }
22785 
22786     XSRETURN(argvi);
22787   fail:
22788 
22789     SWIG_croak_null();
22790   }
22791 }
22792 
22793 
XS(_wrap_new_exp_param__SWIG_0)22794 XS(_wrap_new_exp_param__SWIG_0) {
22795   {
22796     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
22797     void *argp1 = 0 ;
22798     int res1 = 0 ;
22799     int argvi = 0;
22800     vrna_exp_param_t *result = 0 ;
22801     dXSARGS;
22802 
22803     if ((items < 1) || (items > 1)) {
22804       SWIG_croak("Usage: new_exp_param(model_details);");
22805     }
22806     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
22807     if (!SWIG_IsOK(res1)) {
22808       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_exp_param" "', argument " "1"" of type '" "vrna_md_t *""'");
22809     }
22810     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
22811     {
22812       try {
22813         result = (vrna_exp_param_t *)new_vrna_exp_param_t__SWIG_0(arg1);
22814       } catch (const std::exception& e) {
22815         SWIG_exception(SWIG_RuntimeError, e.what());
22816       }
22817     }
22818     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_exp_param_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
22819 
22820     XSRETURN(argvi);
22821   fail:
22822 
22823     SWIG_croak_null();
22824   }
22825 }
22826 
22827 
XS(_wrap_new_exp_param__SWIG_1)22828 XS(_wrap_new_exp_param__SWIG_1) {
22829   {
22830     int argvi = 0;
22831     vrna_exp_param_t *result = 0 ;
22832     dXSARGS;
22833 
22834     if ((items < 0) || (items > 0)) {
22835       SWIG_croak("Usage: new_exp_param();");
22836     }
22837     {
22838       try {
22839         result = (vrna_exp_param_t *)new_vrna_exp_param_t__SWIG_0();
22840       } catch (const std::exception& e) {
22841         SWIG_exception(SWIG_RuntimeError, e.what());
22842       }
22843     }
22844     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_exp_param_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
22845     XSRETURN(argvi);
22846   fail:
22847     SWIG_croak_null();
22848   }
22849 }
22850 
22851 
XS(_wrap_new_exp_param)22852 XS(_wrap_new_exp_param) {
22853   dXSARGS;
22854 
22855   {
22856     unsigned long _index = 0;
22857     SWIG_TypeRank _rank = 0;
22858     if (items == 0) {
22859       SWIG_TypeRank _ranki = 0;
22860       SWIG_TypeRank _rankm = 0;
22861       if (!_index || (_ranki < _rank)) {
22862         _rank = _ranki; _index = 1;
22863         if (_rank == _rankm) goto dispatch;
22864       }
22865     }
22866     if (items == 1) {
22867       SWIG_TypeRank _ranki = 0;
22868       SWIG_TypeRank _rankm = 0;
22869       SWIG_TypeRank _pi = 1;
22870       int _v = 0;
22871       {
22872         void *vptr = 0;
22873         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_md_t, 0);
22874         _v = SWIG_CheckState(res);
22875       }
22876       if (!_v) goto check_2;
22877       _ranki += _v*_pi;
22878       _rankm += _pi;
22879       _pi *= SWIG_MAXCASTRANK;
22880       if (!_index || (_ranki < _rank)) {
22881         _rank = _ranki; _index = 2;
22882         if (_rank == _rankm) goto dispatch;
22883       }
22884     }
22885   check_2:
22886 
22887   dispatch:
22888     switch(_index) {
22889     case 1:
22890       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_exp_param__SWIG_1); return;
22891     case 2:
22892       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_exp_param__SWIG_0); return;
22893     }
22894   }
22895 
22896   croak("No matching function for overloaded 'new_exp_param'");
22897   XSRETURN(0);
22898 }
22899 
22900 
XS(_wrap_delete_exp_param)22901 XS(_wrap_delete_exp_param) {
22902   {
22903     vrna_exp_param_t *arg1 = (vrna_exp_param_t *) 0 ;
22904     void *argp1 = 0 ;
22905     int res1 = 0 ;
22906     int argvi = 0;
22907     dXSARGS;
22908 
22909     if ((items < 1) || (items > 1)) {
22910       SWIG_croak("Usage: delete_exp_param(self);");
22911     }
22912     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_exp_param_t, SWIG_POINTER_DISOWN |  0 );
22913     if (!SWIG_IsOK(res1)) {
22914       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_exp_param" "', argument " "1"" of type '" "vrna_exp_param_t *""'");
22915     }
22916     arg1 = reinterpret_cast< vrna_exp_param_t * >(argp1);
22917     {
22918       try {
22919         delete arg1;
22920       } catch (const std::exception& e) {
22921         SWIG_exception(SWIG_RuntimeError, e.what());
22922       }
22923     }
22924     ST(argvi) = &PL_sv_undef;
22925 
22926     XSRETURN(argvi);
22927   fail:
22928 
22929     SWIG_croak_null();
22930   }
22931 }
22932 
22933 
XS(_wrap_params_load__SWIG_0)22934 XS(_wrap_params_load__SWIG_0) {
22935   {
22936     std::string arg1 ;
22937     unsigned int arg2 ;
22938     unsigned int val2 ;
22939     int ecode2 = 0 ;
22940     int argvi = 0;
22941     int result;
22942     dXSARGS;
22943 
22944     if ((items < 2) || (items > 2)) {
22945       SWIG_croak("Usage: params_load(filename,options);");
22946     }
22947     {
22948       std::string *ptr = (std::string *)0;
22949       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
22950       if (!SWIG_IsOK(res) || !ptr) {
22951         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "params_load" "', argument " "1"" of type '" "std::string""'");
22952       }
22953       arg1 = *ptr;
22954       if (SWIG_IsNewObj(res)) delete ptr;
22955     }
22956     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
22957     if (!SWIG_IsOK(ecode2)) {
22958       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "params_load" "', argument " "2"" of type '" "unsigned int""'");
22959     }
22960     arg2 = static_cast< unsigned int >(val2);
22961     {
22962       try {
22963         result = (int)my_params_load(arg1,arg2);
22964       } catch (const std::exception& e) {
22965         SWIG_exception(SWIG_RuntimeError, e.what());
22966       }
22967     }
22968     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
22969 
22970 
22971     XSRETURN(argvi);
22972   fail:
22973 
22974 
22975     SWIG_croak_null();
22976   }
22977 }
22978 
22979 
XS(_wrap_params_load__SWIG_1)22980 XS(_wrap_params_load__SWIG_1) {
22981   {
22982     std::string arg1 ;
22983     int argvi = 0;
22984     int result;
22985     dXSARGS;
22986 
22987     if ((items < 1) || (items > 1)) {
22988       SWIG_croak("Usage: params_load(filename);");
22989     }
22990     {
22991       std::string *ptr = (std::string *)0;
22992       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
22993       if (!SWIG_IsOK(res) || !ptr) {
22994         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "params_load" "', argument " "1"" of type '" "std::string""'");
22995       }
22996       arg1 = *ptr;
22997       if (SWIG_IsNewObj(res)) delete ptr;
22998     }
22999     {
23000       try {
23001         result = (int)my_params_load(arg1);
23002       } catch (const std::exception& e) {
23003         SWIG_exception(SWIG_RuntimeError, e.what());
23004       }
23005     }
23006     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23007 
23008     XSRETURN(argvi);
23009   fail:
23010 
23011     SWIG_croak_null();
23012   }
23013 }
23014 
23015 
XS(_wrap_params_load__SWIG_2)23016 XS(_wrap_params_load__SWIG_2) {
23017   {
23018     int argvi = 0;
23019     int result;
23020     dXSARGS;
23021 
23022     if ((items < 0) || (items > 0)) {
23023       SWIG_croak("Usage: params_load();");
23024     }
23025     {
23026       try {
23027         result = (int)my_params_load();
23028       } catch (const std::exception& e) {
23029         SWIG_exception(SWIG_RuntimeError, e.what());
23030       }
23031     }
23032     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23033     XSRETURN(argvi);
23034   fail:
23035     SWIG_croak_null();
23036   }
23037 }
23038 
23039 
XS(_wrap_params_load)23040 XS(_wrap_params_load) {
23041   dXSARGS;
23042 
23043   {
23044     unsigned long _index = 0;
23045     SWIG_TypeRank _rank = 0;
23046     if (items == 0) {
23047       SWIG_TypeRank _ranki = 0;
23048       SWIG_TypeRank _rankm = 0;
23049       if (!_index || (_ranki < _rank)) {
23050         _rank = _ranki; _index = 1;
23051         if (_rank == _rankm) goto dispatch;
23052       }
23053     }
23054     if (items == 1) {
23055       SWIG_TypeRank _ranki = 0;
23056       SWIG_TypeRank _rankm = 0;
23057       SWIG_TypeRank _pi = 1;
23058       int _v = 0;
23059       {
23060         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
23061         _v = SWIG_CheckState(res);
23062       }
23063       if (!_v) goto check_2;
23064       _ranki += _v*_pi;
23065       _rankm += _pi;
23066       _pi *= SWIG_MAXCASTRANK;
23067       if (!_index || (_ranki < _rank)) {
23068         _rank = _ranki; _index = 2;
23069         if (_rank == _rankm) goto dispatch;
23070       }
23071     }
23072   check_2:
23073 
23074     if (items == 2) {
23075       SWIG_TypeRank _ranki = 0;
23076       SWIG_TypeRank _rankm = 0;
23077       SWIG_TypeRank _pi = 1;
23078       int _v = 0;
23079       {
23080         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
23081         _v = SWIG_CheckState(res);
23082       }
23083       if (!_v) goto check_3;
23084       _ranki += _v*_pi;
23085       _rankm += _pi;
23086       _pi *= SWIG_MAXCASTRANK;
23087       {
23088         {
23089           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
23090           _v = SWIG_CheckState(res);
23091         }
23092       }
23093       if (!_v) goto check_3;
23094       _ranki += _v*_pi;
23095       _rankm += _pi;
23096       _pi *= SWIG_MAXCASTRANK;
23097       if (!_index || (_ranki < _rank)) {
23098         _rank = _ranki; _index = 3;
23099         if (_rank == _rankm) goto dispatch;
23100       }
23101     }
23102   check_3:
23103 
23104   dispatch:
23105     switch(_index) {
23106     case 1:
23107       PUSHMARK(MARK); SWIG_CALLXS(_wrap_params_load__SWIG_2); return;
23108     case 2:
23109       PUSHMARK(MARK); SWIG_CALLXS(_wrap_params_load__SWIG_1); return;
23110     case 3:
23111       PUSHMARK(MARK); SWIG_CALLXS(_wrap_params_load__SWIG_0); return;
23112     }
23113   }
23114 
23115   croak("No matching function for overloaded 'params_load'");
23116   XSRETURN(0);
23117 }
23118 
23119 
XS(_wrap_params_save__SWIG_0)23120 XS(_wrap_params_save__SWIG_0) {
23121   {
23122     std::string arg1 ;
23123     unsigned int arg2 ;
23124     unsigned int val2 ;
23125     int ecode2 = 0 ;
23126     int argvi = 0;
23127     int result;
23128     dXSARGS;
23129 
23130     if ((items < 2) || (items > 2)) {
23131       SWIG_croak("Usage: params_save(filename,options);");
23132     }
23133     {
23134       std::string *ptr = (std::string *)0;
23135       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
23136       if (!SWIG_IsOK(res) || !ptr) {
23137         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "params_save" "', argument " "1"" of type '" "std::string""'");
23138       }
23139       arg1 = *ptr;
23140       if (SWIG_IsNewObj(res)) delete ptr;
23141     }
23142     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
23143     if (!SWIG_IsOK(ecode2)) {
23144       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "params_save" "', argument " "2"" of type '" "unsigned int""'");
23145     }
23146     arg2 = static_cast< unsigned int >(val2);
23147     {
23148       try {
23149         result = (int)my_params_save(arg1,arg2);
23150       } catch (const std::exception& e) {
23151         SWIG_exception(SWIG_RuntimeError, e.what());
23152       }
23153     }
23154     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23155 
23156 
23157     XSRETURN(argvi);
23158   fail:
23159 
23160 
23161     SWIG_croak_null();
23162   }
23163 }
23164 
23165 
XS(_wrap_params_save__SWIG_1)23166 XS(_wrap_params_save__SWIG_1) {
23167   {
23168     std::string arg1 ;
23169     int argvi = 0;
23170     int result;
23171     dXSARGS;
23172 
23173     if ((items < 1) || (items > 1)) {
23174       SWIG_croak("Usage: params_save(filename);");
23175     }
23176     {
23177       std::string *ptr = (std::string *)0;
23178       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
23179       if (!SWIG_IsOK(res) || !ptr) {
23180         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "params_save" "', argument " "1"" of type '" "std::string""'");
23181       }
23182       arg1 = *ptr;
23183       if (SWIG_IsNewObj(res)) delete ptr;
23184     }
23185     {
23186       try {
23187         result = (int)my_params_save(arg1);
23188       } catch (const std::exception& e) {
23189         SWIG_exception(SWIG_RuntimeError, e.what());
23190       }
23191     }
23192     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23193 
23194     XSRETURN(argvi);
23195   fail:
23196 
23197     SWIG_croak_null();
23198   }
23199 }
23200 
23201 
XS(_wrap_params_save)23202 XS(_wrap_params_save) {
23203   dXSARGS;
23204 
23205   {
23206     unsigned long _index = 0;
23207     SWIG_TypeRank _rank = 0;
23208     if (items == 1) {
23209       SWIG_TypeRank _ranki = 0;
23210       SWIG_TypeRank _rankm = 0;
23211       SWIG_TypeRank _pi = 1;
23212       int _v = 0;
23213       {
23214         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
23215         _v = SWIG_CheckState(res);
23216       }
23217       if (!_v) goto check_1;
23218       _ranki += _v*_pi;
23219       _rankm += _pi;
23220       _pi *= SWIG_MAXCASTRANK;
23221       if (!_index || (_ranki < _rank)) {
23222         _rank = _ranki; _index = 1;
23223         if (_rank == _rankm) goto dispatch;
23224       }
23225     }
23226   check_1:
23227 
23228     if (items == 2) {
23229       SWIG_TypeRank _ranki = 0;
23230       SWIG_TypeRank _rankm = 0;
23231       SWIG_TypeRank _pi = 1;
23232       int _v = 0;
23233       {
23234         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
23235         _v = SWIG_CheckState(res);
23236       }
23237       if (!_v) goto check_2;
23238       _ranki += _v*_pi;
23239       _rankm += _pi;
23240       _pi *= SWIG_MAXCASTRANK;
23241       {
23242         {
23243           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
23244           _v = SWIG_CheckState(res);
23245         }
23246       }
23247       if (!_v) goto check_2;
23248       _ranki += _v*_pi;
23249       _rankm += _pi;
23250       _pi *= SWIG_MAXCASTRANK;
23251       if (!_index || (_ranki < _rank)) {
23252         _rank = _ranki; _index = 2;
23253         if (_rank == _rankm) goto dispatch;
23254       }
23255     }
23256   check_2:
23257 
23258   dispatch:
23259     switch(_index) {
23260     case 1:
23261       PUSHMARK(MARK); SWIG_CALLXS(_wrap_params_save__SWIG_1); return;
23262     case 2:
23263       PUSHMARK(MARK); SWIG_CALLXS(_wrap_params_save__SWIG_0); return;
23264     }
23265   }
23266 
23267   croak("No matching function for overloaded 'params_save'");
23268   XSRETURN(0);
23269 }
23270 
23271 
XS(_wrap_params_load_from_string__SWIG_0)23272 XS(_wrap_params_load_from_string__SWIG_0) {
23273   {
23274     std::string arg1 ;
23275     std::string arg2 ;
23276     unsigned int arg3 ;
23277     unsigned int val3 ;
23278     int ecode3 = 0 ;
23279     int argvi = 0;
23280     int result;
23281     dXSARGS;
23282 
23283     if ((items < 3) || (items > 3)) {
23284       SWIG_croak("Usage: params_load_from_string(parameters,name,options);");
23285     }
23286     {
23287       std::string *ptr = (std::string *)0;
23288       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
23289       if (!SWIG_IsOK(res) || !ptr) {
23290         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "params_load_from_string" "', argument " "1"" of type '" "std::string""'");
23291       }
23292       arg1 = *ptr;
23293       if (SWIG_IsNewObj(res)) delete ptr;
23294     }
23295     {
23296       std::string *ptr = (std::string *)0;
23297       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
23298       if (!SWIG_IsOK(res) || !ptr) {
23299         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "params_load_from_string" "', argument " "2"" of type '" "std::string""'");
23300       }
23301       arg2 = *ptr;
23302       if (SWIG_IsNewObj(res)) delete ptr;
23303     }
23304     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
23305     if (!SWIG_IsOK(ecode3)) {
23306       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "params_load_from_string" "', argument " "3"" of type '" "unsigned int""'");
23307     }
23308     arg3 = static_cast< unsigned int >(val3);
23309     {
23310       try {
23311         result = (int)my_params_load_from_string(arg1,arg2,arg3);
23312       } catch (const std::exception& e) {
23313         SWIG_exception(SWIG_RuntimeError, e.what());
23314       }
23315     }
23316     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23317 
23318 
23319 
23320     XSRETURN(argvi);
23321   fail:
23322 
23323 
23324 
23325     SWIG_croak_null();
23326   }
23327 }
23328 
23329 
XS(_wrap_params_load_from_string__SWIG_1)23330 XS(_wrap_params_load_from_string__SWIG_1) {
23331   {
23332     std::string arg1 ;
23333     std::string arg2 ;
23334     int argvi = 0;
23335     int result;
23336     dXSARGS;
23337 
23338     if ((items < 2) || (items > 2)) {
23339       SWIG_croak("Usage: params_load_from_string(parameters,name);");
23340     }
23341     {
23342       std::string *ptr = (std::string *)0;
23343       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
23344       if (!SWIG_IsOK(res) || !ptr) {
23345         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "params_load_from_string" "', argument " "1"" of type '" "std::string""'");
23346       }
23347       arg1 = *ptr;
23348       if (SWIG_IsNewObj(res)) delete ptr;
23349     }
23350     {
23351       std::string *ptr = (std::string *)0;
23352       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
23353       if (!SWIG_IsOK(res) || !ptr) {
23354         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "params_load_from_string" "', argument " "2"" of type '" "std::string""'");
23355       }
23356       arg2 = *ptr;
23357       if (SWIG_IsNewObj(res)) delete ptr;
23358     }
23359     {
23360       try {
23361         result = (int)my_params_load_from_string(arg1,arg2);
23362       } catch (const std::exception& e) {
23363         SWIG_exception(SWIG_RuntimeError, e.what());
23364       }
23365     }
23366     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23367 
23368 
23369     XSRETURN(argvi);
23370   fail:
23371 
23372 
23373     SWIG_croak_null();
23374   }
23375 }
23376 
23377 
XS(_wrap_params_load_from_string__SWIG_2)23378 XS(_wrap_params_load_from_string__SWIG_2) {
23379   {
23380     std::string arg1 ;
23381     int argvi = 0;
23382     int result;
23383     dXSARGS;
23384 
23385     if ((items < 1) || (items > 1)) {
23386       SWIG_croak("Usage: params_load_from_string(parameters);");
23387     }
23388     {
23389       std::string *ptr = (std::string *)0;
23390       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
23391       if (!SWIG_IsOK(res) || !ptr) {
23392         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "params_load_from_string" "', argument " "1"" of type '" "std::string""'");
23393       }
23394       arg1 = *ptr;
23395       if (SWIG_IsNewObj(res)) delete ptr;
23396     }
23397     {
23398       try {
23399         result = (int)my_params_load_from_string(arg1);
23400       } catch (const std::exception& e) {
23401         SWIG_exception(SWIG_RuntimeError, e.what());
23402       }
23403     }
23404     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23405 
23406     XSRETURN(argvi);
23407   fail:
23408 
23409     SWIG_croak_null();
23410   }
23411 }
23412 
23413 
XS(_wrap_params_load_from_string)23414 XS(_wrap_params_load_from_string) {
23415   dXSARGS;
23416 
23417   {
23418     unsigned long _index = 0;
23419     SWIG_TypeRank _rank = 0;
23420     if (items == 1) {
23421       SWIG_TypeRank _ranki = 0;
23422       SWIG_TypeRank _rankm = 0;
23423       SWIG_TypeRank _pi = 1;
23424       int _v = 0;
23425       {
23426         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
23427         _v = SWIG_CheckState(res);
23428       }
23429       if (!_v) goto check_1;
23430       _ranki += _v*_pi;
23431       _rankm += _pi;
23432       _pi *= SWIG_MAXCASTRANK;
23433       if (!_index || (_ranki < _rank)) {
23434         _rank = _ranki; _index = 1;
23435         if (_rank == _rankm) goto dispatch;
23436       }
23437     }
23438   check_1:
23439 
23440     if (items == 2) {
23441       SWIG_TypeRank _ranki = 0;
23442       SWIG_TypeRank _rankm = 0;
23443       SWIG_TypeRank _pi = 1;
23444       int _v = 0;
23445       {
23446         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
23447         _v = SWIG_CheckState(res);
23448       }
23449       if (!_v) goto check_2;
23450       _ranki += _v*_pi;
23451       _rankm += _pi;
23452       _pi *= SWIG_MAXCASTRANK;
23453       {
23454         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
23455         _v = SWIG_CheckState(res);
23456       }
23457       if (!_v) goto check_2;
23458       _ranki += _v*_pi;
23459       _rankm += _pi;
23460       _pi *= SWIG_MAXCASTRANK;
23461       if (!_index || (_ranki < _rank)) {
23462         _rank = _ranki; _index = 2;
23463         if (_rank == _rankm) goto dispatch;
23464       }
23465     }
23466   check_2:
23467 
23468     if (items == 3) {
23469       SWIG_TypeRank _ranki = 0;
23470       SWIG_TypeRank _rankm = 0;
23471       SWIG_TypeRank _pi = 1;
23472       int _v = 0;
23473       {
23474         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
23475         _v = SWIG_CheckState(res);
23476       }
23477       if (!_v) goto check_3;
23478       _ranki += _v*_pi;
23479       _rankm += _pi;
23480       _pi *= SWIG_MAXCASTRANK;
23481       {
23482         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
23483         _v = SWIG_CheckState(res);
23484       }
23485       if (!_v) goto check_3;
23486       _ranki += _v*_pi;
23487       _rankm += _pi;
23488       _pi *= SWIG_MAXCASTRANK;
23489       {
23490         {
23491           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
23492           _v = SWIG_CheckState(res);
23493         }
23494       }
23495       if (!_v) goto check_3;
23496       _ranki += _v*_pi;
23497       _rankm += _pi;
23498       _pi *= SWIG_MAXCASTRANK;
23499       if (!_index || (_ranki < _rank)) {
23500         _rank = _ranki; _index = 3;
23501         if (_rank == _rankm) goto dispatch;
23502       }
23503     }
23504   check_3:
23505 
23506   dispatch:
23507     switch(_index) {
23508     case 1:
23509       PUSHMARK(MARK); SWIG_CALLXS(_wrap_params_load_from_string__SWIG_2); return;
23510     case 2:
23511       PUSHMARK(MARK); SWIG_CALLXS(_wrap_params_load_from_string__SWIG_1); return;
23512     case 3:
23513       PUSHMARK(MARK); SWIG_CALLXS(_wrap_params_load_from_string__SWIG_0); return;
23514     }
23515   }
23516 
23517   croak("No matching function for overloaded 'params_load_from_string'");
23518   XSRETURN(0);
23519 }
23520 
23521 
XS(_wrap_params_load_RNA_Turner2004)23522 XS(_wrap_params_load_RNA_Turner2004) {
23523   {
23524     int argvi = 0;
23525     int result;
23526     dXSARGS;
23527 
23528     if ((items < 0) || (items > 0)) {
23529       SWIG_croak("Usage: params_load_RNA_Turner2004();");
23530     }
23531     {
23532       try {
23533         result = (int)vrna_params_load_RNA_Turner2004();
23534       } catch (const std::exception& e) {
23535         SWIG_exception(SWIG_RuntimeError, e.what());
23536       }
23537     }
23538     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23539     XSRETURN(argvi);
23540   fail:
23541     SWIG_croak_null();
23542   }
23543 }
23544 
23545 
XS(_wrap_params_load_RNA_Turner1999)23546 XS(_wrap_params_load_RNA_Turner1999) {
23547   {
23548     int argvi = 0;
23549     int result;
23550     dXSARGS;
23551 
23552     if ((items < 0) || (items > 0)) {
23553       SWIG_croak("Usage: params_load_RNA_Turner1999();");
23554     }
23555     {
23556       try {
23557         result = (int)vrna_params_load_RNA_Turner1999();
23558       } catch (const std::exception& e) {
23559         SWIG_exception(SWIG_RuntimeError, e.what());
23560       }
23561     }
23562     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23563     XSRETURN(argvi);
23564   fail:
23565     SWIG_croak_null();
23566   }
23567 }
23568 
23569 
XS(_wrap_params_load_RNA_Andronescu2007)23570 XS(_wrap_params_load_RNA_Andronescu2007) {
23571   {
23572     int argvi = 0;
23573     int result;
23574     dXSARGS;
23575 
23576     if ((items < 0) || (items > 0)) {
23577       SWIG_croak("Usage: params_load_RNA_Andronescu2007();");
23578     }
23579     {
23580       try {
23581         result = (int)vrna_params_load_RNA_Andronescu2007();
23582       } catch (const std::exception& e) {
23583         SWIG_exception(SWIG_RuntimeError, e.what());
23584       }
23585     }
23586     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23587     XSRETURN(argvi);
23588   fail:
23589     SWIG_croak_null();
23590   }
23591 }
23592 
23593 
XS(_wrap_params_load_RNA_Langdon2018)23594 XS(_wrap_params_load_RNA_Langdon2018) {
23595   {
23596     int argvi = 0;
23597     int result;
23598     dXSARGS;
23599 
23600     if ((items < 0) || (items > 0)) {
23601       SWIG_croak("Usage: params_load_RNA_Langdon2018();");
23602     }
23603     {
23604       try {
23605         result = (int)vrna_params_load_RNA_Langdon2018();
23606       } catch (const std::exception& e) {
23607         SWIG_exception(SWIG_RuntimeError, e.what());
23608       }
23609     }
23610     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23611     XSRETURN(argvi);
23612   fail:
23613     SWIG_croak_null();
23614   }
23615 }
23616 
23617 
XS(_wrap_params_load_RNA_misc_special_hairpins)23618 XS(_wrap_params_load_RNA_misc_special_hairpins) {
23619   {
23620     int argvi = 0;
23621     int result;
23622     dXSARGS;
23623 
23624     if ((items < 0) || (items > 0)) {
23625       SWIG_croak("Usage: params_load_RNA_misc_special_hairpins();");
23626     }
23627     {
23628       try {
23629         result = (int)vrna_params_load_RNA_misc_special_hairpins();
23630       } catch (const std::exception& e) {
23631         SWIG_exception(SWIG_RuntimeError, e.what());
23632       }
23633     }
23634     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23635     XSRETURN(argvi);
23636   fail:
23637     SWIG_croak_null();
23638   }
23639 }
23640 
23641 
XS(_wrap_params_load_DNA_Mathews2004)23642 XS(_wrap_params_load_DNA_Mathews2004) {
23643   {
23644     int argvi = 0;
23645     int result;
23646     dXSARGS;
23647 
23648     if ((items < 0) || (items > 0)) {
23649       SWIG_croak("Usage: params_load_DNA_Mathews2004();");
23650     }
23651     {
23652       try {
23653         result = (int)vrna_params_load_DNA_Mathews2004();
23654       } catch (const std::exception& e) {
23655         SWIG_exception(SWIG_RuntimeError, e.what());
23656       }
23657     }
23658     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23659     XSRETURN(argvi);
23660   fail:
23661     SWIG_croak_null();
23662   }
23663 }
23664 
23665 
XS(_wrap_params_load_DNA_Mathews1999)23666 XS(_wrap_params_load_DNA_Mathews1999) {
23667   {
23668     int argvi = 0;
23669     int result;
23670     dXSARGS;
23671 
23672     if ((items < 0) || (items > 0)) {
23673       SWIG_croak("Usage: params_load_DNA_Mathews1999();");
23674     }
23675     {
23676       try {
23677         result = (int)vrna_params_load_DNA_Mathews1999();
23678       } catch (const std::exception& e) {
23679         SWIG_exception(SWIG_RuntimeError, e.what());
23680       }
23681     }
23682     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23683     XSRETURN(argvi);
23684   fail:
23685     SWIG_croak_null();
23686   }
23687 }
23688 
23689 
XS(_wrap_last_parameter_file)23690 XS(_wrap_last_parameter_file) {
23691   {
23692     int argvi = 0;
23693     char *result = 0 ;
23694     dXSARGS;
23695 
23696     if ((items < 0) || (items > 0)) {
23697       SWIG_croak("Usage: last_parameter_file();");
23698     }
23699     {
23700       try {
23701         result = (char *)last_parameter_file();
23702       } catch (const std::exception& e) {
23703         SWIG_exception(SWIG_RuntimeError, e.what());
23704       }
23705     }
23706     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
23707     XSRETURN(argvi);
23708   fail:
23709     SWIG_croak_null();
23710   }
23711 }
23712 
23713 
XS(_wrap_read_parameter_file)23714 XS(_wrap_read_parameter_file) {
23715   {
23716     char *arg1 ;
23717     int res1 ;
23718     char *buf1 = 0 ;
23719     int alloc1 = 0 ;
23720     int argvi = 0;
23721     dXSARGS;
23722 
23723     if ((items < 1) || (items > 1)) {
23724       SWIG_croak("Usage: read_parameter_file(fname);");
23725     }
23726     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
23727     if (!SWIG_IsOK(res1)) {
23728       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "read_parameter_file" "', argument " "1"" of type '" "char const []""'");
23729     }
23730     arg1 = reinterpret_cast< char * >(buf1);
23731     {
23732       try {
23733         read_parameter_file((char const (*))arg1);
23734       } catch (const std::exception& e) {
23735         SWIG_exception(SWIG_RuntimeError, e.what());
23736       }
23737     }
23738     ST(argvi) = &PL_sv_undef;
23739     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
23740     XSRETURN(argvi);
23741   fail:
23742     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
23743     SWIG_croak_null();
23744   }
23745 }
23746 
23747 
XS(_wrap_write_parameter_file)23748 XS(_wrap_write_parameter_file) {
23749   {
23750     char *arg1 ;
23751     int res1 ;
23752     char *buf1 = 0 ;
23753     int alloc1 = 0 ;
23754     int argvi = 0;
23755     dXSARGS;
23756 
23757     if ((items < 1) || (items > 1)) {
23758       SWIG_croak("Usage: write_parameter_file(fname);");
23759     }
23760     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
23761     if (!SWIG_IsOK(res1)) {
23762       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "write_parameter_file" "', argument " "1"" of type '" "char const []""'");
23763     }
23764     arg1 = reinterpret_cast< char * >(buf1);
23765     {
23766       try {
23767         write_parameter_file((char const (*))arg1);
23768       } catch (const std::exception& e) {
23769         SWIG_exception(SWIG_RuntimeError, e.what());
23770       }
23771     }
23772     ST(argvi) = &PL_sv_undef;
23773     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
23774     XSRETURN(argvi);
23775   fail:
23776     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
23777     SWIG_croak_null();
23778   }
23779 }
23780 
23781 
XS(_wrap_gettype)23782 XS(_wrap_gettype) {
23783   {
23784     char *arg1 = (char *) 0 ;
23785     int res1 ;
23786     char *buf1 = 0 ;
23787     int alloc1 = 0 ;
23788     int argvi = 0;
23789     enum parset result;
23790     dXSARGS;
23791 
23792     if ((items < 1) || (items > 1)) {
23793       SWIG_croak("Usage: gettype(ident);");
23794     }
23795     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
23796     if (!SWIG_IsOK(res1)) {
23797       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "gettype" "', argument " "1"" of type '" "char const *""'");
23798     }
23799     arg1 = reinterpret_cast< char * >(buf1);
23800     {
23801       try {
23802         result = (enum parset)gettype((char const *)arg1);
23803       } catch (const std::exception& e) {
23804         SWIG_exception(SWIG_RuntimeError, e.what());
23805       }
23806     }
23807     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
23808     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
23809     XSRETURN(argvi);
23810   fail:
23811     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
23812     SWIG_croak_null();
23813   }
23814 }
23815 
23816 
XS(_wrap_settype)23817 XS(_wrap_settype) {
23818   {
23819     enum parset arg1 ;
23820     int val1 ;
23821     int ecode1 = 0 ;
23822     int argvi = 0;
23823     char *result = 0 ;
23824     dXSARGS;
23825 
23826     if ((items < 1) || (items > 1)) {
23827       SWIG_croak("Usage: settype(s);");
23828     }
23829     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
23830     if (!SWIG_IsOK(ecode1)) {
23831       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "settype" "', argument " "1"" of type '" "enum parset""'");
23832     }
23833     arg1 = static_cast< enum parset >(val1);
23834     {
23835       try {
23836         result = (char *)settype(arg1);
23837       } catch (const std::exception& e) {
23838         SWIG_exception(SWIG_RuntimeError, e.what());
23839       }
23840     }
23841     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
23842 
23843     XSRETURN(argvi);
23844   fail:
23845 
23846     SWIG_croak_null();
23847   }
23848 }
23849 
23850 
XS(_wrap_md_temperature_set)23851 XS(_wrap_md_temperature_set) {
23852   {
23853     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
23854     double arg2 ;
23855     void *argp1 = 0 ;
23856     int res1 = 0 ;
23857     double val2 ;
23858     int ecode2 = 0 ;
23859     int argvi = 0;
23860     dXSARGS;
23861 
23862     if ((items < 2) || (items > 2)) {
23863       SWIG_croak("Usage: md_temperature_set(self,temperature);");
23864     }
23865     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
23866     if (!SWIG_IsOK(res1)) {
23867       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_temperature_set" "', argument " "1"" of type '" "vrna_md_t *""'");
23868     }
23869     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
23870     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
23871     if (!SWIG_IsOK(ecode2)) {
23872       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_temperature_set" "', argument " "2"" of type '" "double""'");
23873     }
23874     arg2 = static_cast< double >(val2);
23875     if (arg1) (arg1)->temperature = arg2;
23876     ST(argvi) = &PL_sv_undef;
23877 
23878 
23879     XSRETURN(argvi);
23880   fail:
23881 
23882 
23883     SWIG_croak_null();
23884   }
23885 }
23886 
23887 
XS(_wrap_md_temperature_get)23888 XS(_wrap_md_temperature_get) {
23889   {
23890     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
23891     void *argp1 = 0 ;
23892     int res1 = 0 ;
23893     int argvi = 0;
23894     double result;
23895     dXSARGS;
23896 
23897     if ((items < 1) || (items > 1)) {
23898       SWIG_croak("Usage: md_temperature_get(self);");
23899     }
23900     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
23901     if (!SWIG_IsOK(res1)) {
23902       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_temperature_get" "', argument " "1"" of type '" "vrna_md_t *""'");
23903     }
23904     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
23905     result = (double) ((arg1)->temperature);
23906     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
23907 
23908     XSRETURN(argvi);
23909   fail:
23910 
23911     SWIG_croak_null();
23912   }
23913 }
23914 
23915 
XS(_wrap_md_betaScale_set)23916 XS(_wrap_md_betaScale_set) {
23917   {
23918     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
23919     double arg2 ;
23920     void *argp1 = 0 ;
23921     int res1 = 0 ;
23922     double val2 ;
23923     int ecode2 = 0 ;
23924     int argvi = 0;
23925     dXSARGS;
23926 
23927     if ((items < 2) || (items > 2)) {
23928       SWIG_croak("Usage: md_betaScale_set(self,betaScale);");
23929     }
23930     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
23931     if (!SWIG_IsOK(res1)) {
23932       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_betaScale_set" "', argument " "1"" of type '" "vrna_md_t *""'");
23933     }
23934     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
23935     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
23936     if (!SWIG_IsOK(ecode2)) {
23937       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_betaScale_set" "', argument " "2"" of type '" "double""'");
23938     }
23939     arg2 = static_cast< double >(val2);
23940     if (arg1) (arg1)->betaScale = arg2;
23941     ST(argvi) = &PL_sv_undef;
23942 
23943 
23944     XSRETURN(argvi);
23945   fail:
23946 
23947 
23948     SWIG_croak_null();
23949   }
23950 }
23951 
23952 
XS(_wrap_md_betaScale_get)23953 XS(_wrap_md_betaScale_get) {
23954   {
23955     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
23956     void *argp1 = 0 ;
23957     int res1 = 0 ;
23958     int argvi = 0;
23959     double result;
23960     dXSARGS;
23961 
23962     if ((items < 1) || (items > 1)) {
23963       SWIG_croak("Usage: md_betaScale_get(self);");
23964     }
23965     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
23966     if (!SWIG_IsOK(res1)) {
23967       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_betaScale_get" "', argument " "1"" of type '" "vrna_md_t *""'");
23968     }
23969     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
23970     result = (double) ((arg1)->betaScale);
23971     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
23972 
23973     XSRETURN(argvi);
23974   fail:
23975 
23976     SWIG_croak_null();
23977   }
23978 }
23979 
23980 
XS(_wrap_md_pf_smooth_set)23981 XS(_wrap_md_pf_smooth_set) {
23982   {
23983     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
23984     int arg2 ;
23985     void *argp1 = 0 ;
23986     int res1 = 0 ;
23987     int val2 ;
23988     int ecode2 = 0 ;
23989     int argvi = 0;
23990     dXSARGS;
23991 
23992     if ((items < 2) || (items > 2)) {
23993       SWIG_croak("Usage: md_pf_smooth_set(self,pf_smooth);");
23994     }
23995     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
23996     if (!SWIG_IsOK(res1)) {
23997       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_pf_smooth_set" "', argument " "1"" of type '" "vrna_md_t *""'");
23998     }
23999     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24000     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24001     if (!SWIG_IsOK(ecode2)) {
24002       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_pf_smooth_set" "', argument " "2"" of type '" "int""'");
24003     }
24004     arg2 = static_cast< int >(val2);
24005     if (arg1) (arg1)->pf_smooth = arg2;
24006     ST(argvi) = &PL_sv_undef;
24007 
24008 
24009     XSRETURN(argvi);
24010   fail:
24011 
24012 
24013     SWIG_croak_null();
24014   }
24015 }
24016 
24017 
XS(_wrap_md_pf_smooth_get)24018 XS(_wrap_md_pf_smooth_get) {
24019   {
24020     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24021     void *argp1 = 0 ;
24022     int res1 = 0 ;
24023     int argvi = 0;
24024     int result;
24025     dXSARGS;
24026 
24027     if ((items < 1) || (items > 1)) {
24028       SWIG_croak("Usage: md_pf_smooth_get(self);");
24029     }
24030     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24031     if (!SWIG_IsOK(res1)) {
24032       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_pf_smooth_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24033     }
24034     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24035     result = (int) ((arg1)->pf_smooth);
24036     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24037 
24038     XSRETURN(argvi);
24039   fail:
24040 
24041     SWIG_croak_null();
24042   }
24043 }
24044 
24045 
XS(_wrap_md_dangles_set)24046 XS(_wrap_md_dangles_set) {
24047   {
24048     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24049     int arg2 ;
24050     void *argp1 = 0 ;
24051     int res1 = 0 ;
24052     int val2 ;
24053     int ecode2 = 0 ;
24054     int argvi = 0;
24055     dXSARGS;
24056 
24057     if ((items < 2) || (items > 2)) {
24058       SWIG_croak("Usage: md_dangles_set(self,dangles);");
24059     }
24060     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24061     if (!SWIG_IsOK(res1)) {
24062       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_dangles_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24063     }
24064     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24065     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24066     if (!SWIG_IsOK(ecode2)) {
24067       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_dangles_set" "', argument " "2"" of type '" "int""'");
24068     }
24069     arg2 = static_cast< int >(val2);
24070     if (arg1) (arg1)->dangles = arg2;
24071     ST(argvi) = &PL_sv_undef;
24072 
24073 
24074     XSRETURN(argvi);
24075   fail:
24076 
24077 
24078     SWIG_croak_null();
24079   }
24080 }
24081 
24082 
XS(_wrap_md_dangles_get)24083 XS(_wrap_md_dangles_get) {
24084   {
24085     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24086     void *argp1 = 0 ;
24087     int res1 = 0 ;
24088     int argvi = 0;
24089     int result;
24090     dXSARGS;
24091 
24092     if ((items < 1) || (items > 1)) {
24093       SWIG_croak("Usage: md_dangles_get(self);");
24094     }
24095     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24096     if (!SWIG_IsOK(res1)) {
24097       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_dangles_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24098     }
24099     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24100     result = (int) ((arg1)->dangles);
24101     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24102 
24103     XSRETURN(argvi);
24104   fail:
24105 
24106     SWIG_croak_null();
24107   }
24108 }
24109 
24110 
XS(_wrap_md_special_hp_set)24111 XS(_wrap_md_special_hp_set) {
24112   {
24113     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24114     int arg2 ;
24115     void *argp1 = 0 ;
24116     int res1 = 0 ;
24117     int val2 ;
24118     int ecode2 = 0 ;
24119     int argvi = 0;
24120     dXSARGS;
24121 
24122     if ((items < 2) || (items > 2)) {
24123       SWIG_croak("Usage: md_special_hp_set(self,special_hp);");
24124     }
24125     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24126     if (!SWIG_IsOK(res1)) {
24127       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_special_hp_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24128     }
24129     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24130     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24131     if (!SWIG_IsOK(ecode2)) {
24132       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_special_hp_set" "', argument " "2"" of type '" "int""'");
24133     }
24134     arg2 = static_cast< int >(val2);
24135     if (arg1) (arg1)->special_hp = arg2;
24136     ST(argvi) = &PL_sv_undef;
24137 
24138 
24139     XSRETURN(argvi);
24140   fail:
24141 
24142 
24143     SWIG_croak_null();
24144   }
24145 }
24146 
24147 
XS(_wrap_md_special_hp_get)24148 XS(_wrap_md_special_hp_get) {
24149   {
24150     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24151     void *argp1 = 0 ;
24152     int res1 = 0 ;
24153     int argvi = 0;
24154     int result;
24155     dXSARGS;
24156 
24157     if ((items < 1) || (items > 1)) {
24158       SWIG_croak("Usage: md_special_hp_get(self);");
24159     }
24160     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24161     if (!SWIG_IsOK(res1)) {
24162       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_special_hp_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24163     }
24164     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24165     result = (int) ((arg1)->special_hp);
24166     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24167 
24168     XSRETURN(argvi);
24169   fail:
24170 
24171     SWIG_croak_null();
24172   }
24173 }
24174 
24175 
XS(_wrap_md_noLP_set)24176 XS(_wrap_md_noLP_set) {
24177   {
24178     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24179     int arg2 ;
24180     void *argp1 = 0 ;
24181     int res1 = 0 ;
24182     int val2 ;
24183     int ecode2 = 0 ;
24184     int argvi = 0;
24185     dXSARGS;
24186 
24187     if ((items < 2) || (items > 2)) {
24188       SWIG_croak("Usage: md_noLP_set(self,noLP);");
24189     }
24190     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24191     if (!SWIG_IsOK(res1)) {
24192       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_noLP_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24193     }
24194     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24195     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24196     if (!SWIG_IsOK(ecode2)) {
24197       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_noLP_set" "', argument " "2"" of type '" "int""'");
24198     }
24199     arg2 = static_cast< int >(val2);
24200     if (arg1) (arg1)->noLP = arg2;
24201     ST(argvi) = &PL_sv_undef;
24202 
24203 
24204     XSRETURN(argvi);
24205   fail:
24206 
24207 
24208     SWIG_croak_null();
24209   }
24210 }
24211 
24212 
XS(_wrap_md_noLP_get)24213 XS(_wrap_md_noLP_get) {
24214   {
24215     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24216     void *argp1 = 0 ;
24217     int res1 = 0 ;
24218     int argvi = 0;
24219     int result;
24220     dXSARGS;
24221 
24222     if ((items < 1) || (items > 1)) {
24223       SWIG_croak("Usage: md_noLP_get(self);");
24224     }
24225     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24226     if (!SWIG_IsOK(res1)) {
24227       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_noLP_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24228     }
24229     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24230     result = (int) ((arg1)->noLP);
24231     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24232 
24233     XSRETURN(argvi);
24234   fail:
24235 
24236     SWIG_croak_null();
24237   }
24238 }
24239 
24240 
XS(_wrap_md_noGU_set)24241 XS(_wrap_md_noGU_set) {
24242   {
24243     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24244     int arg2 ;
24245     void *argp1 = 0 ;
24246     int res1 = 0 ;
24247     int val2 ;
24248     int ecode2 = 0 ;
24249     int argvi = 0;
24250     dXSARGS;
24251 
24252     if ((items < 2) || (items > 2)) {
24253       SWIG_croak("Usage: md_noGU_set(self,noGU);");
24254     }
24255     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24256     if (!SWIG_IsOK(res1)) {
24257       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_noGU_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24258     }
24259     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24260     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24261     if (!SWIG_IsOK(ecode2)) {
24262       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_noGU_set" "', argument " "2"" of type '" "int""'");
24263     }
24264     arg2 = static_cast< int >(val2);
24265     if (arg1) (arg1)->noGU = arg2;
24266     ST(argvi) = &PL_sv_undef;
24267 
24268 
24269     XSRETURN(argvi);
24270   fail:
24271 
24272 
24273     SWIG_croak_null();
24274   }
24275 }
24276 
24277 
XS(_wrap_md_noGU_get)24278 XS(_wrap_md_noGU_get) {
24279   {
24280     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24281     void *argp1 = 0 ;
24282     int res1 = 0 ;
24283     int argvi = 0;
24284     int result;
24285     dXSARGS;
24286 
24287     if ((items < 1) || (items > 1)) {
24288       SWIG_croak("Usage: md_noGU_get(self);");
24289     }
24290     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24291     if (!SWIG_IsOK(res1)) {
24292       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_noGU_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24293     }
24294     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24295     result = (int) ((arg1)->noGU);
24296     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24297 
24298     XSRETURN(argvi);
24299   fail:
24300 
24301     SWIG_croak_null();
24302   }
24303 }
24304 
24305 
XS(_wrap_md_noGUclosure_set)24306 XS(_wrap_md_noGUclosure_set) {
24307   {
24308     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24309     int arg2 ;
24310     void *argp1 = 0 ;
24311     int res1 = 0 ;
24312     int val2 ;
24313     int ecode2 = 0 ;
24314     int argvi = 0;
24315     dXSARGS;
24316 
24317     if ((items < 2) || (items > 2)) {
24318       SWIG_croak("Usage: md_noGUclosure_set(self,noGUclosure);");
24319     }
24320     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24321     if (!SWIG_IsOK(res1)) {
24322       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_noGUclosure_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24323     }
24324     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24325     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24326     if (!SWIG_IsOK(ecode2)) {
24327       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_noGUclosure_set" "', argument " "2"" of type '" "int""'");
24328     }
24329     arg2 = static_cast< int >(val2);
24330     if (arg1) (arg1)->noGUclosure = arg2;
24331     ST(argvi) = &PL_sv_undef;
24332 
24333 
24334     XSRETURN(argvi);
24335   fail:
24336 
24337 
24338     SWIG_croak_null();
24339   }
24340 }
24341 
24342 
XS(_wrap_md_noGUclosure_get)24343 XS(_wrap_md_noGUclosure_get) {
24344   {
24345     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24346     void *argp1 = 0 ;
24347     int res1 = 0 ;
24348     int argvi = 0;
24349     int result;
24350     dXSARGS;
24351 
24352     if ((items < 1) || (items > 1)) {
24353       SWIG_croak("Usage: md_noGUclosure_get(self);");
24354     }
24355     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24356     if (!SWIG_IsOK(res1)) {
24357       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_noGUclosure_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24358     }
24359     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24360     result = (int) ((arg1)->noGUclosure);
24361     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24362 
24363     XSRETURN(argvi);
24364   fail:
24365 
24366     SWIG_croak_null();
24367   }
24368 }
24369 
24370 
XS(_wrap_md_logML_set)24371 XS(_wrap_md_logML_set) {
24372   {
24373     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24374     int arg2 ;
24375     void *argp1 = 0 ;
24376     int res1 = 0 ;
24377     int val2 ;
24378     int ecode2 = 0 ;
24379     int argvi = 0;
24380     dXSARGS;
24381 
24382     if ((items < 2) || (items > 2)) {
24383       SWIG_croak("Usage: md_logML_set(self,logML);");
24384     }
24385     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24386     if (!SWIG_IsOK(res1)) {
24387       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_logML_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24388     }
24389     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24390     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24391     if (!SWIG_IsOK(ecode2)) {
24392       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_logML_set" "', argument " "2"" of type '" "int""'");
24393     }
24394     arg2 = static_cast< int >(val2);
24395     if (arg1) (arg1)->logML = arg2;
24396     ST(argvi) = &PL_sv_undef;
24397 
24398 
24399     XSRETURN(argvi);
24400   fail:
24401 
24402 
24403     SWIG_croak_null();
24404   }
24405 }
24406 
24407 
XS(_wrap_md_logML_get)24408 XS(_wrap_md_logML_get) {
24409   {
24410     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24411     void *argp1 = 0 ;
24412     int res1 = 0 ;
24413     int argvi = 0;
24414     int result;
24415     dXSARGS;
24416 
24417     if ((items < 1) || (items > 1)) {
24418       SWIG_croak("Usage: md_logML_get(self);");
24419     }
24420     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24421     if (!SWIG_IsOK(res1)) {
24422       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_logML_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24423     }
24424     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24425     result = (int) ((arg1)->logML);
24426     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24427 
24428     XSRETURN(argvi);
24429   fail:
24430 
24431     SWIG_croak_null();
24432   }
24433 }
24434 
24435 
XS(_wrap_md_circ_set)24436 XS(_wrap_md_circ_set) {
24437   {
24438     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24439     int arg2 ;
24440     void *argp1 = 0 ;
24441     int res1 = 0 ;
24442     int val2 ;
24443     int ecode2 = 0 ;
24444     int argvi = 0;
24445     dXSARGS;
24446 
24447     if ((items < 2) || (items > 2)) {
24448       SWIG_croak("Usage: md_circ_set(self,circ);");
24449     }
24450     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24451     if (!SWIG_IsOK(res1)) {
24452       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_circ_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24453     }
24454     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24455     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24456     if (!SWIG_IsOK(ecode2)) {
24457       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_circ_set" "', argument " "2"" of type '" "int""'");
24458     }
24459     arg2 = static_cast< int >(val2);
24460     if (arg1) (arg1)->circ = arg2;
24461     ST(argvi) = &PL_sv_undef;
24462 
24463 
24464     XSRETURN(argvi);
24465   fail:
24466 
24467 
24468     SWIG_croak_null();
24469   }
24470 }
24471 
24472 
XS(_wrap_md_circ_get)24473 XS(_wrap_md_circ_get) {
24474   {
24475     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24476     void *argp1 = 0 ;
24477     int res1 = 0 ;
24478     int argvi = 0;
24479     int result;
24480     dXSARGS;
24481 
24482     if ((items < 1) || (items > 1)) {
24483       SWIG_croak("Usage: md_circ_get(self);");
24484     }
24485     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24486     if (!SWIG_IsOK(res1)) {
24487       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_circ_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24488     }
24489     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24490     result = (int) ((arg1)->circ);
24491     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24492 
24493     XSRETURN(argvi);
24494   fail:
24495 
24496     SWIG_croak_null();
24497   }
24498 }
24499 
24500 
XS(_wrap_md_gquad_set)24501 XS(_wrap_md_gquad_set) {
24502   {
24503     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24504     int arg2 ;
24505     void *argp1 = 0 ;
24506     int res1 = 0 ;
24507     int val2 ;
24508     int ecode2 = 0 ;
24509     int argvi = 0;
24510     dXSARGS;
24511 
24512     if ((items < 2) || (items > 2)) {
24513       SWIG_croak("Usage: md_gquad_set(self,gquad);");
24514     }
24515     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24516     if (!SWIG_IsOK(res1)) {
24517       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_gquad_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24518     }
24519     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24520     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24521     if (!SWIG_IsOK(ecode2)) {
24522       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_gquad_set" "', argument " "2"" of type '" "int""'");
24523     }
24524     arg2 = static_cast< int >(val2);
24525     if (arg1) (arg1)->gquad = arg2;
24526     ST(argvi) = &PL_sv_undef;
24527 
24528 
24529     XSRETURN(argvi);
24530   fail:
24531 
24532 
24533     SWIG_croak_null();
24534   }
24535 }
24536 
24537 
XS(_wrap_md_gquad_get)24538 XS(_wrap_md_gquad_get) {
24539   {
24540     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24541     void *argp1 = 0 ;
24542     int res1 = 0 ;
24543     int argvi = 0;
24544     int result;
24545     dXSARGS;
24546 
24547     if ((items < 1) || (items > 1)) {
24548       SWIG_croak("Usage: md_gquad_get(self);");
24549     }
24550     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24551     if (!SWIG_IsOK(res1)) {
24552       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_gquad_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24553     }
24554     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24555     result = (int) ((arg1)->gquad);
24556     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24557 
24558     XSRETURN(argvi);
24559   fail:
24560 
24561     SWIG_croak_null();
24562   }
24563 }
24564 
24565 
XS(_wrap_md_uniq_ML_set)24566 XS(_wrap_md_uniq_ML_set) {
24567   {
24568     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24569     int arg2 ;
24570     void *argp1 = 0 ;
24571     int res1 = 0 ;
24572     int val2 ;
24573     int ecode2 = 0 ;
24574     int argvi = 0;
24575     dXSARGS;
24576 
24577     if ((items < 2) || (items > 2)) {
24578       SWIG_croak("Usage: md_uniq_ML_set(self,uniq_ML);");
24579     }
24580     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24581     if (!SWIG_IsOK(res1)) {
24582       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_uniq_ML_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24583     }
24584     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24585     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24586     if (!SWIG_IsOK(ecode2)) {
24587       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_uniq_ML_set" "', argument " "2"" of type '" "int""'");
24588     }
24589     arg2 = static_cast< int >(val2);
24590     if (arg1) (arg1)->uniq_ML = arg2;
24591     ST(argvi) = &PL_sv_undef;
24592 
24593 
24594     XSRETURN(argvi);
24595   fail:
24596 
24597 
24598     SWIG_croak_null();
24599   }
24600 }
24601 
24602 
XS(_wrap_md_uniq_ML_get)24603 XS(_wrap_md_uniq_ML_get) {
24604   {
24605     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24606     void *argp1 = 0 ;
24607     int res1 = 0 ;
24608     int argvi = 0;
24609     int result;
24610     dXSARGS;
24611 
24612     if ((items < 1) || (items > 1)) {
24613       SWIG_croak("Usage: md_uniq_ML_get(self);");
24614     }
24615     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24616     if (!SWIG_IsOK(res1)) {
24617       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_uniq_ML_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24618     }
24619     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24620     result = (int) ((arg1)->uniq_ML);
24621     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24622 
24623     XSRETURN(argvi);
24624   fail:
24625 
24626     SWIG_croak_null();
24627   }
24628 }
24629 
24630 
XS(_wrap_md_energy_set_set)24631 XS(_wrap_md_energy_set_set) {
24632   {
24633     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24634     int arg2 ;
24635     void *argp1 = 0 ;
24636     int res1 = 0 ;
24637     int val2 ;
24638     int ecode2 = 0 ;
24639     int argvi = 0;
24640     dXSARGS;
24641 
24642     if ((items < 2) || (items > 2)) {
24643       SWIG_croak("Usage: md_energy_set_set(self,energy_set);");
24644     }
24645     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24646     if (!SWIG_IsOK(res1)) {
24647       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_energy_set_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24648     }
24649     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24650     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24651     if (!SWIG_IsOK(ecode2)) {
24652       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_energy_set_set" "', argument " "2"" of type '" "int""'");
24653     }
24654     arg2 = static_cast< int >(val2);
24655     if (arg1) (arg1)->energy_set = arg2;
24656     ST(argvi) = &PL_sv_undef;
24657 
24658 
24659     XSRETURN(argvi);
24660   fail:
24661 
24662 
24663     SWIG_croak_null();
24664   }
24665 }
24666 
24667 
XS(_wrap_md_energy_set_get)24668 XS(_wrap_md_energy_set_get) {
24669   {
24670     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24671     void *argp1 = 0 ;
24672     int res1 = 0 ;
24673     int argvi = 0;
24674     int result;
24675     dXSARGS;
24676 
24677     if ((items < 1) || (items > 1)) {
24678       SWIG_croak("Usage: md_energy_set_get(self);");
24679     }
24680     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24681     if (!SWIG_IsOK(res1)) {
24682       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_energy_set_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24683     }
24684     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24685     result = (int) ((arg1)->energy_set);
24686     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24687 
24688     XSRETURN(argvi);
24689   fail:
24690 
24691     SWIG_croak_null();
24692   }
24693 }
24694 
24695 
XS(_wrap_md_backtrack_set)24696 XS(_wrap_md_backtrack_set) {
24697   {
24698     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24699     int arg2 ;
24700     void *argp1 = 0 ;
24701     int res1 = 0 ;
24702     int val2 ;
24703     int ecode2 = 0 ;
24704     int argvi = 0;
24705     dXSARGS;
24706 
24707     if ((items < 2) || (items > 2)) {
24708       SWIG_croak("Usage: md_backtrack_set(self,backtrack);");
24709     }
24710     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24711     if (!SWIG_IsOK(res1)) {
24712       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_backtrack_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24713     }
24714     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24715     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24716     if (!SWIG_IsOK(ecode2)) {
24717       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_backtrack_set" "', argument " "2"" of type '" "int""'");
24718     }
24719     arg2 = static_cast< int >(val2);
24720     if (arg1) (arg1)->backtrack = arg2;
24721     ST(argvi) = &PL_sv_undef;
24722 
24723 
24724     XSRETURN(argvi);
24725   fail:
24726 
24727 
24728     SWIG_croak_null();
24729   }
24730 }
24731 
24732 
XS(_wrap_md_backtrack_get)24733 XS(_wrap_md_backtrack_get) {
24734   {
24735     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24736     void *argp1 = 0 ;
24737     int res1 = 0 ;
24738     int argvi = 0;
24739     int result;
24740     dXSARGS;
24741 
24742     if ((items < 1) || (items > 1)) {
24743       SWIG_croak("Usage: md_backtrack_get(self);");
24744     }
24745     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24746     if (!SWIG_IsOK(res1)) {
24747       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_backtrack_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24748     }
24749     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24750     result = (int) ((arg1)->backtrack);
24751     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24752 
24753     XSRETURN(argvi);
24754   fail:
24755 
24756     SWIG_croak_null();
24757   }
24758 }
24759 
24760 
XS(_wrap_md_backtrack_type_set)24761 XS(_wrap_md_backtrack_type_set) {
24762   {
24763     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24764     char arg2 ;
24765     void *argp1 = 0 ;
24766     int res1 = 0 ;
24767     char val2 ;
24768     int ecode2 = 0 ;
24769     int argvi = 0;
24770     dXSARGS;
24771 
24772     if ((items < 2) || (items > 2)) {
24773       SWIG_croak("Usage: md_backtrack_type_set(self,backtrack_type);");
24774     }
24775     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24776     if (!SWIG_IsOK(res1)) {
24777       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_backtrack_type_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24778     }
24779     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24780     ecode2 = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24781     if (!SWIG_IsOK(ecode2)) {
24782       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_backtrack_type_set" "', argument " "2"" of type '" "char""'");
24783     }
24784     arg2 = static_cast< char >(val2);
24785     if (arg1) (arg1)->backtrack_type = arg2;
24786     ST(argvi) = &PL_sv_undef;
24787 
24788 
24789     XSRETURN(argvi);
24790   fail:
24791 
24792 
24793     SWIG_croak_null();
24794   }
24795 }
24796 
24797 
XS(_wrap_md_backtrack_type_get)24798 XS(_wrap_md_backtrack_type_get) {
24799   {
24800     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24801     void *argp1 = 0 ;
24802     int res1 = 0 ;
24803     int argvi = 0;
24804     char result;
24805     dXSARGS;
24806 
24807     if ((items < 1) || (items > 1)) {
24808       SWIG_croak("Usage: md_backtrack_type_get(self);");
24809     }
24810     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24811     if (!SWIG_IsOK(res1)) {
24812       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_backtrack_type_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24813     }
24814     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24815     result = (char) ((arg1)->backtrack_type);
24816     ST(argvi) = SWIG_From_char  SWIG_PERL_CALL_ARGS_1(static_cast< char >(result)); argvi++ ;
24817 
24818     XSRETURN(argvi);
24819   fail:
24820 
24821     SWIG_croak_null();
24822   }
24823 }
24824 
24825 
XS(_wrap_md_compute_bpp_set)24826 XS(_wrap_md_compute_bpp_set) {
24827   {
24828     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24829     int arg2 ;
24830     void *argp1 = 0 ;
24831     int res1 = 0 ;
24832     int val2 ;
24833     int ecode2 = 0 ;
24834     int argvi = 0;
24835     dXSARGS;
24836 
24837     if ((items < 2) || (items > 2)) {
24838       SWIG_croak("Usage: md_compute_bpp_set(self,compute_bpp);");
24839     }
24840     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24841     if (!SWIG_IsOK(res1)) {
24842       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_compute_bpp_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24843     }
24844     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24845     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24846     if (!SWIG_IsOK(ecode2)) {
24847       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_compute_bpp_set" "', argument " "2"" of type '" "int""'");
24848     }
24849     arg2 = static_cast< int >(val2);
24850     if (arg1) (arg1)->compute_bpp = arg2;
24851     ST(argvi) = &PL_sv_undef;
24852 
24853 
24854     XSRETURN(argvi);
24855   fail:
24856 
24857 
24858     SWIG_croak_null();
24859   }
24860 }
24861 
24862 
XS(_wrap_md_compute_bpp_get)24863 XS(_wrap_md_compute_bpp_get) {
24864   {
24865     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24866     void *argp1 = 0 ;
24867     int res1 = 0 ;
24868     int argvi = 0;
24869     int result;
24870     dXSARGS;
24871 
24872     if ((items < 1) || (items > 1)) {
24873       SWIG_croak("Usage: md_compute_bpp_get(self);");
24874     }
24875     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24876     if (!SWIG_IsOK(res1)) {
24877       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_compute_bpp_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24878     }
24879     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24880     result = (int) ((arg1)->compute_bpp);
24881     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
24882 
24883     XSRETURN(argvi);
24884   fail:
24885 
24886     SWIG_croak_null();
24887   }
24888 }
24889 
24890 
XS(_wrap_md_nonstandards_set)24891 XS(_wrap_md_nonstandards_set) {
24892   {
24893     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24894     char *arg2 ;
24895     void *argp1 = 0 ;
24896     int res1 = 0 ;
24897     char temp2[64] ;
24898     int res2 ;
24899     int argvi = 0;
24900     dXSARGS;
24901 
24902     if ((items < 2) || (items > 2)) {
24903       SWIG_croak("Usage: md_nonstandards_set(self,nonstandards);");
24904     }
24905     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24906     if (!SWIG_IsOK(res1)) {
24907       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_nonstandards_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24908     }
24909     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24910     res2 = SWIG_AsCharArray(ST(1), temp2, 64);
24911     if (!SWIG_IsOK(res2)) {
24912       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "md_nonstandards_set" "', argument " "2"" of type '" "char [64]""'");
24913     }
24914     arg2 = reinterpret_cast< char * >(temp2);
24915     if (arg2) memcpy(arg1->nonstandards,arg2,64*sizeof(char));
24916     else memset(arg1->nonstandards,0,64*sizeof(char));
24917     ST(argvi) = &PL_sv_undef;
24918 
24919 
24920     XSRETURN(argvi);
24921   fail:
24922 
24923 
24924     SWIG_croak_null();
24925   }
24926 }
24927 
24928 
XS(_wrap_md_nonstandards_get)24929 XS(_wrap_md_nonstandards_get) {
24930   {
24931     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24932     void *argp1 = 0 ;
24933     int res1 = 0 ;
24934     int argvi = 0;
24935     char *result = 0 ;
24936     dXSARGS;
24937 
24938     if ((items < 1) || (items > 1)) {
24939       SWIG_croak("Usage: md_nonstandards_get(self);");
24940     }
24941     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24942     if (!SWIG_IsOK(res1)) {
24943       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_nonstandards_get" "', argument " "1"" of type '" "vrna_md_t *""'");
24944     }
24945     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24946     result = (char *)(char *) ((arg1)->nonstandards);
24947     {
24948       size_t size = SWIG_strnlen(result, 64);
24949 
24950 
24951 
24952       ST(argvi) = SWIG_FromCharPtrAndSize(result, size); argvi++ ;
24953     }
24954 
24955     XSRETURN(argvi);
24956   fail:
24957 
24958     SWIG_croak_null();
24959   }
24960 }
24961 
24962 
XS(_wrap_md_max_bp_span_set)24963 XS(_wrap_md_max_bp_span_set) {
24964   {
24965     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
24966     int arg2 ;
24967     void *argp1 = 0 ;
24968     int res1 = 0 ;
24969     int val2 ;
24970     int ecode2 = 0 ;
24971     int argvi = 0;
24972     dXSARGS;
24973 
24974     if ((items < 2) || (items > 2)) {
24975       SWIG_croak("Usage: md_max_bp_span_set(self,max_bp_span);");
24976     }
24977     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
24978     if (!SWIG_IsOK(res1)) {
24979       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_max_bp_span_set" "', argument " "1"" of type '" "vrna_md_t *""'");
24980     }
24981     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
24982     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
24983     if (!SWIG_IsOK(ecode2)) {
24984       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_max_bp_span_set" "', argument " "2"" of type '" "int""'");
24985     }
24986     arg2 = static_cast< int >(val2);
24987     if (arg1) (arg1)->max_bp_span = arg2;
24988     ST(argvi) = &PL_sv_undef;
24989 
24990 
24991     XSRETURN(argvi);
24992   fail:
24993 
24994 
24995     SWIG_croak_null();
24996   }
24997 }
24998 
24999 
XS(_wrap_md_max_bp_span_get)25000 XS(_wrap_md_max_bp_span_get) {
25001   {
25002     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25003     void *argp1 = 0 ;
25004     int res1 = 0 ;
25005     int argvi = 0;
25006     int result;
25007     dXSARGS;
25008 
25009     if ((items < 1) || (items > 1)) {
25010       SWIG_croak("Usage: md_max_bp_span_get(self);");
25011     }
25012     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25013     if (!SWIG_IsOK(res1)) {
25014       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_max_bp_span_get" "', argument " "1"" of type '" "vrna_md_t *""'");
25015     }
25016     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25017     result = (int) ((arg1)->max_bp_span);
25018     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
25019 
25020     XSRETURN(argvi);
25021   fail:
25022 
25023     SWIG_croak_null();
25024   }
25025 }
25026 
25027 
XS(_wrap_md_min_loop_size_set)25028 XS(_wrap_md_min_loop_size_set) {
25029   {
25030     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25031     int arg2 ;
25032     void *argp1 = 0 ;
25033     int res1 = 0 ;
25034     int val2 ;
25035     int ecode2 = 0 ;
25036     int argvi = 0;
25037     dXSARGS;
25038 
25039     if ((items < 2) || (items > 2)) {
25040       SWIG_croak("Usage: md_min_loop_size_set(self,min_loop_size);");
25041     }
25042     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25043     if (!SWIG_IsOK(res1)) {
25044       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_min_loop_size_set" "', argument " "1"" of type '" "vrna_md_t *""'");
25045     }
25046     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25047     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
25048     if (!SWIG_IsOK(ecode2)) {
25049       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_min_loop_size_set" "', argument " "2"" of type '" "int""'");
25050     }
25051     arg2 = static_cast< int >(val2);
25052     if (arg1) (arg1)->min_loop_size = arg2;
25053     ST(argvi) = &PL_sv_undef;
25054 
25055 
25056     XSRETURN(argvi);
25057   fail:
25058 
25059 
25060     SWIG_croak_null();
25061   }
25062 }
25063 
25064 
XS(_wrap_md_min_loop_size_get)25065 XS(_wrap_md_min_loop_size_get) {
25066   {
25067     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25068     void *argp1 = 0 ;
25069     int res1 = 0 ;
25070     int argvi = 0;
25071     int result;
25072     dXSARGS;
25073 
25074     if ((items < 1) || (items > 1)) {
25075       SWIG_croak("Usage: md_min_loop_size_get(self);");
25076     }
25077     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25078     if (!SWIG_IsOK(res1)) {
25079       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_min_loop_size_get" "', argument " "1"" of type '" "vrna_md_t *""'");
25080     }
25081     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25082     result = (int) ((arg1)->min_loop_size);
25083     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
25084 
25085     XSRETURN(argvi);
25086   fail:
25087 
25088     SWIG_croak_null();
25089   }
25090 }
25091 
25092 
XS(_wrap_md_window_size_set)25093 XS(_wrap_md_window_size_set) {
25094   {
25095     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25096     int arg2 ;
25097     void *argp1 = 0 ;
25098     int res1 = 0 ;
25099     int val2 ;
25100     int ecode2 = 0 ;
25101     int argvi = 0;
25102     dXSARGS;
25103 
25104     if ((items < 2) || (items > 2)) {
25105       SWIG_croak("Usage: md_window_size_set(self,window_size);");
25106     }
25107     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25108     if (!SWIG_IsOK(res1)) {
25109       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_window_size_set" "', argument " "1"" of type '" "vrna_md_t *""'");
25110     }
25111     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25112     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
25113     if (!SWIG_IsOK(ecode2)) {
25114       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_window_size_set" "', argument " "2"" of type '" "int""'");
25115     }
25116     arg2 = static_cast< int >(val2);
25117     if (arg1) (arg1)->window_size = arg2;
25118     ST(argvi) = &PL_sv_undef;
25119 
25120 
25121     XSRETURN(argvi);
25122   fail:
25123 
25124 
25125     SWIG_croak_null();
25126   }
25127 }
25128 
25129 
XS(_wrap_md_window_size_get)25130 XS(_wrap_md_window_size_get) {
25131   {
25132     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25133     void *argp1 = 0 ;
25134     int res1 = 0 ;
25135     int argvi = 0;
25136     int result;
25137     dXSARGS;
25138 
25139     if ((items < 1) || (items > 1)) {
25140       SWIG_croak("Usage: md_window_size_get(self);");
25141     }
25142     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25143     if (!SWIG_IsOK(res1)) {
25144       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_window_size_get" "', argument " "1"" of type '" "vrna_md_t *""'");
25145     }
25146     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25147     result = (int) ((arg1)->window_size);
25148     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
25149 
25150     XSRETURN(argvi);
25151   fail:
25152 
25153     SWIG_croak_null();
25154   }
25155 }
25156 
25157 
XS(_wrap_md_oldAliEn_set)25158 XS(_wrap_md_oldAliEn_set) {
25159   {
25160     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25161     int arg2 ;
25162     void *argp1 = 0 ;
25163     int res1 = 0 ;
25164     int val2 ;
25165     int ecode2 = 0 ;
25166     int argvi = 0;
25167     dXSARGS;
25168 
25169     if ((items < 2) || (items > 2)) {
25170       SWIG_croak("Usage: md_oldAliEn_set(self,oldAliEn);");
25171     }
25172     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25173     if (!SWIG_IsOK(res1)) {
25174       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_oldAliEn_set" "', argument " "1"" of type '" "vrna_md_t *""'");
25175     }
25176     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25177     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
25178     if (!SWIG_IsOK(ecode2)) {
25179       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_oldAliEn_set" "', argument " "2"" of type '" "int""'");
25180     }
25181     arg2 = static_cast< int >(val2);
25182     if (arg1) (arg1)->oldAliEn = arg2;
25183     ST(argvi) = &PL_sv_undef;
25184 
25185 
25186     XSRETURN(argvi);
25187   fail:
25188 
25189 
25190     SWIG_croak_null();
25191   }
25192 }
25193 
25194 
XS(_wrap_md_oldAliEn_get)25195 XS(_wrap_md_oldAliEn_get) {
25196   {
25197     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25198     void *argp1 = 0 ;
25199     int res1 = 0 ;
25200     int argvi = 0;
25201     int result;
25202     dXSARGS;
25203 
25204     if ((items < 1) || (items > 1)) {
25205       SWIG_croak("Usage: md_oldAliEn_get(self);");
25206     }
25207     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25208     if (!SWIG_IsOK(res1)) {
25209       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_oldAliEn_get" "', argument " "1"" of type '" "vrna_md_t *""'");
25210     }
25211     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25212     result = (int) ((arg1)->oldAliEn);
25213     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
25214 
25215     XSRETURN(argvi);
25216   fail:
25217 
25218     SWIG_croak_null();
25219   }
25220 }
25221 
25222 
XS(_wrap_md_ribo_set)25223 XS(_wrap_md_ribo_set) {
25224   {
25225     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25226     int arg2 ;
25227     void *argp1 = 0 ;
25228     int res1 = 0 ;
25229     int val2 ;
25230     int ecode2 = 0 ;
25231     int argvi = 0;
25232     dXSARGS;
25233 
25234     if ((items < 2) || (items > 2)) {
25235       SWIG_croak("Usage: md_ribo_set(self,ribo);");
25236     }
25237     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25238     if (!SWIG_IsOK(res1)) {
25239       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_ribo_set" "', argument " "1"" of type '" "vrna_md_t *""'");
25240     }
25241     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25242     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
25243     if (!SWIG_IsOK(ecode2)) {
25244       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_ribo_set" "', argument " "2"" of type '" "int""'");
25245     }
25246     arg2 = static_cast< int >(val2);
25247     if (arg1) (arg1)->ribo = arg2;
25248     ST(argvi) = &PL_sv_undef;
25249 
25250 
25251     XSRETURN(argvi);
25252   fail:
25253 
25254 
25255     SWIG_croak_null();
25256   }
25257 }
25258 
25259 
XS(_wrap_md_ribo_get)25260 XS(_wrap_md_ribo_get) {
25261   {
25262     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25263     void *argp1 = 0 ;
25264     int res1 = 0 ;
25265     int argvi = 0;
25266     int result;
25267     dXSARGS;
25268 
25269     if ((items < 1) || (items > 1)) {
25270       SWIG_croak("Usage: md_ribo_get(self);");
25271     }
25272     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25273     if (!SWIG_IsOK(res1)) {
25274       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_ribo_get" "', argument " "1"" of type '" "vrna_md_t *""'");
25275     }
25276     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25277     result = (int) ((arg1)->ribo);
25278     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
25279 
25280     XSRETURN(argvi);
25281   fail:
25282 
25283     SWIG_croak_null();
25284   }
25285 }
25286 
25287 
XS(_wrap_md_cv_fact_set)25288 XS(_wrap_md_cv_fact_set) {
25289   {
25290     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25291     double arg2 ;
25292     void *argp1 = 0 ;
25293     int res1 = 0 ;
25294     double val2 ;
25295     int ecode2 = 0 ;
25296     int argvi = 0;
25297     dXSARGS;
25298 
25299     if ((items < 2) || (items > 2)) {
25300       SWIG_croak("Usage: md_cv_fact_set(self,cv_fact);");
25301     }
25302     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25303     if (!SWIG_IsOK(res1)) {
25304       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_cv_fact_set" "', argument " "1"" of type '" "vrna_md_t *""'");
25305     }
25306     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25307     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
25308     if (!SWIG_IsOK(ecode2)) {
25309       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_cv_fact_set" "', argument " "2"" of type '" "double""'");
25310     }
25311     arg2 = static_cast< double >(val2);
25312     if (arg1) (arg1)->cv_fact = arg2;
25313     ST(argvi) = &PL_sv_undef;
25314 
25315 
25316     XSRETURN(argvi);
25317   fail:
25318 
25319 
25320     SWIG_croak_null();
25321   }
25322 }
25323 
25324 
XS(_wrap_md_cv_fact_get)25325 XS(_wrap_md_cv_fact_get) {
25326   {
25327     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25328     void *argp1 = 0 ;
25329     int res1 = 0 ;
25330     int argvi = 0;
25331     double result;
25332     dXSARGS;
25333 
25334     if ((items < 1) || (items > 1)) {
25335       SWIG_croak("Usage: md_cv_fact_get(self);");
25336     }
25337     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25338     if (!SWIG_IsOK(res1)) {
25339       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_cv_fact_get" "', argument " "1"" of type '" "vrna_md_t *""'");
25340     }
25341     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25342     result = (double) ((arg1)->cv_fact);
25343     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
25344 
25345     XSRETURN(argvi);
25346   fail:
25347 
25348     SWIG_croak_null();
25349   }
25350 }
25351 
25352 
XS(_wrap_md_nc_fact_set)25353 XS(_wrap_md_nc_fact_set) {
25354   {
25355     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25356     double arg2 ;
25357     void *argp1 = 0 ;
25358     int res1 = 0 ;
25359     double val2 ;
25360     int ecode2 = 0 ;
25361     int argvi = 0;
25362     dXSARGS;
25363 
25364     if ((items < 2) || (items > 2)) {
25365       SWIG_croak("Usage: md_nc_fact_set(self,nc_fact);");
25366     }
25367     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25368     if (!SWIG_IsOK(res1)) {
25369       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_nc_fact_set" "', argument " "1"" of type '" "vrna_md_t *""'");
25370     }
25371     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25372     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
25373     if (!SWIG_IsOK(ecode2)) {
25374       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_nc_fact_set" "', argument " "2"" of type '" "double""'");
25375     }
25376     arg2 = static_cast< double >(val2);
25377     if (arg1) (arg1)->nc_fact = arg2;
25378     ST(argvi) = &PL_sv_undef;
25379 
25380 
25381     XSRETURN(argvi);
25382   fail:
25383 
25384 
25385     SWIG_croak_null();
25386   }
25387 }
25388 
25389 
XS(_wrap_md_nc_fact_get)25390 XS(_wrap_md_nc_fact_get) {
25391   {
25392     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25393     void *argp1 = 0 ;
25394     int res1 = 0 ;
25395     int argvi = 0;
25396     double result;
25397     dXSARGS;
25398 
25399     if ((items < 1) || (items > 1)) {
25400       SWIG_croak("Usage: md_nc_fact_get(self);");
25401     }
25402     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25403     if (!SWIG_IsOK(res1)) {
25404       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_nc_fact_get" "', argument " "1"" of type '" "vrna_md_t *""'");
25405     }
25406     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25407     result = (double) ((arg1)->nc_fact);
25408     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
25409 
25410     XSRETURN(argvi);
25411   fail:
25412 
25413     SWIG_croak_null();
25414   }
25415 }
25416 
25417 
XS(_wrap_md_sfact_set)25418 XS(_wrap_md_sfact_set) {
25419   {
25420     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25421     double arg2 ;
25422     void *argp1 = 0 ;
25423     int res1 = 0 ;
25424     double val2 ;
25425     int ecode2 = 0 ;
25426     int argvi = 0;
25427     dXSARGS;
25428 
25429     if ((items < 2) || (items > 2)) {
25430       SWIG_croak("Usage: md_sfact_set(self,sfact);");
25431     }
25432     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25433     if (!SWIG_IsOK(res1)) {
25434       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_sfact_set" "', argument " "1"" of type '" "vrna_md_t *""'");
25435     }
25436     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25437     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
25438     if (!SWIG_IsOK(ecode2)) {
25439       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "md_sfact_set" "', argument " "2"" of type '" "double""'");
25440     }
25441     arg2 = static_cast< double >(val2);
25442     if (arg1) (arg1)->sfact = arg2;
25443     ST(argvi) = &PL_sv_undef;
25444 
25445 
25446     XSRETURN(argvi);
25447   fail:
25448 
25449 
25450     SWIG_croak_null();
25451   }
25452 }
25453 
25454 
XS(_wrap_md_sfact_get)25455 XS(_wrap_md_sfact_get) {
25456   {
25457     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25458     void *argp1 = 0 ;
25459     int res1 = 0 ;
25460     int argvi = 0;
25461     double result;
25462     dXSARGS;
25463 
25464     if ((items < 1) || (items > 1)) {
25465       SWIG_croak("Usage: md_sfact_get(self);");
25466     }
25467     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25468     if (!SWIG_IsOK(res1)) {
25469       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_sfact_get" "', argument " "1"" of type '" "vrna_md_t *""'");
25470     }
25471     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25472     result = (double) ((arg1)->sfact);
25473     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
25474 
25475     XSRETURN(argvi);
25476   fail:
25477 
25478     SWIG_croak_null();
25479   }
25480 }
25481 
25482 
XS(_wrap_md_rtype_get)25483 XS(_wrap_md_rtype_get) {
25484   {
25485     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25486     void *argp1 = 0 ;
25487     int res1 = 0 ;
25488     int argvi = 0;
25489     int *result = 0 ;
25490     dXSARGS;
25491 
25492     if ((items < 1) || (items > 1)) {
25493       SWIG_croak("Usage: md_rtype_get(self);");
25494     }
25495     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25496     if (!SWIG_IsOK(res1)) {
25497       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_rtype_get" "', argument " "1"" of type '" "vrna_md_t *""'");
25498     }
25499     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25500     result = (int *)(int *) ((arg1)->rtype);
25501     {
25502       AV* av = newAV();
25503       int i = 0,len = 0;
25504       len = 8;
25505 
25506       for (i = 0; i < len ; i++) {
25507         SV* perlval = newSV(0);
25508         sv_setiv(perlval, (IV)result[i]);
25509         av_push(av, perlval);
25510       }
25511       ST(argvi) = newRV_noinc((SV*) av );
25512       sv_2mortal( ST(argvi) );
25513       argvi++;
25514     }
25515 
25516     XSRETURN(argvi);
25517   fail:
25518 
25519     SWIG_croak_null();
25520   }
25521 }
25522 
25523 
XS(_wrap_md_alias_get)25524 XS(_wrap_md_alias_get) {
25525   {
25526     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25527     void *argp1 = 0 ;
25528     int res1 = 0 ;
25529     int argvi = 0;
25530     short *result = 0 ;
25531     dXSARGS;
25532 
25533     if ((items < 1) || (items > 1)) {
25534       SWIG_croak("Usage: md_alias_get(self);");
25535     }
25536     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25537     if (!SWIG_IsOK(res1)) {
25538       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_alias_get" "', argument " "1"" of type '" "vrna_md_t *""'");
25539     }
25540     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25541     result = (short *)(short *) ((arg1)->alias);
25542     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_short, 0 | 0); argvi++ ;
25543 
25544     XSRETURN(argvi);
25545   fail:
25546 
25547     SWIG_croak_null();
25548   }
25549 }
25550 
25551 
XS(_wrap_md_pair_get)25552 XS(_wrap_md_pair_get) {
25553   {
25554     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
25555     void *argp1 = 0 ;
25556     int res1 = 0 ;
25557     int argvi = 0;
25558     int (*result)[MAXALPHA+1] = 0 ;
25559     dXSARGS;
25560 
25561     if ((items < 1) || (items > 1)) {
25562       SWIG_croak("Usage: md_pair_get(self);");
25563     }
25564     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
25565     if (!SWIG_IsOK(res1)) {
25566       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_pair_get" "', argument " "1"" of type '" "vrna_md_t *""'");
25567     }
25568     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
25569     result = (int (*)[MAXALPHA+1])(int (*)[MAXALPHA+1]) ((arg1)->pair);
25570     {
25571       AV *arr = newAV();
25572       int i,j = 0, len1 = 0, len2 = 0;
25573 
25574       len1 = MAXALPHA+1;
25575       len2 = MAXALPHA+1;
25576 
25577       for (i = 0; i < len1 ; i++) {
25578         AV *vec = newAV();
25579         for (j = 0; j < len2; j++) {
25580           SV *v = newSViv(result[i][j]);
25581           if (!av_store(vec, j, v))
25582           SvREFCNT_dec(v);
25583         }
25584         /* store reference to array */
25585         av_store(arr, i, newRV_noinc((SV*) vec));
25586       }
25587 
25588       ST(argvi) = newRV_noinc((SV*) arr );
25589       sv_2mortal( ST(argvi) );
25590       argvi++;
25591     }
25592 
25593     XSRETURN(argvi);
25594   fail:
25595 
25596     SWIG_croak_null();
25597   }
25598 }
25599 
25600 
XS(_wrap_new_md__SWIG_0)25601 XS(_wrap_new_md__SWIG_0) {
25602   {
25603     double arg1 ;
25604     double arg2 ;
25605     int arg3 ;
25606     int arg4 ;
25607     int arg5 ;
25608     int arg6 ;
25609     int arg7 ;
25610     int arg8 ;
25611     int arg9 ;
25612     int arg10 ;
25613     int arg11 ;
25614     int arg12 ;
25615     int arg13 ;
25616     int arg14 ;
25617     char arg15 ;
25618     int arg16 ;
25619     int arg17 ;
25620     int arg18 ;
25621     int arg19 ;
25622     int arg20 ;
25623     int arg21 ;
25624     double arg22 ;
25625     double arg23 ;
25626     double arg24 ;
25627     double val1 ;
25628     int ecode1 = 0 ;
25629     double val2 ;
25630     int ecode2 = 0 ;
25631     int val3 ;
25632     int ecode3 = 0 ;
25633     int val4 ;
25634     int ecode4 = 0 ;
25635     int val5 ;
25636     int ecode5 = 0 ;
25637     int val6 ;
25638     int ecode6 = 0 ;
25639     int val7 ;
25640     int ecode7 = 0 ;
25641     int val8 ;
25642     int ecode8 = 0 ;
25643     int val9 ;
25644     int ecode9 = 0 ;
25645     int val10 ;
25646     int ecode10 = 0 ;
25647     int val11 ;
25648     int ecode11 = 0 ;
25649     int val12 ;
25650     int ecode12 = 0 ;
25651     int val13 ;
25652     int ecode13 = 0 ;
25653     int val14 ;
25654     int ecode14 = 0 ;
25655     char val15 ;
25656     int ecode15 = 0 ;
25657     int val16 ;
25658     int ecode16 = 0 ;
25659     int val17 ;
25660     int ecode17 = 0 ;
25661     int val18 ;
25662     int ecode18 = 0 ;
25663     int val19 ;
25664     int ecode19 = 0 ;
25665     int val20 ;
25666     int ecode20 = 0 ;
25667     int val21 ;
25668     int ecode21 = 0 ;
25669     double val22 ;
25670     int ecode22 = 0 ;
25671     double val23 ;
25672     int ecode23 = 0 ;
25673     double val24 ;
25674     int ecode24 = 0 ;
25675     int argvi = 0;
25676     vrna_md_t *result = 0 ;
25677     dXSARGS;
25678 
25679     if ((items < 24) || (items > 24)) {
25680       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ,gquad,uniq_ML,energy_set,backtrack,backtrack_type,compute_bpp,max_bp_span,min_loop_size,window_size,oldAliEn,ribo,cv_fact,nc_fact,sfact);");
25681     }
25682     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
25683     if (!SWIG_IsOK(ecode1)) {
25684       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
25685     }
25686     arg1 = static_cast< double >(val1);
25687     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
25688     if (!SWIG_IsOK(ecode2)) {
25689       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
25690     }
25691     arg2 = static_cast< double >(val2);
25692     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
25693     if (!SWIG_IsOK(ecode3)) {
25694       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
25695     }
25696     arg3 = static_cast< int >(val3);
25697     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
25698     if (!SWIG_IsOK(ecode4)) {
25699       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
25700     }
25701     arg4 = static_cast< int >(val4);
25702     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
25703     if (!SWIG_IsOK(ecode5)) {
25704       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
25705     }
25706     arg5 = static_cast< int >(val5);
25707     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
25708     if (!SWIG_IsOK(ecode6)) {
25709       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
25710     }
25711     arg6 = static_cast< int >(val6);
25712     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
25713     if (!SWIG_IsOK(ecode7)) {
25714       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
25715     }
25716     arg7 = static_cast< int >(val7);
25717     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
25718     if (!SWIG_IsOK(ecode8)) {
25719       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
25720     }
25721     arg8 = static_cast< int >(val8);
25722     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
25723     if (!SWIG_IsOK(ecode9)) {
25724       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
25725     }
25726     arg9 = static_cast< int >(val9);
25727     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
25728     if (!SWIG_IsOK(ecode10)) {
25729       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
25730     }
25731     arg10 = static_cast< int >(val10);
25732     ecode11 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
25733     if (!SWIG_IsOK(ecode11)) {
25734       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "new_md" "', argument " "11"" of type '" "int""'");
25735     }
25736     arg11 = static_cast< int >(val11);
25737     ecode12 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
25738     if (!SWIG_IsOK(ecode12)) {
25739       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "new_md" "', argument " "12"" of type '" "int""'");
25740     }
25741     arg12 = static_cast< int >(val12);
25742     ecode13 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
25743     if (!SWIG_IsOK(ecode13)) {
25744       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "new_md" "', argument " "13"" of type '" "int""'");
25745     }
25746     arg13 = static_cast< int >(val13);
25747     ecode14 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), &val14);
25748     if (!SWIG_IsOK(ecode14)) {
25749       SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "new_md" "', argument " "14"" of type '" "int""'");
25750     }
25751     arg14 = static_cast< int >(val14);
25752     ecode15 = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), &val15);
25753     if (!SWIG_IsOK(ecode15)) {
25754       SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "new_md" "', argument " "15"" of type '" "char""'");
25755     }
25756     arg15 = static_cast< char >(val15);
25757     ecode16 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), &val16);
25758     if (!SWIG_IsOK(ecode16)) {
25759       SWIG_exception_fail(SWIG_ArgError(ecode16), "in method '" "new_md" "', argument " "16"" of type '" "int""'");
25760     }
25761     arg16 = static_cast< int >(val16);
25762     ecode17 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), &val17);
25763     if (!SWIG_IsOK(ecode17)) {
25764       SWIG_exception_fail(SWIG_ArgError(ecode17), "in method '" "new_md" "', argument " "17"" of type '" "int""'");
25765     }
25766     arg17 = static_cast< int >(val17);
25767     ecode18 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(17), &val18);
25768     if (!SWIG_IsOK(ecode18)) {
25769       SWIG_exception_fail(SWIG_ArgError(ecode18), "in method '" "new_md" "', argument " "18"" of type '" "int""'");
25770     }
25771     arg18 = static_cast< int >(val18);
25772     ecode19 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(18), &val19);
25773     if (!SWIG_IsOK(ecode19)) {
25774       SWIG_exception_fail(SWIG_ArgError(ecode19), "in method '" "new_md" "', argument " "19"" of type '" "int""'");
25775     }
25776     arg19 = static_cast< int >(val19);
25777     ecode20 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(19), &val20);
25778     if (!SWIG_IsOK(ecode20)) {
25779       SWIG_exception_fail(SWIG_ArgError(ecode20), "in method '" "new_md" "', argument " "20"" of type '" "int""'");
25780     }
25781     arg20 = static_cast< int >(val20);
25782     ecode21 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(20), &val21);
25783     if (!SWIG_IsOK(ecode21)) {
25784       SWIG_exception_fail(SWIG_ArgError(ecode21), "in method '" "new_md" "', argument " "21"" of type '" "int""'");
25785     }
25786     arg21 = static_cast< int >(val21);
25787     ecode22 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(21), &val22);
25788     if (!SWIG_IsOK(ecode22)) {
25789       SWIG_exception_fail(SWIG_ArgError(ecode22), "in method '" "new_md" "', argument " "22"" of type '" "double""'");
25790     }
25791     arg22 = static_cast< double >(val22);
25792     ecode23 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(22), &val23);
25793     if (!SWIG_IsOK(ecode23)) {
25794       SWIG_exception_fail(SWIG_ArgError(ecode23), "in method '" "new_md" "', argument " "23"" of type '" "double""'");
25795     }
25796     arg23 = static_cast< double >(val23);
25797     ecode24 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(23), &val24);
25798     if (!SWIG_IsOK(ecode24)) {
25799       SWIG_exception_fail(SWIG_ArgError(ecode24), "in method '" "new_md" "', argument " "24"" of type '" "double""'");
25800     }
25801     arg24 = static_cast< double >(val24);
25802     {
25803       try {
25804         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17,arg18,arg19,arg20,arg21,arg22,arg23,arg24);
25805       } catch (const std::exception& e) {
25806         SWIG_exception(SWIG_RuntimeError, e.what());
25807       }
25808     }
25809     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
25810 
25811 
25812 
25813 
25814 
25815 
25816 
25817 
25818 
25819 
25820 
25821 
25822 
25823 
25824 
25825 
25826 
25827 
25828 
25829 
25830 
25831 
25832 
25833 
25834     XSRETURN(argvi);
25835   fail:
25836 
25837 
25838 
25839 
25840 
25841 
25842 
25843 
25844 
25845 
25846 
25847 
25848 
25849 
25850 
25851 
25852 
25853 
25854 
25855 
25856 
25857 
25858 
25859 
25860     SWIG_croak_null();
25861   }
25862 }
25863 
25864 
XS(_wrap_new_md__SWIG_1)25865 XS(_wrap_new_md__SWIG_1) {
25866   {
25867     double arg1 ;
25868     double arg2 ;
25869     int arg3 ;
25870     int arg4 ;
25871     int arg5 ;
25872     int arg6 ;
25873     int arg7 ;
25874     int arg8 ;
25875     int arg9 ;
25876     int arg10 ;
25877     int arg11 ;
25878     int arg12 ;
25879     int arg13 ;
25880     int arg14 ;
25881     char arg15 ;
25882     int arg16 ;
25883     int arg17 ;
25884     int arg18 ;
25885     int arg19 ;
25886     int arg20 ;
25887     int arg21 ;
25888     double arg22 ;
25889     double arg23 ;
25890     double val1 ;
25891     int ecode1 = 0 ;
25892     double val2 ;
25893     int ecode2 = 0 ;
25894     int val3 ;
25895     int ecode3 = 0 ;
25896     int val4 ;
25897     int ecode4 = 0 ;
25898     int val5 ;
25899     int ecode5 = 0 ;
25900     int val6 ;
25901     int ecode6 = 0 ;
25902     int val7 ;
25903     int ecode7 = 0 ;
25904     int val8 ;
25905     int ecode8 = 0 ;
25906     int val9 ;
25907     int ecode9 = 0 ;
25908     int val10 ;
25909     int ecode10 = 0 ;
25910     int val11 ;
25911     int ecode11 = 0 ;
25912     int val12 ;
25913     int ecode12 = 0 ;
25914     int val13 ;
25915     int ecode13 = 0 ;
25916     int val14 ;
25917     int ecode14 = 0 ;
25918     char val15 ;
25919     int ecode15 = 0 ;
25920     int val16 ;
25921     int ecode16 = 0 ;
25922     int val17 ;
25923     int ecode17 = 0 ;
25924     int val18 ;
25925     int ecode18 = 0 ;
25926     int val19 ;
25927     int ecode19 = 0 ;
25928     int val20 ;
25929     int ecode20 = 0 ;
25930     int val21 ;
25931     int ecode21 = 0 ;
25932     double val22 ;
25933     int ecode22 = 0 ;
25934     double val23 ;
25935     int ecode23 = 0 ;
25936     int argvi = 0;
25937     vrna_md_t *result = 0 ;
25938     dXSARGS;
25939 
25940     if ((items < 23) || (items > 23)) {
25941       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ,gquad,uniq_ML,energy_set,backtrack,backtrack_type,compute_bpp,max_bp_span,min_loop_size,window_size,oldAliEn,ribo,cv_fact,nc_fact);");
25942     }
25943     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
25944     if (!SWIG_IsOK(ecode1)) {
25945       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
25946     }
25947     arg1 = static_cast< double >(val1);
25948     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
25949     if (!SWIG_IsOK(ecode2)) {
25950       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
25951     }
25952     arg2 = static_cast< double >(val2);
25953     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
25954     if (!SWIG_IsOK(ecode3)) {
25955       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
25956     }
25957     arg3 = static_cast< int >(val3);
25958     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
25959     if (!SWIG_IsOK(ecode4)) {
25960       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
25961     }
25962     arg4 = static_cast< int >(val4);
25963     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
25964     if (!SWIG_IsOK(ecode5)) {
25965       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
25966     }
25967     arg5 = static_cast< int >(val5);
25968     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
25969     if (!SWIG_IsOK(ecode6)) {
25970       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
25971     }
25972     arg6 = static_cast< int >(val6);
25973     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
25974     if (!SWIG_IsOK(ecode7)) {
25975       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
25976     }
25977     arg7 = static_cast< int >(val7);
25978     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
25979     if (!SWIG_IsOK(ecode8)) {
25980       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
25981     }
25982     arg8 = static_cast< int >(val8);
25983     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
25984     if (!SWIG_IsOK(ecode9)) {
25985       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
25986     }
25987     arg9 = static_cast< int >(val9);
25988     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
25989     if (!SWIG_IsOK(ecode10)) {
25990       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
25991     }
25992     arg10 = static_cast< int >(val10);
25993     ecode11 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
25994     if (!SWIG_IsOK(ecode11)) {
25995       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "new_md" "', argument " "11"" of type '" "int""'");
25996     }
25997     arg11 = static_cast< int >(val11);
25998     ecode12 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
25999     if (!SWIG_IsOK(ecode12)) {
26000       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "new_md" "', argument " "12"" of type '" "int""'");
26001     }
26002     arg12 = static_cast< int >(val12);
26003     ecode13 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
26004     if (!SWIG_IsOK(ecode13)) {
26005       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "new_md" "', argument " "13"" of type '" "int""'");
26006     }
26007     arg13 = static_cast< int >(val13);
26008     ecode14 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), &val14);
26009     if (!SWIG_IsOK(ecode14)) {
26010       SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "new_md" "', argument " "14"" of type '" "int""'");
26011     }
26012     arg14 = static_cast< int >(val14);
26013     ecode15 = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), &val15);
26014     if (!SWIG_IsOK(ecode15)) {
26015       SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "new_md" "', argument " "15"" of type '" "char""'");
26016     }
26017     arg15 = static_cast< char >(val15);
26018     ecode16 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), &val16);
26019     if (!SWIG_IsOK(ecode16)) {
26020       SWIG_exception_fail(SWIG_ArgError(ecode16), "in method '" "new_md" "', argument " "16"" of type '" "int""'");
26021     }
26022     arg16 = static_cast< int >(val16);
26023     ecode17 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), &val17);
26024     if (!SWIG_IsOK(ecode17)) {
26025       SWIG_exception_fail(SWIG_ArgError(ecode17), "in method '" "new_md" "', argument " "17"" of type '" "int""'");
26026     }
26027     arg17 = static_cast< int >(val17);
26028     ecode18 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(17), &val18);
26029     if (!SWIG_IsOK(ecode18)) {
26030       SWIG_exception_fail(SWIG_ArgError(ecode18), "in method '" "new_md" "', argument " "18"" of type '" "int""'");
26031     }
26032     arg18 = static_cast< int >(val18);
26033     ecode19 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(18), &val19);
26034     if (!SWIG_IsOK(ecode19)) {
26035       SWIG_exception_fail(SWIG_ArgError(ecode19), "in method '" "new_md" "', argument " "19"" of type '" "int""'");
26036     }
26037     arg19 = static_cast< int >(val19);
26038     ecode20 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(19), &val20);
26039     if (!SWIG_IsOK(ecode20)) {
26040       SWIG_exception_fail(SWIG_ArgError(ecode20), "in method '" "new_md" "', argument " "20"" of type '" "int""'");
26041     }
26042     arg20 = static_cast< int >(val20);
26043     ecode21 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(20), &val21);
26044     if (!SWIG_IsOK(ecode21)) {
26045       SWIG_exception_fail(SWIG_ArgError(ecode21), "in method '" "new_md" "', argument " "21"" of type '" "int""'");
26046     }
26047     arg21 = static_cast< int >(val21);
26048     ecode22 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(21), &val22);
26049     if (!SWIG_IsOK(ecode22)) {
26050       SWIG_exception_fail(SWIG_ArgError(ecode22), "in method '" "new_md" "', argument " "22"" of type '" "double""'");
26051     }
26052     arg22 = static_cast< double >(val22);
26053     ecode23 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(22), &val23);
26054     if (!SWIG_IsOK(ecode23)) {
26055       SWIG_exception_fail(SWIG_ArgError(ecode23), "in method '" "new_md" "', argument " "23"" of type '" "double""'");
26056     }
26057     arg23 = static_cast< double >(val23);
26058     {
26059       try {
26060         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17,arg18,arg19,arg20,arg21,arg22,arg23);
26061       } catch (const std::exception& e) {
26062         SWIG_exception(SWIG_RuntimeError, e.what());
26063       }
26064     }
26065     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
26066 
26067 
26068 
26069 
26070 
26071 
26072 
26073 
26074 
26075 
26076 
26077 
26078 
26079 
26080 
26081 
26082 
26083 
26084 
26085 
26086 
26087 
26088 
26089     XSRETURN(argvi);
26090   fail:
26091 
26092 
26093 
26094 
26095 
26096 
26097 
26098 
26099 
26100 
26101 
26102 
26103 
26104 
26105 
26106 
26107 
26108 
26109 
26110 
26111 
26112 
26113 
26114     SWIG_croak_null();
26115   }
26116 }
26117 
26118 
XS(_wrap_new_md__SWIG_2)26119 XS(_wrap_new_md__SWIG_2) {
26120   {
26121     double arg1 ;
26122     double arg2 ;
26123     int arg3 ;
26124     int arg4 ;
26125     int arg5 ;
26126     int arg6 ;
26127     int arg7 ;
26128     int arg8 ;
26129     int arg9 ;
26130     int arg10 ;
26131     int arg11 ;
26132     int arg12 ;
26133     int arg13 ;
26134     int arg14 ;
26135     char arg15 ;
26136     int arg16 ;
26137     int arg17 ;
26138     int arg18 ;
26139     int arg19 ;
26140     int arg20 ;
26141     int arg21 ;
26142     double arg22 ;
26143     double val1 ;
26144     int ecode1 = 0 ;
26145     double val2 ;
26146     int ecode2 = 0 ;
26147     int val3 ;
26148     int ecode3 = 0 ;
26149     int val4 ;
26150     int ecode4 = 0 ;
26151     int val5 ;
26152     int ecode5 = 0 ;
26153     int val6 ;
26154     int ecode6 = 0 ;
26155     int val7 ;
26156     int ecode7 = 0 ;
26157     int val8 ;
26158     int ecode8 = 0 ;
26159     int val9 ;
26160     int ecode9 = 0 ;
26161     int val10 ;
26162     int ecode10 = 0 ;
26163     int val11 ;
26164     int ecode11 = 0 ;
26165     int val12 ;
26166     int ecode12 = 0 ;
26167     int val13 ;
26168     int ecode13 = 0 ;
26169     int val14 ;
26170     int ecode14 = 0 ;
26171     char val15 ;
26172     int ecode15 = 0 ;
26173     int val16 ;
26174     int ecode16 = 0 ;
26175     int val17 ;
26176     int ecode17 = 0 ;
26177     int val18 ;
26178     int ecode18 = 0 ;
26179     int val19 ;
26180     int ecode19 = 0 ;
26181     int val20 ;
26182     int ecode20 = 0 ;
26183     int val21 ;
26184     int ecode21 = 0 ;
26185     double val22 ;
26186     int ecode22 = 0 ;
26187     int argvi = 0;
26188     vrna_md_t *result = 0 ;
26189     dXSARGS;
26190 
26191     if ((items < 22) || (items > 22)) {
26192       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ,gquad,uniq_ML,energy_set,backtrack,backtrack_type,compute_bpp,max_bp_span,min_loop_size,window_size,oldAliEn,ribo,cv_fact);");
26193     }
26194     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26195     if (!SWIG_IsOK(ecode1)) {
26196       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
26197     }
26198     arg1 = static_cast< double >(val1);
26199     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
26200     if (!SWIG_IsOK(ecode2)) {
26201       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
26202     }
26203     arg2 = static_cast< double >(val2);
26204     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
26205     if (!SWIG_IsOK(ecode3)) {
26206       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
26207     }
26208     arg3 = static_cast< int >(val3);
26209     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
26210     if (!SWIG_IsOK(ecode4)) {
26211       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
26212     }
26213     arg4 = static_cast< int >(val4);
26214     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
26215     if (!SWIG_IsOK(ecode5)) {
26216       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
26217     }
26218     arg5 = static_cast< int >(val5);
26219     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
26220     if (!SWIG_IsOK(ecode6)) {
26221       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
26222     }
26223     arg6 = static_cast< int >(val6);
26224     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
26225     if (!SWIG_IsOK(ecode7)) {
26226       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
26227     }
26228     arg7 = static_cast< int >(val7);
26229     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
26230     if (!SWIG_IsOK(ecode8)) {
26231       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
26232     }
26233     arg8 = static_cast< int >(val8);
26234     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
26235     if (!SWIG_IsOK(ecode9)) {
26236       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
26237     }
26238     arg9 = static_cast< int >(val9);
26239     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
26240     if (!SWIG_IsOK(ecode10)) {
26241       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
26242     }
26243     arg10 = static_cast< int >(val10);
26244     ecode11 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
26245     if (!SWIG_IsOK(ecode11)) {
26246       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "new_md" "', argument " "11"" of type '" "int""'");
26247     }
26248     arg11 = static_cast< int >(val11);
26249     ecode12 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
26250     if (!SWIG_IsOK(ecode12)) {
26251       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "new_md" "', argument " "12"" of type '" "int""'");
26252     }
26253     arg12 = static_cast< int >(val12);
26254     ecode13 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
26255     if (!SWIG_IsOK(ecode13)) {
26256       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "new_md" "', argument " "13"" of type '" "int""'");
26257     }
26258     arg13 = static_cast< int >(val13);
26259     ecode14 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), &val14);
26260     if (!SWIG_IsOK(ecode14)) {
26261       SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "new_md" "', argument " "14"" of type '" "int""'");
26262     }
26263     arg14 = static_cast< int >(val14);
26264     ecode15 = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), &val15);
26265     if (!SWIG_IsOK(ecode15)) {
26266       SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "new_md" "', argument " "15"" of type '" "char""'");
26267     }
26268     arg15 = static_cast< char >(val15);
26269     ecode16 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), &val16);
26270     if (!SWIG_IsOK(ecode16)) {
26271       SWIG_exception_fail(SWIG_ArgError(ecode16), "in method '" "new_md" "', argument " "16"" of type '" "int""'");
26272     }
26273     arg16 = static_cast< int >(val16);
26274     ecode17 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), &val17);
26275     if (!SWIG_IsOK(ecode17)) {
26276       SWIG_exception_fail(SWIG_ArgError(ecode17), "in method '" "new_md" "', argument " "17"" of type '" "int""'");
26277     }
26278     arg17 = static_cast< int >(val17);
26279     ecode18 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(17), &val18);
26280     if (!SWIG_IsOK(ecode18)) {
26281       SWIG_exception_fail(SWIG_ArgError(ecode18), "in method '" "new_md" "', argument " "18"" of type '" "int""'");
26282     }
26283     arg18 = static_cast< int >(val18);
26284     ecode19 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(18), &val19);
26285     if (!SWIG_IsOK(ecode19)) {
26286       SWIG_exception_fail(SWIG_ArgError(ecode19), "in method '" "new_md" "', argument " "19"" of type '" "int""'");
26287     }
26288     arg19 = static_cast< int >(val19);
26289     ecode20 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(19), &val20);
26290     if (!SWIG_IsOK(ecode20)) {
26291       SWIG_exception_fail(SWIG_ArgError(ecode20), "in method '" "new_md" "', argument " "20"" of type '" "int""'");
26292     }
26293     arg20 = static_cast< int >(val20);
26294     ecode21 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(20), &val21);
26295     if (!SWIG_IsOK(ecode21)) {
26296       SWIG_exception_fail(SWIG_ArgError(ecode21), "in method '" "new_md" "', argument " "21"" of type '" "int""'");
26297     }
26298     arg21 = static_cast< int >(val21);
26299     ecode22 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(21), &val22);
26300     if (!SWIG_IsOK(ecode22)) {
26301       SWIG_exception_fail(SWIG_ArgError(ecode22), "in method '" "new_md" "', argument " "22"" of type '" "double""'");
26302     }
26303     arg22 = static_cast< double >(val22);
26304     {
26305       try {
26306         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17,arg18,arg19,arg20,arg21,arg22);
26307       } catch (const std::exception& e) {
26308         SWIG_exception(SWIG_RuntimeError, e.what());
26309       }
26310     }
26311     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
26312 
26313 
26314 
26315 
26316 
26317 
26318 
26319 
26320 
26321 
26322 
26323 
26324 
26325 
26326 
26327 
26328 
26329 
26330 
26331 
26332 
26333 
26334     XSRETURN(argvi);
26335   fail:
26336 
26337 
26338 
26339 
26340 
26341 
26342 
26343 
26344 
26345 
26346 
26347 
26348 
26349 
26350 
26351 
26352 
26353 
26354 
26355 
26356 
26357 
26358     SWIG_croak_null();
26359   }
26360 }
26361 
26362 
XS(_wrap_new_md__SWIG_3)26363 XS(_wrap_new_md__SWIG_3) {
26364   {
26365     double arg1 ;
26366     double arg2 ;
26367     int arg3 ;
26368     int arg4 ;
26369     int arg5 ;
26370     int arg6 ;
26371     int arg7 ;
26372     int arg8 ;
26373     int arg9 ;
26374     int arg10 ;
26375     int arg11 ;
26376     int arg12 ;
26377     int arg13 ;
26378     int arg14 ;
26379     char arg15 ;
26380     int arg16 ;
26381     int arg17 ;
26382     int arg18 ;
26383     int arg19 ;
26384     int arg20 ;
26385     int arg21 ;
26386     double val1 ;
26387     int ecode1 = 0 ;
26388     double val2 ;
26389     int ecode2 = 0 ;
26390     int val3 ;
26391     int ecode3 = 0 ;
26392     int val4 ;
26393     int ecode4 = 0 ;
26394     int val5 ;
26395     int ecode5 = 0 ;
26396     int val6 ;
26397     int ecode6 = 0 ;
26398     int val7 ;
26399     int ecode7 = 0 ;
26400     int val8 ;
26401     int ecode8 = 0 ;
26402     int val9 ;
26403     int ecode9 = 0 ;
26404     int val10 ;
26405     int ecode10 = 0 ;
26406     int val11 ;
26407     int ecode11 = 0 ;
26408     int val12 ;
26409     int ecode12 = 0 ;
26410     int val13 ;
26411     int ecode13 = 0 ;
26412     int val14 ;
26413     int ecode14 = 0 ;
26414     char val15 ;
26415     int ecode15 = 0 ;
26416     int val16 ;
26417     int ecode16 = 0 ;
26418     int val17 ;
26419     int ecode17 = 0 ;
26420     int val18 ;
26421     int ecode18 = 0 ;
26422     int val19 ;
26423     int ecode19 = 0 ;
26424     int val20 ;
26425     int ecode20 = 0 ;
26426     int val21 ;
26427     int ecode21 = 0 ;
26428     int argvi = 0;
26429     vrna_md_t *result = 0 ;
26430     dXSARGS;
26431 
26432     if ((items < 21) || (items > 21)) {
26433       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ,gquad,uniq_ML,energy_set,backtrack,backtrack_type,compute_bpp,max_bp_span,min_loop_size,window_size,oldAliEn,ribo);");
26434     }
26435     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26436     if (!SWIG_IsOK(ecode1)) {
26437       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
26438     }
26439     arg1 = static_cast< double >(val1);
26440     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
26441     if (!SWIG_IsOK(ecode2)) {
26442       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
26443     }
26444     arg2 = static_cast< double >(val2);
26445     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
26446     if (!SWIG_IsOK(ecode3)) {
26447       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
26448     }
26449     arg3 = static_cast< int >(val3);
26450     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
26451     if (!SWIG_IsOK(ecode4)) {
26452       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
26453     }
26454     arg4 = static_cast< int >(val4);
26455     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
26456     if (!SWIG_IsOK(ecode5)) {
26457       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
26458     }
26459     arg5 = static_cast< int >(val5);
26460     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
26461     if (!SWIG_IsOK(ecode6)) {
26462       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
26463     }
26464     arg6 = static_cast< int >(val6);
26465     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
26466     if (!SWIG_IsOK(ecode7)) {
26467       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
26468     }
26469     arg7 = static_cast< int >(val7);
26470     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
26471     if (!SWIG_IsOK(ecode8)) {
26472       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
26473     }
26474     arg8 = static_cast< int >(val8);
26475     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
26476     if (!SWIG_IsOK(ecode9)) {
26477       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
26478     }
26479     arg9 = static_cast< int >(val9);
26480     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
26481     if (!SWIG_IsOK(ecode10)) {
26482       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
26483     }
26484     arg10 = static_cast< int >(val10);
26485     ecode11 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
26486     if (!SWIG_IsOK(ecode11)) {
26487       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "new_md" "', argument " "11"" of type '" "int""'");
26488     }
26489     arg11 = static_cast< int >(val11);
26490     ecode12 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
26491     if (!SWIG_IsOK(ecode12)) {
26492       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "new_md" "', argument " "12"" of type '" "int""'");
26493     }
26494     arg12 = static_cast< int >(val12);
26495     ecode13 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
26496     if (!SWIG_IsOK(ecode13)) {
26497       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "new_md" "', argument " "13"" of type '" "int""'");
26498     }
26499     arg13 = static_cast< int >(val13);
26500     ecode14 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), &val14);
26501     if (!SWIG_IsOK(ecode14)) {
26502       SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "new_md" "', argument " "14"" of type '" "int""'");
26503     }
26504     arg14 = static_cast< int >(val14);
26505     ecode15 = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), &val15);
26506     if (!SWIG_IsOK(ecode15)) {
26507       SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "new_md" "', argument " "15"" of type '" "char""'");
26508     }
26509     arg15 = static_cast< char >(val15);
26510     ecode16 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), &val16);
26511     if (!SWIG_IsOK(ecode16)) {
26512       SWIG_exception_fail(SWIG_ArgError(ecode16), "in method '" "new_md" "', argument " "16"" of type '" "int""'");
26513     }
26514     arg16 = static_cast< int >(val16);
26515     ecode17 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), &val17);
26516     if (!SWIG_IsOK(ecode17)) {
26517       SWIG_exception_fail(SWIG_ArgError(ecode17), "in method '" "new_md" "', argument " "17"" of type '" "int""'");
26518     }
26519     arg17 = static_cast< int >(val17);
26520     ecode18 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(17), &val18);
26521     if (!SWIG_IsOK(ecode18)) {
26522       SWIG_exception_fail(SWIG_ArgError(ecode18), "in method '" "new_md" "', argument " "18"" of type '" "int""'");
26523     }
26524     arg18 = static_cast< int >(val18);
26525     ecode19 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(18), &val19);
26526     if (!SWIG_IsOK(ecode19)) {
26527       SWIG_exception_fail(SWIG_ArgError(ecode19), "in method '" "new_md" "', argument " "19"" of type '" "int""'");
26528     }
26529     arg19 = static_cast< int >(val19);
26530     ecode20 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(19), &val20);
26531     if (!SWIG_IsOK(ecode20)) {
26532       SWIG_exception_fail(SWIG_ArgError(ecode20), "in method '" "new_md" "', argument " "20"" of type '" "int""'");
26533     }
26534     arg20 = static_cast< int >(val20);
26535     ecode21 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(20), &val21);
26536     if (!SWIG_IsOK(ecode21)) {
26537       SWIG_exception_fail(SWIG_ArgError(ecode21), "in method '" "new_md" "', argument " "21"" of type '" "int""'");
26538     }
26539     arg21 = static_cast< int >(val21);
26540     {
26541       try {
26542         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17,arg18,arg19,arg20,arg21);
26543       } catch (const std::exception& e) {
26544         SWIG_exception(SWIG_RuntimeError, e.what());
26545       }
26546     }
26547     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
26548 
26549 
26550 
26551 
26552 
26553 
26554 
26555 
26556 
26557 
26558 
26559 
26560 
26561 
26562 
26563 
26564 
26565 
26566 
26567 
26568 
26569     XSRETURN(argvi);
26570   fail:
26571 
26572 
26573 
26574 
26575 
26576 
26577 
26578 
26579 
26580 
26581 
26582 
26583 
26584 
26585 
26586 
26587 
26588 
26589 
26590 
26591 
26592     SWIG_croak_null();
26593   }
26594 }
26595 
26596 
XS(_wrap_new_md__SWIG_4)26597 XS(_wrap_new_md__SWIG_4) {
26598   {
26599     double arg1 ;
26600     double arg2 ;
26601     int arg3 ;
26602     int arg4 ;
26603     int arg5 ;
26604     int arg6 ;
26605     int arg7 ;
26606     int arg8 ;
26607     int arg9 ;
26608     int arg10 ;
26609     int arg11 ;
26610     int arg12 ;
26611     int arg13 ;
26612     int arg14 ;
26613     char arg15 ;
26614     int arg16 ;
26615     int arg17 ;
26616     int arg18 ;
26617     int arg19 ;
26618     int arg20 ;
26619     double val1 ;
26620     int ecode1 = 0 ;
26621     double val2 ;
26622     int ecode2 = 0 ;
26623     int val3 ;
26624     int ecode3 = 0 ;
26625     int val4 ;
26626     int ecode4 = 0 ;
26627     int val5 ;
26628     int ecode5 = 0 ;
26629     int val6 ;
26630     int ecode6 = 0 ;
26631     int val7 ;
26632     int ecode7 = 0 ;
26633     int val8 ;
26634     int ecode8 = 0 ;
26635     int val9 ;
26636     int ecode9 = 0 ;
26637     int val10 ;
26638     int ecode10 = 0 ;
26639     int val11 ;
26640     int ecode11 = 0 ;
26641     int val12 ;
26642     int ecode12 = 0 ;
26643     int val13 ;
26644     int ecode13 = 0 ;
26645     int val14 ;
26646     int ecode14 = 0 ;
26647     char val15 ;
26648     int ecode15 = 0 ;
26649     int val16 ;
26650     int ecode16 = 0 ;
26651     int val17 ;
26652     int ecode17 = 0 ;
26653     int val18 ;
26654     int ecode18 = 0 ;
26655     int val19 ;
26656     int ecode19 = 0 ;
26657     int val20 ;
26658     int ecode20 = 0 ;
26659     int argvi = 0;
26660     vrna_md_t *result = 0 ;
26661     dXSARGS;
26662 
26663     if ((items < 20) || (items > 20)) {
26664       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ,gquad,uniq_ML,energy_set,backtrack,backtrack_type,compute_bpp,max_bp_span,min_loop_size,window_size,oldAliEn);");
26665     }
26666     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26667     if (!SWIG_IsOK(ecode1)) {
26668       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
26669     }
26670     arg1 = static_cast< double >(val1);
26671     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
26672     if (!SWIG_IsOK(ecode2)) {
26673       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
26674     }
26675     arg2 = static_cast< double >(val2);
26676     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
26677     if (!SWIG_IsOK(ecode3)) {
26678       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
26679     }
26680     arg3 = static_cast< int >(val3);
26681     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
26682     if (!SWIG_IsOK(ecode4)) {
26683       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
26684     }
26685     arg4 = static_cast< int >(val4);
26686     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
26687     if (!SWIG_IsOK(ecode5)) {
26688       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
26689     }
26690     arg5 = static_cast< int >(val5);
26691     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
26692     if (!SWIG_IsOK(ecode6)) {
26693       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
26694     }
26695     arg6 = static_cast< int >(val6);
26696     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
26697     if (!SWIG_IsOK(ecode7)) {
26698       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
26699     }
26700     arg7 = static_cast< int >(val7);
26701     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
26702     if (!SWIG_IsOK(ecode8)) {
26703       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
26704     }
26705     arg8 = static_cast< int >(val8);
26706     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
26707     if (!SWIG_IsOK(ecode9)) {
26708       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
26709     }
26710     arg9 = static_cast< int >(val9);
26711     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
26712     if (!SWIG_IsOK(ecode10)) {
26713       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
26714     }
26715     arg10 = static_cast< int >(val10);
26716     ecode11 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
26717     if (!SWIG_IsOK(ecode11)) {
26718       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "new_md" "', argument " "11"" of type '" "int""'");
26719     }
26720     arg11 = static_cast< int >(val11);
26721     ecode12 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
26722     if (!SWIG_IsOK(ecode12)) {
26723       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "new_md" "', argument " "12"" of type '" "int""'");
26724     }
26725     arg12 = static_cast< int >(val12);
26726     ecode13 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
26727     if (!SWIG_IsOK(ecode13)) {
26728       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "new_md" "', argument " "13"" of type '" "int""'");
26729     }
26730     arg13 = static_cast< int >(val13);
26731     ecode14 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), &val14);
26732     if (!SWIG_IsOK(ecode14)) {
26733       SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "new_md" "', argument " "14"" of type '" "int""'");
26734     }
26735     arg14 = static_cast< int >(val14);
26736     ecode15 = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), &val15);
26737     if (!SWIG_IsOK(ecode15)) {
26738       SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "new_md" "', argument " "15"" of type '" "char""'");
26739     }
26740     arg15 = static_cast< char >(val15);
26741     ecode16 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), &val16);
26742     if (!SWIG_IsOK(ecode16)) {
26743       SWIG_exception_fail(SWIG_ArgError(ecode16), "in method '" "new_md" "', argument " "16"" of type '" "int""'");
26744     }
26745     arg16 = static_cast< int >(val16);
26746     ecode17 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), &val17);
26747     if (!SWIG_IsOK(ecode17)) {
26748       SWIG_exception_fail(SWIG_ArgError(ecode17), "in method '" "new_md" "', argument " "17"" of type '" "int""'");
26749     }
26750     arg17 = static_cast< int >(val17);
26751     ecode18 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(17), &val18);
26752     if (!SWIG_IsOK(ecode18)) {
26753       SWIG_exception_fail(SWIG_ArgError(ecode18), "in method '" "new_md" "', argument " "18"" of type '" "int""'");
26754     }
26755     arg18 = static_cast< int >(val18);
26756     ecode19 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(18), &val19);
26757     if (!SWIG_IsOK(ecode19)) {
26758       SWIG_exception_fail(SWIG_ArgError(ecode19), "in method '" "new_md" "', argument " "19"" of type '" "int""'");
26759     }
26760     arg19 = static_cast< int >(val19);
26761     ecode20 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(19), &val20);
26762     if (!SWIG_IsOK(ecode20)) {
26763       SWIG_exception_fail(SWIG_ArgError(ecode20), "in method '" "new_md" "', argument " "20"" of type '" "int""'");
26764     }
26765     arg20 = static_cast< int >(val20);
26766     {
26767       try {
26768         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17,arg18,arg19,arg20);
26769       } catch (const std::exception& e) {
26770         SWIG_exception(SWIG_RuntimeError, e.what());
26771       }
26772     }
26773     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
26774 
26775 
26776 
26777 
26778 
26779 
26780 
26781 
26782 
26783 
26784 
26785 
26786 
26787 
26788 
26789 
26790 
26791 
26792 
26793 
26794     XSRETURN(argvi);
26795   fail:
26796 
26797 
26798 
26799 
26800 
26801 
26802 
26803 
26804 
26805 
26806 
26807 
26808 
26809 
26810 
26811 
26812 
26813 
26814 
26815 
26816     SWIG_croak_null();
26817   }
26818 }
26819 
26820 
XS(_wrap_new_md__SWIG_5)26821 XS(_wrap_new_md__SWIG_5) {
26822   {
26823     double arg1 ;
26824     double arg2 ;
26825     int arg3 ;
26826     int arg4 ;
26827     int arg5 ;
26828     int arg6 ;
26829     int arg7 ;
26830     int arg8 ;
26831     int arg9 ;
26832     int arg10 ;
26833     int arg11 ;
26834     int arg12 ;
26835     int arg13 ;
26836     int arg14 ;
26837     char arg15 ;
26838     int arg16 ;
26839     int arg17 ;
26840     int arg18 ;
26841     int arg19 ;
26842     double val1 ;
26843     int ecode1 = 0 ;
26844     double val2 ;
26845     int ecode2 = 0 ;
26846     int val3 ;
26847     int ecode3 = 0 ;
26848     int val4 ;
26849     int ecode4 = 0 ;
26850     int val5 ;
26851     int ecode5 = 0 ;
26852     int val6 ;
26853     int ecode6 = 0 ;
26854     int val7 ;
26855     int ecode7 = 0 ;
26856     int val8 ;
26857     int ecode8 = 0 ;
26858     int val9 ;
26859     int ecode9 = 0 ;
26860     int val10 ;
26861     int ecode10 = 0 ;
26862     int val11 ;
26863     int ecode11 = 0 ;
26864     int val12 ;
26865     int ecode12 = 0 ;
26866     int val13 ;
26867     int ecode13 = 0 ;
26868     int val14 ;
26869     int ecode14 = 0 ;
26870     char val15 ;
26871     int ecode15 = 0 ;
26872     int val16 ;
26873     int ecode16 = 0 ;
26874     int val17 ;
26875     int ecode17 = 0 ;
26876     int val18 ;
26877     int ecode18 = 0 ;
26878     int val19 ;
26879     int ecode19 = 0 ;
26880     int argvi = 0;
26881     vrna_md_t *result = 0 ;
26882     dXSARGS;
26883 
26884     if ((items < 19) || (items > 19)) {
26885       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ,gquad,uniq_ML,energy_set,backtrack,backtrack_type,compute_bpp,max_bp_span,min_loop_size,window_size);");
26886     }
26887     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
26888     if (!SWIG_IsOK(ecode1)) {
26889       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
26890     }
26891     arg1 = static_cast< double >(val1);
26892     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
26893     if (!SWIG_IsOK(ecode2)) {
26894       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
26895     }
26896     arg2 = static_cast< double >(val2);
26897     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
26898     if (!SWIG_IsOK(ecode3)) {
26899       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
26900     }
26901     arg3 = static_cast< int >(val3);
26902     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
26903     if (!SWIG_IsOK(ecode4)) {
26904       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
26905     }
26906     arg4 = static_cast< int >(val4);
26907     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
26908     if (!SWIG_IsOK(ecode5)) {
26909       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
26910     }
26911     arg5 = static_cast< int >(val5);
26912     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
26913     if (!SWIG_IsOK(ecode6)) {
26914       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
26915     }
26916     arg6 = static_cast< int >(val6);
26917     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
26918     if (!SWIG_IsOK(ecode7)) {
26919       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
26920     }
26921     arg7 = static_cast< int >(val7);
26922     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
26923     if (!SWIG_IsOK(ecode8)) {
26924       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
26925     }
26926     arg8 = static_cast< int >(val8);
26927     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
26928     if (!SWIG_IsOK(ecode9)) {
26929       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
26930     }
26931     arg9 = static_cast< int >(val9);
26932     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
26933     if (!SWIG_IsOK(ecode10)) {
26934       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
26935     }
26936     arg10 = static_cast< int >(val10);
26937     ecode11 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
26938     if (!SWIG_IsOK(ecode11)) {
26939       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "new_md" "', argument " "11"" of type '" "int""'");
26940     }
26941     arg11 = static_cast< int >(val11);
26942     ecode12 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
26943     if (!SWIG_IsOK(ecode12)) {
26944       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "new_md" "', argument " "12"" of type '" "int""'");
26945     }
26946     arg12 = static_cast< int >(val12);
26947     ecode13 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
26948     if (!SWIG_IsOK(ecode13)) {
26949       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "new_md" "', argument " "13"" of type '" "int""'");
26950     }
26951     arg13 = static_cast< int >(val13);
26952     ecode14 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), &val14);
26953     if (!SWIG_IsOK(ecode14)) {
26954       SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "new_md" "', argument " "14"" of type '" "int""'");
26955     }
26956     arg14 = static_cast< int >(val14);
26957     ecode15 = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), &val15);
26958     if (!SWIG_IsOK(ecode15)) {
26959       SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "new_md" "', argument " "15"" of type '" "char""'");
26960     }
26961     arg15 = static_cast< char >(val15);
26962     ecode16 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), &val16);
26963     if (!SWIG_IsOK(ecode16)) {
26964       SWIG_exception_fail(SWIG_ArgError(ecode16), "in method '" "new_md" "', argument " "16"" of type '" "int""'");
26965     }
26966     arg16 = static_cast< int >(val16);
26967     ecode17 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), &val17);
26968     if (!SWIG_IsOK(ecode17)) {
26969       SWIG_exception_fail(SWIG_ArgError(ecode17), "in method '" "new_md" "', argument " "17"" of type '" "int""'");
26970     }
26971     arg17 = static_cast< int >(val17);
26972     ecode18 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(17), &val18);
26973     if (!SWIG_IsOK(ecode18)) {
26974       SWIG_exception_fail(SWIG_ArgError(ecode18), "in method '" "new_md" "', argument " "18"" of type '" "int""'");
26975     }
26976     arg18 = static_cast< int >(val18);
26977     ecode19 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(18), &val19);
26978     if (!SWIG_IsOK(ecode19)) {
26979       SWIG_exception_fail(SWIG_ArgError(ecode19), "in method '" "new_md" "', argument " "19"" of type '" "int""'");
26980     }
26981     arg19 = static_cast< int >(val19);
26982     {
26983       try {
26984         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17,arg18,arg19);
26985       } catch (const std::exception& e) {
26986         SWIG_exception(SWIG_RuntimeError, e.what());
26987       }
26988     }
26989     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
26990 
26991 
26992 
26993 
26994 
26995 
26996 
26997 
26998 
26999 
27000 
27001 
27002 
27003 
27004 
27005 
27006 
27007 
27008 
27009     XSRETURN(argvi);
27010   fail:
27011 
27012 
27013 
27014 
27015 
27016 
27017 
27018 
27019 
27020 
27021 
27022 
27023 
27024 
27025 
27026 
27027 
27028 
27029 
27030     SWIG_croak_null();
27031   }
27032 }
27033 
27034 
XS(_wrap_new_md__SWIG_6)27035 XS(_wrap_new_md__SWIG_6) {
27036   {
27037     double arg1 ;
27038     double arg2 ;
27039     int arg3 ;
27040     int arg4 ;
27041     int arg5 ;
27042     int arg6 ;
27043     int arg7 ;
27044     int arg8 ;
27045     int arg9 ;
27046     int arg10 ;
27047     int arg11 ;
27048     int arg12 ;
27049     int arg13 ;
27050     int arg14 ;
27051     char arg15 ;
27052     int arg16 ;
27053     int arg17 ;
27054     int arg18 ;
27055     double val1 ;
27056     int ecode1 = 0 ;
27057     double val2 ;
27058     int ecode2 = 0 ;
27059     int val3 ;
27060     int ecode3 = 0 ;
27061     int val4 ;
27062     int ecode4 = 0 ;
27063     int val5 ;
27064     int ecode5 = 0 ;
27065     int val6 ;
27066     int ecode6 = 0 ;
27067     int val7 ;
27068     int ecode7 = 0 ;
27069     int val8 ;
27070     int ecode8 = 0 ;
27071     int val9 ;
27072     int ecode9 = 0 ;
27073     int val10 ;
27074     int ecode10 = 0 ;
27075     int val11 ;
27076     int ecode11 = 0 ;
27077     int val12 ;
27078     int ecode12 = 0 ;
27079     int val13 ;
27080     int ecode13 = 0 ;
27081     int val14 ;
27082     int ecode14 = 0 ;
27083     char val15 ;
27084     int ecode15 = 0 ;
27085     int val16 ;
27086     int ecode16 = 0 ;
27087     int val17 ;
27088     int ecode17 = 0 ;
27089     int val18 ;
27090     int ecode18 = 0 ;
27091     int argvi = 0;
27092     vrna_md_t *result = 0 ;
27093     dXSARGS;
27094 
27095     if ((items < 18) || (items > 18)) {
27096       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ,gquad,uniq_ML,energy_set,backtrack,backtrack_type,compute_bpp,max_bp_span,min_loop_size);");
27097     }
27098     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
27099     if (!SWIG_IsOK(ecode1)) {
27100       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
27101     }
27102     arg1 = static_cast< double >(val1);
27103     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
27104     if (!SWIG_IsOK(ecode2)) {
27105       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
27106     }
27107     arg2 = static_cast< double >(val2);
27108     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
27109     if (!SWIG_IsOK(ecode3)) {
27110       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
27111     }
27112     arg3 = static_cast< int >(val3);
27113     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
27114     if (!SWIG_IsOK(ecode4)) {
27115       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
27116     }
27117     arg4 = static_cast< int >(val4);
27118     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
27119     if (!SWIG_IsOK(ecode5)) {
27120       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
27121     }
27122     arg5 = static_cast< int >(val5);
27123     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
27124     if (!SWIG_IsOK(ecode6)) {
27125       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
27126     }
27127     arg6 = static_cast< int >(val6);
27128     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
27129     if (!SWIG_IsOK(ecode7)) {
27130       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
27131     }
27132     arg7 = static_cast< int >(val7);
27133     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
27134     if (!SWIG_IsOK(ecode8)) {
27135       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
27136     }
27137     arg8 = static_cast< int >(val8);
27138     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
27139     if (!SWIG_IsOK(ecode9)) {
27140       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
27141     }
27142     arg9 = static_cast< int >(val9);
27143     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
27144     if (!SWIG_IsOK(ecode10)) {
27145       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
27146     }
27147     arg10 = static_cast< int >(val10);
27148     ecode11 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
27149     if (!SWIG_IsOK(ecode11)) {
27150       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "new_md" "', argument " "11"" of type '" "int""'");
27151     }
27152     arg11 = static_cast< int >(val11);
27153     ecode12 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
27154     if (!SWIG_IsOK(ecode12)) {
27155       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "new_md" "', argument " "12"" of type '" "int""'");
27156     }
27157     arg12 = static_cast< int >(val12);
27158     ecode13 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
27159     if (!SWIG_IsOK(ecode13)) {
27160       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "new_md" "', argument " "13"" of type '" "int""'");
27161     }
27162     arg13 = static_cast< int >(val13);
27163     ecode14 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), &val14);
27164     if (!SWIG_IsOK(ecode14)) {
27165       SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "new_md" "', argument " "14"" of type '" "int""'");
27166     }
27167     arg14 = static_cast< int >(val14);
27168     ecode15 = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), &val15);
27169     if (!SWIG_IsOK(ecode15)) {
27170       SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "new_md" "', argument " "15"" of type '" "char""'");
27171     }
27172     arg15 = static_cast< char >(val15);
27173     ecode16 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), &val16);
27174     if (!SWIG_IsOK(ecode16)) {
27175       SWIG_exception_fail(SWIG_ArgError(ecode16), "in method '" "new_md" "', argument " "16"" of type '" "int""'");
27176     }
27177     arg16 = static_cast< int >(val16);
27178     ecode17 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), &val17);
27179     if (!SWIG_IsOK(ecode17)) {
27180       SWIG_exception_fail(SWIG_ArgError(ecode17), "in method '" "new_md" "', argument " "17"" of type '" "int""'");
27181     }
27182     arg17 = static_cast< int >(val17);
27183     ecode18 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(17), &val18);
27184     if (!SWIG_IsOK(ecode18)) {
27185       SWIG_exception_fail(SWIG_ArgError(ecode18), "in method '" "new_md" "', argument " "18"" of type '" "int""'");
27186     }
27187     arg18 = static_cast< int >(val18);
27188     {
27189       try {
27190         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17,arg18);
27191       } catch (const std::exception& e) {
27192         SWIG_exception(SWIG_RuntimeError, e.what());
27193       }
27194     }
27195     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
27196 
27197 
27198 
27199 
27200 
27201 
27202 
27203 
27204 
27205 
27206 
27207 
27208 
27209 
27210 
27211 
27212 
27213 
27214     XSRETURN(argvi);
27215   fail:
27216 
27217 
27218 
27219 
27220 
27221 
27222 
27223 
27224 
27225 
27226 
27227 
27228 
27229 
27230 
27231 
27232 
27233 
27234     SWIG_croak_null();
27235   }
27236 }
27237 
27238 
XS(_wrap_new_md__SWIG_7)27239 XS(_wrap_new_md__SWIG_7) {
27240   {
27241     double arg1 ;
27242     double arg2 ;
27243     int arg3 ;
27244     int arg4 ;
27245     int arg5 ;
27246     int arg6 ;
27247     int arg7 ;
27248     int arg8 ;
27249     int arg9 ;
27250     int arg10 ;
27251     int arg11 ;
27252     int arg12 ;
27253     int arg13 ;
27254     int arg14 ;
27255     char arg15 ;
27256     int arg16 ;
27257     int arg17 ;
27258     double val1 ;
27259     int ecode1 = 0 ;
27260     double val2 ;
27261     int ecode2 = 0 ;
27262     int val3 ;
27263     int ecode3 = 0 ;
27264     int val4 ;
27265     int ecode4 = 0 ;
27266     int val5 ;
27267     int ecode5 = 0 ;
27268     int val6 ;
27269     int ecode6 = 0 ;
27270     int val7 ;
27271     int ecode7 = 0 ;
27272     int val8 ;
27273     int ecode8 = 0 ;
27274     int val9 ;
27275     int ecode9 = 0 ;
27276     int val10 ;
27277     int ecode10 = 0 ;
27278     int val11 ;
27279     int ecode11 = 0 ;
27280     int val12 ;
27281     int ecode12 = 0 ;
27282     int val13 ;
27283     int ecode13 = 0 ;
27284     int val14 ;
27285     int ecode14 = 0 ;
27286     char val15 ;
27287     int ecode15 = 0 ;
27288     int val16 ;
27289     int ecode16 = 0 ;
27290     int val17 ;
27291     int ecode17 = 0 ;
27292     int argvi = 0;
27293     vrna_md_t *result = 0 ;
27294     dXSARGS;
27295 
27296     if ((items < 17) || (items > 17)) {
27297       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ,gquad,uniq_ML,energy_set,backtrack,backtrack_type,compute_bpp,max_bp_span);");
27298     }
27299     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
27300     if (!SWIG_IsOK(ecode1)) {
27301       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
27302     }
27303     arg1 = static_cast< double >(val1);
27304     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
27305     if (!SWIG_IsOK(ecode2)) {
27306       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
27307     }
27308     arg2 = static_cast< double >(val2);
27309     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
27310     if (!SWIG_IsOK(ecode3)) {
27311       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
27312     }
27313     arg3 = static_cast< int >(val3);
27314     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
27315     if (!SWIG_IsOK(ecode4)) {
27316       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
27317     }
27318     arg4 = static_cast< int >(val4);
27319     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
27320     if (!SWIG_IsOK(ecode5)) {
27321       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
27322     }
27323     arg5 = static_cast< int >(val5);
27324     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
27325     if (!SWIG_IsOK(ecode6)) {
27326       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
27327     }
27328     arg6 = static_cast< int >(val6);
27329     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
27330     if (!SWIG_IsOK(ecode7)) {
27331       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
27332     }
27333     arg7 = static_cast< int >(val7);
27334     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
27335     if (!SWIG_IsOK(ecode8)) {
27336       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
27337     }
27338     arg8 = static_cast< int >(val8);
27339     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
27340     if (!SWIG_IsOK(ecode9)) {
27341       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
27342     }
27343     arg9 = static_cast< int >(val9);
27344     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
27345     if (!SWIG_IsOK(ecode10)) {
27346       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
27347     }
27348     arg10 = static_cast< int >(val10);
27349     ecode11 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
27350     if (!SWIG_IsOK(ecode11)) {
27351       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "new_md" "', argument " "11"" of type '" "int""'");
27352     }
27353     arg11 = static_cast< int >(val11);
27354     ecode12 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
27355     if (!SWIG_IsOK(ecode12)) {
27356       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "new_md" "', argument " "12"" of type '" "int""'");
27357     }
27358     arg12 = static_cast< int >(val12);
27359     ecode13 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
27360     if (!SWIG_IsOK(ecode13)) {
27361       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "new_md" "', argument " "13"" of type '" "int""'");
27362     }
27363     arg13 = static_cast< int >(val13);
27364     ecode14 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), &val14);
27365     if (!SWIG_IsOK(ecode14)) {
27366       SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "new_md" "', argument " "14"" of type '" "int""'");
27367     }
27368     arg14 = static_cast< int >(val14);
27369     ecode15 = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), &val15);
27370     if (!SWIG_IsOK(ecode15)) {
27371       SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "new_md" "', argument " "15"" of type '" "char""'");
27372     }
27373     arg15 = static_cast< char >(val15);
27374     ecode16 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), &val16);
27375     if (!SWIG_IsOK(ecode16)) {
27376       SWIG_exception_fail(SWIG_ArgError(ecode16), "in method '" "new_md" "', argument " "16"" of type '" "int""'");
27377     }
27378     arg16 = static_cast< int >(val16);
27379     ecode17 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), &val17);
27380     if (!SWIG_IsOK(ecode17)) {
27381       SWIG_exception_fail(SWIG_ArgError(ecode17), "in method '" "new_md" "', argument " "17"" of type '" "int""'");
27382     }
27383     arg17 = static_cast< int >(val17);
27384     {
27385       try {
27386         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17);
27387       } catch (const std::exception& e) {
27388         SWIG_exception(SWIG_RuntimeError, e.what());
27389       }
27390     }
27391     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
27392 
27393 
27394 
27395 
27396 
27397 
27398 
27399 
27400 
27401 
27402 
27403 
27404 
27405 
27406 
27407 
27408 
27409     XSRETURN(argvi);
27410   fail:
27411 
27412 
27413 
27414 
27415 
27416 
27417 
27418 
27419 
27420 
27421 
27422 
27423 
27424 
27425 
27426 
27427 
27428     SWIG_croak_null();
27429   }
27430 }
27431 
27432 
XS(_wrap_new_md__SWIG_8)27433 XS(_wrap_new_md__SWIG_8) {
27434   {
27435     double arg1 ;
27436     double arg2 ;
27437     int arg3 ;
27438     int arg4 ;
27439     int arg5 ;
27440     int arg6 ;
27441     int arg7 ;
27442     int arg8 ;
27443     int arg9 ;
27444     int arg10 ;
27445     int arg11 ;
27446     int arg12 ;
27447     int arg13 ;
27448     int arg14 ;
27449     char arg15 ;
27450     int arg16 ;
27451     double val1 ;
27452     int ecode1 = 0 ;
27453     double val2 ;
27454     int ecode2 = 0 ;
27455     int val3 ;
27456     int ecode3 = 0 ;
27457     int val4 ;
27458     int ecode4 = 0 ;
27459     int val5 ;
27460     int ecode5 = 0 ;
27461     int val6 ;
27462     int ecode6 = 0 ;
27463     int val7 ;
27464     int ecode7 = 0 ;
27465     int val8 ;
27466     int ecode8 = 0 ;
27467     int val9 ;
27468     int ecode9 = 0 ;
27469     int val10 ;
27470     int ecode10 = 0 ;
27471     int val11 ;
27472     int ecode11 = 0 ;
27473     int val12 ;
27474     int ecode12 = 0 ;
27475     int val13 ;
27476     int ecode13 = 0 ;
27477     int val14 ;
27478     int ecode14 = 0 ;
27479     char val15 ;
27480     int ecode15 = 0 ;
27481     int val16 ;
27482     int ecode16 = 0 ;
27483     int argvi = 0;
27484     vrna_md_t *result = 0 ;
27485     dXSARGS;
27486 
27487     if ((items < 16) || (items > 16)) {
27488       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ,gquad,uniq_ML,energy_set,backtrack,backtrack_type,compute_bpp);");
27489     }
27490     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
27491     if (!SWIG_IsOK(ecode1)) {
27492       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
27493     }
27494     arg1 = static_cast< double >(val1);
27495     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
27496     if (!SWIG_IsOK(ecode2)) {
27497       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
27498     }
27499     arg2 = static_cast< double >(val2);
27500     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
27501     if (!SWIG_IsOK(ecode3)) {
27502       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
27503     }
27504     arg3 = static_cast< int >(val3);
27505     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
27506     if (!SWIG_IsOK(ecode4)) {
27507       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
27508     }
27509     arg4 = static_cast< int >(val4);
27510     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
27511     if (!SWIG_IsOK(ecode5)) {
27512       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
27513     }
27514     arg5 = static_cast< int >(val5);
27515     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
27516     if (!SWIG_IsOK(ecode6)) {
27517       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
27518     }
27519     arg6 = static_cast< int >(val6);
27520     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
27521     if (!SWIG_IsOK(ecode7)) {
27522       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
27523     }
27524     arg7 = static_cast< int >(val7);
27525     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
27526     if (!SWIG_IsOK(ecode8)) {
27527       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
27528     }
27529     arg8 = static_cast< int >(val8);
27530     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
27531     if (!SWIG_IsOK(ecode9)) {
27532       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
27533     }
27534     arg9 = static_cast< int >(val9);
27535     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
27536     if (!SWIG_IsOK(ecode10)) {
27537       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
27538     }
27539     arg10 = static_cast< int >(val10);
27540     ecode11 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
27541     if (!SWIG_IsOK(ecode11)) {
27542       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "new_md" "', argument " "11"" of type '" "int""'");
27543     }
27544     arg11 = static_cast< int >(val11);
27545     ecode12 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
27546     if (!SWIG_IsOK(ecode12)) {
27547       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "new_md" "', argument " "12"" of type '" "int""'");
27548     }
27549     arg12 = static_cast< int >(val12);
27550     ecode13 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
27551     if (!SWIG_IsOK(ecode13)) {
27552       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "new_md" "', argument " "13"" of type '" "int""'");
27553     }
27554     arg13 = static_cast< int >(val13);
27555     ecode14 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), &val14);
27556     if (!SWIG_IsOK(ecode14)) {
27557       SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "new_md" "', argument " "14"" of type '" "int""'");
27558     }
27559     arg14 = static_cast< int >(val14);
27560     ecode15 = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), &val15);
27561     if (!SWIG_IsOK(ecode15)) {
27562       SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "new_md" "', argument " "15"" of type '" "char""'");
27563     }
27564     arg15 = static_cast< char >(val15);
27565     ecode16 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), &val16);
27566     if (!SWIG_IsOK(ecode16)) {
27567       SWIG_exception_fail(SWIG_ArgError(ecode16), "in method '" "new_md" "', argument " "16"" of type '" "int""'");
27568     }
27569     arg16 = static_cast< int >(val16);
27570     {
27571       try {
27572         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16);
27573       } catch (const std::exception& e) {
27574         SWIG_exception(SWIG_RuntimeError, e.what());
27575       }
27576     }
27577     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
27578 
27579 
27580 
27581 
27582 
27583 
27584 
27585 
27586 
27587 
27588 
27589 
27590 
27591 
27592 
27593 
27594     XSRETURN(argvi);
27595   fail:
27596 
27597 
27598 
27599 
27600 
27601 
27602 
27603 
27604 
27605 
27606 
27607 
27608 
27609 
27610 
27611 
27612     SWIG_croak_null();
27613   }
27614 }
27615 
27616 
XS(_wrap_new_md__SWIG_9)27617 XS(_wrap_new_md__SWIG_9) {
27618   {
27619     double arg1 ;
27620     double arg2 ;
27621     int arg3 ;
27622     int arg4 ;
27623     int arg5 ;
27624     int arg6 ;
27625     int arg7 ;
27626     int arg8 ;
27627     int arg9 ;
27628     int arg10 ;
27629     int arg11 ;
27630     int arg12 ;
27631     int arg13 ;
27632     int arg14 ;
27633     char arg15 ;
27634     double val1 ;
27635     int ecode1 = 0 ;
27636     double val2 ;
27637     int ecode2 = 0 ;
27638     int val3 ;
27639     int ecode3 = 0 ;
27640     int val4 ;
27641     int ecode4 = 0 ;
27642     int val5 ;
27643     int ecode5 = 0 ;
27644     int val6 ;
27645     int ecode6 = 0 ;
27646     int val7 ;
27647     int ecode7 = 0 ;
27648     int val8 ;
27649     int ecode8 = 0 ;
27650     int val9 ;
27651     int ecode9 = 0 ;
27652     int val10 ;
27653     int ecode10 = 0 ;
27654     int val11 ;
27655     int ecode11 = 0 ;
27656     int val12 ;
27657     int ecode12 = 0 ;
27658     int val13 ;
27659     int ecode13 = 0 ;
27660     int val14 ;
27661     int ecode14 = 0 ;
27662     char val15 ;
27663     int ecode15 = 0 ;
27664     int argvi = 0;
27665     vrna_md_t *result = 0 ;
27666     dXSARGS;
27667 
27668     if ((items < 15) || (items > 15)) {
27669       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ,gquad,uniq_ML,energy_set,backtrack,backtrack_type);");
27670     }
27671     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
27672     if (!SWIG_IsOK(ecode1)) {
27673       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
27674     }
27675     arg1 = static_cast< double >(val1);
27676     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
27677     if (!SWIG_IsOK(ecode2)) {
27678       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
27679     }
27680     arg2 = static_cast< double >(val2);
27681     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
27682     if (!SWIG_IsOK(ecode3)) {
27683       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
27684     }
27685     arg3 = static_cast< int >(val3);
27686     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
27687     if (!SWIG_IsOK(ecode4)) {
27688       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
27689     }
27690     arg4 = static_cast< int >(val4);
27691     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
27692     if (!SWIG_IsOK(ecode5)) {
27693       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
27694     }
27695     arg5 = static_cast< int >(val5);
27696     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
27697     if (!SWIG_IsOK(ecode6)) {
27698       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
27699     }
27700     arg6 = static_cast< int >(val6);
27701     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
27702     if (!SWIG_IsOK(ecode7)) {
27703       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
27704     }
27705     arg7 = static_cast< int >(val7);
27706     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
27707     if (!SWIG_IsOK(ecode8)) {
27708       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
27709     }
27710     arg8 = static_cast< int >(val8);
27711     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
27712     if (!SWIG_IsOK(ecode9)) {
27713       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
27714     }
27715     arg9 = static_cast< int >(val9);
27716     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
27717     if (!SWIG_IsOK(ecode10)) {
27718       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
27719     }
27720     arg10 = static_cast< int >(val10);
27721     ecode11 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
27722     if (!SWIG_IsOK(ecode11)) {
27723       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "new_md" "', argument " "11"" of type '" "int""'");
27724     }
27725     arg11 = static_cast< int >(val11);
27726     ecode12 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
27727     if (!SWIG_IsOK(ecode12)) {
27728       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "new_md" "', argument " "12"" of type '" "int""'");
27729     }
27730     arg12 = static_cast< int >(val12);
27731     ecode13 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
27732     if (!SWIG_IsOK(ecode13)) {
27733       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "new_md" "', argument " "13"" of type '" "int""'");
27734     }
27735     arg13 = static_cast< int >(val13);
27736     ecode14 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), &val14);
27737     if (!SWIG_IsOK(ecode14)) {
27738       SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "new_md" "', argument " "14"" of type '" "int""'");
27739     }
27740     arg14 = static_cast< int >(val14);
27741     ecode15 = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), &val15);
27742     if (!SWIG_IsOK(ecode15)) {
27743       SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "new_md" "', argument " "15"" of type '" "char""'");
27744     }
27745     arg15 = static_cast< char >(val15);
27746     {
27747       try {
27748         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15);
27749       } catch (const std::exception& e) {
27750         SWIG_exception(SWIG_RuntimeError, e.what());
27751       }
27752     }
27753     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
27754 
27755 
27756 
27757 
27758 
27759 
27760 
27761 
27762 
27763 
27764 
27765 
27766 
27767 
27768 
27769     XSRETURN(argvi);
27770   fail:
27771 
27772 
27773 
27774 
27775 
27776 
27777 
27778 
27779 
27780 
27781 
27782 
27783 
27784 
27785 
27786     SWIG_croak_null();
27787   }
27788 }
27789 
27790 
XS(_wrap_new_md__SWIG_10)27791 XS(_wrap_new_md__SWIG_10) {
27792   {
27793     double arg1 ;
27794     double arg2 ;
27795     int arg3 ;
27796     int arg4 ;
27797     int arg5 ;
27798     int arg6 ;
27799     int arg7 ;
27800     int arg8 ;
27801     int arg9 ;
27802     int arg10 ;
27803     int arg11 ;
27804     int arg12 ;
27805     int arg13 ;
27806     int arg14 ;
27807     double val1 ;
27808     int ecode1 = 0 ;
27809     double val2 ;
27810     int ecode2 = 0 ;
27811     int val3 ;
27812     int ecode3 = 0 ;
27813     int val4 ;
27814     int ecode4 = 0 ;
27815     int val5 ;
27816     int ecode5 = 0 ;
27817     int val6 ;
27818     int ecode6 = 0 ;
27819     int val7 ;
27820     int ecode7 = 0 ;
27821     int val8 ;
27822     int ecode8 = 0 ;
27823     int val9 ;
27824     int ecode9 = 0 ;
27825     int val10 ;
27826     int ecode10 = 0 ;
27827     int val11 ;
27828     int ecode11 = 0 ;
27829     int val12 ;
27830     int ecode12 = 0 ;
27831     int val13 ;
27832     int ecode13 = 0 ;
27833     int val14 ;
27834     int ecode14 = 0 ;
27835     int argvi = 0;
27836     vrna_md_t *result = 0 ;
27837     dXSARGS;
27838 
27839     if ((items < 14) || (items > 14)) {
27840       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ,gquad,uniq_ML,energy_set,backtrack);");
27841     }
27842     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
27843     if (!SWIG_IsOK(ecode1)) {
27844       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
27845     }
27846     arg1 = static_cast< double >(val1);
27847     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
27848     if (!SWIG_IsOK(ecode2)) {
27849       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
27850     }
27851     arg2 = static_cast< double >(val2);
27852     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
27853     if (!SWIG_IsOK(ecode3)) {
27854       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
27855     }
27856     arg3 = static_cast< int >(val3);
27857     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
27858     if (!SWIG_IsOK(ecode4)) {
27859       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
27860     }
27861     arg4 = static_cast< int >(val4);
27862     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
27863     if (!SWIG_IsOK(ecode5)) {
27864       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
27865     }
27866     arg5 = static_cast< int >(val5);
27867     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
27868     if (!SWIG_IsOK(ecode6)) {
27869       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
27870     }
27871     arg6 = static_cast< int >(val6);
27872     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
27873     if (!SWIG_IsOK(ecode7)) {
27874       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
27875     }
27876     arg7 = static_cast< int >(val7);
27877     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
27878     if (!SWIG_IsOK(ecode8)) {
27879       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
27880     }
27881     arg8 = static_cast< int >(val8);
27882     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
27883     if (!SWIG_IsOK(ecode9)) {
27884       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
27885     }
27886     arg9 = static_cast< int >(val9);
27887     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
27888     if (!SWIG_IsOK(ecode10)) {
27889       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
27890     }
27891     arg10 = static_cast< int >(val10);
27892     ecode11 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
27893     if (!SWIG_IsOK(ecode11)) {
27894       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "new_md" "', argument " "11"" of type '" "int""'");
27895     }
27896     arg11 = static_cast< int >(val11);
27897     ecode12 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
27898     if (!SWIG_IsOK(ecode12)) {
27899       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "new_md" "', argument " "12"" of type '" "int""'");
27900     }
27901     arg12 = static_cast< int >(val12);
27902     ecode13 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
27903     if (!SWIG_IsOK(ecode13)) {
27904       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "new_md" "', argument " "13"" of type '" "int""'");
27905     }
27906     arg13 = static_cast< int >(val13);
27907     ecode14 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), &val14);
27908     if (!SWIG_IsOK(ecode14)) {
27909       SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "new_md" "', argument " "14"" of type '" "int""'");
27910     }
27911     arg14 = static_cast< int >(val14);
27912     {
27913       try {
27914         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14);
27915       } catch (const std::exception& e) {
27916         SWIG_exception(SWIG_RuntimeError, e.what());
27917       }
27918     }
27919     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
27920 
27921 
27922 
27923 
27924 
27925 
27926 
27927 
27928 
27929 
27930 
27931 
27932 
27933 
27934     XSRETURN(argvi);
27935   fail:
27936 
27937 
27938 
27939 
27940 
27941 
27942 
27943 
27944 
27945 
27946 
27947 
27948 
27949 
27950     SWIG_croak_null();
27951   }
27952 }
27953 
27954 
XS(_wrap_new_md__SWIG_11)27955 XS(_wrap_new_md__SWIG_11) {
27956   {
27957     double arg1 ;
27958     double arg2 ;
27959     int arg3 ;
27960     int arg4 ;
27961     int arg5 ;
27962     int arg6 ;
27963     int arg7 ;
27964     int arg8 ;
27965     int arg9 ;
27966     int arg10 ;
27967     int arg11 ;
27968     int arg12 ;
27969     int arg13 ;
27970     double val1 ;
27971     int ecode1 = 0 ;
27972     double val2 ;
27973     int ecode2 = 0 ;
27974     int val3 ;
27975     int ecode3 = 0 ;
27976     int val4 ;
27977     int ecode4 = 0 ;
27978     int val5 ;
27979     int ecode5 = 0 ;
27980     int val6 ;
27981     int ecode6 = 0 ;
27982     int val7 ;
27983     int ecode7 = 0 ;
27984     int val8 ;
27985     int ecode8 = 0 ;
27986     int val9 ;
27987     int ecode9 = 0 ;
27988     int val10 ;
27989     int ecode10 = 0 ;
27990     int val11 ;
27991     int ecode11 = 0 ;
27992     int val12 ;
27993     int ecode12 = 0 ;
27994     int val13 ;
27995     int ecode13 = 0 ;
27996     int argvi = 0;
27997     vrna_md_t *result = 0 ;
27998     dXSARGS;
27999 
28000     if ((items < 13) || (items > 13)) {
28001       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ,gquad,uniq_ML,energy_set);");
28002     }
28003     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
28004     if (!SWIG_IsOK(ecode1)) {
28005       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
28006     }
28007     arg1 = static_cast< double >(val1);
28008     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
28009     if (!SWIG_IsOK(ecode2)) {
28010       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
28011     }
28012     arg2 = static_cast< double >(val2);
28013     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
28014     if (!SWIG_IsOK(ecode3)) {
28015       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
28016     }
28017     arg3 = static_cast< int >(val3);
28018     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
28019     if (!SWIG_IsOK(ecode4)) {
28020       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
28021     }
28022     arg4 = static_cast< int >(val4);
28023     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
28024     if (!SWIG_IsOK(ecode5)) {
28025       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
28026     }
28027     arg5 = static_cast< int >(val5);
28028     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
28029     if (!SWIG_IsOK(ecode6)) {
28030       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
28031     }
28032     arg6 = static_cast< int >(val6);
28033     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
28034     if (!SWIG_IsOK(ecode7)) {
28035       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
28036     }
28037     arg7 = static_cast< int >(val7);
28038     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
28039     if (!SWIG_IsOK(ecode8)) {
28040       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
28041     }
28042     arg8 = static_cast< int >(val8);
28043     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
28044     if (!SWIG_IsOK(ecode9)) {
28045       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
28046     }
28047     arg9 = static_cast< int >(val9);
28048     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
28049     if (!SWIG_IsOK(ecode10)) {
28050       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
28051     }
28052     arg10 = static_cast< int >(val10);
28053     ecode11 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
28054     if (!SWIG_IsOK(ecode11)) {
28055       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "new_md" "', argument " "11"" of type '" "int""'");
28056     }
28057     arg11 = static_cast< int >(val11);
28058     ecode12 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
28059     if (!SWIG_IsOK(ecode12)) {
28060       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "new_md" "', argument " "12"" of type '" "int""'");
28061     }
28062     arg12 = static_cast< int >(val12);
28063     ecode13 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
28064     if (!SWIG_IsOK(ecode13)) {
28065       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "new_md" "', argument " "13"" of type '" "int""'");
28066     }
28067     arg13 = static_cast< int >(val13);
28068     {
28069       try {
28070         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13);
28071       } catch (const std::exception& e) {
28072         SWIG_exception(SWIG_RuntimeError, e.what());
28073       }
28074     }
28075     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
28076 
28077 
28078 
28079 
28080 
28081 
28082 
28083 
28084 
28085 
28086 
28087 
28088 
28089     XSRETURN(argvi);
28090   fail:
28091 
28092 
28093 
28094 
28095 
28096 
28097 
28098 
28099 
28100 
28101 
28102 
28103 
28104     SWIG_croak_null();
28105   }
28106 }
28107 
28108 
XS(_wrap_new_md__SWIG_12)28109 XS(_wrap_new_md__SWIG_12) {
28110   {
28111     double arg1 ;
28112     double arg2 ;
28113     int arg3 ;
28114     int arg4 ;
28115     int arg5 ;
28116     int arg6 ;
28117     int arg7 ;
28118     int arg8 ;
28119     int arg9 ;
28120     int arg10 ;
28121     int arg11 ;
28122     int arg12 ;
28123     double val1 ;
28124     int ecode1 = 0 ;
28125     double val2 ;
28126     int ecode2 = 0 ;
28127     int val3 ;
28128     int ecode3 = 0 ;
28129     int val4 ;
28130     int ecode4 = 0 ;
28131     int val5 ;
28132     int ecode5 = 0 ;
28133     int val6 ;
28134     int ecode6 = 0 ;
28135     int val7 ;
28136     int ecode7 = 0 ;
28137     int val8 ;
28138     int ecode8 = 0 ;
28139     int val9 ;
28140     int ecode9 = 0 ;
28141     int val10 ;
28142     int ecode10 = 0 ;
28143     int val11 ;
28144     int ecode11 = 0 ;
28145     int val12 ;
28146     int ecode12 = 0 ;
28147     int argvi = 0;
28148     vrna_md_t *result = 0 ;
28149     dXSARGS;
28150 
28151     if ((items < 12) || (items > 12)) {
28152       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ,gquad,uniq_ML);");
28153     }
28154     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
28155     if (!SWIG_IsOK(ecode1)) {
28156       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
28157     }
28158     arg1 = static_cast< double >(val1);
28159     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
28160     if (!SWIG_IsOK(ecode2)) {
28161       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
28162     }
28163     arg2 = static_cast< double >(val2);
28164     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
28165     if (!SWIG_IsOK(ecode3)) {
28166       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
28167     }
28168     arg3 = static_cast< int >(val3);
28169     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
28170     if (!SWIG_IsOK(ecode4)) {
28171       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
28172     }
28173     arg4 = static_cast< int >(val4);
28174     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
28175     if (!SWIG_IsOK(ecode5)) {
28176       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
28177     }
28178     arg5 = static_cast< int >(val5);
28179     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
28180     if (!SWIG_IsOK(ecode6)) {
28181       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
28182     }
28183     arg6 = static_cast< int >(val6);
28184     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
28185     if (!SWIG_IsOK(ecode7)) {
28186       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
28187     }
28188     arg7 = static_cast< int >(val7);
28189     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
28190     if (!SWIG_IsOK(ecode8)) {
28191       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
28192     }
28193     arg8 = static_cast< int >(val8);
28194     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
28195     if (!SWIG_IsOK(ecode9)) {
28196       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
28197     }
28198     arg9 = static_cast< int >(val9);
28199     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
28200     if (!SWIG_IsOK(ecode10)) {
28201       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
28202     }
28203     arg10 = static_cast< int >(val10);
28204     ecode11 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
28205     if (!SWIG_IsOK(ecode11)) {
28206       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "new_md" "', argument " "11"" of type '" "int""'");
28207     }
28208     arg11 = static_cast< int >(val11);
28209     ecode12 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
28210     if (!SWIG_IsOK(ecode12)) {
28211       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "new_md" "', argument " "12"" of type '" "int""'");
28212     }
28213     arg12 = static_cast< int >(val12);
28214     {
28215       try {
28216         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12);
28217       } catch (const std::exception& e) {
28218         SWIG_exception(SWIG_RuntimeError, e.what());
28219       }
28220     }
28221     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
28222 
28223 
28224 
28225 
28226 
28227 
28228 
28229 
28230 
28231 
28232 
28233 
28234     XSRETURN(argvi);
28235   fail:
28236 
28237 
28238 
28239 
28240 
28241 
28242 
28243 
28244 
28245 
28246 
28247 
28248     SWIG_croak_null();
28249   }
28250 }
28251 
28252 
XS(_wrap_new_md__SWIG_13)28253 XS(_wrap_new_md__SWIG_13) {
28254   {
28255     double arg1 ;
28256     double arg2 ;
28257     int arg3 ;
28258     int arg4 ;
28259     int arg5 ;
28260     int arg6 ;
28261     int arg7 ;
28262     int arg8 ;
28263     int arg9 ;
28264     int arg10 ;
28265     int arg11 ;
28266     double val1 ;
28267     int ecode1 = 0 ;
28268     double val2 ;
28269     int ecode2 = 0 ;
28270     int val3 ;
28271     int ecode3 = 0 ;
28272     int val4 ;
28273     int ecode4 = 0 ;
28274     int val5 ;
28275     int ecode5 = 0 ;
28276     int val6 ;
28277     int ecode6 = 0 ;
28278     int val7 ;
28279     int ecode7 = 0 ;
28280     int val8 ;
28281     int ecode8 = 0 ;
28282     int val9 ;
28283     int ecode9 = 0 ;
28284     int val10 ;
28285     int ecode10 = 0 ;
28286     int val11 ;
28287     int ecode11 = 0 ;
28288     int argvi = 0;
28289     vrna_md_t *result = 0 ;
28290     dXSARGS;
28291 
28292     if ((items < 11) || (items > 11)) {
28293       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ,gquad);");
28294     }
28295     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
28296     if (!SWIG_IsOK(ecode1)) {
28297       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
28298     }
28299     arg1 = static_cast< double >(val1);
28300     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
28301     if (!SWIG_IsOK(ecode2)) {
28302       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
28303     }
28304     arg2 = static_cast< double >(val2);
28305     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
28306     if (!SWIG_IsOK(ecode3)) {
28307       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
28308     }
28309     arg3 = static_cast< int >(val3);
28310     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
28311     if (!SWIG_IsOK(ecode4)) {
28312       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
28313     }
28314     arg4 = static_cast< int >(val4);
28315     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
28316     if (!SWIG_IsOK(ecode5)) {
28317       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
28318     }
28319     arg5 = static_cast< int >(val5);
28320     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
28321     if (!SWIG_IsOK(ecode6)) {
28322       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
28323     }
28324     arg6 = static_cast< int >(val6);
28325     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
28326     if (!SWIG_IsOK(ecode7)) {
28327       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
28328     }
28329     arg7 = static_cast< int >(val7);
28330     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
28331     if (!SWIG_IsOK(ecode8)) {
28332       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
28333     }
28334     arg8 = static_cast< int >(val8);
28335     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
28336     if (!SWIG_IsOK(ecode9)) {
28337       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
28338     }
28339     arg9 = static_cast< int >(val9);
28340     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
28341     if (!SWIG_IsOK(ecode10)) {
28342       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
28343     }
28344     arg10 = static_cast< int >(val10);
28345     ecode11 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
28346     if (!SWIG_IsOK(ecode11)) {
28347       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "new_md" "', argument " "11"" of type '" "int""'");
28348     }
28349     arg11 = static_cast< int >(val11);
28350     {
28351       try {
28352         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11);
28353       } catch (const std::exception& e) {
28354         SWIG_exception(SWIG_RuntimeError, e.what());
28355       }
28356     }
28357     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
28358 
28359 
28360 
28361 
28362 
28363 
28364 
28365 
28366 
28367 
28368 
28369     XSRETURN(argvi);
28370   fail:
28371 
28372 
28373 
28374 
28375 
28376 
28377 
28378 
28379 
28380 
28381 
28382     SWIG_croak_null();
28383   }
28384 }
28385 
28386 
XS(_wrap_new_md__SWIG_14)28387 XS(_wrap_new_md__SWIG_14) {
28388   {
28389     double arg1 ;
28390     double arg2 ;
28391     int arg3 ;
28392     int arg4 ;
28393     int arg5 ;
28394     int arg6 ;
28395     int arg7 ;
28396     int arg8 ;
28397     int arg9 ;
28398     int arg10 ;
28399     double val1 ;
28400     int ecode1 = 0 ;
28401     double val2 ;
28402     int ecode2 = 0 ;
28403     int val3 ;
28404     int ecode3 = 0 ;
28405     int val4 ;
28406     int ecode4 = 0 ;
28407     int val5 ;
28408     int ecode5 = 0 ;
28409     int val6 ;
28410     int ecode6 = 0 ;
28411     int val7 ;
28412     int ecode7 = 0 ;
28413     int val8 ;
28414     int ecode8 = 0 ;
28415     int val9 ;
28416     int ecode9 = 0 ;
28417     int val10 ;
28418     int ecode10 = 0 ;
28419     int argvi = 0;
28420     vrna_md_t *result = 0 ;
28421     dXSARGS;
28422 
28423     if ((items < 10) || (items > 10)) {
28424       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML,circ);");
28425     }
28426     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
28427     if (!SWIG_IsOK(ecode1)) {
28428       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
28429     }
28430     arg1 = static_cast< double >(val1);
28431     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
28432     if (!SWIG_IsOK(ecode2)) {
28433       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
28434     }
28435     arg2 = static_cast< double >(val2);
28436     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
28437     if (!SWIG_IsOK(ecode3)) {
28438       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
28439     }
28440     arg3 = static_cast< int >(val3);
28441     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
28442     if (!SWIG_IsOK(ecode4)) {
28443       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
28444     }
28445     arg4 = static_cast< int >(val4);
28446     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
28447     if (!SWIG_IsOK(ecode5)) {
28448       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
28449     }
28450     arg5 = static_cast< int >(val5);
28451     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
28452     if (!SWIG_IsOK(ecode6)) {
28453       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
28454     }
28455     arg6 = static_cast< int >(val6);
28456     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
28457     if (!SWIG_IsOK(ecode7)) {
28458       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
28459     }
28460     arg7 = static_cast< int >(val7);
28461     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
28462     if (!SWIG_IsOK(ecode8)) {
28463       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
28464     }
28465     arg8 = static_cast< int >(val8);
28466     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
28467     if (!SWIG_IsOK(ecode9)) {
28468       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
28469     }
28470     arg9 = static_cast< int >(val9);
28471     ecode10 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
28472     if (!SWIG_IsOK(ecode10)) {
28473       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "new_md" "', argument " "10"" of type '" "int""'");
28474     }
28475     arg10 = static_cast< int >(val10);
28476     {
28477       try {
28478         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10);
28479       } catch (const std::exception& e) {
28480         SWIG_exception(SWIG_RuntimeError, e.what());
28481       }
28482     }
28483     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
28484 
28485 
28486 
28487 
28488 
28489 
28490 
28491 
28492 
28493 
28494     XSRETURN(argvi);
28495   fail:
28496 
28497 
28498 
28499 
28500 
28501 
28502 
28503 
28504 
28505 
28506     SWIG_croak_null();
28507   }
28508 }
28509 
28510 
XS(_wrap_new_md__SWIG_15)28511 XS(_wrap_new_md__SWIG_15) {
28512   {
28513     double arg1 ;
28514     double arg2 ;
28515     int arg3 ;
28516     int arg4 ;
28517     int arg5 ;
28518     int arg6 ;
28519     int arg7 ;
28520     int arg8 ;
28521     int arg9 ;
28522     double val1 ;
28523     int ecode1 = 0 ;
28524     double val2 ;
28525     int ecode2 = 0 ;
28526     int val3 ;
28527     int ecode3 = 0 ;
28528     int val4 ;
28529     int ecode4 = 0 ;
28530     int val5 ;
28531     int ecode5 = 0 ;
28532     int val6 ;
28533     int ecode6 = 0 ;
28534     int val7 ;
28535     int ecode7 = 0 ;
28536     int val8 ;
28537     int ecode8 = 0 ;
28538     int val9 ;
28539     int ecode9 = 0 ;
28540     int argvi = 0;
28541     vrna_md_t *result = 0 ;
28542     dXSARGS;
28543 
28544     if ((items < 9) || (items > 9)) {
28545       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure,logML);");
28546     }
28547     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
28548     if (!SWIG_IsOK(ecode1)) {
28549       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
28550     }
28551     arg1 = static_cast< double >(val1);
28552     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
28553     if (!SWIG_IsOK(ecode2)) {
28554       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
28555     }
28556     arg2 = static_cast< double >(val2);
28557     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
28558     if (!SWIG_IsOK(ecode3)) {
28559       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
28560     }
28561     arg3 = static_cast< int >(val3);
28562     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
28563     if (!SWIG_IsOK(ecode4)) {
28564       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
28565     }
28566     arg4 = static_cast< int >(val4);
28567     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
28568     if (!SWIG_IsOK(ecode5)) {
28569       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
28570     }
28571     arg5 = static_cast< int >(val5);
28572     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
28573     if (!SWIG_IsOK(ecode6)) {
28574       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
28575     }
28576     arg6 = static_cast< int >(val6);
28577     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
28578     if (!SWIG_IsOK(ecode7)) {
28579       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
28580     }
28581     arg7 = static_cast< int >(val7);
28582     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
28583     if (!SWIG_IsOK(ecode8)) {
28584       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
28585     }
28586     arg8 = static_cast< int >(val8);
28587     ecode9 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
28588     if (!SWIG_IsOK(ecode9)) {
28589       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "new_md" "', argument " "9"" of type '" "int""'");
28590     }
28591     arg9 = static_cast< int >(val9);
28592     {
28593       try {
28594         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9);
28595       } catch (const std::exception& e) {
28596         SWIG_exception(SWIG_RuntimeError, e.what());
28597       }
28598     }
28599     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
28600 
28601 
28602 
28603 
28604 
28605 
28606 
28607 
28608 
28609     XSRETURN(argvi);
28610   fail:
28611 
28612 
28613 
28614 
28615 
28616 
28617 
28618 
28619 
28620     SWIG_croak_null();
28621   }
28622 }
28623 
28624 
XS(_wrap_new_md__SWIG_16)28625 XS(_wrap_new_md__SWIG_16) {
28626   {
28627     double arg1 ;
28628     double arg2 ;
28629     int arg3 ;
28630     int arg4 ;
28631     int arg5 ;
28632     int arg6 ;
28633     int arg7 ;
28634     int arg8 ;
28635     double val1 ;
28636     int ecode1 = 0 ;
28637     double val2 ;
28638     int ecode2 = 0 ;
28639     int val3 ;
28640     int ecode3 = 0 ;
28641     int val4 ;
28642     int ecode4 = 0 ;
28643     int val5 ;
28644     int ecode5 = 0 ;
28645     int val6 ;
28646     int ecode6 = 0 ;
28647     int val7 ;
28648     int ecode7 = 0 ;
28649     int val8 ;
28650     int ecode8 = 0 ;
28651     int argvi = 0;
28652     vrna_md_t *result = 0 ;
28653     dXSARGS;
28654 
28655     if ((items < 8) || (items > 8)) {
28656       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU,noGUclosure);");
28657     }
28658     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
28659     if (!SWIG_IsOK(ecode1)) {
28660       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
28661     }
28662     arg1 = static_cast< double >(val1);
28663     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
28664     if (!SWIG_IsOK(ecode2)) {
28665       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
28666     }
28667     arg2 = static_cast< double >(val2);
28668     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
28669     if (!SWIG_IsOK(ecode3)) {
28670       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
28671     }
28672     arg3 = static_cast< int >(val3);
28673     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
28674     if (!SWIG_IsOK(ecode4)) {
28675       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
28676     }
28677     arg4 = static_cast< int >(val4);
28678     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
28679     if (!SWIG_IsOK(ecode5)) {
28680       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
28681     }
28682     arg5 = static_cast< int >(val5);
28683     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
28684     if (!SWIG_IsOK(ecode6)) {
28685       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
28686     }
28687     arg6 = static_cast< int >(val6);
28688     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
28689     if (!SWIG_IsOK(ecode7)) {
28690       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
28691     }
28692     arg7 = static_cast< int >(val7);
28693     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
28694     if (!SWIG_IsOK(ecode8)) {
28695       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "new_md" "', argument " "8"" of type '" "int""'");
28696     }
28697     arg8 = static_cast< int >(val8);
28698     {
28699       try {
28700         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8);
28701       } catch (const std::exception& e) {
28702         SWIG_exception(SWIG_RuntimeError, e.what());
28703       }
28704     }
28705     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
28706 
28707 
28708 
28709 
28710 
28711 
28712 
28713 
28714     XSRETURN(argvi);
28715   fail:
28716 
28717 
28718 
28719 
28720 
28721 
28722 
28723 
28724     SWIG_croak_null();
28725   }
28726 }
28727 
28728 
XS(_wrap_new_md__SWIG_17)28729 XS(_wrap_new_md__SWIG_17) {
28730   {
28731     double arg1 ;
28732     double arg2 ;
28733     int arg3 ;
28734     int arg4 ;
28735     int arg5 ;
28736     int arg6 ;
28737     int arg7 ;
28738     double val1 ;
28739     int ecode1 = 0 ;
28740     double val2 ;
28741     int ecode2 = 0 ;
28742     int val3 ;
28743     int ecode3 = 0 ;
28744     int val4 ;
28745     int ecode4 = 0 ;
28746     int val5 ;
28747     int ecode5 = 0 ;
28748     int val6 ;
28749     int ecode6 = 0 ;
28750     int val7 ;
28751     int ecode7 = 0 ;
28752     int argvi = 0;
28753     vrna_md_t *result = 0 ;
28754     dXSARGS;
28755 
28756     if ((items < 7) || (items > 7)) {
28757       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP,noGU);");
28758     }
28759     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
28760     if (!SWIG_IsOK(ecode1)) {
28761       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
28762     }
28763     arg1 = static_cast< double >(val1);
28764     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
28765     if (!SWIG_IsOK(ecode2)) {
28766       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
28767     }
28768     arg2 = static_cast< double >(val2);
28769     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
28770     if (!SWIG_IsOK(ecode3)) {
28771       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
28772     }
28773     arg3 = static_cast< int >(val3);
28774     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
28775     if (!SWIG_IsOK(ecode4)) {
28776       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
28777     }
28778     arg4 = static_cast< int >(val4);
28779     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
28780     if (!SWIG_IsOK(ecode5)) {
28781       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
28782     }
28783     arg5 = static_cast< int >(val5);
28784     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
28785     if (!SWIG_IsOK(ecode6)) {
28786       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
28787     }
28788     arg6 = static_cast< int >(val6);
28789     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
28790     if (!SWIG_IsOK(ecode7)) {
28791       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "new_md" "', argument " "7"" of type '" "int""'");
28792     }
28793     arg7 = static_cast< int >(val7);
28794     {
28795       try {
28796         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
28797       } catch (const std::exception& e) {
28798         SWIG_exception(SWIG_RuntimeError, e.what());
28799       }
28800     }
28801     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
28802 
28803 
28804 
28805 
28806 
28807 
28808 
28809     XSRETURN(argvi);
28810   fail:
28811 
28812 
28813 
28814 
28815 
28816 
28817 
28818     SWIG_croak_null();
28819   }
28820 }
28821 
28822 
XS(_wrap_new_md__SWIG_18)28823 XS(_wrap_new_md__SWIG_18) {
28824   {
28825     double arg1 ;
28826     double arg2 ;
28827     int arg3 ;
28828     int arg4 ;
28829     int arg5 ;
28830     int arg6 ;
28831     double val1 ;
28832     int ecode1 = 0 ;
28833     double val2 ;
28834     int ecode2 = 0 ;
28835     int val3 ;
28836     int ecode3 = 0 ;
28837     int val4 ;
28838     int ecode4 = 0 ;
28839     int val5 ;
28840     int ecode5 = 0 ;
28841     int val6 ;
28842     int ecode6 = 0 ;
28843     int argvi = 0;
28844     vrna_md_t *result = 0 ;
28845     dXSARGS;
28846 
28847     if ((items < 6) || (items > 6)) {
28848       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp,noLP);");
28849     }
28850     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
28851     if (!SWIG_IsOK(ecode1)) {
28852       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
28853     }
28854     arg1 = static_cast< double >(val1);
28855     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
28856     if (!SWIG_IsOK(ecode2)) {
28857       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
28858     }
28859     arg2 = static_cast< double >(val2);
28860     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
28861     if (!SWIG_IsOK(ecode3)) {
28862       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
28863     }
28864     arg3 = static_cast< int >(val3);
28865     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
28866     if (!SWIG_IsOK(ecode4)) {
28867       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
28868     }
28869     arg4 = static_cast< int >(val4);
28870     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
28871     if (!SWIG_IsOK(ecode5)) {
28872       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
28873     }
28874     arg5 = static_cast< int >(val5);
28875     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
28876     if (!SWIG_IsOK(ecode6)) {
28877       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_md" "', argument " "6"" of type '" "int""'");
28878     }
28879     arg6 = static_cast< int >(val6);
28880     {
28881       try {
28882         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6);
28883       } catch (const std::exception& e) {
28884         SWIG_exception(SWIG_RuntimeError, e.what());
28885       }
28886     }
28887     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
28888 
28889 
28890 
28891 
28892 
28893 
28894     XSRETURN(argvi);
28895   fail:
28896 
28897 
28898 
28899 
28900 
28901 
28902     SWIG_croak_null();
28903   }
28904 }
28905 
28906 
XS(_wrap_new_md__SWIG_19)28907 XS(_wrap_new_md__SWIG_19) {
28908   {
28909     double arg1 ;
28910     double arg2 ;
28911     int arg3 ;
28912     int arg4 ;
28913     int arg5 ;
28914     double val1 ;
28915     int ecode1 = 0 ;
28916     double val2 ;
28917     int ecode2 = 0 ;
28918     int val3 ;
28919     int ecode3 = 0 ;
28920     int val4 ;
28921     int ecode4 = 0 ;
28922     int val5 ;
28923     int ecode5 = 0 ;
28924     int argvi = 0;
28925     vrna_md_t *result = 0 ;
28926     dXSARGS;
28927 
28928     if ((items < 5) || (items > 5)) {
28929       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles,special_hp);");
28930     }
28931     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
28932     if (!SWIG_IsOK(ecode1)) {
28933       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
28934     }
28935     arg1 = static_cast< double >(val1);
28936     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
28937     if (!SWIG_IsOK(ecode2)) {
28938       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
28939     }
28940     arg2 = static_cast< double >(val2);
28941     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
28942     if (!SWIG_IsOK(ecode3)) {
28943       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
28944     }
28945     arg3 = static_cast< int >(val3);
28946     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
28947     if (!SWIG_IsOK(ecode4)) {
28948       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
28949     }
28950     arg4 = static_cast< int >(val4);
28951     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
28952     if (!SWIG_IsOK(ecode5)) {
28953       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_md" "', argument " "5"" of type '" "int""'");
28954     }
28955     arg5 = static_cast< int >(val5);
28956     {
28957       try {
28958         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4,arg5);
28959       } catch (const std::exception& e) {
28960         SWIG_exception(SWIG_RuntimeError, e.what());
28961       }
28962     }
28963     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
28964 
28965 
28966 
28967 
28968 
28969     XSRETURN(argvi);
28970   fail:
28971 
28972 
28973 
28974 
28975 
28976     SWIG_croak_null();
28977   }
28978 }
28979 
28980 
XS(_wrap_new_md__SWIG_20)28981 XS(_wrap_new_md__SWIG_20) {
28982   {
28983     double arg1 ;
28984     double arg2 ;
28985     int arg3 ;
28986     int arg4 ;
28987     double val1 ;
28988     int ecode1 = 0 ;
28989     double val2 ;
28990     int ecode2 = 0 ;
28991     int val3 ;
28992     int ecode3 = 0 ;
28993     int val4 ;
28994     int ecode4 = 0 ;
28995     int argvi = 0;
28996     vrna_md_t *result = 0 ;
28997     dXSARGS;
28998 
28999     if ((items < 4) || (items > 4)) {
29000       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth,dangles);");
29001     }
29002     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
29003     if (!SWIG_IsOK(ecode1)) {
29004       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
29005     }
29006     arg1 = static_cast< double >(val1);
29007     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
29008     if (!SWIG_IsOK(ecode2)) {
29009       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
29010     }
29011     arg2 = static_cast< double >(val2);
29012     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
29013     if (!SWIG_IsOK(ecode3)) {
29014       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
29015     }
29016     arg3 = static_cast< int >(val3);
29017     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
29018     if (!SWIG_IsOK(ecode4)) {
29019       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_md" "', argument " "4"" of type '" "int""'");
29020     }
29021     arg4 = static_cast< int >(val4);
29022     {
29023       try {
29024         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3,arg4);
29025       } catch (const std::exception& e) {
29026         SWIG_exception(SWIG_RuntimeError, e.what());
29027       }
29028     }
29029     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
29030 
29031 
29032 
29033 
29034     XSRETURN(argvi);
29035   fail:
29036 
29037 
29038 
29039 
29040     SWIG_croak_null();
29041   }
29042 }
29043 
29044 
XS(_wrap_new_md__SWIG_21)29045 XS(_wrap_new_md__SWIG_21) {
29046   {
29047     double arg1 ;
29048     double arg2 ;
29049     int arg3 ;
29050     double val1 ;
29051     int ecode1 = 0 ;
29052     double val2 ;
29053     int ecode2 = 0 ;
29054     int val3 ;
29055     int ecode3 = 0 ;
29056     int argvi = 0;
29057     vrna_md_t *result = 0 ;
29058     dXSARGS;
29059 
29060     if ((items < 3) || (items > 3)) {
29061       SWIG_croak("Usage: new_md(temperature,betaScale,pf_smooth);");
29062     }
29063     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
29064     if (!SWIG_IsOK(ecode1)) {
29065       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
29066     }
29067     arg1 = static_cast< double >(val1);
29068     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
29069     if (!SWIG_IsOK(ecode2)) {
29070       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
29071     }
29072     arg2 = static_cast< double >(val2);
29073     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
29074     if (!SWIG_IsOK(ecode3)) {
29075       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_md" "', argument " "3"" of type '" "int""'");
29076     }
29077     arg3 = static_cast< int >(val3);
29078     {
29079       try {
29080         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2,arg3);
29081       } catch (const std::exception& e) {
29082         SWIG_exception(SWIG_RuntimeError, e.what());
29083       }
29084     }
29085     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
29086 
29087 
29088 
29089     XSRETURN(argvi);
29090   fail:
29091 
29092 
29093 
29094     SWIG_croak_null();
29095   }
29096 }
29097 
29098 
XS(_wrap_new_md__SWIG_22)29099 XS(_wrap_new_md__SWIG_22) {
29100   {
29101     double arg1 ;
29102     double arg2 ;
29103     double val1 ;
29104     int ecode1 = 0 ;
29105     double val2 ;
29106     int ecode2 = 0 ;
29107     int argvi = 0;
29108     vrna_md_t *result = 0 ;
29109     dXSARGS;
29110 
29111     if ((items < 2) || (items > 2)) {
29112       SWIG_croak("Usage: new_md(temperature,betaScale);");
29113     }
29114     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
29115     if (!SWIG_IsOK(ecode1)) {
29116       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
29117     }
29118     arg1 = static_cast< double >(val1);
29119     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
29120     if (!SWIG_IsOK(ecode2)) {
29121       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_md" "', argument " "2"" of type '" "double""'");
29122     }
29123     arg2 = static_cast< double >(val2);
29124     {
29125       try {
29126         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1,arg2);
29127       } catch (const std::exception& e) {
29128         SWIG_exception(SWIG_RuntimeError, e.what());
29129       }
29130     }
29131     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
29132 
29133 
29134     XSRETURN(argvi);
29135   fail:
29136 
29137 
29138     SWIG_croak_null();
29139   }
29140 }
29141 
29142 
XS(_wrap_new_md__SWIG_23)29143 XS(_wrap_new_md__SWIG_23) {
29144   {
29145     double arg1 ;
29146     double val1 ;
29147     int ecode1 = 0 ;
29148     int argvi = 0;
29149     vrna_md_t *result = 0 ;
29150     dXSARGS;
29151 
29152     if ((items < 1) || (items > 1)) {
29153       SWIG_croak("Usage: new_md(temperature);");
29154     }
29155     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
29156     if (!SWIG_IsOK(ecode1)) {
29157       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_md" "', argument " "1"" of type '" "double""'");
29158     }
29159     arg1 = static_cast< double >(val1);
29160     {
29161       try {
29162         result = (vrna_md_t *)new_vrna_md_t__SWIG_0(arg1);
29163       } catch (const std::exception& e) {
29164         SWIG_exception(SWIG_RuntimeError, e.what());
29165       }
29166     }
29167     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
29168 
29169     XSRETURN(argvi);
29170   fail:
29171 
29172     SWIG_croak_null();
29173   }
29174 }
29175 
29176 
XS(_wrap_new_md__SWIG_24)29177 XS(_wrap_new_md__SWIG_24) {
29178   {
29179     int argvi = 0;
29180     vrna_md_t *result = 0 ;
29181     dXSARGS;
29182 
29183     if ((items < 0) || (items > 0)) {
29184       SWIG_croak("Usage: new_md();");
29185     }
29186     {
29187       try {
29188         result = (vrna_md_t *)new_vrna_md_t__SWIG_0();
29189       } catch (const std::exception& e) {
29190         SWIG_exception(SWIG_RuntimeError, e.what());
29191       }
29192     }
29193     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_md_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
29194     XSRETURN(argvi);
29195   fail:
29196     SWIG_croak_null();
29197   }
29198 }
29199 
29200 
XS(_wrap_new_md)29201 XS(_wrap_new_md) {
29202   dXSARGS;
29203 
29204   {
29205     unsigned long _index = 0;
29206     SWIG_TypeRank _rank = 0;
29207     if (items == 0) {
29208       SWIG_TypeRank _ranki = 0;
29209       SWIG_TypeRank _rankm = 0;
29210       if (!_index || (_ranki < _rank)) {
29211         _rank = _ranki; _index = 1;
29212         if (_rank == _rankm) goto dispatch;
29213       }
29214     }
29215     if (items == 1) {
29216       SWIG_TypeRank _ranki = 0;
29217       SWIG_TypeRank _rankm = 0;
29218       SWIG_TypeRank _pi = 1;
29219       int _v = 0;
29220       {
29221         {
29222           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
29223           _v = SWIG_CheckState(res);
29224         }
29225       }
29226       if (!_v) goto check_2;
29227       _ranki += _v*_pi;
29228       _rankm += _pi;
29229       _pi *= SWIG_MAXCASTRANK;
29230       if (!_index || (_ranki < _rank)) {
29231         _rank = _ranki; _index = 2;
29232         if (_rank == _rankm) goto dispatch;
29233       }
29234     }
29235   check_2:
29236 
29237     if (items == 2) {
29238       SWIG_TypeRank _ranki = 0;
29239       SWIG_TypeRank _rankm = 0;
29240       SWIG_TypeRank _pi = 1;
29241       int _v = 0;
29242       {
29243         {
29244           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
29245           _v = SWIG_CheckState(res);
29246         }
29247       }
29248       if (!_v) goto check_3;
29249       _ranki += _v*_pi;
29250       _rankm += _pi;
29251       _pi *= SWIG_MAXCASTRANK;
29252       {
29253         {
29254           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
29255           _v = SWIG_CheckState(res);
29256         }
29257       }
29258       if (!_v) goto check_3;
29259       _ranki += _v*_pi;
29260       _rankm += _pi;
29261       _pi *= SWIG_MAXCASTRANK;
29262       if (!_index || (_ranki < _rank)) {
29263         _rank = _ranki; _index = 3;
29264         if (_rank == _rankm) goto dispatch;
29265       }
29266     }
29267   check_3:
29268 
29269     if (items == 3) {
29270       SWIG_TypeRank _ranki = 0;
29271       SWIG_TypeRank _rankm = 0;
29272       SWIG_TypeRank _pi = 1;
29273       int _v = 0;
29274       {
29275         {
29276           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
29277           _v = SWIG_CheckState(res);
29278         }
29279       }
29280       if (!_v) goto check_4;
29281       _ranki += _v*_pi;
29282       _rankm += _pi;
29283       _pi *= SWIG_MAXCASTRANK;
29284       {
29285         {
29286           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
29287           _v = SWIG_CheckState(res);
29288         }
29289       }
29290       if (!_v) goto check_4;
29291       _ranki += _v*_pi;
29292       _rankm += _pi;
29293       _pi *= SWIG_MAXCASTRANK;
29294       {
29295         {
29296           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
29297           _v = SWIG_CheckState(res);
29298         }
29299       }
29300       if (!_v) goto check_4;
29301       _ranki += _v*_pi;
29302       _rankm += _pi;
29303       _pi *= SWIG_MAXCASTRANK;
29304       if (!_index || (_ranki < _rank)) {
29305         _rank = _ranki; _index = 4;
29306         if (_rank == _rankm) goto dispatch;
29307       }
29308     }
29309   check_4:
29310 
29311     if (items == 4) {
29312       SWIG_TypeRank _ranki = 0;
29313       SWIG_TypeRank _rankm = 0;
29314       SWIG_TypeRank _pi = 1;
29315       int _v = 0;
29316       {
29317         {
29318           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
29319           _v = SWIG_CheckState(res);
29320         }
29321       }
29322       if (!_v) goto check_5;
29323       _ranki += _v*_pi;
29324       _rankm += _pi;
29325       _pi *= SWIG_MAXCASTRANK;
29326       {
29327         {
29328           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
29329           _v = SWIG_CheckState(res);
29330         }
29331       }
29332       if (!_v) goto check_5;
29333       _ranki += _v*_pi;
29334       _rankm += _pi;
29335       _pi *= SWIG_MAXCASTRANK;
29336       {
29337         {
29338           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
29339           _v = SWIG_CheckState(res);
29340         }
29341       }
29342       if (!_v) goto check_5;
29343       _ranki += _v*_pi;
29344       _rankm += _pi;
29345       _pi *= SWIG_MAXCASTRANK;
29346       {
29347         {
29348           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
29349           _v = SWIG_CheckState(res);
29350         }
29351       }
29352       if (!_v) goto check_5;
29353       _ranki += _v*_pi;
29354       _rankm += _pi;
29355       _pi *= SWIG_MAXCASTRANK;
29356       if (!_index || (_ranki < _rank)) {
29357         _rank = _ranki; _index = 5;
29358         if (_rank == _rankm) goto dispatch;
29359       }
29360     }
29361   check_5:
29362 
29363     if (items == 5) {
29364       SWIG_TypeRank _ranki = 0;
29365       SWIG_TypeRank _rankm = 0;
29366       SWIG_TypeRank _pi = 1;
29367       int _v = 0;
29368       {
29369         {
29370           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
29371           _v = SWIG_CheckState(res);
29372         }
29373       }
29374       if (!_v) goto check_6;
29375       _ranki += _v*_pi;
29376       _rankm += _pi;
29377       _pi *= SWIG_MAXCASTRANK;
29378       {
29379         {
29380           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
29381           _v = SWIG_CheckState(res);
29382         }
29383       }
29384       if (!_v) goto check_6;
29385       _ranki += _v*_pi;
29386       _rankm += _pi;
29387       _pi *= SWIG_MAXCASTRANK;
29388       {
29389         {
29390           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
29391           _v = SWIG_CheckState(res);
29392         }
29393       }
29394       if (!_v) goto check_6;
29395       _ranki += _v*_pi;
29396       _rankm += _pi;
29397       _pi *= SWIG_MAXCASTRANK;
29398       {
29399         {
29400           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
29401           _v = SWIG_CheckState(res);
29402         }
29403       }
29404       if (!_v) goto check_6;
29405       _ranki += _v*_pi;
29406       _rankm += _pi;
29407       _pi *= SWIG_MAXCASTRANK;
29408       {
29409         {
29410           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
29411           _v = SWIG_CheckState(res);
29412         }
29413       }
29414       if (!_v) goto check_6;
29415       _ranki += _v*_pi;
29416       _rankm += _pi;
29417       _pi *= SWIG_MAXCASTRANK;
29418       if (!_index || (_ranki < _rank)) {
29419         _rank = _ranki; _index = 6;
29420         if (_rank == _rankm) goto dispatch;
29421       }
29422     }
29423   check_6:
29424 
29425     if (items == 6) {
29426       SWIG_TypeRank _ranki = 0;
29427       SWIG_TypeRank _rankm = 0;
29428       SWIG_TypeRank _pi = 1;
29429       int _v = 0;
29430       {
29431         {
29432           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
29433           _v = SWIG_CheckState(res);
29434         }
29435       }
29436       if (!_v) goto check_7;
29437       _ranki += _v*_pi;
29438       _rankm += _pi;
29439       _pi *= SWIG_MAXCASTRANK;
29440       {
29441         {
29442           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
29443           _v = SWIG_CheckState(res);
29444         }
29445       }
29446       if (!_v) goto check_7;
29447       _ranki += _v*_pi;
29448       _rankm += _pi;
29449       _pi *= SWIG_MAXCASTRANK;
29450       {
29451         {
29452           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
29453           _v = SWIG_CheckState(res);
29454         }
29455       }
29456       if (!_v) goto check_7;
29457       _ranki += _v*_pi;
29458       _rankm += _pi;
29459       _pi *= SWIG_MAXCASTRANK;
29460       {
29461         {
29462           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
29463           _v = SWIG_CheckState(res);
29464         }
29465       }
29466       if (!_v) goto check_7;
29467       _ranki += _v*_pi;
29468       _rankm += _pi;
29469       _pi *= SWIG_MAXCASTRANK;
29470       {
29471         {
29472           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
29473           _v = SWIG_CheckState(res);
29474         }
29475       }
29476       if (!_v) goto check_7;
29477       _ranki += _v*_pi;
29478       _rankm += _pi;
29479       _pi *= SWIG_MAXCASTRANK;
29480       {
29481         {
29482           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
29483           _v = SWIG_CheckState(res);
29484         }
29485       }
29486       if (!_v) goto check_7;
29487       _ranki += _v*_pi;
29488       _rankm += _pi;
29489       _pi *= SWIG_MAXCASTRANK;
29490       if (!_index || (_ranki < _rank)) {
29491         _rank = _ranki; _index = 7;
29492         if (_rank == _rankm) goto dispatch;
29493       }
29494     }
29495   check_7:
29496 
29497     if (items == 7) {
29498       SWIG_TypeRank _ranki = 0;
29499       SWIG_TypeRank _rankm = 0;
29500       SWIG_TypeRank _pi = 1;
29501       int _v = 0;
29502       {
29503         {
29504           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
29505           _v = SWIG_CheckState(res);
29506         }
29507       }
29508       if (!_v) goto check_8;
29509       _ranki += _v*_pi;
29510       _rankm += _pi;
29511       _pi *= SWIG_MAXCASTRANK;
29512       {
29513         {
29514           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
29515           _v = SWIG_CheckState(res);
29516         }
29517       }
29518       if (!_v) goto check_8;
29519       _ranki += _v*_pi;
29520       _rankm += _pi;
29521       _pi *= SWIG_MAXCASTRANK;
29522       {
29523         {
29524           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
29525           _v = SWIG_CheckState(res);
29526         }
29527       }
29528       if (!_v) goto check_8;
29529       _ranki += _v*_pi;
29530       _rankm += _pi;
29531       _pi *= SWIG_MAXCASTRANK;
29532       {
29533         {
29534           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
29535           _v = SWIG_CheckState(res);
29536         }
29537       }
29538       if (!_v) goto check_8;
29539       _ranki += _v*_pi;
29540       _rankm += _pi;
29541       _pi *= SWIG_MAXCASTRANK;
29542       {
29543         {
29544           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
29545           _v = SWIG_CheckState(res);
29546         }
29547       }
29548       if (!_v) goto check_8;
29549       _ranki += _v*_pi;
29550       _rankm += _pi;
29551       _pi *= SWIG_MAXCASTRANK;
29552       {
29553         {
29554           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
29555           _v = SWIG_CheckState(res);
29556         }
29557       }
29558       if (!_v) goto check_8;
29559       _ranki += _v*_pi;
29560       _rankm += _pi;
29561       _pi *= SWIG_MAXCASTRANK;
29562       {
29563         {
29564           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
29565           _v = SWIG_CheckState(res);
29566         }
29567       }
29568       if (!_v) goto check_8;
29569       _ranki += _v*_pi;
29570       _rankm += _pi;
29571       _pi *= SWIG_MAXCASTRANK;
29572       if (!_index || (_ranki < _rank)) {
29573         _rank = _ranki; _index = 8;
29574         if (_rank == _rankm) goto dispatch;
29575       }
29576     }
29577   check_8:
29578 
29579     if (items == 8) {
29580       SWIG_TypeRank _ranki = 0;
29581       SWIG_TypeRank _rankm = 0;
29582       SWIG_TypeRank _pi = 1;
29583       int _v = 0;
29584       {
29585         {
29586           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
29587           _v = SWIG_CheckState(res);
29588         }
29589       }
29590       if (!_v) goto check_9;
29591       _ranki += _v*_pi;
29592       _rankm += _pi;
29593       _pi *= SWIG_MAXCASTRANK;
29594       {
29595         {
29596           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
29597           _v = SWIG_CheckState(res);
29598         }
29599       }
29600       if (!_v) goto check_9;
29601       _ranki += _v*_pi;
29602       _rankm += _pi;
29603       _pi *= SWIG_MAXCASTRANK;
29604       {
29605         {
29606           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
29607           _v = SWIG_CheckState(res);
29608         }
29609       }
29610       if (!_v) goto check_9;
29611       _ranki += _v*_pi;
29612       _rankm += _pi;
29613       _pi *= SWIG_MAXCASTRANK;
29614       {
29615         {
29616           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
29617           _v = SWIG_CheckState(res);
29618         }
29619       }
29620       if (!_v) goto check_9;
29621       _ranki += _v*_pi;
29622       _rankm += _pi;
29623       _pi *= SWIG_MAXCASTRANK;
29624       {
29625         {
29626           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
29627           _v = SWIG_CheckState(res);
29628         }
29629       }
29630       if (!_v) goto check_9;
29631       _ranki += _v*_pi;
29632       _rankm += _pi;
29633       _pi *= SWIG_MAXCASTRANK;
29634       {
29635         {
29636           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
29637           _v = SWIG_CheckState(res);
29638         }
29639       }
29640       if (!_v) goto check_9;
29641       _ranki += _v*_pi;
29642       _rankm += _pi;
29643       _pi *= SWIG_MAXCASTRANK;
29644       {
29645         {
29646           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
29647           _v = SWIG_CheckState(res);
29648         }
29649       }
29650       if (!_v) goto check_9;
29651       _ranki += _v*_pi;
29652       _rankm += _pi;
29653       _pi *= SWIG_MAXCASTRANK;
29654       {
29655         {
29656           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
29657           _v = SWIG_CheckState(res);
29658         }
29659       }
29660       if (!_v) goto check_9;
29661       _ranki += _v*_pi;
29662       _rankm += _pi;
29663       _pi *= SWIG_MAXCASTRANK;
29664       if (!_index || (_ranki < _rank)) {
29665         _rank = _ranki; _index = 9;
29666         if (_rank == _rankm) goto dispatch;
29667       }
29668     }
29669   check_9:
29670 
29671     if (items == 9) {
29672       SWIG_TypeRank _ranki = 0;
29673       SWIG_TypeRank _rankm = 0;
29674       SWIG_TypeRank _pi = 1;
29675       int _v = 0;
29676       {
29677         {
29678           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
29679           _v = SWIG_CheckState(res);
29680         }
29681       }
29682       if (!_v) goto check_10;
29683       _ranki += _v*_pi;
29684       _rankm += _pi;
29685       _pi *= SWIG_MAXCASTRANK;
29686       {
29687         {
29688           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
29689           _v = SWIG_CheckState(res);
29690         }
29691       }
29692       if (!_v) goto check_10;
29693       _ranki += _v*_pi;
29694       _rankm += _pi;
29695       _pi *= SWIG_MAXCASTRANK;
29696       {
29697         {
29698           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
29699           _v = SWIG_CheckState(res);
29700         }
29701       }
29702       if (!_v) goto check_10;
29703       _ranki += _v*_pi;
29704       _rankm += _pi;
29705       _pi *= SWIG_MAXCASTRANK;
29706       {
29707         {
29708           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
29709           _v = SWIG_CheckState(res);
29710         }
29711       }
29712       if (!_v) goto check_10;
29713       _ranki += _v*_pi;
29714       _rankm += _pi;
29715       _pi *= SWIG_MAXCASTRANK;
29716       {
29717         {
29718           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
29719           _v = SWIG_CheckState(res);
29720         }
29721       }
29722       if (!_v) goto check_10;
29723       _ranki += _v*_pi;
29724       _rankm += _pi;
29725       _pi *= SWIG_MAXCASTRANK;
29726       {
29727         {
29728           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
29729           _v = SWIG_CheckState(res);
29730         }
29731       }
29732       if (!_v) goto check_10;
29733       _ranki += _v*_pi;
29734       _rankm += _pi;
29735       _pi *= SWIG_MAXCASTRANK;
29736       {
29737         {
29738           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
29739           _v = SWIG_CheckState(res);
29740         }
29741       }
29742       if (!_v) goto check_10;
29743       _ranki += _v*_pi;
29744       _rankm += _pi;
29745       _pi *= SWIG_MAXCASTRANK;
29746       {
29747         {
29748           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
29749           _v = SWIG_CheckState(res);
29750         }
29751       }
29752       if (!_v) goto check_10;
29753       _ranki += _v*_pi;
29754       _rankm += _pi;
29755       _pi *= SWIG_MAXCASTRANK;
29756       {
29757         {
29758           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
29759           _v = SWIG_CheckState(res);
29760         }
29761       }
29762       if (!_v) goto check_10;
29763       _ranki += _v*_pi;
29764       _rankm += _pi;
29765       _pi *= SWIG_MAXCASTRANK;
29766       if (!_index || (_ranki < _rank)) {
29767         _rank = _ranki; _index = 10;
29768         if (_rank == _rankm) goto dispatch;
29769       }
29770     }
29771   check_10:
29772 
29773     if (items == 10) {
29774       SWIG_TypeRank _ranki = 0;
29775       SWIG_TypeRank _rankm = 0;
29776       SWIG_TypeRank _pi = 1;
29777       int _v = 0;
29778       {
29779         {
29780           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
29781           _v = SWIG_CheckState(res);
29782         }
29783       }
29784       if (!_v) goto check_11;
29785       _ranki += _v*_pi;
29786       _rankm += _pi;
29787       _pi *= SWIG_MAXCASTRANK;
29788       {
29789         {
29790           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
29791           _v = SWIG_CheckState(res);
29792         }
29793       }
29794       if (!_v) goto check_11;
29795       _ranki += _v*_pi;
29796       _rankm += _pi;
29797       _pi *= SWIG_MAXCASTRANK;
29798       {
29799         {
29800           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
29801           _v = SWIG_CheckState(res);
29802         }
29803       }
29804       if (!_v) goto check_11;
29805       _ranki += _v*_pi;
29806       _rankm += _pi;
29807       _pi *= SWIG_MAXCASTRANK;
29808       {
29809         {
29810           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
29811           _v = SWIG_CheckState(res);
29812         }
29813       }
29814       if (!_v) goto check_11;
29815       _ranki += _v*_pi;
29816       _rankm += _pi;
29817       _pi *= SWIG_MAXCASTRANK;
29818       {
29819         {
29820           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
29821           _v = SWIG_CheckState(res);
29822         }
29823       }
29824       if (!_v) goto check_11;
29825       _ranki += _v*_pi;
29826       _rankm += _pi;
29827       _pi *= SWIG_MAXCASTRANK;
29828       {
29829         {
29830           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
29831           _v = SWIG_CheckState(res);
29832         }
29833       }
29834       if (!_v) goto check_11;
29835       _ranki += _v*_pi;
29836       _rankm += _pi;
29837       _pi *= SWIG_MAXCASTRANK;
29838       {
29839         {
29840           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
29841           _v = SWIG_CheckState(res);
29842         }
29843       }
29844       if (!_v) goto check_11;
29845       _ranki += _v*_pi;
29846       _rankm += _pi;
29847       _pi *= SWIG_MAXCASTRANK;
29848       {
29849         {
29850           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
29851           _v = SWIG_CheckState(res);
29852         }
29853       }
29854       if (!_v) goto check_11;
29855       _ranki += _v*_pi;
29856       _rankm += _pi;
29857       _pi *= SWIG_MAXCASTRANK;
29858       {
29859         {
29860           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
29861           _v = SWIG_CheckState(res);
29862         }
29863       }
29864       if (!_v) goto check_11;
29865       _ranki += _v*_pi;
29866       _rankm += _pi;
29867       _pi *= SWIG_MAXCASTRANK;
29868       {
29869         {
29870           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
29871           _v = SWIG_CheckState(res);
29872         }
29873       }
29874       if (!_v) goto check_11;
29875       _ranki += _v*_pi;
29876       _rankm += _pi;
29877       _pi *= SWIG_MAXCASTRANK;
29878       if (!_index || (_ranki < _rank)) {
29879         _rank = _ranki; _index = 11;
29880         if (_rank == _rankm) goto dispatch;
29881       }
29882     }
29883   check_11:
29884 
29885     if (items == 11) {
29886       SWIG_TypeRank _ranki = 0;
29887       SWIG_TypeRank _rankm = 0;
29888       SWIG_TypeRank _pi = 1;
29889       int _v = 0;
29890       {
29891         {
29892           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
29893           _v = SWIG_CheckState(res);
29894         }
29895       }
29896       if (!_v) goto check_12;
29897       _ranki += _v*_pi;
29898       _rankm += _pi;
29899       _pi *= SWIG_MAXCASTRANK;
29900       {
29901         {
29902           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
29903           _v = SWIG_CheckState(res);
29904         }
29905       }
29906       if (!_v) goto check_12;
29907       _ranki += _v*_pi;
29908       _rankm += _pi;
29909       _pi *= SWIG_MAXCASTRANK;
29910       {
29911         {
29912           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
29913           _v = SWIG_CheckState(res);
29914         }
29915       }
29916       if (!_v) goto check_12;
29917       _ranki += _v*_pi;
29918       _rankm += _pi;
29919       _pi *= SWIG_MAXCASTRANK;
29920       {
29921         {
29922           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
29923           _v = SWIG_CheckState(res);
29924         }
29925       }
29926       if (!_v) goto check_12;
29927       _ranki += _v*_pi;
29928       _rankm += _pi;
29929       _pi *= SWIG_MAXCASTRANK;
29930       {
29931         {
29932           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
29933           _v = SWIG_CheckState(res);
29934         }
29935       }
29936       if (!_v) goto check_12;
29937       _ranki += _v*_pi;
29938       _rankm += _pi;
29939       _pi *= SWIG_MAXCASTRANK;
29940       {
29941         {
29942           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
29943           _v = SWIG_CheckState(res);
29944         }
29945       }
29946       if (!_v) goto check_12;
29947       _ranki += _v*_pi;
29948       _rankm += _pi;
29949       _pi *= SWIG_MAXCASTRANK;
29950       {
29951         {
29952           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
29953           _v = SWIG_CheckState(res);
29954         }
29955       }
29956       if (!_v) goto check_12;
29957       _ranki += _v*_pi;
29958       _rankm += _pi;
29959       _pi *= SWIG_MAXCASTRANK;
29960       {
29961         {
29962           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
29963           _v = SWIG_CheckState(res);
29964         }
29965       }
29966       if (!_v) goto check_12;
29967       _ranki += _v*_pi;
29968       _rankm += _pi;
29969       _pi *= SWIG_MAXCASTRANK;
29970       {
29971         {
29972           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
29973           _v = SWIG_CheckState(res);
29974         }
29975       }
29976       if (!_v) goto check_12;
29977       _ranki += _v*_pi;
29978       _rankm += _pi;
29979       _pi *= SWIG_MAXCASTRANK;
29980       {
29981         {
29982           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
29983           _v = SWIG_CheckState(res);
29984         }
29985       }
29986       if (!_v) goto check_12;
29987       _ranki += _v*_pi;
29988       _rankm += _pi;
29989       _pi *= SWIG_MAXCASTRANK;
29990       {
29991         {
29992           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), NULL);
29993           _v = SWIG_CheckState(res);
29994         }
29995       }
29996       if (!_v) goto check_12;
29997       _ranki += _v*_pi;
29998       _rankm += _pi;
29999       _pi *= SWIG_MAXCASTRANK;
30000       if (!_index || (_ranki < _rank)) {
30001         _rank = _ranki; _index = 12;
30002         if (_rank == _rankm) goto dispatch;
30003       }
30004     }
30005   check_12:
30006 
30007     if (items == 12) {
30008       SWIG_TypeRank _ranki = 0;
30009       SWIG_TypeRank _rankm = 0;
30010       SWIG_TypeRank _pi = 1;
30011       int _v = 0;
30012       {
30013         {
30014           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
30015           _v = SWIG_CheckState(res);
30016         }
30017       }
30018       if (!_v) goto check_13;
30019       _ranki += _v*_pi;
30020       _rankm += _pi;
30021       _pi *= SWIG_MAXCASTRANK;
30022       {
30023         {
30024           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
30025           _v = SWIG_CheckState(res);
30026         }
30027       }
30028       if (!_v) goto check_13;
30029       _ranki += _v*_pi;
30030       _rankm += _pi;
30031       _pi *= SWIG_MAXCASTRANK;
30032       {
30033         {
30034           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
30035           _v = SWIG_CheckState(res);
30036         }
30037       }
30038       if (!_v) goto check_13;
30039       _ranki += _v*_pi;
30040       _rankm += _pi;
30041       _pi *= SWIG_MAXCASTRANK;
30042       {
30043         {
30044           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
30045           _v = SWIG_CheckState(res);
30046         }
30047       }
30048       if (!_v) goto check_13;
30049       _ranki += _v*_pi;
30050       _rankm += _pi;
30051       _pi *= SWIG_MAXCASTRANK;
30052       {
30053         {
30054           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
30055           _v = SWIG_CheckState(res);
30056         }
30057       }
30058       if (!_v) goto check_13;
30059       _ranki += _v*_pi;
30060       _rankm += _pi;
30061       _pi *= SWIG_MAXCASTRANK;
30062       {
30063         {
30064           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
30065           _v = SWIG_CheckState(res);
30066         }
30067       }
30068       if (!_v) goto check_13;
30069       _ranki += _v*_pi;
30070       _rankm += _pi;
30071       _pi *= SWIG_MAXCASTRANK;
30072       {
30073         {
30074           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
30075           _v = SWIG_CheckState(res);
30076         }
30077       }
30078       if (!_v) goto check_13;
30079       _ranki += _v*_pi;
30080       _rankm += _pi;
30081       _pi *= SWIG_MAXCASTRANK;
30082       {
30083         {
30084           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
30085           _v = SWIG_CheckState(res);
30086         }
30087       }
30088       if (!_v) goto check_13;
30089       _ranki += _v*_pi;
30090       _rankm += _pi;
30091       _pi *= SWIG_MAXCASTRANK;
30092       {
30093         {
30094           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
30095           _v = SWIG_CheckState(res);
30096         }
30097       }
30098       if (!_v) goto check_13;
30099       _ranki += _v*_pi;
30100       _rankm += _pi;
30101       _pi *= SWIG_MAXCASTRANK;
30102       {
30103         {
30104           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
30105           _v = SWIG_CheckState(res);
30106         }
30107       }
30108       if (!_v) goto check_13;
30109       _ranki += _v*_pi;
30110       _rankm += _pi;
30111       _pi *= SWIG_MAXCASTRANK;
30112       {
30113         {
30114           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), NULL);
30115           _v = SWIG_CheckState(res);
30116         }
30117       }
30118       if (!_v) goto check_13;
30119       _ranki += _v*_pi;
30120       _rankm += _pi;
30121       _pi *= SWIG_MAXCASTRANK;
30122       {
30123         {
30124           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), NULL);
30125           _v = SWIG_CheckState(res);
30126         }
30127       }
30128       if (!_v) goto check_13;
30129       _ranki += _v*_pi;
30130       _rankm += _pi;
30131       _pi *= SWIG_MAXCASTRANK;
30132       if (!_index || (_ranki < _rank)) {
30133         _rank = _ranki; _index = 13;
30134         if (_rank == _rankm) goto dispatch;
30135       }
30136     }
30137   check_13:
30138 
30139     if (items == 13) {
30140       SWIG_TypeRank _ranki = 0;
30141       SWIG_TypeRank _rankm = 0;
30142       SWIG_TypeRank _pi = 1;
30143       int _v = 0;
30144       {
30145         {
30146           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
30147           _v = SWIG_CheckState(res);
30148         }
30149       }
30150       if (!_v) goto check_14;
30151       _ranki += _v*_pi;
30152       _rankm += _pi;
30153       _pi *= SWIG_MAXCASTRANK;
30154       {
30155         {
30156           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
30157           _v = SWIG_CheckState(res);
30158         }
30159       }
30160       if (!_v) goto check_14;
30161       _ranki += _v*_pi;
30162       _rankm += _pi;
30163       _pi *= SWIG_MAXCASTRANK;
30164       {
30165         {
30166           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
30167           _v = SWIG_CheckState(res);
30168         }
30169       }
30170       if (!_v) goto check_14;
30171       _ranki += _v*_pi;
30172       _rankm += _pi;
30173       _pi *= SWIG_MAXCASTRANK;
30174       {
30175         {
30176           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
30177           _v = SWIG_CheckState(res);
30178         }
30179       }
30180       if (!_v) goto check_14;
30181       _ranki += _v*_pi;
30182       _rankm += _pi;
30183       _pi *= SWIG_MAXCASTRANK;
30184       {
30185         {
30186           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
30187           _v = SWIG_CheckState(res);
30188         }
30189       }
30190       if (!_v) goto check_14;
30191       _ranki += _v*_pi;
30192       _rankm += _pi;
30193       _pi *= SWIG_MAXCASTRANK;
30194       {
30195         {
30196           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
30197           _v = SWIG_CheckState(res);
30198         }
30199       }
30200       if (!_v) goto check_14;
30201       _ranki += _v*_pi;
30202       _rankm += _pi;
30203       _pi *= SWIG_MAXCASTRANK;
30204       {
30205         {
30206           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
30207           _v = SWIG_CheckState(res);
30208         }
30209       }
30210       if (!_v) goto check_14;
30211       _ranki += _v*_pi;
30212       _rankm += _pi;
30213       _pi *= SWIG_MAXCASTRANK;
30214       {
30215         {
30216           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
30217           _v = SWIG_CheckState(res);
30218         }
30219       }
30220       if (!_v) goto check_14;
30221       _ranki += _v*_pi;
30222       _rankm += _pi;
30223       _pi *= SWIG_MAXCASTRANK;
30224       {
30225         {
30226           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
30227           _v = SWIG_CheckState(res);
30228         }
30229       }
30230       if (!_v) goto check_14;
30231       _ranki += _v*_pi;
30232       _rankm += _pi;
30233       _pi *= SWIG_MAXCASTRANK;
30234       {
30235         {
30236           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
30237           _v = SWIG_CheckState(res);
30238         }
30239       }
30240       if (!_v) goto check_14;
30241       _ranki += _v*_pi;
30242       _rankm += _pi;
30243       _pi *= SWIG_MAXCASTRANK;
30244       {
30245         {
30246           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), NULL);
30247           _v = SWIG_CheckState(res);
30248         }
30249       }
30250       if (!_v) goto check_14;
30251       _ranki += _v*_pi;
30252       _rankm += _pi;
30253       _pi *= SWIG_MAXCASTRANK;
30254       {
30255         {
30256           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), NULL);
30257           _v = SWIG_CheckState(res);
30258         }
30259       }
30260       if (!_v) goto check_14;
30261       _ranki += _v*_pi;
30262       _rankm += _pi;
30263       _pi *= SWIG_MAXCASTRANK;
30264       {
30265         {
30266           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), NULL);
30267           _v = SWIG_CheckState(res);
30268         }
30269       }
30270       if (!_v) goto check_14;
30271       _ranki += _v*_pi;
30272       _rankm += _pi;
30273       _pi *= SWIG_MAXCASTRANK;
30274       if (!_index || (_ranki < _rank)) {
30275         _rank = _ranki; _index = 14;
30276         if (_rank == _rankm) goto dispatch;
30277       }
30278     }
30279   check_14:
30280 
30281     if (items == 14) {
30282       SWIG_TypeRank _ranki = 0;
30283       SWIG_TypeRank _rankm = 0;
30284       SWIG_TypeRank _pi = 1;
30285       int _v = 0;
30286       {
30287         {
30288           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
30289           _v = SWIG_CheckState(res);
30290         }
30291       }
30292       if (!_v) goto check_15;
30293       _ranki += _v*_pi;
30294       _rankm += _pi;
30295       _pi *= SWIG_MAXCASTRANK;
30296       {
30297         {
30298           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
30299           _v = SWIG_CheckState(res);
30300         }
30301       }
30302       if (!_v) goto check_15;
30303       _ranki += _v*_pi;
30304       _rankm += _pi;
30305       _pi *= SWIG_MAXCASTRANK;
30306       {
30307         {
30308           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
30309           _v = SWIG_CheckState(res);
30310         }
30311       }
30312       if (!_v) goto check_15;
30313       _ranki += _v*_pi;
30314       _rankm += _pi;
30315       _pi *= SWIG_MAXCASTRANK;
30316       {
30317         {
30318           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
30319           _v = SWIG_CheckState(res);
30320         }
30321       }
30322       if (!_v) goto check_15;
30323       _ranki += _v*_pi;
30324       _rankm += _pi;
30325       _pi *= SWIG_MAXCASTRANK;
30326       {
30327         {
30328           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
30329           _v = SWIG_CheckState(res);
30330         }
30331       }
30332       if (!_v) goto check_15;
30333       _ranki += _v*_pi;
30334       _rankm += _pi;
30335       _pi *= SWIG_MAXCASTRANK;
30336       {
30337         {
30338           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
30339           _v = SWIG_CheckState(res);
30340         }
30341       }
30342       if (!_v) goto check_15;
30343       _ranki += _v*_pi;
30344       _rankm += _pi;
30345       _pi *= SWIG_MAXCASTRANK;
30346       {
30347         {
30348           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
30349           _v = SWIG_CheckState(res);
30350         }
30351       }
30352       if (!_v) goto check_15;
30353       _ranki += _v*_pi;
30354       _rankm += _pi;
30355       _pi *= SWIG_MAXCASTRANK;
30356       {
30357         {
30358           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
30359           _v = SWIG_CheckState(res);
30360         }
30361       }
30362       if (!_v) goto check_15;
30363       _ranki += _v*_pi;
30364       _rankm += _pi;
30365       _pi *= SWIG_MAXCASTRANK;
30366       {
30367         {
30368           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
30369           _v = SWIG_CheckState(res);
30370         }
30371       }
30372       if (!_v) goto check_15;
30373       _ranki += _v*_pi;
30374       _rankm += _pi;
30375       _pi *= SWIG_MAXCASTRANK;
30376       {
30377         {
30378           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
30379           _v = SWIG_CheckState(res);
30380         }
30381       }
30382       if (!_v) goto check_15;
30383       _ranki += _v*_pi;
30384       _rankm += _pi;
30385       _pi *= SWIG_MAXCASTRANK;
30386       {
30387         {
30388           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), NULL);
30389           _v = SWIG_CheckState(res);
30390         }
30391       }
30392       if (!_v) goto check_15;
30393       _ranki += _v*_pi;
30394       _rankm += _pi;
30395       _pi *= SWIG_MAXCASTRANK;
30396       {
30397         {
30398           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), NULL);
30399           _v = SWIG_CheckState(res);
30400         }
30401       }
30402       if (!_v) goto check_15;
30403       _ranki += _v*_pi;
30404       _rankm += _pi;
30405       _pi *= SWIG_MAXCASTRANK;
30406       {
30407         {
30408           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), NULL);
30409           _v = SWIG_CheckState(res);
30410         }
30411       }
30412       if (!_v) goto check_15;
30413       _ranki += _v*_pi;
30414       _rankm += _pi;
30415       _pi *= SWIG_MAXCASTRANK;
30416       {
30417         {
30418           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), NULL);
30419           _v = SWIG_CheckState(res);
30420         }
30421       }
30422       if (!_v) goto check_15;
30423       _ranki += _v*_pi;
30424       _rankm += _pi;
30425       _pi *= SWIG_MAXCASTRANK;
30426       if (!_index || (_ranki < _rank)) {
30427         _rank = _ranki; _index = 15;
30428         if (_rank == _rankm) goto dispatch;
30429       }
30430     }
30431   check_15:
30432 
30433     if (items == 15) {
30434       SWIG_TypeRank _ranki = 0;
30435       SWIG_TypeRank _rankm = 0;
30436       SWIG_TypeRank _pi = 1;
30437       int _v = 0;
30438       {
30439         {
30440           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
30441           _v = SWIG_CheckState(res);
30442         }
30443       }
30444       if (!_v) goto check_16;
30445       _ranki += _v*_pi;
30446       _rankm += _pi;
30447       _pi *= SWIG_MAXCASTRANK;
30448       {
30449         {
30450           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
30451           _v = SWIG_CheckState(res);
30452         }
30453       }
30454       if (!_v) goto check_16;
30455       _ranki += _v*_pi;
30456       _rankm += _pi;
30457       _pi *= SWIG_MAXCASTRANK;
30458       {
30459         {
30460           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
30461           _v = SWIG_CheckState(res);
30462         }
30463       }
30464       if (!_v) goto check_16;
30465       _ranki += _v*_pi;
30466       _rankm += _pi;
30467       _pi *= SWIG_MAXCASTRANK;
30468       {
30469         {
30470           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
30471           _v = SWIG_CheckState(res);
30472         }
30473       }
30474       if (!_v) goto check_16;
30475       _ranki += _v*_pi;
30476       _rankm += _pi;
30477       _pi *= SWIG_MAXCASTRANK;
30478       {
30479         {
30480           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
30481           _v = SWIG_CheckState(res);
30482         }
30483       }
30484       if (!_v) goto check_16;
30485       _ranki += _v*_pi;
30486       _rankm += _pi;
30487       _pi *= SWIG_MAXCASTRANK;
30488       {
30489         {
30490           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
30491           _v = SWIG_CheckState(res);
30492         }
30493       }
30494       if (!_v) goto check_16;
30495       _ranki += _v*_pi;
30496       _rankm += _pi;
30497       _pi *= SWIG_MAXCASTRANK;
30498       {
30499         {
30500           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
30501           _v = SWIG_CheckState(res);
30502         }
30503       }
30504       if (!_v) goto check_16;
30505       _ranki += _v*_pi;
30506       _rankm += _pi;
30507       _pi *= SWIG_MAXCASTRANK;
30508       {
30509         {
30510           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
30511           _v = SWIG_CheckState(res);
30512         }
30513       }
30514       if (!_v) goto check_16;
30515       _ranki += _v*_pi;
30516       _rankm += _pi;
30517       _pi *= SWIG_MAXCASTRANK;
30518       {
30519         {
30520           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
30521           _v = SWIG_CheckState(res);
30522         }
30523       }
30524       if (!_v) goto check_16;
30525       _ranki += _v*_pi;
30526       _rankm += _pi;
30527       _pi *= SWIG_MAXCASTRANK;
30528       {
30529         {
30530           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
30531           _v = SWIG_CheckState(res);
30532         }
30533       }
30534       if (!_v) goto check_16;
30535       _ranki += _v*_pi;
30536       _rankm += _pi;
30537       _pi *= SWIG_MAXCASTRANK;
30538       {
30539         {
30540           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), NULL);
30541           _v = SWIG_CheckState(res);
30542         }
30543       }
30544       if (!_v) goto check_16;
30545       _ranki += _v*_pi;
30546       _rankm += _pi;
30547       _pi *= SWIG_MAXCASTRANK;
30548       {
30549         {
30550           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), NULL);
30551           _v = SWIG_CheckState(res);
30552         }
30553       }
30554       if (!_v) goto check_16;
30555       _ranki += _v*_pi;
30556       _rankm += _pi;
30557       _pi *= SWIG_MAXCASTRANK;
30558       {
30559         {
30560           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), NULL);
30561           _v = SWIG_CheckState(res);
30562         }
30563       }
30564       if (!_v) goto check_16;
30565       _ranki += _v*_pi;
30566       _rankm += _pi;
30567       _pi *= SWIG_MAXCASTRANK;
30568       {
30569         {
30570           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), NULL);
30571           _v = SWIG_CheckState(res);
30572         }
30573       }
30574       if (!_v) goto check_16;
30575       _ranki += _v*_pi;
30576       _rankm += _pi;
30577       _pi *= SWIG_MAXCASTRANK;
30578       {
30579         {
30580           int res = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), NULL);
30581           _v = SWIG_CheckState(res);
30582         }
30583       }
30584       if (!_v) goto check_16;
30585       _ranki += _v*_pi;
30586       _rankm += _pi;
30587       _pi *= SWIG_MAXCASTRANK;
30588       if (!_index || (_ranki < _rank)) {
30589         _rank = _ranki; _index = 16;
30590         if (_rank == _rankm) goto dispatch;
30591       }
30592     }
30593   check_16:
30594 
30595     if (items == 16) {
30596       SWIG_TypeRank _ranki = 0;
30597       SWIG_TypeRank _rankm = 0;
30598       SWIG_TypeRank _pi = 1;
30599       int _v = 0;
30600       {
30601         {
30602           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
30603           _v = SWIG_CheckState(res);
30604         }
30605       }
30606       if (!_v) goto check_17;
30607       _ranki += _v*_pi;
30608       _rankm += _pi;
30609       _pi *= SWIG_MAXCASTRANK;
30610       {
30611         {
30612           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
30613           _v = SWIG_CheckState(res);
30614         }
30615       }
30616       if (!_v) goto check_17;
30617       _ranki += _v*_pi;
30618       _rankm += _pi;
30619       _pi *= SWIG_MAXCASTRANK;
30620       {
30621         {
30622           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
30623           _v = SWIG_CheckState(res);
30624         }
30625       }
30626       if (!_v) goto check_17;
30627       _ranki += _v*_pi;
30628       _rankm += _pi;
30629       _pi *= SWIG_MAXCASTRANK;
30630       {
30631         {
30632           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
30633           _v = SWIG_CheckState(res);
30634         }
30635       }
30636       if (!_v) goto check_17;
30637       _ranki += _v*_pi;
30638       _rankm += _pi;
30639       _pi *= SWIG_MAXCASTRANK;
30640       {
30641         {
30642           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
30643           _v = SWIG_CheckState(res);
30644         }
30645       }
30646       if (!_v) goto check_17;
30647       _ranki += _v*_pi;
30648       _rankm += _pi;
30649       _pi *= SWIG_MAXCASTRANK;
30650       {
30651         {
30652           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
30653           _v = SWIG_CheckState(res);
30654         }
30655       }
30656       if (!_v) goto check_17;
30657       _ranki += _v*_pi;
30658       _rankm += _pi;
30659       _pi *= SWIG_MAXCASTRANK;
30660       {
30661         {
30662           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
30663           _v = SWIG_CheckState(res);
30664         }
30665       }
30666       if (!_v) goto check_17;
30667       _ranki += _v*_pi;
30668       _rankm += _pi;
30669       _pi *= SWIG_MAXCASTRANK;
30670       {
30671         {
30672           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
30673           _v = SWIG_CheckState(res);
30674         }
30675       }
30676       if (!_v) goto check_17;
30677       _ranki += _v*_pi;
30678       _rankm += _pi;
30679       _pi *= SWIG_MAXCASTRANK;
30680       {
30681         {
30682           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
30683           _v = SWIG_CheckState(res);
30684         }
30685       }
30686       if (!_v) goto check_17;
30687       _ranki += _v*_pi;
30688       _rankm += _pi;
30689       _pi *= SWIG_MAXCASTRANK;
30690       {
30691         {
30692           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
30693           _v = SWIG_CheckState(res);
30694         }
30695       }
30696       if (!_v) goto check_17;
30697       _ranki += _v*_pi;
30698       _rankm += _pi;
30699       _pi *= SWIG_MAXCASTRANK;
30700       {
30701         {
30702           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), NULL);
30703           _v = SWIG_CheckState(res);
30704         }
30705       }
30706       if (!_v) goto check_17;
30707       _ranki += _v*_pi;
30708       _rankm += _pi;
30709       _pi *= SWIG_MAXCASTRANK;
30710       {
30711         {
30712           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), NULL);
30713           _v = SWIG_CheckState(res);
30714         }
30715       }
30716       if (!_v) goto check_17;
30717       _ranki += _v*_pi;
30718       _rankm += _pi;
30719       _pi *= SWIG_MAXCASTRANK;
30720       {
30721         {
30722           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), NULL);
30723           _v = SWIG_CheckState(res);
30724         }
30725       }
30726       if (!_v) goto check_17;
30727       _ranki += _v*_pi;
30728       _rankm += _pi;
30729       _pi *= SWIG_MAXCASTRANK;
30730       {
30731         {
30732           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), NULL);
30733           _v = SWIG_CheckState(res);
30734         }
30735       }
30736       if (!_v) goto check_17;
30737       _ranki += _v*_pi;
30738       _rankm += _pi;
30739       _pi *= SWIG_MAXCASTRANK;
30740       {
30741         {
30742           int res = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), NULL);
30743           _v = SWIG_CheckState(res);
30744         }
30745       }
30746       if (!_v) goto check_17;
30747       _ranki += _v*_pi;
30748       _rankm += _pi;
30749       _pi *= SWIG_MAXCASTRANK;
30750       {
30751         {
30752           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), NULL);
30753           _v = SWIG_CheckState(res);
30754         }
30755       }
30756       if (!_v) goto check_17;
30757       _ranki += _v*_pi;
30758       _rankm += _pi;
30759       _pi *= SWIG_MAXCASTRANK;
30760       if (!_index || (_ranki < _rank)) {
30761         _rank = _ranki; _index = 17;
30762         if (_rank == _rankm) goto dispatch;
30763       }
30764     }
30765   check_17:
30766 
30767     if (items == 17) {
30768       SWIG_TypeRank _ranki = 0;
30769       SWIG_TypeRank _rankm = 0;
30770       SWIG_TypeRank _pi = 1;
30771       int _v = 0;
30772       {
30773         {
30774           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
30775           _v = SWIG_CheckState(res);
30776         }
30777       }
30778       if (!_v) goto check_18;
30779       _ranki += _v*_pi;
30780       _rankm += _pi;
30781       _pi *= SWIG_MAXCASTRANK;
30782       {
30783         {
30784           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
30785           _v = SWIG_CheckState(res);
30786         }
30787       }
30788       if (!_v) goto check_18;
30789       _ranki += _v*_pi;
30790       _rankm += _pi;
30791       _pi *= SWIG_MAXCASTRANK;
30792       {
30793         {
30794           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
30795           _v = SWIG_CheckState(res);
30796         }
30797       }
30798       if (!_v) goto check_18;
30799       _ranki += _v*_pi;
30800       _rankm += _pi;
30801       _pi *= SWIG_MAXCASTRANK;
30802       {
30803         {
30804           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
30805           _v = SWIG_CheckState(res);
30806         }
30807       }
30808       if (!_v) goto check_18;
30809       _ranki += _v*_pi;
30810       _rankm += _pi;
30811       _pi *= SWIG_MAXCASTRANK;
30812       {
30813         {
30814           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
30815           _v = SWIG_CheckState(res);
30816         }
30817       }
30818       if (!_v) goto check_18;
30819       _ranki += _v*_pi;
30820       _rankm += _pi;
30821       _pi *= SWIG_MAXCASTRANK;
30822       {
30823         {
30824           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
30825           _v = SWIG_CheckState(res);
30826         }
30827       }
30828       if (!_v) goto check_18;
30829       _ranki += _v*_pi;
30830       _rankm += _pi;
30831       _pi *= SWIG_MAXCASTRANK;
30832       {
30833         {
30834           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
30835           _v = SWIG_CheckState(res);
30836         }
30837       }
30838       if (!_v) goto check_18;
30839       _ranki += _v*_pi;
30840       _rankm += _pi;
30841       _pi *= SWIG_MAXCASTRANK;
30842       {
30843         {
30844           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
30845           _v = SWIG_CheckState(res);
30846         }
30847       }
30848       if (!_v) goto check_18;
30849       _ranki += _v*_pi;
30850       _rankm += _pi;
30851       _pi *= SWIG_MAXCASTRANK;
30852       {
30853         {
30854           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
30855           _v = SWIG_CheckState(res);
30856         }
30857       }
30858       if (!_v) goto check_18;
30859       _ranki += _v*_pi;
30860       _rankm += _pi;
30861       _pi *= SWIG_MAXCASTRANK;
30862       {
30863         {
30864           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
30865           _v = SWIG_CheckState(res);
30866         }
30867       }
30868       if (!_v) goto check_18;
30869       _ranki += _v*_pi;
30870       _rankm += _pi;
30871       _pi *= SWIG_MAXCASTRANK;
30872       {
30873         {
30874           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), NULL);
30875           _v = SWIG_CheckState(res);
30876         }
30877       }
30878       if (!_v) goto check_18;
30879       _ranki += _v*_pi;
30880       _rankm += _pi;
30881       _pi *= SWIG_MAXCASTRANK;
30882       {
30883         {
30884           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), NULL);
30885           _v = SWIG_CheckState(res);
30886         }
30887       }
30888       if (!_v) goto check_18;
30889       _ranki += _v*_pi;
30890       _rankm += _pi;
30891       _pi *= SWIG_MAXCASTRANK;
30892       {
30893         {
30894           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), NULL);
30895           _v = SWIG_CheckState(res);
30896         }
30897       }
30898       if (!_v) goto check_18;
30899       _ranki += _v*_pi;
30900       _rankm += _pi;
30901       _pi *= SWIG_MAXCASTRANK;
30902       {
30903         {
30904           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), NULL);
30905           _v = SWIG_CheckState(res);
30906         }
30907       }
30908       if (!_v) goto check_18;
30909       _ranki += _v*_pi;
30910       _rankm += _pi;
30911       _pi *= SWIG_MAXCASTRANK;
30912       {
30913         {
30914           int res = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), NULL);
30915           _v = SWIG_CheckState(res);
30916         }
30917       }
30918       if (!_v) goto check_18;
30919       _ranki += _v*_pi;
30920       _rankm += _pi;
30921       _pi *= SWIG_MAXCASTRANK;
30922       {
30923         {
30924           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), NULL);
30925           _v = SWIG_CheckState(res);
30926         }
30927       }
30928       if (!_v) goto check_18;
30929       _ranki += _v*_pi;
30930       _rankm += _pi;
30931       _pi *= SWIG_MAXCASTRANK;
30932       {
30933         {
30934           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), NULL);
30935           _v = SWIG_CheckState(res);
30936         }
30937       }
30938       if (!_v) goto check_18;
30939       _ranki += _v*_pi;
30940       _rankm += _pi;
30941       _pi *= SWIG_MAXCASTRANK;
30942       if (!_index || (_ranki < _rank)) {
30943         _rank = _ranki; _index = 18;
30944         if (_rank == _rankm) goto dispatch;
30945       }
30946     }
30947   check_18:
30948 
30949     if (items == 18) {
30950       SWIG_TypeRank _ranki = 0;
30951       SWIG_TypeRank _rankm = 0;
30952       SWIG_TypeRank _pi = 1;
30953       int _v = 0;
30954       {
30955         {
30956           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
30957           _v = SWIG_CheckState(res);
30958         }
30959       }
30960       if (!_v) goto check_19;
30961       _ranki += _v*_pi;
30962       _rankm += _pi;
30963       _pi *= SWIG_MAXCASTRANK;
30964       {
30965         {
30966           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
30967           _v = SWIG_CheckState(res);
30968         }
30969       }
30970       if (!_v) goto check_19;
30971       _ranki += _v*_pi;
30972       _rankm += _pi;
30973       _pi *= SWIG_MAXCASTRANK;
30974       {
30975         {
30976           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
30977           _v = SWIG_CheckState(res);
30978         }
30979       }
30980       if (!_v) goto check_19;
30981       _ranki += _v*_pi;
30982       _rankm += _pi;
30983       _pi *= SWIG_MAXCASTRANK;
30984       {
30985         {
30986           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
30987           _v = SWIG_CheckState(res);
30988         }
30989       }
30990       if (!_v) goto check_19;
30991       _ranki += _v*_pi;
30992       _rankm += _pi;
30993       _pi *= SWIG_MAXCASTRANK;
30994       {
30995         {
30996           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
30997           _v = SWIG_CheckState(res);
30998         }
30999       }
31000       if (!_v) goto check_19;
31001       _ranki += _v*_pi;
31002       _rankm += _pi;
31003       _pi *= SWIG_MAXCASTRANK;
31004       {
31005         {
31006           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
31007           _v = SWIG_CheckState(res);
31008         }
31009       }
31010       if (!_v) goto check_19;
31011       _ranki += _v*_pi;
31012       _rankm += _pi;
31013       _pi *= SWIG_MAXCASTRANK;
31014       {
31015         {
31016           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
31017           _v = SWIG_CheckState(res);
31018         }
31019       }
31020       if (!_v) goto check_19;
31021       _ranki += _v*_pi;
31022       _rankm += _pi;
31023       _pi *= SWIG_MAXCASTRANK;
31024       {
31025         {
31026           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
31027           _v = SWIG_CheckState(res);
31028         }
31029       }
31030       if (!_v) goto check_19;
31031       _ranki += _v*_pi;
31032       _rankm += _pi;
31033       _pi *= SWIG_MAXCASTRANK;
31034       {
31035         {
31036           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
31037           _v = SWIG_CheckState(res);
31038         }
31039       }
31040       if (!_v) goto check_19;
31041       _ranki += _v*_pi;
31042       _rankm += _pi;
31043       _pi *= SWIG_MAXCASTRANK;
31044       {
31045         {
31046           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
31047           _v = SWIG_CheckState(res);
31048         }
31049       }
31050       if (!_v) goto check_19;
31051       _ranki += _v*_pi;
31052       _rankm += _pi;
31053       _pi *= SWIG_MAXCASTRANK;
31054       {
31055         {
31056           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), NULL);
31057           _v = SWIG_CheckState(res);
31058         }
31059       }
31060       if (!_v) goto check_19;
31061       _ranki += _v*_pi;
31062       _rankm += _pi;
31063       _pi *= SWIG_MAXCASTRANK;
31064       {
31065         {
31066           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), NULL);
31067           _v = SWIG_CheckState(res);
31068         }
31069       }
31070       if (!_v) goto check_19;
31071       _ranki += _v*_pi;
31072       _rankm += _pi;
31073       _pi *= SWIG_MAXCASTRANK;
31074       {
31075         {
31076           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), NULL);
31077           _v = SWIG_CheckState(res);
31078         }
31079       }
31080       if (!_v) goto check_19;
31081       _ranki += _v*_pi;
31082       _rankm += _pi;
31083       _pi *= SWIG_MAXCASTRANK;
31084       {
31085         {
31086           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), NULL);
31087           _v = SWIG_CheckState(res);
31088         }
31089       }
31090       if (!_v) goto check_19;
31091       _ranki += _v*_pi;
31092       _rankm += _pi;
31093       _pi *= SWIG_MAXCASTRANK;
31094       {
31095         {
31096           int res = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), NULL);
31097           _v = SWIG_CheckState(res);
31098         }
31099       }
31100       if (!_v) goto check_19;
31101       _ranki += _v*_pi;
31102       _rankm += _pi;
31103       _pi *= SWIG_MAXCASTRANK;
31104       {
31105         {
31106           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), NULL);
31107           _v = SWIG_CheckState(res);
31108         }
31109       }
31110       if (!_v) goto check_19;
31111       _ranki += _v*_pi;
31112       _rankm += _pi;
31113       _pi *= SWIG_MAXCASTRANK;
31114       {
31115         {
31116           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), NULL);
31117           _v = SWIG_CheckState(res);
31118         }
31119       }
31120       if (!_v) goto check_19;
31121       _ranki += _v*_pi;
31122       _rankm += _pi;
31123       _pi *= SWIG_MAXCASTRANK;
31124       {
31125         {
31126           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(17), NULL);
31127           _v = SWIG_CheckState(res);
31128         }
31129       }
31130       if (!_v) goto check_19;
31131       _ranki += _v*_pi;
31132       _rankm += _pi;
31133       _pi *= SWIG_MAXCASTRANK;
31134       if (!_index || (_ranki < _rank)) {
31135         _rank = _ranki; _index = 19;
31136         if (_rank == _rankm) goto dispatch;
31137       }
31138     }
31139   check_19:
31140 
31141     if (items == 19) {
31142       SWIG_TypeRank _ranki = 0;
31143       SWIG_TypeRank _rankm = 0;
31144       SWIG_TypeRank _pi = 1;
31145       int _v = 0;
31146       {
31147         {
31148           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
31149           _v = SWIG_CheckState(res);
31150         }
31151       }
31152       if (!_v) goto check_20;
31153       _ranki += _v*_pi;
31154       _rankm += _pi;
31155       _pi *= SWIG_MAXCASTRANK;
31156       {
31157         {
31158           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
31159           _v = SWIG_CheckState(res);
31160         }
31161       }
31162       if (!_v) goto check_20;
31163       _ranki += _v*_pi;
31164       _rankm += _pi;
31165       _pi *= SWIG_MAXCASTRANK;
31166       {
31167         {
31168           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
31169           _v = SWIG_CheckState(res);
31170         }
31171       }
31172       if (!_v) goto check_20;
31173       _ranki += _v*_pi;
31174       _rankm += _pi;
31175       _pi *= SWIG_MAXCASTRANK;
31176       {
31177         {
31178           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
31179           _v = SWIG_CheckState(res);
31180         }
31181       }
31182       if (!_v) goto check_20;
31183       _ranki += _v*_pi;
31184       _rankm += _pi;
31185       _pi *= SWIG_MAXCASTRANK;
31186       {
31187         {
31188           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
31189           _v = SWIG_CheckState(res);
31190         }
31191       }
31192       if (!_v) goto check_20;
31193       _ranki += _v*_pi;
31194       _rankm += _pi;
31195       _pi *= SWIG_MAXCASTRANK;
31196       {
31197         {
31198           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
31199           _v = SWIG_CheckState(res);
31200         }
31201       }
31202       if (!_v) goto check_20;
31203       _ranki += _v*_pi;
31204       _rankm += _pi;
31205       _pi *= SWIG_MAXCASTRANK;
31206       {
31207         {
31208           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
31209           _v = SWIG_CheckState(res);
31210         }
31211       }
31212       if (!_v) goto check_20;
31213       _ranki += _v*_pi;
31214       _rankm += _pi;
31215       _pi *= SWIG_MAXCASTRANK;
31216       {
31217         {
31218           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
31219           _v = SWIG_CheckState(res);
31220         }
31221       }
31222       if (!_v) goto check_20;
31223       _ranki += _v*_pi;
31224       _rankm += _pi;
31225       _pi *= SWIG_MAXCASTRANK;
31226       {
31227         {
31228           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
31229           _v = SWIG_CheckState(res);
31230         }
31231       }
31232       if (!_v) goto check_20;
31233       _ranki += _v*_pi;
31234       _rankm += _pi;
31235       _pi *= SWIG_MAXCASTRANK;
31236       {
31237         {
31238           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
31239           _v = SWIG_CheckState(res);
31240         }
31241       }
31242       if (!_v) goto check_20;
31243       _ranki += _v*_pi;
31244       _rankm += _pi;
31245       _pi *= SWIG_MAXCASTRANK;
31246       {
31247         {
31248           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), NULL);
31249           _v = SWIG_CheckState(res);
31250         }
31251       }
31252       if (!_v) goto check_20;
31253       _ranki += _v*_pi;
31254       _rankm += _pi;
31255       _pi *= SWIG_MAXCASTRANK;
31256       {
31257         {
31258           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), NULL);
31259           _v = SWIG_CheckState(res);
31260         }
31261       }
31262       if (!_v) goto check_20;
31263       _ranki += _v*_pi;
31264       _rankm += _pi;
31265       _pi *= SWIG_MAXCASTRANK;
31266       {
31267         {
31268           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), NULL);
31269           _v = SWIG_CheckState(res);
31270         }
31271       }
31272       if (!_v) goto check_20;
31273       _ranki += _v*_pi;
31274       _rankm += _pi;
31275       _pi *= SWIG_MAXCASTRANK;
31276       {
31277         {
31278           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), NULL);
31279           _v = SWIG_CheckState(res);
31280         }
31281       }
31282       if (!_v) goto check_20;
31283       _ranki += _v*_pi;
31284       _rankm += _pi;
31285       _pi *= SWIG_MAXCASTRANK;
31286       {
31287         {
31288           int res = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), NULL);
31289           _v = SWIG_CheckState(res);
31290         }
31291       }
31292       if (!_v) goto check_20;
31293       _ranki += _v*_pi;
31294       _rankm += _pi;
31295       _pi *= SWIG_MAXCASTRANK;
31296       {
31297         {
31298           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), NULL);
31299           _v = SWIG_CheckState(res);
31300         }
31301       }
31302       if (!_v) goto check_20;
31303       _ranki += _v*_pi;
31304       _rankm += _pi;
31305       _pi *= SWIG_MAXCASTRANK;
31306       {
31307         {
31308           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), NULL);
31309           _v = SWIG_CheckState(res);
31310         }
31311       }
31312       if (!_v) goto check_20;
31313       _ranki += _v*_pi;
31314       _rankm += _pi;
31315       _pi *= SWIG_MAXCASTRANK;
31316       {
31317         {
31318           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(17), NULL);
31319           _v = SWIG_CheckState(res);
31320         }
31321       }
31322       if (!_v) goto check_20;
31323       _ranki += _v*_pi;
31324       _rankm += _pi;
31325       _pi *= SWIG_MAXCASTRANK;
31326       {
31327         {
31328           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(18), NULL);
31329           _v = SWIG_CheckState(res);
31330         }
31331       }
31332       if (!_v) goto check_20;
31333       _ranki += _v*_pi;
31334       _rankm += _pi;
31335       _pi *= SWIG_MAXCASTRANK;
31336       if (!_index || (_ranki < _rank)) {
31337         _rank = _ranki; _index = 20;
31338         if (_rank == _rankm) goto dispatch;
31339       }
31340     }
31341   check_20:
31342 
31343     if (items == 20) {
31344       SWIG_TypeRank _ranki = 0;
31345       SWIG_TypeRank _rankm = 0;
31346       SWIG_TypeRank _pi = 1;
31347       int _v = 0;
31348       {
31349         {
31350           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
31351           _v = SWIG_CheckState(res);
31352         }
31353       }
31354       if (!_v) goto check_21;
31355       _ranki += _v*_pi;
31356       _rankm += _pi;
31357       _pi *= SWIG_MAXCASTRANK;
31358       {
31359         {
31360           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
31361           _v = SWIG_CheckState(res);
31362         }
31363       }
31364       if (!_v) goto check_21;
31365       _ranki += _v*_pi;
31366       _rankm += _pi;
31367       _pi *= SWIG_MAXCASTRANK;
31368       {
31369         {
31370           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
31371           _v = SWIG_CheckState(res);
31372         }
31373       }
31374       if (!_v) goto check_21;
31375       _ranki += _v*_pi;
31376       _rankm += _pi;
31377       _pi *= SWIG_MAXCASTRANK;
31378       {
31379         {
31380           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
31381           _v = SWIG_CheckState(res);
31382         }
31383       }
31384       if (!_v) goto check_21;
31385       _ranki += _v*_pi;
31386       _rankm += _pi;
31387       _pi *= SWIG_MAXCASTRANK;
31388       {
31389         {
31390           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
31391           _v = SWIG_CheckState(res);
31392         }
31393       }
31394       if (!_v) goto check_21;
31395       _ranki += _v*_pi;
31396       _rankm += _pi;
31397       _pi *= SWIG_MAXCASTRANK;
31398       {
31399         {
31400           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
31401           _v = SWIG_CheckState(res);
31402         }
31403       }
31404       if (!_v) goto check_21;
31405       _ranki += _v*_pi;
31406       _rankm += _pi;
31407       _pi *= SWIG_MAXCASTRANK;
31408       {
31409         {
31410           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
31411           _v = SWIG_CheckState(res);
31412         }
31413       }
31414       if (!_v) goto check_21;
31415       _ranki += _v*_pi;
31416       _rankm += _pi;
31417       _pi *= SWIG_MAXCASTRANK;
31418       {
31419         {
31420           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
31421           _v = SWIG_CheckState(res);
31422         }
31423       }
31424       if (!_v) goto check_21;
31425       _ranki += _v*_pi;
31426       _rankm += _pi;
31427       _pi *= SWIG_MAXCASTRANK;
31428       {
31429         {
31430           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
31431           _v = SWIG_CheckState(res);
31432         }
31433       }
31434       if (!_v) goto check_21;
31435       _ranki += _v*_pi;
31436       _rankm += _pi;
31437       _pi *= SWIG_MAXCASTRANK;
31438       {
31439         {
31440           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
31441           _v = SWIG_CheckState(res);
31442         }
31443       }
31444       if (!_v) goto check_21;
31445       _ranki += _v*_pi;
31446       _rankm += _pi;
31447       _pi *= SWIG_MAXCASTRANK;
31448       {
31449         {
31450           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), NULL);
31451           _v = SWIG_CheckState(res);
31452         }
31453       }
31454       if (!_v) goto check_21;
31455       _ranki += _v*_pi;
31456       _rankm += _pi;
31457       _pi *= SWIG_MAXCASTRANK;
31458       {
31459         {
31460           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), NULL);
31461           _v = SWIG_CheckState(res);
31462         }
31463       }
31464       if (!_v) goto check_21;
31465       _ranki += _v*_pi;
31466       _rankm += _pi;
31467       _pi *= SWIG_MAXCASTRANK;
31468       {
31469         {
31470           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), NULL);
31471           _v = SWIG_CheckState(res);
31472         }
31473       }
31474       if (!_v) goto check_21;
31475       _ranki += _v*_pi;
31476       _rankm += _pi;
31477       _pi *= SWIG_MAXCASTRANK;
31478       {
31479         {
31480           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), NULL);
31481           _v = SWIG_CheckState(res);
31482         }
31483       }
31484       if (!_v) goto check_21;
31485       _ranki += _v*_pi;
31486       _rankm += _pi;
31487       _pi *= SWIG_MAXCASTRANK;
31488       {
31489         {
31490           int res = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), NULL);
31491           _v = SWIG_CheckState(res);
31492         }
31493       }
31494       if (!_v) goto check_21;
31495       _ranki += _v*_pi;
31496       _rankm += _pi;
31497       _pi *= SWIG_MAXCASTRANK;
31498       {
31499         {
31500           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), NULL);
31501           _v = SWIG_CheckState(res);
31502         }
31503       }
31504       if (!_v) goto check_21;
31505       _ranki += _v*_pi;
31506       _rankm += _pi;
31507       _pi *= SWIG_MAXCASTRANK;
31508       {
31509         {
31510           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), NULL);
31511           _v = SWIG_CheckState(res);
31512         }
31513       }
31514       if (!_v) goto check_21;
31515       _ranki += _v*_pi;
31516       _rankm += _pi;
31517       _pi *= SWIG_MAXCASTRANK;
31518       {
31519         {
31520           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(17), NULL);
31521           _v = SWIG_CheckState(res);
31522         }
31523       }
31524       if (!_v) goto check_21;
31525       _ranki += _v*_pi;
31526       _rankm += _pi;
31527       _pi *= SWIG_MAXCASTRANK;
31528       {
31529         {
31530           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(18), NULL);
31531           _v = SWIG_CheckState(res);
31532         }
31533       }
31534       if (!_v) goto check_21;
31535       _ranki += _v*_pi;
31536       _rankm += _pi;
31537       _pi *= SWIG_MAXCASTRANK;
31538       {
31539         {
31540           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(19), NULL);
31541           _v = SWIG_CheckState(res);
31542         }
31543       }
31544       if (!_v) goto check_21;
31545       _ranki += _v*_pi;
31546       _rankm += _pi;
31547       _pi *= SWIG_MAXCASTRANK;
31548       if (!_index || (_ranki < _rank)) {
31549         _rank = _ranki; _index = 21;
31550         if (_rank == _rankm) goto dispatch;
31551       }
31552     }
31553   check_21:
31554 
31555     if (items == 21) {
31556       SWIG_TypeRank _ranki = 0;
31557       SWIG_TypeRank _rankm = 0;
31558       SWIG_TypeRank _pi = 1;
31559       int _v = 0;
31560       {
31561         {
31562           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
31563           _v = SWIG_CheckState(res);
31564         }
31565       }
31566       if (!_v) goto check_22;
31567       _ranki += _v*_pi;
31568       _rankm += _pi;
31569       _pi *= SWIG_MAXCASTRANK;
31570       {
31571         {
31572           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
31573           _v = SWIG_CheckState(res);
31574         }
31575       }
31576       if (!_v) goto check_22;
31577       _ranki += _v*_pi;
31578       _rankm += _pi;
31579       _pi *= SWIG_MAXCASTRANK;
31580       {
31581         {
31582           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
31583           _v = SWIG_CheckState(res);
31584         }
31585       }
31586       if (!_v) goto check_22;
31587       _ranki += _v*_pi;
31588       _rankm += _pi;
31589       _pi *= SWIG_MAXCASTRANK;
31590       {
31591         {
31592           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
31593           _v = SWIG_CheckState(res);
31594         }
31595       }
31596       if (!_v) goto check_22;
31597       _ranki += _v*_pi;
31598       _rankm += _pi;
31599       _pi *= SWIG_MAXCASTRANK;
31600       {
31601         {
31602           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
31603           _v = SWIG_CheckState(res);
31604         }
31605       }
31606       if (!_v) goto check_22;
31607       _ranki += _v*_pi;
31608       _rankm += _pi;
31609       _pi *= SWIG_MAXCASTRANK;
31610       {
31611         {
31612           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
31613           _v = SWIG_CheckState(res);
31614         }
31615       }
31616       if (!_v) goto check_22;
31617       _ranki += _v*_pi;
31618       _rankm += _pi;
31619       _pi *= SWIG_MAXCASTRANK;
31620       {
31621         {
31622           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
31623           _v = SWIG_CheckState(res);
31624         }
31625       }
31626       if (!_v) goto check_22;
31627       _ranki += _v*_pi;
31628       _rankm += _pi;
31629       _pi *= SWIG_MAXCASTRANK;
31630       {
31631         {
31632           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
31633           _v = SWIG_CheckState(res);
31634         }
31635       }
31636       if (!_v) goto check_22;
31637       _ranki += _v*_pi;
31638       _rankm += _pi;
31639       _pi *= SWIG_MAXCASTRANK;
31640       {
31641         {
31642           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
31643           _v = SWIG_CheckState(res);
31644         }
31645       }
31646       if (!_v) goto check_22;
31647       _ranki += _v*_pi;
31648       _rankm += _pi;
31649       _pi *= SWIG_MAXCASTRANK;
31650       {
31651         {
31652           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
31653           _v = SWIG_CheckState(res);
31654         }
31655       }
31656       if (!_v) goto check_22;
31657       _ranki += _v*_pi;
31658       _rankm += _pi;
31659       _pi *= SWIG_MAXCASTRANK;
31660       {
31661         {
31662           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), NULL);
31663           _v = SWIG_CheckState(res);
31664         }
31665       }
31666       if (!_v) goto check_22;
31667       _ranki += _v*_pi;
31668       _rankm += _pi;
31669       _pi *= SWIG_MAXCASTRANK;
31670       {
31671         {
31672           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), NULL);
31673           _v = SWIG_CheckState(res);
31674         }
31675       }
31676       if (!_v) goto check_22;
31677       _ranki += _v*_pi;
31678       _rankm += _pi;
31679       _pi *= SWIG_MAXCASTRANK;
31680       {
31681         {
31682           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), NULL);
31683           _v = SWIG_CheckState(res);
31684         }
31685       }
31686       if (!_v) goto check_22;
31687       _ranki += _v*_pi;
31688       _rankm += _pi;
31689       _pi *= SWIG_MAXCASTRANK;
31690       {
31691         {
31692           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), NULL);
31693           _v = SWIG_CheckState(res);
31694         }
31695       }
31696       if (!_v) goto check_22;
31697       _ranki += _v*_pi;
31698       _rankm += _pi;
31699       _pi *= SWIG_MAXCASTRANK;
31700       {
31701         {
31702           int res = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), NULL);
31703           _v = SWIG_CheckState(res);
31704         }
31705       }
31706       if (!_v) goto check_22;
31707       _ranki += _v*_pi;
31708       _rankm += _pi;
31709       _pi *= SWIG_MAXCASTRANK;
31710       {
31711         {
31712           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), NULL);
31713           _v = SWIG_CheckState(res);
31714         }
31715       }
31716       if (!_v) goto check_22;
31717       _ranki += _v*_pi;
31718       _rankm += _pi;
31719       _pi *= SWIG_MAXCASTRANK;
31720       {
31721         {
31722           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), NULL);
31723           _v = SWIG_CheckState(res);
31724         }
31725       }
31726       if (!_v) goto check_22;
31727       _ranki += _v*_pi;
31728       _rankm += _pi;
31729       _pi *= SWIG_MAXCASTRANK;
31730       {
31731         {
31732           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(17), NULL);
31733           _v = SWIG_CheckState(res);
31734         }
31735       }
31736       if (!_v) goto check_22;
31737       _ranki += _v*_pi;
31738       _rankm += _pi;
31739       _pi *= SWIG_MAXCASTRANK;
31740       {
31741         {
31742           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(18), NULL);
31743           _v = SWIG_CheckState(res);
31744         }
31745       }
31746       if (!_v) goto check_22;
31747       _ranki += _v*_pi;
31748       _rankm += _pi;
31749       _pi *= SWIG_MAXCASTRANK;
31750       {
31751         {
31752           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(19), NULL);
31753           _v = SWIG_CheckState(res);
31754         }
31755       }
31756       if (!_v) goto check_22;
31757       _ranki += _v*_pi;
31758       _rankm += _pi;
31759       _pi *= SWIG_MAXCASTRANK;
31760       {
31761         {
31762           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(20), NULL);
31763           _v = SWIG_CheckState(res);
31764         }
31765       }
31766       if (!_v) goto check_22;
31767       _ranki += _v*_pi;
31768       _rankm += _pi;
31769       _pi *= SWIG_MAXCASTRANK;
31770       if (!_index || (_ranki < _rank)) {
31771         _rank = _ranki; _index = 22;
31772         if (_rank == _rankm) goto dispatch;
31773       }
31774     }
31775   check_22:
31776 
31777     if (items == 22) {
31778       SWIG_TypeRank _ranki = 0;
31779       SWIG_TypeRank _rankm = 0;
31780       SWIG_TypeRank _pi = 1;
31781       int _v = 0;
31782       {
31783         {
31784           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
31785           _v = SWIG_CheckState(res);
31786         }
31787       }
31788       if (!_v) goto check_23;
31789       _ranki += _v*_pi;
31790       _rankm += _pi;
31791       _pi *= SWIG_MAXCASTRANK;
31792       {
31793         {
31794           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
31795           _v = SWIG_CheckState(res);
31796         }
31797       }
31798       if (!_v) goto check_23;
31799       _ranki += _v*_pi;
31800       _rankm += _pi;
31801       _pi *= SWIG_MAXCASTRANK;
31802       {
31803         {
31804           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
31805           _v = SWIG_CheckState(res);
31806         }
31807       }
31808       if (!_v) goto check_23;
31809       _ranki += _v*_pi;
31810       _rankm += _pi;
31811       _pi *= SWIG_MAXCASTRANK;
31812       {
31813         {
31814           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
31815           _v = SWIG_CheckState(res);
31816         }
31817       }
31818       if (!_v) goto check_23;
31819       _ranki += _v*_pi;
31820       _rankm += _pi;
31821       _pi *= SWIG_MAXCASTRANK;
31822       {
31823         {
31824           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
31825           _v = SWIG_CheckState(res);
31826         }
31827       }
31828       if (!_v) goto check_23;
31829       _ranki += _v*_pi;
31830       _rankm += _pi;
31831       _pi *= SWIG_MAXCASTRANK;
31832       {
31833         {
31834           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
31835           _v = SWIG_CheckState(res);
31836         }
31837       }
31838       if (!_v) goto check_23;
31839       _ranki += _v*_pi;
31840       _rankm += _pi;
31841       _pi *= SWIG_MAXCASTRANK;
31842       {
31843         {
31844           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
31845           _v = SWIG_CheckState(res);
31846         }
31847       }
31848       if (!_v) goto check_23;
31849       _ranki += _v*_pi;
31850       _rankm += _pi;
31851       _pi *= SWIG_MAXCASTRANK;
31852       {
31853         {
31854           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
31855           _v = SWIG_CheckState(res);
31856         }
31857       }
31858       if (!_v) goto check_23;
31859       _ranki += _v*_pi;
31860       _rankm += _pi;
31861       _pi *= SWIG_MAXCASTRANK;
31862       {
31863         {
31864           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
31865           _v = SWIG_CheckState(res);
31866         }
31867       }
31868       if (!_v) goto check_23;
31869       _ranki += _v*_pi;
31870       _rankm += _pi;
31871       _pi *= SWIG_MAXCASTRANK;
31872       {
31873         {
31874           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
31875           _v = SWIG_CheckState(res);
31876         }
31877       }
31878       if (!_v) goto check_23;
31879       _ranki += _v*_pi;
31880       _rankm += _pi;
31881       _pi *= SWIG_MAXCASTRANK;
31882       {
31883         {
31884           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), NULL);
31885           _v = SWIG_CheckState(res);
31886         }
31887       }
31888       if (!_v) goto check_23;
31889       _ranki += _v*_pi;
31890       _rankm += _pi;
31891       _pi *= SWIG_MAXCASTRANK;
31892       {
31893         {
31894           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), NULL);
31895           _v = SWIG_CheckState(res);
31896         }
31897       }
31898       if (!_v) goto check_23;
31899       _ranki += _v*_pi;
31900       _rankm += _pi;
31901       _pi *= SWIG_MAXCASTRANK;
31902       {
31903         {
31904           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), NULL);
31905           _v = SWIG_CheckState(res);
31906         }
31907       }
31908       if (!_v) goto check_23;
31909       _ranki += _v*_pi;
31910       _rankm += _pi;
31911       _pi *= SWIG_MAXCASTRANK;
31912       {
31913         {
31914           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), NULL);
31915           _v = SWIG_CheckState(res);
31916         }
31917       }
31918       if (!_v) goto check_23;
31919       _ranki += _v*_pi;
31920       _rankm += _pi;
31921       _pi *= SWIG_MAXCASTRANK;
31922       {
31923         {
31924           int res = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), NULL);
31925           _v = SWIG_CheckState(res);
31926         }
31927       }
31928       if (!_v) goto check_23;
31929       _ranki += _v*_pi;
31930       _rankm += _pi;
31931       _pi *= SWIG_MAXCASTRANK;
31932       {
31933         {
31934           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), NULL);
31935           _v = SWIG_CheckState(res);
31936         }
31937       }
31938       if (!_v) goto check_23;
31939       _ranki += _v*_pi;
31940       _rankm += _pi;
31941       _pi *= SWIG_MAXCASTRANK;
31942       {
31943         {
31944           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), NULL);
31945           _v = SWIG_CheckState(res);
31946         }
31947       }
31948       if (!_v) goto check_23;
31949       _ranki += _v*_pi;
31950       _rankm += _pi;
31951       _pi *= SWIG_MAXCASTRANK;
31952       {
31953         {
31954           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(17), NULL);
31955           _v = SWIG_CheckState(res);
31956         }
31957       }
31958       if (!_v) goto check_23;
31959       _ranki += _v*_pi;
31960       _rankm += _pi;
31961       _pi *= SWIG_MAXCASTRANK;
31962       {
31963         {
31964           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(18), NULL);
31965           _v = SWIG_CheckState(res);
31966         }
31967       }
31968       if (!_v) goto check_23;
31969       _ranki += _v*_pi;
31970       _rankm += _pi;
31971       _pi *= SWIG_MAXCASTRANK;
31972       {
31973         {
31974           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(19), NULL);
31975           _v = SWIG_CheckState(res);
31976         }
31977       }
31978       if (!_v) goto check_23;
31979       _ranki += _v*_pi;
31980       _rankm += _pi;
31981       _pi *= SWIG_MAXCASTRANK;
31982       {
31983         {
31984           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(20), NULL);
31985           _v = SWIG_CheckState(res);
31986         }
31987       }
31988       if (!_v) goto check_23;
31989       _ranki += _v*_pi;
31990       _rankm += _pi;
31991       _pi *= SWIG_MAXCASTRANK;
31992       {
31993         {
31994           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(21), NULL);
31995           _v = SWIG_CheckState(res);
31996         }
31997       }
31998       if (!_v) goto check_23;
31999       _ranki += _v*_pi;
32000       _rankm += _pi;
32001       _pi *= SWIG_MAXCASTRANK;
32002       if (!_index || (_ranki < _rank)) {
32003         _rank = _ranki; _index = 23;
32004         if (_rank == _rankm) goto dispatch;
32005       }
32006     }
32007   check_23:
32008 
32009     if (items == 23) {
32010       SWIG_TypeRank _ranki = 0;
32011       SWIG_TypeRank _rankm = 0;
32012       SWIG_TypeRank _pi = 1;
32013       int _v = 0;
32014       {
32015         {
32016           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
32017           _v = SWIG_CheckState(res);
32018         }
32019       }
32020       if (!_v) goto check_24;
32021       _ranki += _v*_pi;
32022       _rankm += _pi;
32023       _pi *= SWIG_MAXCASTRANK;
32024       {
32025         {
32026           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
32027           _v = SWIG_CheckState(res);
32028         }
32029       }
32030       if (!_v) goto check_24;
32031       _ranki += _v*_pi;
32032       _rankm += _pi;
32033       _pi *= SWIG_MAXCASTRANK;
32034       {
32035         {
32036           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
32037           _v = SWIG_CheckState(res);
32038         }
32039       }
32040       if (!_v) goto check_24;
32041       _ranki += _v*_pi;
32042       _rankm += _pi;
32043       _pi *= SWIG_MAXCASTRANK;
32044       {
32045         {
32046           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
32047           _v = SWIG_CheckState(res);
32048         }
32049       }
32050       if (!_v) goto check_24;
32051       _ranki += _v*_pi;
32052       _rankm += _pi;
32053       _pi *= SWIG_MAXCASTRANK;
32054       {
32055         {
32056           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
32057           _v = SWIG_CheckState(res);
32058         }
32059       }
32060       if (!_v) goto check_24;
32061       _ranki += _v*_pi;
32062       _rankm += _pi;
32063       _pi *= SWIG_MAXCASTRANK;
32064       {
32065         {
32066           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
32067           _v = SWIG_CheckState(res);
32068         }
32069       }
32070       if (!_v) goto check_24;
32071       _ranki += _v*_pi;
32072       _rankm += _pi;
32073       _pi *= SWIG_MAXCASTRANK;
32074       {
32075         {
32076           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
32077           _v = SWIG_CheckState(res);
32078         }
32079       }
32080       if (!_v) goto check_24;
32081       _ranki += _v*_pi;
32082       _rankm += _pi;
32083       _pi *= SWIG_MAXCASTRANK;
32084       {
32085         {
32086           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
32087           _v = SWIG_CheckState(res);
32088         }
32089       }
32090       if (!_v) goto check_24;
32091       _ranki += _v*_pi;
32092       _rankm += _pi;
32093       _pi *= SWIG_MAXCASTRANK;
32094       {
32095         {
32096           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
32097           _v = SWIG_CheckState(res);
32098         }
32099       }
32100       if (!_v) goto check_24;
32101       _ranki += _v*_pi;
32102       _rankm += _pi;
32103       _pi *= SWIG_MAXCASTRANK;
32104       {
32105         {
32106           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
32107           _v = SWIG_CheckState(res);
32108         }
32109       }
32110       if (!_v) goto check_24;
32111       _ranki += _v*_pi;
32112       _rankm += _pi;
32113       _pi *= SWIG_MAXCASTRANK;
32114       {
32115         {
32116           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), NULL);
32117           _v = SWIG_CheckState(res);
32118         }
32119       }
32120       if (!_v) goto check_24;
32121       _ranki += _v*_pi;
32122       _rankm += _pi;
32123       _pi *= SWIG_MAXCASTRANK;
32124       {
32125         {
32126           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), NULL);
32127           _v = SWIG_CheckState(res);
32128         }
32129       }
32130       if (!_v) goto check_24;
32131       _ranki += _v*_pi;
32132       _rankm += _pi;
32133       _pi *= SWIG_MAXCASTRANK;
32134       {
32135         {
32136           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), NULL);
32137           _v = SWIG_CheckState(res);
32138         }
32139       }
32140       if (!_v) goto check_24;
32141       _ranki += _v*_pi;
32142       _rankm += _pi;
32143       _pi *= SWIG_MAXCASTRANK;
32144       {
32145         {
32146           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), NULL);
32147           _v = SWIG_CheckState(res);
32148         }
32149       }
32150       if (!_v) goto check_24;
32151       _ranki += _v*_pi;
32152       _rankm += _pi;
32153       _pi *= SWIG_MAXCASTRANK;
32154       {
32155         {
32156           int res = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), NULL);
32157           _v = SWIG_CheckState(res);
32158         }
32159       }
32160       if (!_v) goto check_24;
32161       _ranki += _v*_pi;
32162       _rankm += _pi;
32163       _pi *= SWIG_MAXCASTRANK;
32164       {
32165         {
32166           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), NULL);
32167           _v = SWIG_CheckState(res);
32168         }
32169       }
32170       if (!_v) goto check_24;
32171       _ranki += _v*_pi;
32172       _rankm += _pi;
32173       _pi *= SWIG_MAXCASTRANK;
32174       {
32175         {
32176           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), NULL);
32177           _v = SWIG_CheckState(res);
32178         }
32179       }
32180       if (!_v) goto check_24;
32181       _ranki += _v*_pi;
32182       _rankm += _pi;
32183       _pi *= SWIG_MAXCASTRANK;
32184       {
32185         {
32186           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(17), NULL);
32187           _v = SWIG_CheckState(res);
32188         }
32189       }
32190       if (!_v) goto check_24;
32191       _ranki += _v*_pi;
32192       _rankm += _pi;
32193       _pi *= SWIG_MAXCASTRANK;
32194       {
32195         {
32196           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(18), NULL);
32197           _v = SWIG_CheckState(res);
32198         }
32199       }
32200       if (!_v) goto check_24;
32201       _ranki += _v*_pi;
32202       _rankm += _pi;
32203       _pi *= SWIG_MAXCASTRANK;
32204       {
32205         {
32206           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(19), NULL);
32207           _v = SWIG_CheckState(res);
32208         }
32209       }
32210       if (!_v) goto check_24;
32211       _ranki += _v*_pi;
32212       _rankm += _pi;
32213       _pi *= SWIG_MAXCASTRANK;
32214       {
32215         {
32216           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(20), NULL);
32217           _v = SWIG_CheckState(res);
32218         }
32219       }
32220       if (!_v) goto check_24;
32221       _ranki += _v*_pi;
32222       _rankm += _pi;
32223       _pi *= SWIG_MAXCASTRANK;
32224       {
32225         {
32226           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(21), NULL);
32227           _v = SWIG_CheckState(res);
32228         }
32229       }
32230       if (!_v) goto check_24;
32231       _ranki += _v*_pi;
32232       _rankm += _pi;
32233       _pi *= SWIG_MAXCASTRANK;
32234       {
32235         {
32236           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(22), NULL);
32237           _v = SWIG_CheckState(res);
32238         }
32239       }
32240       if (!_v) goto check_24;
32241       _ranki += _v*_pi;
32242       _rankm += _pi;
32243       _pi *= SWIG_MAXCASTRANK;
32244       if (!_index || (_ranki < _rank)) {
32245         _rank = _ranki; _index = 24;
32246         if (_rank == _rankm) goto dispatch;
32247       }
32248     }
32249   check_24:
32250 
32251     if (items == 24) {
32252       SWIG_TypeRank _ranki = 0;
32253       SWIG_TypeRank _rankm = 0;
32254       SWIG_TypeRank _pi = 1;
32255       int _v = 0;
32256       {
32257         {
32258           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
32259           _v = SWIG_CheckState(res);
32260         }
32261       }
32262       if (!_v) goto check_25;
32263       _ranki += _v*_pi;
32264       _rankm += _pi;
32265       _pi *= SWIG_MAXCASTRANK;
32266       {
32267         {
32268           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
32269           _v = SWIG_CheckState(res);
32270         }
32271       }
32272       if (!_v) goto check_25;
32273       _ranki += _v*_pi;
32274       _rankm += _pi;
32275       _pi *= SWIG_MAXCASTRANK;
32276       {
32277         {
32278           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
32279           _v = SWIG_CheckState(res);
32280         }
32281       }
32282       if (!_v) goto check_25;
32283       _ranki += _v*_pi;
32284       _rankm += _pi;
32285       _pi *= SWIG_MAXCASTRANK;
32286       {
32287         {
32288           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
32289           _v = SWIG_CheckState(res);
32290         }
32291       }
32292       if (!_v) goto check_25;
32293       _ranki += _v*_pi;
32294       _rankm += _pi;
32295       _pi *= SWIG_MAXCASTRANK;
32296       {
32297         {
32298           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
32299           _v = SWIG_CheckState(res);
32300         }
32301       }
32302       if (!_v) goto check_25;
32303       _ranki += _v*_pi;
32304       _rankm += _pi;
32305       _pi *= SWIG_MAXCASTRANK;
32306       {
32307         {
32308           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
32309           _v = SWIG_CheckState(res);
32310         }
32311       }
32312       if (!_v) goto check_25;
32313       _ranki += _v*_pi;
32314       _rankm += _pi;
32315       _pi *= SWIG_MAXCASTRANK;
32316       {
32317         {
32318           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
32319           _v = SWIG_CheckState(res);
32320         }
32321       }
32322       if (!_v) goto check_25;
32323       _ranki += _v*_pi;
32324       _rankm += _pi;
32325       _pi *= SWIG_MAXCASTRANK;
32326       {
32327         {
32328           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
32329           _v = SWIG_CheckState(res);
32330         }
32331       }
32332       if (!_v) goto check_25;
32333       _ranki += _v*_pi;
32334       _rankm += _pi;
32335       _pi *= SWIG_MAXCASTRANK;
32336       {
32337         {
32338           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(8), NULL);
32339           _v = SWIG_CheckState(res);
32340         }
32341       }
32342       if (!_v) goto check_25;
32343       _ranki += _v*_pi;
32344       _rankm += _pi;
32345       _pi *= SWIG_MAXCASTRANK;
32346       {
32347         {
32348           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(9), NULL);
32349           _v = SWIG_CheckState(res);
32350         }
32351       }
32352       if (!_v) goto check_25;
32353       _ranki += _v*_pi;
32354       _rankm += _pi;
32355       _pi *= SWIG_MAXCASTRANK;
32356       {
32357         {
32358           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(10), NULL);
32359           _v = SWIG_CheckState(res);
32360         }
32361       }
32362       if (!_v) goto check_25;
32363       _ranki += _v*_pi;
32364       _rankm += _pi;
32365       _pi *= SWIG_MAXCASTRANK;
32366       {
32367         {
32368           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), NULL);
32369           _v = SWIG_CheckState(res);
32370         }
32371       }
32372       if (!_v) goto check_25;
32373       _ranki += _v*_pi;
32374       _rankm += _pi;
32375       _pi *= SWIG_MAXCASTRANK;
32376       {
32377         {
32378           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(12), NULL);
32379           _v = SWIG_CheckState(res);
32380         }
32381       }
32382       if (!_v) goto check_25;
32383       _ranki += _v*_pi;
32384       _rankm += _pi;
32385       _pi *= SWIG_MAXCASTRANK;
32386       {
32387         {
32388           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(13), NULL);
32389           _v = SWIG_CheckState(res);
32390         }
32391       }
32392       if (!_v) goto check_25;
32393       _ranki += _v*_pi;
32394       _rankm += _pi;
32395       _pi *= SWIG_MAXCASTRANK;
32396       {
32397         {
32398           int res = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(14), NULL);
32399           _v = SWIG_CheckState(res);
32400         }
32401       }
32402       if (!_v) goto check_25;
32403       _ranki += _v*_pi;
32404       _rankm += _pi;
32405       _pi *= SWIG_MAXCASTRANK;
32406       {
32407         {
32408           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), NULL);
32409           _v = SWIG_CheckState(res);
32410         }
32411       }
32412       if (!_v) goto check_25;
32413       _ranki += _v*_pi;
32414       _rankm += _pi;
32415       _pi *= SWIG_MAXCASTRANK;
32416       {
32417         {
32418           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), NULL);
32419           _v = SWIG_CheckState(res);
32420         }
32421       }
32422       if (!_v) goto check_25;
32423       _ranki += _v*_pi;
32424       _rankm += _pi;
32425       _pi *= SWIG_MAXCASTRANK;
32426       {
32427         {
32428           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(17), NULL);
32429           _v = SWIG_CheckState(res);
32430         }
32431       }
32432       if (!_v) goto check_25;
32433       _ranki += _v*_pi;
32434       _rankm += _pi;
32435       _pi *= SWIG_MAXCASTRANK;
32436       {
32437         {
32438           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(18), NULL);
32439           _v = SWIG_CheckState(res);
32440         }
32441       }
32442       if (!_v) goto check_25;
32443       _ranki += _v*_pi;
32444       _rankm += _pi;
32445       _pi *= SWIG_MAXCASTRANK;
32446       {
32447         {
32448           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(19), NULL);
32449           _v = SWIG_CheckState(res);
32450         }
32451       }
32452       if (!_v) goto check_25;
32453       _ranki += _v*_pi;
32454       _rankm += _pi;
32455       _pi *= SWIG_MAXCASTRANK;
32456       {
32457         {
32458           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(20), NULL);
32459           _v = SWIG_CheckState(res);
32460         }
32461       }
32462       if (!_v) goto check_25;
32463       _ranki += _v*_pi;
32464       _rankm += _pi;
32465       _pi *= SWIG_MAXCASTRANK;
32466       {
32467         {
32468           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(21), NULL);
32469           _v = SWIG_CheckState(res);
32470         }
32471       }
32472       if (!_v) goto check_25;
32473       _ranki += _v*_pi;
32474       _rankm += _pi;
32475       _pi *= SWIG_MAXCASTRANK;
32476       {
32477         {
32478           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(22), NULL);
32479           _v = SWIG_CheckState(res);
32480         }
32481       }
32482       if (!_v) goto check_25;
32483       _ranki += _v*_pi;
32484       _rankm += _pi;
32485       _pi *= SWIG_MAXCASTRANK;
32486       {
32487         {
32488           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(23), NULL);
32489           _v = SWIG_CheckState(res);
32490         }
32491       }
32492       if (!_v) goto check_25;
32493       _ranki += _v*_pi;
32494       _rankm += _pi;
32495       _pi *= SWIG_MAXCASTRANK;
32496       if (!_index || (_ranki < _rank)) {
32497         _rank = _ranki; _index = 25;
32498         if (_rank == _rankm) goto dispatch;
32499       }
32500     }
32501   check_25:
32502 
32503   dispatch:
32504     switch(_index) {
32505     case 1:
32506       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_24); return;
32507     case 2:
32508       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_23); return;
32509     case 3:
32510       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_22); return;
32511     case 4:
32512       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_21); return;
32513     case 5:
32514       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_20); return;
32515     case 6:
32516       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_19); return;
32517     case 7:
32518       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_18); return;
32519     case 8:
32520       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_17); return;
32521     case 9:
32522       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_16); return;
32523     case 10:
32524       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_15); return;
32525     case 11:
32526       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_14); return;
32527     case 12:
32528       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_13); return;
32529     case 13:
32530       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_12); return;
32531     case 14:
32532       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_11); return;
32533     case 15:
32534       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_10); return;
32535     case 16:
32536       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_9); return;
32537     case 17:
32538       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_8); return;
32539     case 18:
32540       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_7); return;
32541     case 19:
32542       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_6); return;
32543     case 20:
32544       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_5); return;
32545     case 21:
32546       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_4); return;
32547     case 22:
32548       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_3); return;
32549     case 23:
32550       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_2); return;
32551     case 24:
32552       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_1); return;
32553     case 25:
32554       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_md__SWIG_0); return;
32555     }
32556   }
32557 
32558   croak("No matching function for overloaded 'new_md'");
32559   XSRETURN(0);
32560 }
32561 
32562 
XS(_wrap_delete_md)32563 XS(_wrap_delete_md) {
32564   {
32565     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
32566     void *argp1 = 0 ;
32567     int res1 = 0 ;
32568     int argvi = 0;
32569     dXSARGS;
32570 
32571     if ((items < 1) || (items > 1)) {
32572       SWIG_croak("Usage: delete_md(self);");
32573     }
32574     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, SWIG_POINTER_DISOWN |  0 );
32575     if (!SWIG_IsOK(res1)) {
32576       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_md" "', argument " "1"" of type '" "vrna_md_t *""'");
32577     }
32578     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
32579     {
32580       try {
32581         delete_vrna_md_t(arg1);
32582       } catch (const std::exception& e) {
32583         SWIG_exception(SWIG_RuntimeError, e.what());
32584       }
32585     }
32586     ST(argvi) = &PL_sv_undef;
32587 
32588     XSRETURN(argvi);
32589   fail:
32590 
32591     SWIG_croak_null();
32592   }
32593 }
32594 
32595 
XS(_wrap_md_reset)32596 XS(_wrap_md_reset) {
32597   {
32598     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
32599     void *argp1 = 0 ;
32600     int res1 = 0 ;
32601     int argvi = 0;
32602     dXSARGS;
32603 
32604     if ((items < 1) || (items > 1)) {
32605       SWIG_croak("Usage: md_reset(self);");
32606     }
32607     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
32608     if (!SWIG_IsOK(res1)) {
32609       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_reset" "', argument " "1"" of type '" "vrna_md_t *""'");
32610     }
32611     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
32612     {
32613       try {
32614         vrna_md_t_reset(arg1);
32615       } catch (const std::exception& e) {
32616         SWIG_exception(SWIG_RuntimeError, e.what());
32617       }
32618     }
32619     ST(argvi) = &PL_sv_undef;
32620 
32621     XSRETURN(argvi);
32622   fail:
32623 
32624     SWIG_croak_null();
32625   }
32626 }
32627 
32628 
XS(_wrap_md_set_from_globals)32629 XS(_wrap_md_set_from_globals) {
32630   {
32631     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
32632     void *argp1 = 0 ;
32633     int res1 = 0 ;
32634     int argvi = 0;
32635     dXSARGS;
32636 
32637     if ((items < 1) || (items > 1)) {
32638       SWIG_croak("Usage: md_set_from_globals(self);");
32639     }
32640     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
32641     if (!SWIG_IsOK(res1)) {
32642       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_set_from_globals" "', argument " "1"" of type '" "vrna_md_t *""'");
32643     }
32644     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
32645     {
32646       try {
32647         vrna_md_t_set_from_globals(arg1);
32648       } catch (const std::exception& e) {
32649         SWIG_exception(SWIG_RuntimeError, e.what());
32650       }
32651     }
32652     ST(argvi) = &PL_sv_undef;
32653 
32654     XSRETURN(argvi);
32655   fail:
32656 
32657     SWIG_croak_null();
32658   }
32659 }
32660 
32661 
XS(_wrap_md_option_string)32662 XS(_wrap_md_option_string) {
32663   {
32664     vrna_md_t *arg1 = (vrna_md_t *) 0 ;
32665     void *argp1 = 0 ;
32666     int res1 = 0 ;
32667     int argvi = 0;
32668     char *result = 0 ;
32669     dXSARGS;
32670 
32671     if ((items < 1) || (items > 1)) {
32672       SWIG_croak("Usage: md_option_string(self);");
32673     }
32674     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_md_t, 0 |  0 );
32675     if (!SWIG_IsOK(res1)) {
32676       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "md_option_string" "', argument " "1"" of type '" "vrna_md_t *""'");
32677     }
32678     arg1 = reinterpret_cast< vrna_md_t * >(argp1);
32679     {
32680       try {
32681         result = (char *)vrna_md_t_option_string(arg1);
32682       } catch (const std::exception& e) {
32683         SWIG_exception(SWIG_RuntimeError, e.what());
32684       }
32685     }
32686     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
32687 
32688     XSRETURN(argvi);
32689   fail:
32690 
32691     SWIG_croak_null();
32692   }
32693 }
32694 
32695 
XS(_wrap_init_rand)32696 XS(_wrap_init_rand) {
32697   {
32698     int argvi = 0;
32699     dXSARGS;
32700 
32701     if ((items < 0) || (items > 0)) {
32702       SWIG_croak("Usage: init_rand();");
32703     }
32704     {
32705       try {
32706         init_rand();
32707       } catch (const std::exception& e) {
32708         SWIG_exception(SWIG_RuntimeError, e.what());
32709       }
32710     }
32711     ST(argvi) = &PL_sv_undef;
32712     XSRETURN(argvi);
32713   fail:
32714     SWIG_croak_null();
32715   }
32716 }
32717 
32718 
XS(_wrap_urn)32719 XS(_wrap_urn) {
32720   {
32721     int argvi = 0;
32722     double result;
32723     dXSARGS;
32724 
32725     if ((items < 0) || (items > 0)) {
32726       SWIG_croak("Usage: urn();");
32727     }
32728     {
32729       try {
32730         result = (double)urn();
32731       } catch (const std::exception& e) {
32732         SWIG_exception(SWIG_RuntimeError, e.what());
32733       }
32734     }
32735     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
32736     XSRETURN(argvi);
32737   fail:
32738     SWIG_croak_null();
32739   }
32740 }
32741 
32742 
XS(_wrap_int_urn)32743 XS(_wrap_int_urn) {
32744   {
32745     int arg1 ;
32746     int arg2 ;
32747     int val1 ;
32748     int ecode1 = 0 ;
32749     int val2 ;
32750     int ecode2 = 0 ;
32751     int argvi = 0;
32752     int result;
32753     dXSARGS;
32754 
32755     if ((items < 2) || (items > 2)) {
32756       SWIG_croak("Usage: int_urn(from,to);");
32757     }
32758     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
32759     if (!SWIG_IsOK(ecode1)) {
32760       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "int_urn" "', argument " "1"" of type '" "int""'");
32761     }
32762     arg1 = static_cast< int >(val1);
32763     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
32764     if (!SWIG_IsOK(ecode2)) {
32765       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "int_urn" "', argument " "2"" of type '" "int""'");
32766     }
32767     arg2 = static_cast< int >(val2);
32768     {
32769       try {
32770         result = (int)int_urn(arg1,arg2);
32771       } catch (const std::exception& e) {
32772         SWIG_exception(SWIG_RuntimeError, e.what());
32773       }
32774     }
32775     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
32776 
32777 
32778     XSRETURN(argvi);
32779   fail:
32780 
32781 
32782     SWIG_croak_null();
32783   }
32784 }
32785 
32786 
XS(_wrap_hamming)32787 XS(_wrap_hamming) {
32788   {
32789     char *arg1 = (char *) 0 ;
32790     char *arg2 = (char *) 0 ;
32791     int res1 ;
32792     char *buf1 = 0 ;
32793     int alloc1 = 0 ;
32794     int res2 ;
32795     char *buf2 = 0 ;
32796     int alloc2 = 0 ;
32797     int argvi = 0;
32798     int result;
32799     dXSARGS;
32800 
32801     if ((items < 2) || (items > 2)) {
32802       SWIG_croak("Usage: hamming(s1,s2);");
32803     }
32804     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
32805     if (!SWIG_IsOK(res1)) {
32806       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "hamming" "', argument " "1"" of type '" "char const *""'");
32807     }
32808     arg1 = reinterpret_cast< char * >(buf1);
32809     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
32810     if (!SWIG_IsOK(res2)) {
32811       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "hamming" "', argument " "2"" of type '" "char const *""'");
32812     }
32813     arg2 = reinterpret_cast< char * >(buf2);
32814     {
32815       try {
32816         result = (int)my_hamming((char const *)arg1,(char const *)arg2);
32817       } catch (const std::exception& e) {
32818         SWIG_exception(SWIG_RuntimeError, e.what());
32819       }
32820     }
32821     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
32822     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
32823     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
32824     XSRETURN(argvi);
32825   fail:
32826     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
32827     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
32828     SWIG_croak_null();
32829   }
32830 }
32831 
32832 
XS(_wrap_hamming_bound)32833 XS(_wrap_hamming_bound) {
32834   {
32835     char *arg1 = (char *) 0 ;
32836     char *arg2 = (char *) 0 ;
32837     int arg3 ;
32838     int res1 ;
32839     char *buf1 = 0 ;
32840     int alloc1 = 0 ;
32841     int res2 ;
32842     char *buf2 = 0 ;
32843     int alloc2 = 0 ;
32844     int val3 ;
32845     int ecode3 = 0 ;
32846     int argvi = 0;
32847     int result;
32848     dXSARGS;
32849 
32850     if ((items < 3) || (items > 3)) {
32851       SWIG_croak("Usage: hamming_bound(s1,s2,n);");
32852     }
32853     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
32854     if (!SWIG_IsOK(res1)) {
32855       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "hamming_bound" "', argument " "1"" of type '" "char const *""'");
32856     }
32857     arg1 = reinterpret_cast< char * >(buf1);
32858     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
32859     if (!SWIG_IsOK(res2)) {
32860       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "hamming_bound" "', argument " "2"" of type '" "char const *""'");
32861     }
32862     arg2 = reinterpret_cast< char * >(buf2);
32863     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
32864     if (!SWIG_IsOK(ecode3)) {
32865       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "hamming_bound" "', argument " "3"" of type '" "int""'");
32866     }
32867     arg3 = static_cast< int >(val3);
32868     {
32869       try {
32870         result = (int)my_hamming_bound((char const *)arg1,(char const *)arg2,arg3);
32871       } catch (const std::exception& e) {
32872         SWIG_exception(SWIG_RuntimeError, e.what());
32873       }
32874     }
32875     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
32876     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
32877     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
32878 
32879     XSRETURN(argvi);
32880   fail:
32881     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
32882     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
32883 
32884     SWIG_croak_null();
32885   }
32886 }
32887 
32888 
XS(_wrap_encode_seq)32889 XS(_wrap_encode_seq) {
32890   {
32891     char *arg1 = (char *) 0 ;
32892     int res1 ;
32893     char *buf1 = 0 ;
32894     int alloc1 = 0 ;
32895     int argvi = 0;
32896     short *result = 0 ;
32897     dXSARGS;
32898 
32899     if ((items < 1) || (items > 1)) {
32900       SWIG_croak("Usage: encode_seq(sequence);");
32901     }
32902     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
32903     if (!SWIG_IsOK(res1)) {
32904       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "encode_seq" "', argument " "1"" of type '" "char *""'");
32905     }
32906     arg1 = reinterpret_cast< char * >(buf1);
32907     {
32908       try {
32909         result = (short *)encode_seq(arg1);
32910       } catch (const std::exception& e) {
32911         SWIG_exception(SWIG_RuntimeError, e.what());
32912       }
32913     }
32914     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_short, 0 | 0); argvi++ ;
32915     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
32916     XSRETURN(argvi);
32917   fail:
32918     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
32919     SWIG_croak_null();
32920   }
32921 }
32922 
32923 
XS(_wrap_random_string)32924 XS(_wrap_random_string) {
32925   {
32926     int arg1 ;
32927     char *arg2 ;
32928     int val1 ;
32929     int ecode1 = 0 ;
32930     int res2 ;
32931     char *buf2 = 0 ;
32932     int alloc2 = 0 ;
32933     int argvi = 0;
32934     char *result = 0 ;
32935     dXSARGS;
32936 
32937     if ((items < 2) || (items > 2)) {
32938       SWIG_croak("Usage: random_string(l,symbols);");
32939     }
32940     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
32941     if (!SWIG_IsOK(ecode1)) {
32942       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "random_string" "', argument " "1"" of type '" "int""'");
32943     }
32944     arg1 = static_cast< int >(val1);
32945     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
32946     if (!SWIG_IsOK(res2)) {
32947       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "random_string" "', argument " "2"" of type '" "char const []""'");
32948     }
32949     arg2 = reinterpret_cast< char * >(buf2);
32950     {
32951       try {
32952         result = (char *)vrna_random_string(arg1,(char const (*))arg2);
32953       } catch (const std::exception& e) {
32954         SWIG_exception(SWIG_RuntimeError, e.what());
32955       }
32956     }
32957     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
32958 
32959     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
32960     delete[] result;
32961     XSRETURN(argvi);
32962   fail:
32963 
32964     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
32965     SWIG_croak_null();
32966   }
32967 }
32968 
32969 
XS(_wrap_hamming_distance)32970 XS(_wrap_hamming_distance) {
32971   {
32972     char *arg1 = (char *) 0 ;
32973     char *arg2 = (char *) 0 ;
32974     int res1 ;
32975     char *buf1 = 0 ;
32976     int alloc1 = 0 ;
32977     int res2 ;
32978     char *buf2 = 0 ;
32979     int alloc2 = 0 ;
32980     int argvi = 0;
32981     int result;
32982     dXSARGS;
32983 
32984     if ((items < 2) || (items > 2)) {
32985       SWIG_croak("Usage: hamming_distance(s1,s2);");
32986     }
32987     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
32988     if (!SWIG_IsOK(res1)) {
32989       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "hamming_distance" "', argument " "1"" of type '" "char const *""'");
32990     }
32991     arg1 = reinterpret_cast< char * >(buf1);
32992     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
32993     if (!SWIG_IsOK(res2)) {
32994       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "hamming_distance" "', argument " "2"" of type '" "char const *""'");
32995     }
32996     arg2 = reinterpret_cast< char * >(buf2);
32997     {
32998       try {
32999         result = (int)vrna_hamming_distance((char const *)arg1,(char const *)arg2);
33000       } catch (const std::exception& e) {
33001         SWIG_exception(SWIG_RuntimeError, e.what());
33002       }
33003     }
33004     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
33005     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33006     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
33007     XSRETURN(argvi);
33008   fail:
33009     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33010     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
33011     SWIG_croak_null();
33012   }
33013 }
33014 
33015 
XS(_wrap_hamming_distance_bound)33016 XS(_wrap_hamming_distance_bound) {
33017   {
33018     char *arg1 = (char *) 0 ;
33019     char *arg2 = (char *) 0 ;
33020     int arg3 ;
33021     int res1 ;
33022     char *buf1 = 0 ;
33023     int alloc1 = 0 ;
33024     int res2 ;
33025     char *buf2 = 0 ;
33026     int alloc2 = 0 ;
33027     int val3 ;
33028     int ecode3 = 0 ;
33029     int argvi = 0;
33030     int result;
33031     dXSARGS;
33032 
33033     if ((items < 3) || (items > 3)) {
33034       SWIG_croak("Usage: hamming_distance_bound(s1,s2,n);");
33035     }
33036     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
33037     if (!SWIG_IsOK(res1)) {
33038       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "hamming_distance_bound" "', argument " "1"" of type '" "char const *""'");
33039     }
33040     arg1 = reinterpret_cast< char * >(buf1);
33041     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
33042     if (!SWIG_IsOK(res2)) {
33043       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "hamming_distance_bound" "', argument " "2"" of type '" "char const *""'");
33044     }
33045     arg2 = reinterpret_cast< char * >(buf2);
33046     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
33047     if (!SWIG_IsOK(ecode3)) {
33048       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "hamming_distance_bound" "', argument " "3"" of type '" "int""'");
33049     }
33050     arg3 = static_cast< int >(val3);
33051     {
33052       try {
33053         result = (int)vrna_hamming_distance_bound((char const *)arg1,(char const *)arg2,arg3);
33054       } catch (const std::exception& e) {
33055         SWIG_exception(SWIG_RuntimeError, e.what());
33056       }
33057     }
33058     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
33059     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33060     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
33061 
33062     XSRETURN(argvi);
33063   fail:
33064     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33065     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
33066 
33067     SWIG_croak_null();
33068   }
33069 }
33070 
33071 
XS(_wrap_ep_i_set)33072 XS(_wrap_ep_i_set) {
33073   {
33074     vrna_ep_t *arg1 = (vrna_ep_t *) 0 ;
33075     int arg2 ;
33076     void *argp1 = 0 ;
33077     int res1 = 0 ;
33078     int val2 ;
33079     int ecode2 = 0 ;
33080     int argvi = 0;
33081     dXSARGS;
33082 
33083     if ((items < 2) || (items > 2)) {
33084       SWIG_croak("Usage: ep_i_set(self,i);");
33085     }
33086     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_ep_t, 0 |  0 );
33087     if (!SWIG_IsOK(res1)) {
33088       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ep_i_set" "', argument " "1"" of type '" "vrna_ep_t *""'");
33089     }
33090     arg1 = reinterpret_cast< vrna_ep_t * >(argp1);
33091     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
33092     if (!SWIG_IsOK(ecode2)) {
33093       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ep_i_set" "', argument " "2"" of type '" "int""'");
33094     }
33095     arg2 = static_cast< int >(val2);
33096     if (arg1) (arg1)->i = arg2;
33097     ST(argvi) = &PL_sv_undef;
33098 
33099 
33100     XSRETURN(argvi);
33101   fail:
33102 
33103 
33104     SWIG_croak_null();
33105   }
33106 }
33107 
33108 
XS(_wrap_ep_i_get)33109 XS(_wrap_ep_i_get) {
33110   {
33111     vrna_ep_t *arg1 = (vrna_ep_t *) 0 ;
33112     void *argp1 = 0 ;
33113     int res1 = 0 ;
33114     int argvi = 0;
33115     int result;
33116     dXSARGS;
33117 
33118     if ((items < 1) || (items > 1)) {
33119       SWIG_croak("Usage: ep_i_get(self);");
33120     }
33121     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_ep_t, 0 |  0 );
33122     if (!SWIG_IsOK(res1)) {
33123       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ep_i_get" "', argument " "1"" of type '" "vrna_ep_t *""'");
33124     }
33125     arg1 = reinterpret_cast< vrna_ep_t * >(argp1);
33126     result = (int) ((arg1)->i);
33127     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
33128 
33129     XSRETURN(argvi);
33130   fail:
33131 
33132     SWIG_croak_null();
33133   }
33134 }
33135 
33136 
XS(_wrap_ep_j_set)33137 XS(_wrap_ep_j_set) {
33138   {
33139     vrna_ep_t *arg1 = (vrna_ep_t *) 0 ;
33140     int arg2 ;
33141     void *argp1 = 0 ;
33142     int res1 = 0 ;
33143     int val2 ;
33144     int ecode2 = 0 ;
33145     int argvi = 0;
33146     dXSARGS;
33147 
33148     if ((items < 2) || (items > 2)) {
33149       SWIG_croak("Usage: ep_j_set(self,j);");
33150     }
33151     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_ep_t, 0 |  0 );
33152     if (!SWIG_IsOK(res1)) {
33153       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ep_j_set" "', argument " "1"" of type '" "vrna_ep_t *""'");
33154     }
33155     arg1 = reinterpret_cast< vrna_ep_t * >(argp1);
33156     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
33157     if (!SWIG_IsOK(ecode2)) {
33158       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ep_j_set" "', argument " "2"" of type '" "int""'");
33159     }
33160     arg2 = static_cast< int >(val2);
33161     if (arg1) (arg1)->j = arg2;
33162     ST(argvi) = &PL_sv_undef;
33163 
33164 
33165     XSRETURN(argvi);
33166   fail:
33167 
33168 
33169     SWIG_croak_null();
33170   }
33171 }
33172 
33173 
XS(_wrap_ep_j_get)33174 XS(_wrap_ep_j_get) {
33175   {
33176     vrna_ep_t *arg1 = (vrna_ep_t *) 0 ;
33177     void *argp1 = 0 ;
33178     int res1 = 0 ;
33179     int argvi = 0;
33180     int result;
33181     dXSARGS;
33182 
33183     if ((items < 1) || (items > 1)) {
33184       SWIG_croak("Usage: ep_j_get(self);");
33185     }
33186     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_ep_t, 0 |  0 );
33187     if (!SWIG_IsOK(res1)) {
33188       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ep_j_get" "', argument " "1"" of type '" "vrna_ep_t *""'");
33189     }
33190     arg1 = reinterpret_cast< vrna_ep_t * >(argp1);
33191     result = (int) ((arg1)->j);
33192     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
33193 
33194     XSRETURN(argvi);
33195   fail:
33196 
33197     SWIG_croak_null();
33198   }
33199 }
33200 
33201 
XS(_wrap_ep_p_set)33202 XS(_wrap_ep_p_set) {
33203   {
33204     vrna_ep_t *arg1 = (vrna_ep_t *) 0 ;
33205     float arg2 ;
33206     void *argp1 = 0 ;
33207     int res1 = 0 ;
33208     float val2 ;
33209     int ecode2 = 0 ;
33210     int argvi = 0;
33211     dXSARGS;
33212 
33213     if ((items < 2) || (items > 2)) {
33214       SWIG_croak("Usage: ep_p_set(self,p);");
33215     }
33216     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_ep_t, 0 |  0 );
33217     if (!SWIG_IsOK(res1)) {
33218       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ep_p_set" "', argument " "1"" of type '" "vrna_ep_t *""'");
33219     }
33220     arg1 = reinterpret_cast< vrna_ep_t * >(argp1);
33221     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
33222     if (!SWIG_IsOK(ecode2)) {
33223       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ep_p_set" "', argument " "2"" of type '" "float""'");
33224     }
33225     arg2 = static_cast< float >(val2);
33226     if (arg1) (arg1)->p = arg2;
33227     ST(argvi) = &PL_sv_undef;
33228 
33229 
33230     XSRETURN(argvi);
33231   fail:
33232 
33233 
33234     SWIG_croak_null();
33235   }
33236 }
33237 
33238 
XS(_wrap_ep_p_get)33239 XS(_wrap_ep_p_get) {
33240   {
33241     vrna_ep_t *arg1 = (vrna_ep_t *) 0 ;
33242     void *argp1 = 0 ;
33243     int res1 = 0 ;
33244     int argvi = 0;
33245     float result;
33246     dXSARGS;
33247 
33248     if ((items < 1) || (items > 1)) {
33249       SWIG_croak("Usage: ep_p_get(self);");
33250     }
33251     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_ep_t, 0 |  0 );
33252     if (!SWIG_IsOK(res1)) {
33253       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ep_p_get" "', argument " "1"" of type '" "vrna_ep_t *""'");
33254     }
33255     arg1 = reinterpret_cast< vrna_ep_t * >(argp1);
33256     result = (float) ((arg1)->p);
33257     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
33258 
33259     XSRETURN(argvi);
33260   fail:
33261 
33262     SWIG_croak_null();
33263   }
33264 }
33265 
33266 
XS(_wrap_ep_type_set)33267 XS(_wrap_ep_type_set) {
33268   {
33269     vrna_ep_t *arg1 = (vrna_ep_t *) 0 ;
33270     int arg2 ;
33271     void *argp1 = 0 ;
33272     int res1 = 0 ;
33273     int val2 ;
33274     int ecode2 = 0 ;
33275     int argvi = 0;
33276     dXSARGS;
33277 
33278     if ((items < 2) || (items > 2)) {
33279       SWIG_croak("Usage: ep_type_set(self,type);");
33280     }
33281     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_ep_t, 0 |  0 );
33282     if (!SWIG_IsOK(res1)) {
33283       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ep_type_set" "', argument " "1"" of type '" "vrna_ep_t *""'");
33284     }
33285     arg1 = reinterpret_cast< vrna_ep_t * >(argp1);
33286     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
33287     if (!SWIG_IsOK(ecode2)) {
33288       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ep_type_set" "', argument " "2"" of type '" "int""'");
33289     }
33290     arg2 = static_cast< int >(val2);
33291     if (arg1) (arg1)->type = arg2;
33292     ST(argvi) = &PL_sv_undef;
33293 
33294 
33295     XSRETURN(argvi);
33296   fail:
33297 
33298 
33299     SWIG_croak_null();
33300   }
33301 }
33302 
33303 
XS(_wrap_ep_type_get)33304 XS(_wrap_ep_type_get) {
33305   {
33306     vrna_ep_t *arg1 = (vrna_ep_t *) 0 ;
33307     void *argp1 = 0 ;
33308     int res1 = 0 ;
33309     int argvi = 0;
33310     int result;
33311     dXSARGS;
33312 
33313     if ((items < 1) || (items > 1)) {
33314       SWIG_croak("Usage: ep_type_get(self);");
33315     }
33316     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_ep_t, 0 |  0 );
33317     if (!SWIG_IsOK(res1)) {
33318       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ep_type_get" "', argument " "1"" of type '" "vrna_ep_t *""'");
33319     }
33320     arg1 = reinterpret_cast< vrna_ep_t * >(argp1);
33321     result = (int) ((arg1)->type);
33322     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
33323 
33324     XSRETURN(argvi);
33325   fail:
33326 
33327     SWIG_croak_null();
33328   }
33329 }
33330 
33331 
XS(_wrap_new_ep__SWIG_0)33332 XS(_wrap_new_ep__SWIG_0) {
33333   {
33334     unsigned int arg1 ;
33335     unsigned int arg2 ;
33336     float arg3 ;
33337     int arg4 ;
33338     unsigned int val1 ;
33339     int ecode1 = 0 ;
33340     unsigned int val2 ;
33341     int ecode2 = 0 ;
33342     float val3 ;
33343     int ecode3 = 0 ;
33344     int val4 ;
33345     int ecode4 = 0 ;
33346     int argvi = 0;
33347     vrna_ep_t *result = 0 ;
33348     dXSARGS;
33349 
33350     if ((items < 4) || (items > 4)) {
33351       SWIG_croak("Usage: new_ep(i,j,p,type);");
33352     }
33353     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
33354     if (!SWIG_IsOK(ecode1)) {
33355       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_ep" "', argument " "1"" of type '" "unsigned int""'");
33356     }
33357     arg1 = static_cast< unsigned int >(val1);
33358     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
33359     if (!SWIG_IsOK(ecode2)) {
33360       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_ep" "', argument " "2"" of type '" "unsigned int""'");
33361     }
33362     arg2 = static_cast< unsigned int >(val2);
33363     ecode3 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
33364     if (!SWIG_IsOK(ecode3)) {
33365       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_ep" "', argument " "3"" of type '" "float""'");
33366     }
33367     arg3 = static_cast< float >(val3);
33368     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
33369     if (!SWIG_IsOK(ecode4)) {
33370       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_ep" "', argument " "4"" of type '" "int""'");
33371     }
33372     arg4 = static_cast< int >(val4);
33373     {
33374       try {
33375         result = (vrna_ep_t *)new_vrna_ep_t__SWIG_0(arg1,arg2,arg3,arg4);
33376       } catch (const std::exception& e) {
33377         SWIG_exception(SWIG_RuntimeError, e.what());
33378       }
33379     }
33380     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_ep_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
33381 
33382 
33383 
33384 
33385     XSRETURN(argvi);
33386   fail:
33387 
33388 
33389 
33390 
33391     SWIG_croak_null();
33392   }
33393 }
33394 
33395 
XS(_wrap_new_ep__SWIG_1)33396 XS(_wrap_new_ep__SWIG_1) {
33397   {
33398     unsigned int arg1 ;
33399     unsigned int arg2 ;
33400     float arg3 ;
33401     unsigned int val1 ;
33402     int ecode1 = 0 ;
33403     unsigned int val2 ;
33404     int ecode2 = 0 ;
33405     float val3 ;
33406     int ecode3 = 0 ;
33407     int argvi = 0;
33408     vrna_ep_t *result = 0 ;
33409     dXSARGS;
33410 
33411     if ((items < 3) || (items > 3)) {
33412       SWIG_croak("Usage: new_ep(i,j,p);");
33413     }
33414     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
33415     if (!SWIG_IsOK(ecode1)) {
33416       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_ep" "', argument " "1"" of type '" "unsigned int""'");
33417     }
33418     arg1 = static_cast< unsigned int >(val1);
33419     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
33420     if (!SWIG_IsOK(ecode2)) {
33421       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_ep" "', argument " "2"" of type '" "unsigned int""'");
33422     }
33423     arg2 = static_cast< unsigned int >(val2);
33424     ecode3 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
33425     if (!SWIG_IsOK(ecode3)) {
33426       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_ep" "', argument " "3"" of type '" "float""'");
33427     }
33428     arg3 = static_cast< float >(val3);
33429     {
33430       try {
33431         result = (vrna_ep_t *)new_vrna_ep_t__SWIG_0(arg1,arg2,arg3);
33432       } catch (const std::exception& e) {
33433         SWIG_exception(SWIG_RuntimeError, e.what());
33434       }
33435     }
33436     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_ep_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
33437 
33438 
33439 
33440     XSRETURN(argvi);
33441   fail:
33442 
33443 
33444 
33445     SWIG_croak_null();
33446   }
33447 }
33448 
33449 
XS(_wrap_new_ep__SWIG_2)33450 XS(_wrap_new_ep__SWIG_2) {
33451   {
33452     unsigned int arg1 ;
33453     unsigned int arg2 ;
33454     unsigned int val1 ;
33455     int ecode1 = 0 ;
33456     unsigned int val2 ;
33457     int ecode2 = 0 ;
33458     int argvi = 0;
33459     vrna_ep_t *result = 0 ;
33460     dXSARGS;
33461 
33462     if ((items < 2) || (items > 2)) {
33463       SWIG_croak("Usage: new_ep(i,j);");
33464     }
33465     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
33466     if (!SWIG_IsOK(ecode1)) {
33467       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_ep" "', argument " "1"" of type '" "unsigned int""'");
33468     }
33469     arg1 = static_cast< unsigned int >(val1);
33470     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
33471     if (!SWIG_IsOK(ecode2)) {
33472       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_ep" "', argument " "2"" of type '" "unsigned int""'");
33473     }
33474     arg2 = static_cast< unsigned int >(val2);
33475     {
33476       try {
33477         result = (vrna_ep_t *)new_vrna_ep_t__SWIG_0(arg1,arg2);
33478       } catch (const std::exception& e) {
33479         SWIG_exception(SWIG_RuntimeError, e.what());
33480       }
33481     }
33482     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_ep_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
33483 
33484 
33485     XSRETURN(argvi);
33486   fail:
33487 
33488 
33489     SWIG_croak_null();
33490   }
33491 }
33492 
33493 
XS(_wrap_new_ep)33494 XS(_wrap_new_ep) {
33495   dXSARGS;
33496 
33497   {
33498     unsigned long _index = 0;
33499     SWIG_TypeRank _rank = 0;
33500     if (items == 2) {
33501       SWIG_TypeRank _ranki = 0;
33502       SWIG_TypeRank _rankm = 0;
33503       SWIG_TypeRank _pi = 1;
33504       int _v = 0;
33505       {
33506         {
33507           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
33508           _v = SWIG_CheckState(res);
33509         }
33510       }
33511       if (!_v) goto check_1;
33512       _ranki += _v*_pi;
33513       _rankm += _pi;
33514       _pi *= SWIG_MAXCASTRANK;
33515       {
33516         {
33517           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
33518           _v = SWIG_CheckState(res);
33519         }
33520       }
33521       if (!_v) goto check_1;
33522       _ranki += _v*_pi;
33523       _rankm += _pi;
33524       _pi *= SWIG_MAXCASTRANK;
33525       if (!_index || (_ranki < _rank)) {
33526         _rank = _ranki; _index = 1;
33527         if (_rank == _rankm) goto dispatch;
33528       }
33529     }
33530   check_1:
33531 
33532     if (items == 3) {
33533       SWIG_TypeRank _ranki = 0;
33534       SWIG_TypeRank _rankm = 0;
33535       SWIG_TypeRank _pi = 1;
33536       int _v = 0;
33537       {
33538         {
33539           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
33540           _v = SWIG_CheckState(res);
33541         }
33542       }
33543       if (!_v) goto check_2;
33544       _ranki += _v*_pi;
33545       _rankm += _pi;
33546       _pi *= SWIG_MAXCASTRANK;
33547       {
33548         {
33549           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
33550           _v = SWIG_CheckState(res);
33551         }
33552       }
33553       if (!_v) goto check_2;
33554       _ranki += _v*_pi;
33555       _rankm += _pi;
33556       _pi *= SWIG_MAXCASTRANK;
33557       {
33558         {
33559           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
33560           _v = SWIG_CheckState(res);
33561         }
33562       }
33563       if (!_v) goto check_2;
33564       _ranki += _v*_pi;
33565       _rankm += _pi;
33566       _pi *= SWIG_MAXCASTRANK;
33567       if (!_index || (_ranki < _rank)) {
33568         _rank = _ranki; _index = 2;
33569         if (_rank == _rankm) goto dispatch;
33570       }
33571     }
33572   check_2:
33573 
33574     if (items == 4) {
33575       SWIG_TypeRank _ranki = 0;
33576       SWIG_TypeRank _rankm = 0;
33577       SWIG_TypeRank _pi = 1;
33578       int _v = 0;
33579       {
33580         {
33581           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
33582           _v = SWIG_CheckState(res);
33583         }
33584       }
33585       if (!_v) goto check_3;
33586       _ranki += _v*_pi;
33587       _rankm += _pi;
33588       _pi *= SWIG_MAXCASTRANK;
33589       {
33590         {
33591           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
33592           _v = SWIG_CheckState(res);
33593         }
33594       }
33595       if (!_v) goto check_3;
33596       _ranki += _v*_pi;
33597       _rankm += _pi;
33598       _pi *= SWIG_MAXCASTRANK;
33599       {
33600         {
33601           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
33602           _v = SWIG_CheckState(res);
33603         }
33604       }
33605       if (!_v) goto check_3;
33606       _ranki += _v*_pi;
33607       _rankm += _pi;
33608       _pi *= SWIG_MAXCASTRANK;
33609       {
33610         {
33611           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
33612           _v = SWIG_CheckState(res);
33613         }
33614       }
33615       if (!_v) goto check_3;
33616       _ranki += _v*_pi;
33617       _rankm += _pi;
33618       _pi *= SWIG_MAXCASTRANK;
33619       if (!_index || (_ranki < _rank)) {
33620         _rank = _ranki; _index = 3;
33621         if (_rank == _rankm) goto dispatch;
33622       }
33623     }
33624   check_3:
33625 
33626   dispatch:
33627     switch(_index) {
33628     case 1:
33629       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_ep__SWIG_2); return;
33630     case 2:
33631       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_ep__SWIG_1); return;
33632     case 3:
33633       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_ep__SWIG_0); return;
33634     }
33635   }
33636 
33637   croak("No matching function for overloaded 'new_ep'");
33638   XSRETURN(0);
33639 }
33640 
33641 
XS(_wrap_delete_ep)33642 XS(_wrap_delete_ep) {
33643   {
33644     vrna_ep_t *arg1 = (vrna_ep_t *) 0 ;
33645     void *argp1 = 0 ;
33646     int res1 = 0 ;
33647     int argvi = 0;
33648     dXSARGS;
33649 
33650     if ((items < 1) || (items > 1)) {
33651       SWIG_croak("Usage: delete_ep(self);");
33652     }
33653     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_ep_t, SWIG_POINTER_DISOWN |  0 );
33654     if (!SWIG_IsOK(res1)) {
33655       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_ep" "', argument " "1"" of type '" "vrna_ep_t *""'");
33656     }
33657     arg1 = reinterpret_cast< vrna_ep_t * >(argp1);
33658     {
33659       try {
33660         delete arg1;
33661       } catch (const std::exception& e) {
33662         SWIG_exception(SWIG_RuntimeError, e.what());
33663       }
33664     }
33665     ST(argvi) = &PL_sv_undef;
33666 
33667     XSRETURN(argvi);
33668   fail:
33669 
33670     SWIG_croak_null();
33671   }
33672 }
33673 
33674 
XS(_wrap_pack_structure)33675 XS(_wrap_pack_structure) {
33676   {
33677     char *arg1 = (char *) 0 ;
33678     int res1 ;
33679     char *buf1 = 0 ;
33680     int alloc1 = 0 ;
33681     int argvi = 0;
33682     char *result = 0 ;
33683     dXSARGS;
33684 
33685     if ((items < 1) || (items > 1)) {
33686       SWIG_croak("Usage: pack_structure(s);");
33687     }
33688     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
33689     if (!SWIG_IsOK(res1)) {
33690       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "pack_structure" "', argument " "1"" of type '" "char const *""'");
33691     }
33692     arg1 = reinterpret_cast< char * >(buf1);
33693     {
33694       try {
33695         result = (char *)my_pack_structure((char const *)arg1);
33696       } catch (const std::exception& e) {
33697         SWIG_exception(SWIG_RuntimeError, e.what());
33698       }
33699     }
33700     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
33701     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33702     delete[] result;
33703     XSRETURN(argvi);
33704   fail:
33705     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33706     SWIG_croak_null();
33707   }
33708 }
33709 
33710 
XS(_wrap_unpack_structure)33711 XS(_wrap_unpack_structure) {
33712   {
33713     char *arg1 = (char *) 0 ;
33714     int res1 ;
33715     char *buf1 = 0 ;
33716     int alloc1 = 0 ;
33717     int argvi = 0;
33718     char *result = 0 ;
33719     dXSARGS;
33720 
33721     if ((items < 1) || (items > 1)) {
33722       SWIG_croak("Usage: unpack_structure(packed);");
33723     }
33724     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
33725     if (!SWIG_IsOK(res1)) {
33726       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "unpack_structure" "', argument " "1"" of type '" "char const *""'");
33727     }
33728     arg1 = reinterpret_cast< char * >(buf1);
33729     {
33730       try {
33731         result = (char *)my_unpack_structure((char const *)arg1);
33732       } catch (const std::exception& e) {
33733         SWIG_exception(SWIG_RuntimeError, e.what());
33734       }
33735     }
33736     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
33737     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33738     delete[] result;
33739     XSRETURN(argvi);
33740   fail:
33741     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33742     SWIG_croak_null();
33743   }
33744 }
33745 
33746 
XS(_wrap_db_from_ptable)33747 XS(_wrap_db_from_ptable) {
33748   {
33749     std::vector< int > arg1 ;
33750     std::vector< int > *v1 ;
33751     int argvi = 0;
33752     char *result = 0 ;
33753     dXSARGS;
33754 
33755     if ((items < 1) || (items > 1)) {
33756       SWIG_croak("Usage: db_from_ptable(pt);");
33757     }
33758     {
33759       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
33760           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
33761         arg1 = *v1;
33762       } else if (SvROK(ST(0))) {
33763         AV *av = (AV *)SvRV(ST(0));
33764         if (SvTYPE(av) != SVt_PVAV)
33765         SWIG_croak("Type error in argument 1 of db_from_ptable. "
33766           "Expected an array of ""int");
33767         SV **tv;
33768         I32 len = av_len(av) + 1;
33769         for (int i=0; i<len; i++) {
33770           tv = av_fetch(av, i, 0);
33771           if (SvIOK(*tv)) {
33772             (&arg1)->push_back((int)SvIVX(*tv));
33773           } else {
33774             SWIG_croak("Type error in argument 1 of "
33775               "db_from_ptable. "
33776               "Expected an array of ""int");
33777           }
33778         }
33779       } else {
33780         SWIG_croak("Type error in argument 1 of db_from_ptable. "
33781           "Expected an array of ""int");
33782       }
33783     }
33784     {
33785       try {
33786         result = (char *)my_db_from_ptable(arg1);
33787       } catch (const std::exception& e) {
33788         SWIG_exception(SWIG_RuntimeError, e.what());
33789       }
33790     }
33791     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
33792     XSRETURN(argvi);
33793   fail:
33794     SWIG_croak_null();
33795   }
33796 }
33797 
33798 
XS(_wrap_db_flatten__SWIG_0)33799 XS(_wrap_db_flatten__SWIG_0) {
33800   {
33801     char *arg1 = (char *) 0 ;
33802     unsigned int arg2 ;
33803     int res1 ;
33804     char *buf1 = 0 ;
33805     int alloc1 = 0 ;
33806     unsigned int val2 ;
33807     int ecode2 = 0 ;
33808     int argvi = 0;
33809     dXSARGS;
33810 
33811     if ((items < 2) || (items > 2)) {
33812       SWIG_croak("Usage: db_flatten(structure,options);");
33813     }
33814     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
33815     if (!SWIG_IsOK(res1)) {
33816       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "db_flatten" "', argument " "1"" of type '" "char *""'");
33817     }
33818     arg1 = reinterpret_cast< char * >(buf1);
33819     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
33820     if (!SWIG_IsOK(ecode2)) {
33821       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "db_flatten" "', argument " "2"" of type '" "unsigned int""'");
33822     }
33823     arg2 = static_cast< unsigned int >(val2);
33824     {
33825       try {
33826         db_flatten(arg1,arg2);
33827       } catch (const std::exception& e) {
33828         SWIG_exception(SWIG_RuntimeError, e.what());
33829       }
33830     }
33831     ST(argvi) = &PL_sv_undef;
33832     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33833 
33834     XSRETURN(argvi);
33835   fail:
33836     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33837 
33838     SWIG_croak_null();
33839   }
33840 }
33841 
33842 
XS(_wrap_db_flatten__SWIG_1)33843 XS(_wrap_db_flatten__SWIG_1) {
33844   {
33845     char *arg1 = (char *) 0 ;
33846     int res1 ;
33847     char *buf1 = 0 ;
33848     int alloc1 = 0 ;
33849     int argvi = 0;
33850     dXSARGS;
33851 
33852     if ((items < 1) || (items > 1)) {
33853       SWIG_croak("Usage: db_flatten(structure);");
33854     }
33855     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
33856     if (!SWIG_IsOK(res1)) {
33857       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "db_flatten" "', argument " "1"" of type '" "char *""'");
33858     }
33859     arg1 = reinterpret_cast< char * >(buf1);
33860     {
33861       try {
33862         db_flatten(arg1);
33863       } catch (const std::exception& e) {
33864         SWIG_exception(SWIG_RuntimeError, e.what());
33865       }
33866     }
33867     ST(argvi) = &PL_sv_undef;
33868     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33869     XSRETURN(argvi);
33870   fail:
33871     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33872     SWIG_croak_null();
33873   }
33874 }
33875 
33876 
XS(_wrap_db_flatten__SWIG_2)33877 XS(_wrap_db_flatten__SWIG_2) {
33878   {
33879     char *arg1 = (char *) 0 ;
33880     std::string arg2 ;
33881     unsigned int arg3 ;
33882     int res1 ;
33883     char *buf1 = 0 ;
33884     int alloc1 = 0 ;
33885     unsigned int val3 ;
33886     int ecode3 = 0 ;
33887     int argvi = 0;
33888     dXSARGS;
33889 
33890     if ((items < 3) || (items > 3)) {
33891       SWIG_croak("Usage: db_flatten(structure,target,options);");
33892     }
33893     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
33894     if (!SWIG_IsOK(res1)) {
33895       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "db_flatten" "', argument " "1"" of type '" "char *""'");
33896     }
33897     arg1 = reinterpret_cast< char * >(buf1);
33898     {
33899       std::string *ptr = (std::string *)0;
33900       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
33901       if (!SWIG_IsOK(res) || !ptr) {
33902         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "db_flatten" "', argument " "2"" of type '" "std::string""'");
33903       }
33904       arg2 = *ptr;
33905       if (SWIG_IsNewObj(res)) delete ptr;
33906     }
33907     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
33908     if (!SWIG_IsOK(ecode3)) {
33909       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "db_flatten" "', argument " "3"" of type '" "unsigned int""'");
33910     }
33911     arg3 = static_cast< unsigned int >(val3);
33912     {
33913       try {
33914         db_flatten(arg1,arg2,arg3);
33915       } catch (const std::exception& e) {
33916         SWIG_exception(SWIG_RuntimeError, e.what());
33917       }
33918     }
33919     ST(argvi) = &PL_sv_undef;
33920     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33921 
33922 
33923     XSRETURN(argvi);
33924   fail:
33925     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33926 
33927 
33928     SWIG_croak_null();
33929   }
33930 }
33931 
33932 
XS(_wrap_db_flatten__SWIG_3)33933 XS(_wrap_db_flatten__SWIG_3) {
33934   {
33935     char *arg1 = (char *) 0 ;
33936     std::string arg2 ;
33937     int res1 ;
33938     char *buf1 = 0 ;
33939     int alloc1 = 0 ;
33940     int argvi = 0;
33941     dXSARGS;
33942 
33943     if ((items < 2) || (items > 2)) {
33944       SWIG_croak("Usage: db_flatten(structure,target);");
33945     }
33946     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
33947     if (!SWIG_IsOK(res1)) {
33948       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "db_flatten" "', argument " "1"" of type '" "char *""'");
33949     }
33950     arg1 = reinterpret_cast< char * >(buf1);
33951     {
33952       std::string *ptr = (std::string *)0;
33953       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
33954       if (!SWIG_IsOK(res) || !ptr) {
33955         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "db_flatten" "', argument " "2"" of type '" "std::string""'");
33956       }
33957       arg2 = *ptr;
33958       if (SWIG_IsNewObj(res)) delete ptr;
33959     }
33960     {
33961       try {
33962         db_flatten(arg1,arg2);
33963       } catch (const std::exception& e) {
33964         SWIG_exception(SWIG_RuntimeError, e.what());
33965       }
33966     }
33967     ST(argvi) = &PL_sv_undef;
33968     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33969 
33970     XSRETURN(argvi);
33971   fail:
33972     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
33973 
33974     SWIG_croak_null();
33975   }
33976 }
33977 
33978 
XS(_wrap_db_flatten)33979 XS(_wrap_db_flatten) {
33980   dXSARGS;
33981 
33982   {
33983     unsigned long _index = 0;
33984     SWIG_TypeRank _rank = 0;
33985     if (items == 1) {
33986       SWIG_TypeRank _ranki = 0;
33987       SWIG_TypeRank _rankm = 0;
33988       SWIG_TypeRank _pi = 1;
33989       int _v = 0;
33990       {
33991         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
33992         _v = SWIG_CheckState(res);
33993       }
33994       if (!_v) goto check_1;
33995       _ranki += _v*_pi;
33996       _rankm += _pi;
33997       _pi *= SWIG_MAXCASTRANK;
33998       if (!_index || (_ranki < _rank)) {
33999         _rank = _ranki; _index = 1;
34000         if (_rank == _rankm) goto dispatch;
34001       }
34002     }
34003   check_1:
34004 
34005     if (items == 2) {
34006       SWIG_TypeRank _ranki = 0;
34007       SWIG_TypeRank _rankm = 0;
34008       SWIG_TypeRank _pi = 1;
34009       int _v = 0;
34010       {
34011         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
34012         _v = SWIG_CheckState(res);
34013       }
34014       if (!_v) goto check_2;
34015       _ranki += _v*_pi;
34016       _rankm += _pi;
34017       _pi *= SWIG_MAXCASTRANK;
34018       {
34019         {
34020           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
34021           _v = SWIG_CheckState(res);
34022         }
34023       }
34024       if (!_v) goto check_2;
34025       _ranki += _v*_pi;
34026       _rankm += _pi;
34027       _pi *= SWIG_MAXCASTRANK;
34028       if (!_index || (_ranki < _rank)) {
34029         _rank = _ranki; _index = 2;
34030         if (_rank == _rankm) goto dispatch;
34031       }
34032     }
34033   check_2:
34034 
34035     if (items == 2) {
34036       SWIG_TypeRank _ranki = 0;
34037       SWIG_TypeRank _rankm = 0;
34038       SWIG_TypeRank _pi = 1;
34039       int _v = 0;
34040       {
34041         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
34042         _v = SWIG_CheckState(res);
34043       }
34044       if (!_v) goto check_3;
34045       _ranki += _v*_pi;
34046       _rankm += _pi;
34047       _pi *= SWIG_MAXCASTRANK;
34048       {
34049         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
34050         _v = SWIG_CheckState(res);
34051       }
34052       if (!_v) goto check_3;
34053       _ranki += _v*_pi;
34054       _rankm += _pi;
34055       _pi *= SWIG_MAXCASTRANK;
34056       if (!_index || (_ranki < _rank)) {
34057         _rank = _ranki; _index = 3;
34058         if (_rank == _rankm) goto dispatch;
34059       }
34060     }
34061   check_3:
34062 
34063     if (items == 3) {
34064       SWIG_TypeRank _ranki = 0;
34065       SWIG_TypeRank _rankm = 0;
34066       SWIG_TypeRank _pi = 1;
34067       int _v = 0;
34068       {
34069         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
34070         _v = SWIG_CheckState(res);
34071       }
34072       if (!_v) goto check_4;
34073       _ranki += _v*_pi;
34074       _rankm += _pi;
34075       _pi *= SWIG_MAXCASTRANK;
34076       {
34077         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
34078         _v = SWIG_CheckState(res);
34079       }
34080       if (!_v) goto check_4;
34081       _ranki += _v*_pi;
34082       _rankm += _pi;
34083       _pi *= SWIG_MAXCASTRANK;
34084       {
34085         {
34086           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
34087           _v = SWIG_CheckState(res);
34088         }
34089       }
34090       if (!_v) goto check_4;
34091       _ranki += _v*_pi;
34092       _rankm += _pi;
34093       _pi *= SWIG_MAXCASTRANK;
34094       if (!_index || (_ranki < _rank)) {
34095         _rank = _ranki; _index = 4;
34096         if (_rank == _rankm) goto dispatch;
34097       }
34098     }
34099   check_4:
34100 
34101   dispatch:
34102     switch(_index) {
34103     case 1:
34104       PUSHMARK(MARK); SWIG_CALLXS(_wrap_db_flatten__SWIG_1); return;
34105     case 2:
34106       PUSHMARK(MARK); SWIG_CALLXS(_wrap_db_flatten__SWIG_0); return;
34107     case 3:
34108       PUSHMARK(MARK); SWIG_CALLXS(_wrap_db_flatten__SWIG_3); return;
34109     case 4:
34110       PUSHMARK(MARK); SWIG_CALLXS(_wrap_db_flatten__SWIG_2); return;
34111     }
34112   }
34113 
34114   croak("No matching function for overloaded 'db_flatten'");
34115   XSRETURN(0);
34116 }
34117 
34118 
XS(_wrap_db_from_WUSS)34119 XS(_wrap_db_from_WUSS) {
34120   {
34121     std::string arg1 ;
34122     int argvi = 0;
34123     std::string result;
34124     dXSARGS;
34125 
34126     if ((items < 1) || (items > 1)) {
34127       SWIG_croak("Usage: db_from_WUSS(wuss);");
34128     }
34129     {
34130       std::string *ptr = (std::string *)0;
34131       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
34132       if (!SWIG_IsOK(res) || !ptr) {
34133         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "db_from_WUSS" "', argument " "1"" of type '" "std::string""'");
34134       }
34135       arg1 = *ptr;
34136       if (SWIG_IsNewObj(res)) delete ptr;
34137     }
34138     {
34139       try {
34140         result = db_from_WUSS(arg1);
34141       } catch (const std::exception& e) {
34142         SWIG_exception(SWIG_RuntimeError, e.what());
34143       }
34144     }
34145     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
34146 
34147     XSRETURN(argvi);
34148   fail:
34149 
34150     SWIG_croak_null();
34151   }
34152 }
34153 
34154 
XS(_wrap_abstract_shapes__SWIG_0)34155 XS(_wrap_abstract_shapes__SWIG_0) {
34156   {
34157     std::string arg1 ;
34158     unsigned int arg2 ;
34159     unsigned int val2 ;
34160     int ecode2 = 0 ;
34161     int argvi = 0;
34162     std::string result;
34163     dXSARGS;
34164 
34165     if ((items < 2) || (items > 2)) {
34166       SWIG_croak("Usage: abstract_shapes(structure,level);");
34167     }
34168     {
34169       std::string *ptr = (std::string *)0;
34170       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
34171       if (!SWIG_IsOK(res) || !ptr) {
34172         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "abstract_shapes" "', argument " "1"" of type '" "std::string""'");
34173       }
34174       arg1 = *ptr;
34175       if (SWIG_IsNewObj(res)) delete ptr;
34176     }
34177     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
34178     if (!SWIG_IsOK(ecode2)) {
34179       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "abstract_shapes" "', argument " "2"" of type '" "unsigned int""'");
34180     }
34181     arg2 = static_cast< unsigned int >(val2);
34182     {
34183       try {
34184         result = abstract_shapes(arg1,arg2);
34185       } catch (const std::exception& e) {
34186         SWIG_exception(SWIG_RuntimeError, e.what());
34187       }
34188     }
34189     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
34190 
34191 
34192     XSRETURN(argvi);
34193   fail:
34194 
34195 
34196     SWIG_croak_null();
34197   }
34198 }
34199 
34200 
XS(_wrap_abstract_shapes__SWIG_1)34201 XS(_wrap_abstract_shapes__SWIG_1) {
34202   {
34203     std::string arg1 ;
34204     int argvi = 0;
34205     std::string result;
34206     dXSARGS;
34207 
34208     if ((items < 1) || (items > 1)) {
34209       SWIG_croak("Usage: abstract_shapes(structure);");
34210     }
34211     {
34212       std::string *ptr = (std::string *)0;
34213       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
34214       if (!SWIG_IsOK(res) || !ptr) {
34215         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "abstract_shapes" "', argument " "1"" of type '" "std::string""'");
34216       }
34217       arg1 = *ptr;
34218       if (SWIG_IsNewObj(res)) delete ptr;
34219     }
34220     {
34221       try {
34222         result = abstract_shapes(arg1);
34223       } catch (const std::exception& e) {
34224         SWIG_exception(SWIG_RuntimeError, e.what());
34225       }
34226     }
34227     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
34228 
34229     XSRETURN(argvi);
34230   fail:
34231 
34232     SWIG_croak_null();
34233   }
34234 }
34235 
34236 
XS(_wrap_abstract_shapes__SWIG_2)34237 XS(_wrap_abstract_shapes__SWIG_2) {
34238   {
34239     std::vector< int > arg1 ;
34240     unsigned int arg2 ;
34241     std::vector< int > *v1 ;
34242     unsigned int val2 ;
34243     int ecode2 = 0 ;
34244     int argvi = 0;
34245     std::string result;
34246     dXSARGS;
34247 
34248     if ((items < 2) || (items > 2)) {
34249       SWIG_croak("Usage: abstract_shapes(std::vector< int >,level);");
34250     }
34251     {
34252       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
34253           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
34254         arg1 = *v1;
34255       } else if (SvROK(ST(0))) {
34256         AV *av = (AV *)SvRV(ST(0));
34257         if (SvTYPE(av) != SVt_PVAV)
34258         SWIG_croak("Type error in argument 1 of abstract_shapes. "
34259           "Expected an array of ""int");
34260         SV **tv;
34261         I32 len = av_len(av) + 1;
34262         for (int i=0; i<len; i++) {
34263           tv = av_fetch(av, i, 0);
34264           if (SvIOK(*tv)) {
34265             (&arg1)->push_back((int)SvIVX(*tv));
34266           } else {
34267             SWIG_croak("Type error in argument 1 of "
34268               "abstract_shapes. "
34269               "Expected an array of ""int");
34270           }
34271         }
34272       } else {
34273         SWIG_croak("Type error in argument 1 of abstract_shapes. "
34274           "Expected an array of ""int");
34275       }
34276     }
34277     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
34278     if (!SWIG_IsOK(ecode2)) {
34279       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "abstract_shapes" "', argument " "2"" of type '" "unsigned int""'");
34280     }
34281     arg2 = static_cast< unsigned int >(val2);
34282     {
34283       try {
34284         result = abstract_shapes(arg1,arg2);
34285       } catch (const std::exception& e) {
34286         SWIG_exception(SWIG_RuntimeError, e.what());
34287       }
34288     }
34289     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
34290 
34291     XSRETURN(argvi);
34292   fail:
34293 
34294     SWIG_croak_null();
34295   }
34296 }
34297 
34298 
XS(_wrap_abstract_shapes__SWIG_3)34299 XS(_wrap_abstract_shapes__SWIG_3) {
34300   {
34301     std::vector< int > arg1 ;
34302     std::vector< int > *v1 ;
34303     int argvi = 0;
34304     std::string result;
34305     dXSARGS;
34306 
34307     if ((items < 1) || (items > 1)) {
34308       SWIG_croak("Usage: abstract_shapes(std::vector< int >);");
34309     }
34310     {
34311       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
34312           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
34313         arg1 = *v1;
34314       } else if (SvROK(ST(0))) {
34315         AV *av = (AV *)SvRV(ST(0));
34316         if (SvTYPE(av) != SVt_PVAV)
34317         SWIG_croak("Type error in argument 1 of abstract_shapes. "
34318           "Expected an array of ""int");
34319         SV **tv;
34320         I32 len = av_len(av) + 1;
34321         for (int i=0; i<len; i++) {
34322           tv = av_fetch(av, i, 0);
34323           if (SvIOK(*tv)) {
34324             (&arg1)->push_back((int)SvIVX(*tv));
34325           } else {
34326             SWIG_croak("Type error in argument 1 of "
34327               "abstract_shapes. "
34328               "Expected an array of ""int");
34329           }
34330         }
34331       } else {
34332         SWIG_croak("Type error in argument 1 of abstract_shapes. "
34333           "Expected an array of ""int");
34334       }
34335     }
34336     {
34337       try {
34338         result = abstract_shapes(arg1);
34339       } catch (const std::exception& e) {
34340         SWIG_exception(SWIG_RuntimeError, e.what());
34341       }
34342     }
34343     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
34344     XSRETURN(argvi);
34345   fail:
34346     SWIG_croak_null();
34347   }
34348 }
34349 
34350 
XS(_wrap_abstract_shapes)34351 XS(_wrap_abstract_shapes) {
34352   dXSARGS;
34353 
34354   {
34355     unsigned long _index = 0;
34356     SWIG_TypeRank _rank = 0;
34357     if (items == 1) {
34358       SWIG_TypeRank _ranki = 0;
34359       SWIG_TypeRank _rankm = 0;
34360       SWIG_TypeRank _pi = 1;
34361       int _v = 0;
34362       {
34363         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
34364         _v = SWIG_CheckState(res);
34365       }
34366       if (!_v) goto check_1;
34367       _ranki += _v*_pi;
34368       _rankm += _pi;
34369       _pi *= SWIG_MAXCASTRANK;
34370       if (!_index || (_ranki < _rank)) {
34371         _rank = _ranki; _index = 1;
34372         if (_rank == _rankm) goto dispatch;
34373       }
34374     }
34375   check_1:
34376 
34377     if (items == 1) {
34378       SWIG_TypeRank _ranki = 0;
34379       SWIG_TypeRank _rankm = 0;
34380       SWIG_TypeRank _pi = 1;
34381       int _v = 0;
34382       {
34383         {
34384           {
34385             /* wrapped vector? */
34386             std::vector< int >* v;
34387             if (SWIG_ConvertPtr(ST(0),(void **) &v,
34388                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
34389               _v = 1;
34390             } else if (SvROK(ST(0))) {
34391               /* native sequence? */
34392               AV *av = (AV *)SvRV(ST(0));
34393               if (SvTYPE(av) == SVt_PVAV) {
34394                 I32 len = av_len(av) + 1;
34395                 if (len == 0) {
34396                   /* an empty sequence can be of any type */
34397                   _v = 1;
34398                 } else {
34399                   /* check the first element only */
34400                   SV **tv = av_fetch(av, 0, 0);
34401                   if (SvIOK(*tv))
34402                   _v = 1;
34403                   else
34404                   _v = 0;
34405                 }
34406               }
34407             } else {
34408               _v = 0;
34409             }
34410           }
34411         }
34412       }
34413       if (!_v) goto check_2;
34414       _ranki += _v*_pi;
34415       _rankm += _pi;
34416       _pi *= SWIG_MAXCASTRANK;
34417       if (!_index || (_ranki < _rank)) {
34418         _rank = _ranki; _index = 2;
34419         if (_rank == _rankm) goto dispatch;
34420       }
34421     }
34422   check_2:
34423 
34424     if (items == 2) {
34425       SWIG_TypeRank _ranki = 0;
34426       SWIG_TypeRank _rankm = 0;
34427       SWIG_TypeRank _pi = 1;
34428       int _v = 0;
34429       {
34430         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
34431         _v = SWIG_CheckState(res);
34432       }
34433       if (!_v) goto check_3;
34434       _ranki += _v*_pi;
34435       _rankm += _pi;
34436       _pi *= SWIG_MAXCASTRANK;
34437       {
34438         {
34439           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
34440           _v = SWIG_CheckState(res);
34441         }
34442       }
34443       if (!_v) goto check_3;
34444       _ranki += _v*_pi;
34445       _rankm += _pi;
34446       _pi *= SWIG_MAXCASTRANK;
34447       if (!_index || (_ranki < _rank)) {
34448         _rank = _ranki; _index = 3;
34449         if (_rank == _rankm) goto dispatch;
34450       }
34451     }
34452   check_3:
34453 
34454     if (items == 2) {
34455       SWIG_TypeRank _ranki = 0;
34456       SWIG_TypeRank _rankm = 0;
34457       SWIG_TypeRank _pi = 1;
34458       int _v = 0;
34459       {
34460         {
34461           {
34462             /* wrapped vector? */
34463             std::vector< int >* v;
34464             if (SWIG_ConvertPtr(ST(0),(void **) &v,
34465                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
34466               _v = 1;
34467             } else if (SvROK(ST(0))) {
34468               /* native sequence? */
34469               AV *av = (AV *)SvRV(ST(0));
34470               if (SvTYPE(av) == SVt_PVAV) {
34471                 I32 len = av_len(av) + 1;
34472                 if (len == 0) {
34473                   /* an empty sequence can be of any type */
34474                   _v = 1;
34475                 } else {
34476                   /* check the first element only */
34477                   SV **tv = av_fetch(av, 0, 0);
34478                   if (SvIOK(*tv))
34479                   _v = 1;
34480                   else
34481                   _v = 0;
34482                 }
34483               }
34484             } else {
34485               _v = 0;
34486             }
34487           }
34488         }
34489       }
34490       if (!_v) goto check_4;
34491       _ranki += _v*_pi;
34492       _rankm += _pi;
34493       _pi *= SWIG_MAXCASTRANK;
34494       {
34495         {
34496           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
34497           _v = SWIG_CheckState(res);
34498         }
34499       }
34500       if (!_v) goto check_4;
34501       _ranki += _v*_pi;
34502       _rankm += _pi;
34503       _pi *= SWIG_MAXCASTRANK;
34504       if (!_index || (_ranki < _rank)) {
34505         _rank = _ranki; _index = 4;
34506         if (_rank == _rankm) goto dispatch;
34507       }
34508     }
34509   check_4:
34510 
34511   dispatch:
34512     switch(_index) {
34513     case 1:
34514       PUSHMARK(MARK); SWIG_CALLXS(_wrap_abstract_shapes__SWIG_1); return;
34515     case 2:
34516       PUSHMARK(MARK); SWIG_CALLXS(_wrap_abstract_shapes__SWIG_3); return;
34517     case 3:
34518       PUSHMARK(MARK); SWIG_CALLXS(_wrap_abstract_shapes__SWIG_0); return;
34519     case 4:
34520       PUSHMARK(MARK); SWIG_CALLXS(_wrap_abstract_shapes__SWIG_2); return;
34521     }
34522   }
34523 
34524   croak("No matching function for overloaded 'abstract_shapes'");
34525   XSRETURN(0);
34526 }
34527 
34528 
XS(_wrap_ptable__SWIG_0)34529 XS(_wrap_ptable__SWIG_0) {
34530   {
34531     std::string arg1 ;
34532     unsigned int arg2 ;
34533     unsigned int val2 ;
34534     int ecode2 = 0 ;
34535     int argvi = 0;
34536     std::vector< int > result;
34537     dXSARGS;
34538 
34539     if ((items < 2) || (items > 2)) {
34540       SWIG_croak("Usage: ptable(str,options);");
34541     }
34542     {
34543       std::string *ptr = (std::string *)0;
34544       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
34545       if (!SWIG_IsOK(res) || !ptr) {
34546         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "ptable" "', argument " "1"" of type '" "std::string""'");
34547       }
34548       arg1 = *ptr;
34549       if (SWIG_IsNewObj(res)) delete ptr;
34550     }
34551     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
34552     if (!SWIG_IsOK(ecode2)) {
34553       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ptable" "', argument " "2"" of type '" "unsigned int""'");
34554     }
34555     arg2 = static_cast< unsigned int >(val2);
34556     {
34557       try {
34558         result = my_ptable(arg1,arg2);
34559       } catch (const std::exception& e) {
34560         SWIG_exception(SWIG_RuntimeError, e.what());
34561       }
34562     }
34563     {
34564       size_t len = (&result)->size();
34565       SV **svs = new SV*[len];
34566       for (size_t i=0; i<len; i++) {
34567         svs[i] = sv_newmortal();
34568         sv_setiv(svs[i], result[i]);
34569       }
34570       AV *myav = av_make(len, svs);
34571       delete[] svs;
34572       ST(argvi) = newRV_noinc((SV*) myav);
34573       sv_2mortal(ST(argvi));
34574       argvi++;
34575     }
34576 
34577 
34578     XSRETURN(argvi);
34579   fail:
34580 
34581 
34582     SWIG_croak_null();
34583   }
34584 }
34585 
34586 
XS(_wrap_ptable__SWIG_1)34587 XS(_wrap_ptable__SWIG_1) {
34588   {
34589     std::string arg1 ;
34590     int argvi = 0;
34591     std::vector< int > result;
34592     dXSARGS;
34593 
34594     if ((items < 1) || (items > 1)) {
34595       SWIG_croak("Usage: ptable(str);");
34596     }
34597     {
34598       std::string *ptr = (std::string *)0;
34599       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
34600       if (!SWIG_IsOK(res) || !ptr) {
34601         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "ptable" "', argument " "1"" of type '" "std::string""'");
34602       }
34603       arg1 = *ptr;
34604       if (SWIG_IsNewObj(res)) delete ptr;
34605     }
34606     {
34607       try {
34608         result = my_ptable(arg1);
34609       } catch (const std::exception& e) {
34610         SWIG_exception(SWIG_RuntimeError, e.what());
34611       }
34612     }
34613     {
34614       size_t len = (&result)->size();
34615       SV **svs = new SV*[len];
34616       for (size_t i=0; i<len; i++) {
34617         svs[i] = sv_newmortal();
34618         sv_setiv(svs[i], result[i]);
34619       }
34620       AV *myav = av_make(len, svs);
34621       delete[] svs;
34622       ST(argvi) = newRV_noinc((SV*) myav);
34623       sv_2mortal(ST(argvi));
34624       argvi++;
34625     }
34626 
34627     XSRETURN(argvi);
34628   fail:
34629 
34630     SWIG_croak_null();
34631   }
34632 }
34633 
34634 
XS(_wrap_ptable)34635 XS(_wrap_ptable) {
34636   dXSARGS;
34637 
34638   {
34639     unsigned long _index = 0;
34640     SWIG_TypeRank _rank = 0;
34641     if (items == 1) {
34642       SWIG_TypeRank _ranki = 0;
34643       SWIG_TypeRank _rankm = 0;
34644       SWIG_TypeRank _pi = 1;
34645       int _v = 0;
34646       {
34647         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
34648         _v = SWIG_CheckState(res);
34649       }
34650       if (!_v) goto check_1;
34651       _ranki += _v*_pi;
34652       _rankm += _pi;
34653       _pi *= SWIG_MAXCASTRANK;
34654       if (!_index || (_ranki < _rank)) {
34655         _rank = _ranki; _index = 1;
34656         if (_rank == _rankm) goto dispatch;
34657       }
34658     }
34659   check_1:
34660 
34661     if (items == 2) {
34662       SWIG_TypeRank _ranki = 0;
34663       SWIG_TypeRank _rankm = 0;
34664       SWIG_TypeRank _pi = 1;
34665       int _v = 0;
34666       {
34667         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
34668         _v = SWIG_CheckState(res);
34669       }
34670       if (!_v) goto check_2;
34671       _ranki += _v*_pi;
34672       _rankm += _pi;
34673       _pi *= SWIG_MAXCASTRANK;
34674       {
34675         {
34676           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
34677           _v = SWIG_CheckState(res);
34678         }
34679       }
34680       if (!_v) goto check_2;
34681       _ranki += _v*_pi;
34682       _rankm += _pi;
34683       _pi *= SWIG_MAXCASTRANK;
34684       if (!_index || (_ranki < _rank)) {
34685         _rank = _ranki; _index = 2;
34686         if (_rank == _rankm) goto dispatch;
34687       }
34688     }
34689   check_2:
34690 
34691   dispatch:
34692     switch(_index) {
34693     case 1:
34694       PUSHMARK(MARK); SWIG_CALLXS(_wrap_ptable__SWIG_1); return;
34695     case 2:
34696       PUSHMARK(MARK); SWIG_CALLXS(_wrap_ptable__SWIG_0); return;
34697     }
34698   }
34699 
34700   croak("No matching function for overloaded 'ptable'");
34701   XSRETURN(0);
34702 }
34703 
34704 
XS(_wrap_ptable_pk)34705 XS(_wrap_ptable_pk) {
34706   {
34707     std::string arg1 ;
34708     int argvi = 0;
34709     std::vector< int > result;
34710     dXSARGS;
34711 
34712     if ((items < 1) || (items > 1)) {
34713       SWIG_croak("Usage: ptable_pk(str);");
34714     }
34715     {
34716       std::string *ptr = (std::string *)0;
34717       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
34718       if (!SWIG_IsOK(res) || !ptr) {
34719         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "ptable_pk" "', argument " "1"" of type '" "std::string""'");
34720       }
34721       arg1 = *ptr;
34722       if (SWIG_IsNewObj(res)) delete ptr;
34723     }
34724     {
34725       try {
34726         result = my_ptable_pk(arg1);
34727       } catch (const std::exception& e) {
34728         SWIG_exception(SWIG_RuntimeError, e.what());
34729       }
34730     }
34731     {
34732       size_t len = (&result)->size();
34733       SV **svs = new SV*[len];
34734       for (size_t i=0; i<len; i++) {
34735         svs[i] = sv_newmortal();
34736         sv_setiv(svs[i], result[i]);
34737       }
34738       AV *myav = av_make(len, svs);
34739       delete[] svs;
34740       ST(argvi) = newRV_noinc((SV*) myav);
34741       sv_2mortal(ST(argvi));
34742       argvi++;
34743     }
34744 
34745     XSRETURN(argvi);
34746   fail:
34747 
34748     SWIG_croak_null();
34749   }
34750 }
34751 
34752 
XS(_wrap_pt_pk_remove__SWIG_0)34753 XS(_wrap_pt_pk_remove__SWIG_0) {
34754   {
34755     std::vector< int > arg1 ;
34756     unsigned int arg2 ;
34757     std::vector< int > *v1 ;
34758     unsigned int val2 ;
34759     int ecode2 = 0 ;
34760     int argvi = 0;
34761     std::vector< int > result;
34762     dXSARGS;
34763 
34764     if ((items < 2) || (items > 2)) {
34765       SWIG_croak("Usage: pt_pk_remove(pt,options);");
34766     }
34767     {
34768       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
34769           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
34770         arg1 = *v1;
34771       } else if (SvROK(ST(0))) {
34772         AV *av = (AV *)SvRV(ST(0));
34773         if (SvTYPE(av) != SVt_PVAV)
34774         SWIG_croak("Type error in argument 1 of pt_pk_remove. "
34775           "Expected an array of ""int");
34776         SV **tv;
34777         I32 len = av_len(av) + 1;
34778         for (int i=0; i<len; i++) {
34779           tv = av_fetch(av, i, 0);
34780           if (SvIOK(*tv)) {
34781             (&arg1)->push_back((int)SvIVX(*tv));
34782           } else {
34783             SWIG_croak("Type error in argument 1 of "
34784               "pt_pk_remove. "
34785               "Expected an array of ""int");
34786           }
34787         }
34788       } else {
34789         SWIG_croak("Type error in argument 1 of pt_pk_remove. "
34790           "Expected an array of ""int");
34791       }
34792     }
34793     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
34794     if (!SWIG_IsOK(ecode2)) {
34795       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pt_pk_remove" "', argument " "2"" of type '" "unsigned int""'");
34796     }
34797     arg2 = static_cast< unsigned int >(val2);
34798     {
34799       try {
34800         result = my_pt_pk_remove(arg1,arg2);
34801       } catch (const std::exception& e) {
34802         SWIG_exception(SWIG_RuntimeError, e.what());
34803       }
34804     }
34805     {
34806       size_t len = (&result)->size();
34807       SV **svs = new SV*[len];
34808       for (size_t i=0; i<len; i++) {
34809         svs[i] = sv_newmortal();
34810         sv_setiv(svs[i], result[i]);
34811       }
34812       AV *myav = av_make(len, svs);
34813       delete[] svs;
34814       ST(argvi) = newRV_noinc((SV*) myav);
34815       sv_2mortal(ST(argvi));
34816       argvi++;
34817     }
34818 
34819     XSRETURN(argvi);
34820   fail:
34821 
34822     SWIG_croak_null();
34823   }
34824 }
34825 
34826 
XS(_wrap_pt_pk_remove__SWIG_1)34827 XS(_wrap_pt_pk_remove__SWIG_1) {
34828   {
34829     std::vector< int > arg1 ;
34830     std::vector< int > *v1 ;
34831     int argvi = 0;
34832     std::vector< int > result;
34833     dXSARGS;
34834 
34835     if ((items < 1) || (items > 1)) {
34836       SWIG_croak("Usage: pt_pk_remove(pt);");
34837     }
34838     {
34839       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
34840           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
34841         arg1 = *v1;
34842       } else if (SvROK(ST(0))) {
34843         AV *av = (AV *)SvRV(ST(0));
34844         if (SvTYPE(av) != SVt_PVAV)
34845         SWIG_croak("Type error in argument 1 of pt_pk_remove. "
34846           "Expected an array of ""int");
34847         SV **tv;
34848         I32 len = av_len(av) + 1;
34849         for (int i=0; i<len; i++) {
34850           tv = av_fetch(av, i, 0);
34851           if (SvIOK(*tv)) {
34852             (&arg1)->push_back((int)SvIVX(*tv));
34853           } else {
34854             SWIG_croak("Type error in argument 1 of "
34855               "pt_pk_remove. "
34856               "Expected an array of ""int");
34857           }
34858         }
34859       } else {
34860         SWIG_croak("Type error in argument 1 of pt_pk_remove. "
34861           "Expected an array of ""int");
34862       }
34863     }
34864     {
34865       try {
34866         result = my_pt_pk_remove(arg1);
34867       } catch (const std::exception& e) {
34868         SWIG_exception(SWIG_RuntimeError, e.what());
34869       }
34870     }
34871     {
34872       size_t len = (&result)->size();
34873       SV **svs = new SV*[len];
34874       for (size_t i=0; i<len; i++) {
34875         svs[i] = sv_newmortal();
34876         sv_setiv(svs[i], result[i]);
34877       }
34878       AV *myav = av_make(len, svs);
34879       delete[] svs;
34880       ST(argvi) = newRV_noinc((SV*) myav);
34881       sv_2mortal(ST(argvi));
34882       argvi++;
34883     }
34884     XSRETURN(argvi);
34885   fail:
34886     SWIG_croak_null();
34887   }
34888 }
34889 
34890 
XS(_wrap_pt_pk_remove)34891 XS(_wrap_pt_pk_remove) {
34892   dXSARGS;
34893 
34894   {
34895     unsigned long _index = 0;
34896     SWIG_TypeRank _rank = 0;
34897     if (items == 1) {
34898       SWIG_TypeRank _ranki = 0;
34899       SWIG_TypeRank _rankm = 0;
34900       SWIG_TypeRank _pi = 1;
34901       int _v = 0;
34902       {
34903         {
34904           {
34905             /* wrapped vector? */
34906             std::vector< int >* v;
34907             if (SWIG_ConvertPtr(ST(0),(void **) &v,
34908                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
34909               _v = 1;
34910             } else if (SvROK(ST(0))) {
34911               /* native sequence? */
34912               AV *av = (AV *)SvRV(ST(0));
34913               if (SvTYPE(av) == SVt_PVAV) {
34914                 I32 len = av_len(av) + 1;
34915                 if (len == 0) {
34916                   /* an empty sequence can be of any type */
34917                   _v = 1;
34918                 } else {
34919                   /* check the first element only */
34920                   SV **tv = av_fetch(av, 0, 0);
34921                   if (SvIOK(*tv))
34922                   _v = 1;
34923                   else
34924                   _v = 0;
34925                 }
34926               }
34927             } else {
34928               _v = 0;
34929             }
34930           }
34931         }
34932       }
34933       if (!_v) goto check_1;
34934       _ranki += _v*_pi;
34935       _rankm += _pi;
34936       _pi *= SWIG_MAXCASTRANK;
34937       if (!_index || (_ranki < _rank)) {
34938         _rank = _ranki; _index = 1;
34939         if (_rank == _rankm) goto dispatch;
34940       }
34941     }
34942   check_1:
34943 
34944     if (items == 2) {
34945       SWIG_TypeRank _ranki = 0;
34946       SWIG_TypeRank _rankm = 0;
34947       SWIG_TypeRank _pi = 1;
34948       int _v = 0;
34949       {
34950         {
34951           {
34952             /* wrapped vector? */
34953             std::vector< int >* v;
34954             if (SWIG_ConvertPtr(ST(0),(void **) &v,
34955                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
34956               _v = 1;
34957             } else if (SvROK(ST(0))) {
34958               /* native sequence? */
34959               AV *av = (AV *)SvRV(ST(0));
34960               if (SvTYPE(av) == SVt_PVAV) {
34961                 I32 len = av_len(av) + 1;
34962                 if (len == 0) {
34963                   /* an empty sequence can be of any type */
34964                   _v = 1;
34965                 } else {
34966                   /* check the first element only */
34967                   SV **tv = av_fetch(av, 0, 0);
34968                   if (SvIOK(*tv))
34969                   _v = 1;
34970                   else
34971                   _v = 0;
34972                 }
34973               }
34974             } else {
34975               _v = 0;
34976             }
34977           }
34978         }
34979       }
34980       if (!_v) goto check_2;
34981       _ranki += _v*_pi;
34982       _rankm += _pi;
34983       _pi *= SWIG_MAXCASTRANK;
34984       {
34985         {
34986           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
34987           _v = SWIG_CheckState(res);
34988         }
34989       }
34990       if (!_v) goto check_2;
34991       _ranki += _v*_pi;
34992       _rankm += _pi;
34993       _pi *= SWIG_MAXCASTRANK;
34994       if (!_index || (_ranki < _rank)) {
34995         _rank = _ranki; _index = 2;
34996         if (_rank == _rankm) goto dispatch;
34997       }
34998     }
34999   check_2:
35000 
35001   dispatch:
35002     switch(_index) {
35003     case 1:
35004       PUSHMARK(MARK); SWIG_CALLXS(_wrap_pt_pk_remove__SWIG_1); return;
35005     case 2:
35006       PUSHMARK(MARK); SWIG_CALLXS(_wrap_pt_pk_remove__SWIG_0); return;
35007     }
35008   }
35009 
35010   croak("No matching function for overloaded 'pt_pk_remove'");
35011   XSRETURN(0);
35012 }
35013 
35014 
XS(_wrap_plist)35015 XS(_wrap_plist) {
35016   {
35017     std::string arg1 ;
35018     float arg2 ;
35019     float val2 ;
35020     int ecode2 = 0 ;
35021     int argvi = 0;
35022     std::vector< vrna_ep_t > result;
35023     dXSARGS;
35024 
35025     if ((items < 2) || (items > 2)) {
35026       SWIG_croak("Usage: plist(structure,pr);");
35027     }
35028     {
35029       std::string *ptr = (std::string *)0;
35030       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
35031       if (!SWIG_IsOK(res) || !ptr) {
35032         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "plist" "', argument " "1"" of type '" "std::string""'");
35033       }
35034       arg1 = *ptr;
35035       if (SWIG_IsNewObj(res)) delete ptr;
35036     }
35037     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
35038     if (!SWIG_IsOK(ecode2)) {
35039       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "plist" "', argument " "2"" of type '" "float""'");
35040     }
35041     arg2 = static_cast< float >(val2);
35042     {
35043       try {
35044         result = my_plist(arg1,arg2);
35045       } catch (const std::exception& e) {
35046         SWIG_exception(SWIG_RuntimeError, e.what());
35047       }
35048     }
35049     {
35050       size_t len = (&result)->size();
35051       SV **svs = new SV*[len];
35052       for (size_t i=0; i<len; i++) {
35053         vrna_ep_t* ptr = new vrna_ep_t(result[i]);
35054         svs[i] = sv_newmortal();
35055         SWIG_MakePtr(svs[i], (void*) ptr,
35056           SWIGTYPE_p_vrna_ep_t, SWIG_SHADOW|0);
35057       }
35058       AV *myav = av_make(len, svs);
35059       delete[] svs;
35060       ST(argvi) = newRV_noinc((SV*) myav);
35061       sv_2mortal(ST(argvi));
35062       argvi++;
35063     }
35064 
35065 
35066     XSRETURN(argvi);
35067   fail:
35068 
35069 
35070     SWIG_croak_null();
35071   }
35072 }
35073 
35074 
XS(_wrap_db_from_plist)35075 XS(_wrap_db_from_plist) {
35076   {
35077     std::vector< vrna_ep_t > arg1 ;
35078     unsigned int arg2 ;
35079     std::vector< vrna_ep_t > *v1 ;
35080     unsigned int val2 ;
35081     int ecode2 = 0 ;
35082     int argvi = 0;
35083     std::string result;
35084     dXSARGS;
35085 
35086     if ((items < 2) || (items > 2)) {
35087       SWIG_croak("Usage: db_from_plist(elem_probs,length);");
35088     }
35089     {
35090       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
35091           SWIGTYPE_p_std__vectorT_vrna_ep_t_t,1) != -1) {
35092         arg1 = *v1;
35093       } else if (SvROK(ST(0))) {
35094         AV *av = (AV *)SvRV(ST(0));
35095         if (SvTYPE(av) != SVt_PVAV)
35096         SWIG_croak("Type error in argument 1 of db_from_plist. "
35097           "Expected an array of " "vrna_ep_t");
35098         SV **tv;
35099         I32 len = av_len(av) + 1;
35100         vrna_ep_t* obj;
35101         for (int i=0; i<len; i++) {
35102           tv = av_fetch(av, i, 0);
35103           if (SWIG_ConvertPtr(*tv, (void **)&obj,
35104               SWIGTYPE_p_vrna_ep_t,0) != -1) {
35105             (&arg1)->push_back(*obj);
35106           } else {
35107             SWIG_croak("Type error in argument 1 of "
35108               "db_from_plist. "
35109               "Expected an array of " "vrna_ep_t");
35110           }
35111         }
35112       } else {
35113         SWIG_croak("Type error in argument 1 of db_from_plist. "
35114           "Expected an array of " "vrna_ep_t");
35115       }
35116     }
35117     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
35118     if (!SWIG_IsOK(ecode2)) {
35119       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "db_from_plist" "', argument " "2"" of type '" "unsigned int""'");
35120     }
35121     arg2 = static_cast< unsigned int >(val2);
35122     {
35123       try {
35124         result = db_from_plist(arg1,arg2);
35125       } catch (const std::exception& e) {
35126         SWIG_exception(SWIG_RuntimeError, e.what());
35127       }
35128     }
35129     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
35130 
35131     XSRETURN(argvi);
35132   fail:
35133 
35134     SWIG_croak_null();
35135   }
35136 }
35137 
35138 
XS(_wrap_db_pk_remove__SWIG_0)35139 XS(_wrap_db_pk_remove__SWIG_0) {
35140   {
35141     std::string arg1 ;
35142     unsigned int arg2 ;
35143     unsigned int val2 ;
35144     int ecode2 = 0 ;
35145     int argvi = 0;
35146     std::string result;
35147     dXSARGS;
35148 
35149     if ((items < 2) || (items > 2)) {
35150       SWIG_croak("Usage: db_pk_remove(structure,options);");
35151     }
35152     {
35153       std::string *ptr = (std::string *)0;
35154       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
35155       if (!SWIG_IsOK(res) || !ptr) {
35156         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "db_pk_remove" "', argument " "1"" of type '" "std::string""'");
35157       }
35158       arg1 = *ptr;
35159       if (SWIG_IsNewObj(res)) delete ptr;
35160     }
35161     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
35162     if (!SWIG_IsOK(ecode2)) {
35163       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "db_pk_remove" "', argument " "2"" of type '" "unsigned int""'");
35164     }
35165     arg2 = static_cast< unsigned int >(val2);
35166     {
35167       try {
35168         result = db_pk_remove(arg1,arg2);
35169       } catch (const std::exception& e) {
35170         SWIG_exception(SWIG_RuntimeError, e.what());
35171       }
35172     }
35173     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
35174 
35175 
35176     XSRETURN(argvi);
35177   fail:
35178 
35179 
35180     SWIG_croak_null();
35181   }
35182 }
35183 
35184 
XS(_wrap_db_pk_remove__SWIG_1)35185 XS(_wrap_db_pk_remove__SWIG_1) {
35186   {
35187     std::string arg1 ;
35188     int argvi = 0;
35189     std::string result;
35190     dXSARGS;
35191 
35192     if ((items < 1) || (items > 1)) {
35193       SWIG_croak("Usage: db_pk_remove(structure);");
35194     }
35195     {
35196       std::string *ptr = (std::string *)0;
35197       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
35198       if (!SWIG_IsOK(res) || !ptr) {
35199         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "db_pk_remove" "', argument " "1"" of type '" "std::string""'");
35200       }
35201       arg1 = *ptr;
35202       if (SWIG_IsNewObj(res)) delete ptr;
35203     }
35204     {
35205       try {
35206         result = db_pk_remove(arg1);
35207       } catch (const std::exception& e) {
35208         SWIG_exception(SWIG_RuntimeError, e.what());
35209       }
35210     }
35211     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
35212 
35213     XSRETURN(argvi);
35214   fail:
35215 
35216     SWIG_croak_null();
35217   }
35218 }
35219 
35220 
XS(_wrap_db_pk_remove)35221 XS(_wrap_db_pk_remove) {
35222   dXSARGS;
35223 
35224   {
35225     unsigned long _index = 0;
35226     SWIG_TypeRank _rank = 0;
35227     if (items == 1) {
35228       SWIG_TypeRank _ranki = 0;
35229       SWIG_TypeRank _rankm = 0;
35230       SWIG_TypeRank _pi = 1;
35231       int _v = 0;
35232       {
35233         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
35234         _v = SWIG_CheckState(res);
35235       }
35236       if (!_v) goto check_1;
35237       _ranki += _v*_pi;
35238       _rankm += _pi;
35239       _pi *= SWIG_MAXCASTRANK;
35240       if (!_index || (_ranki < _rank)) {
35241         _rank = _ranki; _index = 1;
35242         if (_rank == _rankm) goto dispatch;
35243       }
35244     }
35245   check_1:
35246 
35247     if (items == 2) {
35248       SWIG_TypeRank _ranki = 0;
35249       SWIG_TypeRank _rankm = 0;
35250       SWIG_TypeRank _pi = 1;
35251       int _v = 0;
35252       {
35253         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
35254         _v = SWIG_CheckState(res);
35255       }
35256       if (!_v) goto check_2;
35257       _ranki += _v*_pi;
35258       _rankm += _pi;
35259       _pi *= SWIG_MAXCASTRANK;
35260       {
35261         {
35262           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
35263           _v = SWIG_CheckState(res);
35264         }
35265       }
35266       if (!_v) goto check_2;
35267       _ranki += _v*_pi;
35268       _rankm += _pi;
35269       _pi *= SWIG_MAXCASTRANK;
35270       if (!_index || (_ranki < _rank)) {
35271         _rank = _ranki; _index = 2;
35272         if (_rank == _rankm) goto dispatch;
35273       }
35274     }
35275   check_2:
35276 
35277   dispatch:
35278     switch(_index) {
35279     case 1:
35280       PUSHMARK(MARK); SWIG_CALLXS(_wrap_db_pk_remove__SWIG_1); return;
35281     case 2:
35282       PUSHMARK(MARK); SWIG_CALLXS(_wrap_db_pk_remove__SWIG_0); return;
35283     }
35284   }
35285 
35286   croak("No matching function for overloaded 'db_pk_remove'");
35287   XSRETURN(0);
35288 }
35289 
35290 
XS(_wrap_db_to_tree_string)35291 XS(_wrap_db_to_tree_string) {
35292   {
35293     std::string arg1 ;
35294     unsigned int arg2 ;
35295     unsigned int val2 ;
35296     int ecode2 = 0 ;
35297     int argvi = 0;
35298     std::string result;
35299     dXSARGS;
35300 
35301     if ((items < 2) || (items > 2)) {
35302       SWIG_croak("Usage: db_to_tree_string(structure,type);");
35303     }
35304     {
35305       std::string *ptr = (std::string *)0;
35306       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
35307       if (!SWIG_IsOK(res) || !ptr) {
35308         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "db_to_tree_string" "', argument " "1"" of type '" "std::string""'");
35309       }
35310       arg1 = *ptr;
35311       if (SWIG_IsNewObj(res)) delete ptr;
35312     }
35313     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
35314     if (!SWIG_IsOK(ecode2)) {
35315       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "db_to_tree_string" "', argument " "2"" of type '" "unsigned int""'");
35316     }
35317     arg2 = static_cast< unsigned int >(val2);
35318     {
35319       try {
35320         result = db_to_tree_string(arg1,arg2);
35321       } catch (const std::exception& e) {
35322         SWIG_exception(SWIG_RuntimeError, e.what());
35323       }
35324     }
35325     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
35326 
35327 
35328     XSRETURN(argvi);
35329   fail:
35330 
35331 
35332     SWIG_croak_null();
35333   }
35334 }
35335 
35336 
XS(_wrap_tree_string_unweight)35337 XS(_wrap_tree_string_unweight) {
35338   {
35339     std::string arg1 ;
35340     int argvi = 0;
35341     std::string result;
35342     dXSARGS;
35343 
35344     if ((items < 1) || (items > 1)) {
35345       SWIG_croak("Usage: tree_string_unweight(structure);");
35346     }
35347     {
35348       std::string *ptr = (std::string *)0;
35349       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
35350       if (!SWIG_IsOK(res) || !ptr) {
35351         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "tree_string_unweight" "', argument " "1"" of type '" "std::string""'");
35352       }
35353       arg1 = *ptr;
35354       if (SWIG_IsNewObj(res)) delete ptr;
35355     }
35356     {
35357       try {
35358         result = tree_string_unweight(arg1);
35359       } catch (const std::exception& e) {
35360         SWIG_exception(SWIG_RuntimeError, e.what());
35361       }
35362     }
35363     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
35364 
35365     XSRETURN(argvi);
35366   fail:
35367 
35368     SWIG_croak_null();
35369   }
35370 }
35371 
35372 
XS(_wrap_tree_string_to_db)35373 XS(_wrap_tree_string_to_db) {
35374   {
35375     std::string arg1 ;
35376     int argvi = 0;
35377     std::string result;
35378     dXSARGS;
35379 
35380     if ((items < 1) || (items > 1)) {
35381       SWIG_croak("Usage: tree_string_to_db(structure);");
35382     }
35383     {
35384       std::string *ptr = (std::string *)0;
35385       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
35386       if (!SWIG_IsOK(res) || !ptr) {
35387         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "tree_string_to_db" "', argument " "1"" of type '" "std::string""'");
35388       }
35389       arg1 = *ptr;
35390       if (SWIG_IsNewObj(res)) delete ptr;
35391     }
35392     {
35393       try {
35394         result = tree_string_to_db(arg1);
35395       } catch (const std::exception& e) {
35396         SWIG_exception(SWIG_RuntimeError, e.what());
35397       }
35398     }
35399     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
35400 
35401     XSRETURN(argvi);
35402   fail:
35403 
35404     SWIG_croak_null();
35405   }
35406 }
35407 
35408 
XS(_wrap_make_loop_index)35409 XS(_wrap_make_loop_index) {
35410   {
35411     char *arg1 = (char *) 0 ;
35412     int res1 ;
35413     char *buf1 = 0 ;
35414     int alloc1 = 0 ;
35415     int argvi = 0;
35416     short *result = 0 ;
35417     dXSARGS;
35418 
35419     if ((items < 1) || (items > 1)) {
35420       SWIG_croak("Usage: make_loop_index(structure);");
35421     }
35422     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
35423     if (!SWIG_IsOK(res1)) {
35424       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "make_loop_index" "', argument " "1"" of type '" "char const *""'");
35425     }
35426     arg1 = reinterpret_cast< char * >(buf1);
35427     {
35428       try {
35429         result = (short *)make_loop_index((char const *)arg1);
35430       } catch (const std::exception& e) {
35431         SWIG_exception(SWIG_RuntimeError, e.what());
35432       }
35433     }
35434     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_short, 0 | 0); argvi++ ;
35435     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
35436     XSRETURN(argvi);
35437   fail:
35438     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
35439     SWIG_croak_null();
35440   }
35441 }
35442 
35443 
XS(_wrap_loopidx_from_ptable)35444 XS(_wrap_loopidx_from_ptable) {
35445   {
35446     std::vector< int > arg1 ;
35447     std::vector< int > *v1 ;
35448     int argvi = 0;
35449     std::vector< int > result;
35450     dXSARGS;
35451 
35452     if ((items < 1) || (items > 1)) {
35453       SWIG_croak("Usage: loopidx_from_ptable(pt);");
35454     }
35455     {
35456       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
35457           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
35458         arg1 = *v1;
35459       } else if (SvROK(ST(0))) {
35460         AV *av = (AV *)SvRV(ST(0));
35461         if (SvTYPE(av) != SVt_PVAV)
35462         SWIG_croak("Type error in argument 1 of loopidx_from_ptable. "
35463           "Expected an array of ""int");
35464         SV **tv;
35465         I32 len = av_len(av) + 1;
35466         for (int i=0; i<len; i++) {
35467           tv = av_fetch(av, i, 0);
35468           if (SvIOK(*tv)) {
35469             (&arg1)->push_back((int)SvIVX(*tv));
35470           } else {
35471             SWIG_croak("Type error in argument 1 of "
35472               "loopidx_from_ptable. "
35473               "Expected an array of ""int");
35474           }
35475         }
35476       } else {
35477         SWIG_croak("Type error in argument 1 of loopidx_from_ptable. "
35478           "Expected an array of ""int");
35479       }
35480     }
35481     {
35482       try {
35483         result = my_loopidx_from_ptable(arg1);
35484       } catch (const std::exception& e) {
35485         SWIG_exception(SWIG_RuntimeError, e.what());
35486       }
35487     }
35488     {
35489       size_t len = (&result)->size();
35490       SV **svs = new SV*[len];
35491       for (size_t i=0; i<len; i++) {
35492         svs[i] = sv_newmortal();
35493         sv_setiv(svs[i], result[i]);
35494       }
35495       AV *myav = av_make(len, svs);
35496       delete[] svs;
35497       ST(argvi) = newRV_noinc((SV*) myav);
35498       sv_2mortal(ST(argvi));
35499       argvi++;
35500     }
35501     XSRETURN(argvi);
35502   fail:
35503     SWIG_croak_null();
35504   }
35505 }
35506 
35507 
XS(_wrap_bp_distance)35508 XS(_wrap_bp_distance) {
35509   {
35510     char *arg1 = (char *) 0 ;
35511     char *arg2 = (char *) 0 ;
35512     int res1 ;
35513     char *buf1 = 0 ;
35514     int alloc1 = 0 ;
35515     int res2 ;
35516     char *buf2 = 0 ;
35517     int alloc2 = 0 ;
35518     int argvi = 0;
35519     int result;
35520     dXSARGS;
35521 
35522     if ((items < 2) || (items > 2)) {
35523       SWIG_croak("Usage: bp_distance(str1,str2);");
35524     }
35525     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
35526     if (!SWIG_IsOK(res1)) {
35527       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "bp_distance" "', argument " "1"" of type '" "char const *""'");
35528     }
35529     arg1 = reinterpret_cast< char * >(buf1);
35530     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
35531     if (!SWIG_IsOK(res2)) {
35532       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "bp_distance" "', argument " "2"" of type '" "char const *""'");
35533     }
35534     arg2 = reinterpret_cast< char * >(buf2);
35535     {
35536       try {
35537         result = (int)my_bp_distance((char const *)arg1,(char const *)arg2);
35538       } catch (const std::exception& e) {
35539         SWIG_exception(SWIG_RuntimeError, e.what());
35540       }
35541     }
35542     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
35543     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
35544     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
35545     XSRETURN(argvi);
35546   fail:
35547     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
35548     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
35549     SWIG_croak_null();
35550   }
35551 }
35552 
35553 
XS(_wrap_dist_mountain__SWIG_0)35554 XS(_wrap_dist_mountain__SWIG_0) {
35555   {
35556     std::string arg1 ;
35557     std::string arg2 ;
35558     unsigned int arg3 ;
35559     unsigned int val3 ;
35560     int ecode3 = 0 ;
35561     int argvi = 0;
35562     double result;
35563     dXSARGS;
35564 
35565     if ((items < 3) || (items > 3)) {
35566       SWIG_croak("Usage: dist_mountain(str1,str2,p);");
35567     }
35568     {
35569       std::string *ptr = (std::string *)0;
35570       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
35571       if (!SWIG_IsOK(res) || !ptr) {
35572         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "dist_mountain" "', argument " "1"" of type '" "std::string""'");
35573       }
35574       arg1 = *ptr;
35575       if (SWIG_IsNewObj(res)) delete ptr;
35576     }
35577     {
35578       std::string *ptr = (std::string *)0;
35579       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
35580       if (!SWIG_IsOK(res) || !ptr) {
35581         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "dist_mountain" "', argument " "2"" of type '" "std::string""'");
35582       }
35583       arg2 = *ptr;
35584       if (SWIG_IsNewObj(res)) delete ptr;
35585     }
35586     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
35587     if (!SWIG_IsOK(ecode3)) {
35588       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "dist_mountain" "', argument " "3"" of type '" "unsigned int""'");
35589     }
35590     arg3 = static_cast< unsigned int >(val3);
35591     {
35592       try {
35593         result = (double)my_dist_mountain(arg1,arg2,arg3);
35594       } catch (const std::exception& e) {
35595         SWIG_exception(SWIG_RuntimeError, e.what());
35596       }
35597     }
35598     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
35599 
35600 
35601 
35602     XSRETURN(argvi);
35603   fail:
35604 
35605 
35606 
35607     SWIG_croak_null();
35608   }
35609 }
35610 
35611 
XS(_wrap_dist_mountain__SWIG_1)35612 XS(_wrap_dist_mountain__SWIG_1) {
35613   {
35614     std::string arg1 ;
35615     std::string arg2 ;
35616     int argvi = 0;
35617     double result;
35618     dXSARGS;
35619 
35620     if ((items < 2) || (items > 2)) {
35621       SWIG_croak("Usage: dist_mountain(str1,str2);");
35622     }
35623     {
35624       std::string *ptr = (std::string *)0;
35625       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
35626       if (!SWIG_IsOK(res) || !ptr) {
35627         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "dist_mountain" "', argument " "1"" of type '" "std::string""'");
35628       }
35629       arg1 = *ptr;
35630       if (SWIG_IsNewObj(res)) delete ptr;
35631     }
35632     {
35633       std::string *ptr = (std::string *)0;
35634       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
35635       if (!SWIG_IsOK(res) || !ptr) {
35636         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "dist_mountain" "', argument " "2"" of type '" "std::string""'");
35637       }
35638       arg2 = *ptr;
35639       if (SWIG_IsNewObj(res)) delete ptr;
35640     }
35641     {
35642       try {
35643         result = (double)my_dist_mountain(arg1,arg2);
35644       } catch (const std::exception& e) {
35645         SWIG_exception(SWIG_RuntimeError, e.what());
35646       }
35647     }
35648     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
35649 
35650 
35651     XSRETURN(argvi);
35652   fail:
35653 
35654 
35655     SWIG_croak_null();
35656   }
35657 }
35658 
35659 
XS(_wrap_dist_mountain)35660 XS(_wrap_dist_mountain) {
35661   dXSARGS;
35662 
35663   {
35664     unsigned long _index = 0;
35665     SWIG_TypeRank _rank = 0;
35666     if (items == 2) {
35667       SWIG_TypeRank _ranki = 0;
35668       SWIG_TypeRank _rankm = 0;
35669       SWIG_TypeRank _pi = 1;
35670       int _v = 0;
35671       {
35672         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
35673         _v = SWIG_CheckState(res);
35674       }
35675       if (!_v) goto check_1;
35676       _ranki += _v*_pi;
35677       _rankm += _pi;
35678       _pi *= SWIG_MAXCASTRANK;
35679       {
35680         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
35681         _v = SWIG_CheckState(res);
35682       }
35683       if (!_v) goto check_1;
35684       _ranki += _v*_pi;
35685       _rankm += _pi;
35686       _pi *= SWIG_MAXCASTRANK;
35687       if (!_index || (_ranki < _rank)) {
35688         _rank = _ranki; _index = 1;
35689         if (_rank == _rankm) goto dispatch;
35690       }
35691     }
35692   check_1:
35693 
35694     if (items == 3) {
35695       SWIG_TypeRank _ranki = 0;
35696       SWIG_TypeRank _rankm = 0;
35697       SWIG_TypeRank _pi = 1;
35698       int _v = 0;
35699       {
35700         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
35701         _v = SWIG_CheckState(res);
35702       }
35703       if (!_v) goto check_2;
35704       _ranki += _v*_pi;
35705       _rankm += _pi;
35706       _pi *= SWIG_MAXCASTRANK;
35707       {
35708         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
35709         _v = SWIG_CheckState(res);
35710       }
35711       if (!_v) goto check_2;
35712       _ranki += _v*_pi;
35713       _rankm += _pi;
35714       _pi *= SWIG_MAXCASTRANK;
35715       {
35716         {
35717           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
35718           _v = SWIG_CheckState(res);
35719         }
35720       }
35721       if (!_v) goto check_2;
35722       _ranki += _v*_pi;
35723       _rankm += _pi;
35724       _pi *= SWIG_MAXCASTRANK;
35725       if (!_index || (_ranki < _rank)) {
35726         _rank = _ranki; _index = 2;
35727         if (_rank == _rankm) goto dispatch;
35728       }
35729     }
35730   check_2:
35731 
35732   dispatch:
35733     switch(_index) {
35734     case 1:
35735       PUSHMARK(MARK); SWIG_CALLXS(_wrap_dist_mountain__SWIG_1); return;
35736     case 2:
35737       PUSHMARK(MARK); SWIG_CALLXS(_wrap_dist_mountain__SWIG_0); return;
35738     }
35739   }
35740 
35741   croak("No matching function for overloaded 'dist_mountain'");
35742   XSRETURN(0);
35743 }
35744 
35745 
XS(_wrap_db_pack)35746 XS(_wrap_db_pack) {
35747   {
35748     char *arg1 = (char *) 0 ;
35749     int res1 ;
35750     char *buf1 = 0 ;
35751     int alloc1 = 0 ;
35752     int argvi = 0;
35753     char *result = 0 ;
35754     dXSARGS;
35755 
35756     if ((items < 1) || (items > 1)) {
35757       SWIG_croak("Usage: db_pack(struc);");
35758     }
35759     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
35760     if (!SWIG_IsOK(res1)) {
35761       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "db_pack" "', argument " "1"" of type '" "char const *""'");
35762     }
35763     arg1 = reinterpret_cast< char * >(buf1);
35764     {
35765       try {
35766         result = (char *)vrna_db_pack((char const *)arg1);
35767       } catch (const std::exception& e) {
35768         SWIG_exception(SWIG_RuntimeError, e.what());
35769       }
35770     }
35771     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
35772     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
35773     delete[] result;
35774     XSRETURN(argvi);
35775   fail:
35776     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
35777     SWIG_croak_null();
35778   }
35779 }
35780 
35781 
XS(_wrap_db_unpack)35782 XS(_wrap_db_unpack) {
35783   {
35784     char *arg1 = (char *) 0 ;
35785     int res1 ;
35786     char *buf1 = 0 ;
35787     int alloc1 = 0 ;
35788     int argvi = 0;
35789     char *result = 0 ;
35790     dXSARGS;
35791 
35792     if ((items < 1) || (items > 1)) {
35793       SWIG_croak("Usage: db_unpack(packed);");
35794     }
35795     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
35796     if (!SWIG_IsOK(res1)) {
35797       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "db_unpack" "', argument " "1"" of type '" "char const *""'");
35798     }
35799     arg1 = reinterpret_cast< char * >(buf1);
35800     {
35801       try {
35802         result = (char *)vrna_db_unpack((char const *)arg1);
35803       } catch (const std::exception& e) {
35804         SWIG_exception(SWIG_RuntimeError, e.what());
35805       }
35806     }
35807     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
35808     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
35809     delete[] result;
35810     XSRETURN(argvi);
35811   fail:
35812     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
35813     SWIG_croak_null();
35814   }
35815 }
35816 
35817 
XS(_wrap_db_to_element_string)35818 XS(_wrap_db_to_element_string) {
35819   {
35820     char *arg1 = (char *) 0 ;
35821     int res1 ;
35822     char *buf1 = 0 ;
35823     int alloc1 = 0 ;
35824     int argvi = 0;
35825     char *result = 0 ;
35826     dXSARGS;
35827 
35828     if ((items < 1) || (items > 1)) {
35829       SWIG_croak("Usage: db_to_element_string(structure);");
35830     }
35831     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
35832     if (!SWIG_IsOK(res1)) {
35833       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "db_to_element_string" "', argument " "1"" of type '" "char const *""'");
35834     }
35835     arg1 = reinterpret_cast< char * >(buf1);
35836     {
35837       try {
35838         result = (char *)vrna_db_to_element_string((char const *)arg1);
35839       } catch (const std::exception& e) {
35840         SWIG_exception(SWIG_RuntimeError, e.what());
35841       }
35842     }
35843     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
35844     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
35845     delete[] result;
35846     XSRETURN(argvi);
35847   fail:
35848     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
35849     SWIG_croak_null();
35850   }
35851 }
35852 
35853 
XS(_wrap_consensus__SWIG_0)35854 XS(_wrap_consensus__SWIG_0) {
35855   {
35856     std::vector< std::string > arg1 ;
35857     vrna_md_t *arg2 = (vrna_md_t *) 0 ;
35858     std::vector< std::string > *v1 ;
35859     void *argp2 = 0 ;
35860     int res2 = 0 ;
35861     int argvi = 0;
35862     std::string result;
35863     dXSARGS;
35864 
35865     if ((items < 2) || (items > 2)) {
35866       SWIG_croak("Usage: consensus(alignment,md_p);");
35867     }
35868     {
35869       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
35870           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
35871         arg1 = *v1;
35872       } else if (SvROK(ST(0))) {
35873         AV *av = (AV *)SvRV(ST(0));
35874         if (SvTYPE(av) != SVt_PVAV)
35875         SWIG_croak("Type error in argument 1 of consensus. "
35876           "Expected an array of ""std::string");
35877         SV **tv;
35878         I32 len = av_len(av) + 1;
35879         for (int i=0; i<len; i++) {
35880           tv = av_fetch(av, i, 0);
35881           if (SvPOK(*tv)) {
35882             (&arg1)->push_back((std::string)SwigSvToString(*tv));
35883           } else {
35884             SWIG_croak("Type error in argument 1 of "
35885               "consensus. "
35886               "Expected an array of ""std::string");
35887           }
35888         }
35889       } else {
35890         SWIG_croak("Type error in argument 1 of consensus. "
35891           "Expected an array of ""std::string");
35892       }
35893     }
35894     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_md_t, 0 |  0 );
35895     if (!SWIG_IsOK(res2)) {
35896       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "consensus" "', argument " "2"" of type '" "vrna_md_t *""'");
35897     }
35898     arg2 = reinterpret_cast< vrna_md_t * >(argp2);
35899     {
35900       try {
35901         result = my_consensus_sequence(arg1,arg2);
35902       } catch (const std::exception& e) {
35903         SWIG_exception(SWIG_RuntimeError, e.what());
35904       }
35905     }
35906     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
35907 
35908     XSRETURN(argvi);
35909   fail:
35910 
35911     SWIG_croak_null();
35912   }
35913 }
35914 
35915 
XS(_wrap_consensus__SWIG_1)35916 XS(_wrap_consensus__SWIG_1) {
35917   {
35918     std::vector< std::string > arg1 ;
35919     std::vector< std::string > *v1 ;
35920     int argvi = 0;
35921     std::string result;
35922     dXSARGS;
35923 
35924     if ((items < 1) || (items > 1)) {
35925       SWIG_croak("Usage: consensus(alignment);");
35926     }
35927     {
35928       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
35929           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
35930         arg1 = *v1;
35931       } else if (SvROK(ST(0))) {
35932         AV *av = (AV *)SvRV(ST(0));
35933         if (SvTYPE(av) != SVt_PVAV)
35934         SWIG_croak("Type error in argument 1 of consensus. "
35935           "Expected an array of ""std::string");
35936         SV **tv;
35937         I32 len = av_len(av) + 1;
35938         for (int i=0; i<len; i++) {
35939           tv = av_fetch(av, i, 0);
35940           if (SvPOK(*tv)) {
35941             (&arg1)->push_back((std::string)SwigSvToString(*tv));
35942           } else {
35943             SWIG_croak("Type error in argument 1 of "
35944               "consensus. "
35945               "Expected an array of ""std::string");
35946           }
35947         }
35948       } else {
35949         SWIG_croak("Type error in argument 1 of consensus. "
35950           "Expected an array of ""std::string");
35951       }
35952     }
35953     {
35954       try {
35955         result = my_consensus_sequence(arg1);
35956       } catch (const std::exception& e) {
35957         SWIG_exception(SWIG_RuntimeError, e.what());
35958       }
35959     }
35960     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
35961     XSRETURN(argvi);
35962   fail:
35963     SWIG_croak_null();
35964   }
35965 }
35966 
35967 
XS(_wrap_consensus)35968 XS(_wrap_consensus) {
35969   dXSARGS;
35970 
35971   {
35972     unsigned long _index = 0;
35973     SWIG_TypeRank _rank = 0;
35974     if (items == 1) {
35975       SWIG_TypeRank _ranki = 0;
35976       SWIG_TypeRank _rankm = 0;
35977       SWIG_TypeRank _pi = 1;
35978       int _v = 0;
35979       {
35980         {
35981           {
35982             /* wrapped vector? */
35983             std::vector< std::string >* v;
35984             if (SWIG_ConvertPtr(ST(0),(void **) &v,
35985                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
35986               _v = 1;
35987             } else if (SvROK(ST(0))) {
35988               /* native sequence? */
35989               AV *av = (AV *)SvRV(ST(0));
35990               if (SvTYPE(av) == SVt_PVAV) {
35991                 I32 len = av_len(av) + 1;
35992                 if (len == 0) {
35993                   /* an empty sequence can be of any type */
35994                   _v = 1;
35995                 } else {
35996                   /* check the first element only */
35997                   SV **tv = av_fetch(av, 0, 0);
35998                   if (SvPOK(*tv))
35999                   _v = 1;
36000                   else
36001                   _v = 0;
36002                 }
36003               }
36004             } else {
36005               _v = 0;
36006             }
36007           }
36008         }
36009       }
36010       if (!_v) goto check_1;
36011       _ranki += _v*_pi;
36012       _rankm += _pi;
36013       _pi *= SWIG_MAXCASTRANK;
36014       if (!_index || (_ranki < _rank)) {
36015         _rank = _ranki; _index = 1;
36016         if (_rank == _rankm) goto dispatch;
36017       }
36018     }
36019   check_1:
36020 
36021     if (items == 2) {
36022       SWIG_TypeRank _ranki = 0;
36023       SWIG_TypeRank _rankm = 0;
36024       SWIG_TypeRank _pi = 1;
36025       int _v = 0;
36026       {
36027         {
36028           {
36029             /* wrapped vector? */
36030             std::vector< std::string >* v;
36031             if (SWIG_ConvertPtr(ST(0),(void **) &v,
36032                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
36033               _v = 1;
36034             } else if (SvROK(ST(0))) {
36035               /* native sequence? */
36036               AV *av = (AV *)SvRV(ST(0));
36037               if (SvTYPE(av) == SVt_PVAV) {
36038                 I32 len = av_len(av) + 1;
36039                 if (len == 0) {
36040                   /* an empty sequence can be of any type */
36041                   _v = 1;
36042                 } else {
36043                   /* check the first element only */
36044                   SV **tv = av_fetch(av, 0, 0);
36045                   if (SvPOK(*tv))
36046                   _v = 1;
36047                   else
36048                   _v = 0;
36049                 }
36050               }
36051             } else {
36052               _v = 0;
36053             }
36054           }
36055         }
36056       }
36057       if (!_v) goto check_2;
36058       _ranki += _v*_pi;
36059       _rankm += _pi;
36060       _pi *= SWIG_MAXCASTRANK;
36061       {
36062         void *vptr = 0;
36063         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_md_t, 0);
36064         _v = SWIG_CheckState(res);
36065       }
36066       if (!_v) goto check_2;
36067       _ranki += _v*_pi;
36068       _rankm += _pi;
36069       _pi *= SWIG_MAXCASTRANK;
36070       if (!_index || (_ranki < _rank)) {
36071         _rank = _ranki; _index = 2;
36072         if (_rank == _rankm) goto dispatch;
36073       }
36074     }
36075   check_2:
36076 
36077   dispatch:
36078     switch(_index) {
36079     case 1:
36080       PUSHMARK(MARK); SWIG_CALLXS(_wrap_consensus__SWIG_1); return;
36081     case 2:
36082       PUSHMARK(MARK); SWIG_CALLXS(_wrap_consensus__SWIG_0); return;
36083     }
36084   }
36085 
36086   croak("No matching function for overloaded 'consensus'");
36087   XSRETURN(0);
36088 }
36089 
36090 
XS(_wrap_consens_mis__SWIG_0)36091 XS(_wrap_consens_mis__SWIG_0) {
36092   {
36093     std::vector< std::string > arg1 ;
36094     vrna_md_t *arg2 = (vrna_md_t *) 0 ;
36095     std::vector< std::string > *v1 ;
36096     void *argp2 = 0 ;
36097     int res2 = 0 ;
36098     int argvi = 0;
36099     std::string result;
36100     dXSARGS;
36101 
36102     if ((items < 2) || (items > 2)) {
36103       SWIG_croak("Usage: consens_mis(alignment,md_p);");
36104     }
36105     {
36106       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
36107           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
36108         arg1 = *v1;
36109       } else if (SvROK(ST(0))) {
36110         AV *av = (AV *)SvRV(ST(0));
36111         if (SvTYPE(av) != SVt_PVAV)
36112         SWIG_croak("Type error in argument 1 of consens_mis. "
36113           "Expected an array of ""std::string");
36114         SV **tv;
36115         I32 len = av_len(av) + 1;
36116         for (int i=0; i<len; i++) {
36117           tv = av_fetch(av, i, 0);
36118           if (SvPOK(*tv)) {
36119             (&arg1)->push_back((std::string)SwigSvToString(*tv));
36120           } else {
36121             SWIG_croak("Type error in argument 1 of "
36122               "consens_mis. "
36123               "Expected an array of ""std::string");
36124           }
36125         }
36126       } else {
36127         SWIG_croak("Type error in argument 1 of consens_mis. "
36128           "Expected an array of ""std::string");
36129       }
36130     }
36131     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_md_t, 0 |  0 );
36132     if (!SWIG_IsOK(res2)) {
36133       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "consens_mis" "', argument " "2"" of type '" "vrna_md_t *""'");
36134     }
36135     arg2 = reinterpret_cast< vrna_md_t * >(argp2);
36136     {
36137       try {
36138         result = my_aln_consensus_mis(arg1,arg2);
36139       } catch (const std::exception& e) {
36140         SWIG_exception(SWIG_RuntimeError, e.what());
36141       }
36142     }
36143     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
36144 
36145     XSRETURN(argvi);
36146   fail:
36147 
36148     SWIG_croak_null();
36149   }
36150 }
36151 
36152 
XS(_wrap_consens_mis__SWIG_1)36153 XS(_wrap_consens_mis__SWIG_1) {
36154   {
36155     std::vector< std::string > arg1 ;
36156     std::vector< std::string > *v1 ;
36157     int argvi = 0;
36158     std::string result;
36159     dXSARGS;
36160 
36161     if ((items < 1) || (items > 1)) {
36162       SWIG_croak("Usage: consens_mis(alignment);");
36163     }
36164     {
36165       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
36166           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
36167         arg1 = *v1;
36168       } else if (SvROK(ST(0))) {
36169         AV *av = (AV *)SvRV(ST(0));
36170         if (SvTYPE(av) != SVt_PVAV)
36171         SWIG_croak("Type error in argument 1 of consens_mis. "
36172           "Expected an array of ""std::string");
36173         SV **tv;
36174         I32 len = av_len(av) + 1;
36175         for (int i=0; i<len; i++) {
36176           tv = av_fetch(av, i, 0);
36177           if (SvPOK(*tv)) {
36178             (&arg1)->push_back((std::string)SwigSvToString(*tv));
36179           } else {
36180             SWIG_croak("Type error in argument 1 of "
36181               "consens_mis. "
36182               "Expected an array of ""std::string");
36183           }
36184         }
36185       } else {
36186         SWIG_croak("Type error in argument 1 of consens_mis. "
36187           "Expected an array of ""std::string");
36188       }
36189     }
36190     {
36191       try {
36192         result = my_aln_consensus_mis(arg1);
36193       } catch (const std::exception& e) {
36194         SWIG_exception(SWIG_RuntimeError, e.what());
36195       }
36196     }
36197     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
36198     XSRETURN(argvi);
36199   fail:
36200     SWIG_croak_null();
36201   }
36202 }
36203 
36204 
XS(_wrap_consens_mis)36205 XS(_wrap_consens_mis) {
36206   dXSARGS;
36207 
36208   {
36209     unsigned long _index = 0;
36210     SWIG_TypeRank _rank = 0;
36211     if (items == 1) {
36212       SWIG_TypeRank _ranki = 0;
36213       SWIG_TypeRank _rankm = 0;
36214       SWIG_TypeRank _pi = 1;
36215       int _v = 0;
36216       {
36217         {
36218           {
36219             /* wrapped vector? */
36220             std::vector< std::string >* v;
36221             if (SWIG_ConvertPtr(ST(0),(void **) &v,
36222                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
36223               _v = 1;
36224             } else if (SvROK(ST(0))) {
36225               /* native sequence? */
36226               AV *av = (AV *)SvRV(ST(0));
36227               if (SvTYPE(av) == SVt_PVAV) {
36228                 I32 len = av_len(av) + 1;
36229                 if (len == 0) {
36230                   /* an empty sequence can be of any type */
36231                   _v = 1;
36232                 } else {
36233                   /* check the first element only */
36234                   SV **tv = av_fetch(av, 0, 0);
36235                   if (SvPOK(*tv))
36236                   _v = 1;
36237                   else
36238                   _v = 0;
36239                 }
36240               }
36241             } else {
36242               _v = 0;
36243             }
36244           }
36245         }
36246       }
36247       if (!_v) goto check_1;
36248       _ranki += _v*_pi;
36249       _rankm += _pi;
36250       _pi *= SWIG_MAXCASTRANK;
36251       if (!_index || (_ranki < _rank)) {
36252         _rank = _ranki; _index = 1;
36253         if (_rank == _rankm) goto dispatch;
36254       }
36255     }
36256   check_1:
36257 
36258     if (items == 2) {
36259       SWIG_TypeRank _ranki = 0;
36260       SWIG_TypeRank _rankm = 0;
36261       SWIG_TypeRank _pi = 1;
36262       int _v = 0;
36263       {
36264         {
36265           {
36266             /* wrapped vector? */
36267             std::vector< std::string >* v;
36268             if (SWIG_ConvertPtr(ST(0),(void **) &v,
36269                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
36270               _v = 1;
36271             } else if (SvROK(ST(0))) {
36272               /* native sequence? */
36273               AV *av = (AV *)SvRV(ST(0));
36274               if (SvTYPE(av) == SVt_PVAV) {
36275                 I32 len = av_len(av) + 1;
36276                 if (len == 0) {
36277                   /* an empty sequence can be of any type */
36278                   _v = 1;
36279                 } else {
36280                   /* check the first element only */
36281                   SV **tv = av_fetch(av, 0, 0);
36282                   if (SvPOK(*tv))
36283                   _v = 1;
36284                   else
36285                   _v = 0;
36286                 }
36287               }
36288             } else {
36289               _v = 0;
36290             }
36291           }
36292         }
36293       }
36294       if (!_v) goto check_2;
36295       _ranki += _v*_pi;
36296       _rankm += _pi;
36297       _pi *= SWIG_MAXCASTRANK;
36298       {
36299         void *vptr = 0;
36300         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_md_t, 0);
36301         _v = SWIG_CheckState(res);
36302       }
36303       if (!_v) goto check_2;
36304       _ranki += _v*_pi;
36305       _rankm += _pi;
36306       _pi *= SWIG_MAXCASTRANK;
36307       if (!_index || (_ranki < _rank)) {
36308         _rank = _ranki; _index = 2;
36309         if (_rank == _rankm) goto dispatch;
36310       }
36311     }
36312   check_2:
36313 
36314   dispatch:
36315     switch(_index) {
36316     case 1:
36317       PUSHMARK(MARK); SWIG_CALLXS(_wrap_consens_mis__SWIG_1); return;
36318     case 2:
36319       PUSHMARK(MARK); SWIG_CALLXS(_wrap_consens_mis__SWIG_0); return;
36320     }
36321   }
36322 
36323   croak("No matching function for overloaded 'consens_mis'");
36324   XSRETURN(0);
36325 }
36326 
36327 
XS(_wrap_aln_mpi)36328 XS(_wrap_aln_mpi) {
36329   {
36330     std::vector< std::string > arg1 ;
36331     std::vector< std::string > *v1 ;
36332     int argvi = 0;
36333     int result;
36334     dXSARGS;
36335 
36336     if ((items < 1) || (items > 1)) {
36337       SWIG_croak("Usage: aln_mpi(alignment);");
36338     }
36339     {
36340       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
36341           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
36342         arg1 = *v1;
36343       } else if (SvROK(ST(0))) {
36344         AV *av = (AV *)SvRV(ST(0));
36345         if (SvTYPE(av) != SVt_PVAV)
36346         SWIG_croak("Type error in argument 1 of aln_mpi. "
36347           "Expected an array of ""std::string");
36348         SV **tv;
36349         I32 len = av_len(av) + 1;
36350         for (int i=0; i<len; i++) {
36351           tv = av_fetch(av, i, 0);
36352           if (SvPOK(*tv)) {
36353             (&arg1)->push_back((std::string)SwigSvToString(*tv));
36354           } else {
36355             SWIG_croak("Type error in argument 1 of "
36356               "aln_mpi. "
36357               "Expected an array of ""std::string");
36358           }
36359         }
36360       } else {
36361         SWIG_croak("Type error in argument 1 of aln_mpi. "
36362           "Expected an array of ""std::string");
36363       }
36364     }
36365     {
36366       try {
36367         result = (int)my_aln_mpi(arg1);
36368       } catch (const std::exception& e) {
36369         SWIG_exception(SWIG_RuntimeError, e.what());
36370       }
36371     }
36372     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
36373     XSRETURN(argvi);
36374   fail:
36375     SWIG_croak_null();
36376   }
36377 }
36378 
36379 
XS(_wrap_aln_pscore__SWIG_0)36380 XS(_wrap_aln_pscore__SWIG_0) {
36381   {
36382     std::vector< std::string > arg1 ;
36383     vrna_md_t *arg2 = (vrna_md_t *) 0 ;
36384     std::vector< std::string > *v1 ;
36385     void *argp2 = 0 ;
36386     int res2 = 0 ;
36387     int argvi = 0;
36388     std::vector< std::vector< int > > result;
36389     dXSARGS;
36390 
36391     if ((items < 2) || (items > 2)) {
36392       SWIG_croak("Usage: aln_pscore(alignment,md);");
36393     }
36394     {
36395       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
36396           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
36397         arg1 = *v1;
36398       } else if (SvROK(ST(0))) {
36399         AV *av = (AV *)SvRV(ST(0));
36400         if (SvTYPE(av) != SVt_PVAV)
36401         SWIG_croak("Type error in argument 1 of aln_pscore. "
36402           "Expected an array of ""std::string");
36403         SV **tv;
36404         I32 len = av_len(av) + 1;
36405         for (int i=0; i<len; i++) {
36406           tv = av_fetch(av, i, 0);
36407           if (SvPOK(*tv)) {
36408             (&arg1)->push_back((std::string)SwigSvToString(*tv));
36409           } else {
36410             SWIG_croak("Type error in argument 1 of "
36411               "aln_pscore. "
36412               "Expected an array of ""std::string");
36413           }
36414         }
36415       } else {
36416         SWIG_croak("Type error in argument 1 of aln_pscore. "
36417           "Expected an array of ""std::string");
36418       }
36419     }
36420     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_md_t, 0 |  0 );
36421     if (!SWIG_IsOK(res2)) {
36422       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "aln_pscore" "', argument " "2"" of type '" "vrna_md_t *""'");
36423     }
36424     arg2 = reinterpret_cast< vrna_md_t * >(argp2);
36425     {
36426       try {
36427         result = my_aln_pscore(arg1,arg2);
36428       } catch (const std::exception& e) {
36429         SWIG_exception(SWIG_RuntimeError, e.what());
36430       }
36431     }
36432     {
36433       AV *arr = newAV();
36434       for(unsigned int i = 0; i < (&result)->size(); i++) {
36435         AV *vec = newAV();
36436         for(unsigned int j = 0; j < result[i].size(); j++) {
36437           SV *v = newSViv(result[i][j]);
36438           if (!av_store(vec, j, v))
36439           SvREFCNT_dec(v);
36440         }
36441         /* store reference to array */
36442         av_store(arr, i, newRV_noinc((SV*) vec));
36443       }
36444 
36445       ST(argvi) = newRV_noinc((SV*) arr);
36446       sv_2mortal( ST(argvi) );
36447       argvi++;
36448     }
36449 
36450     XSRETURN(argvi);
36451   fail:
36452 
36453     SWIG_croak_null();
36454   }
36455 }
36456 
36457 
XS(_wrap_aln_pscore__SWIG_1)36458 XS(_wrap_aln_pscore__SWIG_1) {
36459   {
36460     std::vector< std::string > arg1 ;
36461     std::vector< std::string > *v1 ;
36462     int argvi = 0;
36463     std::vector< std::vector< int > > result;
36464     dXSARGS;
36465 
36466     if ((items < 1) || (items > 1)) {
36467       SWIG_croak("Usage: aln_pscore(alignment);");
36468     }
36469     {
36470       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
36471           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
36472         arg1 = *v1;
36473       } else if (SvROK(ST(0))) {
36474         AV *av = (AV *)SvRV(ST(0));
36475         if (SvTYPE(av) != SVt_PVAV)
36476         SWIG_croak("Type error in argument 1 of aln_pscore. "
36477           "Expected an array of ""std::string");
36478         SV **tv;
36479         I32 len = av_len(av) + 1;
36480         for (int i=0; i<len; i++) {
36481           tv = av_fetch(av, i, 0);
36482           if (SvPOK(*tv)) {
36483             (&arg1)->push_back((std::string)SwigSvToString(*tv));
36484           } else {
36485             SWIG_croak("Type error in argument 1 of "
36486               "aln_pscore. "
36487               "Expected an array of ""std::string");
36488           }
36489         }
36490       } else {
36491         SWIG_croak("Type error in argument 1 of aln_pscore. "
36492           "Expected an array of ""std::string");
36493       }
36494     }
36495     {
36496       try {
36497         result = my_aln_pscore(arg1);
36498       } catch (const std::exception& e) {
36499         SWIG_exception(SWIG_RuntimeError, e.what());
36500       }
36501     }
36502     {
36503       AV *arr = newAV();
36504       for(unsigned int i = 0; i < (&result)->size(); i++) {
36505         AV *vec = newAV();
36506         for(unsigned int j = 0; j < result[i].size(); j++) {
36507           SV *v = newSViv(result[i][j]);
36508           if (!av_store(vec, j, v))
36509           SvREFCNT_dec(v);
36510         }
36511         /* store reference to array */
36512         av_store(arr, i, newRV_noinc((SV*) vec));
36513       }
36514 
36515       ST(argvi) = newRV_noinc((SV*) arr);
36516       sv_2mortal( ST(argvi) );
36517       argvi++;
36518     }
36519     XSRETURN(argvi);
36520   fail:
36521     SWIG_croak_null();
36522   }
36523 }
36524 
36525 
XS(_wrap_aln_pscore)36526 XS(_wrap_aln_pscore) {
36527   dXSARGS;
36528 
36529   {
36530     unsigned long _index = 0;
36531     SWIG_TypeRank _rank = 0;
36532     if (items == 1) {
36533       SWIG_TypeRank _ranki = 0;
36534       SWIG_TypeRank _rankm = 0;
36535       SWIG_TypeRank _pi = 1;
36536       int _v = 0;
36537       {
36538         {
36539           {
36540             /* wrapped vector? */
36541             std::vector< std::string >* v;
36542             if (SWIG_ConvertPtr(ST(0),(void **) &v,
36543                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
36544               _v = 1;
36545             } else if (SvROK(ST(0))) {
36546               /* native sequence? */
36547               AV *av = (AV *)SvRV(ST(0));
36548               if (SvTYPE(av) == SVt_PVAV) {
36549                 I32 len = av_len(av) + 1;
36550                 if (len == 0) {
36551                   /* an empty sequence can be of any type */
36552                   _v = 1;
36553                 } else {
36554                   /* check the first element only */
36555                   SV **tv = av_fetch(av, 0, 0);
36556                   if (SvPOK(*tv))
36557                   _v = 1;
36558                   else
36559                   _v = 0;
36560                 }
36561               }
36562             } else {
36563               _v = 0;
36564             }
36565           }
36566         }
36567       }
36568       if (!_v) goto check_1;
36569       _ranki += _v*_pi;
36570       _rankm += _pi;
36571       _pi *= SWIG_MAXCASTRANK;
36572       if (!_index || (_ranki < _rank)) {
36573         _rank = _ranki; _index = 1;
36574         if (_rank == _rankm) goto dispatch;
36575       }
36576     }
36577   check_1:
36578 
36579     if (items == 2) {
36580       SWIG_TypeRank _ranki = 0;
36581       SWIG_TypeRank _rankm = 0;
36582       SWIG_TypeRank _pi = 1;
36583       int _v = 0;
36584       {
36585         {
36586           {
36587             /* wrapped vector? */
36588             std::vector< std::string >* v;
36589             if (SWIG_ConvertPtr(ST(0),(void **) &v,
36590                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
36591               _v = 1;
36592             } else if (SvROK(ST(0))) {
36593               /* native sequence? */
36594               AV *av = (AV *)SvRV(ST(0));
36595               if (SvTYPE(av) == SVt_PVAV) {
36596                 I32 len = av_len(av) + 1;
36597                 if (len == 0) {
36598                   /* an empty sequence can be of any type */
36599                   _v = 1;
36600                 } else {
36601                   /* check the first element only */
36602                   SV **tv = av_fetch(av, 0, 0);
36603                   if (SvPOK(*tv))
36604                   _v = 1;
36605                   else
36606                   _v = 0;
36607                 }
36608               }
36609             } else {
36610               _v = 0;
36611             }
36612           }
36613         }
36614       }
36615       if (!_v) goto check_2;
36616       _ranki += _v*_pi;
36617       _rankm += _pi;
36618       _pi *= SWIG_MAXCASTRANK;
36619       {
36620         void *vptr = 0;
36621         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_md_t, 0);
36622         _v = SWIG_CheckState(res);
36623       }
36624       if (!_v) goto check_2;
36625       _ranki += _v*_pi;
36626       _rankm += _pi;
36627       _pi *= SWIG_MAXCASTRANK;
36628       if (!_index || (_ranki < _rank)) {
36629         _rank = _ranki; _index = 2;
36630         if (_rank == _rankm) goto dispatch;
36631       }
36632     }
36633   check_2:
36634 
36635   dispatch:
36636     switch(_index) {
36637     case 1:
36638       PUSHMARK(MARK); SWIG_CALLXS(_wrap_aln_pscore__SWIG_1); return;
36639     case 2:
36640       PUSHMARK(MARK); SWIG_CALLXS(_wrap_aln_pscore__SWIG_0); return;
36641     }
36642   }
36643 
36644   croak("No matching function for overloaded 'aln_pscore'");
36645   XSRETURN(0);
36646 }
36647 
36648 
XS(_wrap_aln_conservation_struct__SWIG_0)36649 XS(_wrap_aln_conservation_struct__SWIG_0) {
36650   {
36651     std::vector< std::string > arg1 ;
36652     std::string arg2 ;
36653     vrna_md_t *arg3 = (vrna_md_t *) 0 ;
36654     std::vector< std::string > *v1 ;
36655     void *argp3 = 0 ;
36656     int res3 = 0 ;
36657     int argvi = 0;
36658     std::vector< double > result;
36659     dXSARGS;
36660 
36661     if ((items < 3) || (items > 3)) {
36662       SWIG_croak("Usage: aln_conservation_struct(alignment,structure,md);");
36663     }
36664     {
36665       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
36666           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
36667         arg1 = *v1;
36668       } else if (SvROK(ST(0))) {
36669         AV *av = (AV *)SvRV(ST(0));
36670         if (SvTYPE(av) != SVt_PVAV)
36671         SWIG_croak("Type error in argument 1 of aln_conservation_struct. "
36672           "Expected an array of ""std::string");
36673         SV **tv;
36674         I32 len = av_len(av) + 1;
36675         for (int i=0; i<len; i++) {
36676           tv = av_fetch(av, i, 0);
36677           if (SvPOK(*tv)) {
36678             (&arg1)->push_back((std::string)SwigSvToString(*tv));
36679           } else {
36680             SWIG_croak("Type error in argument 1 of "
36681               "aln_conservation_struct. "
36682               "Expected an array of ""std::string");
36683           }
36684         }
36685       } else {
36686         SWIG_croak("Type error in argument 1 of aln_conservation_struct. "
36687           "Expected an array of ""std::string");
36688       }
36689     }
36690     {
36691       std::string *ptr = (std::string *)0;
36692       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
36693       if (!SWIG_IsOK(res) || !ptr) {
36694         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "aln_conservation_struct" "', argument " "2"" of type '" "std::string""'");
36695       }
36696       arg2 = *ptr;
36697       if (SWIG_IsNewObj(res)) delete ptr;
36698     }
36699     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_vrna_md_t, 0 |  0 );
36700     if (!SWIG_IsOK(res3)) {
36701       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "aln_conservation_struct" "', argument " "3"" of type '" "vrna_md_t *""'");
36702     }
36703     arg3 = reinterpret_cast< vrna_md_t * >(argp3);
36704     {
36705       try {
36706         result = my_aln_conservation_struct(arg1,arg2,arg3);
36707       } catch (const std::exception& e) {
36708         SWIG_exception(SWIG_RuntimeError, e.what());
36709       }
36710     }
36711     {
36712       size_t len = (&result)->size();
36713       SV **svs = new SV*[len];
36714       for (size_t i=0; i<len; i++) {
36715         svs[i] = sv_newmortal();
36716         sv_setnv(svs[i], result[i]);
36717       }
36718       AV *myav = av_make(len, svs);
36719       delete[] svs;
36720       ST(argvi) = newRV_noinc((SV*) myav);
36721       sv_2mortal(ST(argvi));
36722       argvi++;
36723     }
36724 
36725 
36726     XSRETURN(argvi);
36727   fail:
36728 
36729 
36730     SWIG_croak_null();
36731   }
36732 }
36733 
36734 
XS(_wrap_aln_conservation_struct__SWIG_1)36735 XS(_wrap_aln_conservation_struct__SWIG_1) {
36736   {
36737     std::vector< std::string > arg1 ;
36738     std::string arg2 ;
36739     std::vector< std::string > *v1 ;
36740     int argvi = 0;
36741     std::vector< double > result;
36742     dXSARGS;
36743 
36744     if ((items < 2) || (items > 2)) {
36745       SWIG_croak("Usage: aln_conservation_struct(alignment,structure);");
36746     }
36747     {
36748       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
36749           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
36750         arg1 = *v1;
36751       } else if (SvROK(ST(0))) {
36752         AV *av = (AV *)SvRV(ST(0));
36753         if (SvTYPE(av) != SVt_PVAV)
36754         SWIG_croak("Type error in argument 1 of aln_conservation_struct. "
36755           "Expected an array of ""std::string");
36756         SV **tv;
36757         I32 len = av_len(av) + 1;
36758         for (int i=0; i<len; i++) {
36759           tv = av_fetch(av, i, 0);
36760           if (SvPOK(*tv)) {
36761             (&arg1)->push_back((std::string)SwigSvToString(*tv));
36762           } else {
36763             SWIG_croak("Type error in argument 1 of "
36764               "aln_conservation_struct. "
36765               "Expected an array of ""std::string");
36766           }
36767         }
36768       } else {
36769         SWIG_croak("Type error in argument 1 of aln_conservation_struct. "
36770           "Expected an array of ""std::string");
36771       }
36772     }
36773     {
36774       std::string *ptr = (std::string *)0;
36775       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
36776       if (!SWIG_IsOK(res) || !ptr) {
36777         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "aln_conservation_struct" "', argument " "2"" of type '" "std::string""'");
36778       }
36779       arg2 = *ptr;
36780       if (SWIG_IsNewObj(res)) delete ptr;
36781     }
36782     {
36783       try {
36784         result = my_aln_conservation_struct(arg1,arg2);
36785       } catch (const std::exception& e) {
36786         SWIG_exception(SWIG_RuntimeError, e.what());
36787       }
36788     }
36789     {
36790       size_t len = (&result)->size();
36791       SV **svs = new SV*[len];
36792       for (size_t i=0; i<len; i++) {
36793         svs[i] = sv_newmortal();
36794         sv_setnv(svs[i], result[i]);
36795       }
36796       AV *myav = av_make(len, svs);
36797       delete[] svs;
36798       ST(argvi) = newRV_noinc((SV*) myav);
36799       sv_2mortal(ST(argvi));
36800       argvi++;
36801     }
36802 
36803     XSRETURN(argvi);
36804   fail:
36805 
36806     SWIG_croak_null();
36807   }
36808 }
36809 
36810 
XS(_wrap_aln_conservation_struct)36811 XS(_wrap_aln_conservation_struct) {
36812   dXSARGS;
36813 
36814   {
36815     unsigned long _index = 0;
36816     SWIG_TypeRank _rank = 0;
36817     if (items == 2) {
36818       SWIG_TypeRank _ranki = 0;
36819       SWIG_TypeRank _rankm = 0;
36820       SWIG_TypeRank _pi = 1;
36821       int _v = 0;
36822       {
36823         {
36824           {
36825             /* wrapped vector? */
36826             std::vector< std::string >* v;
36827             if (SWIG_ConvertPtr(ST(0),(void **) &v,
36828                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
36829               _v = 1;
36830             } else if (SvROK(ST(0))) {
36831               /* native sequence? */
36832               AV *av = (AV *)SvRV(ST(0));
36833               if (SvTYPE(av) == SVt_PVAV) {
36834                 I32 len = av_len(av) + 1;
36835                 if (len == 0) {
36836                   /* an empty sequence can be of any type */
36837                   _v = 1;
36838                 } else {
36839                   /* check the first element only */
36840                   SV **tv = av_fetch(av, 0, 0);
36841                   if (SvPOK(*tv))
36842                   _v = 1;
36843                   else
36844                   _v = 0;
36845                 }
36846               }
36847             } else {
36848               _v = 0;
36849             }
36850           }
36851         }
36852       }
36853       if (!_v) goto check_1;
36854       _ranki += _v*_pi;
36855       _rankm += _pi;
36856       _pi *= SWIG_MAXCASTRANK;
36857       {
36858         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
36859         _v = SWIG_CheckState(res);
36860       }
36861       if (!_v) goto check_1;
36862       _ranki += _v*_pi;
36863       _rankm += _pi;
36864       _pi *= SWIG_MAXCASTRANK;
36865       if (!_index || (_ranki < _rank)) {
36866         _rank = _ranki; _index = 1;
36867         if (_rank == _rankm) goto dispatch;
36868       }
36869     }
36870   check_1:
36871 
36872     if (items == 3) {
36873       SWIG_TypeRank _ranki = 0;
36874       SWIG_TypeRank _rankm = 0;
36875       SWIG_TypeRank _pi = 1;
36876       int _v = 0;
36877       {
36878         {
36879           {
36880             /* wrapped vector? */
36881             std::vector< std::string >* v;
36882             if (SWIG_ConvertPtr(ST(0),(void **) &v,
36883                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
36884               _v = 1;
36885             } else if (SvROK(ST(0))) {
36886               /* native sequence? */
36887               AV *av = (AV *)SvRV(ST(0));
36888               if (SvTYPE(av) == SVt_PVAV) {
36889                 I32 len = av_len(av) + 1;
36890                 if (len == 0) {
36891                   /* an empty sequence can be of any type */
36892                   _v = 1;
36893                 } else {
36894                   /* check the first element only */
36895                   SV **tv = av_fetch(av, 0, 0);
36896                   if (SvPOK(*tv))
36897                   _v = 1;
36898                   else
36899                   _v = 0;
36900                 }
36901               }
36902             } else {
36903               _v = 0;
36904             }
36905           }
36906         }
36907       }
36908       if (!_v) goto check_2;
36909       _ranki += _v*_pi;
36910       _rankm += _pi;
36911       _pi *= SWIG_MAXCASTRANK;
36912       {
36913         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
36914         _v = SWIG_CheckState(res);
36915       }
36916       if (!_v) goto check_2;
36917       _ranki += _v*_pi;
36918       _rankm += _pi;
36919       _pi *= SWIG_MAXCASTRANK;
36920       {
36921         void *vptr = 0;
36922         int res = SWIG_ConvertPtr(ST(2), &vptr, SWIGTYPE_p_vrna_md_t, 0);
36923         _v = SWIG_CheckState(res);
36924       }
36925       if (!_v) goto check_2;
36926       _ranki += _v*_pi;
36927       _rankm += _pi;
36928       _pi *= SWIG_MAXCASTRANK;
36929       if (!_index || (_ranki < _rank)) {
36930         _rank = _ranki; _index = 2;
36931         if (_rank == _rankm) goto dispatch;
36932       }
36933     }
36934   check_2:
36935 
36936   dispatch:
36937     switch(_index) {
36938     case 1:
36939       PUSHMARK(MARK); SWIG_CALLXS(_wrap_aln_conservation_struct__SWIG_1); return;
36940     case 2:
36941       PUSHMARK(MARK); SWIG_CALLXS(_wrap_aln_conservation_struct__SWIG_0); return;
36942     }
36943   }
36944 
36945   croak("No matching function for overloaded 'aln_conservation_struct'");
36946   XSRETURN(0);
36947 }
36948 
36949 
XS(_wrap_aln_conservation_col__SWIG_0)36950 XS(_wrap_aln_conservation_col__SWIG_0) {
36951   {
36952     std::vector< std::string > arg1 ;
36953     vrna_md_t *arg2 = (vrna_md_t *) 0 ;
36954     unsigned int arg3 ;
36955     std::vector< std::string > *v1 ;
36956     void *argp2 = 0 ;
36957     int res2 = 0 ;
36958     unsigned int val3 ;
36959     int ecode3 = 0 ;
36960     int argvi = 0;
36961     std::vector< double > result;
36962     dXSARGS;
36963 
36964     if ((items < 3) || (items > 3)) {
36965       SWIG_croak("Usage: aln_conservation_col(alignment,md,options);");
36966     }
36967     {
36968       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
36969           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
36970         arg1 = *v1;
36971       } else if (SvROK(ST(0))) {
36972         AV *av = (AV *)SvRV(ST(0));
36973         if (SvTYPE(av) != SVt_PVAV)
36974         SWIG_croak("Type error in argument 1 of aln_conservation_col. "
36975           "Expected an array of ""std::string");
36976         SV **tv;
36977         I32 len = av_len(av) + 1;
36978         for (int i=0; i<len; i++) {
36979           tv = av_fetch(av, i, 0);
36980           if (SvPOK(*tv)) {
36981             (&arg1)->push_back((std::string)SwigSvToString(*tv));
36982           } else {
36983             SWIG_croak("Type error in argument 1 of "
36984               "aln_conservation_col. "
36985               "Expected an array of ""std::string");
36986           }
36987         }
36988       } else {
36989         SWIG_croak("Type error in argument 1 of aln_conservation_col. "
36990           "Expected an array of ""std::string");
36991       }
36992     }
36993     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_md_t, 0 |  0 );
36994     if (!SWIG_IsOK(res2)) {
36995       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "aln_conservation_col" "', argument " "2"" of type '" "vrna_md_t *""'");
36996     }
36997     arg2 = reinterpret_cast< vrna_md_t * >(argp2);
36998     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
36999     if (!SWIG_IsOK(ecode3)) {
37000       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "aln_conservation_col" "', argument " "3"" of type '" "unsigned int""'");
37001     }
37002     arg3 = static_cast< unsigned int >(val3);
37003     {
37004       try {
37005         result = my_aln_conservation_col(arg1,arg2,arg3);
37006       } catch (const std::exception& e) {
37007         SWIG_exception(SWIG_RuntimeError, e.what());
37008       }
37009     }
37010     {
37011       size_t len = (&result)->size();
37012       SV **svs = new SV*[len];
37013       for (size_t i=0; i<len; i++) {
37014         svs[i] = sv_newmortal();
37015         sv_setnv(svs[i], result[i]);
37016       }
37017       AV *myav = av_make(len, svs);
37018       delete[] svs;
37019       ST(argvi) = newRV_noinc((SV*) myav);
37020       sv_2mortal(ST(argvi));
37021       argvi++;
37022     }
37023 
37024 
37025     XSRETURN(argvi);
37026   fail:
37027 
37028 
37029     SWIG_croak_null();
37030   }
37031 }
37032 
37033 
XS(_wrap_aln_conservation_col__SWIG_1)37034 XS(_wrap_aln_conservation_col__SWIG_1) {
37035   {
37036     std::vector< std::string > arg1 ;
37037     vrna_md_t *arg2 = (vrna_md_t *) 0 ;
37038     std::vector< std::string > *v1 ;
37039     void *argp2 = 0 ;
37040     int res2 = 0 ;
37041     int argvi = 0;
37042     std::vector< double > result;
37043     dXSARGS;
37044 
37045     if ((items < 2) || (items > 2)) {
37046       SWIG_croak("Usage: aln_conservation_col(alignment,md);");
37047     }
37048     {
37049       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
37050           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
37051         arg1 = *v1;
37052       } else if (SvROK(ST(0))) {
37053         AV *av = (AV *)SvRV(ST(0));
37054         if (SvTYPE(av) != SVt_PVAV)
37055         SWIG_croak("Type error in argument 1 of aln_conservation_col. "
37056           "Expected an array of ""std::string");
37057         SV **tv;
37058         I32 len = av_len(av) + 1;
37059         for (int i=0; i<len; i++) {
37060           tv = av_fetch(av, i, 0);
37061           if (SvPOK(*tv)) {
37062             (&arg1)->push_back((std::string)SwigSvToString(*tv));
37063           } else {
37064             SWIG_croak("Type error in argument 1 of "
37065               "aln_conservation_col. "
37066               "Expected an array of ""std::string");
37067           }
37068         }
37069       } else {
37070         SWIG_croak("Type error in argument 1 of aln_conservation_col. "
37071           "Expected an array of ""std::string");
37072       }
37073     }
37074     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_md_t, 0 |  0 );
37075     if (!SWIG_IsOK(res2)) {
37076       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "aln_conservation_col" "', argument " "2"" of type '" "vrna_md_t *""'");
37077     }
37078     arg2 = reinterpret_cast< vrna_md_t * >(argp2);
37079     {
37080       try {
37081         result = my_aln_conservation_col(arg1,arg2);
37082       } catch (const std::exception& e) {
37083         SWIG_exception(SWIG_RuntimeError, e.what());
37084       }
37085     }
37086     {
37087       size_t len = (&result)->size();
37088       SV **svs = new SV*[len];
37089       for (size_t i=0; i<len; i++) {
37090         svs[i] = sv_newmortal();
37091         sv_setnv(svs[i], result[i]);
37092       }
37093       AV *myav = av_make(len, svs);
37094       delete[] svs;
37095       ST(argvi) = newRV_noinc((SV*) myav);
37096       sv_2mortal(ST(argvi));
37097       argvi++;
37098     }
37099 
37100     XSRETURN(argvi);
37101   fail:
37102 
37103     SWIG_croak_null();
37104   }
37105 }
37106 
37107 
XS(_wrap_aln_conservation_col__SWIG_2)37108 XS(_wrap_aln_conservation_col__SWIG_2) {
37109   {
37110     std::vector< std::string > arg1 ;
37111     std::vector< std::string > *v1 ;
37112     int argvi = 0;
37113     std::vector< double > result;
37114     dXSARGS;
37115 
37116     if ((items < 1) || (items > 1)) {
37117       SWIG_croak("Usage: aln_conservation_col(alignment);");
37118     }
37119     {
37120       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
37121           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
37122         arg1 = *v1;
37123       } else if (SvROK(ST(0))) {
37124         AV *av = (AV *)SvRV(ST(0));
37125         if (SvTYPE(av) != SVt_PVAV)
37126         SWIG_croak("Type error in argument 1 of aln_conservation_col. "
37127           "Expected an array of ""std::string");
37128         SV **tv;
37129         I32 len = av_len(av) + 1;
37130         for (int i=0; i<len; i++) {
37131           tv = av_fetch(av, i, 0);
37132           if (SvPOK(*tv)) {
37133             (&arg1)->push_back((std::string)SwigSvToString(*tv));
37134           } else {
37135             SWIG_croak("Type error in argument 1 of "
37136               "aln_conservation_col. "
37137               "Expected an array of ""std::string");
37138           }
37139         }
37140       } else {
37141         SWIG_croak("Type error in argument 1 of aln_conservation_col. "
37142           "Expected an array of ""std::string");
37143       }
37144     }
37145     {
37146       try {
37147         result = my_aln_conservation_col(arg1);
37148       } catch (const std::exception& e) {
37149         SWIG_exception(SWIG_RuntimeError, e.what());
37150       }
37151     }
37152     {
37153       size_t len = (&result)->size();
37154       SV **svs = new SV*[len];
37155       for (size_t i=0; i<len; i++) {
37156         svs[i] = sv_newmortal();
37157         sv_setnv(svs[i], result[i]);
37158       }
37159       AV *myav = av_make(len, svs);
37160       delete[] svs;
37161       ST(argvi) = newRV_noinc((SV*) myav);
37162       sv_2mortal(ST(argvi));
37163       argvi++;
37164     }
37165     XSRETURN(argvi);
37166   fail:
37167     SWIG_croak_null();
37168   }
37169 }
37170 
37171 
XS(_wrap_aln_conservation_col)37172 XS(_wrap_aln_conservation_col) {
37173   dXSARGS;
37174 
37175   {
37176     unsigned long _index = 0;
37177     SWIG_TypeRank _rank = 0;
37178     if (items == 1) {
37179       SWIG_TypeRank _ranki = 0;
37180       SWIG_TypeRank _rankm = 0;
37181       SWIG_TypeRank _pi = 1;
37182       int _v = 0;
37183       {
37184         {
37185           {
37186             /* wrapped vector? */
37187             std::vector< std::string >* v;
37188             if (SWIG_ConvertPtr(ST(0),(void **) &v,
37189                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
37190               _v = 1;
37191             } else if (SvROK(ST(0))) {
37192               /* native sequence? */
37193               AV *av = (AV *)SvRV(ST(0));
37194               if (SvTYPE(av) == SVt_PVAV) {
37195                 I32 len = av_len(av) + 1;
37196                 if (len == 0) {
37197                   /* an empty sequence can be of any type */
37198                   _v = 1;
37199                 } else {
37200                   /* check the first element only */
37201                   SV **tv = av_fetch(av, 0, 0);
37202                   if (SvPOK(*tv))
37203                   _v = 1;
37204                   else
37205                   _v = 0;
37206                 }
37207               }
37208             } else {
37209               _v = 0;
37210             }
37211           }
37212         }
37213       }
37214       if (!_v) goto check_1;
37215       _ranki += _v*_pi;
37216       _rankm += _pi;
37217       _pi *= SWIG_MAXCASTRANK;
37218       if (!_index || (_ranki < _rank)) {
37219         _rank = _ranki; _index = 1;
37220         if (_rank == _rankm) goto dispatch;
37221       }
37222     }
37223   check_1:
37224 
37225     if (items == 2) {
37226       SWIG_TypeRank _ranki = 0;
37227       SWIG_TypeRank _rankm = 0;
37228       SWIG_TypeRank _pi = 1;
37229       int _v = 0;
37230       {
37231         {
37232           {
37233             /* wrapped vector? */
37234             std::vector< std::string >* v;
37235             if (SWIG_ConvertPtr(ST(0),(void **) &v,
37236                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
37237               _v = 1;
37238             } else if (SvROK(ST(0))) {
37239               /* native sequence? */
37240               AV *av = (AV *)SvRV(ST(0));
37241               if (SvTYPE(av) == SVt_PVAV) {
37242                 I32 len = av_len(av) + 1;
37243                 if (len == 0) {
37244                   /* an empty sequence can be of any type */
37245                   _v = 1;
37246                 } else {
37247                   /* check the first element only */
37248                   SV **tv = av_fetch(av, 0, 0);
37249                   if (SvPOK(*tv))
37250                   _v = 1;
37251                   else
37252                   _v = 0;
37253                 }
37254               }
37255             } else {
37256               _v = 0;
37257             }
37258           }
37259         }
37260       }
37261       if (!_v) goto check_2;
37262       _ranki += _v*_pi;
37263       _rankm += _pi;
37264       _pi *= SWIG_MAXCASTRANK;
37265       {
37266         void *vptr = 0;
37267         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_md_t, 0);
37268         _v = SWIG_CheckState(res);
37269       }
37270       if (!_v) goto check_2;
37271       _ranki += _v*_pi;
37272       _rankm += _pi;
37273       _pi *= SWIG_MAXCASTRANK;
37274       if (!_index || (_ranki < _rank)) {
37275         _rank = _ranki; _index = 2;
37276         if (_rank == _rankm) goto dispatch;
37277       }
37278     }
37279   check_2:
37280 
37281     if (items == 3) {
37282       SWIG_TypeRank _ranki = 0;
37283       SWIG_TypeRank _rankm = 0;
37284       SWIG_TypeRank _pi = 1;
37285       int _v = 0;
37286       {
37287         {
37288           {
37289             /* wrapped vector? */
37290             std::vector< std::string >* v;
37291             if (SWIG_ConvertPtr(ST(0),(void **) &v,
37292                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
37293               _v = 1;
37294             } else if (SvROK(ST(0))) {
37295               /* native sequence? */
37296               AV *av = (AV *)SvRV(ST(0));
37297               if (SvTYPE(av) == SVt_PVAV) {
37298                 I32 len = av_len(av) + 1;
37299                 if (len == 0) {
37300                   /* an empty sequence can be of any type */
37301                   _v = 1;
37302                 } else {
37303                   /* check the first element only */
37304                   SV **tv = av_fetch(av, 0, 0);
37305                   if (SvPOK(*tv))
37306                   _v = 1;
37307                   else
37308                   _v = 0;
37309                 }
37310               }
37311             } else {
37312               _v = 0;
37313             }
37314           }
37315         }
37316       }
37317       if (!_v) goto check_3;
37318       _ranki += _v*_pi;
37319       _rankm += _pi;
37320       _pi *= SWIG_MAXCASTRANK;
37321       {
37322         void *vptr = 0;
37323         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_md_t, 0);
37324         _v = SWIG_CheckState(res);
37325       }
37326       if (!_v) goto check_3;
37327       _ranki += _v*_pi;
37328       _rankm += _pi;
37329       _pi *= SWIG_MAXCASTRANK;
37330       {
37331         {
37332           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
37333           _v = SWIG_CheckState(res);
37334         }
37335       }
37336       if (!_v) goto check_3;
37337       _ranki += _v*_pi;
37338       _rankm += _pi;
37339       _pi *= SWIG_MAXCASTRANK;
37340       if (!_index || (_ranki < _rank)) {
37341         _rank = _ranki; _index = 3;
37342         if (_rank == _rankm) goto dispatch;
37343       }
37344     }
37345   check_3:
37346 
37347   dispatch:
37348     switch(_index) {
37349     case 1:
37350       PUSHMARK(MARK); SWIG_CALLXS(_wrap_aln_conservation_col__SWIG_2); return;
37351     case 2:
37352       PUSHMARK(MARK); SWIG_CALLXS(_wrap_aln_conservation_col__SWIG_1); return;
37353     case 3:
37354       PUSHMARK(MARK); SWIG_CALLXS(_wrap_aln_conservation_col__SWIG_0); return;
37355     }
37356   }
37357 
37358   croak("No matching function for overloaded 'aln_conservation_col'");
37359   XSRETURN(0);
37360 }
37361 
37362 
XS(_wrap_move_standard)37363 XS(_wrap_move_standard) {
37364   {
37365     int *arg1 = (int *) 0 ;
37366     char *arg2 = (char *) 0 ;
37367     char *arg3 = (char *) 0 ;
37368     enum MOVE_TYPE arg4 ;
37369     int arg5 ;
37370     int arg6 ;
37371     int arg7 ;
37372     int temp1 ;
37373     int res1 = SWIG_TMPOBJ ;
37374     int res2 ;
37375     char *buf2 = 0 ;
37376     int alloc2 = 0 ;
37377     int res3 ;
37378     char *buf3 = 0 ;
37379     int alloc3 = 0 ;
37380     int val4 ;
37381     int ecode4 = 0 ;
37382     int val5 ;
37383     int ecode5 = 0 ;
37384     int val6 ;
37385     int ecode6 = 0 ;
37386     int val7 ;
37387     int ecode7 = 0 ;
37388     int argvi = 0;
37389     char *result = 0 ;
37390     dXSARGS;
37391 
37392     arg1 = &temp1;
37393     if ((items < 6) || (items > 6)) {
37394       SWIG_croak("Usage: move_standard(seq,struc,type,verbosity_level,shifts,noLP);");
37395     }
37396     res2 = SWIG_AsCharPtrAndSize(ST(0), &buf2, NULL, &alloc2);
37397     if (!SWIG_IsOK(res2)) {
37398       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "move_standard" "', argument " "2"" of type '" "char *""'");
37399     }
37400     arg2 = reinterpret_cast< char * >(buf2);
37401     res3 = SWIG_AsCharPtrAndSize(ST(1), &buf3, NULL, &alloc3);
37402     if (!SWIG_IsOK(res3)) {
37403       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "move_standard" "', argument " "3"" of type '" "char *""'");
37404     }
37405     arg3 = reinterpret_cast< char * >(buf3);
37406     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val4);
37407     if (!SWIG_IsOK(ecode4)) {
37408       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "move_standard" "', argument " "4"" of type '" "enum MOVE_TYPE""'");
37409     }
37410     arg4 = static_cast< enum MOVE_TYPE >(val4);
37411     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val5);
37412     if (!SWIG_IsOK(ecode5)) {
37413       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "move_standard" "', argument " "5"" of type '" "int""'");
37414     }
37415     arg5 = static_cast< int >(val5);
37416     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val6);
37417     if (!SWIG_IsOK(ecode6)) {
37418       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "move_standard" "', argument " "6"" of type '" "int""'");
37419     }
37420     arg6 = static_cast< int >(val6);
37421     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val7);
37422     if (!SWIG_IsOK(ecode7)) {
37423       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "move_standard" "', argument " "7"" of type '" "int""'");
37424     }
37425     arg7 = static_cast< int >(val7);
37426     {
37427       try {
37428         result = (char *)my_move_standard(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
37429       } catch (const std::exception& e) {
37430         SWIG_exception(SWIG_RuntimeError, e.what());
37431       }
37432     }
37433     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
37434     if (SWIG_IsTmpObj(res1)) {
37435       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1((*arg1)); argvi++  ;
37436     } else {
37437       int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0) : 0;
37438       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_int, new_flags); argvi++  ;
37439     }
37440 
37441     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
37442     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
37443 
37444 
37445 
37446 
37447     delete[] result;
37448     XSRETURN(argvi);
37449   fail:
37450 
37451     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
37452     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
37453 
37454 
37455 
37456 
37457     SWIG_croak_null();
37458   }
37459 }
37460 
37461 
XS(_wrap_struct_en_energy_set)37462 XS(_wrap_struct_en_energy_set) {
37463   {
37464     _struct_en *arg1 = (_struct_en *) 0 ;
37465     int arg2 ;
37466     void *argp1 = 0 ;
37467     int res1 = 0 ;
37468     int val2 ;
37469     int ecode2 = 0 ;
37470     int argvi = 0;
37471     dXSARGS;
37472 
37473     if ((items < 2) || (items > 2)) {
37474       SWIG_croak("Usage: struct_en_energy_set(self,energy);");
37475     }
37476     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p__struct_en, 0 |  0 );
37477     if (!SWIG_IsOK(res1)) {
37478       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "struct_en_energy_set" "', argument " "1"" of type '" "_struct_en *""'");
37479     }
37480     arg1 = reinterpret_cast< _struct_en * >(argp1);
37481     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
37482     if (!SWIG_IsOK(ecode2)) {
37483       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "struct_en_energy_set" "', argument " "2"" of type '" "int""'");
37484     }
37485     arg2 = static_cast< int >(val2);
37486     if (arg1) (arg1)->energy = arg2;
37487     ST(argvi) = &PL_sv_undef;
37488 
37489 
37490     XSRETURN(argvi);
37491   fail:
37492 
37493 
37494     SWIG_croak_null();
37495   }
37496 }
37497 
37498 
XS(_wrap_struct_en_energy_get)37499 XS(_wrap_struct_en_energy_get) {
37500   {
37501     _struct_en *arg1 = (_struct_en *) 0 ;
37502     void *argp1 = 0 ;
37503     int res1 = 0 ;
37504     int argvi = 0;
37505     int result;
37506     dXSARGS;
37507 
37508     if ((items < 1) || (items > 1)) {
37509       SWIG_croak("Usage: struct_en_energy_get(self);");
37510     }
37511     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p__struct_en, 0 |  0 );
37512     if (!SWIG_IsOK(res1)) {
37513       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "struct_en_energy_get" "', argument " "1"" of type '" "_struct_en *""'");
37514     }
37515     arg1 = reinterpret_cast< _struct_en * >(argp1);
37516     result = (int) ((arg1)->energy);
37517     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
37518 
37519     XSRETURN(argvi);
37520   fail:
37521 
37522     SWIG_croak_null();
37523   }
37524 }
37525 
37526 
XS(_wrap_struct_en_structure_set)37527 XS(_wrap_struct_en_structure_set) {
37528   {
37529     _struct_en *arg1 = (_struct_en *) 0 ;
37530     short *arg2 = (short *) 0 ;
37531     void *argp1 = 0 ;
37532     int res1 = 0 ;
37533     void *argp2 = 0 ;
37534     int res2 = 0 ;
37535     int argvi = 0;
37536     dXSARGS;
37537 
37538     if ((items < 2) || (items > 2)) {
37539       SWIG_croak("Usage: struct_en_structure_set(self,structure);");
37540     }
37541     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p__struct_en, 0 |  0 );
37542     if (!SWIG_IsOK(res1)) {
37543       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "struct_en_structure_set" "', argument " "1"" of type '" "_struct_en *""'");
37544     }
37545     arg1 = reinterpret_cast< _struct_en * >(argp1);
37546     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_short, SWIG_POINTER_DISOWN |  0 );
37547     if (!SWIG_IsOK(res2)) {
37548       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "struct_en_structure_set" "', argument " "2"" of type '" "short *""'");
37549     }
37550     arg2 = reinterpret_cast< short * >(argp2);
37551     if (arg1) (arg1)->structure = arg2;
37552     ST(argvi) = &PL_sv_undef;
37553 
37554 
37555     XSRETURN(argvi);
37556   fail:
37557 
37558 
37559     SWIG_croak_null();
37560   }
37561 }
37562 
37563 
XS(_wrap_struct_en_structure_get)37564 XS(_wrap_struct_en_structure_get) {
37565   {
37566     _struct_en *arg1 = (_struct_en *) 0 ;
37567     void *argp1 = 0 ;
37568     int res1 = 0 ;
37569     int argvi = 0;
37570     short *result = 0 ;
37571     dXSARGS;
37572 
37573     if ((items < 1) || (items > 1)) {
37574       SWIG_croak("Usage: struct_en_structure_get(self);");
37575     }
37576     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p__struct_en, 0 |  0 );
37577     if (!SWIG_IsOK(res1)) {
37578       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "struct_en_structure_get" "', argument " "1"" of type '" "_struct_en *""'");
37579     }
37580     arg1 = reinterpret_cast< _struct_en * >(argp1);
37581     result = (short *) ((arg1)->structure);
37582     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_short, 0 | 0); argvi++ ;
37583 
37584     XSRETURN(argvi);
37585   fail:
37586 
37587     SWIG_croak_null();
37588   }
37589 }
37590 
37591 
XS(_wrap_new_struct_en)37592 XS(_wrap_new_struct_en) {
37593   {
37594     int argvi = 0;
37595     _struct_en *result = 0 ;
37596     dXSARGS;
37597 
37598     if ((items < 0) || (items > 0)) {
37599       SWIG_croak("Usage: new_struct_en();");
37600     }
37601     {
37602       try {
37603         result = (_struct_en *)new _struct_en();
37604       } catch (const std::exception& e) {
37605         SWIG_exception(SWIG_RuntimeError, e.what());
37606       }
37607     }
37608     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p__struct_en, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
37609     XSRETURN(argvi);
37610   fail:
37611     SWIG_croak_null();
37612   }
37613 }
37614 
37615 
XS(_wrap_delete_struct_en)37616 XS(_wrap_delete_struct_en) {
37617   {
37618     _struct_en *arg1 = (_struct_en *) 0 ;
37619     void *argp1 = 0 ;
37620     int res1 = 0 ;
37621     int argvi = 0;
37622     dXSARGS;
37623 
37624     if ((items < 1) || (items > 1)) {
37625       SWIG_croak("Usage: delete_struct_en(self);");
37626     }
37627     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p__struct_en, SWIG_POINTER_DISOWN |  0 );
37628     if (!SWIG_IsOK(res1)) {
37629       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_struct_en" "', argument " "1"" of type '" "_struct_en *""'");
37630     }
37631     arg1 = reinterpret_cast< _struct_en * >(argp1);
37632     {
37633       try {
37634         delete arg1;
37635       } catch (const std::exception& e) {
37636         SWIG_exception(SWIG_RuntimeError, e.what());
37637       }
37638     }
37639     ST(argvi) = &PL_sv_undef;
37640 
37641     XSRETURN(argvi);
37642   fail:
37643 
37644     SWIG_croak_null();
37645   }
37646 }
37647 
37648 
XS(_wrap_filename_sanitize__SWIG_0)37649 XS(_wrap_filename_sanitize__SWIG_0) {
37650   {
37651     std::string arg1 ;
37652     int argvi = 0;
37653     std::string result;
37654     dXSARGS;
37655 
37656     if ((items < 1) || (items > 1)) {
37657       SWIG_croak("Usage: filename_sanitize(name);");
37658     }
37659     {
37660       std::string *ptr = (std::string *)0;
37661       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
37662       if (!SWIG_IsOK(res) || !ptr) {
37663         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "filename_sanitize" "', argument " "1"" of type '" "std::string""'");
37664       }
37665       arg1 = *ptr;
37666       if (SWIG_IsNewObj(res)) delete ptr;
37667     }
37668     {
37669       try {
37670         result = my_filename_sanitize(arg1);
37671       } catch (const std::exception& e) {
37672         SWIG_exception(SWIG_RuntimeError, e.what());
37673       }
37674     }
37675     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
37676 
37677     XSRETURN(argvi);
37678   fail:
37679 
37680     SWIG_croak_null();
37681   }
37682 }
37683 
37684 
XS(_wrap_filename_sanitize__SWIG_1)37685 XS(_wrap_filename_sanitize__SWIG_1) {
37686   {
37687     std::string arg1 ;
37688     char arg2 ;
37689     char val2 ;
37690     int ecode2 = 0 ;
37691     int argvi = 0;
37692     std::string result;
37693     dXSARGS;
37694 
37695     if ((items < 2) || (items > 2)) {
37696       SWIG_croak("Usage: filename_sanitize(name,c);");
37697     }
37698     {
37699       std::string *ptr = (std::string *)0;
37700       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
37701       if (!SWIG_IsOK(res) || !ptr) {
37702         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "filename_sanitize" "', argument " "1"" of type '" "std::string""'");
37703       }
37704       arg1 = *ptr;
37705       if (SWIG_IsNewObj(res)) delete ptr;
37706     }
37707     ecode2 = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
37708     if (!SWIG_IsOK(ecode2)) {
37709       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "filename_sanitize" "', argument " "2"" of type '" "char""'");
37710     }
37711     arg2 = static_cast< char >(val2);
37712     {
37713       try {
37714         result = my_filename_sanitize(arg1,arg2);
37715       } catch (const std::exception& e) {
37716         SWIG_exception(SWIG_RuntimeError, e.what());
37717       }
37718     }
37719     ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1(static_cast< std::string >(result)); argvi++ ;
37720 
37721 
37722     XSRETURN(argvi);
37723   fail:
37724 
37725 
37726     SWIG_croak_null();
37727   }
37728 }
37729 
37730 
XS(_wrap_filename_sanitize)37731 XS(_wrap_filename_sanitize) {
37732   dXSARGS;
37733 
37734   {
37735     unsigned long _index = 0;
37736     SWIG_TypeRank _rank = 0;
37737     if (items == 1) {
37738       SWIG_TypeRank _ranki = 0;
37739       SWIG_TypeRank _rankm = 0;
37740       SWIG_TypeRank _pi = 1;
37741       int _v = 0;
37742       {
37743         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
37744         _v = SWIG_CheckState(res);
37745       }
37746       if (!_v) goto check_1;
37747       _ranki += _v*_pi;
37748       _rankm += _pi;
37749       _pi *= SWIG_MAXCASTRANK;
37750       if (!_index || (_ranki < _rank)) {
37751         _rank = _ranki; _index = 1;
37752         if (_rank == _rankm) goto dispatch;
37753       }
37754     }
37755   check_1:
37756 
37757     if (items == 2) {
37758       SWIG_TypeRank _ranki = 0;
37759       SWIG_TypeRank _rankm = 0;
37760       SWIG_TypeRank _pi = 1;
37761       int _v = 0;
37762       {
37763         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
37764         _v = SWIG_CheckState(res);
37765       }
37766       if (!_v) goto check_2;
37767       _ranki += _v*_pi;
37768       _rankm += _pi;
37769       _pi *= SWIG_MAXCASTRANK;
37770       {
37771         {
37772           int res = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
37773           _v = SWIG_CheckState(res);
37774         }
37775       }
37776       if (!_v) goto check_2;
37777       _ranki += _v*_pi;
37778       _rankm += _pi;
37779       _pi *= SWIG_MAXCASTRANK;
37780       if (!_index || (_ranki < _rank)) {
37781         _rank = _ranki; _index = 2;
37782         if (_rank == _rankm) goto dispatch;
37783       }
37784     }
37785   check_2:
37786 
37787   dispatch:
37788     switch(_index) {
37789     case 1:
37790       PUSHMARK(MARK); SWIG_CALLXS(_wrap_filename_sanitize__SWIG_0); return;
37791     case 2:
37792       PUSHMARK(MARK); SWIG_CALLXS(_wrap_filename_sanitize__SWIG_1); return;
37793     }
37794   }
37795 
37796   croak("No matching function for overloaded 'filename_sanitize'");
37797   XSRETURN(0);
37798 }
37799 
37800 
XS(_wrap_get_xy_coordinates)37801 XS(_wrap_get_xy_coordinates) {
37802   {
37803     char *arg1 = (char *) 0 ;
37804     int res1 ;
37805     char *buf1 = 0 ;
37806     int alloc1 = 0 ;
37807     int argvi = 0;
37808     COORDINATE *result = 0 ;
37809     dXSARGS;
37810 
37811     if ((items < 1) || (items > 1)) {
37812       SWIG_croak("Usage: get_xy_coordinates(structure);");
37813     }
37814     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
37815     if (!SWIG_IsOK(res1)) {
37816       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "get_xy_coordinates" "', argument " "1"" of type '" "char const *""'");
37817     }
37818     arg1 = reinterpret_cast< char * >(buf1);
37819     {
37820       try {
37821         result = (COORDINATE *)get_xy_coordinates((char const *)arg1);
37822       } catch (const std::exception& e) {
37823         SWIG_exception(SWIG_RuntimeError, e.what());
37824       }
37825     }
37826     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_COORDINATE, 0 | SWIG_SHADOW); argvi++ ;
37827     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
37828     XSRETURN(argvi);
37829   fail:
37830     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
37831     SWIG_croak_null();
37832   }
37833 }
37834 
37835 
XS(_wrap_simple_xy_coordinates__SWIG_0)37836 XS(_wrap_simple_xy_coordinates__SWIG_0) {
37837   {
37838     std::string arg1 ;
37839     int argvi = 0;
37840     std::vector< COORDINATE > result;
37841     dXSARGS;
37842 
37843     if ((items < 1) || (items > 1)) {
37844       SWIG_croak("Usage: simple_xy_coordinates(std::string);");
37845     }
37846     {
37847       std::string *ptr = (std::string *)0;
37848       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
37849       if (!SWIG_IsOK(res) || !ptr) {
37850         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "simple_xy_coordinates" "', argument " "1"" of type '" "std::string""'");
37851       }
37852       arg1 = *ptr;
37853       if (SWIG_IsNewObj(res)) delete ptr;
37854     }
37855     {
37856       try {
37857         result = my_simple_xy_coordinates(arg1);
37858       } catch (const std::exception& e) {
37859         SWIG_exception(SWIG_RuntimeError, e.what());
37860       }
37861     }
37862     {
37863       size_t len = (&result)->size();
37864       SV **svs = new SV*[len];
37865       for (size_t i=0; i<len; i++) {
37866         COORDINATE* ptr = new COORDINATE(result[i]);
37867         svs[i] = sv_newmortal();
37868         SWIG_MakePtr(svs[i], (void*) ptr,
37869           SWIGTYPE_p_COORDINATE, SWIG_SHADOW|0);
37870       }
37871       AV *myav = av_make(len, svs);
37872       delete[] svs;
37873       ST(argvi) = newRV_noinc((SV*) myav);
37874       sv_2mortal(ST(argvi));
37875       argvi++;
37876     }
37877 
37878     XSRETURN(argvi);
37879   fail:
37880 
37881     SWIG_croak_null();
37882   }
37883 }
37884 
37885 
XS(_wrap_simple_circplot_coordinates)37886 XS(_wrap_simple_circplot_coordinates) {
37887   {
37888     std::string arg1 ;
37889     int argvi = 0;
37890     std::vector< COORDINATE > result;
37891     dXSARGS;
37892 
37893     if ((items < 1) || (items > 1)) {
37894       SWIG_croak("Usage: simple_circplot_coordinates(std::string);");
37895     }
37896     {
37897       std::string *ptr = (std::string *)0;
37898       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
37899       if (!SWIG_IsOK(res) || !ptr) {
37900         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "simple_circplot_coordinates" "', argument " "1"" of type '" "std::string""'");
37901       }
37902       arg1 = *ptr;
37903       if (SWIG_IsNewObj(res)) delete ptr;
37904     }
37905     {
37906       try {
37907         result = my_simple_circplot_coordinates(arg1);
37908       } catch (const std::exception& e) {
37909         SWIG_exception(SWIG_RuntimeError, e.what());
37910       }
37911     }
37912     {
37913       size_t len = (&result)->size();
37914       SV **svs = new SV*[len];
37915       for (size_t i=0; i<len; i++) {
37916         COORDINATE* ptr = new COORDINATE(result[i]);
37917         svs[i] = sv_newmortal();
37918         SWIG_MakePtr(svs[i], (void*) ptr,
37919           SWIGTYPE_p_COORDINATE, SWIG_SHADOW|0);
37920       }
37921       AV *myav = av_make(len, svs);
37922       delete[] svs;
37923       ST(argvi) = newRV_noinc((SV*) myav);
37924       sv_2mortal(ST(argvi));
37925       argvi++;
37926     }
37927 
37928     XSRETURN(argvi);
37929   fail:
37930 
37931     SWIG_croak_null();
37932   }
37933 }
37934 
37935 
XS(_wrap_naview_xy_coordinates)37936 XS(_wrap_naview_xy_coordinates) {
37937   {
37938     std::string arg1 ;
37939     int argvi = 0;
37940     std::vector< COORDINATE > result;
37941     dXSARGS;
37942 
37943     if ((items < 1) || (items > 1)) {
37944       SWIG_croak("Usage: naview_xy_coordinates(std::string);");
37945     }
37946     {
37947       std::string *ptr = (std::string *)0;
37948       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
37949       if (!SWIG_IsOK(res) || !ptr) {
37950         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "naview_xy_coordinates" "', argument " "1"" of type '" "std::string""'");
37951       }
37952       arg1 = *ptr;
37953       if (SWIG_IsNewObj(res)) delete ptr;
37954     }
37955     {
37956       try {
37957         result = my_naview_xy_coordinates(arg1);
37958       } catch (const std::exception& e) {
37959         SWIG_exception(SWIG_RuntimeError, e.what());
37960       }
37961     }
37962     {
37963       size_t len = (&result)->size();
37964       SV **svs = new SV*[len];
37965       for (size_t i=0; i<len; i++) {
37966         COORDINATE* ptr = new COORDINATE(result[i]);
37967         svs[i] = sv_newmortal();
37968         SWIG_MakePtr(svs[i], (void*) ptr,
37969           SWIGTYPE_p_COORDINATE, SWIG_SHADOW|0);
37970       }
37971       AV *myav = av_make(len, svs);
37972       delete[] svs;
37973       ST(argvi) = newRV_noinc((SV*) myav);
37974       sv_2mortal(ST(argvi));
37975       argvi++;
37976     }
37977 
37978     XSRETURN(argvi);
37979   fail:
37980 
37981     SWIG_croak_null();
37982   }
37983 }
37984 
37985 
XS(_wrap_COORDINATE_get)37986 XS(_wrap_COORDINATE_get) {
37987   {
37988     COORDINATE *arg1 = (COORDINATE *) 0 ;
37989     int arg2 ;
37990     void *argp1 = 0 ;
37991     int res1 = 0 ;
37992     int val2 ;
37993     int ecode2 = 0 ;
37994     int argvi = 0;
37995     COORDINATE *result = 0 ;
37996     dXSARGS;
37997 
37998     if ((items < 2) || (items > 2)) {
37999       SWIG_croak("Usage: COORDINATE_get(self,i);");
38000     }
38001     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_COORDINATE, 0 |  0 );
38002     if (!SWIG_IsOK(res1)) {
38003       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "COORDINATE_get" "', argument " "1"" of type '" "COORDINATE *""'");
38004     }
38005     arg1 = reinterpret_cast< COORDINATE * >(argp1);
38006     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
38007     if (!SWIG_IsOK(ecode2)) {
38008       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "COORDINATE_get" "', argument " "2"" of type '" "int""'");
38009     }
38010     arg2 = static_cast< int >(val2);
38011     {
38012       try {
38013         result = (COORDINATE *)COORDINATE_get(arg1,arg2);
38014       } catch (const std::exception& e) {
38015         SWIG_exception(SWIG_RuntimeError, e.what());
38016       }
38017     }
38018     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_COORDINATE, 0 | SWIG_SHADOW); argvi++ ;
38019 
38020 
38021     XSRETURN(argvi);
38022   fail:
38023 
38024 
38025     SWIG_croak_null();
38026   }
38027 }
38028 
38029 
XS(_wrap_COORDINATE_X_set)38030 XS(_wrap_COORDINATE_X_set) {
38031   {
38032     COORDINATE *arg1 = (COORDINATE *) 0 ;
38033     float arg2 ;
38034     void *argp1 = 0 ;
38035     int res1 = 0 ;
38036     float val2 ;
38037     int ecode2 = 0 ;
38038     int argvi = 0;
38039     dXSARGS;
38040 
38041     if ((items < 2) || (items > 2)) {
38042       SWIG_croak("Usage: COORDINATE_X_set(self,X);");
38043     }
38044     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_COORDINATE, 0 |  0 );
38045     if (!SWIG_IsOK(res1)) {
38046       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "COORDINATE_X_set" "', argument " "1"" of type '" "COORDINATE *""'");
38047     }
38048     arg1 = reinterpret_cast< COORDINATE * >(argp1);
38049     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
38050     if (!SWIG_IsOK(ecode2)) {
38051       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "COORDINATE_X_set" "', argument " "2"" of type '" "float""'");
38052     }
38053     arg2 = static_cast< float >(val2);
38054     if (arg1) (arg1)->X = arg2;
38055     ST(argvi) = &PL_sv_undef;
38056 
38057 
38058     XSRETURN(argvi);
38059   fail:
38060 
38061 
38062     SWIG_croak_null();
38063   }
38064 }
38065 
38066 
XS(_wrap_COORDINATE_X_get)38067 XS(_wrap_COORDINATE_X_get) {
38068   {
38069     COORDINATE *arg1 = (COORDINATE *) 0 ;
38070     void *argp1 = 0 ;
38071     int res1 = 0 ;
38072     int argvi = 0;
38073     float result;
38074     dXSARGS;
38075 
38076     if ((items < 1) || (items > 1)) {
38077       SWIG_croak("Usage: COORDINATE_X_get(self);");
38078     }
38079     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_COORDINATE, 0 |  0 );
38080     if (!SWIG_IsOK(res1)) {
38081       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "COORDINATE_X_get" "', argument " "1"" of type '" "COORDINATE *""'");
38082     }
38083     arg1 = reinterpret_cast< COORDINATE * >(argp1);
38084     result = (float) ((arg1)->X);
38085     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
38086 
38087     XSRETURN(argvi);
38088   fail:
38089 
38090     SWIG_croak_null();
38091   }
38092 }
38093 
38094 
XS(_wrap_COORDINATE_Y_set)38095 XS(_wrap_COORDINATE_Y_set) {
38096   {
38097     COORDINATE *arg1 = (COORDINATE *) 0 ;
38098     float arg2 ;
38099     void *argp1 = 0 ;
38100     int res1 = 0 ;
38101     float val2 ;
38102     int ecode2 = 0 ;
38103     int argvi = 0;
38104     dXSARGS;
38105 
38106     if ((items < 2) || (items > 2)) {
38107       SWIG_croak("Usage: COORDINATE_Y_set(self,Y);");
38108     }
38109     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_COORDINATE, 0 |  0 );
38110     if (!SWIG_IsOK(res1)) {
38111       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "COORDINATE_Y_set" "', argument " "1"" of type '" "COORDINATE *""'");
38112     }
38113     arg1 = reinterpret_cast< COORDINATE * >(argp1);
38114     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
38115     if (!SWIG_IsOK(ecode2)) {
38116       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "COORDINATE_Y_set" "', argument " "2"" of type '" "float""'");
38117     }
38118     arg2 = static_cast< float >(val2);
38119     if (arg1) (arg1)->Y = arg2;
38120     ST(argvi) = &PL_sv_undef;
38121 
38122 
38123     XSRETURN(argvi);
38124   fail:
38125 
38126 
38127     SWIG_croak_null();
38128   }
38129 }
38130 
38131 
XS(_wrap_COORDINATE_Y_get)38132 XS(_wrap_COORDINATE_Y_get) {
38133   {
38134     COORDINATE *arg1 = (COORDINATE *) 0 ;
38135     void *argp1 = 0 ;
38136     int res1 = 0 ;
38137     int argvi = 0;
38138     float result;
38139     dXSARGS;
38140 
38141     if ((items < 1) || (items > 1)) {
38142       SWIG_croak("Usage: COORDINATE_Y_get(self);");
38143     }
38144     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_COORDINATE, 0 |  0 );
38145     if (!SWIG_IsOK(res1)) {
38146       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "COORDINATE_Y_get" "', argument " "1"" of type '" "COORDINATE *""'");
38147     }
38148     arg1 = reinterpret_cast< COORDINATE * >(argp1);
38149     result = (float) ((arg1)->Y);
38150     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
38151 
38152     XSRETURN(argvi);
38153   fail:
38154 
38155     SWIG_croak_null();
38156   }
38157 }
38158 
38159 
XS(_wrap_new_COORDINATE)38160 XS(_wrap_new_COORDINATE) {
38161   {
38162     int argvi = 0;
38163     COORDINATE *result = 0 ;
38164     dXSARGS;
38165 
38166     if ((items < 0) || (items > 0)) {
38167       SWIG_croak("Usage: new_COORDINATE();");
38168     }
38169     {
38170       try {
38171         result = (COORDINATE *)new COORDINATE();
38172       } catch (const std::exception& e) {
38173         SWIG_exception(SWIG_RuntimeError, e.what());
38174       }
38175     }
38176     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_COORDINATE, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
38177     XSRETURN(argvi);
38178   fail:
38179     SWIG_croak_null();
38180   }
38181 }
38182 
38183 
XS(_wrap_delete_COORDINATE)38184 XS(_wrap_delete_COORDINATE) {
38185   {
38186     COORDINATE *arg1 = (COORDINATE *) 0 ;
38187     void *argp1 = 0 ;
38188     int res1 = 0 ;
38189     int argvi = 0;
38190     dXSARGS;
38191 
38192     if ((items < 1) || (items > 1)) {
38193       SWIG_croak("Usage: delete_COORDINATE(self);");
38194     }
38195     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_COORDINATE, SWIG_POINTER_DISOWN |  0 );
38196     if (!SWIG_IsOK(res1)) {
38197       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_COORDINATE" "', argument " "1"" of type '" "COORDINATE *""'");
38198     }
38199     arg1 = reinterpret_cast< COORDINATE * >(argp1);
38200     {
38201       try {
38202         delete arg1;
38203       } catch (const std::exception& e) {
38204         SWIG_exception(SWIG_RuntimeError, e.what());
38205       }
38206     }
38207     ST(argvi) = &PL_sv_undef;
38208 
38209     XSRETURN(argvi);
38210   fail:
38211 
38212     SWIG_croak_null();
38213   }
38214 }
38215 
38216 
XS(_wrap_simple_xy_coordinates__SWIG_1)38217 XS(_wrap_simple_xy_coordinates__SWIG_1) {
38218   {
38219     short *arg1 = (short *) 0 ;
38220     float *arg2 = (float *) 0 ;
38221     float *arg3 = (float *) 0 ;
38222     void *argp1 = 0 ;
38223     int res1 = 0 ;
38224     void *argp2 = 0 ;
38225     int res2 = 0 ;
38226     void *argp3 = 0 ;
38227     int res3 = 0 ;
38228     int argvi = 0;
38229     int result;
38230     dXSARGS;
38231 
38232     if ((items < 3) || (items > 3)) {
38233       SWIG_croak("Usage: simple_xy_coordinates(pair_table,X,Y);");
38234     }
38235     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_short, 0 |  0 );
38236     if (!SWIG_IsOK(res1)) {
38237       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "simple_xy_coordinates" "', argument " "1"" of type '" "short *""'");
38238     }
38239     arg1 = reinterpret_cast< short * >(argp1);
38240     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_float, 0 |  0 );
38241     if (!SWIG_IsOK(res2)) {
38242       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "simple_xy_coordinates" "', argument " "2"" of type '" "float *""'");
38243     }
38244     arg2 = reinterpret_cast< float * >(argp2);
38245     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_float, 0 |  0 );
38246     if (!SWIG_IsOK(res3)) {
38247       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "simple_xy_coordinates" "', argument " "3"" of type '" "float *""'");
38248     }
38249     arg3 = reinterpret_cast< float * >(argp3);
38250     {
38251       try {
38252         result = (int)simple_xy_coordinates(arg1,arg2,arg3);
38253       } catch (const std::exception& e) {
38254         SWIG_exception(SWIG_RuntimeError, e.what());
38255       }
38256     }
38257     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
38258 
38259 
38260 
38261     XSRETURN(argvi);
38262   fail:
38263 
38264 
38265 
38266     SWIG_croak_null();
38267   }
38268 }
38269 
38270 
XS(_wrap_simple_xy_coordinates)38271 XS(_wrap_simple_xy_coordinates) {
38272   dXSARGS;
38273 
38274   {
38275     unsigned long _index = 0;
38276     SWIG_TypeRank _rank = 0;
38277     if (items == 1) {
38278       SWIG_TypeRank _ranki = 0;
38279       SWIG_TypeRank _rankm = 0;
38280       SWIG_TypeRank _pi = 1;
38281       int _v = 0;
38282       {
38283         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
38284         _v = SWIG_CheckState(res);
38285       }
38286       if (!_v) goto check_1;
38287       _ranki += _v*_pi;
38288       _rankm += _pi;
38289       _pi *= SWIG_MAXCASTRANK;
38290       if (!_index || (_ranki < _rank)) {
38291         _rank = _ranki; _index = 1;
38292         if (_rank == _rankm) goto dispatch;
38293       }
38294     }
38295   check_1:
38296 
38297     if (items == 3) {
38298       SWIG_TypeRank _ranki = 0;
38299       SWIG_TypeRank _rankm = 0;
38300       SWIG_TypeRank _pi = 1;
38301       int _v = 0;
38302       {
38303         void *vptr = 0;
38304         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_short, 0);
38305         _v = SWIG_CheckState(res);
38306       }
38307       if (!_v) goto check_2;
38308       _ranki += _v*_pi;
38309       _rankm += _pi;
38310       _pi *= SWIG_MAXCASTRANK;
38311       {
38312         void *vptr = 0;
38313         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_float, 0);
38314         _v = SWIG_CheckState(res);
38315       }
38316       if (!_v) goto check_2;
38317       _ranki += _v*_pi;
38318       _rankm += _pi;
38319       _pi *= SWIG_MAXCASTRANK;
38320       {
38321         void *vptr = 0;
38322         int res = SWIG_ConvertPtr(ST(2), &vptr, SWIGTYPE_p_float, 0);
38323         _v = SWIG_CheckState(res);
38324       }
38325       if (!_v) goto check_2;
38326       _ranki += _v*_pi;
38327       _rankm += _pi;
38328       _pi *= SWIG_MAXCASTRANK;
38329       if (!_index || (_ranki < _rank)) {
38330         _rank = _ranki; _index = 2;
38331         if (_rank == _rankm) goto dispatch;
38332       }
38333     }
38334   check_2:
38335 
38336   dispatch:
38337     switch(_index) {
38338     case 1:
38339       PUSHMARK(MARK); SWIG_CALLXS(_wrap_simple_xy_coordinates__SWIG_0); return;
38340     case 2:
38341       PUSHMARK(MARK); SWIG_CALLXS(_wrap_simple_xy_coordinates__SWIG_1); return;
38342     }
38343   }
38344 
38345   croak("No matching function for overloaded 'simple_xy_coordinates'");
38346   XSRETURN(0);
38347 }
38348 
38349 
XS(_wrap_my_PS_rna_plot_snoop_a)38350 XS(_wrap_my_PS_rna_plot_snoop_a) {
38351   {
38352     std::string arg1 ;
38353     std::string arg2 ;
38354     std::string arg3 ;
38355     std::vector< int > arg4 ;
38356     std::vector< std::string > arg5 ;
38357     std::vector< int > *v4 ;
38358     std::vector< std::string > *v5 ;
38359     int argvi = 0;
38360     int result;
38361     dXSARGS;
38362 
38363     if ((items < 5) || (items > 5)) {
38364       SWIG_croak("Usage: my_PS_rna_plot_snoop_a(sequence,structure,filename,relative_access,seqs);");
38365     }
38366     {
38367       std::string *ptr = (std::string *)0;
38368       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
38369       if (!SWIG_IsOK(res) || !ptr) {
38370         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "my_PS_rna_plot_snoop_a" "', argument " "1"" of type '" "std::string""'");
38371       }
38372       arg1 = *ptr;
38373       if (SWIG_IsNewObj(res)) delete ptr;
38374     }
38375     {
38376       std::string *ptr = (std::string *)0;
38377       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
38378       if (!SWIG_IsOK(res) || !ptr) {
38379         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "my_PS_rna_plot_snoop_a" "', argument " "2"" of type '" "std::string""'");
38380       }
38381       arg2 = *ptr;
38382       if (SWIG_IsNewObj(res)) delete ptr;
38383     }
38384     {
38385       std::string *ptr = (std::string *)0;
38386       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
38387       if (!SWIG_IsOK(res) || !ptr) {
38388         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "my_PS_rna_plot_snoop_a" "', argument " "3"" of type '" "std::string""'");
38389       }
38390       arg3 = *ptr;
38391       if (SWIG_IsNewObj(res)) delete ptr;
38392     }
38393     {
38394       if (SWIG_ConvertPtr(ST(3),(void **) &v4,
38395           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
38396         arg4 = *v4;
38397       } else if (SvROK(ST(3))) {
38398         AV *av = (AV *)SvRV(ST(3));
38399         if (SvTYPE(av) != SVt_PVAV)
38400         SWIG_croak("Type error in argument 4 of my_PS_rna_plot_snoop_a. "
38401           "Expected an array of ""int");
38402         SV **tv;
38403         I32 len = av_len(av) + 1;
38404         for (int i=0; i<len; i++) {
38405           tv = av_fetch(av, i, 0);
38406           if (SvIOK(*tv)) {
38407             (&arg4)->push_back((int)SvIVX(*tv));
38408           } else {
38409             SWIG_croak("Type error in argument 4 of "
38410               "my_PS_rna_plot_snoop_a. "
38411               "Expected an array of ""int");
38412           }
38413         }
38414       } else {
38415         SWIG_croak("Type error in argument 4 of my_PS_rna_plot_snoop_a. "
38416           "Expected an array of ""int");
38417       }
38418     }
38419     {
38420       if (SWIG_ConvertPtr(ST(4),(void **) &v5,
38421           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
38422         arg5 = *v5;
38423       } else if (SvROK(ST(4))) {
38424         AV *av = (AV *)SvRV(ST(4));
38425         if (SvTYPE(av) != SVt_PVAV)
38426         SWIG_croak("Type error in argument 5 of my_PS_rna_plot_snoop_a. "
38427           "Expected an array of ""std::string");
38428         SV **tv;
38429         I32 len = av_len(av) + 1;
38430         for (int i=0; i<len; i++) {
38431           tv = av_fetch(av, i, 0);
38432           if (SvPOK(*tv)) {
38433             (&arg5)->push_back((std::string)SwigSvToString(*tv));
38434           } else {
38435             SWIG_croak("Type error in argument 5 of "
38436               "my_PS_rna_plot_snoop_a. "
38437               "Expected an array of ""std::string");
38438           }
38439         }
38440       } else {
38441         SWIG_croak("Type error in argument 5 of my_PS_rna_plot_snoop_a. "
38442           "Expected an array of ""std::string");
38443       }
38444     }
38445     {
38446       try {
38447         result = (int)my_PS_rna_plot_snoop_a(arg1,arg2,arg3,arg4,arg5);
38448       } catch (const std::exception& e) {
38449         SWIG_exception(SWIG_RuntimeError, e.what());
38450       }
38451     }
38452     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
38453 
38454 
38455 
38456     XSRETURN(argvi);
38457   fail:
38458 
38459 
38460 
38461     SWIG_croak_null();
38462   }
38463 }
38464 
38465 
XS(_wrap_file_PS_rnaplot__SWIG_0)38466 XS(_wrap_file_PS_rnaplot__SWIG_0) {
38467   {
38468     std::string arg1 ;
38469     std::string arg2 ;
38470     std::string arg3 ;
38471     vrna_md_t *arg4 = (vrna_md_t *) 0 ;
38472     void *argp4 = 0 ;
38473     int res4 = 0 ;
38474     int argvi = 0;
38475     int result;
38476     dXSARGS;
38477 
38478     if ((items < 4) || (items > 4)) {
38479       SWIG_croak("Usage: file_PS_rnaplot(sequence,structure,filename,md_p);");
38480     }
38481     {
38482       std::string *ptr = (std::string *)0;
38483       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
38484       if (!SWIG_IsOK(res) || !ptr) {
38485         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot" "', argument " "1"" of type '" "std::string""'");
38486       }
38487       arg1 = *ptr;
38488       if (SWIG_IsNewObj(res)) delete ptr;
38489     }
38490     {
38491       std::string *ptr = (std::string *)0;
38492       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
38493       if (!SWIG_IsOK(res) || !ptr) {
38494         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot" "', argument " "2"" of type '" "std::string""'");
38495       }
38496       arg2 = *ptr;
38497       if (SWIG_IsNewObj(res)) delete ptr;
38498     }
38499     {
38500       std::string *ptr = (std::string *)0;
38501       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
38502       if (!SWIG_IsOK(res) || !ptr) {
38503         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot" "', argument " "3"" of type '" "std::string""'");
38504       }
38505       arg3 = *ptr;
38506       if (SWIG_IsNewObj(res)) delete ptr;
38507     }
38508     res4 = SWIG_ConvertPtr(ST(3), &argp4,SWIGTYPE_p_vrna_md_t, 0 |  0 );
38509     if (!SWIG_IsOK(res4)) {
38510       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "file_PS_rnaplot" "', argument " "4"" of type '" "vrna_md_t *""'");
38511     }
38512     arg4 = reinterpret_cast< vrna_md_t * >(argp4);
38513     {
38514       try {
38515         result = (int)file_PS_rnaplot(arg1,arg2,arg3,arg4);
38516       } catch (const std::exception& e) {
38517         SWIG_exception(SWIG_RuntimeError, e.what());
38518       }
38519     }
38520     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
38521 
38522 
38523 
38524 
38525     XSRETURN(argvi);
38526   fail:
38527 
38528 
38529 
38530 
38531     SWIG_croak_null();
38532   }
38533 }
38534 
38535 
XS(_wrap_file_PS_rnaplot__SWIG_1)38536 XS(_wrap_file_PS_rnaplot__SWIG_1) {
38537   {
38538     std::string arg1 ;
38539     std::string arg2 ;
38540     std::string arg3 ;
38541     int argvi = 0;
38542     int result;
38543     dXSARGS;
38544 
38545     if ((items < 3) || (items > 3)) {
38546       SWIG_croak("Usage: file_PS_rnaplot(sequence,structure,filename);");
38547     }
38548     {
38549       std::string *ptr = (std::string *)0;
38550       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
38551       if (!SWIG_IsOK(res) || !ptr) {
38552         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot" "', argument " "1"" of type '" "std::string""'");
38553       }
38554       arg1 = *ptr;
38555       if (SWIG_IsNewObj(res)) delete ptr;
38556     }
38557     {
38558       std::string *ptr = (std::string *)0;
38559       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
38560       if (!SWIG_IsOK(res) || !ptr) {
38561         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot" "', argument " "2"" of type '" "std::string""'");
38562       }
38563       arg2 = *ptr;
38564       if (SWIG_IsNewObj(res)) delete ptr;
38565     }
38566     {
38567       std::string *ptr = (std::string *)0;
38568       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
38569       if (!SWIG_IsOK(res) || !ptr) {
38570         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot" "', argument " "3"" of type '" "std::string""'");
38571       }
38572       arg3 = *ptr;
38573       if (SWIG_IsNewObj(res)) delete ptr;
38574     }
38575     {
38576       try {
38577         result = (int)file_PS_rnaplot(arg1,arg2,arg3);
38578       } catch (const std::exception& e) {
38579         SWIG_exception(SWIG_RuntimeError, e.what());
38580       }
38581     }
38582     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
38583 
38584 
38585 
38586     XSRETURN(argvi);
38587   fail:
38588 
38589 
38590 
38591     SWIG_croak_null();
38592   }
38593 }
38594 
38595 
XS(_wrap_file_PS_rnaplot)38596 XS(_wrap_file_PS_rnaplot) {
38597   dXSARGS;
38598 
38599   {
38600     unsigned long _index = 0;
38601     SWIG_TypeRank _rank = 0;
38602     if (items == 3) {
38603       SWIG_TypeRank _ranki = 0;
38604       SWIG_TypeRank _rankm = 0;
38605       SWIG_TypeRank _pi = 1;
38606       int _v = 0;
38607       {
38608         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
38609         _v = SWIG_CheckState(res);
38610       }
38611       if (!_v) goto check_1;
38612       _ranki += _v*_pi;
38613       _rankm += _pi;
38614       _pi *= SWIG_MAXCASTRANK;
38615       {
38616         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
38617         _v = SWIG_CheckState(res);
38618       }
38619       if (!_v) goto check_1;
38620       _ranki += _v*_pi;
38621       _rankm += _pi;
38622       _pi *= SWIG_MAXCASTRANK;
38623       {
38624         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), (std::string**)(0));
38625         _v = SWIG_CheckState(res);
38626       }
38627       if (!_v) goto check_1;
38628       _ranki += _v*_pi;
38629       _rankm += _pi;
38630       _pi *= SWIG_MAXCASTRANK;
38631       if (!_index || (_ranki < _rank)) {
38632         _rank = _ranki; _index = 1;
38633         if (_rank == _rankm) goto dispatch;
38634       }
38635     }
38636   check_1:
38637 
38638     if (items == 4) {
38639       SWIG_TypeRank _ranki = 0;
38640       SWIG_TypeRank _rankm = 0;
38641       SWIG_TypeRank _pi = 1;
38642       int _v = 0;
38643       {
38644         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
38645         _v = SWIG_CheckState(res);
38646       }
38647       if (!_v) goto check_2;
38648       _ranki += _v*_pi;
38649       _rankm += _pi;
38650       _pi *= SWIG_MAXCASTRANK;
38651       {
38652         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
38653         _v = SWIG_CheckState(res);
38654       }
38655       if (!_v) goto check_2;
38656       _ranki += _v*_pi;
38657       _rankm += _pi;
38658       _pi *= SWIG_MAXCASTRANK;
38659       {
38660         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), (std::string**)(0));
38661         _v = SWIG_CheckState(res);
38662       }
38663       if (!_v) goto check_2;
38664       _ranki += _v*_pi;
38665       _rankm += _pi;
38666       _pi *= SWIG_MAXCASTRANK;
38667       {
38668         void *vptr = 0;
38669         int res = SWIG_ConvertPtr(ST(3), &vptr, SWIGTYPE_p_vrna_md_t, 0);
38670         _v = SWIG_CheckState(res);
38671       }
38672       if (!_v) goto check_2;
38673       _ranki += _v*_pi;
38674       _rankm += _pi;
38675       _pi *= SWIG_MAXCASTRANK;
38676       if (!_index || (_ranki < _rank)) {
38677         _rank = _ranki; _index = 2;
38678         if (_rank == _rankm) goto dispatch;
38679       }
38680     }
38681   check_2:
38682 
38683   dispatch:
38684     switch(_index) {
38685     case 1:
38686       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_PS_rnaplot__SWIG_1); return;
38687     case 2:
38688       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_PS_rnaplot__SWIG_0); return;
38689     }
38690   }
38691 
38692   croak("No matching function for overloaded 'file_PS_rnaplot'");
38693   XSRETURN(0);
38694 }
38695 
38696 
XS(_wrap_file_PS_rnaplot_a__SWIG_0)38697 XS(_wrap_file_PS_rnaplot_a__SWIG_0) {
38698   {
38699     std::string arg1 ;
38700     std::string arg2 ;
38701     std::string arg3 ;
38702     std::string arg4 ;
38703     std::string arg5 ;
38704     vrna_md_t *arg6 = (vrna_md_t *) 0 ;
38705     void *argp6 = 0 ;
38706     int res6 = 0 ;
38707     int argvi = 0;
38708     int result;
38709     dXSARGS;
38710 
38711     if ((items < 6) || (items > 6)) {
38712       SWIG_croak("Usage: file_PS_rnaplot_a(sequence,structure,filename,pre,post,md_p);");
38713     }
38714     {
38715       std::string *ptr = (std::string *)0;
38716       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
38717       if (!SWIG_IsOK(res) || !ptr) {
38718         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot_a" "', argument " "1"" of type '" "std::string""'");
38719       }
38720       arg1 = *ptr;
38721       if (SWIG_IsNewObj(res)) delete ptr;
38722     }
38723     {
38724       std::string *ptr = (std::string *)0;
38725       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
38726       if (!SWIG_IsOK(res) || !ptr) {
38727         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot_a" "', argument " "2"" of type '" "std::string""'");
38728       }
38729       arg2 = *ptr;
38730       if (SWIG_IsNewObj(res)) delete ptr;
38731     }
38732     {
38733       std::string *ptr = (std::string *)0;
38734       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
38735       if (!SWIG_IsOK(res) || !ptr) {
38736         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot_a" "', argument " "3"" of type '" "std::string""'");
38737       }
38738       arg3 = *ptr;
38739       if (SWIG_IsNewObj(res)) delete ptr;
38740     }
38741     {
38742       std::string *ptr = (std::string *)0;
38743       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), &ptr);
38744       if (!SWIG_IsOK(res) || !ptr) {
38745         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot_a" "', argument " "4"" of type '" "std::string""'");
38746       }
38747       arg4 = *ptr;
38748       if (SWIG_IsNewObj(res)) delete ptr;
38749     }
38750     {
38751       std::string *ptr = (std::string *)0;
38752       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(4), &ptr);
38753       if (!SWIG_IsOK(res) || !ptr) {
38754         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot_a" "', argument " "5"" of type '" "std::string""'");
38755       }
38756       arg5 = *ptr;
38757       if (SWIG_IsNewObj(res)) delete ptr;
38758     }
38759     res6 = SWIG_ConvertPtr(ST(5), &argp6,SWIGTYPE_p_vrna_md_t, 0 |  0 );
38760     if (!SWIG_IsOK(res6)) {
38761       SWIG_exception_fail(SWIG_ArgError(res6), "in method '" "file_PS_rnaplot_a" "', argument " "6"" of type '" "vrna_md_t *""'");
38762     }
38763     arg6 = reinterpret_cast< vrna_md_t * >(argp6);
38764     {
38765       try {
38766         result = (int)file_PS_rnaplot_a(arg1,arg2,arg3,arg4,arg5,arg6);
38767       } catch (const std::exception& e) {
38768         SWIG_exception(SWIG_RuntimeError, e.what());
38769       }
38770     }
38771     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
38772 
38773 
38774 
38775 
38776 
38777 
38778     XSRETURN(argvi);
38779   fail:
38780 
38781 
38782 
38783 
38784 
38785 
38786     SWIG_croak_null();
38787   }
38788 }
38789 
38790 
XS(_wrap_file_PS_rnaplot_a__SWIG_1)38791 XS(_wrap_file_PS_rnaplot_a__SWIG_1) {
38792   {
38793     std::string arg1 ;
38794     std::string arg2 ;
38795     std::string arg3 ;
38796     std::string arg4 ;
38797     std::string arg5 ;
38798     int argvi = 0;
38799     int result;
38800     dXSARGS;
38801 
38802     if ((items < 5) || (items > 5)) {
38803       SWIG_croak("Usage: file_PS_rnaplot_a(sequence,structure,filename,pre,post);");
38804     }
38805     {
38806       std::string *ptr = (std::string *)0;
38807       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
38808       if (!SWIG_IsOK(res) || !ptr) {
38809         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot_a" "', argument " "1"" of type '" "std::string""'");
38810       }
38811       arg1 = *ptr;
38812       if (SWIG_IsNewObj(res)) delete ptr;
38813     }
38814     {
38815       std::string *ptr = (std::string *)0;
38816       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
38817       if (!SWIG_IsOK(res) || !ptr) {
38818         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot_a" "', argument " "2"" of type '" "std::string""'");
38819       }
38820       arg2 = *ptr;
38821       if (SWIG_IsNewObj(res)) delete ptr;
38822     }
38823     {
38824       std::string *ptr = (std::string *)0;
38825       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
38826       if (!SWIG_IsOK(res) || !ptr) {
38827         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot_a" "', argument " "3"" of type '" "std::string""'");
38828       }
38829       arg3 = *ptr;
38830       if (SWIG_IsNewObj(res)) delete ptr;
38831     }
38832     {
38833       std::string *ptr = (std::string *)0;
38834       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), &ptr);
38835       if (!SWIG_IsOK(res) || !ptr) {
38836         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot_a" "', argument " "4"" of type '" "std::string""'");
38837       }
38838       arg4 = *ptr;
38839       if (SWIG_IsNewObj(res)) delete ptr;
38840     }
38841     {
38842       std::string *ptr = (std::string *)0;
38843       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(4), &ptr);
38844       if (!SWIG_IsOK(res) || !ptr) {
38845         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_rnaplot_a" "', argument " "5"" of type '" "std::string""'");
38846       }
38847       arg5 = *ptr;
38848       if (SWIG_IsNewObj(res)) delete ptr;
38849     }
38850     {
38851       try {
38852         result = (int)file_PS_rnaplot_a(arg1,arg2,arg3,arg4,arg5);
38853       } catch (const std::exception& e) {
38854         SWIG_exception(SWIG_RuntimeError, e.what());
38855       }
38856     }
38857     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
38858 
38859 
38860 
38861 
38862 
38863     XSRETURN(argvi);
38864   fail:
38865 
38866 
38867 
38868 
38869 
38870     SWIG_croak_null();
38871   }
38872 }
38873 
38874 
XS(_wrap_file_PS_rnaplot_a)38875 XS(_wrap_file_PS_rnaplot_a) {
38876   dXSARGS;
38877 
38878   {
38879     unsigned long _index = 0;
38880     SWIG_TypeRank _rank = 0;
38881     if (items == 5) {
38882       SWIG_TypeRank _ranki = 0;
38883       SWIG_TypeRank _rankm = 0;
38884       SWIG_TypeRank _pi = 1;
38885       int _v = 0;
38886       {
38887         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
38888         _v = SWIG_CheckState(res);
38889       }
38890       if (!_v) goto check_1;
38891       _ranki += _v*_pi;
38892       _rankm += _pi;
38893       _pi *= SWIG_MAXCASTRANK;
38894       {
38895         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
38896         _v = SWIG_CheckState(res);
38897       }
38898       if (!_v) goto check_1;
38899       _ranki += _v*_pi;
38900       _rankm += _pi;
38901       _pi *= SWIG_MAXCASTRANK;
38902       {
38903         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), (std::string**)(0));
38904         _v = SWIG_CheckState(res);
38905       }
38906       if (!_v) goto check_1;
38907       _ranki += _v*_pi;
38908       _rankm += _pi;
38909       _pi *= SWIG_MAXCASTRANK;
38910       {
38911         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), (std::string**)(0));
38912         _v = SWIG_CheckState(res);
38913       }
38914       if (!_v) goto check_1;
38915       _ranki += _v*_pi;
38916       _rankm += _pi;
38917       _pi *= SWIG_MAXCASTRANK;
38918       {
38919         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(4), (std::string**)(0));
38920         _v = SWIG_CheckState(res);
38921       }
38922       if (!_v) goto check_1;
38923       _ranki += _v*_pi;
38924       _rankm += _pi;
38925       _pi *= SWIG_MAXCASTRANK;
38926       if (!_index || (_ranki < _rank)) {
38927         _rank = _ranki; _index = 1;
38928         if (_rank == _rankm) goto dispatch;
38929       }
38930     }
38931   check_1:
38932 
38933     if (items == 6) {
38934       SWIG_TypeRank _ranki = 0;
38935       SWIG_TypeRank _rankm = 0;
38936       SWIG_TypeRank _pi = 1;
38937       int _v = 0;
38938       {
38939         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
38940         _v = SWIG_CheckState(res);
38941       }
38942       if (!_v) goto check_2;
38943       _ranki += _v*_pi;
38944       _rankm += _pi;
38945       _pi *= SWIG_MAXCASTRANK;
38946       {
38947         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
38948         _v = SWIG_CheckState(res);
38949       }
38950       if (!_v) goto check_2;
38951       _ranki += _v*_pi;
38952       _rankm += _pi;
38953       _pi *= SWIG_MAXCASTRANK;
38954       {
38955         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), (std::string**)(0));
38956         _v = SWIG_CheckState(res);
38957       }
38958       if (!_v) goto check_2;
38959       _ranki += _v*_pi;
38960       _rankm += _pi;
38961       _pi *= SWIG_MAXCASTRANK;
38962       {
38963         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), (std::string**)(0));
38964         _v = SWIG_CheckState(res);
38965       }
38966       if (!_v) goto check_2;
38967       _ranki += _v*_pi;
38968       _rankm += _pi;
38969       _pi *= SWIG_MAXCASTRANK;
38970       {
38971         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(4), (std::string**)(0));
38972         _v = SWIG_CheckState(res);
38973       }
38974       if (!_v) goto check_2;
38975       _ranki += _v*_pi;
38976       _rankm += _pi;
38977       _pi *= SWIG_MAXCASTRANK;
38978       {
38979         void *vptr = 0;
38980         int res = SWIG_ConvertPtr(ST(5), &vptr, SWIGTYPE_p_vrna_md_t, 0);
38981         _v = SWIG_CheckState(res);
38982       }
38983       if (!_v) goto check_2;
38984       _ranki += _v*_pi;
38985       _rankm += _pi;
38986       _pi *= SWIG_MAXCASTRANK;
38987       if (!_index || (_ranki < _rank)) {
38988         _rank = _ranki; _index = 2;
38989         if (_rank == _rankm) goto dispatch;
38990       }
38991     }
38992   check_2:
38993 
38994   dispatch:
38995     switch(_index) {
38996     case 1:
38997       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_PS_rnaplot_a__SWIG_1); return;
38998     case 2:
38999       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_PS_rnaplot_a__SWIG_0); return;
39000     }
39001   }
39002 
39003   croak("No matching function for overloaded 'file_PS_rnaplot_a'");
39004   XSRETURN(0);
39005 }
39006 
39007 
XS(_wrap_gmlRNA)39008 XS(_wrap_gmlRNA) {
39009   {
39010     char *arg1 = (char *) 0 ;
39011     char *arg2 = (char *) 0 ;
39012     char *arg3 = (char *) 0 ;
39013     char arg4 ;
39014     int res1 ;
39015     char *buf1 = 0 ;
39016     int alloc1 = 0 ;
39017     int res2 ;
39018     char *buf2 = 0 ;
39019     int alloc2 = 0 ;
39020     int res3 ;
39021     char *buf3 = 0 ;
39022     int alloc3 = 0 ;
39023     char val4 ;
39024     int ecode4 = 0 ;
39025     int argvi = 0;
39026     int result;
39027     dXSARGS;
39028 
39029     if ((items < 4) || (items > 4)) {
39030       SWIG_croak("Usage: gmlRNA(string,structure,ssfile,option);");
39031     }
39032     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
39033     if (!SWIG_IsOK(res1)) {
39034       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "gmlRNA" "', argument " "1"" of type '" "char *""'");
39035     }
39036     arg1 = reinterpret_cast< char * >(buf1);
39037     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
39038     if (!SWIG_IsOK(res2)) {
39039       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "gmlRNA" "', argument " "2"" of type '" "char *""'");
39040     }
39041     arg2 = reinterpret_cast< char * >(buf2);
39042     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
39043     if (!SWIG_IsOK(res3)) {
39044       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "gmlRNA" "', argument " "3"" of type '" "char *""'");
39045     }
39046     arg3 = reinterpret_cast< char * >(buf3);
39047     ecode4 = SWIG_AsVal_char SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
39048     if (!SWIG_IsOK(ecode4)) {
39049       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "gmlRNA" "', argument " "4"" of type '" "char""'");
39050     }
39051     arg4 = static_cast< char >(val4);
39052     {
39053       try {
39054         result = (int)gmlRNA(arg1,arg2,arg3,arg4);
39055       } catch (const std::exception& e) {
39056         SWIG_exception(SWIG_RuntimeError, e.what());
39057       }
39058     }
39059     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
39060     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
39061     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
39062     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
39063 
39064     XSRETURN(argvi);
39065   fail:
39066     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
39067     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
39068     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
39069 
39070     SWIG_croak_null();
39071   }
39072 }
39073 
39074 
XS(_wrap_ssv_rna_plot)39075 XS(_wrap_ssv_rna_plot) {
39076   {
39077     char *arg1 = (char *) 0 ;
39078     char *arg2 = (char *) 0 ;
39079     char *arg3 = (char *) 0 ;
39080     int res1 ;
39081     char *buf1 = 0 ;
39082     int alloc1 = 0 ;
39083     int res2 ;
39084     char *buf2 = 0 ;
39085     int alloc2 = 0 ;
39086     int res3 ;
39087     char *buf3 = 0 ;
39088     int alloc3 = 0 ;
39089     int argvi = 0;
39090     int result;
39091     dXSARGS;
39092 
39093     if ((items < 3) || (items > 3)) {
39094       SWIG_croak("Usage: ssv_rna_plot(string,structure,ssfile);");
39095     }
39096     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
39097     if (!SWIG_IsOK(res1)) {
39098       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ssv_rna_plot" "', argument " "1"" of type '" "char *""'");
39099     }
39100     arg1 = reinterpret_cast< char * >(buf1);
39101     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
39102     if (!SWIG_IsOK(res2)) {
39103       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "ssv_rna_plot" "', argument " "2"" of type '" "char *""'");
39104     }
39105     arg2 = reinterpret_cast< char * >(buf2);
39106     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
39107     if (!SWIG_IsOK(res3)) {
39108       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "ssv_rna_plot" "', argument " "3"" of type '" "char *""'");
39109     }
39110     arg3 = reinterpret_cast< char * >(buf3);
39111     {
39112       try {
39113         result = (int)ssv_rna_plot(arg1,arg2,arg3);
39114       } catch (const std::exception& e) {
39115         SWIG_exception(SWIG_RuntimeError, e.what());
39116       }
39117     }
39118     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
39119     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
39120     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
39121     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
39122     XSRETURN(argvi);
39123   fail:
39124     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
39125     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
39126     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
39127     SWIG_croak_null();
39128   }
39129 }
39130 
39131 
XS(_wrap_svg_rna_plot)39132 XS(_wrap_svg_rna_plot) {
39133   {
39134     char *arg1 = (char *) 0 ;
39135     char *arg2 = (char *) 0 ;
39136     char *arg3 = (char *) 0 ;
39137     int res1 ;
39138     char *buf1 = 0 ;
39139     int alloc1 = 0 ;
39140     int res2 ;
39141     char *buf2 = 0 ;
39142     int alloc2 = 0 ;
39143     int res3 ;
39144     char *buf3 = 0 ;
39145     int alloc3 = 0 ;
39146     int argvi = 0;
39147     int result;
39148     dXSARGS;
39149 
39150     if ((items < 3) || (items > 3)) {
39151       SWIG_croak("Usage: svg_rna_plot(string,structure,ssfile);");
39152     }
39153     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
39154     if (!SWIG_IsOK(res1)) {
39155       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "svg_rna_plot" "', argument " "1"" of type '" "char *""'");
39156     }
39157     arg1 = reinterpret_cast< char * >(buf1);
39158     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
39159     if (!SWIG_IsOK(res2)) {
39160       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "svg_rna_plot" "', argument " "2"" of type '" "char *""'");
39161     }
39162     arg2 = reinterpret_cast< char * >(buf2);
39163     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
39164     if (!SWIG_IsOK(res3)) {
39165       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "svg_rna_plot" "', argument " "3"" of type '" "char *""'");
39166     }
39167     arg3 = reinterpret_cast< char * >(buf3);
39168     {
39169       try {
39170         result = (int)svg_rna_plot(arg1,arg2,arg3);
39171       } catch (const std::exception& e) {
39172         SWIG_exception(SWIG_RuntimeError, e.what());
39173       }
39174     }
39175     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
39176     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
39177     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
39178     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
39179     XSRETURN(argvi);
39180   fail:
39181     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
39182     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
39183     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
39184     SWIG_croak_null();
39185   }
39186 }
39187 
39188 
XS(_wrap_xrna_plot)39189 XS(_wrap_xrna_plot) {
39190   {
39191     char *arg1 = (char *) 0 ;
39192     char *arg2 = (char *) 0 ;
39193     char *arg3 = (char *) 0 ;
39194     int res1 ;
39195     char *buf1 = 0 ;
39196     int alloc1 = 0 ;
39197     int res2 ;
39198     char *buf2 = 0 ;
39199     int alloc2 = 0 ;
39200     int res3 ;
39201     char *buf3 = 0 ;
39202     int alloc3 = 0 ;
39203     int argvi = 0;
39204     int result;
39205     dXSARGS;
39206 
39207     if ((items < 3) || (items > 3)) {
39208       SWIG_croak("Usage: xrna_plot(string,structure,ssfile);");
39209     }
39210     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
39211     if (!SWIG_IsOK(res1)) {
39212       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "xrna_plot" "', argument " "1"" of type '" "char *""'");
39213     }
39214     arg1 = reinterpret_cast< char * >(buf1);
39215     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
39216     if (!SWIG_IsOK(res2)) {
39217       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "xrna_plot" "', argument " "2"" of type '" "char *""'");
39218     }
39219     arg2 = reinterpret_cast< char * >(buf2);
39220     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
39221     if (!SWIG_IsOK(res3)) {
39222       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "xrna_plot" "', argument " "3"" of type '" "char *""'");
39223     }
39224     arg3 = reinterpret_cast< char * >(buf3);
39225     {
39226       try {
39227         result = (int)xrna_plot(arg1,arg2,arg3);
39228       } catch (const std::exception& e) {
39229         SWIG_exception(SWIG_RuntimeError, e.what());
39230       }
39231     }
39232     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
39233     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
39234     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
39235     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
39236     XSRETURN(argvi);
39237   fail:
39238     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
39239     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
39240     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
39241     SWIG_croak_null();
39242   }
39243 }
39244 
39245 
XS(_wrap_PS_rna_plot)39246 XS(_wrap_PS_rna_plot) {
39247   {
39248     char *arg1 = (char *) 0 ;
39249     char *arg2 = (char *) 0 ;
39250     char *arg3 = (char *) 0 ;
39251     int res1 ;
39252     char *buf1 = 0 ;
39253     int alloc1 = 0 ;
39254     int res2 ;
39255     char *buf2 = 0 ;
39256     int alloc2 = 0 ;
39257     int res3 ;
39258     char *buf3 = 0 ;
39259     int alloc3 = 0 ;
39260     int argvi = 0;
39261     int result;
39262     dXSARGS;
39263 
39264     if ((items < 3) || (items > 3)) {
39265       SWIG_croak("Usage: PS_rna_plot(string,structure,file);");
39266     }
39267     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
39268     if (!SWIG_IsOK(res1)) {
39269       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PS_rna_plot" "', argument " "1"" of type '" "char *""'");
39270     }
39271     arg1 = reinterpret_cast< char * >(buf1);
39272     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
39273     if (!SWIG_IsOK(res2)) {
39274       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PS_rna_plot" "', argument " "2"" of type '" "char *""'");
39275     }
39276     arg2 = reinterpret_cast< char * >(buf2);
39277     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
39278     if (!SWIG_IsOK(res3)) {
39279       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "PS_rna_plot" "', argument " "3"" of type '" "char *""'");
39280     }
39281     arg3 = reinterpret_cast< char * >(buf3);
39282     {
39283       try {
39284         result = (int)PS_rna_plot(arg1,arg2,arg3);
39285       } catch (const std::exception& e) {
39286         SWIG_exception(SWIG_RuntimeError, e.what());
39287       }
39288     }
39289     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
39290     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
39291     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
39292     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
39293     XSRETURN(argvi);
39294   fail:
39295     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
39296     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
39297     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
39298     SWIG_croak_null();
39299   }
39300 }
39301 
39302 
XS(_wrap_PS_rna_plot_a)39303 XS(_wrap_PS_rna_plot_a) {
39304   {
39305     char *arg1 = (char *) 0 ;
39306     char *arg2 = (char *) 0 ;
39307     char *arg3 = (char *) 0 ;
39308     char *arg4 = (char *) 0 ;
39309     char *arg5 = (char *) 0 ;
39310     int res1 ;
39311     char *buf1 = 0 ;
39312     int alloc1 = 0 ;
39313     int res2 ;
39314     char *buf2 = 0 ;
39315     int alloc2 = 0 ;
39316     int res3 ;
39317     char *buf3 = 0 ;
39318     int alloc3 = 0 ;
39319     int res4 ;
39320     char *buf4 = 0 ;
39321     int alloc4 = 0 ;
39322     int res5 ;
39323     char *buf5 = 0 ;
39324     int alloc5 = 0 ;
39325     int argvi = 0;
39326     int result;
39327     dXSARGS;
39328 
39329     if ((items < 5) || (items > 5)) {
39330       SWIG_croak("Usage: PS_rna_plot_a(string,structure,file,pre,post);");
39331     }
39332     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
39333     if (!SWIG_IsOK(res1)) {
39334       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PS_rna_plot_a" "', argument " "1"" of type '" "char *""'");
39335     }
39336     arg1 = reinterpret_cast< char * >(buf1);
39337     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
39338     if (!SWIG_IsOK(res2)) {
39339       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PS_rna_plot_a" "', argument " "2"" of type '" "char *""'");
39340     }
39341     arg2 = reinterpret_cast< char * >(buf2);
39342     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
39343     if (!SWIG_IsOK(res3)) {
39344       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "PS_rna_plot_a" "', argument " "3"" of type '" "char *""'");
39345     }
39346     arg3 = reinterpret_cast< char * >(buf3);
39347     res4 = SWIG_AsCharPtrAndSize(ST(3), &buf4, NULL, &alloc4);
39348     if (!SWIG_IsOK(res4)) {
39349       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "PS_rna_plot_a" "', argument " "4"" of type '" "char *""'");
39350     }
39351     arg4 = reinterpret_cast< char * >(buf4);
39352     res5 = SWIG_AsCharPtrAndSize(ST(4), &buf5, NULL, &alloc5);
39353     if (!SWIG_IsOK(res5)) {
39354       SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "PS_rna_plot_a" "', argument " "5"" of type '" "char *""'");
39355     }
39356     arg5 = reinterpret_cast< char * >(buf5);
39357     {
39358       try {
39359         result = (int)PS_rna_plot_a(arg1,arg2,arg3,arg4,arg5);
39360       } catch (const std::exception& e) {
39361         SWIG_exception(SWIG_RuntimeError, e.what());
39362       }
39363     }
39364     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
39365     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
39366     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
39367     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
39368     if (alloc4 == SWIG_NEWOBJ) delete[] buf4;
39369     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
39370     XSRETURN(argvi);
39371   fail:
39372     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
39373     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
39374     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
39375     if (alloc4 == SWIG_NEWOBJ) delete[] buf4;
39376     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
39377     SWIG_croak_null();
39378   }
39379 }
39380 
39381 
XS(_wrap_PS_rna_plot_a_gquad)39382 XS(_wrap_PS_rna_plot_a_gquad) {
39383   {
39384     char *arg1 = (char *) 0 ;
39385     char *arg2 = (char *) 0 ;
39386     char *arg3 = (char *) 0 ;
39387     char *arg4 = (char *) 0 ;
39388     char *arg5 = (char *) 0 ;
39389     int res1 ;
39390     char *buf1 = 0 ;
39391     int alloc1 = 0 ;
39392     int res2 ;
39393     char *buf2 = 0 ;
39394     int alloc2 = 0 ;
39395     int res3 ;
39396     char *buf3 = 0 ;
39397     int alloc3 = 0 ;
39398     int res4 ;
39399     char *buf4 = 0 ;
39400     int alloc4 = 0 ;
39401     int res5 ;
39402     char *buf5 = 0 ;
39403     int alloc5 = 0 ;
39404     int argvi = 0;
39405     int result;
39406     dXSARGS;
39407 
39408     if ((items < 5) || (items > 5)) {
39409       SWIG_croak("Usage: PS_rna_plot_a_gquad(string,structure,ssfile,pre,post);");
39410     }
39411     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
39412     if (!SWIG_IsOK(res1)) {
39413       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PS_rna_plot_a_gquad" "', argument " "1"" of type '" "char *""'");
39414     }
39415     arg1 = reinterpret_cast< char * >(buf1);
39416     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
39417     if (!SWIG_IsOK(res2)) {
39418       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PS_rna_plot_a_gquad" "', argument " "2"" of type '" "char *""'");
39419     }
39420     arg2 = reinterpret_cast< char * >(buf2);
39421     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
39422     if (!SWIG_IsOK(res3)) {
39423       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "PS_rna_plot_a_gquad" "', argument " "3"" of type '" "char *""'");
39424     }
39425     arg3 = reinterpret_cast< char * >(buf3);
39426     res4 = SWIG_AsCharPtrAndSize(ST(3), &buf4, NULL, &alloc4);
39427     if (!SWIG_IsOK(res4)) {
39428       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "PS_rna_plot_a_gquad" "', argument " "4"" of type '" "char *""'");
39429     }
39430     arg4 = reinterpret_cast< char * >(buf4);
39431     res5 = SWIG_AsCharPtrAndSize(ST(4), &buf5, NULL, &alloc5);
39432     if (!SWIG_IsOK(res5)) {
39433       SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "PS_rna_plot_a_gquad" "', argument " "5"" of type '" "char *""'");
39434     }
39435     arg5 = reinterpret_cast< char * >(buf5);
39436     {
39437       try {
39438         result = (int)PS_rna_plot_a_gquad(arg1,arg2,arg3,arg4,arg5);
39439       } catch (const std::exception& e) {
39440         SWIG_exception(SWIG_RuntimeError, e.what());
39441       }
39442     }
39443     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
39444     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
39445     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
39446     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
39447     if (alloc4 == SWIG_NEWOBJ) delete[] buf4;
39448     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
39449     XSRETURN(argvi);
39450   fail:
39451     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
39452     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
39453     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
39454     if (alloc4 == SWIG_NEWOBJ) delete[] buf4;
39455     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
39456     SWIG_croak_null();
39457   }
39458 }
39459 
39460 
XS(_wrap_file_PS_aln__SWIG_0)39461 XS(_wrap_file_PS_aln__SWIG_0) {
39462   {
39463     std::string arg1 ;
39464     std::vector< std::string > arg2 ;
39465     std::vector< std::string > arg3 ;
39466     std::string arg4 ;
39467     unsigned int arg5 ;
39468     unsigned int arg6 ;
39469     int arg7 ;
39470     unsigned int arg8 ;
39471     std::vector< std::string > *v2 ;
39472     std::vector< std::string > *v3 ;
39473     unsigned int val5 ;
39474     int ecode5 = 0 ;
39475     unsigned int val6 ;
39476     int ecode6 = 0 ;
39477     int val7 ;
39478     int ecode7 = 0 ;
39479     unsigned int val8 ;
39480     int ecode8 = 0 ;
39481     int argvi = 0;
39482     int result;
39483     dXSARGS;
39484 
39485     if ((items < 8) || (items > 8)) {
39486       SWIG_croak("Usage: file_PS_aln(filename,alignment,identifiers,structure,start,end,offset,columns);");
39487     }
39488     {
39489       std::string *ptr = (std::string *)0;
39490       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
39491       if (!SWIG_IsOK(res) || !ptr) {
39492         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_aln" "', argument " "1"" of type '" "std::string""'");
39493       }
39494       arg1 = *ptr;
39495       if (SWIG_IsNewObj(res)) delete ptr;
39496     }
39497     {
39498       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
39499           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
39500         arg2 = *v2;
39501       } else if (SvROK(ST(1))) {
39502         AV *av = (AV *)SvRV(ST(1));
39503         if (SvTYPE(av) != SVt_PVAV)
39504         SWIG_croak("Type error in argument 2 of file_PS_aln. "
39505           "Expected an array of ""std::string");
39506         SV **tv;
39507         I32 len = av_len(av) + 1;
39508         for (int i=0; i<len; i++) {
39509           tv = av_fetch(av, i, 0);
39510           if (SvPOK(*tv)) {
39511             (&arg2)->push_back((std::string)SwigSvToString(*tv));
39512           } else {
39513             SWIG_croak("Type error in argument 2 of "
39514               "file_PS_aln. "
39515               "Expected an array of ""std::string");
39516           }
39517         }
39518       } else {
39519         SWIG_croak("Type error in argument 2 of file_PS_aln. "
39520           "Expected an array of ""std::string");
39521       }
39522     }
39523     {
39524       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
39525           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
39526         arg3 = *v3;
39527       } else if (SvROK(ST(2))) {
39528         AV *av = (AV *)SvRV(ST(2));
39529         if (SvTYPE(av) != SVt_PVAV)
39530         SWIG_croak("Type error in argument 3 of file_PS_aln. "
39531           "Expected an array of ""std::string");
39532         SV **tv;
39533         I32 len = av_len(av) + 1;
39534         for (int i=0; i<len; i++) {
39535           tv = av_fetch(av, i, 0);
39536           if (SvPOK(*tv)) {
39537             (&arg3)->push_back((std::string)SwigSvToString(*tv));
39538           } else {
39539             SWIG_croak("Type error in argument 3 of "
39540               "file_PS_aln. "
39541               "Expected an array of ""std::string");
39542           }
39543         }
39544       } else {
39545         SWIG_croak("Type error in argument 3 of file_PS_aln. "
39546           "Expected an array of ""std::string");
39547       }
39548     }
39549     {
39550       std::string *ptr = (std::string *)0;
39551       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), &ptr);
39552       if (!SWIG_IsOK(res) || !ptr) {
39553         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_aln" "', argument " "4"" of type '" "std::string""'");
39554       }
39555       arg4 = *ptr;
39556       if (SWIG_IsNewObj(res)) delete ptr;
39557     }
39558     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
39559     if (!SWIG_IsOK(ecode5)) {
39560       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "file_PS_aln" "', argument " "5"" of type '" "unsigned int""'");
39561     }
39562     arg5 = static_cast< unsigned int >(val5);
39563     ecode6 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
39564     if (!SWIG_IsOK(ecode6)) {
39565       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "file_PS_aln" "', argument " "6"" of type '" "unsigned int""'");
39566     }
39567     arg6 = static_cast< unsigned int >(val6);
39568     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
39569     if (!SWIG_IsOK(ecode7)) {
39570       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "file_PS_aln" "', argument " "7"" of type '" "int""'");
39571     }
39572     arg7 = static_cast< int >(val7);
39573     ecode8 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
39574     if (!SWIG_IsOK(ecode8)) {
39575       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "file_PS_aln" "', argument " "8"" of type '" "unsigned int""'");
39576     }
39577     arg8 = static_cast< unsigned int >(val8);
39578     {
39579       try {
39580         result = (int)file_PS_aln(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8);
39581       } catch (const std::exception& e) {
39582         SWIG_exception(SWIG_RuntimeError, e.what());
39583       }
39584     }
39585     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
39586 
39587 
39588 
39589 
39590 
39591 
39592     XSRETURN(argvi);
39593   fail:
39594 
39595 
39596 
39597 
39598 
39599 
39600     SWIG_croak_null();
39601   }
39602 }
39603 
39604 
XS(_wrap_file_PS_aln__SWIG_1)39605 XS(_wrap_file_PS_aln__SWIG_1) {
39606   {
39607     std::string arg1 ;
39608     std::vector< std::string > arg2 ;
39609     std::vector< std::string > arg3 ;
39610     std::string arg4 ;
39611     unsigned int arg5 ;
39612     unsigned int arg6 ;
39613     int arg7 ;
39614     std::vector< std::string > *v2 ;
39615     std::vector< std::string > *v3 ;
39616     unsigned int val5 ;
39617     int ecode5 = 0 ;
39618     unsigned int val6 ;
39619     int ecode6 = 0 ;
39620     int val7 ;
39621     int ecode7 = 0 ;
39622     int argvi = 0;
39623     int result;
39624     dXSARGS;
39625 
39626     if ((items < 7) || (items > 7)) {
39627       SWIG_croak("Usage: file_PS_aln(filename,alignment,identifiers,structure,start,end,offset);");
39628     }
39629     {
39630       std::string *ptr = (std::string *)0;
39631       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
39632       if (!SWIG_IsOK(res) || !ptr) {
39633         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_aln" "', argument " "1"" of type '" "std::string""'");
39634       }
39635       arg1 = *ptr;
39636       if (SWIG_IsNewObj(res)) delete ptr;
39637     }
39638     {
39639       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
39640           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
39641         arg2 = *v2;
39642       } else if (SvROK(ST(1))) {
39643         AV *av = (AV *)SvRV(ST(1));
39644         if (SvTYPE(av) != SVt_PVAV)
39645         SWIG_croak("Type error in argument 2 of file_PS_aln. "
39646           "Expected an array of ""std::string");
39647         SV **tv;
39648         I32 len = av_len(av) + 1;
39649         for (int i=0; i<len; i++) {
39650           tv = av_fetch(av, i, 0);
39651           if (SvPOK(*tv)) {
39652             (&arg2)->push_back((std::string)SwigSvToString(*tv));
39653           } else {
39654             SWIG_croak("Type error in argument 2 of "
39655               "file_PS_aln. "
39656               "Expected an array of ""std::string");
39657           }
39658         }
39659       } else {
39660         SWIG_croak("Type error in argument 2 of file_PS_aln. "
39661           "Expected an array of ""std::string");
39662       }
39663     }
39664     {
39665       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
39666           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
39667         arg3 = *v3;
39668       } else if (SvROK(ST(2))) {
39669         AV *av = (AV *)SvRV(ST(2));
39670         if (SvTYPE(av) != SVt_PVAV)
39671         SWIG_croak("Type error in argument 3 of file_PS_aln. "
39672           "Expected an array of ""std::string");
39673         SV **tv;
39674         I32 len = av_len(av) + 1;
39675         for (int i=0; i<len; i++) {
39676           tv = av_fetch(av, i, 0);
39677           if (SvPOK(*tv)) {
39678             (&arg3)->push_back((std::string)SwigSvToString(*tv));
39679           } else {
39680             SWIG_croak("Type error in argument 3 of "
39681               "file_PS_aln. "
39682               "Expected an array of ""std::string");
39683           }
39684         }
39685       } else {
39686         SWIG_croak("Type error in argument 3 of file_PS_aln. "
39687           "Expected an array of ""std::string");
39688       }
39689     }
39690     {
39691       std::string *ptr = (std::string *)0;
39692       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), &ptr);
39693       if (!SWIG_IsOK(res) || !ptr) {
39694         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_aln" "', argument " "4"" of type '" "std::string""'");
39695       }
39696       arg4 = *ptr;
39697       if (SWIG_IsNewObj(res)) delete ptr;
39698     }
39699     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
39700     if (!SWIG_IsOK(ecode5)) {
39701       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "file_PS_aln" "', argument " "5"" of type '" "unsigned int""'");
39702     }
39703     arg5 = static_cast< unsigned int >(val5);
39704     ecode6 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
39705     if (!SWIG_IsOK(ecode6)) {
39706       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "file_PS_aln" "', argument " "6"" of type '" "unsigned int""'");
39707     }
39708     arg6 = static_cast< unsigned int >(val6);
39709     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
39710     if (!SWIG_IsOK(ecode7)) {
39711       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "file_PS_aln" "', argument " "7"" of type '" "int""'");
39712     }
39713     arg7 = static_cast< int >(val7);
39714     {
39715       try {
39716         result = (int)file_PS_aln(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
39717       } catch (const std::exception& e) {
39718         SWIG_exception(SWIG_RuntimeError, e.what());
39719       }
39720     }
39721     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
39722 
39723 
39724 
39725 
39726 
39727     XSRETURN(argvi);
39728   fail:
39729 
39730 
39731 
39732 
39733 
39734     SWIG_croak_null();
39735   }
39736 }
39737 
39738 
XS(_wrap_file_PS_aln__SWIG_2)39739 XS(_wrap_file_PS_aln__SWIG_2) {
39740   {
39741     std::string arg1 ;
39742     std::vector< std::string > arg2 ;
39743     std::vector< std::string > arg3 ;
39744     std::string arg4 ;
39745     unsigned int arg5 ;
39746     unsigned int arg6 ;
39747     std::vector< std::string > *v2 ;
39748     std::vector< std::string > *v3 ;
39749     unsigned int val5 ;
39750     int ecode5 = 0 ;
39751     unsigned int val6 ;
39752     int ecode6 = 0 ;
39753     int argvi = 0;
39754     int result;
39755     dXSARGS;
39756 
39757     if ((items < 6) || (items > 6)) {
39758       SWIG_croak("Usage: file_PS_aln(filename,alignment,identifiers,structure,start,end);");
39759     }
39760     {
39761       std::string *ptr = (std::string *)0;
39762       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
39763       if (!SWIG_IsOK(res) || !ptr) {
39764         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_aln" "', argument " "1"" of type '" "std::string""'");
39765       }
39766       arg1 = *ptr;
39767       if (SWIG_IsNewObj(res)) delete ptr;
39768     }
39769     {
39770       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
39771           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
39772         arg2 = *v2;
39773       } else if (SvROK(ST(1))) {
39774         AV *av = (AV *)SvRV(ST(1));
39775         if (SvTYPE(av) != SVt_PVAV)
39776         SWIG_croak("Type error in argument 2 of file_PS_aln. "
39777           "Expected an array of ""std::string");
39778         SV **tv;
39779         I32 len = av_len(av) + 1;
39780         for (int i=0; i<len; i++) {
39781           tv = av_fetch(av, i, 0);
39782           if (SvPOK(*tv)) {
39783             (&arg2)->push_back((std::string)SwigSvToString(*tv));
39784           } else {
39785             SWIG_croak("Type error in argument 2 of "
39786               "file_PS_aln. "
39787               "Expected an array of ""std::string");
39788           }
39789         }
39790       } else {
39791         SWIG_croak("Type error in argument 2 of file_PS_aln. "
39792           "Expected an array of ""std::string");
39793       }
39794     }
39795     {
39796       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
39797           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
39798         arg3 = *v3;
39799       } else if (SvROK(ST(2))) {
39800         AV *av = (AV *)SvRV(ST(2));
39801         if (SvTYPE(av) != SVt_PVAV)
39802         SWIG_croak("Type error in argument 3 of file_PS_aln. "
39803           "Expected an array of ""std::string");
39804         SV **tv;
39805         I32 len = av_len(av) + 1;
39806         for (int i=0; i<len; i++) {
39807           tv = av_fetch(av, i, 0);
39808           if (SvPOK(*tv)) {
39809             (&arg3)->push_back((std::string)SwigSvToString(*tv));
39810           } else {
39811             SWIG_croak("Type error in argument 3 of "
39812               "file_PS_aln. "
39813               "Expected an array of ""std::string");
39814           }
39815         }
39816       } else {
39817         SWIG_croak("Type error in argument 3 of file_PS_aln. "
39818           "Expected an array of ""std::string");
39819       }
39820     }
39821     {
39822       std::string *ptr = (std::string *)0;
39823       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), &ptr);
39824       if (!SWIG_IsOK(res) || !ptr) {
39825         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_aln" "', argument " "4"" of type '" "std::string""'");
39826       }
39827       arg4 = *ptr;
39828       if (SWIG_IsNewObj(res)) delete ptr;
39829     }
39830     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
39831     if (!SWIG_IsOK(ecode5)) {
39832       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "file_PS_aln" "', argument " "5"" of type '" "unsigned int""'");
39833     }
39834     arg5 = static_cast< unsigned int >(val5);
39835     ecode6 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
39836     if (!SWIG_IsOK(ecode6)) {
39837       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "file_PS_aln" "', argument " "6"" of type '" "unsigned int""'");
39838     }
39839     arg6 = static_cast< unsigned int >(val6);
39840     {
39841       try {
39842         result = (int)file_PS_aln(arg1,arg2,arg3,arg4,arg5,arg6);
39843       } catch (const std::exception& e) {
39844         SWIG_exception(SWIG_RuntimeError, e.what());
39845       }
39846     }
39847     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
39848 
39849 
39850 
39851 
39852     XSRETURN(argvi);
39853   fail:
39854 
39855 
39856 
39857 
39858     SWIG_croak_null();
39859   }
39860 }
39861 
39862 
XS(_wrap_file_PS_aln__SWIG_3)39863 XS(_wrap_file_PS_aln__SWIG_3) {
39864   {
39865     std::string arg1 ;
39866     std::vector< std::string > arg2 ;
39867     std::vector< std::string > arg3 ;
39868     std::string arg4 ;
39869     unsigned int arg5 ;
39870     std::vector< std::string > *v2 ;
39871     std::vector< std::string > *v3 ;
39872     unsigned int val5 ;
39873     int ecode5 = 0 ;
39874     int argvi = 0;
39875     int result;
39876     dXSARGS;
39877 
39878     if ((items < 5) || (items > 5)) {
39879       SWIG_croak("Usage: file_PS_aln(filename,alignment,identifiers,structure,start);");
39880     }
39881     {
39882       std::string *ptr = (std::string *)0;
39883       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
39884       if (!SWIG_IsOK(res) || !ptr) {
39885         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_aln" "', argument " "1"" of type '" "std::string""'");
39886       }
39887       arg1 = *ptr;
39888       if (SWIG_IsNewObj(res)) delete ptr;
39889     }
39890     {
39891       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
39892           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
39893         arg2 = *v2;
39894       } else if (SvROK(ST(1))) {
39895         AV *av = (AV *)SvRV(ST(1));
39896         if (SvTYPE(av) != SVt_PVAV)
39897         SWIG_croak("Type error in argument 2 of file_PS_aln. "
39898           "Expected an array of ""std::string");
39899         SV **tv;
39900         I32 len = av_len(av) + 1;
39901         for (int i=0; i<len; i++) {
39902           tv = av_fetch(av, i, 0);
39903           if (SvPOK(*tv)) {
39904             (&arg2)->push_back((std::string)SwigSvToString(*tv));
39905           } else {
39906             SWIG_croak("Type error in argument 2 of "
39907               "file_PS_aln. "
39908               "Expected an array of ""std::string");
39909           }
39910         }
39911       } else {
39912         SWIG_croak("Type error in argument 2 of file_PS_aln. "
39913           "Expected an array of ""std::string");
39914       }
39915     }
39916     {
39917       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
39918           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
39919         arg3 = *v3;
39920       } else if (SvROK(ST(2))) {
39921         AV *av = (AV *)SvRV(ST(2));
39922         if (SvTYPE(av) != SVt_PVAV)
39923         SWIG_croak("Type error in argument 3 of file_PS_aln. "
39924           "Expected an array of ""std::string");
39925         SV **tv;
39926         I32 len = av_len(av) + 1;
39927         for (int i=0; i<len; i++) {
39928           tv = av_fetch(av, i, 0);
39929           if (SvPOK(*tv)) {
39930             (&arg3)->push_back((std::string)SwigSvToString(*tv));
39931           } else {
39932             SWIG_croak("Type error in argument 3 of "
39933               "file_PS_aln. "
39934               "Expected an array of ""std::string");
39935           }
39936         }
39937       } else {
39938         SWIG_croak("Type error in argument 3 of file_PS_aln. "
39939           "Expected an array of ""std::string");
39940       }
39941     }
39942     {
39943       std::string *ptr = (std::string *)0;
39944       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), &ptr);
39945       if (!SWIG_IsOK(res) || !ptr) {
39946         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_aln" "', argument " "4"" of type '" "std::string""'");
39947       }
39948       arg4 = *ptr;
39949       if (SWIG_IsNewObj(res)) delete ptr;
39950     }
39951     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
39952     if (!SWIG_IsOK(ecode5)) {
39953       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "file_PS_aln" "', argument " "5"" of type '" "unsigned int""'");
39954     }
39955     arg5 = static_cast< unsigned int >(val5);
39956     {
39957       try {
39958         result = (int)file_PS_aln(arg1,arg2,arg3,arg4,arg5);
39959       } catch (const std::exception& e) {
39960         SWIG_exception(SWIG_RuntimeError, e.what());
39961       }
39962     }
39963     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
39964 
39965 
39966 
39967     XSRETURN(argvi);
39968   fail:
39969 
39970 
39971 
39972     SWIG_croak_null();
39973   }
39974 }
39975 
39976 
XS(_wrap_file_PS_aln__SWIG_4)39977 XS(_wrap_file_PS_aln__SWIG_4) {
39978   {
39979     std::string arg1 ;
39980     std::vector< std::string > arg2 ;
39981     std::vector< std::string > arg3 ;
39982     std::string arg4 ;
39983     std::vector< std::string > *v2 ;
39984     std::vector< std::string > *v3 ;
39985     int argvi = 0;
39986     int result;
39987     dXSARGS;
39988 
39989     if ((items < 4) || (items > 4)) {
39990       SWIG_croak("Usage: file_PS_aln(filename,alignment,identifiers,structure);");
39991     }
39992     {
39993       std::string *ptr = (std::string *)0;
39994       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
39995       if (!SWIG_IsOK(res) || !ptr) {
39996         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_aln" "', argument " "1"" of type '" "std::string""'");
39997       }
39998       arg1 = *ptr;
39999       if (SWIG_IsNewObj(res)) delete ptr;
40000     }
40001     {
40002       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
40003           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
40004         arg2 = *v2;
40005       } else if (SvROK(ST(1))) {
40006         AV *av = (AV *)SvRV(ST(1));
40007         if (SvTYPE(av) != SVt_PVAV)
40008         SWIG_croak("Type error in argument 2 of file_PS_aln. "
40009           "Expected an array of ""std::string");
40010         SV **tv;
40011         I32 len = av_len(av) + 1;
40012         for (int i=0; i<len; i++) {
40013           tv = av_fetch(av, i, 0);
40014           if (SvPOK(*tv)) {
40015             (&arg2)->push_back((std::string)SwigSvToString(*tv));
40016           } else {
40017             SWIG_croak("Type error in argument 2 of "
40018               "file_PS_aln. "
40019               "Expected an array of ""std::string");
40020           }
40021         }
40022       } else {
40023         SWIG_croak("Type error in argument 2 of file_PS_aln. "
40024           "Expected an array of ""std::string");
40025       }
40026     }
40027     {
40028       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
40029           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
40030         arg3 = *v3;
40031       } else if (SvROK(ST(2))) {
40032         AV *av = (AV *)SvRV(ST(2));
40033         if (SvTYPE(av) != SVt_PVAV)
40034         SWIG_croak("Type error in argument 3 of file_PS_aln. "
40035           "Expected an array of ""std::string");
40036         SV **tv;
40037         I32 len = av_len(av) + 1;
40038         for (int i=0; i<len; i++) {
40039           tv = av_fetch(av, i, 0);
40040           if (SvPOK(*tv)) {
40041             (&arg3)->push_back((std::string)SwigSvToString(*tv));
40042           } else {
40043             SWIG_croak("Type error in argument 3 of "
40044               "file_PS_aln. "
40045               "Expected an array of ""std::string");
40046           }
40047         }
40048       } else {
40049         SWIG_croak("Type error in argument 3 of file_PS_aln. "
40050           "Expected an array of ""std::string");
40051       }
40052     }
40053     {
40054       std::string *ptr = (std::string *)0;
40055       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), &ptr);
40056       if (!SWIG_IsOK(res) || !ptr) {
40057         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_PS_aln" "', argument " "4"" of type '" "std::string""'");
40058       }
40059       arg4 = *ptr;
40060       if (SWIG_IsNewObj(res)) delete ptr;
40061     }
40062     {
40063       try {
40064         result = (int)file_PS_aln(arg1,arg2,arg3,arg4);
40065       } catch (const std::exception& e) {
40066         SWIG_exception(SWIG_RuntimeError, e.what());
40067       }
40068     }
40069     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
40070 
40071 
40072     XSRETURN(argvi);
40073   fail:
40074 
40075 
40076     SWIG_croak_null();
40077   }
40078 }
40079 
40080 
XS(_wrap_file_PS_aln)40081 XS(_wrap_file_PS_aln) {
40082   dXSARGS;
40083 
40084   {
40085     unsigned long _index = 0;
40086     SWIG_TypeRank _rank = 0;
40087     if (items == 4) {
40088       SWIG_TypeRank _ranki = 0;
40089       SWIG_TypeRank _rankm = 0;
40090       SWIG_TypeRank _pi = 1;
40091       int _v = 0;
40092       {
40093         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
40094         _v = SWIG_CheckState(res);
40095       }
40096       if (!_v) goto check_1;
40097       _ranki += _v*_pi;
40098       _rankm += _pi;
40099       _pi *= SWIG_MAXCASTRANK;
40100       {
40101         {
40102           {
40103             /* wrapped vector? */
40104             std::vector< std::string >* v;
40105             if (SWIG_ConvertPtr(ST(1),(void **) &v,
40106                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
40107               _v = 1;
40108             } else if (SvROK(ST(1))) {
40109               /* native sequence? */
40110               AV *av = (AV *)SvRV(ST(1));
40111               if (SvTYPE(av) == SVt_PVAV) {
40112                 I32 len = av_len(av) + 1;
40113                 if (len == 0) {
40114                   /* an empty sequence can be of any type */
40115                   _v = 1;
40116                 } else {
40117                   /* check the first element only */
40118                   SV **tv = av_fetch(av, 0, 0);
40119                   if (SvPOK(*tv))
40120                   _v = 1;
40121                   else
40122                   _v = 0;
40123                 }
40124               }
40125             } else {
40126               _v = 0;
40127             }
40128           }
40129         }
40130       }
40131       if (!_v) goto check_1;
40132       _ranki += _v*_pi;
40133       _rankm += _pi;
40134       _pi *= SWIG_MAXCASTRANK;
40135       {
40136         {
40137           {
40138             /* wrapped vector? */
40139             std::vector< std::string >* v;
40140             if (SWIG_ConvertPtr(ST(2),(void **) &v,
40141                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
40142               _v = 1;
40143             } else if (SvROK(ST(2))) {
40144               /* native sequence? */
40145               AV *av = (AV *)SvRV(ST(2));
40146               if (SvTYPE(av) == SVt_PVAV) {
40147                 I32 len = av_len(av) + 1;
40148                 if (len == 0) {
40149                   /* an empty sequence can be of any type */
40150                   _v = 1;
40151                 } else {
40152                   /* check the first element only */
40153                   SV **tv = av_fetch(av, 0, 0);
40154                   if (SvPOK(*tv))
40155                   _v = 1;
40156                   else
40157                   _v = 0;
40158                 }
40159               }
40160             } else {
40161               _v = 0;
40162             }
40163           }
40164         }
40165       }
40166       if (!_v) goto check_1;
40167       _ranki += _v*_pi;
40168       _rankm += _pi;
40169       _pi *= SWIG_MAXCASTRANK;
40170       {
40171         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), (std::string**)(0));
40172         _v = SWIG_CheckState(res);
40173       }
40174       if (!_v) goto check_1;
40175       _ranki += _v*_pi;
40176       _rankm += _pi;
40177       _pi *= SWIG_MAXCASTRANK;
40178       if (!_index || (_ranki < _rank)) {
40179         _rank = _ranki; _index = 1;
40180         if (_rank == _rankm) goto dispatch;
40181       }
40182     }
40183   check_1:
40184 
40185     if (items == 5) {
40186       SWIG_TypeRank _ranki = 0;
40187       SWIG_TypeRank _rankm = 0;
40188       SWIG_TypeRank _pi = 1;
40189       int _v = 0;
40190       {
40191         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
40192         _v = SWIG_CheckState(res);
40193       }
40194       if (!_v) goto check_2;
40195       _ranki += _v*_pi;
40196       _rankm += _pi;
40197       _pi *= SWIG_MAXCASTRANK;
40198       {
40199         {
40200           {
40201             /* wrapped vector? */
40202             std::vector< std::string >* v;
40203             if (SWIG_ConvertPtr(ST(1),(void **) &v,
40204                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
40205               _v = 1;
40206             } else if (SvROK(ST(1))) {
40207               /* native sequence? */
40208               AV *av = (AV *)SvRV(ST(1));
40209               if (SvTYPE(av) == SVt_PVAV) {
40210                 I32 len = av_len(av) + 1;
40211                 if (len == 0) {
40212                   /* an empty sequence can be of any type */
40213                   _v = 1;
40214                 } else {
40215                   /* check the first element only */
40216                   SV **tv = av_fetch(av, 0, 0);
40217                   if (SvPOK(*tv))
40218                   _v = 1;
40219                   else
40220                   _v = 0;
40221                 }
40222               }
40223             } else {
40224               _v = 0;
40225             }
40226           }
40227         }
40228       }
40229       if (!_v) goto check_2;
40230       _ranki += _v*_pi;
40231       _rankm += _pi;
40232       _pi *= SWIG_MAXCASTRANK;
40233       {
40234         {
40235           {
40236             /* wrapped vector? */
40237             std::vector< std::string >* v;
40238             if (SWIG_ConvertPtr(ST(2),(void **) &v,
40239                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
40240               _v = 1;
40241             } else if (SvROK(ST(2))) {
40242               /* native sequence? */
40243               AV *av = (AV *)SvRV(ST(2));
40244               if (SvTYPE(av) == SVt_PVAV) {
40245                 I32 len = av_len(av) + 1;
40246                 if (len == 0) {
40247                   /* an empty sequence can be of any type */
40248                   _v = 1;
40249                 } else {
40250                   /* check the first element only */
40251                   SV **tv = av_fetch(av, 0, 0);
40252                   if (SvPOK(*tv))
40253                   _v = 1;
40254                   else
40255                   _v = 0;
40256                 }
40257               }
40258             } else {
40259               _v = 0;
40260             }
40261           }
40262         }
40263       }
40264       if (!_v) goto check_2;
40265       _ranki += _v*_pi;
40266       _rankm += _pi;
40267       _pi *= SWIG_MAXCASTRANK;
40268       {
40269         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), (std::string**)(0));
40270         _v = SWIG_CheckState(res);
40271       }
40272       if (!_v) goto check_2;
40273       _ranki += _v*_pi;
40274       _rankm += _pi;
40275       _pi *= SWIG_MAXCASTRANK;
40276       {
40277         {
40278           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
40279           _v = SWIG_CheckState(res);
40280         }
40281       }
40282       if (!_v) goto check_2;
40283       _ranki += _v*_pi;
40284       _rankm += _pi;
40285       _pi *= SWIG_MAXCASTRANK;
40286       if (!_index || (_ranki < _rank)) {
40287         _rank = _ranki; _index = 2;
40288         if (_rank == _rankm) goto dispatch;
40289       }
40290     }
40291   check_2:
40292 
40293     if (items == 6) {
40294       SWIG_TypeRank _ranki = 0;
40295       SWIG_TypeRank _rankm = 0;
40296       SWIG_TypeRank _pi = 1;
40297       int _v = 0;
40298       {
40299         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
40300         _v = SWIG_CheckState(res);
40301       }
40302       if (!_v) goto check_3;
40303       _ranki += _v*_pi;
40304       _rankm += _pi;
40305       _pi *= SWIG_MAXCASTRANK;
40306       {
40307         {
40308           {
40309             /* wrapped vector? */
40310             std::vector< std::string >* v;
40311             if (SWIG_ConvertPtr(ST(1),(void **) &v,
40312                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
40313               _v = 1;
40314             } else if (SvROK(ST(1))) {
40315               /* native sequence? */
40316               AV *av = (AV *)SvRV(ST(1));
40317               if (SvTYPE(av) == SVt_PVAV) {
40318                 I32 len = av_len(av) + 1;
40319                 if (len == 0) {
40320                   /* an empty sequence can be of any type */
40321                   _v = 1;
40322                 } else {
40323                   /* check the first element only */
40324                   SV **tv = av_fetch(av, 0, 0);
40325                   if (SvPOK(*tv))
40326                   _v = 1;
40327                   else
40328                   _v = 0;
40329                 }
40330               }
40331             } else {
40332               _v = 0;
40333             }
40334           }
40335         }
40336       }
40337       if (!_v) goto check_3;
40338       _ranki += _v*_pi;
40339       _rankm += _pi;
40340       _pi *= SWIG_MAXCASTRANK;
40341       {
40342         {
40343           {
40344             /* wrapped vector? */
40345             std::vector< std::string >* v;
40346             if (SWIG_ConvertPtr(ST(2),(void **) &v,
40347                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
40348               _v = 1;
40349             } else if (SvROK(ST(2))) {
40350               /* native sequence? */
40351               AV *av = (AV *)SvRV(ST(2));
40352               if (SvTYPE(av) == SVt_PVAV) {
40353                 I32 len = av_len(av) + 1;
40354                 if (len == 0) {
40355                   /* an empty sequence can be of any type */
40356                   _v = 1;
40357                 } else {
40358                   /* check the first element only */
40359                   SV **tv = av_fetch(av, 0, 0);
40360                   if (SvPOK(*tv))
40361                   _v = 1;
40362                   else
40363                   _v = 0;
40364                 }
40365               }
40366             } else {
40367               _v = 0;
40368             }
40369           }
40370         }
40371       }
40372       if (!_v) goto check_3;
40373       _ranki += _v*_pi;
40374       _rankm += _pi;
40375       _pi *= SWIG_MAXCASTRANK;
40376       {
40377         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), (std::string**)(0));
40378         _v = SWIG_CheckState(res);
40379       }
40380       if (!_v) goto check_3;
40381       _ranki += _v*_pi;
40382       _rankm += _pi;
40383       _pi *= SWIG_MAXCASTRANK;
40384       {
40385         {
40386           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
40387           _v = SWIG_CheckState(res);
40388         }
40389       }
40390       if (!_v) goto check_3;
40391       _ranki += _v*_pi;
40392       _rankm += _pi;
40393       _pi *= SWIG_MAXCASTRANK;
40394       {
40395         {
40396           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
40397           _v = SWIG_CheckState(res);
40398         }
40399       }
40400       if (!_v) goto check_3;
40401       _ranki += _v*_pi;
40402       _rankm += _pi;
40403       _pi *= SWIG_MAXCASTRANK;
40404       if (!_index || (_ranki < _rank)) {
40405         _rank = _ranki; _index = 3;
40406         if (_rank == _rankm) goto dispatch;
40407       }
40408     }
40409   check_3:
40410 
40411     if (items == 7) {
40412       SWIG_TypeRank _ranki = 0;
40413       SWIG_TypeRank _rankm = 0;
40414       SWIG_TypeRank _pi = 1;
40415       int _v = 0;
40416       {
40417         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
40418         _v = SWIG_CheckState(res);
40419       }
40420       if (!_v) goto check_4;
40421       _ranki += _v*_pi;
40422       _rankm += _pi;
40423       _pi *= SWIG_MAXCASTRANK;
40424       {
40425         {
40426           {
40427             /* wrapped vector? */
40428             std::vector< std::string >* v;
40429             if (SWIG_ConvertPtr(ST(1),(void **) &v,
40430                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
40431               _v = 1;
40432             } else if (SvROK(ST(1))) {
40433               /* native sequence? */
40434               AV *av = (AV *)SvRV(ST(1));
40435               if (SvTYPE(av) == SVt_PVAV) {
40436                 I32 len = av_len(av) + 1;
40437                 if (len == 0) {
40438                   /* an empty sequence can be of any type */
40439                   _v = 1;
40440                 } else {
40441                   /* check the first element only */
40442                   SV **tv = av_fetch(av, 0, 0);
40443                   if (SvPOK(*tv))
40444                   _v = 1;
40445                   else
40446                   _v = 0;
40447                 }
40448               }
40449             } else {
40450               _v = 0;
40451             }
40452           }
40453         }
40454       }
40455       if (!_v) goto check_4;
40456       _ranki += _v*_pi;
40457       _rankm += _pi;
40458       _pi *= SWIG_MAXCASTRANK;
40459       {
40460         {
40461           {
40462             /* wrapped vector? */
40463             std::vector< std::string >* v;
40464             if (SWIG_ConvertPtr(ST(2),(void **) &v,
40465                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
40466               _v = 1;
40467             } else if (SvROK(ST(2))) {
40468               /* native sequence? */
40469               AV *av = (AV *)SvRV(ST(2));
40470               if (SvTYPE(av) == SVt_PVAV) {
40471                 I32 len = av_len(av) + 1;
40472                 if (len == 0) {
40473                   /* an empty sequence can be of any type */
40474                   _v = 1;
40475                 } else {
40476                   /* check the first element only */
40477                   SV **tv = av_fetch(av, 0, 0);
40478                   if (SvPOK(*tv))
40479                   _v = 1;
40480                   else
40481                   _v = 0;
40482                 }
40483               }
40484             } else {
40485               _v = 0;
40486             }
40487           }
40488         }
40489       }
40490       if (!_v) goto check_4;
40491       _ranki += _v*_pi;
40492       _rankm += _pi;
40493       _pi *= SWIG_MAXCASTRANK;
40494       {
40495         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), (std::string**)(0));
40496         _v = SWIG_CheckState(res);
40497       }
40498       if (!_v) goto check_4;
40499       _ranki += _v*_pi;
40500       _rankm += _pi;
40501       _pi *= SWIG_MAXCASTRANK;
40502       {
40503         {
40504           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
40505           _v = SWIG_CheckState(res);
40506         }
40507       }
40508       if (!_v) goto check_4;
40509       _ranki += _v*_pi;
40510       _rankm += _pi;
40511       _pi *= SWIG_MAXCASTRANK;
40512       {
40513         {
40514           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
40515           _v = SWIG_CheckState(res);
40516         }
40517       }
40518       if (!_v) goto check_4;
40519       _ranki += _v*_pi;
40520       _rankm += _pi;
40521       _pi *= SWIG_MAXCASTRANK;
40522       {
40523         {
40524           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
40525           _v = SWIG_CheckState(res);
40526         }
40527       }
40528       if (!_v) goto check_4;
40529       _ranki += _v*_pi;
40530       _rankm += _pi;
40531       _pi *= SWIG_MAXCASTRANK;
40532       if (!_index || (_ranki < _rank)) {
40533         _rank = _ranki; _index = 4;
40534         if (_rank == _rankm) goto dispatch;
40535       }
40536     }
40537   check_4:
40538 
40539     if (items == 8) {
40540       SWIG_TypeRank _ranki = 0;
40541       SWIG_TypeRank _rankm = 0;
40542       SWIG_TypeRank _pi = 1;
40543       int _v = 0;
40544       {
40545         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
40546         _v = SWIG_CheckState(res);
40547       }
40548       if (!_v) goto check_5;
40549       _ranki += _v*_pi;
40550       _rankm += _pi;
40551       _pi *= SWIG_MAXCASTRANK;
40552       {
40553         {
40554           {
40555             /* wrapped vector? */
40556             std::vector< std::string >* v;
40557             if (SWIG_ConvertPtr(ST(1),(void **) &v,
40558                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
40559               _v = 1;
40560             } else if (SvROK(ST(1))) {
40561               /* native sequence? */
40562               AV *av = (AV *)SvRV(ST(1));
40563               if (SvTYPE(av) == SVt_PVAV) {
40564                 I32 len = av_len(av) + 1;
40565                 if (len == 0) {
40566                   /* an empty sequence can be of any type */
40567                   _v = 1;
40568                 } else {
40569                   /* check the first element only */
40570                   SV **tv = av_fetch(av, 0, 0);
40571                   if (SvPOK(*tv))
40572                   _v = 1;
40573                   else
40574                   _v = 0;
40575                 }
40576               }
40577             } else {
40578               _v = 0;
40579             }
40580           }
40581         }
40582       }
40583       if (!_v) goto check_5;
40584       _ranki += _v*_pi;
40585       _rankm += _pi;
40586       _pi *= SWIG_MAXCASTRANK;
40587       {
40588         {
40589           {
40590             /* wrapped vector? */
40591             std::vector< std::string >* v;
40592             if (SWIG_ConvertPtr(ST(2),(void **) &v,
40593                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
40594               _v = 1;
40595             } else if (SvROK(ST(2))) {
40596               /* native sequence? */
40597               AV *av = (AV *)SvRV(ST(2));
40598               if (SvTYPE(av) == SVt_PVAV) {
40599                 I32 len = av_len(av) + 1;
40600                 if (len == 0) {
40601                   /* an empty sequence can be of any type */
40602                   _v = 1;
40603                 } else {
40604                   /* check the first element only */
40605                   SV **tv = av_fetch(av, 0, 0);
40606                   if (SvPOK(*tv))
40607                   _v = 1;
40608                   else
40609                   _v = 0;
40610                 }
40611               }
40612             } else {
40613               _v = 0;
40614             }
40615           }
40616         }
40617       }
40618       if (!_v) goto check_5;
40619       _ranki += _v*_pi;
40620       _rankm += _pi;
40621       _pi *= SWIG_MAXCASTRANK;
40622       {
40623         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), (std::string**)(0));
40624         _v = SWIG_CheckState(res);
40625       }
40626       if (!_v) goto check_5;
40627       _ranki += _v*_pi;
40628       _rankm += _pi;
40629       _pi *= SWIG_MAXCASTRANK;
40630       {
40631         {
40632           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
40633           _v = SWIG_CheckState(res);
40634         }
40635       }
40636       if (!_v) goto check_5;
40637       _ranki += _v*_pi;
40638       _rankm += _pi;
40639       _pi *= SWIG_MAXCASTRANK;
40640       {
40641         {
40642           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
40643           _v = SWIG_CheckState(res);
40644         }
40645       }
40646       if (!_v) goto check_5;
40647       _ranki += _v*_pi;
40648       _rankm += _pi;
40649       _pi *= SWIG_MAXCASTRANK;
40650       {
40651         {
40652           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
40653           _v = SWIG_CheckState(res);
40654         }
40655       }
40656       if (!_v) goto check_5;
40657       _ranki += _v*_pi;
40658       _rankm += _pi;
40659       _pi *= SWIG_MAXCASTRANK;
40660       {
40661         {
40662           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(7), NULL);
40663           _v = SWIG_CheckState(res);
40664         }
40665       }
40666       if (!_v) goto check_5;
40667       _ranki += _v*_pi;
40668       _rankm += _pi;
40669       _pi *= SWIG_MAXCASTRANK;
40670       if (!_index || (_ranki < _rank)) {
40671         _rank = _ranki; _index = 5;
40672         if (_rank == _rankm) goto dispatch;
40673       }
40674     }
40675   check_5:
40676 
40677   dispatch:
40678     switch(_index) {
40679     case 1:
40680       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_PS_aln__SWIG_4); return;
40681     case 2:
40682       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_PS_aln__SWIG_3); return;
40683     case 3:
40684       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_PS_aln__SWIG_2); return;
40685     case 4:
40686       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_PS_aln__SWIG_1); return;
40687     case 5:
40688       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_PS_aln__SWIG_0); return;
40689     }
40690   }
40691 
40692   croak("No matching function for overloaded 'file_PS_aln'");
40693   XSRETURN(0);
40694 }
40695 
40696 
XS(_wrap_PS_color_dot_plot)40697 XS(_wrap_PS_color_dot_plot) {
40698   {
40699     char *arg1 = (char *) 0 ;
40700     cpair *arg2 = (cpair *) 0 ;
40701     char *arg3 = (char *) 0 ;
40702     int res1 ;
40703     char *buf1 = 0 ;
40704     int alloc1 = 0 ;
40705     void *argp2 = 0 ;
40706     int res2 = 0 ;
40707     int res3 ;
40708     char *buf3 = 0 ;
40709     int alloc3 = 0 ;
40710     int argvi = 0;
40711     int result;
40712     dXSARGS;
40713 
40714     if ((items < 3) || (items > 3)) {
40715       SWIG_croak("Usage: PS_color_dot_plot(string,pi,filename);");
40716     }
40717     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
40718     if (!SWIG_IsOK(res1)) {
40719       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PS_color_dot_plot" "', argument " "1"" of type '" "char *""'");
40720     }
40721     arg1 = reinterpret_cast< char * >(buf1);
40722     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_cpair_s, 0 |  0 );
40723     if (!SWIG_IsOK(res2)) {
40724       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PS_color_dot_plot" "', argument " "2"" of type '" "cpair *""'");
40725     }
40726     arg2 = reinterpret_cast< cpair * >(argp2);
40727     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
40728     if (!SWIG_IsOK(res3)) {
40729       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "PS_color_dot_plot" "', argument " "3"" of type '" "char *""'");
40730     }
40731     arg3 = reinterpret_cast< char * >(buf3);
40732     {
40733       try {
40734         result = (int)PS_color_dot_plot(arg1,arg2,arg3);
40735       } catch (const std::exception& e) {
40736         SWIG_exception(SWIG_RuntimeError, e.what());
40737       }
40738     }
40739     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
40740     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
40741 
40742     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
40743     XSRETURN(argvi);
40744   fail:
40745     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
40746 
40747     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
40748     SWIG_croak_null();
40749   }
40750 }
40751 
40752 
XS(_wrap_PS_color_dot_plot_turn)40753 XS(_wrap_PS_color_dot_plot_turn) {
40754   {
40755     char *arg1 = (char *) 0 ;
40756     cpair *arg2 = (cpair *) 0 ;
40757     char *arg3 = (char *) 0 ;
40758     int arg4 ;
40759     int res1 ;
40760     char *buf1 = 0 ;
40761     int alloc1 = 0 ;
40762     void *argp2 = 0 ;
40763     int res2 = 0 ;
40764     int res3 ;
40765     char *buf3 = 0 ;
40766     int alloc3 = 0 ;
40767     int val4 ;
40768     int ecode4 = 0 ;
40769     int argvi = 0;
40770     int result;
40771     dXSARGS;
40772 
40773     if ((items < 4) || (items > 4)) {
40774       SWIG_croak("Usage: PS_color_dot_plot_turn(seq,pi,filename,winSize);");
40775     }
40776     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
40777     if (!SWIG_IsOK(res1)) {
40778       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PS_color_dot_plot_turn" "', argument " "1"" of type '" "char *""'");
40779     }
40780     arg1 = reinterpret_cast< char * >(buf1);
40781     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_cpair_s, 0 |  0 );
40782     if (!SWIG_IsOK(res2)) {
40783       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PS_color_dot_plot_turn" "', argument " "2"" of type '" "cpair *""'");
40784     }
40785     arg2 = reinterpret_cast< cpair * >(argp2);
40786     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
40787     if (!SWIG_IsOK(res3)) {
40788       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "PS_color_dot_plot_turn" "', argument " "3"" of type '" "char *""'");
40789     }
40790     arg3 = reinterpret_cast< char * >(buf3);
40791     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
40792     if (!SWIG_IsOK(ecode4)) {
40793       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "PS_color_dot_plot_turn" "', argument " "4"" of type '" "int""'");
40794     }
40795     arg4 = static_cast< int >(val4);
40796     {
40797       try {
40798         result = (int)PS_color_dot_plot_turn(arg1,arg2,arg3,arg4);
40799       } catch (const std::exception& e) {
40800         SWIG_exception(SWIG_RuntimeError, e.what());
40801       }
40802     }
40803     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
40804     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
40805 
40806     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
40807 
40808     XSRETURN(argvi);
40809   fail:
40810     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
40811 
40812     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
40813 
40814     SWIG_croak_null();
40815   }
40816 }
40817 
40818 
XS(_wrap_PS_dot_plot_turn)40819 XS(_wrap_PS_dot_plot_turn) {
40820   {
40821     char *arg1 = (char *) 0 ;
40822     plist *arg2 = (plist *) 0 ;
40823     char *arg3 = (char *) 0 ;
40824     int arg4 ;
40825     int res1 ;
40826     char *buf1 = 0 ;
40827     int alloc1 = 0 ;
40828     void *argp2 = 0 ;
40829     int res2 = 0 ;
40830     int res3 ;
40831     char *buf3 = 0 ;
40832     int alloc3 = 0 ;
40833     int val4 ;
40834     int ecode4 = 0 ;
40835     int argvi = 0;
40836     int result;
40837     dXSARGS;
40838 
40839     if ((items < 4) || (items > 4)) {
40840       SWIG_croak("Usage: PS_dot_plot_turn(seq,pl,filename,winSize);");
40841     }
40842     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
40843     if (!SWIG_IsOK(res1)) {
40844       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PS_dot_plot_turn" "', argument " "1"" of type '" "char *""'");
40845     }
40846     arg1 = reinterpret_cast< char * >(buf1);
40847     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_elem_prob_s, 0 |  0 );
40848     if (!SWIG_IsOK(res2)) {
40849       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PS_dot_plot_turn" "', argument " "2"" of type '" "plist *""'");
40850     }
40851     arg2 = reinterpret_cast< plist * >(argp2);
40852     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
40853     if (!SWIG_IsOK(res3)) {
40854       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "PS_dot_plot_turn" "', argument " "3"" of type '" "char *""'");
40855     }
40856     arg3 = reinterpret_cast< char * >(buf3);
40857     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
40858     if (!SWIG_IsOK(ecode4)) {
40859       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "PS_dot_plot_turn" "', argument " "4"" of type '" "int""'");
40860     }
40861     arg4 = static_cast< int >(val4);
40862     {
40863       try {
40864         result = (int)PS_dot_plot_turn(arg1,arg2,arg3,arg4);
40865       } catch (const std::exception& e) {
40866         SWIG_exception(SWIG_RuntimeError, e.what());
40867       }
40868     }
40869     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
40870     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
40871 
40872     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
40873 
40874     XSRETURN(argvi);
40875   fail:
40876     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
40877 
40878     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
40879 
40880     SWIG_croak_null();
40881   }
40882 }
40883 
40884 
XS(_wrap_PS_dot_plot_list)40885 XS(_wrap_PS_dot_plot_list) {
40886   {
40887     char *arg1 = (char *) 0 ;
40888     char *arg2 = (char *) 0 ;
40889     plist *arg3 = (plist *) 0 ;
40890     plist *arg4 = (plist *) 0 ;
40891     char *arg5 = (char *) 0 ;
40892     int res1 ;
40893     char *buf1 = 0 ;
40894     int alloc1 = 0 ;
40895     int res2 ;
40896     char *buf2 = 0 ;
40897     int alloc2 = 0 ;
40898     void *argp3 = 0 ;
40899     int res3 = 0 ;
40900     void *argp4 = 0 ;
40901     int res4 = 0 ;
40902     int res5 ;
40903     char *buf5 = 0 ;
40904     int alloc5 = 0 ;
40905     int argvi = 0;
40906     int result;
40907     dXSARGS;
40908 
40909     if ((items < 5) || (items > 5)) {
40910       SWIG_croak("Usage: PS_dot_plot_list(seq,filename,pl,mf,comment);");
40911     }
40912     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
40913     if (!SWIG_IsOK(res1)) {
40914       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PS_dot_plot_list" "', argument " "1"" of type '" "char *""'");
40915     }
40916     arg1 = reinterpret_cast< char * >(buf1);
40917     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
40918     if (!SWIG_IsOK(res2)) {
40919       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PS_dot_plot_list" "', argument " "2"" of type '" "char *""'");
40920     }
40921     arg2 = reinterpret_cast< char * >(buf2);
40922     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_vrna_elem_prob_s, 0 |  0 );
40923     if (!SWIG_IsOK(res3)) {
40924       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "PS_dot_plot_list" "', argument " "3"" of type '" "plist *""'");
40925     }
40926     arg3 = reinterpret_cast< plist * >(argp3);
40927     res4 = SWIG_ConvertPtr(ST(3), &argp4,SWIGTYPE_p_vrna_elem_prob_s, 0 |  0 );
40928     if (!SWIG_IsOK(res4)) {
40929       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "PS_dot_plot_list" "', argument " "4"" of type '" "plist *""'");
40930     }
40931     arg4 = reinterpret_cast< plist * >(argp4);
40932     res5 = SWIG_AsCharPtrAndSize(ST(4), &buf5, NULL, &alloc5);
40933     if (!SWIG_IsOK(res5)) {
40934       SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "PS_dot_plot_list" "', argument " "5"" of type '" "char *""'");
40935     }
40936     arg5 = reinterpret_cast< char * >(buf5);
40937     {
40938       try {
40939         result = (int)PS_dot_plot_list(arg1,arg2,arg3,arg4,arg5);
40940       } catch (const std::exception& e) {
40941         SWIG_exception(SWIG_RuntimeError, e.what());
40942       }
40943     }
40944     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
40945     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
40946     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
40947 
40948 
40949     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
40950     XSRETURN(argvi);
40951   fail:
40952     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
40953     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
40954 
40955 
40956     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
40957     SWIG_croak_null();
40958   }
40959 }
40960 
40961 
XS(_wrap_PS_dot_plot)40962 XS(_wrap_PS_dot_plot) {
40963   {
40964     char *arg1 = (char *) 0 ;
40965     char *arg2 = (char *) 0 ;
40966     int res1 ;
40967     char *buf1 = 0 ;
40968     int alloc1 = 0 ;
40969     int res2 ;
40970     char *buf2 = 0 ;
40971     int alloc2 = 0 ;
40972     int argvi = 0;
40973     int result;
40974     dXSARGS;
40975 
40976     if ((items < 2) || (items > 2)) {
40977       SWIG_croak("Usage: PS_dot_plot(string,file);");
40978     }
40979     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
40980     if (!SWIG_IsOK(res1)) {
40981       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "PS_dot_plot" "', argument " "1"" of type '" "char *""'");
40982     }
40983     arg1 = reinterpret_cast< char * >(buf1);
40984     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
40985     if (!SWIG_IsOK(res2)) {
40986       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "PS_dot_plot" "', argument " "2"" of type '" "char *""'");
40987     }
40988     arg2 = reinterpret_cast< char * >(buf2);
40989     {
40990       try {
40991         result = (int)PS_dot_plot(arg1,arg2);
40992       } catch (const std::exception& e) {
40993         SWIG_exception(SWIG_RuntimeError, e.what());
40994       }
40995     }
40996     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
40997     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
40998     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
40999     XSRETURN(argvi);
41000   fail:
41001     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
41002     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
41003     SWIG_croak_null();
41004   }
41005 }
41006 
41007 
XS(_wrap_eval_structure_simple__SWIG_0)41008 XS(_wrap_eval_structure_simple__SWIG_0) {
41009   {
41010     std::string arg1 ;
41011     std::string arg2 ;
41012     int arg3 ;
41013     FILE *arg4 = (FILE *) 0 ;
41014     int val3 ;
41015     int ecode3 = 0 ;
41016     int argvi = 0;
41017     float result;
41018     dXSARGS;
41019 
41020     if ((items < 4) || (items > 4)) {
41021       SWIG_croak("Usage: eval_structure_simple(sequence,structure,verbosity_level,file);");
41022     }
41023     {
41024       std::string *ptr = (std::string *)0;
41025       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
41026       if (!SWIG_IsOK(res) || !ptr) {
41027         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_structure_simple" "', argument " "1"" of type '" "std::string""'");
41028       }
41029       arg1 = *ptr;
41030       if (SWIG_IsNewObj(res)) delete ptr;
41031     }
41032     {
41033       std::string *ptr = (std::string *)0;
41034       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41035       if (!SWIG_IsOK(res) || !ptr) {
41036         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_structure_simple" "', argument " "2"" of type '" "std::string""'");
41037       }
41038       arg2 = *ptr;
41039       if (SWIG_IsNewObj(res)) delete ptr;
41040     }
41041     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
41042     if (!SWIG_IsOK(ecode3)) {
41043       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_structure_simple" "', argument " "3"" of type '" "int""'");
41044     }
41045     arg3 = static_cast< int >(val3);
41046     {
41047       if (SvOK(ST(3))) /* check for undef */
41048       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(3))));
41049       else  arg4 = NULL;
41050     }
41051     {
41052       try {
41053         result = (float)my_eval_structure_simple(arg1,arg2,arg3,arg4);
41054       } catch (const std::exception& e) {
41055         SWIG_exception(SWIG_RuntimeError, e.what());
41056       }
41057     }
41058     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41059 
41060 
41061 
41062 
41063     XSRETURN(argvi);
41064   fail:
41065 
41066 
41067 
41068 
41069     SWIG_croak_null();
41070   }
41071 }
41072 
41073 
XS(_wrap_eval_structure_simple__SWIG_1)41074 XS(_wrap_eval_structure_simple__SWIG_1) {
41075   {
41076     std::string arg1 ;
41077     std::string arg2 ;
41078     int arg3 ;
41079     int val3 ;
41080     int ecode3 = 0 ;
41081     int argvi = 0;
41082     float result;
41083     dXSARGS;
41084 
41085     if ((items < 3) || (items > 3)) {
41086       SWIG_croak("Usage: eval_structure_simple(sequence,structure,verbosity_level);");
41087     }
41088     {
41089       std::string *ptr = (std::string *)0;
41090       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
41091       if (!SWIG_IsOK(res) || !ptr) {
41092         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_structure_simple" "', argument " "1"" of type '" "std::string""'");
41093       }
41094       arg1 = *ptr;
41095       if (SWIG_IsNewObj(res)) delete ptr;
41096     }
41097     {
41098       std::string *ptr = (std::string *)0;
41099       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41100       if (!SWIG_IsOK(res) || !ptr) {
41101         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_structure_simple" "', argument " "2"" of type '" "std::string""'");
41102       }
41103       arg2 = *ptr;
41104       if (SWIG_IsNewObj(res)) delete ptr;
41105     }
41106     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
41107     if (!SWIG_IsOK(ecode3)) {
41108       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_structure_simple" "', argument " "3"" of type '" "int""'");
41109     }
41110     arg3 = static_cast< int >(val3);
41111     {
41112       try {
41113         result = (float)my_eval_structure_simple(arg1,arg2,arg3);
41114       } catch (const std::exception& e) {
41115         SWIG_exception(SWIG_RuntimeError, e.what());
41116       }
41117     }
41118     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41119 
41120 
41121 
41122     XSRETURN(argvi);
41123   fail:
41124 
41125 
41126 
41127     SWIG_croak_null();
41128   }
41129 }
41130 
41131 
XS(_wrap_eval_structure_simple__SWIG_2)41132 XS(_wrap_eval_structure_simple__SWIG_2) {
41133   {
41134     std::string arg1 ;
41135     std::string arg2 ;
41136     int argvi = 0;
41137     float result;
41138     dXSARGS;
41139 
41140     if ((items < 2) || (items > 2)) {
41141       SWIG_croak("Usage: eval_structure_simple(sequence,structure);");
41142     }
41143     {
41144       std::string *ptr = (std::string *)0;
41145       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
41146       if (!SWIG_IsOK(res) || !ptr) {
41147         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_structure_simple" "', argument " "1"" of type '" "std::string""'");
41148       }
41149       arg1 = *ptr;
41150       if (SWIG_IsNewObj(res)) delete ptr;
41151     }
41152     {
41153       std::string *ptr = (std::string *)0;
41154       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41155       if (!SWIG_IsOK(res) || !ptr) {
41156         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_structure_simple" "', argument " "2"" of type '" "std::string""'");
41157       }
41158       arg2 = *ptr;
41159       if (SWIG_IsNewObj(res)) delete ptr;
41160     }
41161     {
41162       try {
41163         result = (float)my_eval_structure_simple(arg1,arg2);
41164       } catch (const std::exception& e) {
41165         SWIG_exception(SWIG_RuntimeError, e.what());
41166       }
41167     }
41168     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41169 
41170 
41171     XSRETURN(argvi);
41172   fail:
41173 
41174 
41175     SWIG_croak_null();
41176   }
41177 }
41178 
41179 
XS(_wrap_eval_circ_structure__SWIG_0)41180 XS(_wrap_eval_circ_structure__SWIG_0) {
41181   {
41182     std::string arg1 ;
41183     std::string arg2 ;
41184     int arg3 ;
41185     FILE *arg4 = (FILE *) 0 ;
41186     int val3 ;
41187     int ecode3 = 0 ;
41188     int argvi = 0;
41189     float result;
41190     dXSARGS;
41191 
41192     if ((items < 4) || (items > 4)) {
41193       SWIG_croak("Usage: eval_circ_structure(sequence,structure,verbosity_level,file);");
41194     }
41195     {
41196       std::string *ptr = (std::string *)0;
41197       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
41198       if (!SWIG_IsOK(res) || !ptr) {
41199         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_structure" "', argument " "1"" of type '" "std::string""'");
41200       }
41201       arg1 = *ptr;
41202       if (SWIG_IsNewObj(res)) delete ptr;
41203     }
41204     {
41205       std::string *ptr = (std::string *)0;
41206       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41207       if (!SWIG_IsOK(res) || !ptr) {
41208         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_structure" "', argument " "2"" of type '" "std::string""'");
41209       }
41210       arg2 = *ptr;
41211       if (SWIG_IsNewObj(res)) delete ptr;
41212     }
41213     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
41214     if (!SWIG_IsOK(ecode3)) {
41215       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_circ_structure" "', argument " "3"" of type '" "int""'");
41216     }
41217     arg3 = static_cast< int >(val3);
41218     {
41219       if (SvOK(ST(3))) /* check for undef */
41220       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(3))));
41221       else  arg4 = NULL;
41222     }
41223     {
41224       try {
41225         result = (float)my_eval_circ_structure(arg1,arg2,arg3,arg4);
41226       } catch (const std::exception& e) {
41227         SWIG_exception(SWIG_RuntimeError, e.what());
41228       }
41229     }
41230     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41231 
41232 
41233 
41234 
41235     XSRETURN(argvi);
41236   fail:
41237 
41238 
41239 
41240 
41241     SWIG_croak_null();
41242   }
41243 }
41244 
41245 
XS(_wrap_eval_circ_structure__SWIG_1)41246 XS(_wrap_eval_circ_structure__SWIG_1) {
41247   {
41248     std::string arg1 ;
41249     std::string arg2 ;
41250     int arg3 ;
41251     int val3 ;
41252     int ecode3 = 0 ;
41253     int argvi = 0;
41254     float result;
41255     dXSARGS;
41256 
41257     if ((items < 3) || (items > 3)) {
41258       SWIG_croak("Usage: eval_circ_structure(sequence,structure,verbosity_level);");
41259     }
41260     {
41261       std::string *ptr = (std::string *)0;
41262       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
41263       if (!SWIG_IsOK(res) || !ptr) {
41264         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_structure" "', argument " "1"" of type '" "std::string""'");
41265       }
41266       arg1 = *ptr;
41267       if (SWIG_IsNewObj(res)) delete ptr;
41268     }
41269     {
41270       std::string *ptr = (std::string *)0;
41271       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41272       if (!SWIG_IsOK(res) || !ptr) {
41273         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_structure" "', argument " "2"" of type '" "std::string""'");
41274       }
41275       arg2 = *ptr;
41276       if (SWIG_IsNewObj(res)) delete ptr;
41277     }
41278     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
41279     if (!SWIG_IsOK(ecode3)) {
41280       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_circ_structure" "', argument " "3"" of type '" "int""'");
41281     }
41282     arg3 = static_cast< int >(val3);
41283     {
41284       try {
41285         result = (float)my_eval_circ_structure(arg1,arg2,arg3);
41286       } catch (const std::exception& e) {
41287         SWIG_exception(SWIG_RuntimeError, e.what());
41288       }
41289     }
41290     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41291 
41292 
41293 
41294     XSRETURN(argvi);
41295   fail:
41296 
41297 
41298 
41299     SWIG_croak_null();
41300   }
41301 }
41302 
41303 
XS(_wrap_eval_circ_structure__SWIG_2)41304 XS(_wrap_eval_circ_structure__SWIG_2) {
41305   {
41306     std::string arg1 ;
41307     std::string arg2 ;
41308     int argvi = 0;
41309     float result;
41310     dXSARGS;
41311 
41312     if ((items < 2) || (items > 2)) {
41313       SWIG_croak("Usage: eval_circ_structure(sequence,structure);");
41314     }
41315     {
41316       std::string *ptr = (std::string *)0;
41317       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
41318       if (!SWIG_IsOK(res) || !ptr) {
41319         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_structure" "', argument " "1"" of type '" "std::string""'");
41320       }
41321       arg1 = *ptr;
41322       if (SWIG_IsNewObj(res)) delete ptr;
41323     }
41324     {
41325       std::string *ptr = (std::string *)0;
41326       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41327       if (!SWIG_IsOK(res) || !ptr) {
41328         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_structure" "', argument " "2"" of type '" "std::string""'");
41329       }
41330       arg2 = *ptr;
41331       if (SWIG_IsNewObj(res)) delete ptr;
41332     }
41333     {
41334       try {
41335         result = (float)my_eval_circ_structure(arg1,arg2);
41336       } catch (const std::exception& e) {
41337         SWIG_exception(SWIG_RuntimeError, e.what());
41338       }
41339     }
41340     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41341 
41342 
41343     XSRETURN(argvi);
41344   fail:
41345 
41346 
41347     SWIG_croak_null();
41348   }
41349 }
41350 
41351 
XS(_wrap_eval_gquad_structure__SWIG_0)41352 XS(_wrap_eval_gquad_structure__SWIG_0) {
41353   {
41354     std::string arg1 ;
41355     std::string arg2 ;
41356     int arg3 ;
41357     FILE *arg4 = (FILE *) 0 ;
41358     int val3 ;
41359     int ecode3 = 0 ;
41360     int argvi = 0;
41361     float result;
41362     dXSARGS;
41363 
41364     if ((items < 4) || (items > 4)) {
41365       SWIG_croak("Usage: eval_gquad_structure(sequence,structure,verbosity_level,file);");
41366     }
41367     {
41368       std::string *ptr = (std::string *)0;
41369       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
41370       if (!SWIG_IsOK(res) || !ptr) {
41371         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_gquad_structure" "', argument " "1"" of type '" "std::string""'");
41372       }
41373       arg1 = *ptr;
41374       if (SWIG_IsNewObj(res)) delete ptr;
41375     }
41376     {
41377       std::string *ptr = (std::string *)0;
41378       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41379       if (!SWIG_IsOK(res) || !ptr) {
41380         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_gquad_structure" "', argument " "2"" of type '" "std::string""'");
41381       }
41382       arg2 = *ptr;
41383       if (SWIG_IsNewObj(res)) delete ptr;
41384     }
41385     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
41386     if (!SWIG_IsOK(ecode3)) {
41387       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_gquad_structure" "', argument " "3"" of type '" "int""'");
41388     }
41389     arg3 = static_cast< int >(val3);
41390     {
41391       if (SvOK(ST(3))) /* check for undef */
41392       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(3))));
41393       else  arg4 = NULL;
41394     }
41395     {
41396       try {
41397         result = (float)my_eval_gquad_structure(arg1,arg2,arg3,arg4);
41398       } catch (const std::exception& e) {
41399         SWIG_exception(SWIG_RuntimeError, e.what());
41400       }
41401     }
41402     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41403 
41404 
41405 
41406 
41407     XSRETURN(argvi);
41408   fail:
41409 
41410 
41411 
41412 
41413     SWIG_croak_null();
41414   }
41415 }
41416 
41417 
XS(_wrap_eval_gquad_structure__SWIG_1)41418 XS(_wrap_eval_gquad_structure__SWIG_1) {
41419   {
41420     std::string arg1 ;
41421     std::string arg2 ;
41422     int arg3 ;
41423     int val3 ;
41424     int ecode3 = 0 ;
41425     int argvi = 0;
41426     float result;
41427     dXSARGS;
41428 
41429     if ((items < 3) || (items > 3)) {
41430       SWIG_croak("Usage: eval_gquad_structure(sequence,structure,verbosity_level);");
41431     }
41432     {
41433       std::string *ptr = (std::string *)0;
41434       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
41435       if (!SWIG_IsOK(res) || !ptr) {
41436         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_gquad_structure" "', argument " "1"" of type '" "std::string""'");
41437       }
41438       arg1 = *ptr;
41439       if (SWIG_IsNewObj(res)) delete ptr;
41440     }
41441     {
41442       std::string *ptr = (std::string *)0;
41443       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41444       if (!SWIG_IsOK(res) || !ptr) {
41445         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_gquad_structure" "', argument " "2"" of type '" "std::string""'");
41446       }
41447       arg2 = *ptr;
41448       if (SWIG_IsNewObj(res)) delete ptr;
41449     }
41450     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
41451     if (!SWIG_IsOK(ecode3)) {
41452       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_gquad_structure" "', argument " "3"" of type '" "int""'");
41453     }
41454     arg3 = static_cast< int >(val3);
41455     {
41456       try {
41457         result = (float)my_eval_gquad_structure(arg1,arg2,arg3);
41458       } catch (const std::exception& e) {
41459         SWIG_exception(SWIG_RuntimeError, e.what());
41460       }
41461     }
41462     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41463 
41464 
41465 
41466     XSRETURN(argvi);
41467   fail:
41468 
41469 
41470 
41471     SWIG_croak_null();
41472   }
41473 }
41474 
41475 
XS(_wrap_eval_gquad_structure__SWIG_2)41476 XS(_wrap_eval_gquad_structure__SWIG_2) {
41477   {
41478     std::string arg1 ;
41479     std::string arg2 ;
41480     int argvi = 0;
41481     float result;
41482     dXSARGS;
41483 
41484     if ((items < 2) || (items > 2)) {
41485       SWIG_croak("Usage: eval_gquad_structure(sequence,structure);");
41486     }
41487     {
41488       std::string *ptr = (std::string *)0;
41489       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
41490       if (!SWIG_IsOK(res) || !ptr) {
41491         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_gquad_structure" "', argument " "1"" of type '" "std::string""'");
41492       }
41493       arg1 = *ptr;
41494       if (SWIG_IsNewObj(res)) delete ptr;
41495     }
41496     {
41497       std::string *ptr = (std::string *)0;
41498       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41499       if (!SWIG_IsOK(res) || !ptr) {
41500         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_gquad_structure" "', argument " "2"" of type '" "std::string""'");
41501       }
41502       arg2 = *ptr;
41503       if (SWIG_IsNewObj(res)) delete ptr;
41504     }
41505     {
41506       try {
41507         result = (float)my_eval_gquad_structure(arg1,arg2);
41508       } catch (const std::exception& e) {
41509         SWIG_exception(SWIG_RuntimeError, e.what());
41510       }
41511     }
41512     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41513 
41514 
41515     XSRETURN(argvi);
41516   fail:
41517 
41518 
41519     SWIG_croak_null();
41520   }
41521 }
41522 
41523 
XS(_wrap_eval_circ_gquad_structure__SWIG_0)41524 XS(_wrap_eval_circ_gquad_structure__SWIG_0) {
41525   {
41526     std::string arg1 ;
41527     std::string arg2 ;
41528     int arg3 ;
41529     FILE *arg4 = (FILE *) 0 ;
41530     int val3 ;
41531     int ecode3 = 0 ;
41532     int argvi = 0;
41533     float result;
41534     dXSARGS;
41535 
41536     if ((items < 4) || (items > 4)) {
41537       SWIG_croak("Usage: eval_circ_gquad_structure(sequence,structure,verbosity_level,file);");
41538     }
41539     {
41540       std::string *ptr = (std::string *)0;
41541       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
41542       if (!SWIG_IsOK(res) || !ptr) {
41543         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_gquad_structure" "', argument " "1"" of type '" "std::string""'");
41544       }
41545       arg1 = *ptr;
41546       if (SWIG_IsNewObj(res)) delete ptr;
41547     }
41548     {
41549       std::string *ptr = (std::string *)0;
41550       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41551       if (!SWIG_IsOK(res) || !ptr) {
41552         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_gquad_structure" "', argument " "2"" of type '" "std::string""'");
41553       }
41554       arg2 = *ptr;
41555       if (SWIG_IsNewObj(res)) delete ptr;
41556     }
41557     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
41558     if (!SWIG_IsOK(ecode3)) {
41559       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_circ_gquad_structure" "', argument " "3"" of type '" "int""'");
41560     }
41561     arg3 = static_cast< int >(val3);
41562     {
41563       if (SvOK(ST(3))) /* check for undef */
41564       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(3))));
41565       else  arg4 = NULL;
41566     }
41567     {
41568       try {
41569         result = (float)my_eval_circ_gquad_structure(arg1,arg2,arg3,arg4);
41570       } catch (const std::exception& e) {
41571         SWIG_exception(SWIG_RuntimeError, e.what());
41572       }
41573     }
41574     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41575 
41576 
41577 
41578 
41579     XSRETURN(argvi);
41580   fail:
41581 
41582 
41583 
41584 
41585     SWIG_croak_null();
41586   }
41587 }
41588 
41589 
XS(_wrap_eval_circ_gquad_structure__SWIG_1)41590 XS(_wrap_eval_circ_gquad_structure__SWIG_1) {
41591   {
41592     std::string arg1 ;
41593     std::string arg2 ;
41594     int arg3 ;
41595     int val3 ;
41596     int ecode3 = 0 ;
41597     int argvi = 0;
41598     float result;
41599     dXSARGS;
41600 
41601     if ((items < 3) || (items > 3)) {
41602       SWIG_croak("Usage: eval_circ_gquad_structure(sequence,structure,verbosity_level);");
41603     }
41604     {
41605       std::string *ptr = (std::string *)0;
41606       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
41607       if (!SWIG_IsOK(res) || !ptr) {
41608         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_gquad_structure" "', argument " "1"" of type '" "std::string""'");
41609       }
41610       arg1 = *ptr;
41611       if (SWIG_IsNewObj(res)) delete ptr;
41612     }
41613     {
41614       std::string *ptr = (std::string *)0;
41615       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41616       if (!SWIG_IsOK(res) || !ptr) {
41617         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_gquad_structure" "', argument " "2"" of type '" "std::string""'");
41618       }
41619       arg2 = *ptr;
41620       if (SWIG_IsNewObj(res)) delete ptr;
41621     }
41622     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
41623     if (!SWIG_IsOK(ecode3)) {
41624       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_circ_gquad_structure" "', argument " "3"" of type '" "int""'");
41625     }
41626     arg3 = static_cast< int >(val3);
41627     {
41628       try {
41629         result = (float)my_eval_circ_gquad_structure(arg1,arg2,arg3);
41630       } catch (const std::exception& e) {
41631         SWIG_exception(SWIG_RuntimeError, e.what());
41632       }
41633     }
41634     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41635 
41636 
41637 
41638     XSRETURN(argvi);
41639   fail:
41640 
41641 
41642 
41643     SWIG_croak_null();
41644   }
41645 }
41646 
41647 
XS(_wrap_eval_circ_gquad_structure__SWIG_2)41648 XS(_wrap_eval_circ_gquad_structure__SWIG_2) {
41649   {
41650     std::string arg1 ;
41651     std::string arg2 ;
41652     int argvi = 0;
41653     float result;
41654     dXSARGS;
41655 
41656     if ((items < 2) || (items > 2)) {
41657       SWIG_croak("Usage: eval_circ_gquad_structure(sequence,structure);");
41658     }
41659     {
41660       std::string *ptr = (std::string *)0;
41661       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
41662       if (!SWIG_IsOK(res) || !ptr) {
41663         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_gquad_structure" "', argument " "1"" of type '" "std::string""'");
41664       }
41665       arg1 = *ptr;
41666       if (SWIG_IsNewObj(res)) delete ptr;
41667     }
41668     {
41669       std::string *ptr = (std::string *)0;
41670       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41671       if (!SWIG_IsOK(res) || !ptr) {
41672         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_gquad_structure" "', argument " "2"" of type '" "std::string""'");
41673       }
41674       arg2 = *ptr;
41675       if (SWIG_IsNewObj(res)) delete ptr;
41676     }
41677     {
41678       try {
41679         result = (float)my_eval_circ_gquad_structure(arg1,arg2);
41680       } catch (const std::exception& e) {
41681         SWIG_exception(SWIG_RuntimeError, e.what());
41682       }
41683     }
41684     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41685 
41686 
41687     XSRETURN(argvi);
41688   fail:
41689 
41690 
41691     SWIG_croak_null();
41692   }
41693 }
41694 
41695 
XS(_wrap_eval_structure_simple__SWIG_3)41696 XS(_wrap_eval_structure_simple__SWIG_3) {
41697   {
41698     std::vector< std::string > arg1 ;
41699     std::string arg2 ;
41700     int arg3 ;
41701     FILE *arg4 = (FILE *) 0 ;
41702     std::vector< std::string > *v1 ;
41703     int val3 ;
41704     int ecode3 = 0 ;
41705     int argvi = 0;
41706     float result;
41707     dXSARGS;
41708 
41709     if ((items < 4) || (items > 4)) {
41710       SWIG_croak("Usage: eval_structure_simple(alignment,structure,verbosity_level,file);");
41711     }
41712     {
41713       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
41714           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
41715         arg1 = *v1;
41716       } else if (SvROK(ST(0))) {
41717         AV *av = (AV *)SvRV(ST(0));
41718         if (SvTYPE(av) != SVt_PVAV)
41719         SWIG_croak("Type error in argument 1 of eval_structure_simple. "
41720           "Expected an array of ""std::string");
41721         SV **tv;
41722         I32 len = av_len(av) + 1;
41723         for (int i=0; i<len; i++) {
41724           tv = av_fetch(av, i, 0);
41725           if (SvPOK(*tv)) {
41726             (&arg1)->push_back((std::string)SwigSvToString(*tv));
41727           } else {
41728             SWIG_croak("Type error in argument 1 of "
41729               "eval_structure_simple. "
41730               "Expected an array of ""std::string");
41731           }
41732         }
41733       } else {
41734         SWIG_croak("Type error in argument 1 of eval_structure_simple. "
41735           "Expected an array of ""std::string");
41736       }
41737     }
41738     {
41739       std::string *ptr = (std::string *)0;
41740       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41741       if (!SWIG_IsOK(res) || !ptr) {
41742         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_structure_simple" "', argument " "2"" of type '" "std::string""'");
41743       }
41744       arg2 = *ptr;
41745       if (SWIG_IsNewObj(res)) delete ptr;
41746     }
41747     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
41748     if (!SWIG_IsOK(ecode3)) {
41749       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_structure_simple" "', argument " "3"" of type '" "int""'");
41750     }
41751     arg3 = static_cast< int >(val3);
41752     {
41753       if (SvOK(ST(3))) /* check for undef */
41754       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(3))));
41755       else  arg4 = NULL;
41756     }
41757     {
41758       try {
41759         result = (float)my_eval_structure_simple(arg1,arg2,arg3,arg4);
41760       } catch (const std::exception& e) {
41761         SWIG_exception(SWIG_RuntimeError, e.what());
41762       }
41763     }
41764     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41765 
41766 
41767 
41768     XSRETURN(argvi);
41769   fail:
41770 
41771 
41772 
41773     SWIG_croak_null();
41774   }
41775 }
41776 
41777 
XS(_wrap_eval_structure_simple__SWIG_4)41778 XS(_wrap_eval_structure_simple__SWIG_4) {
41779   {
41780     std::vector< std::string > arg1 ;
41781     std::string arg2 ;
41782     int arg3 ;
41783     std::vector< std::string > *v1 ;
41784     int val3 ;
41785     int ecode3 = 0 ;
41786     int argvi = 0;
41787     float result;
41788     dXSARGS;
41789 
41790     if ((items < 3) || (items > 3)) {
41791       SWIG_croak("Usage: eval_structure_simple(alignment,structure,verbosity_level);");
41792     }
41793     {
41794       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
41795           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
41796         arg1 = *v1;
41797       } else if (SvROK(ST(0))) {
41798         AV *av = (AV *)SvRV(ST(0));
41799         if (SvTYPE(av) != SVt_PVAV)
41800         SWIG_croak("Type error in argument 1 of eval_structure_simple. "
41801           "Expected an array of ""std::string");
41802         SV **tv;
41803         I32 len = av_len(av) + 1;
41804         for (int i=0; i<len; i++) {
41805           tv = av_fetch(av, i, 0);
41806           if (SvPOK(*tv)) {
41807             (&arg1)->push_back((std::string)SwigSvToString(*tv));
41808           } else {
41809             SWIG_croak("Type error in argument 1 of "
41810               "eval_structure_simple. "
41811               "Expected an array of ""std::string");
41812           }
41813         }
41814       } else {
41815         SWIG_croak("Type error in argument 1 of eval_structure_simple. "
41816           "Expected an array of ""std::string");
41817       }
41818     }
41819     {
41820       std::string *ptr = (std::string *)0;
41821       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41822       if (!SWIG_IsOK(res) || !ptr) {
41823         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_structure_simple" "', argument " "2"" of type '" "std::string""'");
41824       }
41825       arg2 = *ptr;
41826       if (SWIG_IsNewObj(res)) delete ptr;
41827     }
41828     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
41829     if (!SWIG_IsOK(ecode3)) {
41830       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_structure_simple" "', argument " "3"" of type '" "int""'");
41831     }
41832     arg3 = static_cast< int >(val3);
41833     {
41834       try {
41835         result = (float)my_eval_structure_simple(arg1,arg2,arg3);
41836       } catch (const std::exception& e) {
41837         SWIG_exception(SWIG_RuntimeError, e.what());
41838       }
41839     }
41840     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41841 
41842 
41843     XSRETURN(argvi);
41844   fail:
41845 
41846 
41847     SWIG_croak_null();
41848   }
41849 }
41850 
41851 
XS(_wrap_eval_structure_simple__SWIG_5)41852 XS(_wrap_eval_structure_simple__SWIG_5) {
41853   {
41854     std::vector< std::string > arg1 ;
41855     std::string arg2 ;
41856     std::vector< std::string > *v1 ;
41857     int argvi = 0;
41858     float result;
41859     dXSARGS;
41860 
41861     if ((items < 2) || (items > 2)) {
41862       SWIG_croak("Usage: eval_structure_simple(alignment,structure);");
41863     }
41864     {
41865       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
41866           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
41867         arg1 = *v1;
41868       } else if (SvROK(ST(0))) {
41869         AV *av = (AV *)SvRV(ST(0));
41870         if (SvTYPE(av) != SVt_PVAV)
41871         SWIG_croak("Type error in argument 1 of eval_structure_simple. "
41872           "Expected an array of ""std::string");
41873         SV **tv;
41874         I32 len = av_len(av) + 1;
41875         for (int i=0; i<len; i++) {
41876           tv = av_fetch(av, i, 0);
41877           if (SvPOK(*tv)) {
41878             (&arg1)->push_back((std::string)SwigSvToString(*tv));
41879           } else {
41880             SWIG_croak("Type error in argument 1 of "
41881               "eval_structure_simple. "
41882               "Expected an array of ""std::string");
41883           }
41884         }
41885       } else {
41886         SWIG_croak("Type error in argument 1 of eval_structure_simple. "
41887           "Expected an array of ""std::string");
41888       }
41889     }
41890     {
41891       std::string *ptr = (std::string *)0;
41892       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
41893       if (!SWIG_IsOK(res) || !ptr) {
41894         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_structure_simple" "', argument " "2"" of type '" "std::string""'");
41895       }
41896       arg2 = *ptr;
41897       if (SWIG_IsNewObj(res)) delete ptr;
41898     }
41899     {
41900       try {
41901         result = (float)my_eval_structure_simple(arg1,arg2);
41902       } catch (const std::exception& e) {
41903         SWIG_exception(SWIG_RuntimeError, e.what());
41904       }
41905     }
41906     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
41907 
41908     XSRETURN(argvi);
41909   fail:
41910 
41911     SWIG_croak_null();
41912   }
41913 }
41914 
41915 
XS(_wrap_eval_structure_simple)41916 XS(_wrap_eval_structure_simple) {
41917   dXSARGS;
41918 
41919   {
41920     unsigned long _index = 0;
41921     SWIG_TypeRank _rank = 0;
41922     if (items == 2) {
41923       SWIG_TypeRank _ranki = 0;
41924       SWIG_TypeRank _rankm = 0;
41925       SWIG_TypeRank _pi = 1;
41926       int _v = 0;
41927       {
41928         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
41929         _v = SWIG_CheckState(res);
41930       }
41931       if (!_v) goto check_1;
41932       _ranki += _v*_pi;
41933       _rankm += _pi;
41934       _pi *= SWIG_MAXCASTRANK;
41935       {
41936         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
41937         _v = SWIG_CheckState(res);
41938       }
41939       if (!_v) goto check_1;
41940       _ranki += _v*_pi;
41941       _rankm += _pi;
41942       _pi *= SWIG_MAXCASTRANK;
41943       if (!_index || (_ranki < _rank)) {
41944         _rank = _ranki; _index = 1;
41945         if (_rank == _rankm) goto dispatch;
41946       }
41947     }
41948   check_1:
41949 
41950     if (items == 2) {
41951       SWIG_TypeRank _ranki = 0;
41952       SWIG_TypeRank _rankm = 0;
41953       SWIG_TypeRank _pi = 1;
41954       int _v = 0;
41955       {
41956         {
41957           {
41958             /* wrapped vector? */
41959             std::vector< std::string >* v;
41960             if (SWIG_ConvertPtr(ST(0),(void **) &v,
41961                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
41962               _v = 1;
41963             } else if (SvROK(ST(0))) {
41964               /* native sequence? */
41965               AV *av = (AV *)SvRV(ST(0));
41966               if (SvTYPE(av) == SVt_PVAV) {
41967                 I32 len = av_len(av) + 1;
41968                 if (len == 0) {
41969                   /* an empty sequence can be of any type */
41970                   _v = 1;
41971                 } else {
41972                   /* check the first element only */
41973                   SV **tv = av_fetch(av, 0, 0);
41974                   if (SvPOK(*tv))
41975                   _v = 1;
41976                   else
41977                   _v = 0;
41978                 }
41979               }
41980             } else {
41981               _v = 0;
41982             }
41983           }
41984         }
41985       }
41986       if (!_v) goto check_2;
41987       _ranki += _v*_pi;
41988       _rankm += _pi;
41989       _pi *= SWIG_MAXCASTRANK;
41990       {
41991         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
41992         _v = SWIG_CheckState(res);
41993       }
41994       if (!_v) goto check_2;
41995       _ranki += _v*_pi;
41996       _rankm += _pi;
41997       _pi *= SWIG_MAXCASTRANK;
41998       if (!_index || (_ranki < _rank)) {
41999         _rank = _ranki; _index = 2;
42000         if (_rank == _rankm) goto dispatch;
42001       }
42002     }
42003   check_2:
42004 
42005     if (items == 3) {
42006       SWIG_TypeRank _ranki = 0;
42007       SWIG_TypeRank _rankm = 0;
42008       SWIG_TypeRank _pi = 1;
42009       int _v = 0;
42010       {
42011         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
42012         _v = SWIG_CheckState(res);
42013       }
42014       if (!_v) goto check_3;
42015       _ranki += _v*_pi;
42016       _rankm += _pi;
42017       _pi *= SWIG_MAXCASTRANK;
42018       {
42019         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
42020         _v = SWIG_CheckState(res);
42021       }
42022       if (!_v) goto check_3;
42023       _ranki += _v*_pi;
42024       _rankm += _pi;
42025       _pi *= SWIG_MAXCASTRANK;
42026       {
42027         {
42028           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
42029           _v = SWIG_CheckState(res);
42030         }
42031       }
42032       if (!_v) goto check_3;
42033       _ranki += _v*_pi;
42034       _rankm += _pi;
42035       _pi *= SWIG_MAXCASTRANK;
42036       if (!_index || (_ranki < _rank)) {
42037         _rank = _ranki; _index = 3;
42038         if (_rank == _rankm) goto dispatch;
42039       }
42040     }
42041   check_3:
42042 
42043     if (items == 3) {
42044       SWIG_TypeRank _ranki = 0;
42045       SWIG_TypeRank _rankm = 0;
42046       SWIG_TypeRank _pi = 1;
42047       int _v = 0;
42048       {
42049         {
42050           {
42051             /* wrapped vector? */
42052             std::vector< std::string >* v;
42053             if (SWIG_ConvertPtr(ST(0),(void **) &v,
42054                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
42055               _v = 1;
42056             } else if (SvROK(ST(0))) {
42057               /* native sequence? */
42058               AV *av = (AV *)SvRV(ST(0));
42059               if (SvTYPE(av) == SVt_PVAV) {
42060                 I32 len = av_len(av) + 1;
42061                 if (len == 0) {
42062                   /* an empty sequence can be of any type */
42063                   _v = 1;
42064                 } else {
42065                   /* check the first element only */
42066                   SV **tv = av_fetch(av, 0, 0);
42067                   if (SvPOK(*tv))
42068                   _v = 1;
42069                   else
42070                   _v = 0;
42071                 }
42072               }
42073             } else {
42074               _v = 0;
42075             }
42076           }
42077         }
42078       }
42079       if (!_v) goto check_4;
42080       _ranki += _v*_pi;
42081       _rankm += _pi;
42082       _pi *= SWIG_MAXCASTRANK;
42083       {
42084         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
42085         _v = SWIG_CheckState(res);
42086       }
42087       if (!_v) goto check_4;
42088       _ranki += _v*_pi;
42089       _rankm += _pi;
42090       _pi *= SWIG_MAXCASTRANK;
42091       {
42092         {
42093           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
42094           _v = SWIG_CheckState(res);
42095         }
42096       }
42097       if (!_v) goto check_4;
42098       _ranki += _v*_pi;
42099       _rankm += _pi;
42100       _pi *= SWIG_MAXCASTRANK;
42101       if (!_index || (_ranki < _rank)) {
42102         _rank = _ranki; _index = 4;
42103         if (_rank == _rankm) goto dispatch;
42104       }
42105     }
42106   check_4:
42107 
42108     if (items == 4) {
42109       SWIG_TypeRank _ranki = 0;
42110       SWIG_TypeRank _rankm = 0;
42111       SWIG_TypeRank _pi = 1;
42112       int _v = 0;
42113       {
42114         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
42115         _v = SWIG_CheckState(res);
42116       }
42117       if (!_v) goto check_5;
42118       _ranki += _v*_pi;
42119       _rankm += _pi;
42120       _pi *= SWIG_MAXCASTRANK;
42121       {
42122         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
42123         _v = SWIG_CheckState(res);
42124       }
42125       if (!_v) goto check_5;
42126       _ranki += _v*_pi;
42127       _rankm += _pi;
42128       _pi *= SWIG_MAXCASTRANK;
42129       {
42130         {
42131           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
42132           _v = SWIG_CheckState(res);
42133         }
42134       }
42135       if (!_v) goto check_5;
42136       _ranki += _v*_pi;
42137       _rankm += _pi;
42138       _pi *= SWIG_MAXCASTRANK;
42139       {
42140         {
42141           if (SvOK(ST(3)))
42142           _v = (sv_2io(ST(3))) ? 1 : 0;
42143         }
42144       }
42145       if (!_v) goto check_5;
42146       _ranki += _v*_pi;
42147       _rankm += _pi;
42148       _pi *= SWIG_MAXCASTRANK;
42149       if (!_index || (_ranki < _rank)) {
42150         _rank = _ranki; _index = 5;
42151         if (_rank == _rankm) goto dispatch;
42152       }
42153     }
42154   check_5:
42155 
42156     if (items == 4) {
42157       SWIG_TypeRank _ranki = 0;
42158       SWIG_TypeRank _rankm = 0;
42159       SWIG_TypeRank _pi = 1;
42160       int _v = 0;
42161       {
42162         {
42163           {
42164             /* wrapped vector? */
42165             std::vector< std::string >* v;
42166             if (SWIG_ConvertPtr(ST(0),(void **) &v,
42167                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
42168               _v = 1;
42169             } else if (SvROK(ST(0))) {
42170               /* native sequence? */
42171               AV *av = (AV *)SvRV(ST(0));
42172               if (SvTYPE(av) == SVt_PVAV) {
42173                 I32 len = av_len(av) + 1;
42174                 if (len == 0) {
42175                   /* an empty sequence can be of any type */
42176                   _v = 1;
42177                 } else {
42178                   /* check the first element only */
42179                   SV **tv = av_fetch(av, 0, 0);
42180                   if (SvPOK(*tv))
42181                   _v = 1;
42182                   else
42183                   _v = 0;
42184                 }
42185               }
42186             } else {
42187               _v = 0;
42188             }
42189           }
42190         }
42191       }
42192       if (!_v) goto check_6;
42193       _ranki += _v*_pi;
42194       _rankm += _pi;
42195       _pi *= SWIG_MAXCASTRANK;
42196       {
42197         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
42198         _v = SWIG_CheckState(res);
42199       }
42200       if (!_v) goto check_6;
42201       _ranki += _v*_pi;
42202       _rankm += _pi;
42203       _pi *= SWIG_MAXCASTRANK;
42204       {
42205         {
42206           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
42207           _v = SWIG_CheckState(res);
42208         }
42209       }
42210       if (!_v) goto check_6;
42211       _ranki += _v*_pi;
42212       _rankm += _pi;
42213       _pi *= SWIG_MAXCASTRANK;
42214       {
42215         {
42216           if (SvOK(ST(3)))
42217           _v = (sv_2io(ST(3))) ? 1 : 0;
42218         }
42219       }
42220       if (!_v) goto check_6;
42221       _ranki += _v*_pi;
42222       _rankm += _pi;
42223       _pi *= SWIG_MAXCASTRANK;
42224       if (!_index || (_ranki < _rank)) {
42225         _rank = _ranki; _index = 6;
42226         if (_rank == _rankm) goto dispatch;
42227       }
42228     }
42229   check_6:
42230 
42231   dispatch:
42232     switch(_index) {
42233     case 1:
42234       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_structure_simple__SWIG_2); return;
42235     case 2:
42236       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_structure_simple__SWIG_5); return;
42237     case 3:
42238       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_structure_simple__SWIG_1); return;
42239     case 4:
42240       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_structure_simple__SWIG_4); return;
42241     case 5:
42242       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_structure_simple__SWIG_0); return;
42243     case 6:
42244       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_structure_simple__SWIG_3); return;
42245     }
42246   }
42247 
42248   croak("No matching function for overloaded 'eval_structure_simple'");
42249   XSRETURN(0);
42250 }
42251 
42252 
XS(_wrap_eval_circ_structure__SWIG_3)42253 XS(_wrap_eval_circ_structure__SWIG_3) {
42254   {
42255     std::vector< std::string > arg1 ;
42256     std::string arg2 ;
42257     int arg3 ;
42258     FILE *arg4 = (FILE *) 0 ;
42259     std::vector< std::string > *v1 ;
42260     int val3 ;
42261     int ecode3 = 0 ;
42262     int argvi = 0;
42263     float result;
42264     dXSARGS;
42265 
42266     if ((items < 4) || (items > 4)) {
42267       SWIG_croak("Usage: eval_circ_structure(alignment,structure,verbosity_level,file);");
42268     }
42269     {
42270       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
42271           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
42272         arg1 = *v1;
42273       } else if (SvROK(ST(0))) {
42274         AV *av = (AV *)SvRV(ST(0));
42275         if (SvTYPE(av) != SVt_PVAV)
42276         SWIG_croak("Type error in argument 1 of eval_circ_structure. "
42277           "Expected an array of ""std::string");
42278         SV **tv;
42279         I32 len = av_len(av) + 1;
42280         for (int i=0; i<len; i++) {
42281           tv = av_fetch(av, i, 0);
42282           if (SvPOK(*tv)) {
42283             (&arg1)->push_back((std::string)SwigSvToString(*tv));
42284           } else {
42285             SWIG_croak("Type error in argument 1 of "
42286               "eval_circ_structure. "
42287               "Expected an array of ""std::string");
42288           }
42289         }
42290       } else {
42291         SWIG_croak("Type error in argument 1 of eval_circ_structure. "
42292           "Expected an array of ""std::string");
42293       }
42294     }
42295     {
42296       std::string *ptr = (std::string *)0;
42297       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
42298       if (!SWIG_IsOK(res) || !ptr) {
42299         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_structure" "', argument " "2"" of type '" "std::string""'");
42300       }
42301       arg2 = *ptr;
42302       if (SWIG_IsNewObj(res)) delete ptr;
42303     }
42304     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
42305     if (!SWIG_IsOK(ecode3)) {
42306       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_circ_structure" "', argument " "3"" of type '" "int""'");
42307     }
42308     arg3 = static_cast< int >(val3);
42309     {
42310       if (SvOK(ST(3))) /* check for undef */
42311       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(3))));
42312       else  arg4 = NULL;
42313     }
42314     {
42315       try {
42316         result = (float)my_eval_circ_structure(arg1,arg2,arg3,arg4);
42317       } catch (const std::exception& e) {
42318         SWIG_exception(SWIG_RuntimeError, e.what());
42319       }
42320     }
42321     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
42322 
42323 
42324 
42325     XSRETURN(argvi);
42326   fail:
42327 
42328 
42329 
42330     SWIG_croak_null();
42331   }
42332 }
42333 
42334 
XS(_wrap_eval_circ_structure__SWIG_4)42335 XS(_wrap_eval_circ_structure__SWIG_4) {
42336   {
42337     std::vector< std::string > arg1 ;
42338     std::string arg2 ;
42339     int arg3 ;
42340     std::vector< std::string > *v1 ;
42341     int val3 ;
42342     int ecode3 = 0 ;
42343     int argvi = 0;
42344     float result;
42345     dXSARGS;
42346 
42347     if ((items < 3) || (items > 3)) {
42348       SWIG_croak("Usage: eval_circ_structure(alignment,structure,verbosity_level);");
42349     }
42350     {
42351       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
42352           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
42353         arg1 = *v1;
42354       } else if (SvROK(ST(0))) {
42355         AV *av = (AV *)SvRV(ST(0));
42356         if (SvTYPE(av) != SVt_PVAV)
42357         SWIG_croak("Type error in argument 1 of eval_circ_structure. "
42358           "Expected an array of ""std::string");
42359         SV **tv;
42360         I32 len = av_len(av) + 1;
42361         for (int i=0; i<len; i++) {
42362           tv = av_fetch(av, i, 0);
42363           if (SvPOK(*tv)) {
42364             (&arg1)->push_back((std::string)SwigSvToString(*tv));
42365           } else {
42366             SWIG_croak("Type error in argument 1 of "
42367               "eval_circ_structure. "
42368               "Expected an array of ""std::string");
42369           }
42370         }
42371       } else {
42372         SWIG_croak("Type error in argument 1 of eval_circ_structure. "
42373           "Expected an array of ""std::string");
42374       }
42375     }
42376     {
42377       std::string *ptr = (std::string *)0;
42378       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
42379       if (!SWIG_IsOK(res) || !ptr) {
42380         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_structure" "', argument " "2"" of type '" "std::string""'");
42381       }
42382       arg2 = *ptr;
42383       if (SWIG_IsNewObj(res)) delete ptr;
42384     }
42385     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
42386     if (!SWIG_IsOK(ecode3)) {
42387       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_circ_structure" "', argument " "3"" of type '" "int""'");
42388     }
42389     arg3 = static_cast< int >(val3);
42390     {
42391       try {
42392         result = (float)my_eval_circ_structure(arg1,arg2,arg3);
42393       } catch (const std::exception& e) {
42394         SWIG_exception(SWIG_RuntimeError, e.what());
42395       }
42396     }
42397     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
42398 
42399 
42400     XSRETURN(argvi);
42401   fail:
42402 
42403 
42404     SWIG_croak_null();
42405   }
42406 }
42407 
42408 
XS(_wrap_eval_circ_structure__SWIG_5)42409 XS(_wrap_eval_circ_structure__SWIG_5) {
42410   {
42411     std::vector< std::string > arg1 ;
42412     std::string arg2 ;
42413     std::vector< std::string > *v1 ;
42414     int argvi = 0;
42415     float result;
42416     dXSARGS;
42417 
42418     if ((items < 2) || (items > 2)) {
42419       SWIG_croak("Usage: eval_circ_structure(alignment,structure);");
42420     }
42421     {
42422       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
42423           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
42424         arg1 = *v1;
42425       } else if (SvROK(ST(0))) {
42426         AV *av = (AV *)SvRV(ST(0));
42427         if (SvTYPE(av) != SVt_PVAV)
42428         SWIG_croak("Type error in argument 1 of eval_circ_structure. "
42429           "Expected an array of ""std::string");
42430         SV **tv;
42431         I32 len = av_len(av) + 1;
42432         for (int i=0; i<len; i++) {
42433           tv = av_fetch(av, i, 0);
42434           if (SvPOK(*tv)) {
42435             (&arg1)->push_back((std::string)SwigSvToString(*tv));
42436           } else {
42437             SWIG_croak("Type error in argument 1 of "
42438               "eval_circ_structure. "
42439               "Expected an array of ""std::string");
42440           }
42441         }
42442       } else {
42443         SWIG_croak("Type error in argument 1 of eval_circ_structure. "
42444           "Expected an array of ""std::string");
42445       }
42446     }
42447     {
42448       std::string *ptr = (std::string *)0;
42449       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
42450       if (!SWIG_IsOK(res) || !ptr) {
42451         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_structure" "', argument " "2"" of type '" "std::string""'");
42452       }
42453       arg2 = *ptr;
42454       if (SWIG_IsNewObj(res)) delete ptr;
42455     }
42456     {
42457       try {
42458         result = (float)my_eval_circ_structure(arg1,arg2);
42459       } catch (const std::exception& e) {
42460         SWIG_exception(SWIG_RuntimeError, e.what());
42461       }
42462     }
42463     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
42464 
42465     XSRETURN(argvi);
42466   fail:
42467 
42468     SWIG_croak_null();
42469   }
42470 }
42471 
42472 
XS(_wrap_eval_circ_structure)42473 XS(_wrap_eval_circ_structure) {
42474   dXSARGS;
42475 
42476   {
42477     unsigned long _index = 0;
42478     SWIG_TypeRank _rank = 0;
42479     if (items == 2) {
42480       SWIG_TypeRank _ranki = 0;
42481       SWIG_TypeRank _rankm = 0;
42482       SWIG_TypeRank _pi = 1;
42483       int _v = 0;
42484       {
42485         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
42486         _v = SWIG_CheckState(res);
42487       }
42488       if (!_v) goto check_1;
42489       _ranki += _v*_pi;
42490       _rankm += _pi;
42491       _pi *= SWIG_MAXCASTRANK;
42492       {
42493         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
42494         _v = SWIG_CheckState(res);
42495       }
42496       if (!_v) goto check_1;
42497       _ranki += _v*_pi;
42498       _rankm += _pi;
42499       _pi *= SWIG_MAXCASTRANK;
42500       if (!_index || (_ranki < _rank)) {
42501         _rank = _ranki; _index = 1;
42502         if (_rank == _rankm) goto dispatch;
42503       }
42504     }
42505   check_1:
42506 
42507     if (items == 2) {
42508       SWIG_TypeRank _ranki = 0;
42509       SWIG_TypeRank _rankm = 0;
42510       SWIG_TypeRank _pi = 1;
42511       int _v = 0;
42512       {
42513         {
42514           {
42515             /* wrapped vector? */
42516             std::vector< std::string >* v;
42517             if (SWIG_ConvertPtr(ST(0),(void **) &v,
42518                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
42519               _v = 1;
42520             } else if (SvROK(ST(0))) {
42521               /* native sequence? */
42522               AV *av = (AV *)SvRV(ST(0));
42523               if (SvTYPE(av) == SVt_PVAV) {
42524                 I32 len = av_len(av) + 1;
42525                 if (len == 0) {
42526                   /* an empty sequence can be of any type */
42527                   _v = 1;
42528                 } else {
42529                   /* check the first element only */
42530                   SV **tv = av_fetch(av, 0, 0);
42531                   if (SvPOK(*tv))
42532                   _v = 1;
42533                   else
42534                   _v = 0;
42535                 }
42536               }
42537             } else {
42538               _v = 0;
42539             }
42540           }
42541         }
42542       }
42543       if (!_v) goto check_2;
42544       _ranki += _v*_pi;
42545       _rankm += _pi;
42546       _pi *= SWIG_MAXCASTRANK;
42547       {
42548         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
42549         _v = SWIG_CheckState(res);
42550       }
42551       if (!_v) goto check_2;
42552       _ranki += _v*_pi;
42553       _rankm += _pi;
42554       _pi *= SWIG_MAXCASTRANK;
42555       if (!_index || (_ranki < _rank)) {
42556         _rank = _ranki; _index = 2;
42557         if (_rank == _rankm) goto dispatch;
42558       }
42559     }
42560   check_2:
42561 
42562     if (items == 3) {
42563       SWIG_TypeRank _ranki = 0;
42564       SWIG_TypeRank _rankm = 0;
42565       SWIG_TypeRank _pi = 1;
42566       int _v = 0;
42567       {
42568         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
42569         _v = SWIG_CheckState(res);
42570       }
42571       if (!_v) goto check_3;
42572       _ranki += _v*_pi;
42573       _rankm += _pi;
42574       _pi *= SWIG_MAXCASTRANK;
42575       {
42576         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
42577         _v = SWIG_CheckState(res);
42578       }
42579       if (!_v) goto check_3;
42580       _ranki += _v*_pi;
42581       _rankm += _pi;
42582       _pi *= SWIG_MAXCASTRANK;
42583       {
42584         {
42585           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
42586           _v = SWIG_CheckState(res);
42587         }
42588       }
42589       if (!_v) goto check_3;
42590       _ranki += _v*_pi;
42591       _rankm += _pi;
42592       _pi *= SWIG_MAXCASTRANK;
42593       if (!_index || (_ranki < _rank)) {
42594         _rank = _ranki; _index = 3;
42595         if (_rank == _rankm) goto dispatch;
42596       }
42597     }
42598   check_3:
42599 
42600     if (items == 3) {
42601       SWIG_TypeRank _ranki = 0;
42602       SWIG_TypeRank _rankm = 0;
42603       SWIG_TypeRank _pi = 1;
42604       int _v = 0;
42605       {
42606         {
42607           {
42608             /* wrapped vector? */
42609             std::vector< std::string >* v;
42610             if (SWIG_ConvertPtr(ST(0),(void **) &v,
42611                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
42612               _v = 1;
42613             } else if (SvROK(ST(0))) {
42614               /* native sequence? */
42615               AV *av = (AV *)SvRV(ST(0));
42616               if (SvTYPE(av) == SVt_PVAV) {
42617                 I32 len = av_len(av) + 1;
42618                 if (len == 0) {
42619                   /* an empty sequence can be of any type */
42620                   _v = 1;
42621                 } else {
42622                   /* check the first element only */
42623                   SV **tv = av_fetch(av, 0, 0);
42624                   if (SvPOK(*tv))
42625                   _v = 1;
42626                   else
42627                   _v = 0;
42628                 }
42629               }
42630             } else {
42631               _v = 0;
42632             }
42633           }
42634         }
42635       }
42636       if (!_v) goto check_4;
42637       _ranki += _v*_pi;
42638       _rankm += _pi;
42639       _pi *= SWIG_MAXCASTRANK;
42640       {
42641         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
42642         _v = SWIG_CheckState(res);
42643       }
42644       if (!_v) goto check_4;
42645       _ranki += _v*_pi;
42646       _rankm += _pi;
42647       _pi *= SWIG_MAXCASTRANK;
42648       {
42649         {
42650           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
42651           _v = SWIG_CheckState(res);
42652         }
42653       }
42654       if (!_v) goto check_4;
42655       _ranki += _v*_pi;
42656       _rankm += _pi;
42657       _pi *= SWIG_MAXCASTRANK;
42658       if (!_index || (_ranki < _rank)) {
42659         _rank = _ranki; _index = 4;
42660         if (_rank == _rankm) goto dispatch;
42661       }
42662     }
42663   check_4:
42664 
42665     if (items == 4) {
42666       SWIG_TypeRank _ranki = 0;
42667       SWIG_TypeRank _rankm = 0;
42668       SWIG_TypeRank _pi = 1;
42669       int _v = 0;
42670       {
42671         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
42672         _v = SWIG_CheckState(res);
42673       }
42674       if (!_v) goto check_5;
42675       _ranki += _v*_pi;
42676       _rankm += _pi;
42677       _pi *= SWIG_MAXCASTRANK;
42678       {
42679         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
42680         _v = SWIG_CheckState(res);
42681       }
42682       if (!_v) goto check_5;
42683       _ranki += _v*_pi;
42684       _rankm += _pi;
42685       _pi *= SWIG_MAXCASTRANK;
42686       {
42687         {
42688           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
42689           _v = SWIG_CheckState(res);
42690         }
42691       }
42692       if (!_v) goto check_5;
42693       _ranki += _v*_pi;
42694       _rankm += _pi;
42695       _pi *= SWIG_MAXCASTRANK;
42696       {
42697         {
42698           if (SvOK(ST(3)))
42699           _v = (sv_2io(ST(3))) ? 1 : 0;
42700         }
42701       }
42702       if (!_v) goto check_5;
42703       _ranki += _v*_pi;
42704       _rankm += _pi;
42705       _pi *= SWIG_MAXCASTRANK;
42706       if (!_index || (_ranki < _rank)) {
42707         _rank = _ranki; _index = 5;
42708         if (_rank == _rankm) goto dispatch;
42709       }
42710     }
42711   check_5:
42712 
42713     if (items == 4) {
42714       SWIG_TypeRank _ranki = 0;
42715       SWIG_TypeRank _rankm = 0;
42716       SWIG_TypeRank _pi = 1;
42717       int _v = 0;
42718       {
42719         {
42720           {
42721             /* wrapped vector? */
42722             std::vector< std::string >* v;
42723             if (SWIG_ConvertPtr(ST(0),(void **) &v,
42724                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
42725               _v = 1;
42726             } else if (SvROK(ST(0))) {
42727               /* native sequence? */
42728               AV *av = (AV *)SvRV(ST(0));
42729               if (SvTYPE(av) == SVt_PVAV) {
42730                 I32 len = av_len(av) + 1;
42731                 if (len == 0) {
42732                   /* an empty sequence can be of any type */
42733                   _v = 1;
42734                 } else {
42735                   /* check the first element only */
42736                   SV **tv = av_fetch(av, 0, 0);
42737                   if (SvPOK(*tv))
42738                   _v = 1;
42739                   else
42740                   _v = 0;
42741                 }
42742               }
42743             } else {
42744               _v = 0;
42745             }
42746           }
42747         }
42748       }
42749       if (!_v) goto check_6;
42750       _ranki += _v*_pi;
42751       _rankm += _pi;
42752       _pi *= SWIG_MAXCASTRANK;
42753       {
42754         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
42755         _v = SWIG_CheckState(res);
42756       }
42757       if (!_v) goto check_6;
42758       _ranki += _v*_pi;
42759       _rankm += _pi;
42760       _pi *= SWIG_MAXCASTRANK;
42761       {
42762         {
42763           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
42764           _v = SWIG_CheckState(res);
42765         }
42766       }
42767       if (!_v) goto check_6;
42768       _ranki += _v*_pi;
42769       _rankm += _pi;
42770       _pi *= SWIG_MAXCASTRANK;
42771       {
42772         {
42773           if (SvOK(ST(3)))
42774           _v = (sv_2io(ST(3))) ? 1 : 0;
42775         }
42776       }
42777       if (!_v) goto check_6;
42778       _ranki += _v*_pi;
42779       _rankm += _pi;
42780       _pi *= SWIG_MAXCASTRANK;
42781       if (!_index || (_ranki < _rank)) {
42782         _rank = _ranki; _index = 6;
42783         if (_rank == _rankm) goto dispatch;
42784       }
42785     }
42786   check_6:
42787 
42788   dispatch:
42789     switch(_index) {
42790     case 1:
42791       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_circ_structure__SWIG_2); return;
42792     case 2:
42793       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_circ_structure__SWIG_5); return;
42794     case 3:
42795       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_circ_structure__SWIG_1); return;
42796     case 4:
42797       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_circ_structure__SWIG_4); return;
42798     case 5:
42799       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_circ_structure__SWIG_0); return;
42800     case 6:
42801       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_circ_structure__SWIG_3); return;
42802     }
42803   }
42804 
42805   croak("No matching function for overloaded 'eval_circ_structure'");
42806   XSRETURN(0);
42807 }
42808 
42809 
XS(_wrap_eval_gquad_structure__SWIG_3)42810 XS(_wrap_eval_gquad_structure__SWIG_3) {
42811   {
42812     std::vector< std::string > arg1 ;
42813     std::string arg2 ;
42814     int arg3 ;
42815     FILE *arg4 = (FILE *) 0 ;
42816     std::vector< std::string > *v1 ;
42817     int val3 ;
42818     int ecode3 = 0 ;
42819     int argvi = 0;
42820     float result;
42821     dXSARGS;
42822 
42823     if ((items < 4) || (items > 4)) {
42824       SWIG_croak("Usage: eval_gquad_structure(alignment,structure,verbosity_level,file);");
42825     }
42826     {
42827       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
42828           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
42829         arg1 = *v1;
42830       } else if (SvROK(ST(0))) {
42831         AV *av = (AV *)SvRV(ST(0));
42832         if (SvTYPE(av) != SVt_PVAV)
42833         SWIG_croak("Type error in argument 1 of eval_gquad_structure. "
42834           "Expected an array of ""std::string");
42835         SV **tv;
42836         I32 len = av_len(av) + 1;
42837         for (int i=0; i<len; i++) {
42838           tv = av_fetch(av, i, 0);
42839           if (SvPOK(*tv)) {
42840             (&arg1)->push_back((std::string)SwigSvToString(*tv));
42841           } else {
42842             SWIG_croak("Type error in argument 1 of "
42843               "eval_gquad_structure. "
42844               "Expected an array of ""std::string");
42845           }
42846         }
42847       } else {
42848         SWIG_croak("Type error in argument 1 of eval_gquad_structure. "
42849           "Expected an array of ""std::string");
42850       }
42851     }
42852     {
42853       std::string *ptr = (std::string *)0;
42854       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
42855       if (!SWIG_IsOK(res) || !ptr) {
42856         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_gquad_structure" "', argument " "2"" of type '" "std::string""'");
42857       }
42858       arg2 = *ptr;
42859       if (SWIG_IsNewObj(res)) delete ptr;
42860     }
42861     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
42862     if (!SWIG_IsOK(ecode3)) {
42863       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_gquad_structure" "', argument " "3"" of type '" "int""'");
42864     }
42865     arg3 = static_cast< int >(val3);
42866     {
42867       if (SvOK(ST(3))) /* check for undef */
42868       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(3))));
42869       else  arg4 = NULL;
42870     }
42871     {
42872       try {
42873         result = (float)my_eval_gquad_structure(arg1,arg2,arg3,arg4);
42874       } catch (const std::exception& e) {
42875         SWIG_exception(SWIG_RuntimeError, e.what());
42876       }
42877     }
42878     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
42879 
42880 
42881 
42882     XSRETURN(argvi);
42883   fail:
42884 
42885 
42886 
42887     SWIG_croak_null();
42888   }
42889 }
42890 
42891 
XS(_wrap_eval_gquad_structure__SWIG_4)42892 XS(_wrap_eval_gquad_structure__SWIG_4) {
42893   {
42894     std::vector< std::string > arg1 ;
42895     std::string arg2 ;
42896     int arg3 ;
42897     std::vector< std::string > *v1 ;
42898     int val3 ;
42899     int ecode3 = 0 ;
42900     int argvi = 0;
42901     float result;
42902     dXSARGS;
42903 
42904     if ((items < 3) || (items > 3)) {
42905       SWIG_croak("Usage: eval_gquad_structure(alignment,structure,verbosity_level);");
42906     }
42907     {
42908       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
42909           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
42910         arg1 = *v1;
42911       } else if (SvROK(ST(0))) {
42912         AV *av = (AV *)SvRV(ST(0));
42913         if (SvTYPE(av) != SVt_PVAV)
42914         SWIG_croak("Type error in argument 1 of eval_gquad_structure. "
42915           "Expected an array of ""std::string");
42916         SV **tv;
42917         I32 len = av_len(av) + 1;
42918         for (int i=0; i<len; i++) {
42919           tv = av_fetch(av, i, 0);
42920           if (SvPOK(*tv)) {
42921             (&arg1)->push_back((std::string)SwigSvToString(*tv));
42922           } else {
42923             SWIG_croak("Type error in argument 1 of "
42924               "eval_gquad_structure. "
42925               "Expected an array of ""std::string");
42926           }
42927         }
42928       } else {
42929         SWIG_croak("Type error in argument 1 of eval_gquad_structure. "
42930           "Expected an array of ""std::string");
42931       }
42932     }
42933     {
42934       std::string *ptr = (std::string *)0;
42935       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
42936       if (!SWIG_IsOK(res) || !ptr) {
42937         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_gquad_structure" "', argument " "2"" of type '" "std::string""'");
42938       }
42939       arg2 = *ptr;
42940       if (SWIG_IsNewObj(res)) delete ptr;
42941     }
42942     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
42943     if (!SWIG_IsOK(ecode3)) {
42944       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_gquad_structure" "', argument " "3"" of type '" "int""'");
42945     }
42946     arg3 = static_cast< int >(val3);
42947     {
42948       try {
42949         result = (float)my_eval_gquad_structure(arg1,arg2,arg3);
42950       } catch (const std::exception& e) {
42951         SWIG_exception(SWIG_RuntimeError, e.what());
42952       }
42953     }
42954     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
42955 
42956 
42957     XSRETURN(argvi);
42958   fail:
42959 
42960 
42961     SWIG_croak_null();
42962   }
42963 }
42964 
42965 
XS(_wrap_eval_gquad_structure__SWIG_5)42966 XS(_wrap_eval_gquad_structure__SWIG_5) {
42967   {
42968     std::vector< std::string > arg1 ;
42969     std::string arg2 ;
42970     std::vector< std::string > *v1 ;
42971     int argvi = 0;
42972     float result;
42973     dXSARGS;
42974 
42975     if ((items < 2) || (items > 2)) {
42976       SWIG_croak("Usage: eval_gquad_structure(alignment,structure);");
42977     }
42978     {
42979       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
42980           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
42981         arg1 = *v1;
42982       } else if (SvROK(ST(0))) {
42983         AV *av = (AV *)SvRV(ST(0));
42984         if (SvTYPE(av) != SVt_PVAV)
42985         SWIG_croak("Type error in argument 1 of eval_gquad_structure. "
42986           "Expected an array of ""std::string");
42987         SV **tv;
42988         I32 len = av_len(av) + 1;
42989         for (int i=0; i<len; i++) {
42990           tv = av_fetch(av, i, 0);
42991           if (SvPOK(*tv)) {
42992             (&arg1)->push_back((std::string)SwigSvToString(*tv));
42993           } else {
42994             SWIG_croak("Type error in argument 1 of "
42995               "eval_gquad_structure. "
42996               "Expected an array of ""std::string");
42997           }
42998         }
42999       } else {
43000         SWIG_croak("Type error in argument 1 of eval_gquad_structure. "
43001           "Expected an array of ""std::string");
43002       }
43003     }
43004     {
43005       std::string *ptr = (std::string *)0;
43006       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
43007       if (!SWIG_IsOK(res) || !ptr) {
43008         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_gquad_structure" "', argument " "2"" of type '" "std::string""'");
43009       }
43010       arg2 = *ptr;
43011       if (SWIG_IsNewObj(res)) delete ptr;
43012     }
43013     {
43014       try {
43015         result = (float)my_eval_gquad_structure(arg1,arg2);
43016       } catch (const std::exception& e) {
43017         SWIG_exception(SWIG_RuntimeError, e.what());
43018       }
43019     }
43020     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
43021 
43022     XSRETURN(argvi);
43023   fail:
43024 
43025     SWIG_croak_null();
43026   }
43027 }
43028 
43029 
XS(_wrap_eval_gquad_structure)43030 XS(_wrap_eval_gquad_structure) {
43031   dXSARGS;
43032 
43033   {
43034     unsigned long _index = 0;
43035     SWIG_TypeRank _rank = 0;
43036     if (items == 2) {
43037       SWIG_TypeRank _ranki = 0;
43038       SWIG_TypeRank _rankm = 0;
43039       SWIG_TypeRank _pi = 1;
43040       int _v = 0;
43041       {
43042         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
43043         _v = SWIG_CheckState(res);
43044       }
43045       if (!_v) goto check_1;
43046       _ranki += _v*_pi;
43047       _rankm += _pi;
43048       _pi *= SWIG_MAXCASTRANK;
43049       {
43050         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
43051         _v = SWIG_CheckState(res);
43052       }
43053       if (!_v) goto check_1;
43054       _ranki += _v*_pi;
43055       _rankm += _pi;
43056       _pi *= SWIG_MAXCASTRANK;
43057       if (!_index || (_ranki < _rank)) {
43058         _rank = _ranki; _index = 1;
43059         if (_rank == _rankm) goto dispatch;
43060       }
43061     }
43062   check_1:
43063 
43064     if (items == 2) {
43065       SWIG_TypeRank _ranki = 0;
43066       SWIG_TypeRank _rankm = 0;
43067       SWIG_TypeRank _pi = 1;
43068       int _v = 0;
43069       {
43070         {
43071           {
43072             /* wrapped vector? */
43073             std::vector< std::string >* v;
43074             if (SWIG_ConvertPtr(ST(0),(void **) &v,
43075                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
43076               _v = 1;
43077             } else if (SvROK(ST(0))) {
43078               /* native sequence? */
43079               AV *av = (AV *)SvRV(ST(0));
43080               if (SvTYPE(av) == SVt_PVAV) {
43081                 I32 len = av_len(av) + 1;
43082                 if (len == 0) {
43083                   /* an empty sequence can be of any type */
43084                   _v = 1;
43085                 } else {
43086                   /* check the first element only */
43087                   SV **tv = av_fetch(av, 0, 0);
43088                   if (SvPOK(*tv))
43089                   _v = 1;
43090                   else
43091                   _v = 0;
43092                 }
43093               }
43094             } else {
43095               _v = 0;
43096             }
43097           }
43098         }
43099       }
43100       if (!_v) goto check_2;
43101       _ranki += _v*_pi;
43102       _rankm += _pi;
43103       _pi *= SWIG_MAXCASTRANK;
43104       {
43105         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
43106         _v = SWIG_CheckState(res);
43107       }
43108       if (!_v) goto check_2;
43109       _ranki += _v*_pi;
43110       _rankm += _pi;
43111       _pi *= SWIG_MAXCASTRANK;
43112       if (!_index || (_ranki < _rank)) {
43113         _rank = _ranki; _index = 2;
43114         if (_rank == _rankm) goto dispatch;
43115       }
43116     }
43117   check_2:
43118 
43119     if (items == 3) {
43120       SWIG_TypeRank _ranki = 0;
43121       SWIG_TypeRank _rankm = 0;
43122       SWIG_TypeRank _pi = 1;
43123       int _v = 0;
43124       {
43125         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
43126         _v = SWIG_CheckState(res);
43127       }
43128       if (!_v) goto check_3;
43129       _ranki += _v*_pi;
43130       _rankm += _pi;
43131       _pi *= SWIG_MAXCASTRANK;
43132       {
43133         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
43134         _v = SWIG_CheckState(res);
43135       }
43136       if (!_v) goto check_3;
43137       _ranki += _v*_pi;
43138       _rankm += _pi;
43139       _pi *= SWIG_MAXCASTRANK;
43140       {
43141         {
43142           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
43143           _v = SWIG_CheckState(res);
43144         }
43145       }
43146       if (!_v) goto check_3;
43147       _ranki += _v*_pi;
43148       _rankm += _pi;
43149       _pi *= SWIG_MAXCASTRANK;
43150       if (!_index || (_ranki < _rank)) {
43151         _rank = _ranki; _index = 3;
43152         if (_rank == _rankm) goto dispatch;
43153       }
43154     }
43155   check_3:
43156 
43157     if (items == 3) {
43158       SWIG_TypeRank _ranki = 0;
43159       SWIG_TypeRank _rankm = 0;
43160       SWIG_TypeRank _pi = 1;
43161       int _v = 0;
43162       {
43163         {
43164           {
43165             /* wrapped vector? */
43166             std::vector< std::string >* v;
43167             if (SWIG_ConvertPtr(ST(0),(void **) &v,
43168                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
43169               _v = 1;
43170             } else if (SvROK(ST(0))) {
43171               /* native sequence? */
43172               AV *av = (AV *)SvRV(ST(0));
43173               if (SvTYPE(av) == SVt_PVAV) {
43174                 I32 len = av_len(av) + 1;
43175                 if (len == 0) {
43176                   /* an empty sequence can be of any type */
43177                   _v = 1;
43178                 } else {
43179                   /* check the first element only */
43180                   SV **tv = av_fetch(av, 0, 0);
43181                   if (SvPOK(*tv))
43182                   _v = 1;
43183                   else
43184                   _v = 0;
43185                 }
43186               }
43187             } else {
43188               _v = 0;
43189             }
43190           }
43191         }
43192       }
43193       if (!_v) goto check_4;
43194       _ranki += _v*_pi;
43195       _rankm += _pi;
43196       _pi *= SWIG_MAXCASTRANK;
43197       {
43198         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
43199         _v = SWIG_CheckState(res);
43200       }
43201       if (!_v) goto check_4;
43202       _ranki += _v*_pi;
43203       _rankm += _pi;
43204       _pi *= SWIG_MAXCASTRANK;
43205       {
43206         {
43207           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
43208           _v = SWIG_CheckState(res);
43209         }
43210       }
43211       if (!_v) goto check_4;
43212       _ranki += _v*_pi;
43213       _rankm += _pi;
43214       _pi *= SWIG_MAXCASTRANK;
43215       if (!_index || (_ranki < _rank)) {
43216         _rank = _ranki; _index = 4;
43217         if (_rank == _rankm) goto dispatch;
43218       }
43219     }
43220   check_4:
43221 
43222     if (items == 4) {
43223       SWIG_TypeRank _ranki = 0;
43224       SWIG_TypeRank _rankm = 0;
43225       SWIG_TypeRank _pi = 1;
43226       int _v = 0;
43227       {
43228         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
43229         _v = SWIG_CheckState(res);
43230       }
43231       if (!_v) goto check_5;
43232       _ranki += _v*_pi;
43233       _rankm += _pi;
43234       _pi *= SWIG_MAXCASTRANK;
43235       {
43236         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
43237         _v = SWIG_CheckState(res);
43238       }
43239       if (!_v) goto check_5;
43240       _ranki += _v*_pi;
43241       _rankm += _pi;
43242       _pi *= SWIG_MAXCASTRANK;
43243       {
43244         {
43245           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
43246           _v = SWIG_CheckState(res);
43247         }
43248       }
43249       if (!_v) goto check_5;
43250       _ranki += _v*_pi;
43251       _rankm += _pi;
43252       _pi *= SWIG_MAXCASTRANK;
43253       {
43254         {
43255           if (SvOK(ST(3)))
43256           _v = (sv_2io(ST(3))) ? 1 : 0;
43257         }
43258       }
43259       if (!_v) goto check_5;
43260       _ranki += _v*_pi;
43261       _rankm += _pi;
43262       _pi *= SWIG_MAXCASTRANK;
43263       if (!_index || (_ranki < _rank)) {
43264         _rank = _ranki; _index = 5;
43265         if (_rank == _rankm) goto dispatch;
43266       }
43267     }
43268   check_5:
43269 
43270     if (items == 4) {
43271       SWIG_TypeRank _ranki = 0;
43272       SWIG_TypeRank _rankm = 0;
43273       SWIG_TypeRank _pi = 1;
43274       int _v = 0;
43275       {
43276         {
43277           {
43278             /* wrapped vector? */
43279             std::vector< std::string >* v;
43280             if (SWIG_ConvertPtr(ST(0),(void **) &v,
43281                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
43282               _v = 1;
43283             } else if (SvROK(ST(0))) {
43284               /* native sequence? */
43285               AV *av = (AV *)SvRV(ST(0));
43286               if (SvTYPE(av) == SVt_PVAV) {
43287                 I32 len = av_len(av) + 1;
43288                 if (len == 0) {
43289                   /* an empty sequence can be of any type */
43290                   _v = 1;
43291                 } else {
43292                   /* check the first element only */
43293                   SV **tv = av_fetch(av, 0, 0);
43294                   if (SvPOK(*tv))
43295                   _v = 1;
43296                   else
43297                   _v = 0;
43298                 }
43299               }
43300             } else {
43301               _v = 0;
43302             }
43303           }
43304         }
43305       }
43306       if (!_v) goto check_6;
43307       _ranki += _v*_pi;
43308       _rankm += _pi;
43309       _pi *= SWIG_MAXCASTRANK;
43310       {
43311         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
43312         _v = SWIG_CheckState(res);
43313       }
43314       if (!_v) goto check_6;
43315       _ranki += _v*_pi;
43316       _rankm += _pi;
43317       _pi *= SWIG_MAXCASTRANK;
43318       {
43319         {
43320           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
43321           _v = SWIG_CheckState(res);
43322         }
43323       }
43324       if (!_v) goto check_6;
43325       _ranki += _v*_pi;
43326       _rankm += _pi;
43327       _pi *= SWIG_MAXCASTRANK;
43328       {
43329         {
43330           if (SvOK(ST(3)))
43331           _v = (sv_2io(ST(3))) ? 1 : 0;
43332         }
43333       }
43334       if (!_v) goto check_6;
43335       _ranki += _v*_pi;
43336       _rankm += _pi;
43337       _pi *= SWIG_MAXCASTRANK;
43338       if (!_index || (_ranki < _rank)) {
43339         _rank = _ranki; _index = 6;
43340         if (_rank == _rankm) goto dispatch;
43341       }
43342     }
43343   check_6:
43344 
43345   dispatch:
43346     switch(_index) {
43347     case 1:
43348       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_gquad_structure__SWIG_2); return;
43349     case 2:
43350       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_gquad_structure__SWIG_5); return;
43351     case 3:
43352       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_gquad_structure__SWIG_1); return;
43353     case 4:
43354       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_gquad_structure__SWIG_4); return;
43355     case 5:
43356       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_gquad_structure__SWIG_0); return;
43357     case 6:
43358       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_gquad_structure__SWIG_3); return;
43359     }
43360   }
43361 
43362   croak("No matching function for overloaded 'eval_gquad_structure'");
43363   XSRETURN(0);
43364 }
43365 
43366 
XS(_wrap_eval_circ_gquad_structure__SWIG_3)43367 XS(_wrap_eval_circ_gquad_structure__SWIG_3) {
43368   {
43369     std::vector< std::string > arg1 ;
43370     std::string arg2 ;
43371     int arg3 ;
43372     FILE *arg4 = (FILE *) 0 ;
43373     std::vector< std::string > *v1 ;
43374     int val3 ;
43375     int ecode3 = 0 ;
43376     int argvi = 0;
43377     float result;
43378     dXSARGS;
43379 
43380     if ((items < 4) || (items > 4)) {
43381       SWIG_croak("Usage: eval_circ_gquad_structure(alignment,structure,verbosity_level,file);");
43382     }
43383     {
43384       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
43385           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
43386         arg1 = *v1;
43387       } else if (SvROK(ST(0))) {
43388         AV *av = (AV *)SvRV(ST(0));
43389         if (SvTYPE(av) != SVt_PVAV)
43390         SWIG_croak("Type error in argument 1 of eval_circ_gquad_structure. "
43391           "Expected an array of ""std::string");
43392         SV **tv;
43393         I32 len = av_len(av) + 1;
43394         for (int i=0; i<len; i++) {
43395           tv = av_fetch(av, i, 0);
43396           if (SvPOK(*tv)) {
43397             (&arg1)->push_back((std::string)SwigSvToString(*tv));
43398           } else {
43399             SWIG_croak("Type error in argument 1 of "
43400               "eval_circ_gquad_structure. "
43401               "Expected an array of ""std::string");
43402           }
43403         }
43404       } else {
43405         SWIG_croak("Type error in argument 1 of eval_circ_gquad_structure. "
43406           "Expected an array of ""std::string");
43407       }
43408     }
43409     {
43410       std::string *ptr = (std::string *)0;
43411       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
43412       if (!SWIG_IsOK(res) || !ptr) {
43413         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_gquad_structure" "', argument " "2"" of type '" "std::string""'");
43414       }
43415       arg2 = *ptr;
43416       if (SWIG_IsNewObj(res)) delete ptr;
43417     }
43418     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
43419     if (!SWIG_IsOK(ecode3)) {
43420       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_circ_gquad_structure" "', argument " "3"" of type '" "int""'");
43421     }
43422     arg3 = static_cast< int >(val3);
43423     {
43424       if (SvOK(ST(3))) /* check for undef */
43425       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(3))));
43426       else  arg4 = NULL;
43427     }
43428     {
43429       try {
43430         result = (float)my_eval_circ_gquad_structure(arg1,arg2,arg3,arg4);
43431       } catch (const std::exception& e) {
43432         SWIG_exception(SWIG_RuntimeError, e.what());
43433       }
43434     }
43435     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
43436 
43437 
43438 
43439     XSRETURN(argvi);
43440   fail:
43441 
43442 
43443 
43444     SWIG_croak_null();
43445   }
43446 }
43447 
43448 
XS(_wrap_eval_circ_gquad_structure__SWIG_4)43449 XS(_wrap_eval_circ_gquad_structure__SWIG_4) {
43450   {
43451     std::vector< std::string > arg1 ;
43452     std::string arg2 ;
43453     int arg3 ;
43454     std::vector< std::string > *v1 ;
43455     int val3 ;
43456     int ecode3 = 0 ;
43457     int argvi = 0;
43458     float result;
43459     dXSARGS;
43460 
43461     if ((items < 3) || (items > 3)) {
43462       SWIG_croak("Usage: eval_circ_gquad_structure(alignment,structure,verbosity_level);");
43463     }
43464     {
43465       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
43466           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
43467         arg1 = *v1;
43468       } else if (SvROK(ST(0))) {
43469         AV *av = (AV *)SvRV(ST(0));
43470         if (SvTYPE(av) != SVt_PVAV)
43471         SWIG_croak("Type error in argument 1 of eval_circ_gquad_structure. "
43472           "Expected an array of ""std::string");
43473         SV **tv;
43474         I32 len = av_len(av) + 1;
43475         for (int i=0; i<len; i++) {
43476           tv = av_fetch(av, i, 0);
43477           if (SvPOK(*tv)) {
43478             (&arg1)->push_back((std::string)SwigSvToString(*tv));
43479           } else {
43480             SWIG_croak("Type error in argument 1 of "
43481               "eval_circ_gquad_structure. "
43482               "Expected an array of ""std::string");
43483           }
43484         }
43485       } else {
43486         SWIG_croak("Type error in argument 1 of eval_circ_gquad_structure. "
43487           "Expected an array of ""std::string");
43488       }
43489     }
43490     {
43491       std::string *ptr = (std::string *)0;
43492       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
43493       if (!SWIG_IsOK(res) || !ptr) {
43494         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_gquad_structure" "', argument " "2"" of type '" "std::string""'");
43495       }
43496       arg2 = *ptr;
43497       if (SWIG_IsNewObj(res)) delete ptr;
43498     }
43499     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
43500     if (!SWIG_IsOK(ecode3)) {
43501       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_circ_gquad_structure" "', argument " "3"" of type '" "int""'");
43502     }
43503     arg3 = static_cast< int >(val3);
43504     {
43505       try {
43506         result = (float)my_eval_circ_gquad_structure(arg1,arg2,arg3);
43507       } catch (const std::exception& e) {
43508         SWIG_exception(SWIG_RuntimeError, e.what());
43509       }
43510     }
43511     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
43512 
43513 
43514     XSRETURN(argvi);
43515   fail:
43516 
43517 
43518     SWIG_croak_null();
43519   }
43520 }
43521 
43522 
XS(_wrap_eval_circ_gquad_structure__SWIG_5)43523 XS(_wrap_eval_circ_gquad_structure__SWIG_5) {
43524   {
43525     std::vector< std::string > arg1 ;
43526     std::string arg2 ;
43527     std::vector< std::string > *v1 ;
43528     int argvi = 0;
43529     float result;
43530     dXSARGS;
43531 
43532     if ((items < 2) || (items > 2)) {
43533       SWIG_croak("Usage: eval_circ_gquad_structure(alignment,structure);");
43534     }
43535     {
43536       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
43537           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
43538         arg1 = *v1;
43539       } else if (SvROK(ST(0))) {
43540         AV *av = (AV *)SvRV(ST(0));
43541         if (SvTYPE(av) != SVt_PVAV)
43542         SWIG_croak("Type error in argument 1 of eval_circ_gquad_structure. "
43543           "Expected an array of ""std::string");
43544         SV **tv;
43545         I32 len = av_len(av) + 1;
43546         for (int i=0; i<len; i++) {
43547           tv = av_fetch(av, i, 0);
43548           if (SvPOK(*tv)) {
43549             (&arg1)->push_back((std::string)SwigSvToString(*tv));
43550           } else {
43551             SWIG_croak("Type error in argument 1 of "
43552               "eval_circ_gquad_structure. "
43553               "Expected an array of ""std::string");
43554           }
43555         }
43556       } else {
43557         SWIG_croak("Type error in argument 1 of eval_circ_gquad_structure. "
43558           "Expected an array of ""std::string");
43559       }
43560     }
43561     {
43562       std::string *ptr = (std::string *)0;
43563       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
43564       if (!SWIG_IsOK(res) || !ptr) {
43565         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_circ_gquad_structure" "', argument " "2"" of type '" "std::string""'");
43566       }
43567       arg2 = *ptr;
43568       if (SWIG_IsNewObj(res)) delete ptr;
43569     }
43570     {
43571       try {
43572         result = (float)my_eval_circ_gquad_structure(arg1,arg2);
43573       } catch (const std::exception& e) {
43574         SWIG_exception(SWIG_RuntimeError, e.what());
43575       }
43576     }
43577     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
43578 
43579     XSRETURN(argvi);
43580   fail:
43581 
43582     SWIG_croak_null();
43583   }
43584 }
43585 
43586 
XS(_wrap_eval_circ_gquad_structure)43587 XS(_wrap_eval_circ_gquad_structure) {
43588   dXSARGS;
43589 
43590   {
43591     unsigned long _index = 0;
43592     SWIG_TypeRank _rank = 0;
43593     if (items == 2) {
43594       SWIG_TypeRank _ranki = 0;
43595       SWIG_TypeRank _rankm = 0;
43596       SWIG_TypeRank _pi = 1;
43597       int _v = 0;
43598       {
43599         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
43600         _v = SWIG_CheckState(res);
43601       }
43602       if (!_v) goto check_1;
43603       _ranki += _v*_pi;
43604       _rankm += _pi;
43605       _pi *= SWIG_MAXCASTRANK;
43606       {
43607         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
43608         _v = SWIG_CheckState(res);
43609       }
43610       if (!_v) goto check_1;
43611       _ranki += _v*_pi;
43612       _rankm += _pi;
43613       _pi *= SWIG_MAXCASTRANK;
43614       if (!_index || (_ranki < _rank)) {
43615         _rank = _ranki; _index = 1;
43616         if (_rank == _rankm) goto dispatch;
43617       }
43618     }
43619   check_1:
43620 
43621     if (items == 2) {
43622       SWIG_TypeRank _ranki = 0;
43623       SWIG_TypeRank _rankm = 0;
43624       SWIG_TypeRank _pi = 1;
43625       int _v = 0;
43626       {
43627         {
43628           {
43629             /* wrapped vector? */
43630             std::vector< std::string >* v;
43631             if (SWIG_ConvertPtr(ST(0),(void **) &v,
43632                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
43633               _v = 1;
43634             } else if (SvROK(ST(0))) {
43635               /* native sequence? */
43636               AV *av = (AV *)SvRV(ST(0));
43637               if (SvTYPE(av) == SVt_PVAV) {
43638                 I32 len = av_len(av) + 1;
43639                 if (len == 0) {
43640                   /* an empty sequence can be of any type */
43641                   _v = 1;
43642                 } else {
43643                   /* check the first element only */
43644                   SV **tv = av_fetch(av, 0, 0);
43645                   if (SvPOK(*tv))
43646                   _v = 1;
43647                   else
43648                   _v = 0;
43649                 }
43650               }
43651             } else {
43652               _v = 0;
43653             }
43654           }
43655         }
43656       }
43657       if (!_v) goto check_2;
43658       _ranki += _v*_pi;
43659       _rankm += _pi;
43660       _pi *= SWIG_MAXCASTRANK;
43661       {
43662         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
43663         _v = SWIG_CheckState(res);
43664       }
43665       if (!_v) goto check_2;
43666       _ranki += _v*_pi;
43667       _rankm += _pi;
43668       _pi *= SWIG_MAXCASTRANK;
43669       if (!_index || (_ranki < _rank)) {
43670         _rank = _ranki; _index = 2;
43671         if (_rank == _rankm) goto dispatch;
43672       }
43673     }
43674   check_2:
43675 
43676     if (items == 3) {
43677       SWIG_TypeRank _ranki = 0;
43678       SWIG_TypeRank _rankm = 0;
43679       SWIG_TypeRank _pi = 1;
43680       int _v = 0;
43681       {
43682         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
43683         _v = SWIG_CheckState(res);
43684       }
43685       if (!_v) goto check_3;
43686       _ranki += _v*_pi;
43687       _rankm += _pi;
43688       _pi *= SWIG_MAXCASTRANK;
43689       {
43690         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
43691         _v = SWIG_CheckState(res);
43692       }
43693       if (!_v) goto check_3;
43694       _ranki += _v*_pi;
43695       _rankm += _pi;
43696       _pi *= SWIG_MAXCASTRANK;
43697       {
43698         {
43699           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
43700           _v = SWIG_CheckState(res);
43701         }
43702       }
43703       if (!_v) goto check_3;
43704       _ranki += _v*_pi;
43705       _rankm += _pi;
43706       _pi *= SWIG_MAXCASTRANK;
43707       if (!_index || (_ranki < _rank)) {
43708         _rank = _ranki; _index = 3;
43709         if (_rank == _rankm) goto dispatch;
43710       }
43711     }
43712   check_3:
43713 
43714     if (items == 3) {
43715       SWIG_TypeRank _ranki = 0;
43716       SWIG_TypeRank _rankm = 0;
43717       SWIG_TypeRank _pi = 1;
43718       int _v = 0;
43719       {
43720         {
43721           {
43722             /* wrapped vector? */
43723             std::vector< std::string >* v;
43724             if (SWIG_ConvertPtr(ST(0),(void **) &v,
43725                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
43726               _v = 1;
43727             } else if (SvROK(ST(0))) {
43728               /* native sequence? */
43729               AV *av = (AV *)SvRV(ST(0));
43730               if (SvTYPE(av) == SVt_PVAV) {
43731                 I32 len = av_len(av) + 1;
43732                 if (len == 0) {
43733                   /* an empty sequence can be of any type */
43734                   _v = 1;
43735                 } else {
43736                   /* check the first element only */
43737                   SV **tv = av_fetch(av, 0, 0);
43738                   if (SvPOK(*tv))
43739                   _v = 1;
43740                   else
43741                   _v = 0;
43742                 }
43743               }
43744             } else {
43745               _v = 0;
43746             }
43747           }
43748         }
43749       }
43750       if (!_v) goto check_4;
43751       _ranki += _v*_pi;
43752       _rankm += _pi;
43753       _pi *= SWIG_MAXCASTRANK;
43754       {
43755         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
43756         _v = SWIG_CheckState(res);
43757       }
43758       if (!_v) goto check_4;
43759       _ranki += _v*_pi;
43760       _rankm += _pi;
43761       _pi *= SWIG_MAXCASTRANK;
43762       {
43763         {
43764           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
43765           _v = SWIG_CheckState(res);
43766         }
43767       }
43768       if (!_v) goto check_4;
43769       _ranki += _v*_pi;
43770       _rankm += _pi;
43771       _pi *= SWIG_MAXCASTRANK;
43772       if (!_index || (_ranki < _rank)) {
43773         _rank = _ranki; _index = 4;
43774         if (_rank == _rankm) goto dispatch;
43775       }
43776     }
43777   check_4:
43778 
43779     if (items == 4) {
43780       SWIG_TypeRank _ranki = 0;
43781       SWIG_TypeRank _rankm = 0;
43782       SWIG_TypeRank _pi = 1;
43783       int _v = 0;
43784       {
43785         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
43786         _v = SWIG_CheckState(res);
43787       }
43788       if (!_v) goto check_5;
43789       _ranki += _v*_pi;
43790       _rankm += _pi;
43791       _pi *= SWIG_MAXCASTRANK;
43792       {
43793         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
43794         _v = SWIG_CheckState(res);
43795       }
43796       if (!_v) goto check_5;
43797       _ranki += _v*_pi;
43798       _rankm += _pi;
43799       _pi *= SWIG_MAXCASTRANK;
43800       {
43801         {
43802           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
43803           _v = SWIG_CheckState(res);
43804         }
43805       }
43806       if (!_v) goto check_5;
43807       _ranki += _v*_pi;
43808       _rankm += _pi;
43809       _pi *= SWIG_MAXCASTRANK;
43810       {
43811         {
43812           if (SvOK(ST(3)))
43813           _v = (sv_2io(ST(3))) ? 1 : 0;
43814         }
43815       }
43816       if (!_v) goto check_5;
43817       _ranki += _v*_pi;
43818       _rankm += _pi;
43819       _pi *= SWIG_MAXCASTRANK;
43820       if (!_index || (_ranki < _rank)) {
43821         _rank = _ranki; _index = 5;
43822         if (_rank == _rankm) goto dispatch;
43823       }
43824     }
43825   check_5:
43826 
43827     if (items == 4) {
43828       SWIG_TypeRank _ranki = 0;
43829       SWIG_TypeRank _rankm = 0;
43830       SWIG_TypeRank _pi = 1;
43831       int _v = 0;
43832       {
43833         {
43834           {
43835             /* wrapped vector? */
43836             std::vector< std::string >* v;
43837             if (SWIG_ConvertPtr(ST(0),(void **) &v,
43838                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
43839               _v = 1;
43840             } else if (SvROK(ST(0))) {
43841               /* native sequence? */
43842               AV *av = (AV *)SvRV(ST(0));
43843               if (SvTYPE(av) == SVt_PVAV) {
43844                 I32 len = av_len(av) + 1;
43845                 if (len == 0) {
43846                   /* an empty sequence can be of any type */
43847                   _v = 1;
43848                 } else {
43849                   /* check the first element only */
43850                   SV **tv = av_fetch(av, 0, 0);
43851                   if (SvPOK(*tv))
43852                   _v = 1;
43853                   else
43854                   _v = 0;
43855                 }
43856               }
43857             } else {
43858               _v = 0;
43859             }
43860           }
43861         }
43862       }
43863       if (!_v) goto check_6;
43864       _ranki += _v*_pi;
43865       _rankm += _pi;
43866       _pi *= SWIG_MAXCASTRANK;
43867       {
43868         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
43869         _v = SWIG_CheckState(res);
43870       }
43871       if (!_v) goto check_6;
43872       _ranki += _v*_pi;
43873       _rankm += _pi;
43874       _pi *= SWIG_MAXCASTRANK;
43875       {
43876         {
43877           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
43878           _v = SWIG_CheckState(res);
43879         }
43880       }
43881       if (!_v) goto check_6;
43882       _ranki += _v*_pi;
43883       _rankm += _pi;
43884       _pi *= SWIG_MAXCASTRANK;
43885       {
43886         {
43887           if (SvOK(ST(3)))
43888           _v = (sv_2io(ST(3))) ? 1 : 0;
43889         }
43890       }
43891       if (!_v) goto check_6;
43892       _ranki += _v*_pi;
43893       _rankm += _pi;
43894       _pi *= SWIG_MAXCASTRANK;
43895       if (!_index || (_ranki < _rank)) {
43896         _rank = _ranki; _index = 6;
43897         if (_rank == _rankm) goto dispatch;
43898       }
43899     }
43900   check_6:
43901 
43902   dispatch:
43903     switch(_index) {
43904     case 1:
43905       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_circ_gquad_structure__SWIG_2); return;
43906     case 2:
43907       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_circ_gquad_structure__SWIG_5); return;
43908     case 3:
43909       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_circ_gquad_structure__SWIG_1); return;
43910     case 4:
43911       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_circ_gquad_structure__SWIG_4); return;
43912     case 5:
43913       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_circ_gquad_structure__SWIG_0); return;
43914     case 6:
43915       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_circ_gquad_structure__SWIG_3); return;
43916     }
43917   }
43918 
43919   croak("No matching function for overloaded 'eval_circ_gquad_structure'");
43920   XSRETURN(0);
43921 }
43922 
43923 
XS(_wrap_eval_structure_pt_simple__SWIG_0)43924 XS(_wrap_eval_structure_pt_simple__SWIG_0) {
43925   {
43926     std::string arg1 ;
43927     std::vector< int > arg2 ;
43928     int arg3 ;
43929     FILE *arg4 = (FILE *) 0 ;
43930     std::vector< int > *v2 ;
43931     int val3 ;
43932     int ecode3 = 0 ;
43933     int argvi = 0;
43934     float result;
43935     dXSARGS;
43936 
43937     if ((items < 4) || (items > 4)) {
43938       SWIG_croak("Usage: eval_structure_pt_simple(sequence,pt,verbosity_level,file);");
43939     }
43940     {
43941       std::string *ptr = (std::string *)0;
43942       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
43943       if (!SWIG_IsOK(res) || !ptr) {
43944         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_structure_pt_simple" "', argument " "1"" of type '" "std::string""'");
43945       }
43946       arg1 = *ptr;
43947       if (SWIG_IsNewObj(res)) delete ptr;
43948     }
43949     {
43950       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
43951           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
43952         arg2 = *v2;
43953       } else if (SvROK(ST(1))) {
43954         AV *av = (AV *)SvRV(ST(1));
43955         if (SvTYPE(av) != SVt_PVAV)
43956         SWIG_croak("Type error in argument 2 of eval_structure_pt_simple. "
43957           "Expected an array of ""int");
43958         SV **tv;
43959         I32 len = av_len(av) + 1;
43960         for (int i=0; i<len; i++) {
43961           tv = av_fetch(av, i, 0);
43962           if (SvIOK(*tv)) {
43963             (&arg2)->push_back((int)SvIVX(*tv));
43964           } else {
43965             SWIG_croak("Type error in argument 2 of "
43966               "eval_structure_pt_simple. "
43967               "Expected an array of ""int");
43968           }
43969         }
43970       } else {
43971         SWIG_croak("Type error in argument 2 of eval_structure_pt_simple. "
43972           "Expected an array of ""int");
43973       }
43974     }
43975     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
43976     if (!SWIG_IsOK(ecode3)) {
43977       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_structure_pt_simple" "', argument " "3"" of type '" "int""'");
43978     }
43979     arg3 = static_cast< int >(val3);
43980     {
43981       if (SvOK(ST(3))) /* check for undef */
43982       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(3))));
43983       else  arg4 = NULL;
43984     }
43985     {
43986       try {
43987         result = (float)my_eval_structure_pt_simple(arg1,arg2,arg3,arg4);
43988       } catch (const std::exception& e) {
43989         SWIG_exception(SWIG_RuntimeError, e.what());
43990       }
43991     }
43992     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
43993 
43994 
43995 
43996     XSRETURN(argvi);
43997   fail:
43998 
43999 
44000 
44001     SWIG_croak_null();
44002   }
44003 }
44004 
44005 
XS(_wrap_eval_structure_pt_simple__SWIG_1)44006 XS(_wrap_eval_structure_pt_simple__SWIG_1) {
44007   {
44008     std::string arg1 ;
44009     std::vector< int > arg2 ;
44010     int arg3 ;
44011     std::vector< int > *v2 ;
44012     int val3 ;
44013     int ecode3 = 0 ;
44014     int argvi = 0;
44015     float result;
44016     dXSARGS;
44017 
44018     if ((items < 3) || (items > 3)) {
44019       SWIG_croak("Usage: eval_structure_pt_simple(sequence,pt,verbosity_level);");
44020     }
44021     {
44022       std::string *ptr = (std::string *)0;
44023       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
44024       if (!SWIG_IsOK(res) || !ptr) {
44025         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_structure_pt_simple" "', argument " "1"" of type '" "std::string""'");
44026       }
44027       arg1 = *ptr;
44028       if (SWIG_IsNewObj(res)) delete ptr;
44029     }
44030     {
44031       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
44032           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
44033         arg2 = *v2;
44034       } else if (SvROK(ST(1))) {
44035         AV *av = (AV *)SvRV(ST(1));
44036         if (SvTYPE(av) != SVt_PVAV)
44037         SWIG_croak("Type error in argument 2 of eval_structure_pt_simple. "
44038           "Expected an array of ""int");
44039         SV **tv;
44040         I32 len = av_len(av) + 1;
44041         for (int i=0; i<len; i++) {
44042           tv = av_fetch(av, i, 0);
44043           if (SvIOK(*tv)) {
44044             (&arg2)->push_back((int)SvIVX(*tv));
44045           } else {
44046             SWIG_croak("Type error in argument 2 of "
44047               "eval_structure_pt_simple. "
44048               "Expected an array of ""int");
44049           }
44050         }
44051       } else {
44052         SWIG_croak("Type error in argument 2 of eval_structure_pt_simple. "
44053           "Expected an array of ""int");
44054       }
44055     }
44056     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
44057     if (!SWIG_IsOK(ecode3)) {
44058       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_structure_pt_simple" "', argument " "3"" of type '" "int""'");
44059     }
44060     arg3 = static_cast< int >(val3);
44061     {
44062       try {
44063         result = (float)my_eval_structure_pt_simple(arg1,arg2,arg3);
44064       } catch (const std::exception& e) {
44065         SWIG_exception(SWIG_RuntimeError, e.what());
44066       }
44067     }
44068     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
44069 
44070 
44071     XSRETURN(argvi);
44072   fail:
44073 
44074 
44075     SWIG_croak_null();
44076   }
44077 }
44078 
44079 
XS(_wrap_eval_structure_pt_simple__SWIG_2)44080 XS(_wrap_eval_structure_pt_simple__SWIG_2) {
44081   {
44082     std::string arg1 ;
44083     std::vector< int > arg2 ;
44084     std::vector< int > *v2 ;
44085     int argvi = 0;
44086     float result;
44087     dXSARGS;
44088 
44089     if ((items < 2) || (items > 2)) {
44090       SWIG_croak("Usage: eval_structure_pt_simple(sequence,pt);");
44091     }
44092     {
44093       std::string *ptr = (std::string *)0;
44094       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
44095       if (!SWIG_IsOK(res) || !ptr) {
44096         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "eval_structure_pt_simple" "', argument " "1"" of type '" "std::string""'");
44097       }
44098       arg1 = *ptr;
44099       if (SWIG_IsNewObj(res)) delete ptr;
44100     }
44101     {
44102       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
44103           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
44104         arg2 = *v2;
44105       } else if (SvROK(ST(1))) {
44106         AV *av = (AV *)SvRV(ST(1));
44107         if (SvTYPE(av) != SVt_PVAV)
44108         SWIG_croak("Type error in argument 2 of eval_structure_pt_simple. "
44109           "Expected an array of ""int");
44110         SV **tv;
44111         I32 len = av_len(av) + 1;
44112         for (int i=0; i<len; i++) {
44113           tv = av_fetch(av, i, 0);
44114           if (SvIOK(*tv)) {
44115             (&arg2)->push_back((int)SvIVX(*tv));
44116           } else {
44117             SWIG_croak("Type error in argument 2 of "
44118               "eval_structure_pt_simple. "
44119               "Expected an array of ""int");
44120           }
44121         }
44122       } else {
44123         SWIG_croak("Type error in argument 2 of eval_structure_pt_simple. "
44124           "Expected an array of ""int");
44125       }
44126     }
44127     {
44128       try {
44129         result = (float)my_eval_structure_pt_simple(arg1,arg2);
44130       } catch (const std::exception& e) {
44131         SWIG_exception(SWIG_RuntimeError, e.what());
44132       }
44133     }
44134     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
44135 
44136     XSRETURN(argvi);
44137   fail:
44138 
44139     SWIG_croak_null();
44140   }
44141 }
44142 
44143 
XS(_wrap_eval_structure_pt_simple__SWIG_3)44144 XS(_wrap_eval_structure_pt_simple__SWIG_3) {
44145   {
44146     std::vector< std::string > arg1 ;
44147     std::vector< int > arg2 ;
44148     int arg3 ;
44149     FILE *arg4 = (FILE *) 0 ;
44150     std::vector< std::string > *v1 ;
44151     std::vector< int > *v2 ;
44152     int val3 ;
44153     int ecode3 = 0 ;
44154     int argvi = 0;
44155     float result;
44156     dXSARGS;
44157 
44158     if ((items < 4) || (items > 4)) {
44159       SWIG_croak("Usage: eval_structure_pt_simple(alignment,pt,verbosity_level,file);");
44160     }
44161     {
44162       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
44163           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
44164         arg1 = *v1;
44165       } else if (SvROK(ST(0))) {
44166         AV *av = (AV *)SvRV(ST(0));
44167         if (SvTYPE(av) != SVt_PVAV)
44168         SWIG_croak("Type error in argument 1 of eval_structure_pt_simple. "
44169           "Expected an array of ""std::string");
44170         SV **tv;
44171         I32 len = av_len(av) + 1;
44172         for (int i=0; i<len; i++) {
44173           tv = av_fetch(av, i, 0);
44174           if (SvPOK(*tv)) {
44175             (&arg1)->push_back((std::string)SwigSvToString(*tv));
44176           } else {
44177             SWIG_croak("Type error in argument 1 of "
44178               "eval_structure_pt_simple. "
44179               "Expected an array of ""std::string");
44180           }
44181         }
44182       } else {
44183         SWIG_croak("Type error in argument 1 of eval_structure_pt_simple. "
44184           "Expected an array of ""std::string");
44185       }
44186     }
44187     {
44188       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
44189           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
44190         arg2 = *v2;
44191       } else if (SvROK(ST(1))) {
44192         AV *av = (AV *)SvRV(ST(1));
44193         if (SvTYPE(av) != SVt_PVAV)
44194         SWIG_croak("Type error in argument 2 of eval_structure_pt_simple. "
44195           "Expected an array of ""int");
44196         SV **tv;
44197         I32 len = av_len(av) + 1;
44198         for (int i=0; i<len; i++) {
44199           tv = av_fetch(av, i, 0);
44200           if (SvIOK(*tv)) {
44201             (&arg2)->push_back((int)SvIVX(*tv));
44202           } else {
44203             SWIG_croak("Type error in argument 2 of "
44204               "eval_structure_pt_simple. "
44205               "Expected an array of ""int");
44206           }
44207         }
44208       } else {
44209         SWIG_croak("Type error in argument 2 of eval_structure_pt_simple. "
44210           "Expected an array of ""int");
44211       }
44212     }
44213     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
44214     if (!SWIG_IsOK(ecode3)) {
44215       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_structure_pt_simple" "', argument " "3"" of type '" "int""'");
44216     }
44217     arg3 = static_cast< int >(val3);
44218     {
44219       if (SvOK(ST(3))) /* check for undef */
44220       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(3))));
44221       else  arg4 = NULL;
44222     }
44223     {
44224       try {
44225         result = (float)my_eval_structure_pt_simple(arg1,arg2,arg3,arg4);
44226       } catch (const std::exception& e) {
44227         SWIG_exception(SWIG_RuntimeError, e.what());
44228       }
44229     }
44230     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
44231 
44232 
44233     XSRETURN(argvi);
44234   fail:
44235 
44236 
44237     SWIG_croak_null();
44238   }
44239 }
44240 
44241 
XS(_wrap_eval_structure_pt_simple__SWIG_4)44242 XS(_wrap_eval_structure_pt_simple__SWIG_4) {
44243   {
44244     std::vector< std::string > arg1 ;
44245     std::vector< int > arg2 ;
44246     int arg3 ;
44247     std::vector< std::string > *v1 ;
44248     std::vector< int > *v2 ;
44249     int val3 ;
44250     int ecode3 = 0 ;
44251     int argvi = 0;
44252     float result;
44253     dXSARGS;
44254 
44255     if ((items < 3) || (items > 3)) {
44256       SWIG_croak("Usage: eval_structure_pt_simple(alignment,pt,verbosity_level);");
44257     }
44258     {
44259       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
44260           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
44261         arg1 = *v1;
44262       } else if (SvROK(ST(0))) {
44263         AV *av = (AV *)SvRV(ST(0));
44264         if (SvTYPE(av) != SVt_PVAV)
44265         SWIG_croak("Type error in argument 1 of eval_structure_pt_simple. "
44266           "Expected an array of ""std::string");
44267         SV **tv;
44268         I32 len = av_len(av) + 1;
44269         for (int i=0; i<len; i++) {
44270           tv = av_fetch(av, i, 0);
44271           if (SvPOK(*tv)) {
44272             (&arg1)->push_back((std::string)SwigSvToString(*tv));
44273           } else {
44274             SWIG_croak("Type error in argument 1 of "
44275               "eval_structure_pt_simple. "
44276               "Expected an array of ""std::string");
44277           }
44278         }
44279       } else {
44280         SWIG_croak("Type error in argument 1 of eval_structure_pt_simple. "
44281           "Expected an array of ""std::string");
44282       }
44283     }
44284     {
44285       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
44286           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
44287         arg2 = *v2;
44288       } else if (SvROK(ST(1))) {
44289         AV *av = (AV *)SvRV(ST(1));
44290         if (SvTYPE(av) != SVt_PVAV)
44291         SWIG_croak("Type error in argument 2 of eval_structure_pt_simple. "
44292           "Expected an array of ""int");
44293         SV **tv;
44294         I32 len = av_len(av) + 1;
44295         for (int i=0; i<len; i++) {
44296           tv = av_fetch(av, i, 0);
44297           if (SvIOK(*tv)) {
44298             (&arg2)->push_back((int)SvIVX(*tv));
44299           } else {
44300             SWIG_croak("Type error in argument 2 of "
44301               "eval_structure_pt_simple. "
44302               "Expected an array of ""int");
44303           }
44304         }
44305       } else {
44306         SWIG_croak("Type error in argument 2 of eval_structure_pt_simple. "
44307           "Expected an array of ""int");
44308       }
44309     }
44310     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
44311     if (!SWIG_IsOK(ecode3)) {
44312       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "eval_structure_pt_simple" "', argument " "3"" of type '" "int""'");
44313     }
44314     arg3 = static_cast< int >(val3);
44315     {
44316       try {
44317         result = (float)my_eval_structure_pt_simple(arg1,arg2,arg3);
44318       } catch (const std::exception& e) {
44319         SWIG_exception(SWIG_RuntimeError, e.what());
44320       }
44321     }
44322     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
44323 
44324     XSRETURN(argvi);
44325   fail:
44326 
44327     SWIG_croak_null();
44328   }
44329 }
44330 
44331 
XS(_wrap_eval_structure_pt_simple__SWIG_5)44332 XS(_wrap_eval_structure_pt_simple__SWIG_5) {
44333   {
44334     std::vector< std::string > arg1 ;
44335     std::vector< int > arg2 ;
44336     std::vector< std::string > *v1 ;
44337     std::vector< int > *v2 ;
44338     int argvi = 0;
44339     float result;
44340     dXSARGS;
44341 
44342     if ((items < 2) || (items > 2)) {
44343       SWIG_croak("Usage: eval_structure_pt_simple(alignment,pt);");
44344     }
44345     {
44346       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
44347           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
44348         arg1 = *v1;
44349       } else if (SvROK(ST(0))) {
44350         AV *av = (AV *)SvRV(ST(0));
44351         if (SvTYPE(av) != SVt_PVAV)
44352         SWIG_croak("Type error in argument 1 of eval_structure_pt_simple. "
44353           "Expected an array of ""std::string");
44354         SV **tv;
44355         I32 len = av_len(av) + 1;
44356         for (int i=0; i<len; i++) {
44357           tv = av_fetch(av, i, 0);
44358           if (SvPOK(*tv)) {
44359             (&arg1)->push_back((std::string)SwigSvToString(*tv));
44360           } else {
44361             SWIG_croak("Type error in argument 1 of "
44362               "eval_structure_pt_simple. "
44363               "Expected an array of ""std::string");
44364           }
44365         }
44366       } else {
44367         SWIG_croak("Type error in argument 1 of eval_structure_pt_simple. "
44368           "Expected an array of ""std::string");
44369       }
44370     }
44371     {
44372       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
44373           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
44374         arg2 = *v2;
44375       } else if (SvROK(ST(1))) {
44376         AV *av = (AV *)SvRV(ST(1));
44377         if (SvTYPE(av) != SVt_PVAV)
44378         SWIG_croak("Type error in argument 2 of eval_structure_pt_simple. "
44379           "Expected an array of ""int");
44380         SV **tv;
44381         I32 len = av_len(av) + 1;
44382         for (int i=0; i<len; i++) {
44383           tv = av_fetch(av, i, 0);
44384           if (SvIOK(*tv)) {
44385             (&arg2)->push_back((int)SvIVX(*tv));
44386           } else {
44387             SWIG_croak("Type error in argument 2 of "
44388               "eval_structure_pt_simple. "
44389               "Expected an array of ""int");
44390           }
44391         }
44392       } else {
44393         SWIG_croak("Type error in argument 2 of eval_structure_pt_simple. "
44394           "Expected an array of ""int");
44395       }
44396     }
44397     {
44398       try {
44399         result = (float)my_eval_structure_pt_simple(arg1,arg2);
44400       } catch (const std::exception& e) {
44401         SWIG_exception(SWIG_RuntimeError, e.what());
44402       }
44403     }
44404     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
44405     XSRETURN(argvi);
44406   fail:
44407     SWIG_croak_null();
44408   }
44409 }
44410 
44411 
XS(_wrap_eval_structure_pt_simple)44412 XS(_wrap_eval_structure_pt_simple) {
44413   dXSARGS;
44414 
44415   {
44416     unsigned long _index = 0;
44417     SWIG_TypeRank _rank = 0;
44418     if (items == 2) {
44419       SWIG_TypeRank _ranki = 0;
44420       SWIG_TypeRank _rankm = 0;
44421       SWIG_TypeRank _pi = 1;
44422       int _v = 0;
44423       {
44424         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
44425         _v = SWIG_CheckState(res);
44426       }
44427       if (!_v) goto check_1;
44428       _ranki += _v*_pi;
44429       _rankm += _pi;
44430       _pi *= SWIG_MAXCASTRANK;
44431       {
44432         {
44433           {
44434             /* wrapped vector? */
44435             std::vector< int >* v;
44436             if (SWIG_ConvertPtr(ST(1),(void **) &v,
44437                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
44438               _v = 1;
44439             } else if (SvROK(ST(1))) {
44440               /* native sequence? */
44441               AV *av = (AV *)SvRV(ST(1));
44442               if (SvTYPE(av) == SVt_PVAV) {
44443                 I32 len = av_len(av) + 1;
44444                 if (len == 0) {
44445                   /* an empty sequence can be of any type */
44446                   _v = 1;
44447                 } else {
44448                   /* check the first element only */
44449                   SV **tv = av_fetch(av, 0, 0);
44450                   if (SvIOK(*tv))
44451                   _v = 1;
44452                   else
44453                   _v = 0;
44454                 }
44455               }
44456             } else {
44457               _v = 0;
44458             }
44459           }
44460         }
44461       }
44462       if (!_v) goto check_1;
44463       _ranki += _v*_pi;
44464       _rankm += _pi;
44465       _pi *= SWIG_MAXCASTRANK;
44466       if (!_index || (_ranki < _rank)) {
44467         _rank = _ranki; _index = 1;
44468         if (_rank == _rankm) goto dispatch;
44469       }
44470     }
44471   check_1:
44472 
44473     if (items == 2) {
44474       SWIG_TypeRank _ranki = 0;
44475       SWIG_TypeRank _rankm = 0;
44476       SWIG_TypeRank _pi = 1;
44477       int _v = 0;
44478       {
44479         {
44480           {
44481             /* wrapped vector? */
44482             std::vector< std::string >* v;
44483             if (SWIG_ConvertPtr(ST(0),(void **) &v,
44484                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
44485               _v = 1;
44486             } else if (SvROK(ST(0))) {
44487               /* native sequence? */
44488               AV *av = (AV *)SvRV(ST(0));
44489               if (SvTYPE(av) == SVt_PVAV) {
44490                 I32 len = av_len(av) + 1;
44491                 if (len == 0) {
44492                   /* an empty sequence can be of any type */
44493                   _v = 1;
44494                 } else {
44495                   /* check the first element only */
44496                   SV **tv = av_fetch(av, 0, 0);
44497                   if (SvPOK(*tv))
44498                   _v = 1;
44499                   else
44500                   _v = 0;
44501                 }
44502               }
44503             } else {
44504               _v = 0;
44505             }
44506           }
44507         }
44508       }
44509       if (!_v) goto check_2;
44510       _ranki += _v*_pi;
44511       _rankm += _pi;
44512       _pi *= SWIG_MAXCASTRANK;
44513       {
44514         {
44515           {
44516             /* wrapped vector? */
44517             std::vector< int >* v;
44518             if (SWIG_ConvertPtr(ST(1),(void **) &v,
44519                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
44520               _v = 1;
44521             } else if (SvROK(ST(1))) {
44522               /* native sequence? */
44523               AV *av = (AV *)SvRV(ST(1));
44524               if (SvTYPE(av) == SVt_PVAV) {
44525                 I32 len = av_len(av) + 1;
44526                 if (len == 0) {
44527                   /* an empty sequence can be of any type */
44528                   _v = 1;
44529                 } else {
44530                   /* check the first element only */
44531                   SV **tv = av_fetch(av, 0, 0);
44532                   if (SvIOK(*tv))
44533                   _v = 1;
44534                   else
44535                   _v = 0;
44536                 }
44537               }
44538             } else {
44539               _v = 0;
44540             }
44541           }
44542         }
44543       }
44544       if (!_v) goto check_2;
44545       _ranki += _v*_pi;
44546       _rankm += _pi;
44547       _pi *= SWIG_MAXCASTRANK;
44548       if (!_index || (_ranki < _rank)) {
44549         _rank = _ranki; _index = 2;
44550         if (_rank == _rankm) goto dispatch;
44551       }
44552     }
44553   check_2:
44554 
44555     if (items == 3) {
44556       SWIG_TypeRank _ranki = 0;
44557       SWIG_TypeRank _rankm = 0;
44558       SWIG_TypeRank _pi = 1;
44559       int _v = 0;
44560       {
44561         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
44562         _v = SWIG_CheckState(res);
44563       }
44564       if (!_v) goto check_3;
44565       _ranki += _v*_pi;
44566       _rankm += _pi;
44567       _pi *= SWIG_MAXCASTRANK;
44568       {
44569         {
44570           {
44571             /* wrapped vector? */
44572             std::vector< int >* v;
44573             if (SWIG_ConvertPtr(ST(1),(void **) &v,
44574                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
44575               _v = 1;
44576             } else if (SvROK(ST(1))) {
44577               /* native sequence? */
44578               AV *av = (AV *)SvRV(ST(1));
44579               if (SvTYPE(av) == SVt_PVAV) {
44580                 I32 len = av_len(av) + 1;
44581                 if (len == 0) {
44582                   /* an empty sequence can be of any type */
44583                   _v = 1;
44584                 } else {
44585                   /* check the first element only */
44586                   SV **tv = av_fetch(av, 0, 0);
44587                   if (SvIOK(*tv))
44588                   _v = 1;
44589                   else
44590                   _v = 0;
44591                 }
44592               }
44593             } else {
44594               _v = 0;
44595             }
44596           }
44597         }
44598       }
44599       if (!_v) goto check_3;
44600       _ranki += _v*_pi;
44601       _rankm += _pi;
44602       _pi *= SWIG_MAXCASTRANK;
44603       {
44604         {
44605           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
44606           _v = SWIG_CheckState(res);
44607         }
44608       }
44609       if (!_v) goto check_3;
44610       _ranki += _v*_pi;
44611       _rankm += _pi;
44612       _pi *= SWIG_MAXCASTRANK;
44613       if (!_index || (_ranki < _rank)) {
44614         _rank = _ranki; _index = 3;
44615         if (_rank == _rankm) goto dispatch;
44616       }
44617     }
44618   check_3:
44619 
44620     if (items == 3) {
44621       SWIG_TypeRank _ranki = 0;
44622       SWIG_TypeRank _rankm = 0;
44623       SWIG_TypeRank _pi = 1;
44624       int _v = 0;
44625       {
44626         {
44627           {
44628             /* wrapped vector? */
44629             std::vector< std::string >* v;
44630             if (SWIG_ConvertPtr(ST(0),(void **) &v,
44631                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
44632               _v = 1;
44633             } else if (SvROK(ST(0))) {
44634               /* native sequence? */
44635               AV *av = (AV *)SvRV(ST(0));
44636               if (SvTYPE(av) == SVt_PVAV) {
44637                 I32 len = av_len(av) + 1;
44638                 if (len == 0) {
44639                   /* an empty sequence can be of any type */
44640                   _v = 1;
44641                 } else {
44642                   /* check the first element only */
44643                   SV **tv = av_fetch(av, 0, 0);
44644                   if (SvPOK(*tv))
44645                   _v = 1;
44646                   else
44647                   _v = 0;
44648                 }
44649               }
44650             } else {
44651               _v = 0;
44652             }
44653           }
44654         }
44655       }
44656       if (!_v) goto check_4;
44657       _ranki += _v*_pi;
44658       _rankm += _pi;
44659       _pi *= SWIG_MAXCASTRANK;
44660       {
44661         {
44662           {
44663             /* wrapped vector? */
44664             std::vector< int >* v;
44665             if (SWIG_ConvertPtr(ST(1),(void **) &v,
44666                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
44667               _v = 1;
44668             } else if (SvROK(ST(1))) {
44669               /* native sequence? */
44670               AV *av = (AV *)SvRV(ST(1));
44671               if (SvTYPE(av) == SVt_PVAV) {
44672                 I32 len = av_len(av) + 1;
44673                 if (len == 0) {
44674                   /* an empty sequence can be of any type */
44675                   _v = 1;
44676                 } else {
44677                   /* check the first element only */
44678                   SV **tv = av_fetch(av, 0, 0);
44679                   if (SvIOK(*tv))
44680                   _v = 1;
44681                   else
44682                   _v = 0;
44683                 }
44684               }
44685             } else {
44686               _v = 0;
44687             }
44688           }
44689         }
44690       }
44691       if (!_v) goto check_4;
44692       _ranki += _v*_pi;
44693       _rankm += _pi;
44694       _pi *= SWIG_MAXCASTRANK;
44695       {
44696         {
44697           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
44698           _v = SWIG_CheckState(res);
44699         }
44700       }
44701       if (!_v) goto check_4;
44702       _ranki += _v*_pi;
44703       _rankm += _pi;
44704       _pi *= SWIG_MAXCASTRANK;
44705       if (!_index || (_ranki < _rank)) {
44706         _rank = _ranki; _index = 4;
44707         if (_rank == _rankm) goto dispatch;
44708       }
44709     }
44710   check_4:
44711 
44712     if (items == 4) {
44713       SWIG_TypeRank _ranki = 0;
44714       SWIG_TypeRank _rankm = 0;
44715       SWIG_TypeRank _pi = 1;
44716       int _v = 0;
44717       {
44718         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
44719         _v = SWIG_CheckState(res);
44720       }
44721       if (!_v) goto check_5;
44722       _ranki += _v*_pi;
44723       _rankm += _pi;
44724       _pi *= SWIG_MAXCASTRANK;
44725       {
44726         {
44727           {
44728             /* wrapped vector? */
44729             std::vector< int >* v;
44730             if (SWIG_ConvertPtr(ST(1),(void **) &v,
44731                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
44732               _v = 1;
44733             } else if (SvROK(ST(1))) {
44734               /* native sequence? */
44735               AV *av = (AV *)SvRV(ST(1));
44736               if (SvTYPE(av) == SVt_PVAV) {
44737                 I32 len = av_len(av) + 1;
44738                 if (len == 0) {
44739                   /* an empty sequence can be of any type */
44740                   _v = 1;
44741                 } else {
44742                   /* check the first element only */
44743                   SV **tv = av_fetch(av, 0, 0);
44744                   if (SvIOK(*tv))
44745                   _v = 1;
44746                   else
44747                   _v = 0;
44748                 }
44749               }
44750             } else {
44751               _v = 0;
44752             }
44753           }
44754         }
44755       }
44756       if (!_v) goto check_5;
44757       _ranki += _v*_pi;
44758       _rankm += _pi;
44759       _pi *= SWIG_MAXCASTRANK;
44760       {
44761         {
44762           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
44763           _v = SWIG_CheckState(res);
44764         }
44765       }
44766       if (!_v) goto check_5;
44767       _ranki += _v*_pi;
44768       _rankm += _pi;
44769       _pi *= SWIG_MAXCASTRANK;
44770       {
44771         {
44772           if (SvOK(ST(3)))
44773           _v = (sv_2io(ST(3))) ? 1 : 0;
44774         }
44775       }
44776       if (!_v) goto check_5;
44777       _ranki += _v*_pi;
44778       _rankm += _pi;
44779       _pi *= SWIG_MAXCASTRANK;
44780       if (!_index || (_ranki < _rank)) {
44781         _rank = _ranki; _index = 5;
44782         if (_rank == _rankm) goto dispatch;
44783       }
44784     }
44785   check_5:
44786 
44787     if (items == 4) {
44788       SWIG_TypeRank _ranki = 0;
44789       SWIG_TypeRank _rankm = 0;
44790       SWIG_TypeRank _pi = 1;
44791       int _v = 0;
44792       {
44793         {
44794           {
44795             /* wrapped vector? */
44796             std::vector< std::string >* v;
44797             if (SWIG_ConvertPtr(ST(0),(void **) &v,
44798                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
44799               _v = 1;
44800             } else if (SvROK(ST(0))) {
44801               /* native sequence? */
44802               AV *av = (AV *)SvRV(ST(0));
44803               if (SvTYPE(av) == SVt_PVAV) {
44804                 I32 len = av_len(av) + 1;
44805                 if (len == 0) {
44806                   /* an empty sequence can be of any type */
44807                   _v = 1;
44808                 } else {
44809                   /* check the first element only */
44810                   SV **tv = av_fetch(av, 0, 0);
44811                   if (SvPOK(*tv))
44812                   _v = 1;
44813                   else
44814                   _v = 0;
44815                 }
44816               }
44817             } else {
44818               _v = 0;
44819             }
44820           }
44821         }
44822       }
44823       if (!_v) goto check_6;
44824       _ranki += _v*_pi;
44825       _rankm += _pi;
44826       _pi *= SWIG_MAXCASTRANK;
44827       {
44828         {
44829           {
44830             /* wrapped vector? */
44831             std::vector< int >* v;
44832             if (SWIG_ConvertPtr(ST(1),(void **) &v,
44833                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
44834               _v = 1;
44835             } else if (SvROK(ST(1))) {
44836               /* native sequence? */
44837               AV *av = (AV *)SvRV(ST(1));
44838               if (SvTYPE(av) == SVt_PVAV) {
44839                 I32 len = av_len(av) + 1;
44840                 if (len == 0) {
44841                   /* an empty sequence can be of any type */
44842                   _v = 1;
44843                 } else {
44844                   /* check the first element only */
44845                   SV **tv = av_fetch(av, 0, 0);
44846                   if (SvIOK(*tv))
44847                   _v = 1;
44848                   else
44849                   _v = 0;
44850                 }
44851               }
44852             } else {
44853               _v = 0;
44854             }
44855           }
44856         }
44857       }
44858       if (!_v) goto check_6;
44859       _ranki += _v*_pi;
44860       _rankm += _pi;
44861       _pi *= SWIG_MAXCASTRANK;
44862       {
44863         {
44864           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
44865           _v = SWIG_CheckState(res);
44866         }
44867       }
44868       if (!_v) goto check_6;
44869       _ranki += _v*_pi;
44870       _rankm += _pi;
44871       _pi *= SWIG_MAXCASTRANK;
44872       {
44873         {
44874           if (SvOK(ST(3)))
44875           _v = (sv_2io(ST(3))) ? 1 : 0;
44876         }
44877       }
44878       if (!_v) goto check_6;
44879       _ranki += _v*_pi;
44880       _rankm += _pi;
44881       _pi *= SWIG_MAXCASTRANK;
44882       if (!_index || (_ranki < _rank)) {
44883         _rank = _ranki; _index = 6;
44884         if (_rank == _rankm) goto dispatch;
44885       }
44886     }
44887   check_6:
44888 
44889   dispatch:
44890     switch(_index) {
44891     case 1:
44892       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_structure_pt_simple__SWIG_2); return;
44893     case 2:
44894       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_structure_pt_simple__SWIG_5); return;
44895     case 3:
44896       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_structure_pt_simple__SWIG_1); return;
44897     case 4:
44898       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_structure_pt_simple__SWIG_4); return;
44899     case 5:
44900       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_structure_pt_simple__SWIG_0); return;
44901     case 6:
44902       PUSHMARK(MARK); SWIG_CALLXS(_wrap_eval_structure_pt_simple__SWIG_3); return;
44903     }
44904   }
44905 
44906   croak("No matching function for overloaded 'eval_structure_pt_simple'");
44907   XSRETURN(0);
44908 }
44909 
44910 
XS(_wrap_energy_of_structure)44911 XS(_wrap_energy_of_structure) {
44912   {
44913     char *arg1 = (char *) 0 ;
44914     char *arg2 = (char *) 0 ;
44915     int arg3 ;
44916     int res1 ;
44917     char *buf1 = 0 ;
44918     int alloc1 = 0 ;
44919     int res2 ;
44920     char *buf2 = 0 ;
44921     int alloc2 = 0 ;
44922     int val3 ;
44923     int ecode3 = 0 ;
44924     int argvi = 0;
44925     float result;
44926     dXSARGS;
44927 
44928     if ((items < 3) || (items > 3)) {
44929       SWIG_croak("Usage: energy_of_structure(string,structure,verbosity_level);");
44930     }
44931     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
44932     if (!SWIG_IsOK(res1)) {
44933       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "energy_of_structure" "', argument " "1"" of type '" "char const *""'");
44934     }
44935     arg1 = reinterpret_cast< char * >(buf1);
44936     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
44937     if (!SWIG_IsOK(res2)) {
44938       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "energy_of_structure" "', argument " "2"" of type '" "char const *""'");
44939     }
44940     arg2 = reinterpret_cast< char * >(buf2);
44941     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
44942     if (!SWIG_IsOK(ecode3)) {
44943       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "energy_of_structure" "', argument " "3"" of type '" "int""'");
44944     }
44945     arg3 = static_cast< int >(val3);
44946     {
44947       try {
44948         result = (float)energy_of_structure((char const *)arg1,(char const *)arg2,arg3);
44949       } catch (const std::exception& e) {
44950         SWIG_exception(SWIG_RuntimeError, e.what());
44951       }
44952     }
44953     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
44954     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
44955     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
44956 
44957     XSRETURN(argvi);
44958   fail:
44959     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
44960     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
44961 
44962     SWIG_croak_null();
44963   }
44964 }
44965 
44966 
XS(_wrap_energy_of_circ_structure)44967 XS(_wrap_energy_of_circ_structure) {
44968   {
44969     char *arg1 = (char *) 0 ;
44970     char *arg2 = (char *) 0 ;
44971     int arg3 ;
44972     int res1 ;
44973     char *buf1 = 0 ;
44974     int alloc1 = 0 ;
44975     int res2 ;
44976     char *buf2 = 0 ;
44977     int alloc2 = 0 ;
44978     int val3 ;
44979     int ecode3 = 0 ;
44980     int argvi = 0;
44981     float result;
44982     dXSARGS;
44983 
44984     if ((items < 3) || (items > 3)) {
44985       SWIG_croak("Usage: energy_of_circ_structure(string,structure,verbosity_level);");
44986     }
44987     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
44988     if (!SWIG_IsOK(res1)) {
44989       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "energy_of_circ_structure" "', argument " "1"" of type '" "char const *""'");
44990     }
44991     arg1 = reinterpret_cast< char * >(buf1);
44992     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
44993     if (!SWIG_IsOK(res2)) {
44994       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "energy_of_circ_structure" "', argument " "2"" of type '" "char const *""'");
44995     }
44996     arg2 = reinterpret_cast< char * >(buf2);
44997     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
44998     if (!SWIG_IsOK(ecode3)) {
44999       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "energy_of_circ_structure" "', argument " "3"" of type '" "int""'");
45000     }
45001     arg3 = static_cast< int >(val3);
45002     {
45003       try {
45004         result = (float)energy_of_circ_structure((char const *)arg1,(char const *)arg2,arg3);
45005       } catch (const std::exception& e) {
45006         SWIG_exception(SWIG_RuntimeError, e.what());
45007       }
45008     }
45009     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
45010     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
45011     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
45012 
45013     XSRETURN(argvi);
45014   fail:
45015     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
45016     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
45017 
45018     SWIG_croak_null();
45019   }
45020 }
45021 
45022 
XS(_wrap_energy_of_gquad_structure)45023 XS(_wrap_energy_of_gquad_structure) {
45024   {
45025     char *arg1 = (char *) 0 ;
45026     char *arg2 = (char *) 0 ;
45027     int arg3 ;
45028     int res1 ;
45029     char *buf1 = 0 ;
45030     int alloc1 = 0 ;
45031     int res2 ;
45032     char *buf2 = 0 ;
45033     int alloc2 = 0 ;
45034     int val3 ;
45035     int ecode3 = 0 ;
45036     int argvi = 0;
45037     float result;
45038     dXSARGS;
45039 
45040     if ((items < 3) || (items > 3)) {
45041       SWIG_croak("Usage: energy_of_gquad_structure(string,structure,verbosity_level);");
45042     }
45043     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
45044     if (!SWIG_IsOK(res1)) {
45045       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "energy_of_gquad_structure" "', argument " "1"" of type '" "char const *""'");
45046     }
45047     arg1 = reinterpret_cast< char * >(buf1);
45048     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
45049     if (!SWIG_IsOK(res2)) {
45050       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "energy_of_gquad_structure" "', argument " "2"" of type '" "char const *""'");
45051     }
45052     arg2 = reinterpret_cast< char * >(buf2);
45053     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
45054     if (!SWIG_IsOK(ecode3)) {
45055       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "energy_of_gquad_structure" "', argument " "3"" of type '" "int""'");
45056     }
45057     arg3 = static_cast< int >(val3);
45058     {
45059       try {
45060         result = (float)energy_of_gquad_structure((char const *)arg1,(char const *)arg2,arg3);
45061       } catch (const std::exception& e) {
45062         SWIG_exception(SWIG_RuntimeError, e.what());
45063       }
45064     }
45065     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
45066     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
45067     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
45068 
45069     XSRETURN(argvi);
45070   fail:
45071     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
45072     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
45073 
45074     SWIG_croak_null();
45075   }
45076 }
45077 
45078 
XS(_wrap_energy_of_structure_pt)45079 XS(_wrap_energy_of_structure_pt) {
45080   {
45081     char *arg1 = (char *) 0 ;
45082     short *arg2 = (short *) 0 ;
45083     short *arg3 = (short *) 0 ;
45084     short *arg4 = (short *) 0 ;
45085     int arg5 ;
45086     int res1 ;
45087     char *buf1 = 0 ;
45088     int alloc1 = 0 ;
45089     void *argp2 = 0 ;
45090     int res2 = 0 ;
45091     void *argp3 = 0 ;
45092     int res3 = 0 ;
45093     void *argp4 = 0 ;
45094     int res4 = 0 ;
45095     int val5 ;
45096     int ecode5 = 0 ;
45097     int argvi = 0;
45098     int result;
45099     dXSARGS;
45100 
45101     if ((items < 5) || (items > 5)) {
45102       SWIG_croak("Usage: energy_of_structure_pt(string,ptable,s,s1,verbosity_level);");
45103     }
45104     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
45105     if (!SWIG_IsOK(res1)) {
45106       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "energy_of_structure_pt" "', argument " "1"" of type '" "char const *""'");
45107     }
45108     arg1 = reinterpret_cast< char * >(buf1);
45109     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_short, 0 |  0 );
45110     if (!SWIG_IsOK(res2)) {
45111       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "energy_of_structure_pt" "', argument " "2"" of type '" "short *""'");
45112     }
45113     arg2 = reinterpret_cast< short * >(argp2);
45114     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_short, 0 |  0 );
45115     if (!SWIG_IsOK(res3)) {
45116       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "energy_of_structure_pt" "', argument " "3"" of type '" "short *""'");
45117     }
45118     arg3 = reinterpret_cast< short * >(argp3);
45119     res4 = SWIG_ConvertPtr(ST(3), &argp4,SWIGTYPE_p_short, 0 |  0 );
45120     if (!SWIG_IsOK(res4)) {
45121       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "energy_of_structure_pt" "', argument " "4"" of type '" "short *""'");
45122     }
45123     arg4 = reinterpret_cast< short * >(argp4);
45124     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
45125     if (!SWIG_IsOK(ecode5)) {
45126       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "energy_of_structure_pt" "', argument " "5"" of type '" "int""'");
45127     }
45128     arg5 = static_cast< int >(val5);
45129     {
45130       try {
45131         result = (int)energy_of_structure_pt((char const *)arg1,arg2,arg3,arg4,arg5);
45132       } catch (const std::exception& e) {
45133         SWIG_exception(SWIG_RuntimeError, e.what());
45134       }
45135     }
45136     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
45137     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
45138 
45139 
45140 
45141 
45142     XSRETURN(argvi);
45143   fail:
45144     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
45145 
45146 
45147 
45148 
45149     SWIG_croak_null();
45150   }
45151 }
45152 
45153 
XS(_wrap_energy_of_move)45154 XS(_wrap_energy_of_move) {
45155   {
45156     char *arg1 = (char *) 0 ;
45157     char *arg2 = (char *) 0 ;
45158     int arg3 ;
45159     int arg4 ;
45160     int res1 ;
45161     char *buf1 = 0 ;
45162     int alloc1 = 0 ;
45163     int res2 ;
45164     char *buf2 = 0 ;
45165     int alloc2 = 0 ;
45166     int val3 ;
45167     int ecode3 = 0 ;
45168     int val4 ;
45169     int ecode4 = 0 ;
45170     int argvi = 0;
45171     float result;
45172     dXSARGS;
45173 
45174     if ((items < 4) || (items > 4)) {
45175       SWIG_croak("Usage: energy_of_move(string,structure,m1,m2);");
45176     }
45177     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
45178     if (!SWIG_IsOK(res1)) {
45179       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "energy_of_move" "', argument " "1"" of type '" "char const *""'");
45180     }
45181     arg1 = reinterpret_cast< char * >(buf1);
45182     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
45183     if (!SWIG_IsOK(res2)) {
45184       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "energy_of_move" "', argument " "2"" of type '" "char const *""'");
45185     }
45186     arg2 = reinterpret_cast< char * >(buf2);
45187     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
45188     if (!SWIG_IsOK(ecode3)) {
45189       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "energy_of_move" "', argument " "3"" of type '" "int""'");
45190     }
45191     arg3 = static_cast< int >(val3);
45192     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
45193     if (!SWIG_IsOK(ecode4)) {
45194       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "energy_of_move" "', argument " "4"" of type '" "int""'");
45195     }
45196     arg4 = static_cast< int >(val4);
45197     {
45198       try {
45199         result = (float)energy_of_move((char const *)arg1,(char const *)arg2,arg3,arg4);
45200       } catch (const std::exception& e) {
45201         SWIG_exception(SWIG_RuntimeError, e.what());
45202       }
45203     }
45204     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
45205     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
45206     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
45207 
45208 
45209     XSRETURN(argvi);
45210   fail:
45211     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
45212     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
45213 
45214 
45215     SWIG_croak_null();
45216   }
45217 }
45218 
45219 
XS(_wrap_energy_of_move_pt)45220 XS(_wrap_energy_of_move_pt) {
45221   {
45222     short *arg1 = (short *) 0 ;
45223     short *arg2 = (short *) 0 ;
45224     short *arg3 = (short *) 0 ;
45225     int arg4 ;
45226     int arg5 ;
45227     void *argp1 = 0 ;
45228     int res1 = 0 ;
45229     void *argp2 = 0 ;
45230     int res2 = 0 ;
45231     void *argp3 = 0 ;
45232     int res3 = 0 ;
45233     int val4 ;
45234     int ecode4 = 0 ;
45235     int val5 ;
45236     int ecode5 = 0 ;
45237     int argvi = 0;
45238     int result;
45239     dXSARGS;
45240 
45241     if ((items < 5) || (items > 5)) {
45242       SWIG_croak("Usage: energy_of_move_pt(pt,s,s1,m1,m2);");
45243     }
45244     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_short, 0 |  0 );
45245     if (!SWIG_IsOK(res1)) {
45246       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "energy_of_move_pt" "', argument " "1"" of type '" "short *""'");
45247     }
45248     arg1 = reinterpret_cast< short * >(argp1);
45249     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_short, 0 |  0 );
45250     if (!SWIG_IsOK(res2)) {
45251       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "energy_of_move_pt" "', argument " "2"" of type '" "short *""'");
45252     }
45253     arg2 = reinterpret_cast< short * >(argp2);
45254     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_short, 0 |  0 );
45255     if (!SWIG_IsOK(res3)) {
45256       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "energy_of_move_pt" "', argument " "3"" of type '" "short *""'");
45257     }
45258     arg3 = reinterpret_cast< short * >(argp3);
45259     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
45260     if (!SWIG_IsOK(ecode4)) {
45261       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "energy_of_move_pt" "', argument " "4"" of type '" "int""'");
45262     }
45263     arg4 = static_cast< int >(val4);
45264     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
45265     if (!SWIG_IsOK(ecode5)) {
45266       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "energy_of_move_pt" "', argument " "5"" of type '" "int""'");
45267     }
45268     arg5 = static_cast< int >(val5);
45269     {
45270       try {
45271         result = (int)energy_of_move_pt(arg1,arg2,arg3,arg4,arg5);
45272       } catch (const std::exception& e) {
45273         SWIG_exception(SWIG_RuntimeError, e.what());
45274       }
45275     }
45276     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
45277 
45278 
45279 
45280 
45281 
45282     XSRETURN(argvi);
45283   fail:
45284 
45285 
45286 
45287 
45288 
45289     SWIG_croak_null();
45290   }
45291 }
45292 
45293 
XS(_wrap_loop_energy)45294 XS(_wrap_loop_energy) {
45295   {
45296     short *arg1 = (short *) 0 ;
45297     short *arg2 = (short *) 0 ;
45298     short *arg3 = (short *) 0 ;
45299     int arg4 ;
45300     void *argp1 = 0 ;
45301     int res1 = 0 ;
45302     void *argp2 = 0 ;
45303     int res2 = 0 ;
45304     void *argp3 = 0 ;
45305     int res3 = 0 ;
45306     int val4 ;
45307     int ecode4 = 0 ;
45308     int argvi = 0;
45309     int result;
45310     dXSARGS;
45311 
45312     if ((items < 4) || (items > 4)) {
45313       SWIG_croak("Usage: loop_energy(ptable,s,s1,i);");
45314     }
45315     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_short, 0 |  0 );
45316     if (!SWIG_IsOK(res1)) {
45317       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "loop_energy" "', argument " "1"" of type '" "short *""'");
45318     }
45319     arg1 = reinterpret_cast< short * >(argp1);
45320     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_short, 0 |  0 );
45321     if (!SWIG_IsOK(res2)) {
45322       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "loop_energy" "', argument " "2"" of type '" "short *""'");
45323     }
45324     arg2 = reinterpret_cast< short * >(argp2);
45325     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_short, 0 |  0 );
45326     if (!SWIG_IsOK(res3)) {
45327       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "loop_energy" "', argument " "3"" of type '" "short *""'");
45328     }
45329     arg3 = reinterpret_cast< short * >(argp3);
45330     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
45331     if (!SWIG_IsOK(ecode4)) {
45332       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "loop_energy" "', argument " "4"" of type '" "int""'");
45333     }
45334     arg4 = static_cast< int >(val4);
45335     {
45336       try {
45337         result = (int)loop_energy(arg1,arg2,arg3,arg4);
45338       } catch (const std::exception& e) {
45339         SWIG_exception(SWIG_RuntimeError, e.what());
45340       }
45341     }
45342     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
45343 
45344 
45345 
45346 
45347     XSRETURN(argvi);
45348   fail:
45349 
45350 
45351 
45352 
45353     SWIG_croak_null();
45354   }
45355 }
45356 
45357 
XS(_wrap_energy_of_struct)45358 XS(_wrap_energy_of_struct) {
45359   {
45360     char *arg1 = (char *) 0 ;
45361     char *arg2 = (char *) 0 ;
45362     int res1 ;
45363     char *buf1 = 0 ;
45364     int alloc1 = 0 ;
45365     int res2 ;
45366     char *buf2 = 0 ;
45367     int alloc2 = 0 ;
45368     int argvi = 0;
45369     float result;
45370     dXSARGS;
45371 
45372     if ((items < 2) || (items > 2)) {
45373       SWIG_croak("Usage: energy_of_struct(string,structure);");
45374     }
45375     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
45376     if (!SWIG_IsOK(res1)) {
45377       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "energy_of_struct" "', argument " "1"" of type '" "char const *""'");
45378     }
45379     arg1 = reinterpret_cast< char * >(buf1);
45380     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
45381     if (!SWIG_IsOK(res2)) {
45382       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "energy_of_struct" "', argument " "2"" of type '" "char const *""'");
45383     }
45384     arg2 = reinterpret_cast< char * >(buf2);
45385     {
45386       try {
45387         result = (float)energy_of_struct((char const *)arg1,(char const *)arg2);
45388       } catch (const std::exception& e) {
45389         SWIG_exception(SWIG_RuntimeError, e.what());
45390       }
45391     }
45392     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
45393     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
45394     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
45395     XSRETURN(argvi);
45396   fail:
45397     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
45398     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
45399     SWIG_croak_null();
45400   }
45401 }
45402 
45403 
XS(_wrap_energy_of_struct_pt)45404 XS(_wrap_energy_of_struct_pt) {
45405   {
45406     char *arg1 = (char *) 0 ;
45407     short *arg2 = (short *) 0 ;
45408     short *arg3 = (short *) 0 ;
45409     short *arg4 = (short *) 0 ;
45410     int res1 ;
45411     char *buf1 = 0 ;
45412     int alloc1 = 0 ;
45413     void *argp2 = 0 ;
45414     int res2 = 0 ;
45415     void *argp3 = 0 ;
45416     int res3 = 0 ;
45417     void *argp4 = 0 ;
45418     int res4 = 0 ;
45419     int argvi = 0;
45420     int result;
45421     dXSARGS;
45422 
45423     if ((items < 4) || (items > 4)) {
45424       SWIG_croak("Usage: energy_of_struct_pt(string,ptable,s,s1);");
45425     }
45426     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
45427     if (!SWIG_IsOK(res1)) {
45428       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "energy_of_struct_pt" "', argument " "1"" of type '" "char const *""'");
45429     }
45430     arg1 = reinterpret_cast< char * >(buf1);
45431     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_short, 0 |  0 );
45432     if (!SWIG_IsOK(res2)) {
45433       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "energy_of_struct_pt" "', argument " "2"" of type '" "short *""'");
45434     }
45435     arg2 = reinterpret_cast< short * >(argp2);
45436     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_short, 0 |  0 );
45437     if (!SWIG_IsOK(res3)) {
45438       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "energy_of_struct_pt" "', argument " "3"" of type '" "short *""'");
45439     }
45440     arg3 = reinterpret_cast< short * >(argp3);
45441     res4 = SWIG_ConvertPtr(ST(3), &argp4,SWIGTYPE_p_short, 0 |  0 );
45442     if (!SWIG_IsOK(res4)) {
45443       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "energy_of_struct_pt" "', argument " "4"" of type '" "short *""'");
45444     }
45445     arg4 = reinterpret_cast< short * >(argp4);
45446     {
45447       try {
45448         result = (int)energy_of_struct_pt((char const *)arg1,arg2,arg3,arg4);
45449       } catch (const std::exception& e) {
45450         SWIG_exception(SWIG_RuntimeError, e.what());
45451       }
45452     }
45453     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
45454     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
45455 
45456 
45457 
45458     XSRETURN(argvi);
45459   fail:
45460     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
45461 
45462 
45463 
45464     SWIG_croak_null();
45465   }
45466 }
45467 
45468 
XS(_wrap_energy_of_circ_struct)45469 XS(_wrap_energy_of_circ_struct) {
45470   {
45471     char *arg1 = (char *) 0 ;
45472     char *arg2 = (char *) 0 ;
45473     int res1 ;
45474     char *buf1 = 0 ;
45475     int alloc1 = 0 ;
45476     int res2 ;
45477     char *buf2 = 0 ;
45478     int alloc2 = 0 ;
45479     int argvi = 0;
45480     float result;
45481     dXSARGS;
45482 
45483     if ((items < 2) || (items > 2)) {
45484       SWIG_croak("Usage: energy_of_circ_struct(string,structure);");
45485     }
45486     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
45487     if (!SWIG_IsOK(res1)) {
45488       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "energy_of_circ_struct" "', argument " "1"" of type '" "char const *""'");
45489     }
45490     arg1 = reinterpret_cast< char * >(buf1);
45491     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
45492     if (!SWIG_IsOK(res2)) {
45493       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "energy_of_circ_struct" "', argument " "2"" of type '" "char const *""'");
45494     }
45495     arg2 = reinterpret_cast< char * >(buf2);
45496     {
45497       try {
45498         result = (float)energy_of_circ_struct((char const *)arg1,(char const *)arg2);
45499       } catch (const std::exception& e) {
45500         SWIG_exception(SWIG_RuntimeError, e.what());
45501       }
45502     }
45503     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
45504     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
45505     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
45506     XSRETURN(argvi);
45507   fail:
45508     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
45509     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
45510     SWIG_croak_null();
45511   }
45512 }
45513 
45514 
XS(_wrap_E_ext_stem)45515 XS(_wrap_E_ext_stem) {
45516   {
45517     unsigned int arg1 ;
45518     int arg2 ;
45519     int arg3 ;
45520     vrna_param_t *arg4 = (vrna_param_t *) 0 ;
45521     unsigned int val1 ;
45522     int ecode1 = 0 ;
45523     int val2 ;
45524     int ecode2 = 0 ;
45525     int val3 ;
45526     int ecode3 = 0 ;
45527     void *argp4 = 0 ;
45528     int res4 = 0 ;
45529     int argvi = 0;
45530     int result;
45531     dXSARGS;
45532 
45533     if ((items < 4) || (items > 4)) {
45534       SWIG_croak("Usage: E_ext_stem(type,n5d,n3d,p);");
45535     }
45536     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
45537     if (!SWIG_IsOK(ecode1)) {
45538       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "E_ext_stem" "', argument " "1"" of type '" "unsigned int""'");
45539     }
45540     arg1 = static_cast< unsigned int >(val1);
45541     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
45542     if (!SWIG_IsOK(ecode2)) {
45543       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "E_ext_stem" "', argument " "2"" of type '" "int""'");
45544     }
45545     arg2 = static_cast< int >(val2);
45546     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
45547     if (!SWIG_IsOK(ecode3)) {
45548       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "E_ext_stem" "', argument " "3"" of type '" "int""'");
45549     }
45550     arg3 = static_cast< int >(val3);
45551     res4 = SWIG_ConvertPtr(ST(3), &argp4,SWIGTYPE_p_vrna_param_t, 0 |  0 );
45552     if (!SWIG_IsOK(res4)) {
45553       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "E_ext_stem" "', argument " "4"" of type '" "vrna_param_t *""'");
45554     }
45555     arg4 = reinterpret_cast< vrna_param_t * >(argp4);
45556     {
45557       try {
45558         result = (int)vrna_E_ext_stem(arg1,arg2,arg3,arg4);
45559       } catch (const std::exception& e) {
45560         SWIG_exception(SWIG_RuntimeError, e.what());
45561       }
45562     }
45563     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
45564 
45565 
45566 
45567 
45568     XSRETURN(argvi);
45569   fail:
45570 
45571 
45572 
45573 
45574     SWIG_croak_null();
45575   }
45576 }
45577 
45578 
XS(_wrap_exp_E_ext_stem)45579 XS(_wrap_exp_E_ext_stem) {
45580   {
45581     unsigned int arg1 ;
45582     int arg2 ;
45583     int arg3 ;
45584     vrna_exp_param_t *arg4 = (vrna_exp_param_t *) 0 ;
45585     unsigned int val1 ;
45586     int ecode1 = 0 ;
45587     int val2 ;
45588     int ecode2 = 0 ;
45589     int val3 ;
45590     int ecode3 = 0 ;
45591     void *argp4 = 0 ;
45592     int res4 = 0 ;
45593     int argvi = 0;
45594     FLT_OR_DBL result;
45595     dXSARGS;
45596 
45597     if ((items < 4) || (items > 4)) {
45598       SWIG_croak("Usage: exp_E_ext_stem(type,n5d,n3d,p);");
45599     }
45600     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
45601     if (!SWIG_IsOK(ecode1)) {
45602       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "exp_E_ext_stem" "', argument " "1"" of type '" "unsigned int""'");
45603     }
45604     arg1 = static_cast< unsigned int >(val1);
45605     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
45606     if (!SWIG_IsOK(ecode2)) {
45607       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "exp_E_ext_stem" "', argument " "2"" of type '" "int""'");
45608     }
45609     arg2 = static_cast< int >(val2);
45610     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
45611     if (!SWIG_IsOK(ecode3)) {
45612       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "exp_E_ext_stem" "', argument " "3"" of type '" "int""'");
45613     }
45614     arg3 = static_cast< int >(val3);
45615     res4 = SWIG_ConvertPtr(ST(3), &argp4,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
45616     if (!SWIG_IsOK(res4)) {
45617       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "exp_E_ext_stem" "', argument " "4"" of type '" "vrna_exp_param_t *""'");
45618     }
45619     arg4 = reinterpret_cast< vrna_exp_param_t * >(argp4);
45620     {
45621       try {
45622         result = (FLT_OR_DBL)vrna_exp_E_ext_stem(arg1,arg2,arg3,arg4);
45623       } catch (const std::exception& e) {
45624         SWIG_exception(SWIG_RuntimeError, e.what());
45625       }
45626     }
45627     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
45628 
45629 
45630 
45631 
45632     XSRETURN(argvi);
45633   fail:
45634 
45635 
45636 
45637 
45638     SWIG_croak_null();
45639   }
45640 }
45641 
45642 
XS(_wrap_E_Stem)45643 XS(_wrap_E_Stem) {
45644   {
45645     int arg1 ;
45646     int arg2 ;
45647     int arg3 ;
45648     int arg4 ;
45649     vrna_param_t *arg5 = (vrna_param_t *) 0 ;
45650     int val1 ;
45651     int ecode1 = 0 ;
45652     int val2 ;
45653     int ecode2 = 0 ;
45654     int val3 ;
45655     int ecode3 = 0 ;
45656     int val4 ;
45657     int ecode4 = 0 ;
45658     void *argp5 = 0 ;
45659     int res5 = 0 ;
45660     int argvi = 0;
45661     int result;
45662     dXSARGS;
45663 
45664     if ((items < 5) || (items > 5)) {
45665       SWIG_croak("Usage: E_Stem(type,si1,sj1,extLoop,P);");
45666     }
45667     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
45668     if (!SWIG_IsOK(ecode1)) {
45669       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "E_Stem" "', argument " "1"" of type '" "int""'");
45670     }
45671     arg1 = static_cast< int >(val1);
45672     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
45673     if (!SWIG_IsOK(ecode2)) {
45674       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "E_Stem" "', argument " "2"" of type '" "int""'");
45675     }
45676     arg2 = static_cast< int >(val2);
45677     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
45678     if (!SWIG_IsOK(ecode3)) {
45679       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "E_Stem" "', argument " "3"" of type '" "int""'");
45680     }
45681     arg3 = static_cast< int >(val3);
45682     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
45683     if (!SWIG_IsOK(ecode4)) {
45684       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "E_Stem" "', argument " "4"" of type '" "int""'");
45685     }
45686     arg4 = static_cast< int >(val4);
45687     res5 = SWIG_ConvertPtr(ST(4), &argp5,SWIGTYPE_p_vrna_param_t, 0 |  0 );
45688     if (!SWIG_IsOK(res5)) {
45689       SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "E_Stem" "', argument " "5"" of type '" "vrna_param_t *""'");
45690     }
45691     arg5 = reinterpret_cast< vrna_param_t * >(argp5);
45692     {
45693       try {
45694         result = (int)E_Stem(arg1,arg2,arg3,arg4,arg5);
45695       } catch (const std::exception& e) {
45696         SWIG_exception(SWIG_RuntimeError, e.what());
45697       }
45698     }
45699     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
45700 
45701 
45702 
45703 
45704 
45705     XSRETURN(argvi);
45706   fail:
45707 
45708 
45709 
45710 
45711 
45712     SWIG_croak_null();
45713   }
45714 }
45715 
45716 
XS(_wrap_E_ExtLoop)45717 XS(_wrap_E_ExtLoop) {
45718   {
45719     int arg1 ;
45720     int arg2 ;
45721     int arg3 ;
45722     vrna_param_t *arg4 = (vrna_param_t *) 0 ;
45723     int val1 ;
45724     int ecode1 = 0 ;
45725     int val2 ;
45726     int ecode2 = 0 ;
45727     int val3 ;
45728     int ecode3 = 0 ;
45729     void *argp4 = 0 ;
45730     int res4 = 0 ;
45731     int argvi = 0;
45732     int result;
45733     dXSARGS;
45734 
45735     if ((items < 4) || (items > 4)) {
45736       SWIG_croak("Usage: E_ExtLoop(type,si1,sj1,P);");
45737     }
45738     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
45739     if (!SWIG_IsOK(ecode1)) {
45740       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "E_ExtLoop" "', argument " "1"" of type '" "int""'");
45741     }
45742     arg1 = static_cast< int >(val1);
45743     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
45744     if (!SWIG_IsOK(ecode2)) {
45745       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "E_ExtLoop" "', argument " "2"" of type '" "int""'");
45746     }
45747     arg2 = static_cast< int >(val2);
45748     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
45749     if (!SWIG_IsOK(ecode3)) {
45750       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "E_ExtLoop" "', argument " "3"" of type '" "int""'");
45751     }
45752     arg3 = static_cast< int >(val3);
45753     res4 = SWIG_ConvertPtr(ST(3), &argp4,SWIGTYPE_p_vrna_param_t, 0 |  0 );
45754     if (!SWIG_IsOK(res4)) {
45755       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "E_ExtLoop" "', argument " "4"" of type '" "vrna_param_t *""'");
45756     }
45757     arg4 = reinterpret_cast< vrna_param_t * >(argp4);
45758     {
45759       try {
45760         result = (int)E_ExtLoop(arg1,arg2,arg3,arg4);
45761       } catch (const std::exception& e) {
45762         SWIG_exception(SWIG_RuntimeError, e.what());
45763       }
45764     }
45765     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
45766 
45767 
45768 
45769 
45770     XSRETURN(argvi);
45771   fail:
45772 
45773 
45774 
45775 
45776     SWIG_croak_null();
45777   }
45778 }
45779 
45780 
XS(_wrap_exp_E_ExtLoop)45781 XS(_wrap_exp_E_ExtLoop) {
45782   {
45783     int arg1 ;
45784     int arg2 ;
45785     int arg3 ;
45786     vrna_exp_param_t *arg4 = (vrna_exp_param_t *) 0 ;
45787     int val1 ;
45788     int ecode1 = 0 ;
45789     int val2 ;
45790     int ecode2 = 0 ;
45791     int val3 ;
45792     int ecode3 = 0 ;
45793     void *argp4 = 0 ;
45794     int res4 = 0 ;
45795     int argvi = 0;
45796     FLT_OR_DBL result;
45797     dXSARGS;
45798 
45799     if ((items < 4) || (items > 4)) {
45800       SWIG_croak("Usage: exp_E_ExtLoop(type,si1,sj1,P);");
45801     }
45802     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
45803     if (!SWIG_IsOK(ecode1)) {
45804       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "exp_E_ExtLoop" "', argument " "1"" of type '" "int""'");
45805     }
45806     arg1 = static_cast< int >(val1);
45807     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
45808     if (!SWIG_IsOK(ecode2)) {
45809       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "exp_E_ExtLoop" "', argument " "2"" of type '" "int""'");
45810     }
45811     arg2 = static_cast< int >(val2);
45812     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
45813     if (!SWIG_IsOK(ecode3)) {
45814       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "exp_E_ExtLoop" "', argument " "3"" of type '" "int""'");
45815     }
45816     arg3 = static_cast< int >(val3);
45817     res4 = SWIG_ConvertPtr(ST(3), &argp4,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
45818     if (!SWIG_IsOK(res4)) {
45819       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "exp_E_ExtLoop" "', argument " "4"" of type '" "vrna_exp_param_t *""'");
45820     }
45821     arg4 = reinterpret_cast< vrna_exp_param_t * >(argp4);
45822     {
45823       try {
45824         result = (FLT_OR_DBL)exp_E_ExtLoop(arg1,arg2,arg3,arg4);
45825       } catch (const std::exception& e) {
45826         SWIG_exception(SWIG_RuntimeError, e.what());
45827       }
45828     }
45829     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
45830 
45831 
45832 
45833 
45834     XSRETURN(argvi);
45835   fail:
45836 
45837 
45838 
45839 
45840     SWIG_croak_null();
45841   }
45842 }
45843 
45844 
XS(_wrap_exp_E_Stem)45845 XS(_wrap_exp_E_Stem) {
45846   {
45847     int arg1 ;
45848     int arg2 ;
45849     int arg3 ;
45850     int arg4 ;
45851     vrna_exp_param_t *arg5 = (vrna_exp_param_t *) 0 ;
45852     int val1 ;
45853     int ecode1 = 0 ;
45854     int val2 ;
45855     int ecode2 = 0 ;
45856     int val3 ;
45857     int ecode3 = 0 ;
45858     int val4 ;
45859     int ecode4 = 0 ;
45860     void *argp5 = 0 ;
45861     int res5 = 0 ;
45862     int argvi = 0;
45863     FLT_OR_DBL result;
45864     dXSARGS;
45865 
45866     if ((items < 5) || (items > 5)) {
45867       SWIG_croak("Usage: exp_E_Stem(type,si1,sj1,extLoop,P);");
45868     }
45869     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
45870     if (!SWIG_IsOK(ecode1)) {
45871       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "exp_E_Stem" "', argument " "1"" of type '" "int""'");
45872     }
45873     arg1 = static_cast< int >(val1);
45874     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
45875     if (!SWIG_IsOK(ecode2)) {
45876       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "exp_E_Stem" "', argument " "2"" of type '" "int""'");
45877     }
45878     arg2 = static_cast< int >(val2);
45879     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
45880     if (!SWIG_IsOK(ecode3)) {
45881       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "exp_E_Stem" "', argument " "3"" of type '" "int""'");
45882     }
45883     arg3 = static_cast< int >(val3);
45884     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
45885     if (!SWIG_IsOK(ecode4)) {
45886       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "exp_E_Stem" "', argument " "4"" of type '" "int""'");
45887     }
45888     arg4 = static_cast< int >(val4);
45889     res5 = SWIG_ConvertPtr(ST(4), &argp5,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
45890     if (!SWIG_IsOK(res5)) {
45891       SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "exp_E_Stem" "', argument " "5"" of type '" "vrna_exp_param_t *""'");
45892     }
45893     arg5 = reinterpret_cast< vrna_exp_param_t * >(argp5);
45894     {
45895       try {
45896         result = (FLT_OR_DBL)exp_E_Stem(arg1,arg2,arg3,arg4,arg5);
45897       } catch (const std::exception& e) {
45898         SWIG_exception(SWIG_RuntimeError, e.what());
45899       }
45900     }
45901     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
45902 
45903 
45904 
45905 
45906 
45907     XSRETURN(argvi);
45908   fail:
45909 
45910 
45911 
45912 
45913 
45914     SWIG_croak_null();
45915   }
45916 }
45917 
45918 
XS(_wrap_E_Hairpin)45919 XS(_wrap_E_Hairpin) {
45920   {
45921     int arg1 ;
45922     int arg2 ;
45923     int arg3 ;
45924     int arg4 ;
45925     char *arg5 = (char *) 0 ;
45926     vrna_param_t *arg6 = (vrna_param_t *) 0 ;
45927     int val1 ;
45928     int ecode1 = 0 ;
45929     int val2 ;
45930     int ecode2 = 0 ;
45931     int val3 ;
45932     int ecode3 = 0 ;
45933     int val4 ;
45934     int ecode4 = 0 ;
45935     int res5 ;
45936     char *buf5 = 0 ;
45937     int alloc5 = 0 ;
45938     void *argp6 = 0 ;
45939     int res6 = 0 ;
45940     int argvi = 0;
45941     int result;
45942     dXSARGS;
45943 
45944     if ((items < 6) || (items > 6)) {
45945       SWIG_croak("Usage: E_Hairpin(size,type,si1,sj1,string,P);");
45946     }
45947     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
45948     if (!SWIG_IsOK(ecode1)) {
45949       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "E_Hairpin" "', argument " "1"" of type '" "int""'");
45950     }
45951     arg1 = static_cast< int >(val1);
45952     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
45953     if (!SWIG_IsOK(ecode2)) {
45954       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "E_Hairpin" "', argument " "2"" of type '" "int""'");
45955     }
45956     arg2 = static_cast< int >(val2);
45957     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
45958     if (!SWIG_IsOK(ecode3)) {
45959       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "E_Hairpin" "', argument " "3"" of type '" "int""'");
45960     }
45961     arg3 = static_cast< int >(val3);
45962     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
45963     if (!SWIG_IsOK(ecode4)) {
45964       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "E_Hairpin" "', argument " "4"" of type '" "int""'");
45965     }
45966     arg4 = static_cast< int >(val4);
45967     res5 = SWIG_AsCharPtrAndSize(ST(4), &buf5, NULL, &alloc5);
45968     if (!SWIG_IsOK(res5)) {
45969       SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "E_Hairpin" "', argument " "5"" of type '" "char const *""'");
45970     }
45971     arg5 = reinterpret_cast< char * >(buf5);
45972     res6 = SWIG_ConvertPtr(ST(5), &argp6,SWIGTYPE_p_vrna_param_t, 0 |  0 );
45973     if (!SWIG_IsOK(res6)) {
45974       SWIG_exception_fail(SWIG_ArgError(res6), "in method '" "E_Hairpin" "', argument " "6"" of type '" "vrna_param_t *""'");
45975     }
45976     arg6 = reinterpret_cast< vrna_param_t * >(argp6);
45977     {
45978       try {
45979         result = (int)E_Hairpin(arg1,arg2,arg3,arg4,(char const *)arg5,arg6);
45980       } catch (const std::exception& e) {
45981         SWIG_exception(SWIG_RuntimeError, e.what());
45982       }
45983     }
45984     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
45985 
45986 
45987 
45988 
45989     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
45990 
45991     XSRETURN(argvi);
45992   fail:
45993 
45994 
45995 
45996 
45997     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
45998 
45999     SWIG_croak_null();
46000   }
46001 }
46002 
46003 
XS(_wrap_exp_E_Hairpin)46004 XS(_wrap_exp_E_Hairpin) {
46005   {
46006     int arg1 ;
46007     int arg2 ;
46008     short arg3 ;
46009     short arg4 ;
46010     char *arg5 = (char *) 0 ;
46011     vrna_exp_param_t *arg6 = (vrna_exp_param_t *) 0 ;
46012     int val1 ;
46013     int ecode1 = 0 ;
46014     int val2 ;
46015     int ecode2 = 0 ;
46016     short val3 ;
46017     int ecode3 = 0 ;
46018     short val4 ;
46019     int ecode4 = 0 ;
46020     int res5 ;
46021     char *buf5 = 0 ;
46022     int alloc5 = 0 ;
46023     void *argp6 = 0 ;
46024     int res6 = 0 ;
46025     int argvi = 0;
46026     FLT_OR_DBL result;
46027     dXSARGS;
46028 
46029     if ((items < 6) || (items > 6)) {
46030       SWIG_croak("Usage: exp_E_Hairpin(u,type,si1,sj1,string,P);");
46031     }
46032     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
46033     if (!SWIG_IsOK(ecode1)) {
46034       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "exp_E_Hairpin" "', argument " "1"" of type '" "int""'");
46035     }
46036     arg1 = static_cast< int >(val1);
46037     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
46038     if (!SWIG_IsOK(ecode2)) {
46039       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "exp_E_Hairpin" "', argument " "2"" of type '" "int""'");
46040     }
46041     arg2 = static_cast< int >(val2);
46042     ecode3 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
46043     if (!SWIG_IsOK(ecode3)) {
46044       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "exp_E_Hairpin" "', argument " "3"" of type '" "short""'");
46045     }
46046     arg3 = static_cast< short >(val3);
46047     ecode4 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
46048     if (!SWIG_IsOK(ecode4)) {
46049       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "exp_E_Hairpin" "', argument " "4"" of type '" "short""'");
46050     }
46051     arg4 = static_cast< short >(val4);
46052     res5 = SWIG_AsCharPtrAndSize(ST(4), &buf5, NULL, &alloc5);
46053     if (!SWIG_IsOK(res5)) {
46054       SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "exp_E_Hairpin" "', argument " "5"" of type '" "char const *""'");
46055     }
46056     arg5 = reinterpret_cast< char * >(buf5);
46057     res6 = SWIG_ConvertPtr(ST(5), &argp6,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
46058     if (!SWIG_IsOK(res6)) {
46059       SWIG_exception_fail(SWIG_ArgError(res6), "in method '" "exp_E_Hairpin" "', argument " "6"" of type '" "vrna_exp_param_t *""'");
46060     }
46061     arg6 = reinterpret_cast< vrna_exp_param_t * >(argp6);
46062     {
46063       try {
46064         result = (FLT_OR_DBL)exp_E_Hairpin(arg1,arg2,arg3,arg4,(char const *)arg5,arg6);
46065       } catch (const std::exception& e) {
46066         SWIG_exception(SWIG_RuntimeError, e.what());
46067       }
46068     }
46069     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
46070 
46071 
46072 
46073 
46074     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
46075 
46076     XSRETURN(argvi);
46077   fail:
46078 
46079 
46080 
46081 
46082     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
46083 
46084     SWIG_croak_null();
46085   }
46086 }
46087 
46088 
XS(_wrap_E_IntLoop)46089 XS(_wrap_E_IntLoop) {
46090   {
46091     int arg1 ;
46092     int arg2 ;
46093     int arg3 ;
46094     int arg4 ;
46095     int arg5 ;
46096     int arg6 ;
46097     int arg7 ;
46098     int arg8 ;
46099     vrna_param_t *arg9 = (vrna_param_t *) 0 ;
46100     int val1 ;
46101     int ecode1 = 0 ;
46102     int val2 ;
46103     int ecode2 = 0 ;
46104     int val3 ;
46105     int ecode3 = 0 ;
46106     int val4 ;
46107     int ecode4 = 0 ;
46108     int val5 ;
46109     int ecode5 = 0 ;
46110     int val6 ;
46111     int ecode6 = 0 ;
46112     int val7 ;
46113     int ecode7 = 0 ;
46114     int val8 ;
46115     int ecode8 = 0 ;
46116     void *argp9 = 0 ;
46117     int res9 = 0 ;
46118     int argvi = 0;
46119     int result;
46120     dXSARGS;
46121 
46122     if ((items < 9) || (items > 9)) {
46123       SWIG_croak("Usage: E_IntLoop(n1,n2,type,type_2,si1,sj1,sp1,sq1,P);");
46124     }
46125     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
46126     if (!SWIG_IsOK(ecode1)) {
46127       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "E_IntLoop" "', argument " "1"" of type '" "int""'");
46128     }
46129     arg1 = static_cast< int >(val1);
46130     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
46131     if (!SWIG_IsOK(ecode2)) {
46132       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "E_IntLoop" "', argument " "2"" of type '" "int""'");
46133     }
46134     arg2 = static_cast< int >(val2);
46135     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
46136     if (!SWIG_IsOK(ecode3)) {
46137       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "E_IntLoop" "', argument " "3"" of type '" "int""'");
46138     }
46139     arg3 = static_cast< int >(val3);
46140     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
46141     if (!SWIG_IsOK(ecode4)) {
46142       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "E_IntLoop" "', argument " "4"" of type '" "int""'");
46143     }
46144     arg4 = static_cast< int >(val4);
46145     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
46146     if (!SWIG_IsOK(ecode5)) {
46147       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "E_IntLoop" "', argument " "5"" of type '" "int""'");
46148     }
46149     arg5 = static_cast< int >(val5);
46150     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
46151     if (!SWIG_IsOK(ecode6)) {
46152       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "E_IntLoop" "', argument " "6"" of type '" "int""'");
46153     }
46154     arg6 = static_cast< int >(val6);
46155     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
46156     if (!SWIG_IsOK(ecode7)) {
46157       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "E_IntLoop" "', argument " "7"" of type '" "int""'");
46158     }
46159     arg7 = static_cast< int >(val7);
46160     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
46161     if (!SWIG_IsOK(ecode8)) {
46162       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "E_IntLoop" "', argument " "8"" of type '" "int""'");
46163     }
46164     arg8 = static_cast< int >(val8);
46165     res9 = SWIG_ConvertPtr(ST(8), &argp9,SWIGTYPE_p_vrna_param_t, 0 |  0 );
46166     if (!SWIG_IsOK(res9)) {
46167       SWIG_exception_fail(SWIG_ArgError(res9), "in method '" "E_IntLoop" "', argument " "9"" of type '" "vrna_param_t *""'");
46168     }
46169     arg9 = reinterpret_cast< vrna_param_t * >(argp9);
46170     {
46171       try {
46172         result = (int)E_IntLoop(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9);
46173       } catch (const std::exception& e) {
46174         SWIG_exception(SWIG_RuntimeError, e.what());
46175       }
46176     }
46177     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
46178 
46179 
46180 
46181 
46182 
46183 
46184 
46185 
46186 
46187     XSRETURN(argvi);
46188   fail:
46189 
46190 
46191 
46192 
46193 
46194 
46195 
46196 
46197 
46198     SWIG_croak_null();
46199   }
46200 }
46201 
46202 
XS(_wrap_exp_E_IntLoop)46203 XS(_wrap_exp_E_IntLoop) {
46204   {
46205     int arg1 ;
46206     int arg2 ;
46207     int arg3 ;
46208     int arg4 ;
46209     short arg5 ;
46210     short arg6 ;
46211     short arg7 ;
46212     short arg8 ;
46213     vrna_exp_param_t *arg9 = (vrna_exp_param_t *) 0 ;
46214     int val1 ;
46215     int ecode1 = 0 ;
46216     int val2 ;
46217     int ecode2 = 0 ;
46218     int val3 ;
46219     int ecode3 = 0 ;
46220     int val4 ;
46221     int ecode4 = 0 ;
46222     short val5 ;
46223     int ecode5 = 0 ;
46224     short val6 ;
46225     int ecode6 = 0 ;
46226     short val7 ;
46227     int ecode7 = 0 ;
46228     short val8 ;
46229     int ecode8 = 0 ;
46230     void *argp9 = 0 ;
46231     int res9 = 0 ;
46232     int argvi = 0;
46233     FLT_OR_DBL result;
46234     dXSARGS;
46235 
46236     if ((items < 9) || (items > 9)) {
46237       SWIG_croak("Usage: exp_E_IntLoop(u1,u2,type,type2,si1,sj1,sp1,sq1,P);");
46238     }
46239     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
46240     if (!SWIG_IsOK(ecode1)) {
46241       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "exp_E_IntLoop" "', argument " "1"" of type '" "int""'");
46242     }
46243     arg1 = static_cast< int >(val1);
46244     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
46245     if (!SWIG_IsOK(ecode2)) {
46246       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "exp_E_IntLoop" "', argument " "2"" of type '" "int""'");
46247     }
46248     arg2 = static_cast< int >(val2);
46249     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
46250     if (!SWIG_IsOK(ecode3)) {
46251       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "exp_E_IntLoop" "', argument " "3"" of type '" "int""'");
46252     }
46253     arg3 = static_cast< int >(val3);
46254     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
46255     if (!SWIG_IsOK(ecode4)) {
46256       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "exp_E_IntLoop" "', argument " "4"" of type '" "int""'");
46257     }
46258     arg4 = static_cast< int >(val4);
46259     ecode5 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
46260     if (!SWIG_IsOK(ecode5)) {
46261       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "exp_E_IntLoop" "', argument " "5"" of type '" "short""'");
46262     }
46263     arg5 = static_cast< short >(val5);
46264     ecode6 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
46265     if (!SWIG_IsOK(ecode6)) {
46266       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "exp_E_IntLoop" "', argument " "6"" of type '" "short""'");
46267     }
46268     arg6 = static_cast< short >(val6);
46269     ecode7 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
46270     if (!SWIG_IsOK(ecode7)) {
46271       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "exp_E_IntLoop" "', argument " "7"" of type '" "short""'");
46272     }
46273     arg7 = static_cast< short >(val7);
46274     ecode8 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
46275     if (!SWIG_IsOK(ecode8)) {
46276       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "exp_E_IntLoop" "', argument " "8"" of type '" "short""'");
46277     }
46278     arg8 = static_cast< short >(val8);
46279     res9 = SWIG_ConvertPtr(ST(8), &argp9,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
46280     if (!SWIG_IsOK(res9)) {
46281       SWIG_exception_fail(SWIG_ArgError(res9), "in method '" "exp_E_IntLoop" "', argument " "9"" of type '" "vrna_exp_param_t *""'");
46282     }
46283     arg9 = reinterpret_cast< vrna_exp_param_t * >(argp9);
46284     {
46285       try {
46286         result = (FLT_OR_DBL)exp_E_IntLoop(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9);
46287       } catch (const std::exception& e) {
46288         SWIG_exception(SWIG_RuntimeError, e.what());
46289       }
46290     }
46291     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
46292 
46293 
46294 
46295 
46296 
46297 
46298 
46299 
46300 
46301     XSRETURN(argvi);
46302   fail:
46303 
46304 
46305 
46306 
46307 
46308 
46309 
46310 
46311 
46312     SWIG_croak_null();
46313   }
46314 }
46315 
46316 
XS(_wrap_E_IntLoop_Co)46317 XS(_wrap_E_IntLoop_Co) {
46318   {
46319     int arg1 ;
46320     int arg2 ;
46321     int arg3 ;
46322     int arg4 ;
46323     int arg5 ;
46324     int arg6 ;
46325     int arg7 ;
46326     short arg8 ;
46327     short arg9 ;
46328     short arg10 ;
46329     short arg11 ;
46330     int arg12 ;
46331     vrna_param_t *arg13 = (vrna_param_t *) 0 ;
46332     int val1 ;
46333     int ecode1 = 0 ;
46334     int val2 ;
46335     int ecode2 = 0 ;
46336     int val3 ;
46337     int ecode3 = 0 ;
46338     int val4 ;
46339     int ecode4 = 0 ;
46340     int val5 ;
46341     int ecode5 = 0 ;
46342     int val6 ;
46343     int ecode6 = 0 ;
46344     int val7 ;
46345     int ecode7 = 0 ;
46346     short val8 ;
46347     int ecode8 = 0 ;
46348     short val9 ;
46349     int ecode9 = 0 ;
46350     short val10 ;
46351     int ecode10 = 0 ;
46352     short val11 ;
46353     int ecode11 = 0 ;
46354     int val12 ;
46355     int ecode12 = 0 ;
46356     void *argp13 = 0 ;
46357     int res13 = 0 ;
46358     int argvi = 0;
46359     int result;
46360     dXSARGS;
46361 
46362     if ((items < 13) || (items > 13)) {
46363       SWIG_croak("Usage: E_IntLoop_Co(type,type_2,i,j,p,q,cutpoint,si1,sj1,sp1,sq1,dangles,P);");
46364     }
46365     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
46366     if (!SWIG_IsOK(ecode1)) {
46367       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "E_IntLoop_Co" "', argument " "1"" of type '" "int""'");
46368     }
46369     arg1 = static_cast< int >(val1);
46370     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
46371     if (!SWIG_IsOK(ecode2)) {
46372       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "E_IntLoop_Co" "', argument " "2"" of type '" "int""'");
46373     }
46374     arg2 = static_cast< int >(val2);
46375     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
46376     if (!SWIG_IsOK(ecode3)) {
46377       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "E_IntLoop_Co" "', argument " "3"" of type '" "int""'");
46378     }
46379     arg3 = static_cast< int >(val3);
46380     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
46381     if (!SWIG_IsOK(ecode4)) {
46382       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "E_IntLoop_Co" "', argument " "4"" of type '" "int""'");
46383     }
46384     arg4 = static_cast< int >(val4);
46385     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
46386     if (!SWIG_IsOK(ecode5)) {
46387       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "E_IntLoop_Co" "', argument " "5"" of type '" "int""'");
46388     }
46389     arg5 = static_cast< int >(val5);
46390     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
46391     if (!SWIG_IsOK(ecode6)) {
46392       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "E_IntLoop_Co" "', argument " "6"" of type '" "int""'");
46393     }
46394     arg6 = static_cast< int >(val6);
46395     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
46396     if (!SWIG_IsOK(ecode7)) {
46397       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "E_IntLoop_Co" "', argument " "7"" of type '" "int""'");
46398     }
46399     arg7 = static_cast< int >(val7);
46400     ecode8 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
46401     if (!SWIG_IsOK(ecode8)) {
46402       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "E_IntLoop_Co" "', argument " "8"" of type '" "short""'");
46403     }
46404     arg8 = static_cast< short >(val8);
46405     ecode9 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
46406     if (!SWIG_IsOK(ecode9)) {
46407       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "E_IntLoop_Co" "', argument " "9"" of type '" "short""'");
46408     }
46409     arg9 = static_cast< short >(val9);
46410     ecode10 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
46411     if (!SWIG_IsOK(ecode10)) {
46412       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "E_IntLoop_Co" "', argument " "10"" of type '" "short""'");
46413     }
46414     arg10 = static_cast< short >(val10);
46415     ecode11 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
46416     if (!SWIG_IsOK(ecode11)) {
46417       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "E_IntLoop_Co" "', argument " "11"" of type '" "short""'");
46418     }
46419     arg11 = static_cast< short >(val11);
46420     ecode12 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
46421     if (!SWIG_IsOK(ecode12)) {
46422       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "E_IntLoop_Co" "', argument " "12"" of type '" "int""'");
46423     }
46424     arg12 = static_cast< int >(val12);
46425     res13 = SWIG_ConvertPtr(ST(12), &argp13,SWIGTYPE_p_vrna_param_t, 0 |  0 );
46426     if (!SWIG_IsOK(res13)) {
46427       SWIG_exception_fail(SWIG_ArgError(res13), "in method '" "E_IntLoop_Co" "', argument " "13"" of type '" "vrna_param_t *""'");
46428     }
46429     arg13 = reinterpret_cast< vrna_param_t * >(argp13);
46430     {
46431       try {
46432         result = (int)E_IntLoop_Co(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13);
46433       } catch (const std::exception& e) {
46434         SWIG_exception(SWIG_RuntimeError, e.what());
46435       }
46436     }
46437     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
46438 
46439 
46440 
46441 
46442 
46443 
46444 
46445 
46446 
46447 
46448 
46449 
46450 
46451     XSRETURN(argvi);
46452   fail:
46453 
46454 
46455 
46456 
46457 
46458 
46459 
46460 
46461 
46462 
46463 
46464 
46465 
46466     SWIG_croak_null();
46467   }
46468 }
46469 
46470 
XS(_wrap_ubf_eval_int_loop)46471 XS(_wrap_ubf_eval_int_loop) {
46472   {
46473     int arg1 ;
46474     int arg2 ;
46475     int arg3 ;
46476     int arg4 ;
46477     int arg5 ;
46478     int arg6 ;
46479     int arg7 ;
46480     int arg8 ;
46481     short arg9 ;
46482     short arg10 ;
46483     short arg11 ;
46484     short arg12 ;
46485     unsigned char arg13 ;
46486     unsigned char arg14 ;
46487     int *arg15 = (int *) 0 ;
46488     int arg16 ;
46489     int arg17 ;
46490     vrna_param_t *arg18 = (vrna_param_t *) 0 ;
46491     vrna_sc_t *arg19 = (vrna_sc_t *) 0 ;
46492     int val1 ;
46493     int ecode1 = 0 ;
46494     int val2 ;
46495     int ecode2 = 0 ;
46496     int val3 ;
46497     int ecode3 = 0 ;
46498     int val4 ;
46499     int ecode4 = 0 ;
46500     int val5 ;
46501     int ecode5 = 0 ;
46502     int val6 ;
46503     int ecode6 = 0 ;
46504     int val7 ;
46505     int ecode7 = 0 ;
46506     int val8 ;
46507     int ecode8 = 0 ;
46508     short val9 ;
46509     int ecode9 = 0 ;
46510     short val10 ;
46511     int ecode10 = 0 ;
46512     short val11 ;
46513     int ecode11 = 0 ;
46514     short val12 ;
46515     int ecode12 = 0 ;
46516     unsigned char val13 ;
46517     int ecode13 = 0 ;
46518     unsigned char val14 ;
46519     int ecode14 = 0 ;
46520     void *argp15 = 0 ;
46521     int res15 = 0 ;
46522     int val16 ;
46523     int ecode16 = 0 ;
46524     int val17 ;
46525     int ecode17 = 0 ;
46526     void *argp18 = 0 ;
46527     int res18 = 0 ;
46528     void *argp19 = 0 ;
46529     int res19 = 0 ;
46530     int argvi = 0;
46531     int result;
46532     dXSARGS;
46533 
46534     if ((items < 19) || (items > 19)) {
46535       SWIG_croak("Usage: ubf_eval_int_loop(i,j,p,q,i1,j1,p1,q1,si,sj,sp,sq,type,type_2,rtype,ij,cp,P,sc);");
46536     }
46537     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
46538     if (!SWIG_IsOK(ecode1)) {
46539       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "ubf_eval_int_loop" "', argument " "1"" of type '" "int""'");
46540     }
46541     arg1 = static_cast< int >(val1);
46542     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
46543     if (!SWIG_IsOK(ecode2)) {
46544       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ubf_eval_int_loop" "', argument " "2"" of type '" "int""'");
46545     }
46546     arg2 = static_cast< int >(val2);
46547     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
46548     if (!SWIG_IsOK(ecode3)) {
46549       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "ubf_eval_int_loop" "', argument " "3"" of type '" "int""'");
46550     }
46551     arg3 = static_cast< int >(val3);
46552     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
46553     if (!SWIG_IsOK(ecode4)) {
46554       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "ubf_eval_int_loop" "', argument " "4"" of type '" "int""'");
46555     }
46556     arg4 = static_cast< int >(val4);
46557     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
46558     if (!SWIG_IsOK(ecode5)) {
46559       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "ubf_eval_int_loop" "', argument " "5"" of type '" "int""'");
46560     }
46561     arg5 = static_cast< int >(val5);
46562     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
46563     if (!SWIG_IsOK(ecode6)) {
46564       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "ubf_eval_int_loop" "', argument " "6"" of type '" "int""'");
46565     }
46566     arg6 = static_cast< int >(val6);
46567     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
46568     if (!SWIG_IsOK(ecode7)) {
46569       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "ubf_eval_int_loop" "', argument " "7"" of type '" "int""'");
46570     }
46571     arg7 = static_cast< int >(val7);
46572     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
46573     if (!SWIG_IsOK(ecode8)) {
46574       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "ubf_eval_int_loop" "', argument " "8"" of type '" "int""'");
46575     }
46576     arg8 = static_cast< int >(val8);
46577     ecode9 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
46578     if (!SWIG_IsOK(ecode9)) {
46579       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "ubf_eval_int_loop" "', argument " "9"" of type '" "short""'");
46580     }
46581     arg9 = static_cast< short >(val9);
46582     ecode10 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
46583     if (!SWIG_IsOK(ecode10)) {
46584       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "ubf_eval_int_loop" "', argument " "10"" of type '" "short""'");
46585     }
46586     arg10 = static_cast< short >(val10);
46587     ecode11 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
46588     if (!SWIG_IsOK(ecode11)) {
46589       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "ubf_eval_int_loop" "', argument " "11"" of type '" "short""'");
46590     }
46591     arg11 = static_cast< short >(val11);
46592     ecode12 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
46593     if (!SWIG_IsOK(ecode12)) {
46594       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "ubf_eval_int_loop" "', argument " "12"" of type '" "short""'");
46595     }
46596     arg12 = static_cast< short >(val12);
46597     ecode13 = SWIG_AsVal_unsigned_SS_char SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
46598     if (!SWIG_IsOK(ecode13)) {
46599       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "ubf_eval_int_loop" "', argument " "13"" of type '" "unsigned char""'");
46600     }
46601     arg13 = static_cast< unsigned char >(val13);
46602     ecode14 = SWIG_AsVal_unsigned_SS_char SWIG_PERL_CALL_ARGS_2(ST(13), &val14);
46603     if (!SWIG_IsOK(ecode14)) {
46604       SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "ubf_eval_int_loop" "', argument " "14"" of type '" "unsigned char""'");
46605     }
46606     arg14 = static_cast< unsigned char >(val14);
46607     res15 = SWIG_ConvertPtr(ST(14), &argp15,SWIGTYPE_p_int, 0 |  0 );
46608     if (!SWIG_IsOK(res15)) {
46609       SWIG_exception_fail(SWIG_ArgError(res15), "in method '" "ubf_eval_int_loop" "', argument " "15"" of type '" "int *""'");
46610     }
46611     arg15 = reinterpret_cast< int * >(argp15);
46612     ecode16 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), &val16);
46613     if (!SWIG_IsOK(ecode16)) {
46614       SWIG_exception_fail(SWIG_ArgError(ecode16), "in method '" "ubf_eval_int_loop" "', argument " "16"" of type '" "int""'");
46615     }
46616     arg16 = static_cast< int >(val16);
46617     ecode17 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(16), &val17);
46618     if (!SWIG_IsOK(ecode17)) {
46619       SWIG_exception_fail(SWIG_ArgError(ecode17), "in method '" "ubf_eval_int_loop" "', argument " "17"" of type '" "int""'");
46620     }
46621     arg17 = static_cast< int >(val17);
46622     res18 = SWIG_ConvertPtr(ST(17), &argp18,SWIGTYPE_p_vrna_param_t, 0 |  0 );
46623     if (!SWIG_IsOK(res18)) {
46624       SWIG_exception_fail(SWIG_ArgError(res18), "in method '" "ubf_eval_int_loop" "', argument " "18"" of type '" "vrna_param_t *""'");
46625     }
46626     arg18 = reinterpret_cast< vrna_param_t * >(argp18);
46627     res19 = SWIG_ConvertPtr(ST(18), &argp19,SWIGTYPE_p_vrna_sc_s, 0 |  0 );
46628     if (!SWIG_IsOK(res19)) {
46629       SWIG_exception_fail(SWIG_ArgError(res19), "in method '" "ubf_eval_int_loop" "', argument " "19"" of type '" "vrna_sc_t *""'");
46630     }
46631     arg19 = reinterpret_cast< vrna_sc_t * >(argp19);
46632     {
46633       try {
46634         result = (int)ubf_eval_int_loop(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17,arg18,arg19);
46635       } catch (const std::exception& e) {
46636         SWIG_exception(SWIG_RuntimeError, e.what());
46637       }
46638     }
46639     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
46640 
46641 
46642 
46643 
46644 
46645 
46646 
46647 
46648 
46649 
46650 
46651 
46652 
46653 
46654 
46655 
46656 
46657 
46658 
46659     XSRETURN(argvi);
46660   fail:
46661 
46662 
46663 
46664 
46665 
46666 
46667 
46668 
46669 
46670 
46671 
46672 
46673 
46674 
46675 
46676 
46677 
46678 
46679 
46680     SWIG_croak_null();
46681   }
46682 }
46683 
46684 
XS(_wrap_ubf_eval_int_loop2)46685 XS(_wrap_ubf_eval_int_loop2) {
46686   {
46687     int arg1 ;
46688     int arg2 ;
46689     int arg3 ;
46690     int arg4 ;
46691     int arg5 ;
46692     int arg6 ;
46693     int arg7 ;
46694     int arg8 ;
46695     short arg9 ;
46696     short arg10 ;
46697     short arg11 ;
46698     short arg12 ;
46699     unsigned char arg13 ;
46700     unsigned char arg14 ;
46701     int *arg15 = (int *) 0 ;
46702     int arg16 ;
46703     unsigned int *arg17 = (unsigned int *) 0 ;
46704     unsigned int *arg18 = (unsigned int *) 0 ;
46705     vrna_param_t *arg19 = (vrna_param_t *) 0 ;
46706     vrna_sc_t *arg20 = (vrna_sc_t *) 0 ;
46707     int val1 ;
46708     int ecode1 = 0 ;
46709     int val2 ;
46710     int ecode2 = 0 ;
46711     int val3 ;
46712     int ecode3 = 0 ;
46713     int val4 ;
46714     int ecode4 = 0 ;
46715     int val5 ;
46716     int ecode5 = 0 ;
46717     int val6 ;
46718     int ecode6 = 0 ;
46719     int val7 ;
46720     int ecode7 = 0 ;
46721     int val8 ;
46722     int ecode8 = 0 ;
46723     short val9 ;
46724     int ecode9 = 0 ;
46725     short val10 ;
46726     int ecode10 = 0 ;
46727     short val11 ;
46728     int ecode11 = 0 ;
46729     short val12 ;
46730     int ecode12 = 0 ;
46731     unsigned char val13 ;
46732     int ecode13 = 0 ;
46733     unsigned char val14 ;
46734     int ecode14 = 0 ;
46735     void *argp15 = 0 ;
46736     int res15 = 0 ;
46737     int val16 ;
46738     int ecode16 = 0 ;
46739     void *argp17 = 0 ;
46740     int res17 = 0 ;
46741     void *argp18 = 0 ;
46742     int res18 = 0 ;
46743     void *argp19 = 0 ;
46744     int res19 = 0 ;
46745     void *argp20 = 0 ;
46746     int res20 = 0 ;
46747     int argvi = 0;
46748     int result;
46749     dXSARGS;
46750 
46751     if ((items < 20) || (items > 20)) {
46752       SWIG_croak("Usage: ubf_eval_int_loop2(i,j,p,q,i1,j1,p1,q1,si,sj,sp,sq,type,type_2,rtype,ij,sn,ss,P,sc);");
46753     }
46754     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
46755     if (!SWIG_IsOK(ecode1)) {
46756       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "ubf_eval_int_loop2" "', argument " "1"" of type '" "int""'");
46757     }
46758     arg1 = static_cast< int >(val1);
46759     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
46760     if (!SWIG_IsOK(ecode2)) {
46761       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ubf_eval_int_loop2" "', argument " "2"" of type '" "int""'");
46762     }
46763     arg2 = static_cast< int >(val2);
46764     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
46765     if (!SWIG_IsOK(ecode3)) {
46766       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "ubf_eval_int_loop2" "', argument " "3"" of type '" "int""'");
46767     }
46768     arg3 = static_cast< int >(val3);
46769     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
46770     if (!SWIG_IsOK(ecode4)) {
46771       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "ubf_eval_int_loop2" "', argument " "4"" of type '" "int""'");
46772     }
46773     arg4 = static_cast< int >(val4);
46774     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
46775     if (!SWIG_IsOK(ecode5)) {
46776       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "ubf_eval_int_loop2" "', argument " "5"" of type '" "int""'");
46777     }
46778     arg5 = static_cast< int >(val5);
46779     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
46780     if (!SWIG_IsOK(ecode6)) {
46781       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "ubf_eval_int_loop2" "', argument " "6"" of type '" "int""'");
46782     }
46783     arg6 = static_cast< int >(val6);
46784     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
46785     if (!SWIG_IsOK(ecode7)) {
46786       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "ubf_eval_int_loop2" "', argument " "7"" of type '" "int""'");
46787     }
46788     arg7 = static_cast< int >(val7);
46789     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
46790     if (!SWIG_IsOK(ecode8)) {
46791       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "ubf_eval_int_loop2" "', argument " "8"" of type '" "int""'");
46792     }
46793     arg8 = static_cast< int >(val8);
46794     ecode9 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
46795     if (!SWIG_IsOK(ecode9)) {
46796       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "ubf_eval_int_loop2" "', argument " "9"" of type '" "short""'");
46797     }
46798     arg9 = static_cast< short >(val9);
46799     ecode10 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
46800     if (!SWIG_IsOK(ecode10)) {
46801       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "ubf_eval_int_loop2" "', argument " "10"" of type '" "short""'");
46802     }
46803     arg10 = static_cast< short >(val10);
46804     ecode11 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
46805     if (!SWIG_IsOK(ecode11)) {
46806       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "ubf_eval_int_loop2" "', argument " "11"" of type '" "short""'");
46807     }
46808     arg11 = static_cast< short >(val11);
46809     ecode12 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
46810     if (!SWIG_IsOK(ecode12)) {
46811       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "ubf_eval_int_loop2" "', argument " "12"" of type '" "short""'");
46812     }
46813     arg12 = static_cast< short >(val12);
46814     ecode13 = SWIG_AsVal_unsigned_SS_char SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
46815     if (!SWIG_IsOK(ecode13)) {
46816       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "ubf_eval_int_loop2" "', argument " "13"" of type '" "unsigned char""'");
46817     }
46818     arg13 = static_cast< unsigned char >(val13);
46819     ecode14 = SWIG_AsVal_unsigned_SS_char SWIG_PERL_CALL_ARGS_2(ST(13), &val14);
46820     if (!SWIG_IsOK(ecode14)) {
46821       SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "ubf_eval_int_loop2" "', argument " "14"" of type '" "unsigned char""'");
46822     }
46823     arg14 = static_cast< unsigned char >(val14);
46824     res15 = SWIG_ConvertPtr(ST(14), &argp15,SWIGTYPE_p_int, 0 |  0 );
46825     if (!SWIG_IsOK(res15)) {
46826       SWIG_exception_fail(SWIG_ArgError(res15), "in method '" "ubf_eval_int_loop2" "', argument " "15"" of type '" "int *""'");
46827     }
46828     arg15 = reinterpret_cast< int * >(argp15);
46829     ecode16 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(15), &val16);
46830     if (!SWIG_IsOK(ecode16)) {
46831       SWIG_exception_fail(SWIG_ArgError(ecode16), "in method '" "ubf_eval_int_loop2" "', argument " "16"" of type '" "int""'");
46832     }
46833     arg16 = static_cast< int >(val16);
46834     res17 = SWIG_ConvertPtr(ST(16), &argp17,SWIGTYPE_p_unsigned_int, 0 |  0 );
46835     if (!SWIG_IsOK(res17)) {
46836       SWIG_exception_fail(SWIG_ArgError(res17), "in method '" "ubf_eval_int_loop2" "', argument " "17"" of type '" "unsigned int *""'");
46837     }
46838     arg17 = reinterpret_cast< unsigned int * >(argp17);
46839     res18 = SWIG_ConvertPtr(ST(17), &argp18,SWIGTYPE_p_unsigned_int, 0 |  0 );
46840     if (!SWIG_IsOK(res18)) {
46841       SWIG_exception_fail(SWIG_ArgError(res18), "in method '" "ubf_eval_int_loop2" "', argument " "18"" of type '" "unsigned int *""'");
46842     }
46843     arg18 = reinterpret_cast< unsigned int * >(argp18);
46844     res19 = SWIG_ConvertPtr(ST(18), &argp19,SWIGTYPE_p_vrna_param_t, 0 |  0 );
46845     if (!SWIG_IsOK(res19)) {
46846       SWIG_exception_fail(SWIG_ArgError(res19), "in method '" "ubf_eval_int_loop2" "', argument " "19"" of type '" "vrna_param_t *""'");
46847     }
46848     arg19 = reinterpret_cast< vrna_param_t * >(argp19);
46849     res20 = SWIG_ConvertPtr(ST(19), &argp20,SWIGTYPE_p_vrna_sc_s, 0 |  0 );
46850     if (!SWIG_IsOK(res20)) {
46851       SWIG_exception_fail(SWIG_ArgError(res20), "in method '" "ubf_eval_int_loop2" "', argument " "20"" of type '" "vrna_sc_t *""'");
46852     }
46853     arg20 = reinterpret_cast< vrna_sc_t * >(argp20);
46854     {
46855       try {
46856         result = (int)ubf_eval_int_loop2(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17,arg18,arg19,arg20);
46857       } catch (const std::exception& e) {
46858         SWIG_exception(SWIG_RuntimeError, e.what());
46859       }
46860     }
46861     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
46862 
46863 
46864 
46865 
46866 
46867 
46868 
46869 
46870 
46871 
46872 
46873 
46874 
46875 
46876 
46877 
46878 
46879 
46880 
46881 
46882     XSRETURN(argvi);
46883   fail:
46884 
46885 
46886 
46887 
46888 
46889 
46890 
46891 
46892 
46893 
46894 
46895 
46896 
46897 
46898 
46899 
46900 
46901 
46902 
46903 
46904     SWIG_croak_null();
46905   }
46906 }
46907 
46908 
XS(_wrap_ubf_eval_ext_int_loop)46909 XS(_wrap_ubf_eval_ext_int_loop) {
46910   {
46911     int arg1 ;
46912     int arg2 ;
46913     int arg3 ;
46914     int arg4 ;
46915     int arg5 ;
46916     int arg6 ;
46917     int arg7 ;
46918     int arg8 ;
46919     short arg9 ;
46920     short arg10 ;
46921     short arg11 ;
46922     short arg12 ;
46923     unsigned char arg13 ;
46924     unsigned char arg14 ;
46925     int arg15 ;
46926     vrna_param_t *arg16 = (vrna_param_t *) 0 ;
46927     vrna_sc_t *arg17 = (vrna_sc_t *) 0 ;
46928     int val1 ;
46929     int ecode1 = 0 ;
46930     int val2 ;
46931     int ecode2 = 0 ;
46932     int val3 ;
46933     int ecode3 = 0 ;
46934     int val4 ;
46935     int ecode4 = 0 ;
46936     int val5 ;
46937     int ecode5 = 0 ;
46938     int val6 ;
46939     int ecode6 = 0 ;
46940     int val7 ;
46941     int ecode7 = 0 ;
46942     int val8 ;
46943     int ecode8 = 0 ;
46944     short val9 ;
46945     int ecode9 = 0 ;
46946     short val10 ;
46947     int ecode10 = 0 ;
46948     short val11 ;
46949     int ecode11 = 0 ;
46950     short val12 ;
46951     int ecode12 = 0 ;
46952     unsigned char val13 ;
46953     int ecode13 = 0 ;
46954     unsigned char val14 ;
46955     int ecode14 = 0 ;
46956     int val15 ;
46957     int ecode15 = 0 ;
46958     void *argp16 = 0 ;
46959     int res16 = 0 ;
46960     void *argp17 = 0 ;
46961     int res17 = 0 ;
46962     int argvi = 0;
46963     int result;
46964     dXSARGS;
46965 
46966     if ((items < 17) || (items > 17)) {
46967       SWIG_croak("Usage: ubf_eval_ext_int_loop(i,j,p,q,i1,j1,p1,q1,si,sj,sp,sq,type,type_2,length,P,sc);");
46968     }
46969     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
46970     if (!SWIG_IsOK(ecode1)) {
46971       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "ubf_eval_ext_int_loop" "', argument " "1"" of type '" "int""'");
46972     }
46973     arg1 = static_cast< int >(val1);
46974     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
46975     if (!SWIG_IsOK(ecode2)) {
46976       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "ubf_eval_ext_int_loop" "', argument " "2"" of type '" "int""'");
46977     }
46978     arg2 = static_cast< int >(val2);
46979     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
46980     if (!SWIG_IsOK(ecode3)) {
46981       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "ubf_eval_ext_int_loop" "', argument " "3"" of type '" "int""'");
46982     }
46983     arg3 = static_cast< int >(val3);
46984     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
46985     if (!SWIG_IsOK(ecode4)) {
46986       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "ubf_eval_ext_int_loop" "', argument " "4"" of type '" "int""'");
46987     }
46988     arg4 = static_cast< int >(val4);
46989     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
46990     if (!SWIG_IsOK(ecode5)) {
46991       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "ubf_eval_ext_int_loop" "', argument " "5"" of type '" "int""'");
46992     }
46993     arg5 = static_cast< int >(val5);
46994     ecode6 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
46995     if (!SWIG_IsOK(ecode6)) {
46996       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "ubf_eval_ext_int_loop" "', argument " "6"" of type '" "int""'");
46997     }
46998     arg6 = static_cast< int >(val6);
46999     ecode7 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
47000     if (!SWIG_IsOK(ecode7)) {
47001       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "ubf_eval_ext_int_loop" "', argument " "7"" of type '" "int""'");
47002     }
47003     arg7 = static_cast< int >(val7);
47004     ecode8 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(7), &val8);
47005     if (!SWIG_IsOK(ecode8)) {
47006       SWIG_exception_fail(SWIG_ArgError(ecode8), "in method '" "ubf_eval_ext_int_loop" "', argument " "8"" of type '" "int""'");
47007     }
47008     arg8 = static_cast< int >(val8);
47009     ecode9 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(8), &val9);
47010     if (!SWIG_IsOK(ecode9)) {
47011       SWIG_exception_fail(SWIG_ArgError(ecode9), "in method '" "ubf_eval_ext_int_loop" "', argument " "9"" of type '" "short""'");
47012     }
47013     arg9 = static_cast< short >(val9);
47014     ecode10 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(9), &val10);
47015     if (!SWIG_IsOK(ecode10)) {
47016       SWIG_exception_fail(SWIG_ArgError(ecode10), "in method '" "ubf_eval_ext_int_loop" "', argument " "10"" of type '" "short""'");
47017     }
47018     arg10 = static_cast< short >(val10);
47019     ecode11 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(10), &val11);
47020     if (!SWIG_IsOK(ecode11)) {
47021       SWIG_exception_fail(SWIG_ArgError(ecode11), "in method '" "ubf_eval_ext_int_loop" "', argument " "11"" of type '" "short""'");
47022     }
47023     arg11 = static_cast< short >(val11);
47024     ecode12 = SWIG_AsVal_short SWIG_PERL_CALL_ARGS_2(ST(11), &val12);
47025     if (!SWIG_IsOK(ecode12)) {
47026       SWIG_exception_fail(SWIG_ArgError(ecode12), "in method '" "ubf_eval_ext_int_loop" "', argument " "12"" of type '" "short""'");
47027     }
47028     arg12 = static_cast< short >(val12);
47029     ecode13 = SWIG_AsVal_unsigned_SS_char SWIG_PERL_CALL_ARGS_2(ST(12), &val13);
47030     if (!SWIG_IsOK(ecode13)) {
47031       SWIG_exception_fail(SWIG_ArgError(ecode13), "in method '" "ubf_eval_ext_int_loop" "', argument " "13"" of type '" "unsigned char""'");
47032     }
47033     arg13 = static_cast< unsigned char >(val13);
47034     ecode14 = SWIG_AsVal_unsigned_SS_char SWIG_PERL_CALL_ARGS_2(ST(13), &val14);
47035     if (!SWIG_IsOK(ecode14)) {
47036       SWIG_exception_fail(SWIG_ArgError(ecode14), "in method '" "ubf_eval_ext_int_loop" "', argument " "14"" of type '" "unsigned char""'");
47037     }
47038     arg14 = static_cast< unsigned char >(val14);
47039     ecode15 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(14), &val15);
47040     if (!SWIG_IsOK(ecode15)) {
47041       SWIG_exception_fail(SWIG_ArgError(ecode15), "in method '" "ubf_eval_ext_int_loop" "', argument " "15"" of type '" "int""'");
47042     }
47043     arg15 = static_cast< int >(val15);
47044     res16 = SWIG_ConvertPtr(ST(15), &argp16,SWIGTYPE_p_vrna_param_t, 0 |  0 );
47045     if (!SWIG_IsOK(res16)) {
47046       SWIG_exception_fail(SWIG_ArgError(res16), "in method '" "ubf_eval_ext_int_loop" "', argument " "16"" of type '" "vrna_param_t *""'");
47047     }
47048     arg16 = reinterpret_cast< vrna_param_t * >(argp16);
47049     res17 = SWIG_ConvertPtr(ST(16), &argp17,SWIGTYPE_p_vrna_sc_s, 0 |  0 );
47050     if (!SWIG_IsOK(res17)) {
47051       SWIG_exception_fail(SWIG_ArgError(res17), "in method '" "ubf_eval_ext_int_loop" "', argument " "17"" of type '" "vrna_sc_t *""'");
47052     }
47053     arg17 = reinterpret_cast< vrna_sc_t * >(argp17);
47054     {
47055       try {
47056         result = (int)ubf_eval_ext_int_loop(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12,arg13,arg14,arg15,arg16,arg17);
47057       } catch (const std::exception& e) {
47058         SWIG_exception(SWIG_RuntimeError, e.what());
47059       }
47060     }
47061     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
47062 
47063 
47064 
47065 
47066 
47067 
47068 
47069 
47070 
47071 
47072 
47073 
47074 
47075 
47076 
47077 
47078 
47079     XSRETURN(argvi);
47080   fail:
47081 
47082 
47083 
47084 
47085 
47086 
47087 
47088 
47089 
47090 
47091 
47092 
47093 
47094 
47095 
47096 
47097 
47098     SWIG_croak_null();
47099   }
47100 }
47101 
47102 
XS(_wrap_E_ml_rightmost_stem)47103 XS(_wrap_E_ml_rightmost_stem) {
47104   {
47105     int arg1 ;
47106     int arg2 ;
47107     vrna_fold_compound_t *arg3 = (vrna_fold_compound_t *) 0 ;
47108     int val1 ;
47109     int ecode1 = 0 ;
47110     int val2 ;
47111     int ecode2 = 0 ;
47112     void *argp3 = 0 ;
47113     int res3 = 0 ;
47114     int argvi = 0;
47115     int result;
47116     dXSARGS;
47117 
47118     if ((items < 3) || (items > 3)) {
47119       SWIG_croak("Usage: E_ml_rightmost_stem(i,j,fc);");
47120     }
47121     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
47122     if (!SWIG_IsOK(ecode1)) {
47123       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "E_ml_rightmost_stem" "', argument " "1"" of type '" "int""'");
47124     }
47125     arg1 = static_cast< int >(val1);
47126     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
47127     if (!SWIG_IsOK(ecode2)) {
47128       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "E_ml_rightmost_stem" "', argument " "2"" of type '" "int""'");
47129     }
47130     arg2 = static_cast< int >(val2);
47131     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
47132     if (!SWIG_IsOK(res3)) {
47133       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "E_ml_rightmost_stem" "', argument " "3"" of type '" "vrna_fold_compound_t *""'");
47134     }
47135     arg3 = reinterpret_cast< vrna_fold_compound_t * >(argp3);
47136     {
47137       try {
47138         result = (int)E_ml_rightmost_stem(arg1,arg2,arg3);
47139       } catch (const std::exception& e) {
47140         SWIG_exception(SWIG_RuntimeError, e.what());
47141       }
47142     }
47143     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
47144 
47145 
47146 
47147     XSRETURN(argvi);
47148   fail:
47149 
47150 
47151 
47152     SWIG_croak_null();
47153   }
47154 }
47155 
47156 
XS(_wrap_E_MLstem)47157 XS(_wrap_E_MLstem) {
47158   {
47159     int arg1 ;
47160     int arg2 ;
47161     int arg3 ;
47162     vrna_param_t *arg4 = (vrna_param_t *) 0 ;
47163     int val1 ;
47164     int ecode1 = 0 ;
47165     int val2 ;
47166     int ecode2 = 0 ;
47167     int val3 ;
47168     int ecode3 = 0 ;
47169     void *argp4 = 0 ;
47170     int res4 = 0 ;
47171     int argvi = 0;
47172     int result;
47173     dXSARGS;
47174 
47175     if ((items < 4) || (items > 4)) {
47176       SWIG_croak("Usage: E_MLstem(type,si1,sj1,P);");
47177     }
47178     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
47179     if (!SWIG_IsOK(ecode1)) {
47180       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "E_MLstem" "', argument " "1"" of type '" "int""'");
47181     }
47182     arg1 = static_cast< int >(val1);
47183     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
47184     if (!SWIG_IsOK(ecode2)) {
47185       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "E_MLstem" "', argument " "2"" of type '" "int""'");
47186     }
47187     arg2 = static_cast< int >(val2);
47188     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
47189     if (!SWIG_IsOK(ecode3)) {
47190       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "E_MLstem" "', argument " "3"" of type '" "int""'");
47191     }
47192     arg3 = static_cast< int >(val3);
47193     res4 = SWIG_ConvertPtr(ST(3), &argp4,SWIGTYPE_p_vrna_param_t, 0 |  0 );
47194     if (!SWIG_IsOK(res4)) {
47195       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "E_MLstem" "', argument " "4"" of type '" "vrna_param_t *""'");
47196     }
47197     arg4 = reinterpret_cast< vrna_param_t * >(argp4);
47198     {
47199       try {
47200         result = (int)E_MLstem(arg1,arg2,arg3,arg4);
47201       } catch (const std::exception& e) {
47202         SWIG_exception(SWIG_RuntimeError, e.what());
47203       }
47204     }
47205     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
47206 
47207 
47208 
47209 
47210     XSRETURN(argvi);
47211   fail:
47212 
47213 
47214 
47215 
47216     SWIG_croak_null();
47217   }
47218 }
47219 
47220 
XS(_wrap_exp_E_MLstem)47221 XS(_wrap_exp_E_MLstem) {
47222   {
47223     int arg1 ;
47224     int arg2 ;
47225     int arg3 ;
47226     vrna_exp_param_t *arg4 = (vrna_exp_param_t *) 0 ;
47227     int val1 ;
47228     int ecode1 = 0 ;
47229     int val2 ;
47230     int ecode2 = 0 ;
47231     int val3 ;
47232     int ecode3 = 0 ;
47233     void *argp4 = 0 ;
47234     int res4 = 0 ;
47235     int argvi = 0;
47236     FLT_OR_DBL result;
47237     dXSARGS;
47238 
47239     if ((items < 4) || (items > 4)) {
47240       SWIG_croak("Usage: exp_E_MLstem(type,si1,sj1,P);");
47241     }
47242     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
47243     if (!SWIG_IsOK(ecode1)) {
47244       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "exp_E_MLstem" "', argument " "1"" of type '" "int""'");
47245     }
47246     arg1 = static_cast< int >(val1);
47247     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
47248     if (!SWIG_IsOK(ecode2)) {
47249       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "exp_E_MLstem" "', argument " "2"" of type '" "int""'");
47250     }
47251     arg2 = static_cast< int >(val2);
47252     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
47253     if (!SWIG_IsOK(ecode3)) {
47254       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "exp_E_MLstem" "', argument " "3"" of type '" "int""'");
47255     }
47256     arg3 = static_cast< int >(val3);
47257     res4 = SWIG_ConvertPtr(ST(3), &argp4,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
47258     if (!SWIG_IsOK(res4)) {
47259       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "exp_E_MLstem" "', argument " "4"" of type '" "vrna_exp_param_t *""'");
47260     }
47261     arg4 = reinterpret_cast< vrna_exp_param_t * >(argp4);
47262     {
47263       try {
47264         result = (FLT_OR_DBL)exp_E_MLstem(arg1,arg2,arg3,arg4);
47265       } catch (const std::exception& e) {
47266         SWIG_exception(SWIG_RuntimeError, e.what());
47267       }
47268     }
47269     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
47270 
47271 
47272 
47273 
47274     XSRETURN(argvi);
47275   fail:
47276 
47277 
47278 
47279 
47280     SWIG_croak_null();
47281   }
47282 }
47283 
47284 
XS(_wrap_maximum_matching)47285 XS(_wrap_maximum_matching) {
47286   {
47287     std::string arg1 ;
47288     int argvi = 0;
47289     int result;
47290     dXSARGS;
47291 
47292     if ((items < 1) || (items > 1)) {
47293       SWIG_croak("Usage: maximum_matching(sequence);");
47294     }
47295     {
47296       std::string *ptr = (std::string *)0;
47297       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
47298       if (!SWIG_IsOK(res) || !ptr) {
47299         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "maximum_matching" "', argument " "1"" of type '" "std::string""'");
47300       }
47301       arg1 = *ptr;
47302       if (SWIG_IsNewObj(res)) delete ptr;
47303     }
47304     {
47305       try {
47306         result = (int)my_maximum_matching(arg1);
47307       } catch (const std::exception& e) {
47308         SWIG_exception(SWIG_RuntimeError, e.what());
47309       }
47310     }
47311     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
47312 
47313     XSRETURN(argvi);
47314   fail:
47315 
47316     SWIG_croak_null();
47317   }
47318 }
47319 
47320 
XS(_wrap_fold__SWIG_0)47321 XS(_wrap_fold__SWIG_0) {
47322   {
47323     char *arg1 = (char *) 0 ;
47324     float *arg2 = (float *) 0 ;
47325     int res1 ;
47326     char *buf1 = 0 ;
47327     int alloc1 = 0 ;
47328     float temp2 ;
47329     int res2 = SWIG_TMPOBJ ;
47330     int argvi = 0;
47331     char *result = 0 ;
47332     dXSARGS;
47333 
47334     arg2 = &temp2;
47335     if ((items < 1) || (items > 1)) {
47336       SWIG_croak("Usage: fold(string);");
47337     }
47338     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
47339     if (!SWIG_IsOK(res1)) {
47340       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold" "', argument " "1"" of type '" "char *""'");
47341     }
47342     arg1 = reinterpret_cast< char * >(buf1);
47343     {
47344       try {
47345         result = (char *)my_fold(arg1,arg2);
47346       } catch (const std::exception& e) {
47347         SWIG_exception(SWIG_RuntimeError, e.what());
47348       }
47349     }
47350     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
47351     if (SWIG_IsTmpObj(res2)) {
47352       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
47353     } else {
47354       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
47355       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_float, new_flags); argvi++  ;
47356     }
47357     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
47358 
47359     delete[] result;
47360     XSRETURN(argvi);
47361   fail:
47362     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
47363 
47364     SWIG_croak_null();
47365   }
47366 }
47367 
47368 
XS(_wrap_fold__SWIG_1)47369 XS(_wrap_fold__SWIG_1) {
47370   {
47371     char *arg1 = (char *) 0 ;
47372     char *arg2 = (char *) 0 ;
47373     float *arg3 = (float *) 0 ;
47374     int res1 ;
47375     char *buf1 = 0 ;
47376     int alloc1 = 0 ;
47377     int res2 ;
47378     char *buf2 = 0 ;
47379     int alloc2 = 0 ;
47380     float temp3 ;
47381     int res3 = SWIG_TMPOBJ ;
47382     int argvi = 0;
47383     char *result = 0 ;
47384     dXSARGS;
47385 
47386     arg3 = &temp3;
47387     if ((items < 2) || (items > 2)) {
47388       SWIG_croak("Usage: fold(string,constraints);");
47389     }
47390     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
47391     if (!SWIG_IsOK(res1)) {
47392       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold" "', argument " "1"" of type '" "char *""'");
47393     }
47394     arg1 = reinterpret_cast< char * >(buf1);
47395     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
47396     if (!SWIG_IsOK(res2)) {
47397       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold" "', argument " "2"" of type '" "char *""'");
47398     }
47399     arg2 = reinterpret_cast< char * >(buf2);
47400     {
47401       try {
47402         result = (char *)my_fold(arg1,arg2,arg3);
47403       } catch (const std::exception& e) {
47404         SWIG_exception(SWIG_RuntimeError, e.what());
47405       }
47406     }
47407     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
47408     if (SWIG_IsTmpObj(res3)) {
47409       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
47410     } else {
47411       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
47412       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
47413     }
47414     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
47415     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
47416 
47417     delete[] result;
47418     XSRETURN(argvi);
47419   fail:
47420     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
47421     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
47422 
47423     SWIG_croak_null();
47424   }
47425 }
47426 
47427 
XS(_wrap_fold)47428 XS(_wrap_fold) {
47429   dXSARGS;
47430 
47431   {
47432     unsigned long _index = 0;
47433     SWIG_TypeRank _rank = 0;
47434     if (items == 1) {
47435       SWIG_TypeRank _ranki = 0;
47436       SWIG_TypeRank _rankm = 0;
47437       SWIG_TypeRank _pi = 1;
47438       int _v = 0;
47439       {
47440         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
47441         _v = SWIG_CheckState(res);
47442       }
47443       if (!_v) goto check_1;
47444       _ranki += _v*_pi;
47445       _rankm += _pi;
47446       _pi *= SWIG_MAXCASTRANK;
47447       if (!_index || (_ranki < _rank)) {
47448         _rank = _ranki; _index = 1;
47449         if (_rank == _rankm) goto dispatch;
47450       }
47451     }
47452   check_1:
47453 
47454     if (items == 2) {
47455       SWIG_TypeRank _ranki = 0;
47456       SWIG_TypeRank _rankm = 0;
47457       SWIG_TypeRank _pi = 1;
47458       int _v = 0;
47459       {
47460         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
47461         _v = SWIG_CheckState(res);
47462       }
47463       if (!_v) goto check_2;
47464       _ranki += _v*_pi;
47465       _rankm += _pi;
47466       _pi *= SWIG_MAXCASTRANK;
47467       {
47468         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
47469         _v = SWIG_CheckState(res);
47470       }
47471       if (!_v) goto check_2;
47472       _ranki += _v*_pi;
47473       _rankm += _pi;
47474       _pi *= SWIG_MAXCASTRANK;
47475       if (!_index || (_ranki < _rank)) {
47476         _rank = _ranki; _index = 2;
47477         if (_rank == _rankm) goto dispatch;
47478       }
47479     }
47480   check_2:
47481 
47482   dispatch:
47483     switch(_index) {
47484     case 1:
47485       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold__SWIG_0); return;
47486     case 2:
47487       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold__SWIG_1); return;
47488     }
47489   }
47490 
47491   croak("No matching function for overloaded 'fold'");
47492   XSRETURN(0);
47493 }
47494 
47495 
XS(_wrap_alifold__SWIG_0)47496 XS(_wrap_alifold__SWIG_0) {
47497   {
47498     std::vector< std::string > arg1 ;
47499     float *arg2 = (float *) 0 ;
47500     std::vector< std::string > *v1 ;
47501     float temp2 ;
47502     int res2 = SWIG_TMPOBJ ;
47503     int argvi = 0;
47504     char *result = 0 ;
47505     dXSARGS;
47506 
47507     arg2 = &temp2;
47508     if ((items < 1) || (items > 1)) {
47509       SWIG_croak("Usage: alifold(alignment);");
47510     }
47511     {
47512       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
47513           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
47514         arg1 = *v1;
47515       } else if (SvROK(ST(0))) {
47516         AV *av = (AV *)SvRV(ST(0));
47517         if (SvTYPE(av) != SVt_PVAV)
47518         SWIG_croak("Type error in argument 1 of alifold. "
47519           "Expected an array of ""std::string");
47520         SV **tv;
47521         I32 len = av_len(av) + 1;
47522         for (int i=0; i<len; i++) {
47523           tv = av_fetch(av, i, 0);
47524           if (SvPOK(*tv)) {
47525             (&arg1)->push_back((std::string)SwigSvToString(*tv));
47526           } else {
47527             SWIG_croak("Type error in argument 1 of "
47528               "alifold. "
47529               "Expected an array of ""std::string");
47530           }
47531         }
47532       } else {
47533         SWIG_croak("Type error in argument 1 of alifold. "
47534           "Expected an array of ""std::string");
47535       }
47536     }
47537     {
47538       try {
47539         result = (char *)my_alifold(arg1,arg2);
47540       } catch (const std::exception& e) {
47541         SWIG_exception(SWIG_RuntimeError, e.what());
47542       }
47543     }
47544     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
47545     if (SWIG_IsTmpObj(res2)) {
47546       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
47547     } else {
47548       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
47549       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_float, new_flags); argvi++  ;
47550     }
47551 
47552     delete[] result;
47553     XSRETURN(argvi);
47554   fail:
47555 
47556     SWIG_croak_null();
47557   }
47558 }
47559 
47560 
XS(_wrap_alifold__SWIG_1)47561 XS(_wrap_alifold__SWIG_1) {
47562   {
47563     std::vector< std::string > arg1 ;
47564     char *arg2 = (char *) 0 ;
47565     float *arg3 = (float *) 0 ;
47566     std::vector< std::string > *v1 ;
47567     int res2 ;
47568     char *buf2 = 0 ;
47569     int alloc2 = 0 ;
47570     float temp3 ;
47571     int res3 = SWIG_TMPOBJ ;
47572     int argvi = 0;
47573     char *result = 0 ;
47574     dXSARGS;
47575 
47576     arg3 = &temp3;
47577     if ((items < 2) || (items > 2)) {
47578       SWIG_croak("Usage: alifold(alignment,constraints);");
47579     }
47580     {
47581       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
47582           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
47583         arg1 = *v1;
47584       } else if (SvROK(ST(0))) {
47585         AV *av = (AV *)SvRV(ST(0));
47586         if (SvTYPE(av) != SVt_PVAV)
47587         SWIG_croak("Type error in argument 1 of alifold. "
47588           "Expected an array of ""std::string");
47589         SV **tv;
47590         I32 len = av_len(av) + 1;
47591         for (int i=0; i<len; i++) {
47592           tv = av_fetch(av, i, 0);
47593           if (SvPOK(*tv)) {
47594             (&arg1)->push_back((std::string)SwigSvToString(*tv));
47595           } else {
47596             SWIG_croak("Type error in argument 1 of "
47597               "alifold. "
47598               "Expected an array of ""std::string");
47599           }
47600         }
47601       } else {
47602         SWIG_croak("Type error in argument 1 of alifold. "
47603           "Expected an array of ""std::string");
47604       }
47605     }
47606     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
47607     if (!SWIG_IsOK(res2)) {
47608       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "alifold" "', argument " "2"" of type '" "char *""'");
47609     }
47610     arg2 = reinterpret_cast< char * >(buf2);
47611     {
47612       try {
47613         result = (char *)my_alifold(arg1,arg2,arg3);
47614       } catch (const std::exception& e) {
47615         SWIG_exception(SWIG_RuntimeError, e.what());
47616       }
47617     }
47618     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
47619     if (SWIG_IsTmpObj(res3)) {
47620       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
47621     } else {
47622       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
47623       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
47624     }
47625     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
47626 
47627     delete[] result;
47628     XSRETURN(argvi);
47629   fail:
47630     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
47631 
47632     SWIG_croak_null();
47633   }
47634 }
47635 
47636 
XS(_wrap_alifold)47637 XS(_wrap_alifold) {
47638   dXSARGS;
47639 
47640   {
47641     unsigned long _index = 0;
47642     SWIG_TypeRank _rank = 0;
47643     if (items == 1) {
47644       SWIG_TypeRank _ranki = 0;
47645       SWIG_TypeRank _rankm = 0;
47646       SWIG_TypeRank _pi = 1;
47647       int _v = 0;
47648       {
47649         {
47650           {
47651             /* wrapped vector? */
47652             std::vector< std::string >* v;
47653             if (SWIG_ConvertPtr(ST(0),(void **) &v,
47654                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
47655               _v = 1;
47656             } else if (SvROK(ST(0))) {
47657               /* native sequence? */
47658               AV *av = (AV *)SvRV(ST(0));
47659               if (SvTYPE(av) == SVt_PVAV) {
47660                 I32 len = av_len(av) + 1;
47661                 if (len == 0) {
47662                   /* an empty sequence can be of any type */
47663                   _v = 1;
47664                 } else {
47665                   /* check the first element only */
47666                   SV **tv = av_fetch(av, 0, 0);
47667                   if (SvPOK(*tv))
47668                   _v = 1;
47669                   else
47670                   _v = 0;
47671                 }
47672               }
47673             } else {
47674               _v = 0;
47675             }
47676           }
47677         }
47678       }
47679       if (!_v) goto check_1;
47680       _ranki += _v*_pi;
47681       _rankm += _pi;
47682       _pi *= SWIG_MAXCASTRANK;
47683       if (!_index || (_ranki < _rank)) {
47684         _rank = _ranki; _index = 1;
47685         if (_rank == _rankm) goto dispatch;
47686       }
47687     }
47688   check_1:
47689 
47690     if (items == 2) {
47691       SWIG_TypeRank _ranki = 0;
47692       SWIG_TypeRank _rankm = 0;
47693       SWIG_TypeRank _pi = 1;
47694       int _v = 0;
47695       {
47696         {
47697           {
47698             /* wrapped vector? */
47699             std::vector< std::string >* v;
47700             if (SWIG_ConvertPtr(ST(0),(void **) &v,
47701                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
47702               _v = 1;
47703             } else if (SvROK(ST(0))) {
47704               /* native sequence? */
47705               AV *av = (AV *)SvRV(ST(0));
47706               if (SvTYPE(av) == SVt_PVAV) {
47707                 I32 len = av_len(av) + 1;
47708                 if (len == 0) {
47709                   /* an empty sequence can be of any type */
47710                   _v = 1;
47711                 } else {
47712                   /* check the first element only */
47713                   SV **tv = av_fetch(av, 0, 0);
47714                   if (SvPOK(*tv))
47715                   _v = 1;
47716                   else
47717                   _v = 0;
47718                 }
47719               }
47720             } else {
47721               _v = 0;
47722             }
47723           }
47724         }
47725       }
47726       if (!_v) goto check_2;
47727       _ranki += _v*_pi;
47728       _rankm += _pi;
47729       _pi *= SWIG_MAXCASTRANK;
47730       {
47731         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
47732         _v = SWIG_CheckState(res);
47733       }
47734       if (!_v) goto check_2;
47735       _ranki += _v*_pi;
47736       _rankm += _pi;
47737       _pi *= SWIG_MAXCASTRANK;
47738       if (!_index || (_ranki < _rank)) {
47739         _rank = _ranki; _index = 2;
47740         if (_rank == _rankm) goto dispatch;
47741       }
47742     }
47743   check_2:
47744 
47745   dispatch:
47746     switch(_index) {
47747     case 1:
47748       PUSHMARK(MARK); SWIG_CALLXS(_wrap_alifold__SWIG_0); return;
47749     case 2:
47750       PUSHMARK(MARK); SWIG_CALLXS(_wrap_alifold__SWIG_1); return;
47751     }
47752   }
47753 
47754   croak("No matching function for overloaded 'alifold'");
47755   XSRETURN(0);
47756 }
47757 
47758 
XS(_wrap_cofold__SWIG_0)47759 XS(_wrap_cofold__SWIG_0) {
47760   {
47761     char *arg1 = (char *) 0 ;
47762     float *arg2 = (float *) 0 ;
47763     int res1 ;
47764     char *buf1 = 0 ;
47765     int alloc1 = 0 ;
47766     float temp2 ;
47767     int res2 = SWIG_TMPOBJ ;
47768     int argvi = 0;
47769     char *result = 0 ;
47770     dXSARGS;
47771 
47772     arg2 = &temp2;
47773     if ((items < 1) || (items > 1)) {
47774       SWIG_croak("Usage: cofold(string);");
47775     }
47776     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
47777     if (!SWIG_IsOK(res1)) {
47778       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cofold" "', argument " "1"" of type '" "char *""'");
47779     }
47780     arg1 = reinterpret_cast< char * >(buf1);
47781     {
47782       try {
47783         result = (char *)my_cofold(arg1,arg2);
47784       } catch (const std::exception& e) {
47785         SWIG_exception(SWIG_RuntimeError, e.what());
47786       }
47787     }
47788     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
47789     if (SWIG_IsTmpObj(res2)) {
47790       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
47791     } else {
47792       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
47793       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_float, new_flags); argvi++  ;
47794     }
47795     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
47796 
47797     delete[] result;
47798     XSRETURN(argvi);
47799   fail:
47800     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
47801 
47802     SWIG_croak_null();
47803   }
47804 }
47805 
47806 
XS(_wrap_cofold__SWIG_1)47807 XS(_wrap_cofold__SWIG_1) {
47808   {
47809     char *arg1 = (char *) 0 ;
47810     char *arg2 = (char *) 0 ;
47811     float *arg3 = (float *) 0 ;
47812     int res1 ;
47813     char *buf1 = 0 ;
47814     int alloc1 = 0 ;
47815     int res2 ;
47816     char *buf2 = 0 ;
47817     int alloc2 = 0 ;
47818     float temp3 ;
47819     int res3 = SWIG_TMPOBJ ;
47820     int argvi = 0;
47821     char *result = 0 ;
47822     dXSARGS;
47823 
47824     arg3 = &temp3;
47825     if ((items < 2) || (items > 2)) {
47826       SWIG_croak("Usage: cofold(string,constraints);");
47827     }
47828     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
47829     if (!SWIG_IsOK(res1)) {
47830       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cofold" "', argument " "1"" of type '" "char *""'");
47831     }
47832     arg1 = reinterpret_cast< char * >(buf1);
47833     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
47834     if (!SWIG_IsOK(res2)) {
47835       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "cofold" "', argument " "2"" of type '" "char *""'");
47836     }
47837     arg2 = reinterpret_cast< char * >(buf2);
47838     {
47839       try {
47840         result = (char *)my_cofold(arg1,arg2,arg3);
47841       } catch (const std::exception& e) {
47842         SWIG_exception(SWIG_RuntimeError, e.what());
47843       }
47844     }
47845     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
47846     if (SWIG_IsTmpObj(res3)) {
47847       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
47848     } else {
47849       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
47850       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
47851     }
47852     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
47853     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
47854 
47855     delete[] result;
47856     XSRETURN(argvi);
47857   fail:
47858     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
47859     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
47860 
47861     SWIG_croak_null();
47862   }
47863 }
47864 
47865 
XS(_wrap_cofold)47866 XS(_wrap_cofold) {
47867   dXSARGS;
47868 
47869   {
47870     unsigned long _index = 0;
47871     SWIG_TypeRank _rank = 0;
47872     if (items == 1) {
47873       SWIG_TypeRank _ranki = 0;
47874       SWIG_TypeRank _rankm = 0;
47875       SWIG_TypeRank _pi = 1;
47876       int _v = 0;
47877       {
47878         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
47879         _v = SWIG_CheckState(res);
47880       }
47881       if (!_v) goto check_1;
47882       _ranki += _v*_pi;
47883       _rankm += _pi;
47884       _pi *= SWIG_MAXCASTRANK;
47885       if (!_index || (_ranki < _rank)) {
47886         _rank = _ranki; _index = 1;
47887         if (_rank == _rankm) goto dispatch;
47888       }
47889     }
47890   check_1:
47891 
47892     if (items == 2) {
47893       SWIG_TypeRank _ranki = 0;
47894       SWIG_TypeRank _rankm = 0;
47895       SWIG_TypeRank _pi = 1;
47896       int _v = 0;
47897       {
47898         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
47899         _v = SWIG_CheckState(res);
47900       }
47901       if (!_v) goto check_2;
47902       _ranki += _v*_pi;
47903       _rankm += _pi;
47904       _pi *= SWIG_MAXCASTRANK;
47905       {
47906         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
47907         _v = SWIG_CheckState(res);
47908       }
47909       if (!_v) goto check_2;
47910       _ranki += _v*_pi;
47911       _rankm += _pi;
47912       _pi *= SWIG_MAXCASTRANK;
47913       if (!_index || (_ranki < _rank)) {
47914         _rank = _ranki; _index = 2;
47915         if (_rank == _rankm) goto dispatch;
47916       }
47917     }
47918   check_2:
47919 
47920   dispatch:
47921     switch(_index) {
47922     case 1:
47923       PUSHMARK(MARK); SWIG_CALLXS(_wrap_cofold__SWIG_0); return;
47924     case 2:
47925       PUSHMARK(MARK); SWIG_CALLXS(_wrap_cofold__SWIG_1); return;
47926     }
47927   }
47928 
47929   croak("No matching function for overloaded 'cofold'");
47930   XSRETURN(0);
47931 }
47932 
47933 
XS(_wrap_circfold__SWIG_0)47934 XS(_wrap_circfold__SWIG_0) {
47935   {
47936     char *arg1 = (char *) 0 ;
47937     float *arg2 = (float *) 0 ;
47938     int res1 ;
47939     char *buf1 = 0 ;
47940     int alloc1 = 0 ;
47941     float temp2 ;
47942     int res2 = SWIG_TMPOBJ ;
47943     int argvi = 0;
47944     char *result = 0 ;
47945     dXSARGS;
47946 
47947     arg2 = &temp2;
47948     if ((items < 1) || (items > 1)) {
47949       SWIG_croak("Usage: circfold(string);");
47950     }
47951     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
47952     if (!SWIG_IsOK(res1)) {
47953       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "circfold" "', argument " "1"" of type '" "char *""'");
47954     }
47955     arg1 = reinterpret_cast< char * >(buf1);
47956     {
47957       try {
47958         result = (char *)my_circfold(arg1,arg2);
47959       } catch (const std::exception& e) {
47960         SWIG_exception(SWIG_RuntimeError, e.what());
47961       }
47962     }
47963     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
47964     if (SWIG_IsTmpObj(res2)) {
47965       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
47966     } else {
47967       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
47968       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_float, new_flags); argvi++  ;
47969     }
47970     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
47971 
47972     delete[] result;
47973     XSRETURN(argvi);
47974   fail:
47975     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
47976 
47977     SWIG_croak_null();
47978   }
47979 }
47980 
47981 
XS(_wrap_circfold__SWIG_1)47982 XS(_wrap_circfold__SWIG_1) {
47983   {
47984     char *arg1 = (char *) 0 ;
47985     char *arg2 = (char *) 0 ;
47986     float *arg3 = (float *) 0 ;
47987     int res1 ;
47988     char *buf1 = 0 ;
47989     int alloc1 = 0 ;
47990     int res2 ;
47991     char *buf2 = 0 ;
47992     int alloc2 = 0 ;
47993     float temp3 ;
47994     int res3 = SWIG_TMPOBJ ;
47995     int argvi = 0;
47996     char *result = 0 ;
47997     dXSARGS;
47998 
47999     arg3 = &temp3;
48000     if ((items < 2) || (items > 2)) {
48001       SWIG_croak("Usage: circfold(string,constraints);");
48002     }
48003     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
48004     if (!SWIG_IsOK(res1)) {
48005       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "circfold" "', argument " "1"" of type '" "char *""'");
48006     }
48007     arg1 = reinterpret_cast< char * >(buf1);
48008     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
48009     if (!SWIG_IsOK(res2)) {
48010       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "circfold" "', argument " "2"" of type '" "char *""'");
48011     }
48012     arg2 = reinterpret_cast< char * >(buf2);
48013     {
48014       try {
48015         result = (char *)my_circfold(arg1,arg2,arg3);
48016       } catch (const std::exception& e) {
48017         SWIG_exception(SWIG_RuntimeError, e.what());
48018       }
48019     }
48020     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
48021     if (SWIG_IsTmpObj(res3)) {
48022       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
48023     } else {
48024       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
48025       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
48026     }
48027     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
48028     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
48029 
48030     delete[] result;
48031     XSRETURN(argvi);
48032   fail:
48033     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
48034     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
48035 
48036     SWIG_croak_null();
48037   }
48038 }
48039 
48040 
XS(_wrap_circfold)48041 XS(_wrap_circfold) {
48042   dXSARGS;
48043 
48044   {
48045     unsigned long _index = 0;
48046     SWIG_TypeRank _rank = 0;
48047     if (items == 1) {
48048       SWIG_TypeRank _ranki = 0;
48049       SWIG_TypeRank _rankm = 0;
48050       SWIG_TypeRank _pi = 1;
48051       int _v = 0;
48052       {
48053         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
48054         _v = SWIG_CheckState(res);
48055       }
48056       if (!_v) goto check_1;
48057       _ranki += _v*_pi;
48058       _rankm += _pi;
48059       _pi *= SWIG_MAXCASTRANK;
48060       if (!_index || (_ranki < _rank)) {
48061         _rank = _ranki; _index = 1;
48062         if (_rank == _rankm) goto dispatch;
48063       }
48064     }
48065   check_1:
48066 
48067     if (items == 2) {
48068       SWIG_TypeRank _ranki = 0;
48069       SWIG_TypeRank _rankm = 0;
48070       SWIG_TypeRank _pi = 1;
48071       int _v = 0;
48072       {
48073         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
48074         _v = SWIG_CheckState(res);
48075       }
48076       if (!_v) goto check_2;
48077       _ranki += _v*_pi;
48078       _rankm += _pi;
48079       _pi *= SWIG_MAXCASTRANK;
48080       {
48081         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
48082         _v = SWIG_CheckState(res);
48083       }
48084       if (!_v) goto check_2;
48085       _ranki += _v*_pi;
48086       _rankm += _pi;
48087       _pi *= SWIG_MAXCASTRANK;
48088       if (!_index || (_ranki < _rank)) {
48089         _rank = _ranki; _index = 2;
48090         if (_rank == _rankm) goto dispatch;
48091       }
48092     }
48093   check_2:
48094 
48095   dispatch:
48096     switch(_index) {
48097     case 1:
48098       PUSHMARK(MARK); SWIG_CALLXS(_wrap_circfold__SWIG_0); return;
48099     case 2:
48100       PUSHMARK(MARK); SWIG_CALLXS(_wrap_circfold__SWIG_1); return;
48101     }
48102   }
48103 
48104   croak("No matching function for overloaded 'circfold'");
48105   XSRETURN(0);
48106 }
48107 
48108 
XS(_wrap_circalifold__SWIG_0)48109 XS(_wrap_circalifold__SWIG_0) {
48110   {
48111     std::vector< std::string > arg1 ;
48112     float *arg2 = (float *) 0 ;
48113     std::vector< std::string > *v1 ;
48114     float temp2 ;
48115     int res2 = SWIG_TMPOBJ ;
48116     int argvi = 0;
48117     char *result = 0 ;
48118     dXSARGS;
48119 
48120     arg2 = &temp2;
48121     if ((items < 1) || (items > 1)) {
48122       SWIG_croak("Usage: circalifold(alignment);");
48123     }
48124     {
48125       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
48126           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
48127         arg1 = *v1;
48128       } else if (SvROK(ST(0))) {
48129         AV *av = (AV *)SvRV(ST(0));
48130         if (SvTYPE(av) != SVt_PVAV)
48131         SWIG_croak("Type error in argument 1 of circalifold. "
48132           "Expected an array of ""std::string");
48133         SV **tv;
48134         I32 len = av_len(av) + 1;
48135         for (int i=0; i<len; i++) {
48136           tv = av_fetch(av, i, 0);
48137           if (SvPOK(*tv)) {
48138             (&arg1)->push_back((std::string)SwigSvToString(*tv));
48139           } else {
48140             SWIG_croak("Type error in argument 1 of "
48141               "circalifold. "
48142               "Expected an array of ""std::string");
48143           }
48144         }
48145       } else {
48146         SWIG_croak("Type error in argument 1 of circalifold. "
48147           "Expected an array of ""std::string");
48148       }
48149     }
48150     {
48151       try {
48152         result = (char *)my_circalifold(arg1,arg2);
48153       } catch (const std::exception& e) {
48154         SWIG_exception(SWIG_RuntimeError, e.what());
48155       }
48156     }
48157     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
48158     if (SWIG_IsTmpObj(res2)) {
48159       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
48160     } else {
48161       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
48162       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_float, new_flags); argvi++  ;
48163     }
48164 
48165     delete[] result;
48166     XSRETURN(argvi);
48167   fail:
48168 
48169     SWIG_croak_null();
48170   }
48171 }
48172 
48173 
XS(_wrap_circalifold__SWIG_1)48174 XS(_wrap_circalifold__SWIG_1) {
48175   {
48176     std::vector< std::string > arg1 ;
48177     char *arg2 = (char *) 0 ;
48178     float *arg3 = (float *) 0 ;
48179     std::vector< std::string > *v1 ;
48180     int res2 ;
48181     char *buf2 = 0 ;
48182     int alloc2 = 0 ;
48183     float temp3 ;
48184     int res3 = SWIG_TMPOBJ ;
48185     int argvi = 0;
48186     char *result = 0 ;
48187     dXSARGS;
48188 
48189     arg3 = &temp3;
48190     if ((items < 2) || (items > 2)) {
48191       SWIG_croak("Usage: circalifold(alignment,constraints);");
48192     }
48193     {
48194       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
48195           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
48196         arg1 = *v1;
48197       } else if (SvROK(ST(0))) {
48198         AV *av = (AV *)SvRV(ST(0));
48199         if (SvTYPE(av) != SVt_PVAV)
48200         SWIG_croak("Type error in argument 1 of circalifold. "
48201           "Expected an array of ""std::string");
48202         SV **tv;
48203         I32 len = av_len(av) + 1;
48204         for (int i=0; i<len; i++) {
48205           tv = av_fetch(av, i, 0);
48206           if (SvPOK(*tv)) {
48207             (&arg1)->push_back((std::string)SwigSvToString(*tv));
48208           } else {
48209             SWIG_croak("Type error in argument 1 of "
48210               "circalifold. "
48211               "Expected an array of ""std::string");
48212           }
48213         }
48214       } else {
48215         SWIG_croak("Type error in argument 1 of circalifold. "
48216           "Expected an array of ""std::string");
48217       }
48218     }
48219     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
48220     if (!SWIG_IsOK(res2)) {
48221       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "circalifold" "', argument " "2"" of type '" "char *""'");
48222     }
48223     arg2 = reinterpret_cast< char * >(buf2);
48224     {
48225       try {
48226         result = (char *)my_circalifold(arg1,arg2,arg3);
48227       } catch (const std::exception& e) {
48228         SWIG_exception(SWIG_RuntimeError, e.what());
48229       }
48230     }
48231     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
48232     if (SWIG_IsTmpObj(res3)) {
48233       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
48234     } else {
48235       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
48236       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
48237     }
48238     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
48239 
48240     delete[] result;
48241     XSRETURN(argvi);
48242   fail:
48243     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
48244 
48245     SWIG_croak_null();
48246   }
48247 }
48248 
48249 
XS(_wrap_free_arrays)48250 XS(_wrap_free_arrays) {
48251   {
48252     int argvi = 0;
48253     dXSARGS;
48254 
48255     if ((items < 0) || (items > 0)) {
48256       SWIG_croak("Usage: free_arrays();");
48257     }
48258     {
48259       try {
48260         free_arrays();
48261       } catch (const std::exception& e) {
48262         SWIG_exception(SWIG_RuntimeError, e.what());
48263       }
48264     }
48265     ST(argvi) = &PL_sv_undef;
48266     XSRETURN(argvi);
48267   fail:
48268     SWIG_croak_null();
48269   }
48270 }
48271 
48272 
XS(_wrap_update_fold_params)48273 XS(_wrap_update_fold_params) {
48274   {
48275     int argvi = 0;
48276     dXSARGS;
48277 
48278     if ((items < 0) || (items > 0)) {
48279       SWIG_croak("Usage: update_fold_params();");
48280     }
48281     {
48282       try {
48283         update_fold_params();
48284       } catch (const std::exception& e) {
48285         SWIG_exception(SWIG_RuntimeError, e.what());
48286       }
48287     }
48288     ST(argvi) = &PL_sv_undef;
48289     XSRETURN(argvi);
48290   fail:
48291     SWIG_croak_null();
48292   }
48293 }
48294 
48295 
XS(_wrap_circalifold__SWIG_2)48296 XS(_wrap_circalifold__SWIG_2) {
48297   {
48298     char **arg1 = (char **) 0 ;
48299     char *arg2 = (char *) 0 ;
48300     int res2 ;
48301     char *buf2 = 0 ;
48302     int alloc2 = 0 ;
48303     int argvi = 0;
48304     float result;
48305     dXSARGS;
48306 
48307     if ((items < 2) || (items > 2)) {
48308       SWIG_croak("Usage: circalifold(strings,structure);");
48309     }
48310     {
48311       AV *tempav;
48312       I32 len;
48313       int i;
48314       SV  **tv;
48315       if (!SvROK(ST(0)))
48316       croak("Argument 1 is not a reference.");
48317       if (SvTYPE(SvRV(ST(0))) != SVt_PVAV)
48318       croak("Argument 1 is not an array.");
48319       tempav = (AV*)SvRV(ST(0));
48320       len = av_len(tempav);
48321       arg1 = (char **) malloc((len+2)*sizeof(char *));
48322       for (i = 0; i <= len; i++) {
48323         tv = av_fetch(tempav, i, 0);
48324         arg1[i] = (char *) SvPV(*tv,PL_na);
48325       }
48326       arg1[i] = NULL;
48327     }
48328     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
48329     if (!SWIG_IsOK(res2)) {
48330       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "circalifold" "', argument " "2"" of type '" "char *""'");
48331     }
48332     arg2 = reinterpret_cast< char * >(buf2);
48333     {
48334       try {
48335         result = (float)circalifold((char const **)arg1,arg2);
48336       } catch (const std::exception& e) {
48337         SWIG_exception(SWIG_RuntimeError, e.what());
48338       }
48339     }
48340     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
48341     {
48342       free(arg1);
48343     }
48344     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
48345     XSRETURN(argvi);
48346   fail:
48347     {
48348       free(arg1);
48349     }
48350     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
48351     SWIG_croak_null();
48352   }
48353 }
48354 
48355 
XS(_wrap_circalifold)48356 XS(_wrap_circalifold) {
48357   dXSARGS;
48358 
48359   {
48360     unsigned long _index = 0;
48361     SWIG_TypeRank _rank = 0;
48362     if (items == 1) {
48363       SWIG_TypeRank _ranki = 0;
48364       SWIG_TypeRank _rankm = 0;
48365       SWIG_TypeRank _pi = 1;
48366       int _v = 0;
48367       {
48368         {
48369           {
48370             /* wrapped vector? */
48371             std::vector< std::string >* v;
48372             if (SWIG_ConvertPtr(ST(0),(void **) &v,
48373                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
48374               _v = 1;
48375             } else if (SvROK(ST(0))) {
48376               /* native sequence? */
48377               AV *av = (AV *)SvRV(ST(0));
48378               if (SvTYPE(av) == SVt_PVAV) {
48379                 I32 len = av_len(av) + 1;
48380                 if (len == 0) {
48381                   /* an empty sequence can be of any type */
48382                   _v = 1;
48383                 } else {
48384                   /* check the first element only */
48385                   SV **tv = av_fetch(av, 0, 0);
48386                   if (SvPOK(*tv))
48387                   _v = 1;
48388                   else
48389                   _v = 0;
48390                 }
48391               }
48392             } else {
48393               _v = 0;
48394             }
48395           }
48396         }
48397       }
48398       if (!_v) goto check_1;
48399       _ranki += _v*_pi;
48400       _rankm += _pi;
48401       _pi *= SWIG_MAXCASTRANK;
48402       if (!_index || (_ranki < _rank)) {
48403         _rank = _ranki; _index = 1;
48404         if (_rank == _rankm) goto dispatch;
48405       }
48406     }
48407   check_1:
48408 
48409     if (items == 2) {
48410       SWIG_TypeRank _ranki = 0;
48411       SWIG_TypeRank _rankm = 0;
48412       SWIG_TypeRank _pi = 1;
48413       int _v = 0;
48414       {
48415         void *vptr = 0;
48416         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_p_char, 0);
48417         _v = SWIG_CheckState(res);
48418       }
48419       if (!_v) goto check_2;
48420       _ranki += _v*_pi;
48421       _rankm += _pi;
48422       _pi *= SWIG_MAXCASTRANK;
48423       {
48424         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
48425         _v = SWIG_CheckState(res);
48426       }
48427       if (!_v) goto check_2;
48428       _ranki += _v*_pi;
48429       _rankm += _pi;
48430       _pi *= SWIG_MAXCASTRANK;
48431       if (!_index || (_ranki < _rank)) {
48432         _rank = _ranki; _index = 2;
48433         if (_rank == _rankm) goto dispatch;
48434       }
48435     }
48436   check_2:
48437 
48438     if (items == 2) {
48439       SWIG_TypeRank _ranki = 0;
48440       SWIG_TypeRank _rankm = 0;
48441       SWIG_TypeRank _pi = 1;
48442       int _v = 0;
48443       {
48444         {
48445           {
48446             /* wrapped vector? */
48447             std::vector< std::string >* v;
48448             if (SWIG_ConvertPtr(ST(0),(void **) &v,
48449                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
48450               _v = 1;
48451             } else if (SvROK(ST(0))) {
48452               /* native sequence? */
48453               AV *av = (AV *)SvRV(ST(0));
48454               if (SvTYPE(av) == SVt_PVAV) {
48455                 I32 len = av_len(av) + 1;
48456                 if (len == 0) {
48457                   /* an empty sequence can be of any type */
48458                   _v = 1;
48459                 } else {
48460                   /* check the first element only */
48461                   SV **tv = av_fetch(av, 0, 0);
48462                   if (SvPOK(*tv))
48463                   _v = 1;
48464                   else
48465                   _v = 0;
48466                 }
48467               }
48468             } else {
48469               _v = 0;
48470             }
48471           }
48472         }
48473       }
48474       if (!_v) goto check_3;
48475       _ranki += _v*_pi;
48476       _rankm += _pi;
48477       _pi *= SWIG_MAXCASTRANK;
48478       {
48479         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
48480         _v = SWIG_CheckState(res);
48481       }
48482       if (!_v) goto check_3;
48483       _ranki += _v*_pi;
48484       _rankm += _pi;
48485       _pi *= SWIG_MAXCASTRANK;
48486       if (!_index || (_ranki < _rank)) {
48487         _rank = _ranki; _index = 3;
48488         if (_rank == _rankm) goto dispatch;
48489       }
48490     }
48491   check_3:
48492 
48493   dispatch:
48494     switch(_index) {
48495     case 1:
48496       PUSHMARK(MARK); SWIG_CALLXS(_wrap_circalifold__SWIG_0); return;
48497     case 2:
48498       PUSHMARK(MARK); SWIG_CALLXS(_wrap_circalifold__SWIG_2); return;
48499     case 3:
48500       PUSHMARK(MARK); SWIG_CALLXS(_wrap_circalifold__SWIG_1); return;
48501     }
48502   }
48503 
48504   croak("No matching function for overloaded 'circalifold'");
48505   XSRETURN(0);
48506 }
48507 
48508 
XS(_wrap_free_alifold_arrays)48509 XS(_wrap_free_alifold_arrays) {
48510   {
48511     int argvi = 0;
48512     dXSARGS;
48513 
48514     if ((items < 0) || (items > 0)) {
48515       SWIG_croak("Usage: free_alifold_arrays();");
48516     }
48517     {
48518       try {
48519         free_alifold_arrays();
48520       } catch (const std::exception& e) {
48521         SWIG_exception(SWIG_RuntimeError, e.what());
48522       }
48523     }
48524     ST(argvi) = &PL_sv_undef;
48525     XSRETURN(argvi);
48526   fail:
48527     SWIG_croak_null();
48528   }
48529 }
48530 
48531 
XS(_wrap_free_co_arrays)48532 XS(_wrap_free_co_arrays) {
48533   {
48534     int argvi = 0;
48535     dXSARGS;
48536 
48537     if ((items < 0) || (items > 0)) {
48538       SWIG_croak("Usage: free_co_arrays();");
48539     }
48540     {
48541       try {
48542         free_co_arrays();
48543       } catch (const std::exception& e) {
48544         SWIG_exception(SWIG_RuntimeError, e.what());
48545       }
48546     }
48547     ST(argvi) = &PL_sv_undef;
48548     XSRETURN(argvi);
48549   fail:
48550     SWIG_croak_null();
48551   }
48552 }
48553 
48554 
XS(_wrap_update_cofold_params)48555 XS(_wrap_update_cofold_params) {
48556   {
48557     int argvi = 0;
48558     dXSARGS;
48559 
48560     if ((items < 0) || (items > 0)) {
48561       SWIG_croak("Usage: update_cofold_params();");
48562     }
48563     {
48564       try {
48565         update_cofold_params();
48566       } catch (const std::exception& e) {
48567         SWIG_exception(SWIG_RuntimeError, e.what());
48568       }
48569     }
48570     ST(argvi) = &PL_sv_undef;
48571     XSRETURN(argvi);
48572   fail:
48573     SWIG_croak_null();
48574   }
48575 }
48576 
48577 
XS(_wrap_initialize_cofold)48578 XS(_wrap_initialize_cofold) {
48579   {
48580     int arg1 ;
48581     int val1 ;
48582     int ecode1 = 0 ;
48583     int argvi = 0;
48584     dXSARGS;
48585 
48586     if ((items < 1) || (items > 1)) {
48587       SWIG_croak("Usage: initialize_cofold(length);");
48588     }
48589     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
48590     if (!SWIG_IsOK(ecode1)) {
48591       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "initialize_cofold" "', argument " "1"" of type '" "int""'");
48592     }
48593     arg1 = static_cast< int >(val1);
48594     {
48595       try {
48596         initialize_cofold(arg1);
48597       } catch (const std::exception& e) {
48598         SWIG_exception(SWIG_RuntimeError, e.what());
48599       }
48600     }
48601     ST(argvi) = &PL_sv_undef;
48602 
48603     XSRETURN(argvi);
48604   fail:
48605 
48606     SWIG_croak_null();
48607   }
48608 }
48609 
48610 
XS(_wrap_Lfoldz__SWIG_0)48611 XS(_wrap_Lfoldz__SWIG_0) {
48612   {
48613     std::string arg1 ;
48614     int arg2 ;
48615     double arg3 ;
48616     FILE *arg4 = (FILE *) 0 ;
48617     int val2 ;
48618     int ecode2 = 0 ;
48619     double val3 ;
48620     int ecode3 = 0 ;
48621     int argvi = 0;
48622     float result;
48623     dXSARGS;
48624 
48625     if ((items < 4) || (items > 4)) {
48626       SWIG_croak("Usage: Lfoldz(sequence,window_size,min_z,nullfile);");
48627     }
48628     {
48629       std::string *ptr = (std::string *)0;
48630       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
48631       if (!SWIG_IsOK(res) || !ptr) {
48632         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "Lfoldz" "', argument " "1"" of type '" "std::string""'");
48633       }
48634       arg1 = *ptr;
48635       if (SWIG_IsNewObj(res)) delete ptr;
48636     }
48637     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
48638     if (!SWIG_IsOK(ecode2)) {
48639       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Lfoldz" "', argument " "2"" of type '" "int""'");
48640     }
48641     arg2 = static_cast< int >(val2);
48642     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
48643     if (!SWIG_IsOK(ecode3)) {
48644       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Lfoldz" "', argument " "3"" of type '" "double""'");
48645     }
48646     arg3 = static_cast< double >(val3);
48647     {
48648       if (SvOK(ST(3))) /* check for undef */
48649       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(3))));
48650       else  arg4 = NULL;
48651     }
48652     {
48653       try {
48654         result = (float)my_Lfoldz(arg1,arg2,arg3,arg4);
48655       } catch (const std::exception& e) {
48656         SWIG_exception(SWIG_RuntimeError, e.what());
48657       }
48658     }
48659     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
48660 
48661 
48662 
48663 
48664     XSRETURN(argvi);
48665   fail:
48666 
48667 
48668 
48669 
48670     SWIG_croak_null();
48671   }
48672 }
48673 
48674 
XS(_wrap_Lfoldz__SWIG_1)48675 XS(_wrap_Lfoldz__SWIG_1) {
48676   {
48677     std::string arg1 ;
48678     int arg2 ;
48679     double arg3 ;
48680     int val2 ;
48681     int ecode2 = 0 ;
48682     double val3 ;
48683     int ecode3 = 0 ;
48684     int argvi = 0;
48685     float result;
48686     dXSARGS;
48687 
48688     if ((items < 3) || (items > 3)) {
48689       SWIG_croak("Usage: Lfoldz(sequence,window_size,min_z);");
48690     }
48691     {
48692       std::string *ptr = (std::string *)0;
48693       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
48694       if (!SWIG_IsOK(res) || !ptr) {
48695         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "Lfoldz" "', argument " "1"" of type '" "std::string""'");
48696       }
48697       arg1 = *ptr;
48698       if (SWIG_IsNewObj(res)) delete ptr;
48699     }
48700     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
48701     if (!SWIG_IsOK(ecode2)) {
48702       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Lfoldz" "', argument " "2"" of type '" "int""'");
48703     }
48704     arg2 = static_cast< int >(val2);
48705     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
48706     if (!SWIG_IsOK(ecode3)) {
48707       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Lfoldz" "', argument " "3"" of type '" "double""'");
48708     }
48709     arg3 = static_cast< double >(val3);
48710     {
48711       try {
48712         result = (float)my_Lfoldz(arg1,arg2,arg3);
48713       } catch (const std::exception& e) {
48714         SWIG_exception(SWIG_RuntimeError, e.what());
48715       }
48716     }
48717     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
48718 
48719 
48720 
48721     XSRETURN(argvi);
48722   fail:
48723 
48724 
48725 
48726     SWIG_croak_null();
48727   }
48728 }
48729 
48730 
XS(_wrap_Lfoldz)48731 XS(_wrap_Lfoldz) {
48732   dXSARGS;
48733 
48734   {
48735     unsigned long _index = 0;
48736     SWIG_TypeRank _rank = 0;
48737     if (items == 3) {
48738       SWIG_TypeRank _ranki = 0;
48739       SWIG_TypeRank _rankm = 0;
48740       SWIG_TypeRank _pi = 1;
48741       int _v = 0;
48742       {
48743         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
48744         _v = SWIG_CheckState(res);
48745       }
48746       if (!_v) goto check_1;
48747       _ranki += _v*_pi;
48748       _rankm += _pi;
48749       _pi *= SWIG_MAXCASTRANK;
48750       {
48751         {
48752           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
48753           _v = SWIG_CheckState(res);
48754         }
48755       }
48756       if (!_v) goto check_1;
48757       _ranki += _v*_pi;
48758       _rankm += _pi;
48759       _pi *= SWIG_MAXCASTRANK;
48760       {
48761         {
48762           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
48763           _v = SWIG_CheckState(res);
48764         }
48765       }
48766       if (!_v) goto check_1;
48767       _ranki += _v*_pi;
48768       _rankm += _pi;
48769       _pi *= SWIG_MAXCASTRANK;
48770       if (!_index || (_ranki < _rank)) {
48771         _rank = _ranki; _index = 1;
48772         if (_rank == _rankm) goto dispatch;
48773       }
48774     }
48775   check_1:
48776 
48777     if (items == 4) {
48778       SWIG_TypeRank _ranki = 0;
48779       SWIG_TypeRank _rankm = 0;
48780       SWIG_TypeRank _pi = 1;
48781       int _v = 0;
48782       {
48783         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
48784         _v = SWIG_CheckState(res);
48785       }
48786       if (!_v) goto check_2;
48787       _ranki += _v*_pi;
48788       _rankm += _pi;
48789       _pi *= SWIG_MAXCASTRANK;
48790       {
48791         {
48792           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
48793           _v = SWIG_CheckState(res);
48794         }
48795       }
48796       if (!_v) goto check_2;
48797       _ranki += _v*_pi;
48798       _rankm += _pi;
48799       _pi *= SWIG_MAXCASTRANK;
48800       {
48801         {
48802           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
48803           _v = SWIG_CheckState(res);
48804         }
48805       }
48806       if (!_v) goto check_2;
48807       _ranki += _v*_pi;
48808       _rankm += _pi;
48809       _pi *= SWIG_MAXCASTRANK;
48810       {
48811         {
48812           if (SvOK(ST(3)))
48813           _v = (sv_2io(ST(3))) ? 1 : 0;
48814         }
48815       }
48816       if (!_v) goto check_2;
48817       _ranki += _v*_pi;
48818       _rankm += _pi;
48819       _pi *= SWIG_MAXCASTRANK;
48820       if (!_index || (_ranki < _rank)) {
48821         _rank = _ranki; _index = 2;
48822         if (_rank == _rankm) goto dispatch;
48823       }
48824     }
48825   check_2:
48826 
48827   dispatch:
48828     switch(_index) {
48829     case 1:
48830       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Lfoldz__SWIG_1); return;
48831     case 2:
48832       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Lfoldz__SWIG_0); return;
48833     }
48834   }
48835 
48836   croak("No matching function for overloaded 'Lfoldz'");
48837   XSRETURN(0);
48838 }
48839 
48840 
XS(_wrap_Lfold__SWIG_0)48841 XS(_wrap_Lfold__SWIG_0) {
48842   {
48843     std::string arg1 ;
48844     int arg2 ;
48845     FILE *arg3 = (FILE *) 0 ;
48846     int val2 ;
48847     int ecode2 = 0 ;
48848     int argvi = 0;
48849     float result;
48850     dXSARGS;
48851 
48852     if ((items < 3) || (items > 3)) {
48853       SWIG_croak("Usage: Lfold(sequence,window_size,nullfile);");
48854     }
48855     {
48856       std::string *ptr = (std::string *)0;
48857       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
48858       if (!SWIG_IsOK(res) || !ptr) {
48859         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "Lfold" "', argument " "1"" of type '" "std::string""'");
48860       }
48861       arg1 = *ptr;
48862       if (SWIG_IsNewObj(res)) delete ptr;
48863     }
48864     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
48865     if (!SWIG_IsOK(ecode2)) {
48866       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Lfold" "', argument " "2"" of type '" "int""'");
48867     }
48868     arg2 = static_cast< int >(val2);
48869     {
48870       if (SvOK(ST(2))) /* check for undef */
48871       arg3 = PerlIO_findFILE(IoIFP(sv_2io(ST(2))));
48872       else  arg3 = NULL;
48873     }
48874     {
48875       try {
48876         result = (float)my_Lfold(arg1,arg2,arg3);
48877       } catch (const std::exception& e) {
48878         SWIG_exception(SWIG_RuntimeError, e.what());
48879       }
48880     }
48881     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
48882 
48883 
48884 
48885     XSRETURN(argvi);
48886   fail:
48887 
48888 
48889 
48890     SWIG_croak_null();
48891   }
48892 }
48893 
48894 
XS(_wrap_Lfold__SWIG_1)48895 XS(_wrap_Lfold__SWIG_1) {
48896   {
48897     std::string arg1 ;
48898     int arg2 ;
48899     int val2 ;
48900     int ecode2 = 0 ;
48901     int argvi = 0;
48902     float result;
48903     dXSARGS;
48904 
48905     if ((items < 2) || (items > 2)) {
48906       SWIG_croak("Usage: Lfold(sequence,window_size);");
48907     }
48908     {
48909       std::string *ptr = (std::string *)0;
48910       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
48911       if (!SWIG_IsOK(res) || !ptr) {
48912         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "Lfold" "', argument " "1"" of type '" "std::string""'");
48913       }
48914       arg1 = *ptr;
48915       if (SWIG_IsNewObj(res)) delete ptr;
48916     }
48917     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
48918     if (!SWIG_IsOK(ecode2)) {
48919       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Lfold" "', argument " "2"" of type '" "int""'");
48920     }
48921     arg2 = static_cast< int >(val2);
48922     {
48923       try {
48924         result = (float)my_Lfold(arg1,arg2);
48925       } catch (const std::exception& e) {
48926         SWIG_exception(SWIG_RuntimeError, e.what());
48927       }
48928     }
48929     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
48930 
48931 
48932     XSRETURN(argvi);
48933   fail:
48934 
48935 
48936     SWIG_croak_null();
48937   }
48938 }
48939 
48940 
XS(_wrap_Lfold)48941 XS(_wrap_Lfold) {
48942   dXSARGS;
48943 
48944   {
48945     unsigned long _index = 0;
48946     SWIG_TypeRank _rank = 0;
48947     if (items == 2) {
48948       SWIG_TypeRank _ranki = 0;
48949       SWIG_TypeRank _rankm = 0;
48950       SWIG_TypeRank _pi = 1;
48951       int _v = 0;
48952       {
48953         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
48954         _v = SWIG_CheckState(res);
48955       }
48956       if (!_v) goto check_1;
48957       _ranki += _v*_pi;
48958       _rankm += _pi;
48959       _pi *= SWIG_MAXCASTRANK;
48960       {
48961         {
48962           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
48963           _v = SWIG_CheckState(res);
48964         }
48965       }
48966       if (!_v) goto check_1;
48967       _ranki += _v*_pi;
48968       _rankm += _pi;
48969       _pi *= SWIG_MAXCASTRANK;
48970       if (!_index || (_ranki < _rank)) {
48971         _rank = _ranki; _index = 1;
48972         if (_rank == _rankm) goto dispatch;
48973       }
48974     }
48975   check_1:
48976 
48977     if (items == 3) {
48978       SWIG_TypeRank _ranki = 0;
48979       SWIG_TypeRank _rankm = 0;
48980       SWIG_TypeRank _pi = 1;
48981       int _v = 0;
48982       {
48983         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
48984         _v = SWIG_CheckState(res);
48985       }
48986       if (!_v) goto check_2;
48987       _ranki += _v*_pi;
48988       _rankm += _pi;
48989       _pi *= SWIG_MAXCASTRANK;
48990       {
48991         {
48992           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
48993           _v = SWIG_CheckState(res);
48994         }
48995       }
48996       if (!_v) goto check_2;
48997       _ranki += _v*_pi;
48998       _rankm += _pi;
48999       _pi *= SWIG_MAXCASTRANK;
49000       {
49001         {
49002           if (SvOK(ST(2)))
49003           _v = (sv_2io(ST(2))) ? 1 : 0;
49004         }
49005       }
49006       if (!_v) goto check_2;
49007       _ranki += _v*_pi;
49008       _rankm += _pi;
49009       _pi *= SWIG_MAXCASTRANK;
49010       if (!_index || (_ranki < _rank)) {
49011         _rank = _ranki; _index = 2;
49012         if (_rank == _rankm) goto dispatch;
49013       }
49014     }
49015   check_2:
49016 
49017   dispatch:
49018     switch(_index) {
49019     case 1:
49020       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Lfold__SWIG_1); return;
49021     case 2:
49022       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Lfold__SWIG_0); return;
49023     }
49024   }
49025 
49026   croak("No matching function for overloaded 'Lfold'");
49027   XSRETURN(0);
49028 }
49029 
49030 
XS(_wrap_aliLfold__SWIG_0)49031 XS(_wrap_aliLfold__SWIG_0) {
49032   {
49033     std::vector< std::string > arg1 ;
49034     int arg2 ;
49035     FILE *arg3 = (FILE *) 0 ;
49036     std::vector< std::string > *v1 ;
49037     int val2 ;
49038     int ecode2 = 0 ;
49039     int argvi = 0;
49040     float result;
49041     dXSARGS;
49042 
49043     if ((items < 3) || (items > 3)) {
49044       SWIG_croak("Usage: aliLfold(alignment,window_size,nullfile);");
49045     }
49046     {
49047       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
49048           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
49049         arg1 = *v1;
49050       } else if (SvROK(ST(0))) {
49051         AV *av = (AV *)SvRV(ST(0));
49052         if (SvTYPE(av) != SVt_PVAV)
49053         SWIG_croak("Type error in argument 1 of aliLfold. "
49054           "Expected an array of ""std::string");
49055         SV **tv;
49056         I32 len = av_len(av) + 1;
49057         for (int i=0; i<len; i++) {
49058           tv = av_fetch(av, i, 0);
49059           if (SvPOK(*tv)) {
49060             (&arg1)->push_back((std::string)SwigSvToString(*tv));
49061           } else {
49062             SWIG_croak("Type error in argument 1 of "
49063               "aliLfold. "
49064               "Expected an array of ""std::string");
49065           }
49066         }
49067       } else {
49068         SWIG_croak("Type error in argument 1 of aliLfold. "
49069           "Expected an array of ""std::string");
49070       }
49071     }
49072     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
49073     if (!SWIG_IsOK(ecode2)) {
49074       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "aliLfold" "', argument " "2"" of type '" "int""'");
49075     }
49076     arg2 = static_cast< int >(val2);
49077     {
49078       if (SvOK(ST(2))) /* check for undef */
49079       arg3 = PerlIO_findFILE(IoIFP(sv_2io(ST(2))));
49080       else  arg3 = NULL;
49081     }
49082     {
49083       try {
49084         result = (float)my_aliLfold(arg1,arg2,arg3);
49085       } catch (const std::exception& e) {
49086         SWIG_exception(SWIG_RuntimeError, e.what());
49087       }
49088     }
49089     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
49090 
49091 
49092     XSRETURN(argvi);
49093   fail:
49094 
49095 
49096     SWIG_croak_null();
49097   }
49098 }
49099 
49100 
XS(_wrap_aliLfold__SWIG_1)49101 XS(_wrap_aliLfold__SWIG_1) {
49102   {
49103     std::vector< std::string > arg1 ;
49104     int arg2 ;
49105     std::vector< std::string > *v1 ;
49106     int val2 ;
49107     int ecode2 = 0 ;
49108     int argvi = 0;
49109     float result;
49110     dXSARGS;
49111 
49112     if ((items < 2) || (items > 2)) {
49113       SWIG_croak("Usage: aliLfold(alignment,window_size);");
49114     }
49115     {
49116       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
49117           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
49118         arg1 = *v1;
49119       } else if (SvROK(ST(0))) {
49120         AV *av = (AV *)SvRV(ST(0));
49121         if (SvTYPE(av) != SVt_PVAV)
49122         SWIG_croak("Type error in argument 1 of aliLfold. "
49123           "Expected an array of ""std::string");
49124         SV **tv;
49125         I32 len = av_len(av) + 1;
49126         for (int i=0; i<len; i++) {
49127           tv = av_fetch(av, i, 0);
49128           if (SvPOK(*tv)) {
49129             (&arg1)->push_back((std::string)SwigSvToString(*tv));
49130           } else {
49131             SWIG_croak("Type error in argument 1 of "
49132               "aliLfold. "
49133               "Expected an array of ""std::string");
49134           }
49135         }
49136       } else {
49137         SWIG_croak("Type error in argument 1 of aliLfold. "
49138           "Expected an array of ""std::string");
49139       }
49140     }
49141     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
49142     if (!SWIG_IsOK(ecode2)) {
49143       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "aliLfold" "', argument " "2"" of type '" "int""'");
49144     }
49145     arg2 = static_cast< int >(val2);
49146     {
49147       try {
49148         result = (float)my_aliLfold(arg1,arg2);
49149       } catch (const std::exception& e) {
49150         SWIG_exception(SWIG_RuntimeError, e.what());
49151       }
49152     }
49153     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
49154 
49155     XSRETURN(argvi);
49156   fail:
49157 
49158     SWIG_croak_null();
49159   }
49160 }
49161 
49162 
XS(_wrap_aliLfold)49163 XS(_wrap_aliLfold) {
49164   dXSARGS;
49165 
49166   {
49167     unsigned long _index = 0;
49168     SWIG_TypeRank _rank = 0;
49169     if (items == 2) {
49170       SWIG_TypeRank _ranki = 0;
49171       SWIG_TypeRank _rankm = 0;
49172       SWIG_TypeRank _pi = 1;
49173       int _v = 0;
49174       {
49175         {
49176           {
49177             /* wrapped vector? */
49178             std::vector< std::string >* v;
49179             if (SWIG_ConvertPtr(ST(0),(void **) &v,
49180                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
49181               _v = 1;
49182             } else if (SvROK(ST(0))) {
49183               /* native sequence? */
49184               AV *av = (AV *)SvRV(ST(0));
49185               if (SvTYPE(av) == SVt_PVAV) {
49186                 I32 len = av_len(av) + 1;
49187                 if (len == 0) {
49188                   /* an empty sequence can be of any type */
49189                   _v = 1;
49190                 } else {
49191                   /* check the first element only */
49192                   SV **tv = av_fetch(av, 0, 0);
49193                   if (SvPOK(*tv))
49194                   _v = 1;
49195                   else
49196                   _v = 0;
49197                 }
49198               }
49199             } else {
49200               _v = 0;
49201             }
49202           }
49203         }
49204       }
49205       if (!_v) goto check_1;
49206       _ranki += _v*_pi;
49207       _rankm += _pi;
49208       _pi *= SWIG_MAXCASTRANK;
49209       {
49210         {
49211           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
49212           _v = SWIG_CheckState(res);
49213         }
49214       }
49215       if (!_v) goto check_1;
49216       _ranki += _v*_pi;
49217       _rankm += _pi;
49218       _pi *= SWIG_MAXCASTRANK;
49219       if (!_index || (_ranki < _rank)) {
49220         _rank = _ranki; _index = 1;
49221         if (_rank == _rankm) goto dispatch;
49222       }
49223     }
49224   check_1:
49225 
49226     if (items == 3) {
49227       SWIG_TypeRank _ranki = 0;
49228       SWIG_TypeRank _rankm = 0;
49229       SWIG_TypeRank _pi = 1;
49230       int _v = 0;
49231       {
49232         {
49233           {
49234             /* wrapped vector? */
49235             std::vector< std::string >* v;
49236             if (SWIG_ConvertPtr(ST(0),(void **) &v,
49237                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
49238               _v = 1;
49239             } else if (SvROK(ST(0))) {
49240               /* native sequence? */
49241               AV *av = (AV *)SvRV(ST(0));
49242               if (SvTYPE(av) == SVt_PVAV) {
49243                 I32 len = av_len(av) + 1;
49244                 if (len == 0) {
49245                   /* an empty sequence can be of any type */
49246                   _v = 1;
49247                 } else {
49248                   /* check the first element only */
49249                   SV **tv = av_fetch(av, 0, 0);
49250                   if (SvPOK(*tv))
49251                   _v = 1;
49252                   else
49253                   _v = 0;
49254                 }
49255               }
49256             } else {
49257               _v = 0;
49258             }
49259           }
49260         }
49261       }
49262       if (!_v) goto check_2;
49263       _ranki += _v*_pi;
49264       _rankm += _pi;
49265       _pi *= SWIG_MAXCASTRANK;
49266       {
49267         {
49268           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
49269           _v = SWIG_CheckState(res);
49270         }
49271       }
49272       if (!_v) goto check_2;
49273       _ranki += _v*_pi;
49274       _rankm += _pi;
49275       _pi *= SWIG_MAXCASTRANK;
49276       {
49277         {
49278           if (SvOK(ST(2)))
49279           _v = (sv_2io(ST(2))) ? 1 : 0;
49280         }
49281       }
49282       if (!_v) goto check_2;
49283       _ranki += _v*_pi;
49284       _rankm += _pi;
49285       _pi *= SWIG_MAXCASTRANK;
49286       if (!_index || (_ranki < _rank)) {
49287         _rank = _ranki; _index = 2;
49288         if (_rank == _rankm) goto dispatch;
49289       }
49290     }
49291   check_2:
49292 
49293   dispatch:
49294     switch(_index) {
49295     case 1:
49296       PUSHMARK(MARK); SWIG_CALLXS(_wrap_aliLfold__SWIG_1); return;
49297     case 2:
49298       PUSHMARK(MARK); SWIG_CALLXS(_wrap_aliLfold__SWIG_0); return;
49299     }
49300   }
49301 
49302   croak("No matching function for overloaded 'aliLfold'");
49303   XSRETURN(0);
49304 }
49305 
49306 
XS(_wrap_pf_fold__SWIG_0)49307 XS(_wrap_pf_fold__SWIG_0) {
49308   {
49309     char *arg1 = (char *) 0 ;
49310     float *arg2 = (float *) 0 ;
49311     int res1 ;
49312     char *buf1 = 0 ;
49313     int alloc1 = 0 ;
49314     float temp2 ;
49315     int res2 = SWIG_TMPOBJ ;
49316     int argvi = 0;
49317     char *result = 0 ;
49318     dXSARGS;
49319 
49320     arg2 = &temp2;
49321     if ((items < 1) || (items > 1)) {
49322       SWIG_croak("Usage: pf_fold(string);");
49323     }
49324     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
49325     if (!SWIG_IsOK(res1)) {
49326       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "pf_fold" "', argument " "1"" of type '" "char *""'");
49327     }
49328     arg1 = reinterpret_cast< char * >(buf1);
49329     {
49330       try {
49331         result = (char *)my_pf_fold(arg1,arg2);
49332       } catch (const std::exception& e) {
49333         SWIG_exception(SWIG_RuntimeError, e.what());
49334       }
49335     }
49336     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
49337     if (SWIG_IsTmpObj(res2)) {
49338       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
49339     } else {
49340       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
49341       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_float, new_flags); argvi++  ;
49342     }
49343     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
49344 
49345     delete[] result;
49346     XSRETURN(argvi);
49347   fail:
49348     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
49349 
49350     SWIG_croak_null();
49351   }
49352 }
49353 
49354 
XS(_wrap_pf_fold__SWIG_1)49355 XS(_wrap_pf_fold__SWIG_1) {
49356   {
49357     char *arg1 = (char *) 0 ;
49358     char *arg2 = (char *) 0 ;
49359     float *arg3 = (float *) 0 ;
49360     int res1 ;
49361     char *buf1 = 0 ;
49362     int alloc1 = 0 ;
49363     int res2 ;
49364     char *buf2 = 0 ;
49365     int alloc2 = 0 ;
49366     float temp3 ;
49367     int res3 = SWIG_TMPOBJ ;
49368     int argvi = 0;
49369     char *result = 0 ;
49370     dXSARGS;
49371 
49372     arg3 = &temp3;
49373     if ((items < 2) || (items > 2)) {
49374       SWIG_croak("Usage: pf_fold(string,constraints);");
49375     }
49376     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
49377     if (!SWIG_IsOK(res1)) {
49378       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "pf_fold" "', argument " "1"" of type '" "char *""'");
49379     }
49380     arg1 = reinterpret_cast< char * >(buf1);
49381     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
49382     if (!SWIG_IsOK(res2)) {
49383       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "pf_fold" "', argument " "2"" of type '" "char *""'");
49384     }
49385     arg2 = reinterpret_cast< char * >(buf2);
49386     {
49387       try {
49388         result = (char *)my_pf_fold(arg1,arg2,arg3);
49389       } catch (const std::exception& e) {
49390         SWIG_exception(SWIG_RuntimeError, e.what());
49391       }
49392     }
49393     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
49394     if (SWIG_IsTmpObj(res3)) {
49395       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
49396     } else {
49397       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
49398       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
49399     }
49400     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
49401     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
49402 
49403     delete[] result;
49404     XSRETURN(argvi);
49405   fail:
49406     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
49407     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
49408 
49409     SWIG_croak_null();
49410   }
49411 }
49412 
49413 
XS(_wrap_pf_fold)49414 XS(_wrap_pf_fold) {
49415   dXSARGS;
49416 
49417   {
49418     unsigned long _index = 0;
49419     SWIG_TypeRank _rank = 0;
49420     if (items == 1) {
49421       SWIG_TypeRank _ranki = 0;
49422       SWIG_TypeRank _rankm = 0;
49423       SWIG_TypeRank _pi = 1;
49424       int _v = 0;
49425       {
49426         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
49427         _v = SWIG_CheckState(res);
49428       }
49429       if (!_v) goto check_1;
49430       _ranki += _v*_pi;
49431       _rankm += _pi;
49432       _pi *= SWIG_MAXCASTRANK;
49433       if (!_index || (_ranki < _rank)) {
49434         _rank = _ranki; _index = 1;
49435         if (_rank == _rankm) goto dispatch;
49436       }
49437     }
49438   check_1:
49439 
49440     if (items == 2) {
49441       SWIG_TypeRank _ranki = 0;
49442       SWIG_TypeRank _rankm = 0;
49443       SWIG_TypeRank _pi = 1;
49444       int _v = 0;
49445       {
49446         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
49447         _v = SWIG_CheckState(res);
49448       }
49449       if (!_v) goto check_2;
49450       _ranki += _v*_pi;
49451       _rankm += _pi;
49452       _pi *= SWIG_MAXCASTRANK;
49453       {
49454         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
49455         _v = SWIG_CheckState(res);
49456       }
49457       if (!_v) goto check_2;
49458       _ranki += _v*_pi;
49459       _rankm += _pi;
49460       _pi *= SWIG_MAXCASTRANK;
49461       if (!_index || (_ranki < _rank)) {
49462         _rank = _ranki; _index = 2;
49463         if (_rank == _rankm) goto dispatch;
49464       }
49465     }
49466   check_2:
49467 
49468   dispatch:
49469     switch(_index) {
49470     case 1:
49471       PUSHMARK(MARK); SWIG_CALLXS(_wrap_pf_fold__SWIG_0); return;
49472     case 2:
49473       PUSHMARK(MARK); SWIG_CALLXS(_wrap_pf_fold__SWIG_1); return;
49474     }
49475   }
49476 
49477   croak("No matching function for overloaded 'pf_fold'");
49478   XSRETURN(0);
49479 }
49480 
49481 
XS(_wrap_pf_circ_fold__SWIG_0)49482 XS(_wrap_pf_circ_fold__SWIG_0) {
49483   {
49484     char *arg1 = (char *) 0 ;
49485     char *arg2 = (char *) 0 ;
49486     float *arg3 = (float *) 0 ;
49487     int res1 ;
49488     char *buf1 = 0 ;
49489     int alloc1 = 0 ;
49490     int res2 ;
49491     char *buf2 = 0 ;
49492     int alloc2 = 0 ;
49493     float temp3 ;
49494     int res3 = SWIG_TMPOBJ ;
49495     int argvi = 0;
49496     char *result = 0 ;
49497     dXSARGS;
49498 
49499     arg3 = &temp3;
49500     if ((items < 2) || (items > 2)) {
49501       SWIG_croak("Usage: pf_circ_fold(string,constraints);");
49502     }
49503     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
49504     if (!SWIG_IsOK(res1)) {
49505       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "pf_circ_fold" "', argument " "1"" of type '" "char *""'");
49506     }
49507     arg1 = reinterpret_cast< char * >(buf1);
49508     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
49509     if (!SWIG_IsOK(res2)) {
49510       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "pf_circ_fold" "', argument " "2"" of type '" "char *""'");
49511     }
49512     arg2 = reinterpret_cast< char * >(buf2);
49513     {
49514       try {
49515         result = (char *)my_pf_circ_fold(arg1,arg2,arg3);
49516       } catch (const std::exception& e) {
49517         SWIG_exception(SWIG_RuntimeError, e.what());
49518       }
49519     }
49520     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
49521     if (SWIG_IsTmpObj(res3)) {
49522       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
49523     } else {
49524       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
49525       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
49526     }
49527     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
49528     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
49529 
49530     delete[] result;
49531     XSRETURN(argvi);
49532   fail:
49533     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
49534     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
49535 
49536     SWIG_croak_null();
49537   }
49538 }
49539 
49540 
XS(_wrap_pf_circ_fold__SWIG_1)49541 XS(_wrap_pf_circ_fold__SWIG_1) {
49542   {
49543     char *arg1 = (char *) 0 ;
49544     float *arg2 = (float *) 0 ;
49545     int res1 ;
49546     char *buf1 = 0 ;
49547     int alloc1 = 0 ;
49548     float temp2 ;
49549     int res2 = SWIG_TMPOBJ ;
49550     int argvi = 0;
49551     char *result = 0 ;
49552     dXSARGS;
49553 
49554     arg2 = &temp2;
49555     if ((items < 1) || (items > 1)) {
49556       SWIG_croak("Usage: pf_circ_fold(string);");
49557     }
49558     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
49559     if (!SWIG_IsOK(res1)) {
49560       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "pf_circ_fold" "', argument " "1"" of type '" "char *""'");
49561     }
49562     arg1 = reinterpret_cast< char * >(buf1);
49563     {
49564       try {
49565         result = (char *)my_pf_circ_fold(arg1,arg2);
49566       } catch (const std::exception& e) {
49567         SWIG_exception(SWIG_RuntimeError, e.what());
49568       }
49569     }
49570     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
49571     if (SWIG_IsTmpObj(res2)) {
49572       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
49573     } else {
49574       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
49575       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_float, new_flags); argvi++  ;
49576     }
49577     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
49578 
49579     delete[] result;
49580     XSRETURN(argvi);
49581   fail:
49582     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
49583 
49584     SWIG_croak_null();
49585   }
49586 }
49587 
49588 
XS(_wrap_pf_circ_fold)49589 XS(_wrap_pf_circ_fold) {
49590   dXSARGS;
49591 
49592   {
49593     unsigned long _index = 0;
49594     SWIG_TypeRank _rank = 0;
49595     if (items == 1) {
49596       SWIG_TypeRank _ranki = 0;
49597       SWIG_TypeRank _rankm = 0;
49598       SWIG_TypeRank _pi = 1;
49599       int _v = 0;
49600       {
49601         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
49602         _v = SWIG_CheckState(res);
49603       }
49604       if (!_v) goto check_1;
49605       _ranki += _v*_pi;
49606       _rankm += _pi;
49607       _pi *= SWIG_MAXCASTRANK;
49608       if (!_index || (_ranki < _rank)) {
49609         _rank = _ranki; _index = 1;
49610         if (_rank == _rankm) goto dispatch;
49611       }
49612     }
49613   check_1:
49614 
49615     if (items == 2) {
49616       SWIG_TypeRank _ranki = 0;
49617       SWIG_TypeRank _rankm = 0;
49618       SWIG_TypeRank _pi = 1;
49619       int _v = 0;
49620       {
49621         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
49622         _v = SWIG_CheckState(res);
49623       }
49624       if (!_v) goto check_2;
49625       _ranki += _v*_pi;
49626       _rankm += _pi;
49627       _pi *= SWIG_MAXCASTRANK;
49628       {
49629         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
49630         _v = SWIG_CheckState(res);
49631       }
49632       if (!_v) goto check_2;
49633       _ranki += _v*_pi;
49634       _rankm += _pi;
49635       _pi *= SWIG_MAXCASTRANK;
49636       if (!_index || (_ranki < _rank)) {
49637         _rank = _ranki; _index = 2;
49638         if (_rank == _rankm) goto dispatch;
49639       }
49640     }
49641   check_2:
49642 
49643   dispatch:
49644     switch(_index) {
49645     case 1:
49646       PUSHMARK(MARK); SWIG_CALLXS(_wrap_pf_circ_fold__SWIG_1); return;
49647     case 2:
49648       PUSHMARK(MARK); SWIG_CALLXS(_wrap_pf_circ_fold__SWIG_0); return;
49649     }
49650   }
49651 
49652   croak("No matching function for overloaded 'pf_circ_fold'");
49653   XSRETURN(0);
49654 }
49655 
49656 
XS(_wrap_pf_float_precision)49657 XS(_wrap_pf_float_precision) {
49658   {
49659     int argvi = 0;
49660     int result;
49661     dXSARGS;
49662 
49663     if ((items < 0) || (items > 0)) {
49664       SWIG_croak("Usage: pf_float_precision();");
49665     }
49666     {
49667       try {
49668         result = (int)vrna_pf_float_precision();
49669       } catch (const std::exception& e) {
49670         SWIG_exception(SWIG_RuntimeError, e.what());
49671       }
49672     }
49673     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
49674     XSRETURN(argvi);
49675   fail:
49676     SWIG_croak_null();
49677   }
49678 }
49679 
49680 
XS(_wrap_pbacktrack)49681 XS(_wrap_pbacktrack) {
49682   {
49683     char *arg1 = (char *) 0 ;
49684     int res1 ;
49685     char *buf1 = 0 ;
49686     int alloc1 = 0 ;
49687     int argvi = 0;
49688     char *result = 0 ;
49689     dXSARGS;
49690 
49691     if ((items < 1) || (items > 1)) {
49692       SWIG_croak("Usage: pbacktrack(sequence);");
49693     }
49694     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
49695     if (!SWIG_IsOK(res1)) {
49696       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "pbacktrack" "', argument " "1"" of type '" "char *""'");
49697     }
49698     arg1 = reinterpret_cast< char * >(buf1);
49699     {
49700       try {
49701         result = (char *)pbacktrack(arg1);
49702       } catch (const std::exception& e) {
49703         SWIG_exception(SWIG_RuntimeError, e.what());
49704       }
49705     }
49706     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
49707     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
49708     XSRETURN(argvi);
49709   fail:
49710     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
49711     SWIG_croak_null();
49712   }
49713 }
49714 
49715 
XS(_wrap_pbacktrack5)49716 XS(_wrap_pbacktrack5) {
49717   {
49718     char *arg1 = (char *) 0 ;
49719     int arg2 ;
49720     int res1 ;
49721     char *buf1 = 0 ;
49722     int alloc1 = 0 ;
49723     int val2 ;
49724     int ecode2 = 0 ;
49725     int argvi = 0;
49726     char *result = 0 ;
49727     dXSARGS;
49728 
49729     if ((items < 2) || (items > 2)) {
49730       SWIG_croak("Usage: pbacktrack5(sequence,length);");
49731     }
49732     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
49733     if (!SWIG_IsOK(res1)) {
49734       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "pbacktrack5" "', argument " "1"" of type '" "char *""'");
49735     }
49736     arg1 = reinterpret_cast< char * >(buf1);
49737     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
49738     if (!SWIG_IsOK(ecode2)) {
49739       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pbacktrack5" "', argument " "2"" of type '" "int""'");
49740     }
49741     arg2 = static_cast< int >(val2);
49742     {
49743       try {
49744         result = (char *)pbacktrack5(arg1,arg2);
49745       } catch (const std::exception& e) {
49746         SWIG_exception(SWIG_RuntimeError, e.what());
49747       }
49748     }
49749     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
49750     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
49751 
49752     XSRETURN(argvi);
49753   fail:
49754     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
49755 
49756     SWIG_croak_null();
49757   }
49758 }
49759 
49760 
XS(_wrap_pbacktrack_circ)49761 XS(_wrap_pbacktrack_circ) {
49762   {
49763     char *arg1 = (char *) 0 ;
49764     int res1 ;
49765     char *buf1 = 0 ;
49766     int alloc1 = 0 ;
49767     int argvi = 0;
49768     char *result = 0 ;
49769     dXSARGS;
49770 
49771     if ((items < 1) || (items > 1)) {
49772       SWIG_croak("Usage: pbacktrack_circ(sequence);");
49773     }
49774     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
49775     if (!SWIG_IsOK(res1)) {
49776       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "pbacktrack_circ" "', argument " "1"" of type '" "char *""'");
49777     }
49778     arg1 = reinterpret_cast< char * >(buf1);
49779     {
49780       try {
49781         result = (char *)pbacktrack_circ(arg1);
49782       } catch (const std::exception& e) {
49783         SWIG_exception(SWIG_RuntimeError, e.what());
49784       }
49785     }
49786     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
49787     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
49788     XSRETURN(argvi);
49789   fail:
49790     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
49791     SWIG_croak_null();
49792   }
49793 }
49794 
49795 
XS(_wrap_free_pf_arrays)49796 XS(_wrap_free_pf_arrays) {
49797   {
49798     int argvi = 0;
49799     dXSARGS;
49800 
49801     if ((items < 0) || (items > 0)) {
49802       SWIG_croak("Usage: free_pf_arrays();");
49803     }
49804     {
49805       try {
49806         free_pf_arrays();
49807       } catch (const std::exception& e) {
49808         SWIG_exception(SWIG_RuntimeError, e.what());
49809       }
49810     }
49811     ST(argvi) = &PL_sv_undef;
49812     XSRETURN(argvi);
49813   fail:
49814     SWIG_croak_null();
49815   }
49816 }
49817 
49818 
XS(_wrap_update_pf_params)49819 XS(_wrap_update_pf_params) {
49820   {
49821     int arg1 ;
49822     int val1 ;
49823     int ecode1 = 0 ;
49824     int argvi = 0;
49825     dXSARGS;
49826 
49827     if ((items < 1) || (items > 1)) {
49828       SWIG_croak("Usage: update_pf_params(length);");
49829     }
49830     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
49831     if (!SWIG_IsOK(ecode1)) {
49832       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "update_pf_params" "', argument " "1"" of type '" "int""'");
49833     }
49834     arg1 = static_cast< int >(val1);
49835     {
49836       try {
49837         update_pf_params(arg1);
49838       } catch (const std::exception& e) {
49839         SWIG_exception(SWIG_RuntimeError, e.what());
49840       }
49841     }
49842     ST(argvi) = &PL_sv_undef;
49843 
49844     XSRETURN(argvi);
49845   fail:
49846 
49847     SWIG_croak_null();
49848   }
49849 }
49850 
49851 
XS(_wrap_mean_bp_distance)49852 XS(_wrap_mean_bp_distance) {
49853   {
49854     int arg1 ;
49855     int val1 ;
49856     int ecode1 = 0 ;
49857     int argvi = 0;
49858     double result;
49859     dXSARGS;
49860 
49861     if ((items < 1) || (items > 1)) {
49862       SWIG_croak("Usage: mean_bp_distance(length);");
49863     }
49864     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
49865     if (!SWIG_IsOK(ecode1)) {
49866       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "mean_bp_distance" "', argument " "1"" of type '" "int""'");
49867     }
49868     arg1 = static_cast< int >(val1);
49869     {
49870       try {
49871         result = (double)mean_bp_distance(arg1);
49872       } catch (const std::exception& e) {
49873         SWIG_exception(SWIG_RuntimeError, e.what());
49874       }
49875     }
49876     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
49877 
49878     XSRETURN(argvi);
49879   fail:
49880 
49881     SWIG_croak_null();
49882   }
49883 }
49884 
49885 
XS(_wrap_init_pf_fold)49886 XS(_wrap_init_pf_fold) {
49887   {
49888     int arg1 ;
49889     int val1 ;
49890     int ecode1 = 0 ;
49891     int argvi = 0;
49892     dXSARGS;
49893 
49894     if ((items < 1) || (items > 1)) {
49895       SWIG_croak("Usage: init_pf_fold(length);");
49896     }
49897     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
49898     if (!SWIG_IsOK(ecode1)) {
49899       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "init_pf_fold" "', argument " "1"" of type '" "int""'");
49900     }
49901     arg1 = static_cast< int >(val1);
49902     {
49903       try {
49904         init_pf_fold(arg1);
49905       } catch (const std::exception& e) {
49906         SWIG_exception(SWIG_RuntimeError, e.what());
49907       }
49908     }
49909     ST(argvi) = &PL_sv_undef;
49910 
49911     XSRETURN(argvi);
49912   fail:
49913 
49914     SWIG_croak_null();
49915   }
49916 }
49917 
49918 
XS(_wrap_centroid)49919 XS(_wrap_centroid) {
49920   {
49921     int arg1 ;
49922     double *arg2 = (double *) 0 ;
49923     int val1 ;
49924     int ecode1 = 0 ;
49925     void *argp2 = 0 ;
49926     int res2 = 0 ;
49927     int argvi = 0;
49928     char *result = 0 ;
49929     dXSARGS;
49930 
49931     if ((items < 2) || (items > 2)) {
49932       SWIG_croak("Usage: centroid(length,dist);");
49933     }
49934     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
49935     if (!SWIG_IsOK(ecode1)) {
49936       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "centroid" "', argument " "1"" of type '" "int""'");
49937     }
49938     arg1 = static_cast< int >(val1);
49939     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_double, 0 |  0 );
49940     if (!SWIG_IsOK(res2)) {
49941       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "centroid" "', argument " "2"" of type '" "double *""'");
49942     }
49943     arg2 = reinterpret_cast< double * >(argp2);
49944     {
49945       try {
49946         result = (char *)centroid(arg1,arg2);
49947       } catch (const std::exception& e) {
49948         SWIG_exception(SWIG_RuntimeError, e.what());
49949       }
49950     }
49951     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
49952 
49953 
49954     XSRETURN(argvi);
49955   fail:
49956 
49957 
49958     SWIG_croak_null();
49959   }
49960 }
49961 
49962 
XS(_wrap_co_pf_fold__SWIG_0)49963 XS(_wrap_co_pf_fold__SWIG_0) {
49964   {
49965     char *arg1 = (char *) 0 ;
49966     float *arg2 = (float *) 0 ;
49967     float *arg3 = (float *) 0 ;
49968     float *arg4 = (float *) 0 ;
49969     float *arg5 = (float *) 0 ;
49970     int res1 ;
49971     char *buf1 = 0 ;
49972     int alloc1 = 0 ;
49973     float temp2 ;
49974     int res2 = SWIG_TMPOBJ ;
49975     float temp3 ;
49976     int res3 = SWIG_TMPOBJ ;
49977     float temp4 ;
49978     int res4 = SWIG_TMPOBJ ;
49979     float temp5 ;
49980     int res5 = SWIG_TMPOBJ ;
49981     int argvi = 0;
49982     char *result = 0 ;
49983     dXSARGS;
49984 
49985     arg2 = &temp2;
49986     arg3 = &temp3;
49987     arg4 = &temp4;
49988     arg5 = &temp5;
49989     if ((items < 1) || (items > 1)) {
49990       SWIG_croak("Usage: co_pf_fold(string);");
49991     }
49992     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
49993     if (!SWIG_IsOK(res1)) {
49994       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "co_pf_fold" "', argument " "1"" of type '" "char *""'");
49995     }
49996     arg1 = reinterpret_cast< char * >(buf1);
49997     {
49998       try {
49999         result = (char *)my_co_pf_fold(arg1,arg2,arg3,arg4,arg5);
50000       } catch (const std::exception& e) {
50001         SWIG_exception(SWIG_RuntimeError, e.what());
50002       }
50003     }
50004     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
50005     if (SWIG_IsTmpObj(res2)) {
50006       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
50007     } else {
50008       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
50009       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_float, new_flags); argvi++  ;
50010     }
50011     if (SWIG_IsTmpObj(res3)) {
50012       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
50013     } else {
50014       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
50015       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
50016     }
50017     if (SWIG_IsTmpObj(res4)) {
50018       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg4)); argvi++  ;
50019     } else {
50020       int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0) : 0;
50021       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_float, new_flags); argvi++  ;
50022     }
50023     if (SWIG_IsTmpObj(res5)) {
50024       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg5)); argvi++  ;
50025     } else {
50026       int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0) : 0;
50027       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_float, new_flags); argvi++  ;
50028     }
50029     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
50030 
50031 
50032 
50033 
50034     delete[] result;
50035     XSRETURN(argvi);
50036   fail:
50037     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
50038 
50039 
50040 
50041 
50042     SWIG_croak_null();
50043   }
50044 }
50045 
50046 
XS(_wrap_co_pf_fold__SWIG_1)50047 XS(_wrap_co_pf_fold__SWIG_1) {
50048   {
50049     char *arg1 = (char *) 0 ;
50050     char *arg2 = (char *) 0 ;
50051     float *arg3 = (float *) 0 ;
50052     float *arg4 = (float *) 0 ;
50053     float *arg5 = (float *) 0 ;
50054     float *arg6 = (float *) 0 ;
50055     int res1 ;
50056     char *buf1 = 0 ;
50057     int alloc1 = 0 ;
50058     int res2 ;
50059     char *buf2 = 0 ;
50060     int alloc2 = 0 ;
50061     float temp3 ;
50062     int res3 = SWIG_TMPOBJ ;
50063     float temp4 ;
50064     int res4 = SWIG_TMPOBJ ;
50065     float temp5 ;
50066     int res5 = SWIG_TMPOBJ ;
50067     float temp6 ;
50068     int res6 = SWIG_TMPOBJ ;
50069     int argvi = 0;
50070     char *result = 0 ;
50071     dXSARGS;
50072 
50073     arg3 = &temp3;
50074     arg4 = &temp4;
50075     arg5 = &temp5;
50076     arg6 = &temp6;
50077     if ((items < 2) || (items > 2)) {
50078       SWIG_croak("Usage: co_pf_fold(string,constraints);");
50079     }
50080     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
50081     if (!SWIG_IsOK(res1)) {
50082       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "co_pf_fold" "', argument " "1"" of type '" "char *""'");
50083     }
50084     arg1 = reinterpret_cast< char * >(buf1);
50085     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
50086     if (!SWIG_IsOK(res2)) {
50087       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "co_pf_fold" "', argument " "2"" of type '" "char *""'");
50088     }
50089     arg2 = reinterpret_cast< char * >(buf2);
50090     {
50091       try {
50092         result = (char *)my_co_pf_fold(arg1,arg2,arg3,arg4,arg5,arg6);
50093       } catch (const std::exception& e) {
50094         SWIG_exception(SWIG_RuntimeError, e.what());
50095       }
50096     }
50097     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
50098     if (SWIG_IsTmpObj(res3)) {
50099       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
50100     } else {
50101       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
50102       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
50103     }
50104     if (SWIG_IsTmpObj(res4)) {
50105       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg4)); argvi++  ;
50106     } else {
50107       int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0) : 0;
50108       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_float, new_flags); argvi++  ;
50109     }
50110     if (SWIG_IsTmpObj(res5)) {
50111       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg5)); argvi++  ;
50112     } else {
50113       int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0) : 0;
50114       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_float, new_flags); argvi++  ;
50115     }
50116     if (SWIG_IsTmpObj(res6)) {
50117       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg6)); argvi++  ;
50118     } else {
50119       int new_flags = SWIG_IsNewObj(res6) ? (SWIG_POINTER_OWN | 0) : 0;
50120       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg6), SWIGTYPE_p_float, new_flags); argvi++  ;
50121     }
50122     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
50123     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
50124 
50125 
50126 
50127 
50128     delete[] result;
50129     XSRETURN(argvi);
50130   fail:
50131     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
50132     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
50133 
50134 
50135 
50136 
50137     SWIG_croak_null();
50138   }
50139 }
50140 
50141 
XS(_wrap_co_pf_fold)50142 XS(_wrap_co_pf_fold) {
50143   dXSARGS;
50144 
50145   {
50146     unsigned long _index = 0;
50147     SWIG_TypeRank _rank = 0;
50148     if (items == 1) {
50149       SWIG_TypeRank _ranki = 0;
50150       SWIG_TypeRank _rankm = 0;
50151       SWIG_TypeRank _pi = 1;
50152       int _v = 0;
50153       {
50154         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
50155         _v = SWIG_CheckState(res);
50156       }
50157       if (!_v) goto check_1;
50158       _ranki += _v*_pi;
50159       _rankm += _pi;
50160       _pi *= SWIG_MAXCASTRANK;
50161       if (!_index || (_ranki < _rank)) {
50162         _rank = _ranki; _index = 1;
50163         if (_rank == _rankm) goto dispatch;
50164       }
50165     }
50166   check_1:
50167 
50168     if (items == 2) {
50169       SWIG_TypeRank _ranki = 0;
50170       SWIG_TypeRank _rankm = 0;
50171       SWIG_TypeRank _pi = 1;
50172       int _v = 0;
50173       {
50174         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
50175         _v = SWIG_CheckState(res);
50176       }
50177       if (!_v) goto check_2;
50178       _ranki += _v*_pi;
50179       _rankm += _pi;
50180       _pi *= SWIG_MAXCASTRANK;
50181       {
50182         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
50183         _v = SWIG_CheckState(res);
50184       }
50185       if (!_v) goto check_2;
50186       _ranki += _v*_pi;
50187       _rankm += _pi;
50188       _pi *= SWIG_MAXCASTRANK;
50189       if (!_index || (_ranki < _rank)) {
50190         _rank = _ranki; _index = 2;
50191         if (_rank == _rankm) goto dispatch;
50192       }
50193     }
50194   check_2:
50195 
50196   dispatch:
50197     switch(_index) {
50198     case 1:
50199       PUSHMARK(MARK); SWIG_CALLXS(_wrap_co_pf_fold__SWIG_0); return;
50200     case 2:
50201       PUSHMARK(MARK); SWIG_CALLXS(_wrap_co_pf_fold__SWIG_1); return;
50202     }
50203   }
50204 
50205   croak("No matching function for overloaded 'co_pf_fold'");
50206   XSRETURN(0);
50207 }
50208 
50209 
XS(_wrap_get_concentrations)50210 XS(_wrap_get_concentrations) {
50211   {
50212     double arg1 ;
50213     double arg2 ;
50214     double arg3 ;
50215     double arg4 ;
50216     double arg5 ;
50217     double arg6 ;
50218     double arg7 ;
50219     double *arg8 = (double *) 0 ;
50220     double *arg9 = (double *) 0 ;
50221     double *arg10 = (double *) 0 ;
50222     double *arg11 = (double *) 0 ;
50223     double *arg12 = (double *) 0 ;
50224     double val1 ;
50225     int ecode1 = 0 ;
50226     double val2 ;
50227     int ecode2 = 0 ;
50228     double val3 ;
50229     int ecode3 = 0 ;
50230     double val4 ;
50231     int ecode4 = 0 ;
50232     double val5 ;
50233     int ecode5 = 0 ;
50234     double val6 ;
50235     int ecode6 = 0 ;
50236     double val7 ;
50237     int ecode7 = 0 ;
50238     double temp8 ;
50239     int res8 = SWIG_TMPOBJ ;
50240     double temp9 ;
50241     int res9 = SWIG_TMPOBJ ;
50242     double temp10 ;
50243     int res10 = SWIG_TMPOBJ ;
50244     double temp11 ;
50245     int res11 = SWIG_TMPOBJ ;
50246     double temp12 ;
50247     int res12 = SWIG_TMPOBJ ;
50248     int argvi = 0;
50249     dXSARGS;
50250 
50251     arg8 = &temp8;
50252     arg9 = &temp9;
50253     arg10 = &temp10;
50254     arg11 = &temp11;
50255     arg12 = &temp12;
50256     if ((items < 7) || (items > 7)) {
50257       SWIG_croak("Usage: get_concentrations(FcAB,FcAA,FcBB,FEA,FEB,A0,BO);");
50258     }
50259     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
50260     if (!SWIG_IsOK(ecode1)) {
50261       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "get_concentrations" "', argument " "1"" of type '" "double""'");
50262     }
50263     arg1 = static_cast< double >(val1);
50264     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
50265     if (!SWIG_IsOK(ecode2)) {
50266       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "get_concentrations" "', argument " "2"" of type '" "double""'");
50267     }
50268     arg2 = static_cast< double >(val2);
50269     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
50270     if (!SWIG_IsOK(ecode3)) {
50271       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "get_concentrations" "', argument " "3"" of type '" "double""'");
50272     }
50273     arg3 = static_cast< double >(val3);
50274     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
50275     if (!SWIG_IsOK(ecode4)) {
50276       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "get_concentrations" "', argument " "4"" of type '" "double""'");
50277     }
50278     arg4 = static_cast< double >(val4);
50279     ecode5 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
50280     if (!SWIG_IsOK(ecode5)) {
50281       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "get_concentrations" "', argument " "5"" of type '" "double""'");
50282     }
50283     arg5 = static_cast< double >(val5);
50284     ecode6 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
50285     if (!SWIG_IsOK(ecode6)) {
50286       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "get_concentrations" "', argument " "6"" of type '" "double""'");
50287     }
50288     arg6 = static_cast< double >(val6);
50289     ecode7 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
50290     if (!SWIG_IsOK(ecode7)) {
50291       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "get_concentrations" "', argument " "7"" of type '" "double""'");
50292     }
50293     arg7 = static_cast< double >(val7);
50294     {
50295       try {
50296         my_get_concentrations(arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8,arg9,arg10,arg11,arg12);
50297       } catch (const std::exception& e) {
50298         SWIG_exception(SWIG_RuntimeError, e.what());
50299       }
50300     }
50301     ST(argvi) = &PL_sv_undef;
50302     if (SWIG_IsTmpObj(res8)) {
50303       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1((*arg8)); argvi++  ;
50304     } else {
50305       int new_flags = SWIG_IsNewObj(res8) ? (SWIG_POINTER_OWN | 0) : 0;
50306       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg8), SWIGTYPE_p_double, new_flags); argvi++  ;
50307     }
50308     if (SWIG_IsTmpObj(res9)) {
50309       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1((*arg9)); argvi++  ;
50310     } else {
50311       int new_flags = SWIG_IsNewObj(res9) ? (SWIG_POINTER_OWN | 0) : 0;
50312       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg9), SWIGTYPE_p_double, new_flags); argvi++  ;
50313     }
50314     if (SWIG_IsTmpObj(res10)) {
50315       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1((*arg10)); argvi++  ;
50316     } else {
50317       int new_flags = SWIG_IsNewObj(res10) ? (SWIG_POINTER_OWN | 0) : 0;
50318       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg10), SWIGTYPE_p_double, new_flags); argvi++  ;
50319     }
50320     if (SWIG_IsTmpObj(res11)) {
50321       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1((*arg11)); argvi++  ;
50322     } else {
50323       int new_flags = SWIG_IsNewObj(res11) ? (SWIG_POINTER_OWN | 0) : 0;
50324       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg11), SWIGTYPE_p_double, new_flags); argvi++  ;
50325     }
50326     if (SWIG_IsTmpObj(res12)) {
50327       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1((*arg12)); argvi++  ;
50328     } else {
50329       int new_flags = SWIG_IsNewObj(res12) ? (SWIG_POINTER_OWN | 0) : 0;
50330       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg12), SWIGTYPE_p_double, new_flags); argvi++  ;
50331     }
50332 
50333 
50334 
50335 
50336 
50337 
50338 
50339 
50340 
50341 
50342 
50343 
50344     XSRETURN(argvi);
50345   fail:
50346 
50347 
50348 
50349 
50350 
50351 
50352 
50353 
50354 
50355 
50356 
50357 
50358     SWIG_croak_null();
50359   }
50360 }
50361 
50362 
XS(_wrap_free_co_pf_arrays)50363 XS(_wrap_free_co_pf_arrays) {
50364   {
50365     int argvi = 0;
50366     dXSARGS;
50367 
50368     if ((items < 0) || (items > 0)) {
50369       SWIG_croak("Usage: free_co_pf_arrays();");
50370     }
50371     {
50372       try {
50373         free_co_pf_arrays();
50374       } catch (const std::exception& e) {
50375         SWIG_exception(SWIG_RuntimeError, e.what());
50376       }
50377     }
50378     ST(argvi) = &PL_sv_undef;
50379     XSRETURN(argvi);
50380   fail:
50381     SWIG_croak_null();
50382   }
50383 }
50384 
50385 
XS(_wrap_update_co_pf_params)50386 XS(_wrap_update_co_pf_params) {
50387   {
50388     int arg1 ;
50389     int val1 ;
50390     int ecode1 = 0 ;
50391     int argvi = 0;
50392     dXSARGS;
50393 
50394     if ((items < 1) || (items > 1)) {
50395       SWIG_croak("Usage: update_co_pf_params(length);");
50396     }
50397     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
50398     if (!SWIG_IsOK(ecode1)) {
50399       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "update_co_pf_params" "', argument " "1"" of type '" "int""'");
50400     }
50401     arg1 = static_cast< int >(val1);
50402     {
50403       try {
50404         update_co_pf_params(arg1);
50405       } catch (const std::exception& e) {
50406         SWIG_exception(SWIG_RuntimeError, e.what());
50407       }
50408     }
50409     ST(argvi) = &PL_sv_undef;
50410 
50411     XSRETURN(argvi);
50412   fail:
50413 
50414     SWIG_croak_null();
50415   }
50416 }
50417 
50418 
XS(_wrap_get_pr)50419 XS(_wrap_get_pr) {
50420   {
50421     int arg1 ;
50422     int arg2 ;
50423     int val1 ;
50424     int ecode1 = 0 ;
50425     int val2 ;
50426     int ecode2 = 0 ;
50427     int argvi = 0;
50428     double result;
50429     dXSARGS;
50430 
50431     if ((items < 2) || (items > 2)) {
50432       SWIG_croak("Usage: get_pr(i,j);");
50433     }
50434     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
50435     if (!SWIG_IsOK(ecode1)) {
50436       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "get_pr" "', argument " "1"" of type '" "int""'");
50437     }
50438     arg1 = static_cast< int >(val1);
50439     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
50440     if (!SWIG_IsOK(ecode2)) {
50441       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "get_pr" "', argument " "2"" of type '" "int""'");
50442     }
50443     arg2 = static_cast< int >(val2);
50444     {
50445       try {
50446         result = (double)get_pr(arg1,arg2);
50447       } catch (const std::exception& e) {
50448         SWIG_exception(SWIG_RuntimeError, e.what());
50449       }
50450     }
50451     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
50452 
50453 
50454     XSRETURN(argvi);
50455   fail:
50456 
50457 
50458     SWIG_croak_null();
50459   }
50460 }
50461 
50462 
XS(_wrap_get_centroid_struct_pl)50463 XS(_wrap_get_centroid_struct_pl) {
50464   {
50465     int arg1 ;
50466     double *arg2 = (double *) 0 ;
50467     vrna_ep_t *arg3 = (vrna_ep_t *) 0 ;
50468     int val1 ;
50469     int ecode1 = 0 ;
50470     void *argp2 = 0 ;
50471     int res2 = 0 ;
50472     void *argp3 = 0 ;
50473     int res3 = 0 ;
50474     int argvi = 0;
50475     char *result = 0 ;
50476     dXSARGS;
50477 
50478     if ((items < 3) || (items > 3)) {
50479       SWIG_croak("Usage: get_centroid_struct_pl(length,dist,pl);");
50480     }
50481     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
50482     if (!SWIG_IsOK(ecode1)) {
50483       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "get_centroid_struct_pl" "', argument " "1"" of type '" "int""'");
50484     }
50485     arg1 = static_cast< int >(val1);
50486     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_double, 0 |  0 );
50487     if (!SWIG_IsOK(res2)) {
50488       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "get_centroid_struct_pl" "', argument " "2"" of type '" "double *""'");
50489     }
50490     arg2 = reinterpret_cast< double * >(argp2);
50491     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_vrna_ep_t, 0 |  0 );
50492     if (!SWIG_IsOK(res3)) {
50493       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "get_centroid_struct_pl" "', argument " "3"" of type '" "vrna_ep_t *""'");
50494     }
50495     arg3 = reinterpret_cast< vrna_ep_t * >(argp3);
50496     {
50497       try {
50498         result = (char *)get_centroid_struct_pl(arg1,arg2,arg3);
50499       } catch (const std::exception& e) {
50500         SWIG_exception(SWIG_RuntimeError, e.what());
50501       }
50502     }
50503     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
50504 
50505 
50506 
50507     XSRETURN(argvi);
50508   fail:
50509 
50510 
50511 
50512     SWIG_croak_null();
50513   }
50514 }
50515 
50516 
XS(_wrap_get_centroid_struct_pr)50517 XS(_wrap_get_centroid_struct_pr) {
50518   {
50519     int arg1 ;
50520     double *arg2 = (double *) 0 ;
50521     FLT_OR_DBL *arg3 = (FLT_OR_DBL *) 0 ;
50522     int val1 ;
50523     int ecode1 = 0 ;
50524     void *argp2 = 0 ;
50525     int res2 = 0 ;
50526     void *argp3 = 0 ;
50527     int res3 = 0 ;
50528     int argvi = 0;
50529     char *result = 0 ;
50530     dXSARGS;
50531 
50532     if ((items < 3) || (items > 3)) {
50533       SWIG_croak("Usage: get_centroid_struct_pr(length,dist,pr);");
50534     }
50535     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
50536     if (!SWIG_IsOK(ecode1)) {
50537       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "get_centroid_struct_pr" "', argument " "1"" of type '" "int""'");
50538     }
50539     arg1 = static_cast< int >(val1);
50540     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_double, 0 |  0 );
50541     if (!SWIG_IsOK(res2)) {
50542       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "get_centroid_struct_pr" "', argument " "2"" of type '" "double *""'");
50543     }
50544     arg2 = reinterpret_cast< double * >(argp2);
50545     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_double, 0 |  0 );
50546     if (!SWIG_IsOK(res3)) {
50547       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "get_centroid_struct_pr" "', argument " "3"" of type '" "FLT_OR_DBL *""'");
50548     }
50549     arg3 = reinterpret_cast< FLT_OR_DBL * >(argp3);
50550     {
50551       try {
50552         result = (char *)get_centroid_struct_pr(arg1,arg2,arg3);
50553       } catch (const std::exception& e) {
50554         SWIG_exception(SWIG_RuntimeError, e.what());
50555       }
50556     }
50557     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
50558 
50559 
50560 
50561     XSRETURN(argvi);
50562   fail:
50563 
50564 
50565 
50566     SWIG_croak_null();
50567   }
50568 }
50569 
50570 
XS(_wrap_MEA_from_plist__SWIG_0)50571 XS(_wrap_MEA_from_plist__SWIG_0) {
50572   {
50573     std::vector< vrna_ep_t > arg1 ;
50574     std::string arg2 ;
50575     double arg3 ;
50576     vrna_md_t *arg4 = (vrna_md_t *) 0 ;
50577     float *arg5 = (float *) 0 ;
50578     std::vector< vrna_ep_t > *v1 ;
50579     double val3 ;
50580     int ecode3 = 0 ;
50581     void *argp4 = 0 ;
50582     int res4 = 0 ;
50583     float temp5 ;
50584     int res5 = SWIG_TMPOBJ ;
50585     int argvi = 0;
50586     char *result = 0 ;
50587     dXSARGS;
50588 
50589     arg5 = &temp5;
50590     if ((items < 4) || (items > 4)) {
50591       SWIG_croak("Usage: MEA_from_plist(plist,sequence,gamma,md);");
50592     }
50593     {
50594       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
50595           SWIGTYPE_p_std__vectorT_vrna_ep_t_t,1) != -1) {
50596         arg1 = *v1;
50597       } else if (SvROK(ST(0))) {
50598         AV *av = (AV *)SvRV(ST(0));
50599         if (SvTYPE(av) != SVt_PVAV)
50600         SWIG_croak("Type error in argument 1 of MEA_from_plist. "
50601           "Expected an array of " "vrna_ep_t");
50602         SV **tv;
50603         I32 len = av_len(av) + 1;
50604         vrna_ep_t* obj;
50605         for (int i=0; i<len; i++) {
50606           tv = av_fetch(av, i, 0);
50607           if (SWIG_ConvertPtr(*tv, (void **)&obj,
50608               SWIGTYPE_p_vrna_ep_t,0) != -1) {
50609             (&arg1)->push_back(*obj);
50610           } else {
50611             SWIG_croak("Type error in argument 1 of "
50612               "MEA_from_plist. "
50613               "Expected an array of " "vrna_ep_t");
50614           }
50615         }
50616       } else {
50617         SWIG_croak("Type error in argument 1 of MEA_from_plist. "
50618           "Expected an array of " "vrna_ep_t");
50619       }
50620     }
50621     {
50622       std::string *ptr = (std::string *)0;
50623       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
50624       if (!SWIG_IsOK(res) || !ptr) {
50625         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "MEA_from_plist" "', argument " "2"" of type '" "std::string""'");
50626       }
50627       arg2 = *ptr;
50628       if (SWIG_IsNewObj(res)) delete ptr;
50629     }
50630     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
50631     if (!SWIG_IsOK(ecode3)) {
50632       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "MEA_from_plist" "', argument " "3"" of type '" "double""'");
50633     }
50634     arg3 = static_cast< double >(val3);
50635     res4 = SWIG_ConvertPtr(ST(3), &argp4,SWIGTYPE_p_vrna_md_t, 0 |  0 );
50636     if (!SWIG_IsOK(res4)) {
50637       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "MEA_from_plist" "', argument " "4"" of type '" "vrna_md_t *""'");
50638     }
50639     arg4 = reinterpret_cast< vrna_md_t * >(argp4);
50640     {
50641       try {
50642         result = (char *)my_MEA_from_plist(arg1,arg2,arg3,arg4,arg5);
50643       } catch (const std::exception& e) {
50644         SWIG_exception(SWIG_RuntimeError, e.what());
50645       }
50646     }
50647     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
50648     if (SWIG_IsTmpObj(res5)) {
50649       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg5)); argvi++  ;
50650     } else {
50651       int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0) : 0;
50652       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_float, new_flags); argvi++  ;
50653     }
50654 
50655 
50656 
50657 
50658     XSRETURN(argvi);
50659   fail:
50660 
50661 
50662 
50663 
50664     SWIG_croak_null();
50665   }
50666 }
50667 
50668 
XS(_wrap_MEA_from_plist__SWIG_1)50669 XS(_wrap_MEA_from_plist__SWIG_1) {
50670   {
50671     std::vector< vrna_ep_t > arg1 ;
50672     std::string arg2 ;
50673     vrna_md_t *arg3 = (vrna_md_t *) 0 ;
50674     float *arg4 = (float *) 0 ;
50675     std::vector< vrna_ep_t > *v1 ;
50676     void *argp3 = 0 ;
50677     int res3 = 0 ;
50678     float temp4 ;
50679     int res4 = SWIG_TMPOBJ ;
50680     int argvi = 0;
50681     char *result = 0 ;
50682     dXSARGS;
50683 
50684     arg4 = &temp4;
50685     if ((items < 3) || (items > 3)) {
50686       SWIG_croak("Usage: MEA_from_plist(plist,sequence,md);");
50687     }
50688     {
50689       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
50690           SWIGTYPE_p_std__vectorT_vrna_ep_t_t,1) != -1) {
50691         arg1 = *v1;
50692       } else if (SvROK(ST(0))) {
50693         AV *av = (AV *)SvRV(ST(0));
50694         if (SvTYPE(av) != SVt_PVAV)
50695         SWIG_croak("Type error in argument 1 of MEA_from_plist. "
50696           "Expected an array of " "vrna_ep_t");
50697         SV **tv;
50698         I32 len = av_len(av) + 1;
50699         vrna_ep_t* obj;
50700         for (int i=0; i<len; i++) {
50701           tv = av_fetch(av, i, 0);
50702           if (SWIG_ConvertPtr(*tv, (void **)&obj,
50703               SWIGTYPE_p_vrna_ep_t,0) != -1) {
50704             (&arg1)->push_back(*obj);
50705           } else {
50706             SWIG_croak("Type error in argument 1 of "
50707               "MEA_from_plist. "
50708               "Expected an array of " "vrna_ep_t");
50709           }
50710         }
50711       } else {
50712         SWIG_croak("Type error in argument 1 of MEA_from_plist. "
50713           "Expected an array of " "vrna_ep_t");
50714       }
50715     }
50716     {
50717       std::string *ptr = (std::string *)0;
50718       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
50719       if (!SWIG_IsOK(res) || !ptr) {
50720         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "MEA_from_plist" "', argument " "2"" of type '" "std::string""'");
50721       }
50722       arg2 = *ptr;
50723       if (SWIG_IsNewObj(res)) delete ptr;
50724     }
50725     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_vrna_md_t, 0 |  0 );
50726     if (!SWIG_IsOK(res3)) {
50727       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "MEA_from_plist" "', argument " "3"" of type '" "vrna_md_t *""'");
50728     }
50729     arg3 = reinterpret_cast< vrna_md_t * >(argp3);
50730     {
50731       try {
50732         result = (char *)my_MEA_from_plist(arg1,arg2,arg3,arg4);
50733       } catch (const std::exception& e) {
50734         SWIG_exception(SWIG_RuntimeError, e.what());
50735       }
50736     }
50737     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
50738     if (SWIG_IsTmpObj(res4)) {
50739       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg4)); argvi++  ;
50740     } else {
50741       int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0) : 0;
50742       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_float, new_flags); argvi++  ;
50743     }
50744 
50745 
50746 
50747     XSRETURN(argvi);
50748   fail:
50749 
50750 
50751 
50752     SWIG_croak_null();
50753   }
50754 }
50755 
50756 
XS(_wrap_MEA_from_plist__SWIG_2)50757 XS(_wrap_MEA_from_plist__SWIG_2) {
50758   {
50759     std::vector< vrna_ep_t > arg1 ;
50760     std::string arg2 ;
50761     double arg3 ;
50762     float *arg4 = (float *) 0 ;
50763     std::vector< vrna_ep_t > *v1 ;
50764     double val3 ;
50765     int ecode3 = 0 ;
50766     float temp4 ;
50767     int res4 = SWIG_TMPOBJ ;
50768     int argvi = 0;
50769     char *result = 0 ;
50770     dXSARGS;
50771 
50772     arg4 = &temp4;
50773     if ((items < 3) || (items > 3)) {
50774       SWIG_croak("Usage: MEA_from_plist(plist,sequence,gamma);");
50775     }
50776     {
50777       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
50778           SWIGTYPE_p_std__vectorT_vrna_ep_t_t,1) != -1) {
50779         arg1 = *v1;
50780       } else if (SvROK(ST(0))) {
50781         AV *av = (AV *)SvRV(ST(0));
50782         if (SvTYPE(av) != SVt_PVAV)
50783         SWIG_croak("Type error in argument 1 of MEA_from_plist. "
50784           "Expected an array of " "vrna_ep_t");
50785         SV **tv;
50786         I32 len = av_len(av) + 1;
50787         vrna_ep_t* obj;
50788         for (int i=0; i<len; i++) {
50789           tv = av_fetch(av, i, 0);
50790           if (SWIG_ConvertPtr(*tv, (void **)&obj,
50791               SWIGTYPE_p_vrna_ep_t,0) != -1) {
50792             (&arg1)->push_back(*obj);
50793           } else {
50794             SWIG_croak("Type error in argument 1 of "
50795               "MEA_from_plist. "
50796               "Expected an array of " "vrna_ep_t");
50797           }
50798         }
50799       } else {
50800         SWIG_croak("Type error in argument 1 of MEA_from_plist. "
50801           "Expected an array of " "vrna_ep_t");
50802       }
50803     }
50804     {
50805       std::string *ptr = (std::string *)0;
50806       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
50807       if (!SWIG_IsOK(res) || !ptr) {
50808         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "MEA_from_plist" "', argument " "2"" of type '" "std::string""'");
50809       }
50810       arg2 = *ptr;
50811       if (SWIG_IsNewObj(res)) delete ptr;
50812     }
50813     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
50814     if (!SWIG_IsOK(ecode3)) {
50815       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "MEA_from_plist" "', argument " "3"" of type '" "double""'");
50816     }
50817     arg3 = static_cast< double >(val3);
50818     {
50819       try {
50820         result = (char *)my_MEA_from_plist(arg1,arg2,arg3,arg4);
50821       } catch (const std::exception& e) {
50822         SWIG_exception(SWIG_RuntimeError, e.what());
50823       }
50824     }
50825     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
50826     if (SWIG_IsTmpObj(res4)) {
50827       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg4)); argvi++  ;
50828     } else {
50829       int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0) : 0;
50830       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_float, new_flags); argvi++  ;
50831     }
50832 
50833 
50834 
50835     XSRETURN(argvi);
50836   fail:
50837 
50838 
50839 
50840     SWIG_croak_null();
50841   }
50842 }
50843 
50844 
XS(_wrap_MEA_from_plist__SWIG_3)50845 XS(_wrap_MEA_from_plist__SWIG_3) {
50846   {
50847     std::vector< vrna_ep_t > arg1 ;
50848     std::string arg2 ;
50849     float *arg3 = (float *) 0 ;
50850     std::vector< vrna_ep_t > *v1 ;
50851     float temp3 ;
50852     int res3 = SWIG_TMPOBJ ;
50853     int argvi = 0;
50854     char *result = 0 ;
50855     dXSARGS;
50856 
50857     arg3 = &temp3;
50858     if ((items < 2) || (items > 2)) {
50859       SWIG_croak("Usage: MEA_from_plist(plist,sequence);");
50860     }
50861     {
50862       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
50863           SWIGTYPE_p_std__vectorT_vrna_ep_t_t,1) != -1) {
50864         arg1 = *v1;
50865       } else if (SvROK(ST(0))) {
50866         AV *av = (AV *)SvRV(ST(0));
50867         if (SvTYPE(av) != SVt_PVAV)
50868         SWIG_croak("Type error in argument 1 of MEA_from_plist. "
50869           "Expected an array of " "vrna_ep_t");
50870         SV **tv;
50871         I32 len = av_len(av) + 1;
50872         vrna_ep_t* obj;
50873         for (int i=0; i<len; i++) {
50874           tv = av_fetch(av, i, 0);
50875           if (SWIG_ConvertPtr(*tv, (void **)&obj,
50876               SWIGTYPE_p_vrna_ep_t,0) != -1) {
50877             (&arg1)->push_back(*obj);
50878           } else {
50879             SWIG_croak("Type error in argument 1 of "
50880               "MEA_from_plist. "
50881               "Expected an array of " "vrna_ep_t");
50882           }
50883         }
50884       } else {
50885         SWIG_croak("Type error in argument 1 of MEA_from_plist. "
50886           "Expected an array of " "vrna_ep_t");
50887       }
50888     }
50889     {
50890       std::string *ptr = (std::string *)0;
50891       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
50892       if (!SWIG_IsOK(res) || !ptr) {
50893         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "MEA_from_plist" "', argument " "2"" of type '" "std::string""'");
50894       }
50895       arg2 = *ptr;
50896       if (SWIG_IsNewObj(res)) delete ptr;
50897     }
50898     {
50899       try {
50900         result = (char *)my_MEA_from_plist(arg1,arg2,arg3);
50901       } catch (const std::exception& e) {
50902         SWIG_exception(SWIG_RuntimeError, e.what());
50903       }
50904     }
50905     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
50906     if (SWIG_IsTmpObj(res3)) {
50907       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
50908     } else {
50909       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
50910       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
50911     }
50912 
50913 
50914     XSRETURN(argvi);
50915   fail:
50916 
50917 
50918     SWIG_croak_null();
50919   }
50920 }
50921 
50922 
XS(_wrap_MEA_from_plist)50923 XS(_wrap_MEA_from_plist) {
50924   dXSARGS;
50925 
50926   {
50927     unsigned long _index = 0;
50928     SWIG_TypeRank _rank = 0;
50929     if (items == 2) {
50930       SWIG_TypeRank _ranki = 0;
50931       SWIG_TypeRank _rankm = 0;
50932       SWIG_TypeRank _pi = 1;
50933       int _v = 0;
50934       {
50935         {
50936           {
50937             /* wrapped vector? */
50938             std::vector< vrna_ep_t >* v;
50939             if (SWIG_ConvertPtr(ST(0),(void **) &v,
50940                 SWIGTYPE_p_std__vectorT_vrna_ep_t_t,0) != -1) {
50941               _v = 1;
50942             } else if (SvROK(ST(0))) {
50943               /* native sequence? */
50944               AV *av = (AV *)SvRV(ST(0));
50945               if (SvTYPE(av) == SVt_PVAV) {
50946                 I32 len = av_len(av) + 1;
50947                 if (len == 0) {
50948                   /* an empty sequence can be of any type */
50949                   _v = 1;
50950                 } else {
50951                   /* check the first element only */
50952                   vrna_ep_t* obj;
50953                   SV **tv = av_fetch(av, 0, 0);
50954                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
50955                       SWIGTYPE_p_vrna_ep_t,0) != -1)
50956                   _v = 1;
50957                   else
50958                   _v = 0;
50959                 }
50960               }
50961             } else {
50962               _v = 0;
50963             }
50964           }
50965         }
50966       }
50967       if (!_v) goto check_1;
50968       _ranki += _v*_pi;
50969       _rankm += _pi;
50970       _pi *= SWIG_MAXCASTRANK;
50971       {
50972         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
50973         _v = SWIG_CheckState(res);
50974       }
50975       if (!_v) goto check_1;
50976       _ranki += _v*_pi;
50977       _rankm += _pi;
50978       _pi *= SWIG_MAXCASTRANK;
50979       if (!_index || (_ranki < _rank)) {
50980         _rank = _ranki; _index = 1;
50981         if (_rank == _rankm) goto dispatch;
50982       }
50983     }
50984   check_1:
50985 
50986     if (items == 3) {
50987       SWIG_TypeRank _ranki = 0;
50988       SWIG_TypeRank _rankm = 0;
50989       SWIG_TypeRank _pi = 1;
50990       int _v = 0;
50991       {
50992         {
50993           {
50994             /* wrapped vector? */
50995             std::vector< vrna_ep_t >* v;
50996             if (SWIG_ConvertPtr(ST(0),(void **) &v,
50997                 SWIGTYPE_p_std__vectorT_vrna_ep_t_t,0) != -1) {
50998               _v = 1;
50999             } else if (SvROK(ST(0))) {
51000               /* native sequence? */
51001               AV *av = (AV *)SvRV(ST(0));
51002               if (SvTYPE(av) == SVt_PVAV) {
51003                 I32 len = av_len(av) + 1;
51004                 if (len == 0) {
51005                   /* an empty sequence can be of any type */
51006                   _v = 1;
51007                 } else {
51008                   /* check the first element only */
51009                   vrna_ep_t* obj;
51010                   SV **tv = av_fetch(av, 0, 0);
51011                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
51012                       SWIGTYPE_p_vrna_ep_t,0) != -1)
51013                   _v = 1;
51014                   else
51015                   _v = 0;
51016                 }
51017               }
51018             } else {
51019               _v = 0;
51020             }
51021           }
51022         }
51023       }
51024       if (!_v) goto check_2;
51025       _ranki += _v*_pi;
51026       _rankm += _pi;
51027       _pi *= SWIG_MAXCASTRANK;
51028       {
51029         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
51030         _v = SWIG_CheckState(res);
51031       }
51032       if (!_v) goto check_2;
51033       _ranki += _v*_pi;
51034       _rankm += _pi;
51035       _pi *= SWIG_MAXCASTRANK;
51036       {
51037         void *vptr = 0;
51038         int res = SWIG_ConvertPtr(ST(2), &vptr, SWIGTYPE_p_vrna_md_t, 0);
51039         _v = SWIG_CheckState(res);
51040       }
51041       if (!_v) goto check_2;
51042       _ranki += _v*_pi;
51043       _rankm += _pi;
51044       _pi *= SWIG_MAXCASTRANK;
51045       if (!_index || (_ranki < _rank)) {
51046         _rank = _ranki; _index = 2;
51047         if (_rank == _rankm) goto dispatch;
51048       }
51049     }
51050   check_2:
51051 
51052     if (items == 3) {
51053       SWIG_TypeRank _ranki = 0;
51054       SWIG_TypeRank _rankm = 0;
51055       SWIG_TypeRank _pi = 1;
51056       int _v = 0;
51057       {
51058         {
51059           {
51060             /* wrapped vector? */
51061             std::vector< vrna_ep_t >* v;
51062             if (SWIG_ConvertPtr(ST(0),(void **) &v,
51063                 SWIGTYPE_p_std__vectorT_vrna_ep_t_t,0) != -1) {
51064               _v = 1;
51065             } else if (SvROK(ST(0))) {
51066               /* native sequence? */
51067               AV *av = (AV *)SvRV(ST(0));
51068               if (SvTYPE(av) == SVt_PVAV) {
51069                 I32 len = av_len(av) + 1;
51070                 if (len == 0) {
51071                   /* an empty sequence can be of any type */
51072                   _v = 1;
51073                 } else {
51074                   /* check the first element only */
51075                   vrna_ep_t* obj;
51076                   SV **tv = av_fetch(av, 0, 0);
51077                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
51078                       SWIGTYPE_p_vrna_ep_t,0) != -1)
51079                   _v = 1;
51080                   else
51081                   _v = 0;
51082                 }
51083               }
51084             } else {
51085               _v = 0;
51086             }
51087           }
51088         }
51089       }
51090       if (!_v) goto check_3;
51091       _ranki += _v*_pi;
51092       _rankm += _pi;
51093       _pi *= SWIG_MAXCASTRANK;
51094       {
51095         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
51096         _v = SWIG_CheckState(res);
51097       }
51098       if (!_v) goto check_3;
51099       _ranki += _v*_pi;
51100       _rankm += _pi;
51101       _pi *= SWIG_MAXCASTRANK;
51102       {
51103         {
51104           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
51105           _v = SWIG_CheckState(res);
51106         }
51107       }
51108       if (!_v) goto check_3;
51109       _ranki += _v*_pi;
51110       _rankm += _pi;
51111       _pi *= SWIG_MAXCASTRANK;
51112       if (!_index || (_ranki < _rank)) {
51113         _rank = _ranki; _index = 3;
51114         if (_rank == _rankm) goto dispatch;
51115       }
51116     }
51117   check_3:
51118 
51119     if (items == 4) {
51120       SWIG_TypeRank _ranki = 0;
51121       SWIG_TypeRank _rankm = 0;
51122       SWIG_TypeRank _pi = 1;
51123       int _v = 0;
51124       {
51125         {
51126           {
51127             /* wrapped vector? */
51128             std::vector< vrna_ep_t >* v;
51129             if (SWIG_ConvertPtr(ST(0),(void **) &v,
51130                 SWIGTYPE_p_std__vectorT_vrna_ep_t_t,0) != -1) {
51131               _v = 1;
51132             } else if (SvROK(ST(0))) {
51133               /* native sequence? */
51134               AV *av = (AV *)SvRV(ST(0));
51135               if (SvTYPE(av) == SVt_PVAV) {
51136                 I32 len = av_len(av) + 1;
51137                 if (len == 0) {
51138                   /* an empty sequence can be of any type */
51139                   _v = 1;
51140                 } else {
51141                   /* check the first element only */
51142                   vrna_ep_t* obj;
51143                   SV **tv = av_fetch(av, 0, 0);
51144                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
51145                       SWIGTYPE_p_vrna_ep_t,0) != -1)
51146                   _v = 1;
51147                   else
51148                   _v = 0;
51149                 }
51150               }
51151             } else {
51152               _v = 0;
51153             }
51154           }
51155         }
51156       }
51157       if (!_v) goto check_4;
51158       _ranki += _v*_pi;
51159       _rankm += _pi;
51160       _pi *= SWIG_MAXCASTRANK;
51161       {
51162         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
51163         _v = SWIG_CheckState(res);
51164       }
51165       if (!_v) goto check_4;
51166       _ranki += _v*_pi;
51167       _rankm += _pi;
51168       _pi *= SWIG_MAXCASTRANK;
51169       {
51170         {
51171           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
51172           _v = SWIG_CheckState(res);
51173         }
51174       }
51175       if (!_v) goto check_4;
51176       _ranki += _v*_pi;
51177       _rankm += _pi;
51178       _pi *= SWIG_MAXCASTRANK;
51179       {
51180         void *vptr = 0;
51181         int res = SWIG_ConvertPtr(ST(3), &vptr, SWIGTYPE_p_vrna_md_t, 0);
51182         _v = SWIG_CheckState(res);
51183       }
51184       if (!_v) goto check_4;
51185       _ranki += _v*_pi;
51186       _rankm += _pi;
51187       _pi *= SWIG_MAXCASTRANK;
51188       if (!_index || (_ranki < _rank)) {
51189         _rank = _ranki; _index = 4;
51190         if (_rank == _rankm) goto dispatch;
51191       }
51192     }
51193   check_4:
51194 
51195   dispatch:
51196     switch(_index) {
51197     case 1:
51198       PUSHMARK(MARK); SWIG_CALLXS(_wrap_MEA_from_plist__SWIG_3); return;
51199     case 2:
51200       PUSHMARK(MARK); SWIG_CALLXS(_wrap_MEA_from_plist__SWIG_1); return;
51201     case 3:
51202       PUSHMARK(MARK); SWIG_CALLXS(_wrap_MEA_from_plist__SWIG_2); return;
51203     case 4:
51204       PUSHMARK(MARK); SWIG_CALLXS(_wrap_MEA_from_plist__SWIG_0); return;
51205     }
51206   }
51207 
51208   croak("No matching function for overloaded 'MEA_from_plist'");
51209   XSRETURN(0);
51210 }
51211 
51212 
XS(_wrap_new_pbacktrack_mem)51213 XS(_wrap_new_pbacktrack_mem) {
51214   {
51215     int argvi = 0;
51216     vrna_pbacktrack_mem_t *result = 0 ;
51217     dXSARGS;
51218 
51219     if ((items < 0) || (items > 0)) {
51220       SWIG_croak("Usage: new_pbacktrack_mem();");
51221     }
51222     {
51223       try {
51224         result = (vrna_pbacktrack_mem_t *)new_vrna_pbacktrack_mem_t();
51225       } catch (const std::exception& e) {
51226         SWIG_exception(SWIG_RuntimeError, e.what());
51227       }
51228     }
51229     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_pbacktrack_mem_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
51230     XSRETURN(argvi);
51231   fail:
51232     SWIG_croak_null();
51233   }
51234 }
51235 
51236 
XS(_wrap_delete_pbacktrack_mem)51237 XS(_wrap_delete_pbacktrack_mem) {
51238   {
51239     vrna_pbacktrack_mem_t *arg1 = (vrna_pbacktrack_mem_t *) 0 ;
51240     void *argp1 = 0 ;
51241     int res1 = 0 ;
51242     int argvi = 0;
51243     dXSARGS;
51244 
51245     if ((items < 1) || (items > 1)) {
51246       SWIG_croak("Usage: delete_pbacktrack_mem(self);");
51247     }
51248     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_pbacktrack_mem_t, SWIG_POINTER_DISOWN |  0 );
51249     if (!SWIG_IsOK(res1)) {
51250       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_pbacktrack_mem" "', argument " "1"" of type '" "vrna_pbacktrack_mem_t *""'");
51251     }
51252     arg1 = reinterpret_cast< vrna_pbacktrack_mem_t * >(argp1);
51253     {
51254       try {
51255         delete_vrna_pbacktrack_mem_t(arg1);
51256       } catch (const std::exception& e) {
51257         SWIG_exception(SWIG_RuntimeError, e.what());
51258       }
51259     }
51260     ST(argvi) = &PL_sv_undef;
51261 
51262     XSRETURN(argvi);
51263   fail:
51264 
51265     SWIG_croak_null();
51266   }
51267 }
51268 
51269 
XS(_wrap_pfl_fold)51270 XS(_wrap_pfl_fold) {
51271   {
51272     std::string arg1 ;
51273     int arg2 ;
51274     int arg3 ;
51275     double arg4 ;
51276     int val2 ;
51277     int ecode2 = 0 ;
51278     int val3 ;
51279     int ecode3 = 0 ;
51280     double val4 ;
51281     int ecode4 = 0 ;
51282     int argvi = 0;
51283     std::vector< vrna_ep_t > result;
51284     dXSARGS;
51285 
51286     if ((items < 4) || (items > 4)) {
51287       SWIG_croak("Usage: pfl_fold(sequence,w,L,cutoff);");
51288     }
51289     {
51290       std::string *ptr = (std::string *)0;
51291       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
51292       if (!SWIG_IsOK(res) || !ptr) {
51293         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "pfl_fold" "', argument " "1"" of type '" "std::string""'");
51294       }
51295       arg1 = *ptr;
51296       if (SWIG_IsNewObj(res)) delete ptr;
51297     }
51298     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
51299     if (!SWIG_IsOK(ecode2)) {
51300       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pfl_fold" "', argument " "2"" of type '" "int""'");
51301     }
51302     arg2 = static_cast< int >(val2);
51303     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
51304     if (!SWIG_IsOK(ecode3)) {
51305       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "pfl_fold" "', argument " "3"" of type '" "int""'");
51306     }
51307     arg3 = static_cast< int >(val3);
51308     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
51309     if (!SWIG_IsOK(ecode4)) {
51310       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "pfl_fold" "', argument " "4"" of type '" "double""'");
51311     }
51312     arg4 = static_cast< double >(val4);
51313     {
51314       try {
51315         result = my_pfl_fold(arg1,arg2,arg3,arg4);
51316       } catch (const std::exception& e) {
51317         SWIG_exception(SWIG_RuntimeError, e.what());
51318       }
51319     }
51320     {
51321       size_t len = (&result)->size();
51322       SV **svs = new SV*[len];
51323       for (size_t i=0; i<len; i++) {
51324         vrna_ep_t* ptr = new vrna_ep_t(result[i]);
51325         svs[i] = sv_newmortal();
51326         SWIG_MakePtr(svs[i], (void*) ptr,
51327           SWIGTYPE_p_vrna_ep_t, SWIG_SHADOW|0);
51328       }
51329       AV *myav = av_make(len, svs);
51330       delete[] svs;
51331       ST(argvi) = newRV_noinc((SV*) myav);
51332       sv_2mortal(ST(argvi));
51333       argvi++;
51334     }
51335 
51336 
51337 
51338 
51339     XSRETURN(argvi);
51340   fail:
51341 
51342 
51343 
51344 
51345     SWIG_croak_null();
51346   }
51347 }
51348 
51349 
XS(_wrap_pfl_fold_up)51350 XS(_wrap_pfl_fold_up) {
51351   {
51352     std::string arg1 ;
51353     int arg2 ;
51354     int arg3 ;
51355     int arg4 ;
51356     int val2 ;
51357     int ecode2 = 0 ;
51358     int val3 ;
51359     int ecode3 = 0 ;
51360     int val4 ;
51361     int ecode4 = 0 ;
51362     int argvi = 0;
51363     std::vector< std::vector< double > > result;
51364     dXSARGS;
51365 
51366     if ((items < 4) || (items > 4)) {
51367       SWIG_croak("Usage: pfl_fold_up(sequence,ulength,window_size,max_bp_span);");
51368     }
51369     {
51370       std::string *ptr = (std::string *)0;
51371       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
51372       if (!SWIG_IsOK(res) || !ptr) {
51373         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "pfl_fold_up" "', argument " "1"" of type '" "std::string""'");
51374       }
51375       arg1 = *ptr;
51376       if (SWIG_IsNewObj(res)) delete ptr;
51377     }
51378     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
51379     if (!SWIG_IsOK(ecode2)) {
51380       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pfl_fold_up" "', argument " "2"" of type '" "int""'");
51381     }
51382     arg2 = static_cast< int >(val2);
51383     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
51384     if (!SWIG_IsOK(ecode3)) {
51385       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "pfl_fold_up" "', argument " "3"" of type '" "int""'");
51386     }
51387     arg3 = static_cast< int >(val3);
51388     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
51389     if (!SWIG_IsOK(ecode4)) {
51390       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "pfl_fold_up" "', argument " "4"" of type '" "int""'");
51391     }
51392     arg4 = static_cast< int >(val4);
51393     {
51394       try {
51395         result = pfl_fold_up(arg1,arg2,arg3,arg4);
51396       } catch (const std::exception& e) {
51397         SWIG_exception(SWIG_RuntimeError, e.what());
51398       }
51399     }
51400     {
51401       AV *arr = newAV();
51402       for(unsigned int i = 0; i < (&result)->size(); i++) {
51403         AV *vec = newAV();
51404         for(unsigned int j = 0; j < result[i].size(); j++) {
51405           SV *v = newSVnv(result[i][j]);
51406           if (!av_store(vec, j, v))
51407           SvREFCNT_dec(v);
51408         }
51409         /* store reference to array */
51410         av_store(arr, i, newRV_noinc((SV*) vec));
51411       }
51412 
51413       ST(argvi) = newRV_noinc((SV*) arr);
51414       sv_2mortal( ST(argvi) );
51415       argvi++;
51416     }
51417 
51418 
51419 
51420 
51421     XSRETURN(argvi);
51422   fail:
51423 
51424 
51425 
51426 
51427     SWIG_croak_null();
51428   }
51429 }
51430 
51431 
XS(_wrap_SOLUTION_energy_set)51432 XS(_wrap_SOLUTION_energy_set) {
51433   {
51434     SOLUTION *arg1 = (SOLUTION *) 0 ;
51435     float arg2 ;
51436     void *argp1 = 0 ;
51437     int res1 = 0 ;
51438     float val2 ;
51439     int ecode2 = 0 ;
51440     int argvi = 0;
51441     dXSARGS;
51442 
51443     if ((items < 2) || (items > 2)) {
51444       SWIG_croak("Usage: SOLUTION_energy_set(self,energy);");
51445     }
51446     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_SOLUTION, 0 |  0 );
51447     if (!SWIG_IsOK(res1)) {
51448       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SOLUTION_energy_set" "', argument " "1"" of type '" "SOLUTION *""'");
51449     }
51450     arg1 = reinterpret_cast< SOLUTION * >(argp1);
51451     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
51452     if (!SWIG_IsOK(ecode2)) {
51453       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "SOLUTION_energy_set" "', argument " "2"" of type '" "float""'");
51454     }
51455     arg2 = static_cast< float >(val2);
51456     if (arg1) (arg1)->energy = arg2;
51457     ST(argvi) = &PL_sv_undef;
51458 
51459 
51460     XSRETURN(argvi);
51461   fail:
51462 
51463 
51464     SWIG_croak_null();
51465   }
51466 }
51467 
51468 
XS(_wrap_SOLUTION_energy_get)51469 XS(_wrap_SOLUTION_energy_get) {
51470   {
51471     SOLUTION *arg1 = (SOLUTION *) 0 ;
51472     void *argp1 = 0 ;
51473     int res1 = 0 ;
51474     int argvi = 0;
51475     float result;
51476     dXSARGS;
51477 
51478     if ((items < 1) || (items > 1)) {
51479       SWIG_croak("Usage: SOLUTION_energy_get(self);");
51480     }
51481     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_SOLUTION, 0 |  0 );
51482     if (!SWIG_IsOK(res1)) {
51483       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SOLUTION_energy_get" "', argument " "1"" of type '" "SOLUTION *""'");
51484     }
51485     arg1 = reinterpret_cast< SOLUTION * >(argp1);
51486     result = (float) ((arg1)->energy);
51487     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
51488 
51489     XSRETURN(argvi);
51490   fail:
51491 
51492     SWIG_croak_null();
51493   }
51494 }
51495 
51496 
XS(_wrap_SOLUTION_structure_set)51497 XS(_wrap_SOLUTION_structure_set) {
51498   {
51499     SOLUTION *arg1 = (SOLUTION *) 0 ;
51500     char *arg2 = (char *) 0 ;
51501     void *argp1 = 0 ;
51502     int res1 = 0 ;
51503     int res2 ;
51504     char *buf2 = 0 ;
51505     int alloc2 = 0 ;
51506     int argvi = 0;
51507     dXSARGS;
51508 
51509     if ((items < 2) || (items > 2)) {
51510       SWIG_croak("Usage: SOLUTION_structure_set(self,structure);");
51511     }
51512     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_SOLUTION, 0 |  0 );
51513     if (!SWIG_IsOK(res1)) {
51514       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SOLUTION_structure_set" "', argument " "1"" of type '" "SOLUTION *""'");
51515     }
51516     arg1 = reinterpret_cast< SOLUTION * >(argp1);
51517     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
51518     if (!SWIG_IsOK(res2)) {
51519       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "SOLUTION_structure_set" "', argument " "2"" of type '" "char *""'");
51520     }
51521     arg2 = reinterpret_cast< char * >(buf2);
51522     if (arg1->structure) delete[] arg1->structure;
51523     if (arg2) {
51524       size_t size = strlen(reinterpret_cast< const char * >(arg2)) + 1;
51525       arg1->structure = (char *)reinterpret_cast< char* >(memcpy(new char[size], reinterpret_cast< const char * >(arg2), sizeof(char)*(size)));
51526     } else {
51527       arg1->structure = 0;
51528     }
51529     ST(argvi) = &PL_sv_undef;
51530 
51531     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
51532     XSRETURN(argvi);
51533   fail:
51534 
51535     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
51536     SWIG_croak_null();
51537   }
51538 }
51539 
51540 
XS(_wrap_SOLUTION_structure_get)51541 XS(_wrap_SOLUTION_structure_get) {
51542   {
51543     SOLUTION *arg1 = (SOLUTION *) 0 ;
51544     void *argp1 = 0 ;
51545     int res1 = 0 ;
51546     int argvi = 0;
51547     char *result = 0 ;
51548     dXSARGS;
51549 
51550     if ((items < 1) || (items > 1)) {
51551       SWIG_croak("Usage: SOLUTION_structure_get(self);");
51552     }
51553     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_SOLUTION, 0 |  0 );
51554     if (!SWIG_IsOK(res1)) {
51555       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SOLUTION_structure_get" "', argument " "1"" of type '" "SOLUTION *""'");
51556     }
51557     arg1 = reinterpret_cast< SOLUTION * >(argp1);
51558     result = (char *) ((arg1)->structure);
51559     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
51560 
51561     XSRETURN(argvi);
51562   fail:
51563 
51564     SWIG_croak_null();
51565   }
51566 }
51567 
51568 
XS(_wrap_SOLUTION_get)51569 XS(_wrap_SOLUTION_get) {
51570   {
51571     SOLUTION *arg1 = (SOLUTION *) 0 ;
51572     int arg2 ;
51573     void *argp1 = 0 ;
51574     int res1 = 0 ;
51575     int val2 ;
51576     int ecode2 = 0 ;
51577     int argvi = 0;
51578     SOLUTION *result = 0 ;
51579     dXSARGS;
51580 
51581     if ((items < 2) || (items > 2)) {
51582       SWIG_croak("Usage: SOLUTION_get(self,i);");
51583     }
51584     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_SOLUTION, 0 |  0 );
51585     if (!SWIG_IsOK(res1)) {
51586       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SOLUTION_get" "', argument " "1"" of type '" "SOLUTION *""'");
51587     }
51588     arg1 = reinterpret_cast< SOLUTION * >(argp1);
51589     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
51590     if (!SWIG_IsOK(ecode2)) {
51591       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "SOLUTION_get" "', argument " "2"" of type '" "int""'");
51592     }
51593     arg2 = static_cast< int >(val2);
51594     {
51595       try {
51596         result = (SOLUTION *)SOLUTION_get(arg1,arg2);
51597       } catch (const std::exception& e) {
51598         SWIG_exception(SWIG_RuntimeError, e.what());
51599       }
51600     }
51601     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_SOLUTION, 0 | SWIG_SHADOW); argvi++ ;
51602 
51603 
51604     XSRETURN(argvi);
51605   fail:
51606 
51607 
51608     SWIG_croak_null();
51609   }
51610 }
51611 
51612 
XS(_wrap_SOLUTION_size)51613 XS(_wrap_SOLUTION_size) {
51614   {
51615     SOLUTION *arg1 = (SOLUTION *) 0 ;
51616     void *argp1 = 0 ;
51617     int res1 = 0 ;
51618     int argvi = 0;
51619     int result;
51620     dXSARGS;
51621 
51622     if ((items < 1) || (items > 1)) {
51623       SWIG_croak("Usage: SOLUTION_size(self);");
51624     }
51625     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_SOLUTION, 0 |  0 );
51626     if (!SWIG_IsOK(res1)) {
51627       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SOLUTION_size" "', argument " "1"" of type '" "SOLUTION *""'");
51628     }
51629     arg1 = reinterpret_cast< SOLUTION * >(argp1);
51630     {
51631       try {
51632         result = (int)SOLUTION_size(arg1);
51633       } catch (const std::exception& e) {
51634         SWIG_exception(SWIG_RuntimeError, e.what());
51635       }
51636     }
51637     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
51638 
51639     XSRETURN(argvi);
51640   fail:
51641 
51642     SWIG_croak_null();
51643   }
51644 }
51645 
51646 
XS(_wrap_delete_SOLUTION)51647 XS(_wrap_delete_SOLUTION) {
51648   {
51649     SOLUTION *arg1 = (SOLUTION *) 0 ;
51650     void *argp1 = 0 ;
51651     int res1 = 0 ;
51652     int argvi = 0;
51653     dXSARGS;
51654 
51655     if ((items < 1) || (items > 1)) {
51656       SWIG_croak("Usage: delete_SOLUTION(self);");
51657     }
51658     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_SOLUTION, SWIG_POINTER_DISOWN |  0 );
51659     if (!SWIG_IsOK(res1)) {
51660       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_SOLUTION" "', argument " "1"" of type '" "SOLUTION *""'");
51661     }
51662     arg1 = reinterpret_cast< SOLUTION * >(argp1);
51663     {
51664       try {
51665         delete_SOLUTION(arg1);
51666       } catch (const std::exception& e) {
51667         SWIG_exception(SWIG_RuntimeError, e.what());
51668       }
51669     }
51670     ST(argvi) = &PL_sv_undef;
51671 
51672     XSRETURN(argvi);
51673   fail:
51674 
51675     SWIG_croak_null();
51676   }
51677 }
51678 
51679 
XS(_wrap_new_SOLUTION)51680 XS(_wrap_new_SOLUTION) {
51681   {
51682     int argvi = 0;
51683     SOLUTION *result = 0 ;
51684     dXSARGS;
51685 
51686     if ((items < 0) || (items > 0)) {
51687       SWIG_croak("Usage: new_SOLUTION();");
51688     }
51689     {
51690       try {
51691         result = (SOLUTION *)new SOLUTION();
51692       } catch (const std::exception& e) {
51693         SWIG_exception(SWIG_RuntimeError, e.what());
51694       }
51695     }
51696     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_SOLUTION, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
51697     XSRETURN(argvi);
51698   fail:
51699     SWIG_croak_null();
51700   }
51701 }
51702 
51703 
XS(_wrap_subopt_solution_energy_set)51704 XS(_wrap_subopt_solution_energy_set) {
51705   {
51706     subopt_solution *arg1 = (subopt_solution *) 0 ;
51707     float arg2 ;
51708     void *argp1 = 0 ;
51709     int res1 = 0 ;
51710     float val2 ;
51711     int ecode2 = 0 ;
51712     int argvi = 0;
51713     dXSARGS;
51714 
51715     if ((items < 2) || (items > 2)) {
51716       SWIG_croak("Usage: subopt_solution_energy_set(self,energy);");
51717     }
51718     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_subopt_solution, 0 |  0 );
51719     if (!SWIG_IsOK(res1)) {
51720       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "subopt_solution_energy_set" "', argument " "1"" of type '" "subopt_solution *""'");
51721     }
51722     arg1 = reinterpret_cast< subopt_solution * >(argp1);
51723     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
51724     if (!SWIG_IsOK(ecode2)) {
51725       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "subopt_solution_energy_set" "', argument " "2"" of type '" "float""'");
51726     }
51727     arg2 = static_cast< float >(val2);
51728     if (arg1) (arg1)->energy = arg2;
51729     ST(argvi) = &PL_sv_undef;
51730 
51731 
51732     XSRETURN(argvi);
51733   fail:
51734 
51735 
51736     SWIG_croak_null();
51737   }
51738 }
51739 
51740 
XS(_wrap_subopt_solution_energy_get)51741 XS(_wrap_subopt_solution_energy_get) {
51742   {
51743     subopt_solution *arg1 = (subopt_solution *) 0 ;
51744     void *argp1 = 0 ;
51745     int res1 = 0 ;
51746     int argvi = 0;
51747     float result;
51748     dXSARGS;
51749 
51750     if ((items < 1) || (items > 1)) {
51751       SWIG_croak("Usage: subopt_solution_energy_get(self);");
51752     }
51753     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_subopt_solution, 0 |  0 );
51754     if (!SWIG_IsOK(res1)) {
51755       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "subopt_solution_energy_get" "', argument " "1"" of type '" "subopt_solution *""'");
51756     }
51757     arg1 = reinterpret_cast< subopt_solution * >(argp1);
51758     result = (float) ((arg1)->energy);
51759     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
51760 
51761     XSRETURN(argvi);
51762   fail:
51763 
51764     SWIG_croak_null();
51765   }
51766 }
51767 
51768 
XS(_wrap_subopt_solution_structure_set)51769 XS(_wrap_subopt_solution_structure_set) {
51770   {
51771     subopt_solution *arg1 = (subopt_solution *) 0 ;
51772     char *arg2 = (char *) 0 ;
51773     void *argp1 = 0 ;
51774     int res1 = 0 ;
51775     int res2 ;
51776     char *buf2 = 0 ;
51777     int alloc2 = 0 ;
51778     int argvi = 0;
51779     dXSARGS;
51780 
51781     if ((items < 2) || (items > 2)) {
51782       SWIG_croak("Usage: subopt_solution_structure_set(self,structure);");
51783     }
51784     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_subopt_solution, 0 |  0 );
51785     if (!SWIG_IsOK(res1)) {
51786       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "subopt_solution_structure_set" "', argument " "1"" of type '" "subopt_solution *""'");
51787     }
51788     arg1 = reinterpret_cast< subopt_solution * >(argp1);
51789     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
51790     if (!SWIG_IsOK(res2)) {
51791       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "subopt_solution_structure_set" "', argument " "2"" of type '" "char *""'");
51792     }
51793     arg2 = reinterpret_cast< char * >(buf2);
51794     if (arg1->structure) delete[] arg1->structure;
51795     if (arg2) {
51796       size_t size = strlen(reinterpret_cast< const char * >(arg2)) + 1;
51797       arg1->structure = (char *)reinterpret_cast< char* >(memcpy(new char[size], reinterpret_cast< const char * >(arg2), sizeof(char)*(size)));
51798     } else {
51799       arg1->structure = 0;
51800     }
51801     ST(argvi) = &PL_sv_undef;
51802 
51803     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
51804     XSRETURN(argvi);
51805   fail:
51806 
51807     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
51808     SWIG_croak_null();
51809   }
51810 }
51811 
51812 
XS(_wrap_subopt_solution_structure_get)51813 XS(_wrap_subopt_solution_structure_get) {
51814   {
51815     subopt_solution *arg1 = (subopt_solution *) 0 ;
51816     void *argp1 = 0 ;
51817     int res1 = 0 ;
51818     int argvi = 0;
51819     char *result = 0 ;
51820     dXSARGS;
51821 
51822     if ((items < 1) || (items > 1)) {
51823       SWIG_croak("Usage: subopt_solution_structure_get(self);");
51824     }
51825     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_subopt_solution, 0 |  0 );
51826     if (!SWIG_IsOK(res1)) {
51827       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "subopt_solution_structure_get" "', argument " "1"" of type '" "subopt_solution *""'");
51828     }
51829     arg1 = reinterpret_cast< subopt_solution * >(argp1);
51830     result = (char *) ((arg1)->structure);
51831     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
51832 
51833     XSRETURN(argvi);
51834   fail:
51835 
51836     SWIG_croak_null();
51837   }
51838 }
51839 
51840 
XS(_wrap_delete_subopt_solution)51841 XS(_wrap_delete_subopt_solution) {
51842   {
51843     subopt_solution *arg1 = (subopt_solution *) 0 ;
51844     void *argp1 = 0 ;
51845     int res1 = 0 ;
51846     int argvi = 0;
51847     dXSARGS;
51848 
51849     if ((items < 1) || (items > 1)) {
51850       SWIG_croak("Usage: delete_subopt_solution(self);");
51851     }
51852     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_subopt_solution, SWIG_POINTER_DISOWN |  0 );
51853     if (!SWIG_IsOK(res1)) {
51854       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_subopt_solution" "', argument " "1"" of type '" "subopt_solution *""'");
51855     }
51856     arg1 = reinterpret_cast< subopt_solution * >(argp1);
51857     {
51858       try {
51859         delete_subopt_solution(arg1);
51860       } catch (const std::exception& e) {
51861         SWIG_exception(SWIG_RuntimeError, e.what());
51862       }
51863     }
51864     ST(argvi) = &PL_sv_undef;
51865 
51866     XSRETURN(argvi);
51867   fail:
51868 
51869     SWIG_croak_null();
51870   }
51871 }
51872 
51873 
XS(_wrap_new_subopt_solution)51874 XS(_wrap_new_subopt_solution) {
51875   {
51876     int argvi = 0;
51877     subopt_solution *result = 0 ;
51878     dXSARGS;
51879 
51880     if ((items < 0) || (items > 0)) {
51881       SWIG_croak("Usage: new_subopt_solution();");
51882     }
51883     {
51884       try {
51885         result = (subopt_solution *)new subopt_solution();
51886       } catch (const std::exception& e) {
51887         SWIG_exception(SWIG_RuntimeError, e.what());
51888       }
51889     }
51890     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_subopt_solution, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
51891     XSRETURN(argvi);
51892   fail:
51893     SWIG_croak_null();
51894   }
51895 }
51896 
51897 
XS(_wrap_new_SuboptVector__SWIG_0)51898 XS(_wrap_new_SuboptVector__SWIG_0) {
51899   {
51900     unsigned int arg1 ;
51901     unsigned int val1 ;
51902     int ecode1 = 0 ;
51903     int argvi = 0;
51904     std::vector< subopt_solution > *result = 0 ;
51905     dXSARGS;
51906 
51907     if ((items < 1) || (items > 1)) {
51908       SWIG_croak("Usage: new_SuboptVector(size);");
51909     }
51910     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
51911     if (!SWIG_IsOK(ecode1)) {
51912       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_SuboptVector" "', argument " "1"" of type '" "unsigned int""'");
51913     }
51914     arg1 = static_cast< unsigned int >(val1);
51915     {
51916       try {
51917         result = (std::vector< subopt_solution > *)new std::vector< subopt_solution >(arg1);
51918       } catch (const std::exception& e) {
51919         SWIG_exception(SWIG_RuntimeError, e.what());
51920       }
51921     }
51922     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_subopt_solution_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
51923 
51924     XSRETURN(argvi);
51925   fail:
51926 
51927     SWIG_croak_null();
51928   }
51929 }
51930 
51931 
XS(_wrap_new_SuboptVector__SWIG_1)51932 XS(_wrap_new_SuboptVector__SWIG_1) {
51933   {
51934     int argvi = 0;
51935     std::vector< subopt_solution > *result = 0 ;
51936     dXSARGS;
51937 
51938     if ((items < 0) || (items > 0)) {
51939       SWIG_croak("Usage: new_SuboptVector();");
51940     }
51941     {
51942       try {
51943         result = (std::vector< subopt_solution > *)new std::vector< subopt_solution >();
51944       } catch (const std::exception& e) {
51945         SWIG_exception(SWIG_RuntimeError, e.what());
51946       }
51947     }
51948     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_subopt_solution_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
51949     XSRETURN(argvi);
51950   fail:
51951     SWIG_croak_null();
51952   }
51953 }
51954 
51955 
XS(_wrap_new_SuboptVector__SWIG_2)51956 XS(_wrap_new_SuboptVector__SWIG_2) {
51957   {
51958     unsigned int arg1 ;
51959     subopt_solution *arg2 = 0 ;
51960     unsigned int val1 ;
51961     int ecode1 = 0 ;
51962     void *argp2 ;
51963     int res2 = 0 ;
51964     int argvi = 0;
51965     std::vector< subopt_solution > *result = 0 ;
51966     dXSARGS;
51967 
51968     if ((items < 2) || (items > 2)) {
51969       SWIG_croak("Usage: new_SuboptVector(size,value);");
51970     }
51971     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
51972     if (!SWIG_IsOK(ecode1)) {
51973       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_SuboptVector" "', argument " "1"" of type '" "unsigned int""'");
51974     }
51975     arg1 = static_cast< unsigned int >(val1);
51976     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_subopt_solution,  0 );
51977     if (!SWIG_IsOK(res2)) {
51978       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_SuboptVector" "', argument " "2"" of type '" "subopt_solution const &""'");
51979     }
51980     if (!argp2) {
51981       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_SuboptVector" "', argument " "2"" of type '" "subopt_solution const &""'");
51982     }
51983     arg2 = reinterpret_cast< subopt_solution * >(argp2);
51984     {
51985       try {
51986         result = (std::vector< subopt_solution > *)new std::vector< subopt_solution >(arg1,(subopt_solution const &)*arg2);
51987       } catch (const std::exception& e) {
51988         SWIG_exception(SWIG_RuntimeError, e.what());
51989       }
51990     }
51991     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_subopt_solution_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
51992 
51993 
51994     XSRETURN(argvi);
51995   fail:
51996 
51997 
51998     SWIG_croak_null();
51999   }
52000 }
52001 
52002 
XS(_wrap_new_SuboptVector__SWIG_3)52003 XS(_wrap_new_SuboptVector__SWIG_3) {
52004   {
52005     std::vector< subopt_solution > *arg1 = 0 ;
52006     std::vector< subopt_solution > temp1 ;
52007     std::vector< subopt_solution > *v1 ;
52008     int argvi = 0;
52009     std::vector< subopt_solution > *result = 0 ;
52010     dXSARGS;
52011 
52012     if ((items < 1) || (items > 1)) {
52013       SWIG_croak("Usage: new_SuboptVector(other);");
52014     }
52015     {
52016       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
52017           SWIGTYPE_p_std__vectorT_subopt_solution_t,1) != -1) {
52018         arg1 = v1;
52019       } else if (SvROK(ST(0))) {
52020         AV *av = (AV *)SvRV(ST(0));
52021         if (SvTYPE(av) != SVt_PVAV)
52022         SWIG_croak("Type error in argument 1 of new_SuboptVector. "
52023           "Expected an array of " "subopt_solution");
52024         SV **tv;
52025         I32 len = av_len(av) + 1;
52026         subopt_solution* obj;
52027         for (int i=0; i<len; i++) {
52028           tv = av_fetch(av, i, 0);
52029           if (SWIG_ConvertPtr(*tv, (void **)&obj,
52030               SWIGTYPE_p_subopt_solution,0) != -1) {
52031             temp1.push_back(*obj);
52032           } else {
52033             SWIG_croak("Type error in argument 1 of "
52034               "new_SuboptVector. "
52035               "Expected an array of " "subopt_solution");
52036           }
52037         }
52038         arg1 = &temp1;
52039       } else {
52040         SWIG_croak("Type error in argument 1 of new_SuboptVector. "
52041           "Expected an array of " "subopt_solution");
52042       }
52043     }
52044     {
52045       try {
52046         result = (std::vector< subopt_solution > *)new std::vector< subopt_solution >((std::vector< subopt_solution > const &)*arg1);
52047       } catch (const std::exception& e) {
52048         SWIG_exception(SWIG_RuntimeError, e.what());
52049       }
52050     }
52051     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_subopt_solution_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
52052 
52053     XSRETURN(argvi);
52054   fail:
52055 
52056     SWIG_croak_null();
52057   }
52058 }
52059 
52060 
XS(_wrap_new_SuboptVector)52061 XS(_wrap_new_SuboptVector) {
52062   dXSARGS;
52063 
52064   {
52065     unsigned long _index = 0;
52066     SWIG_TypeRank _rank = 0;
52067     if (items == 0) {
52068       SWIG_TypeRank _ranki = 0;
52069       SWIG_TypeRank _rankm = 0;
52070       if (!_index || (_ranki < _rank)) {
52071         _rank = _ranki; _index = 1;
52072         if (_rank == _rankm) goto dispatch;
52073       }
52074     }
52075     if (items == 1) {
52076       SWIG_TypeRank _ranki = 0;
52077       SWIG_TypeRank _rankm = 0;
52078       SWIG_TypeRank _pi = 1;
52079       int _v = 0;
52080       {
52081         {
52082           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
52083           _v = SWIG_CheckState(res);
52084         }
52085       }
52086       if (!_v) goto check_2;
52087       _ranki += _v*_pi;
52088       _rankm += _pi;
52089       _pi *= SWIG_MAXCASTRANK;
52090       if (!_index || (_ranki < _rank)) {
52091         _rank = _ranki; _index = 2;
52092         if (_rank == _rankm) goto dispatch;
52093       }
52094     }
52095   check_2:
52096 
52097     if (items == 1) {
52098       SWIG_TypeRank _ranki = 0;
52099       SWIG_TypeRank _rankm = 0;
52100       SWIG_TypeRank _pi = 1;
52101       int _v = 0;
52102       {
52103         {
52104           {
52105             /* wrapped vector? */
52106             std::vector< subopt_solution >* v;
52107             if (SWIG_ConvertPtr(ST(0),(void **) &v,
52108                 SWIGTYPE_p_std__vectorT_subopt_solution_t,0) != -1) {
52109               _v = 1;
52110             } else if (SvROK(ST(0))) {
52111               /* native sequence? */
52112               AV *av = (AV *)SvRV(ST(0));
52113               if (SvTYPE(av) == SVt_PVAV) {
52114                 I32 len = av_len(av) + 1;
52115                 if (len == 0) {
52116                   /* an empty sequence can be of any type */
52117                   _v = 1;
52118                 } else {
52119                   /* check the first element only */
52120                   subopt_solution* obj;
52121                   SV **tv = av_fetch(av, 0, 0);
52122                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
52123                       SWIGTYPE_p_subopt_solution,0) != -1)
52124                   _v = 1;
52125                   else
52126                   _v = 0;
52127                 }
52128               }
52129             } else {
52130               _v = 0;
52131             }
52132           }
52133         }
52134       }
52135       if (!_v) goto check_3;
52136       _ranki += _v*_pi;
52137       _rankm += _pi;
52138       _pi *= SWIG_MAXCASTRANK;
52139       if (!_index || (_ranki < _rank)) {
52140         _rank = _ranki; _index = 3;
52141         if (_rank == _rankm) goto dispatch;
52142       }
52143     }
52144   check_3:
52145 
52146     if (items == 2) {
52147       SWIG_TypeRank _ranki = 0;
52148       SWIG_TypeRank _rankm = 0;
52149       SWIG_TypeRank _pi = 1;
52150       int _v = 0;
52151       {
52152         {
52153           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
52154           _v = SWIG_CheckState(res);
52155         }
52156       }
52157       if (!_v) goto check_4;
52158       _ranki += _v*_pi;
52159       _rankm += _pi;
52160       _pi *= SWIG_MAXCASTRANK;
52161       {
52162         void *vptr = 0;
52163         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_subopt_solution, SWIG_POINTER_NO_NULL);
52164         _v = SWIG_CheckState(res);
52165       }
52166       if (!_v) goto check_4;
52167       _ranki += _v*_pi;
52168       _rankm += _pi;
52169       _pi *= SWIG_MAXCASTRANK;
52170       if (!_index || (_ranki < _rank)) {
52171         _rank = _ranki; _index = 4;
52172         if (_rank == _rankm) goto dispatch;
52173       }
52174     }
52175   check_4:
52176 
52177   dispatch:
52178     switch(_index) {
52179     case 1:
52180       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_SuboptVector__SWIG_1); return;
52181     case 2:
52182       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_SuboptVector__SWIG_0); return;
52183     case 3:
52184       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_SuboptVector__SWIG_3); return;
52185     case 4:
52186       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_SuboptVector__SWIG_2); return;
52187     }
52188   }
52189 
52190   croak("No matching function for overloaded 'new_SuboptVector'");
52191   XSRETURN(0);
52192 }
52193 
52194 
XS(_wrap_SuboptVector_size)52195 XS(_wrap_SuboptVector_size) {
52196   {
52197     std::vector< subopt_solution > *arg1 = (std::vector< subopt_solution > *) 0 ;
52198     std::vector< subopt_solution > temp1 ;
52199     std::vector< subopt_solution > *v1 ;
52200     int argvi = 0;
52201     unsigned int result;
52202     dXSARGS;
52203 
52204     if ((items < 1) || (items > 1)) {
52205       SWIG_croak("Usage: SuboptVector_size(self);");
52206     }
52207     {
52208       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
52209           SWIGTYPE_p_std__vectorT_subopt_solution_t,1) != -1) {
52210         arg1 = v1;
52211       } else if (SvROK(ST(0))) {
52212         AV *av = (AV *)SvRV(ST(0));
52213         if (SvTYPE(av) != SVt_PVAV)
52214         SWIG_croak("Type error in argument 1 of SuboptVector_size. "
52215           "Expected an array of " "subopt_solution");
52216         SV **tv;
52217         I32 len = av_len(av) + 1;
52218         subopt_solution* obj;
52219         for (int i=0; i<len; i++) {
52220           tv = av_fetch(av, i, 0);
52221           if (SWIG_ConvertPtr(*tv, (void **)&obj,
52222               SWIGTYPE_p_subopt_solution,0) != -1) {
52223             temp1.push_back(*obj);
52224           } else {
52225             SWIG_croak("Type error in argument 1 of "
52226               "SuboptVector_size. "
52227               "Expected an array of " "subopt_solution");
52228           }
52229         }
52230         arg1 = &temp1;
52231       } else {
52232         SWIG_croak("Type error in argument 1 of SuboptVector_size. "
52233           "Expected an array of " "subopt_solution");
52234       }
52235     }
52236     {
52237       try {
52238         result = (unsigned int)((std::vector< subopt_solution > const *)arg1)->size();
52239       } catch (const std::exception& e) {
52240         SWIG_exception(SWIG_RuntimeError, e.what());
52241       }
52242     }
52243     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
52244 
52245     XSRETURN(argvi);
52246   fail:
52247 
52248     SWIG_croak_null();
52249   }
52250 }
52251 
52252 
XS(_wrap_SuboptVector_empty)52253 XS(_wrap_SuboptVector_empty) {
52254   {
52255     std::vector< subopt_solution > *arg1 = (std::vector< subopt_solution > *) 0 ;
52256     std::vector< subopt_solution > temp1 ;
52257     std::vector< subopt_solution > *v1 ;
52258     int argvi = 0;
52259     bool result;
52260     dXSARGS;
52261 
52262     if ((items < 1) || (items > 1)) {
52263       SWIG_croak("Usage: SuboptVector_empty(self);");
52264     }
52265     {
52266       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
52267           SWIGTYPE_p_std__vectorT_subopt_solution_t,1) != -1) {
52268         arg1 = v1;
52269       } else if (SvROK(ST(0))) {
52270         AV *av = (AV *)SvRV(ST(0));
52271         if (SvTYPE(av) != SVt_PVAV)
52272         SWIG_croak("Type error in argument 1 of SuboptVector_empty. "
52273           "Expected an array of " "subopt_solution");
52274         SV **tv;
52275         I32 len = av_len(av) + 1;
52276         subopt_solution* obj;
52277         for (int i=0; i<len; i++) {
52278           tv = av_fetch(av, i, 0);
52279           if (SWIG_ConvertPtr(*tv, (void **)&obj,
52280               SWIGTYPE_p_subopt_solution,0) != -1) {
52281             temp1.push_back(*obj);
52282           } else {
52283             SWIG_croak("Type error in argument 1 of "
52284               "SuboptVector_empty. "
52285               "Expected an array of " "subopt_solution");
52286           }
52287         }
52288         arg1 = &temp1;
52289       } else {
52290         SWIG_croak("Type error in argument 1 of SuboptVector_empty. "
52291           "Expected an array of " "subopt_solution");
52292       }
52293     }
52294     {
52295       try {
52296         result = (bool)((std::vector< subopt_solution > const *)arg1)->empty();
52297       } catch (const std::exception& e) {
52298         SWIG_exception(SWIG_RuntimeError, e.what());
52299       }
52300     }
52301     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
52302 
52303     XSRETURN(argvi);
52304   fail:
52305 
52306     SWIG_croak_null();
52307   }
52308 }
52309 
52310 
XS(_wrap_SuboptVector_clear)52311 XS(_wrap_SuboptVector_clear) {
52312   {
52313     std::vector< subopt_solution > *arg1 = (std::vector< subopt_solution > *) 0 ;
52314     void *argp1 = 0 ;
52315     int res1 = 0 ;
52316     int argvi = 0;
52317     dXSARGS;
52318 
52319     if ((items < 1) || (items > 1)) {
52320       SWIG_croak("Usage: SuboptVector_clear(self);");
52321     }
52322     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_subopt_solution_t, 0 |  0 );
52323     if (!SWIG_IsOK(res1)) {
52324       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SuboptVector_clear" "', argument " "1"" of type '" "std::vector< subopt_solution > *""'");
52325     }
52326     arg1 = reinterpret_cast< std::vector< subopt_solution > * >(argp1);
52327     {
52328       try {
52329         (arg1)->clear();
52330       } catch (const std::exception& e) {
52331         SWIG_exception(SWIG_RuntimeError, e.what());
52332       }
52333     }
52334     ST(argvi) = &PL_sv_undef;
52335 
52336     XSRETURN(argvi);
52337   fail:
52338 
52339     SWIG_croak_null();
52340   }
52341 }
52342 
52343 
XS(_wrap_SuboptVector_push)52344 XS(_wrap_SuboptVector_push) {
52345   {
52346     std::vector< subopt_solution > *arg1 = (std::vector< subopt_solution > *) 0 ;
52347     subopt_solution *arg2 = 0 ;
52348     void *argp1 = 0 ;
52349     int res1 = 0 ;
52350     void *argp2 ;
52351     int res2 = 0 ;
52352     int argvi = 0;
52353     dXSARGS;
52354 
52355     if ((items < 2) || (items > 2)) {
52356       SWIG_croak("Usage: SuboptVector_push(self,x);");
52357     }
52358     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_subopt_solution_t, 0 |  0 );
52359     if (!SWIG_IsOK(res1)) {
52360       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SuboptVector_push" "', argument " "1"" of type '" "std::vector< subopt_solution > *""'");
52361     }
52362     arg1 = reinterpret_cast< std::vector< subopt_solution > * >(argp1);
52363     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_subopt_solution,  0 );
52364     if (!SWIG_IsOK(res2)) {
52365       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "SuboptVector_push" "', argument " "2"" of type '" "subopt_solution const &""'");
52366     }
52367     if (!argp2) {
52368       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "SuboptVector_push" "', argument " "2"" of type '" "subopt_solution const &""'");
52369     }
52370     arg2 = reinterpret_cast< subopt_solution * >(argp2);
52371     {
52372       try {
52373         (arg1)->push_back((subopt_solution const &)*arg2);
52374       } catch (const std::exception& e) {
52375         SWIG_exception(SWIG_RuntimeError, e.what());
52376       }
52377     }
52378     ST(argvi) = &PL_sv_undef;
52379 
52380 
52381     XSRETURN(argvi);
52382   fail:
52383 
52384 
52385     SWIG_croak_null();
52386   }
52387 }
52388 
52389 
XS(_wrap_SuboptVector_pop)52390 XS(_wrap_SuboptVector_pop) {
52391   {
52392     std::vector< subopt_solution > *arg1 = (std::vector< subopt_solution > *) 0 ;
52393     void *argp1 = 0 ;
52394     int res1 = 0 ;
52395     int argvi = 0;
52396     subopt_solution result;
52397     dXSARGS;
52398 
52399     if ((items < 1) || (items > 1)) {
52400       SWIG_croak("Usage: SuboptVector_pop(self);");
52401     }
52402     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_subopt_solution_t, 0 |  0 );
52403     if (!SWIG_IsOK(res1)) {
52404       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SuboptVector_pop" "', argument " "1"" of type '" "std::vector< subopt_solution > *""'");
52405     }
52406     arg1 = reinterpret_cast< std::vector< subopt_solution > * >(argp1);
52407     {
52408       try {
52409         try {
52410           result = std_vector_Sl_subopt_solution_Sg__pop(arg1);
52411         } catch(std::out_of_range &_e) {
52412           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
52413         }
52414       } catch (const std::exception& e) {
52415         SWIG_exception(SWIG_RuntimeError, e.what());
52416       }
52417     }
52418     ST(argvi) = SWIG_NewPointerObj((new subopt_solution(static_cast< const subopt_solution& >(result))), SWIGTYPE_p_subopt_solution, SWIG_POINTER_OWN | SWIG_SHADOW); argvi++ ;
52419 
52420     XSRETURN(argvi);
52421   fail:
52422 
52423     SWIG_croak_null();
52424   }
52425 }
52426 
52427 
XS(_wrap_SuboptVector_get)52428 XS(_wrap_SuboptVector_get) {
52429   {
52430     std::vector< subopt_solution > *arg1 = (std::vector< subopt_solution > *) 0 ;
52431     int arg2 ;
52432     void *argp1 = 0 ;
52433     int res1 = 0 ;
52434     int val2 ;
52435     int ecode2 = 0 ;
52436     int argvi = 0;
52437     subopt_solution *result = 0 ;
52438     dXSARGS;
52439 
52440     if ((items < 2) || (items > 2)) {
52441       SWIG_croak("Usage: SuboptVector_get(self,i);");
52442     }
52443     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_subopt_solution_t, 0 |  0 );
52444     if (!SWIG_IsOK(res1)) {
52445       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SuboptVector_get" "', argument " "1"" of type '" "std::vector< subopt_solution > *""'");
52446     }
52447     arg1 = reinterpret_cast< std::vector< subopt_solution > * >(argp1);
52448     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
52449     if (!SWIG_IsOK(ecode2)) {
52450       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "SuboptVector_get" "', argument " "2"" of type '" "int""'");
52451     }
52452     arg2 = static_cast< int >(val2);
52453     {
52454       try {
52455         try {
52456           result = (subopt_solution *) &std_vector_Sl_subopt_solution_Sg__get(arg1,arg2);
52457         } catch(std::out_of_range &_e) {
52458           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
52459         }
52460       } catch (const std::exception& e) {
52461         SWIG_exception(SWIG_RuntimeError, e.what());
52462       }
52463     }
52464     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_subopt_solution, 0 | SWIG_SHADOW); argvi++ ;
52465 
52466 
52467     XSRETURN(argvi);
52468   fail:
52469 
52470 
52471     SWIG_croak_null();
52472   }
52473 }
52474 
52475 
XS(_wrap_SuboptVector_set)52476 XS(_wrap_SuboptVector_set) {
52477   {
52478     std::vector< subopt_solution > *arg1 = (std::vector< subopt_solution > *) 0 ;
52479     int arg2 ;
52480     subopt_solution *arg3 = 0 ;
52481     void *argp1 = 0 ;
52482     int res1 = 0 ;
52483     int val2 ;
52484     int ecode2 = 0 ;
52485     void *argp3 ;
52486     int res3 = 0 ;
52487     int argvi = 0;
52488     dXSARGS;
52489 
52490     if ((items < 3) || (items > 3)) {
52491       SWIG_croak("Usage: SuboptVector_set(self,i,x);");
52492     }
52493     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_subopt_solution_t, 0 |  0 );
52494     if (!SWIG_IsOK(res1)) {
52495       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "SuboptVector_set" "', argument " "1"" of type '" "std::vector< subopt_solution > *""'");
52496     }
52497     arg1 = reinterpret_cast< std::vector< subopt_solution > * >(argp1);
52498     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
52499     if (!SWIG_IsOK(ecode2)) {
52500       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "SuboptVector_set" "', argument " "2"" of type '" "int""'");
52501     }
52502     arg2 = static_cast< int >(val2);
52503     res3 = SWIG_ConvertPtr(ST(2), &argp3, SWIGTYPE_p_subopt_solution,  0 );
52504     if (!SWIG_IsOK(res3)) {
52505       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "SuboptVector_set" "', argument " "3"" of type '" "subopt_solution const &""'");
52506     }
52507     if (!argp3) {
52508       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "SuboptVector_set" "', argument " "3"" of type '" "subopt_solution const &""'");
52509     }
52510     arg3 = reinterpret_cast< subopt_solution * >(argp3);
52511     {
52512       try {
52513         try {
52514           std_vector_Sl_subopt_solution_Sg__set(arg1,arg2,(subopt_solution const &)*arg3);
52515         } catch(std::out_of_range &_e) {
52516           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
52517         }
52518       } catch (const std::exception& e) {
52519         SWIG_exception(SWIG_RuntimeError, e.what());
52520       }
52521     }
52522     ST(argvi) = &PL_sv_undef;
52523 
52524 
52525 
52526     XSRETURN(argvi);
52527   fail:
52528 
52529 
52530 
52531     SWIG_croak_null();
52532   }
52533 }
52534 
52535 
XS(_wrap_delete_SuboptVector)52536 XS(_wrap_delete_SuboptVector) {
52537   {
52538     std::vector< subopt_solution > *arg1 = (std::vector< subopt_solution > *) 0 ;
52539     void *argp1 = 0 ;
52540     int res1 = 0 ;
52541     int argvi = 0;
52542     dXSARGS;
52543 
52544     if ((items < 1) || (items > 1)) {
52545       SWIG_croak("Usage: delete_SuboptVector(self);");
52546     }
52547     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_subopt_solution_t, SWIG_POINTER_DISOWN |  0 );
52548     if (!SWIG_IsOK(res1)) {
52549       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_SuboptVector" "', argument " "1"" of type '" "std::vector< subopt_solution > *""'");
52550     }
52551     arg1 = reinterpret_cast< std::vector< subopt_solution > * >(argp1);
52552     {
52553       try {
52554         delete arg1;
52555       } catch (const std::exception& e) {
52556         SWIG_exception(SWIG_RuntimeError, e.what());
52557       }
52558     }
52559     ST(argvi) = &PL_sv_undef;
52560 
52561     XSRETURN(argvi);
52562   fail:
52563 
52564     SWIG_croak_null();
52565   }
52566 }
52567 
52568 
XS(_wrap_subopt__SWIG_0)52569 XS(_wrap_subopt__SWIG_0) {
52570   {
52571     char *arg1 = (char *) 0 ;
52572     char *arg2 = (char *) 0 ;
52573     int arg3 ;
52574     FILE *arg4 = (FILE *) 0 ;
52575     int res1 ;
52576     char *buf1 = 0 ;
52577     int alloc1 = 0 ;
52578     int res2 ;
52579     char *buf2 = 0 ;
52580     int alloc2 = 0 ;
52581     int val3 ;
52582     int ecode3 = 0 ;
52583     int argvi = 0;
52584     SOLUTION *result = 0 ;
52585     dXSARGS;
52586 
52587     if ((items < 4) || (items > 4)) {
52588       SWIG_croak("Usage: subopt(seq,constraint,delta,nullfile);");
52589     }
52590     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
52591     if (!SWIG_IsOK(res1)) {
52592       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "subopt" "', argument " "1"" of type '" "char *""'");
52593     }
52594     arg1 = reinterpret_cast< char * >(buf1);
52595     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
52596     if (!SWIG_IsOK(res2)) {
52597       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "subopt" "', argument " "2"" of type '" "char *""'");
52598     }
52599     arg2 = reinterpret_cast< char * >(buf2);
52600     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
52601     if (!SWIG_IsOK(ecode3)) {
52602       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "subopt" "', argument " "3"" of type '" "int""'");
52603     }
52604     arg3 = static_cast< int >(val3);
52605     {
52606       if (SvOK(ST(3))) /* check for undef */
52607       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(3))));
52608       else  arg4 = NULL;
52609     }
52610     {
52611       try {
52612         result = (SOLUTION *)my_subopt(arg1,arg2,arg3,arg4);
52613       } catch (const std::exception& e) {
52614         SWIG_exception(SWIG_RuntimeError, e.what());
52615       }
52616     }
52617     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_SOLUTION, 0 | SWIG_SHADOW); argvi++ ;
52618     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
52619     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
52620 
52621 
52622     XSRETURN(argvi);
52623   fail:
52624     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
52625     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
52626 
52627 
52628     SWIG_croak_null();
52629   }
52630 }
52631 
52632 
XS(_wrap_subopt__SWIG_1)52633 XS(_wrap_subopt__SWIG_1) {
52634   {
52635     char *arg1 = (char *) 0 ;
52636     char *arg2 = (char *) 0 ;
52637     int arg3 ;
52638     int res1 ;
52639     char *buf1 = 0 ;
52640     int alloc1 = 0 ;
52641     int res2 ;
52642     char *buf2 = 0 ;
52643     int alloc2 = 0 ;
52644     int val3 ;
52645     int ecode3 = 0 ;
52646     int argvi = 0;
52647     SOLUTION *result = 0 ;
52648     dXSARGS;
52649 
52650     if ((items < 3) || (items > 3)) {
52651       SWIG_croak("Usage: subopt(seq,constraint,delta);");
52652     }
52653     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
52654     if (!SWIG_IsOK(res1)) {
52655       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "subopt" "', argument " "1"" of type '" "char *""'");
52656     }
52657     arg1 = reinterpret_cast< char * >(buf1);
52658     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
52659     if (!SWIG_IsOK(res2)) {
52660       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "subopt" "', argument " "2"" of type '" "char *""'");
52661     }
52662     arg2 = reinterpret_cast< char * >(buf2);
52663     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
52664     if (!SWIG_IsOK(ecode3)) {
52665       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "subopt" "', argument " "3"" of type '" "int""'");
52666     }
52667     arg3 = static_cast< int >(val3);
52668     {
52669       try {
52670         result = (SOLUTION *)my_subopt(arg1,arg2,arg3);
52671       } catch (const std::exception& e) {
52672         SWIG_exception(SWIG_RuntimeError, e.what());
52673       }
52674     }
52675     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_SOLUTION, 0 | SWIG_SHADOW); argvi++ ;
52676     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
52677     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
52678 
52679     XSRETURN(argvi);
52680   fail:
52681     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
52682     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
52683 
52684     SWIG_croak_null();
52685   }
52686 }
52687 
52688 
XS(_wrap_subopt__SWIG_2)52689 XS(_wrap_subopt__SWIG_2) {
52690   {
52691     char *arg1 = (char *) 0 ;
52692     int arg2 ;
52693     FILE *arg3 = (FILE *) 0 ;
52694     int res1 ;
52695     char *buf1 = 0 ;
52696     int alloc1 = 0 ;
52697     int val2 ;
52698     int ecode2 = 0 ;
52699     int argvi = 0;
52700     std::vector< subopt_solution > result;
52701     dXSARGS;
52702 
52703     if ((items < 3) || (items > 3)) {
52704       SWIG_croak("Usage: subopt(seq,delta,nullfile);");
52705     }
52706     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
52707     if (!SWIG_IsOK(res1)) {
52708       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "subopt" "', argument " "1"" of type '" "char *""'");
52709     }
52710     arg1 = reinterpret_cast< char * >(buf1);
52711     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
52712     if (!SWIG_IsOK(ecode2)) {
52713       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "subopt" "', argument " "2"" of type '" "int""'");
52714     }
52715     arg2 = static_cast< int >(val2);
52716     {
52717       if (SvOK(ST(2))) /* check for undef */
52718       arg3 = PerlIO_findFILE(IoIFP(sv_2io(ST(2))));
52719       else  arg3 = NULL;
52720     }
52721     {
52722       try {
52723         result = my_subopt(arg1,arg2,arg3);
52724       } catch (const std::exception& e) {
52725         SWIG_exception(SWIG_RuntimeError, e.what());
52726       }
52727     }
52728     {
52729       size_t len = (&result)->size();
52730       SV **svs = new SV*[len];
52731       for (size_t i=0; i<len; i++) {
52732         subopt_solution* ptr = new subopt_solution(result[i]);
52733         svs[i] = sv_newmortal();
52734         SWIG_MakePtr(svs[i], (void*) ptr,
52735           SWIGTYPE_p_subopt_solution, SWIG_SHADOW|0);
52736       }
52737       AV *myav = av_make(len, svs);
52738       delete[] svs;
52739       ST(argvi) = newRV_noinc((SV*) myav);
52740       sv_2mortal(ST(argvi));
52741       argvi++;
52742     }
52743     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
52744 
52745 
52746     XSRETURN(argvi);
52747   fail:
52748     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
52749 
52750 
52751     SWIG_croak_null();
52752   }
52753 }
52754 
52755 
XS(_wrap_subopt__SWIG_3)52756 XS(_wrap_subopt__SWIG_3) {
52757   {
52758     char *arg1 = (char *) 0 ;
52759     int arg2 ;
52760     int res1 ;
52761     char *buf1 = 0 ;
52762     int alloc1 = 0 ;
52763     int val2 ;
52764     int ecode2 = 0 ;
52765     int argvi = 0;
52766     std::vector< subopt_solution > result;
52767     dXSARGS;
52768 
52769     if ((items < 2) || (items > 2)) {
52770       SWIG_croak("Usage: subopt(seq,delta);");
52771     }
52772     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
52773     if (!SWIG_IsOK(res1)) {
52774       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "subopt" "', argument " "1"" of type '" "char *""'");
52775     }
52776     arg1 = reinterpret_cast< char * >(buf1);
52777     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
52778     if (!SWIG_IsOK(ecode2)) {
52779       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "subopt" "', argument " "2"" of type '" "int""'");
52780     }
52781     arg2 = static_cast< int >(val2);
52782     {
52783       try {
52784         result = my_subopt(arg1,arg2);
52785       } catch (const std::exception& e) {
52786         SWIG_exception(SWIG_RuntimeError, e.what());
52787       }
52788     }
52789     {
52790       size_t len = (&result)->size();
52791       SV **svs = new SV*[len];
52792       for (size_t i=0; i<len; i++) {
52793         subopt_solution* ptr = new subopt_solution(result[i]);
52794         svs[i] = sv_newmortal();
52795         SWIG_MakePtr(svs[i], (void*) ptr,
52796           SWIGTYPE_p_subopt_solution, SWIG_SHADOW|0);
52797       }
52798       AV *myav = av_make(len, svs);
52799       delete[] svs;
52800       ST(argvi) = newRV_noinc((SV*) myav);
52801       sv_2mortal(ST(argvi));
52802       argvi++;
52803     }
52804     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
52805 
52806     XSRETURN(argvi);
52807   fail:
52808     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
52809 
52810     SWIG_croak_null();
52811   }
52812 }
52813 
52814 
XS(_wrap_subopt)52815 XS(_wrap_subopt) {
52816   dXSARGS;
52817 
52818   {
52819     unsigned long _index = 0;
52820     SWIG_TypeRank _rank = 0;
52821     if (items == 2) {
52822       SWIG_TypeRank _ranki = 0;
52823       SWIG_TypeRank _rankm = 0;
52824       SWIG_TypeRank _pi = 1;
52825       int _v = 0;
52826       {
52827         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
52828         _v = SWIG_CheckState(res);
52829       }
52830       if (!_v) goto check_1;
52831       _ranki += _v*_pi;
52832       _rankm += _pi;
52833       _pi *= SWIG_MAXCASTRANK;
52834       {
52835         {
52836           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
52837           _v = SWIG_CheckState(res);
52838         }
52839       }
52840       if (!_v) goto check_1;
52841       _ranki += _v*_pi;
52842       _rankm += _pi;
52843       _pi *= SWIG_MAXCASTRANK;
52844       if (!_index || (_ranki < _rank)) {
52845         _rank = _ranki; _index = 1;
52846         if (_rank == _rankm) goto dispatch;
52847       }
52848     }
52849   check_1:
52850 
52851     if (items == 3) {
52852       SWIG_TypeRank _ranki = 0;
52853       SWIG_TypeRank _rankm = 0;
52854       SWIG_TypeRank _pi = 1;
52855       int _v = 0;
52856       {
52857         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
52858         _v = SWIG_CheckState(res);
52859       }
52860       if (!_v) goto check_2;
52861       _ranki += _v*_pi;
52862       _rankm += _pi;
52863       _pi *= SWIG_MAXCASTRANK;
52864       {
52865         {
52866           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
52867           _v = SWIG_CheckState(res);
52868         }
52869       }
52870       if (!_v) goto check_2;
52871       _ranki += _v*_pi;
52872       _rankm += _pi;
52873       _pi *= SWIG_MAXCASTRANK;
52874       {
52875         {
52876           if (SvOK(ST(2)))
52877           _v = (sv_2io(ST(2))) ? 1 : 0;
52878         }
52879       }
52880       if (!_v) goto check_2;
52881       _ranki += _v*_pi;
52882       _rankm += _pi;
52883       _pi *= SWIG_MAXCASTRANK;
52884       if (!_index || (_ranki < _rank)) {
52885         _rank = _ranki; _index = 2;
52886         if (_rank == _rankm) goto dispatch;
52887       }
52888     }
52889   check_2:
52890 
52891     if (items == 3) {
52892       SWIG_TypeRank _ranki = 0;
52893       SWIG_TypeRank _rankm = 0;
52894       SWIG_TypeRank _pi = 1;
52895       int _v = 0;
52896       {
52897         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
52898         _v = SWIG_CheckState(res);
52899       }
52900       if (!_v) goto check_3;
52901       _ranki += _v*_pi;
52902       _rankm += _pi;
52903       _pi *= SWIG_MAXCASTRANK;
52904       {
52905         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
52906         _v = SWIG_CheckState(res);
52907       }
52908       if (!_v) goto check_3;
52909       _ranki += _v*_pi;
52910       _rankm += _pi;
52911       _pi *= SWIG_MAXCASTRANK;
52912       {
52913         {
52914           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
52915           _v = SWIG_CheckState(res);
52916         }
52917       }
52918       if (!_v) goto check_3;
52919       _ranki += _v*_pi;
52920       _rankm += _pi;
52921       _pi *= SWIG_MAXCASTRANK;
52922       if (!_index || (_ranki < _rank)) {
52923         _rank = _ranki; _index = 3;
52924         if (_rank == _rankm) goto dispatch;
52925       }
52926     }
52927   check_3:
52928 
52929     if (items == 4) {
52930       SWIG_TypeRank _ranki = 0;
52931       SWIG_TypeRank _rankm = 0;
52932       SWIG_TypeRank _pi = 1;
52933       int _v = 0;
52934       {
52935         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
52936         _v = SWIG_CheckState(res);
52937       }
52938       if (!_v) goto check_4;
52939       _ranki += _v*_pi;
52940       _rankm += _pi;
52941       _pi *= SWIG_MAXCASTRANK;
52942       {
52943         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
52944         _v = SWIG_CheckState(res);
52945       }
52946       if (!_v) goto check_4;
52947       _ranki += _v*_pi;
52948       _rankm += _pi;
52949       _pi *= SWIG_MAXCASTRANK;
52950       {
52951         {
52952           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
52953           _v = SWIG_CheckState(res);
52954         }
52955       }
52956       if (!_v) goto check_4;
52957       _ranki += _v*_pi;
52958       _rankm += _pi;
52959       _pi *= SWIG_MAXCASTRANK;
52960       {
52961         {
52962           if (SvOK(ST(3)))
52963           _v = (sv_2io(ST(3))) ? 1 : 0;
52964         }
52965       }
52966       if (!_v) goto check_4;
52967       _ranki += _v*_pi;
52968       _rankm += _pi;
52969       _pi *= SWIG_MAXCASTRANK;
52970       if (!_index || (_ranki < _rank)) {
52971         _rank = _ranki; _index = 4;
52972         if (_rank == _rankm) goto dispatch;
52973       }
52974     }
52975   check_4:
52976 
52977   dispatch:
52978     switch(_index) {
52979     case 1:
52980       PUSHMARK(MARK); SWIG_CALLXS(_wrap_subopt__SWIG_3); return;
52981     case 2:
52982       PUSHMARK(MARK); SWIG_CALLXS(_wrap_subopt__SWIG_2); return;
52983     case 3:
52984       PUSHMARK(MARK); SWIG_CALLXS(_wrap_subopt__SWIG_1); return;
52985     case 4:
52986       PUSHMARK(MARK); SWIG_CALLXS(_wrap_subopt__SWIG_0); return;
52987     }
52988   }
52989 
52990   croak("No matching function for overloaded 'subopt'");
52991   XSRETURN(0);
52992 }
52993 
52994 
XS(_wrap_zukersubopt)52995 XS(_wrap_zukersubopt) {
52996   {
52997     char *arg1 = (char *) 0 ;
52998     int res1 ;
52999     char *buf1 = 0 ;
53000     int alloc1 = 0 ;
53001     int argvi = 0;
53002     SOLUTION *result = 0 ;
53003     dXSARGS;
53004 
53005     if ((items < 1) || (items > 1)) {
53006       SWIG_croak("Usage: zukersubopt(string);");
53007     }
53008     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
53009     if (!SWIG_IsOK(res1)) {
53010       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "zukersubopt" "', argument " "1"" of type '" "char const *""'");
53011     }
53012     arg1 = reinterpret_cast< char * >(buf1);
53013     {
53014       try {
53015         result = (SOLUTION *)zukersubopt((char const *)arg1);
53016       } catch (const std::exception& e) {
53017         SWIG_exception(SWIG_RuntimeError, e.what());
53018       }
53019     }
53020     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_SOLUTION, 0 | SWIG_SHADOW); argvi++ ;
53021     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53022     XSRETURN(argvi);
53023   fail:
53024     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53025     SWIG_croak_null();
53026   }
53027 }
53028 
53029 
XS(_wrap_inverse_fold)53030 XS(_wrap_inverse_fold) {
53031   {
53032     char *arg1 = (char *) 0 ;
53033     char *arg2 = (char *) 0 ;
53034     float *arg3 = (float *) 0 ;
53035     int res1 ;
53036     char *buf1 = 0 ;
53037     int alloc1 = 0 ;
53038     int res2 ;
53039     char *buf2 = 0 ;
53040     int alloc2 = 0 ;
53041     float temp3 ;
53042     int res3 = SWIG_TMPOBJ ;
53043     int argvi = 0;
53044     char *result = 0 ;
53045     dXSARGS;
53046 
53047     arg3 = &temp3;
53048     if ((items < 2) || (items > 2)) {
53049       SWIG_croak("Usage: inverse_fold(start,target);");
53050     }
53051     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
53052     if (!SWIG_IsOK(res1)) {
53053       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "inverse_fold" "', argument " "1"" of type '" "char *""'");
53054     }
53055     arg1 = reinterpret_cast< char * >(buf1);
53056     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
53057     if (!SWIG_IsOK(res2)) {
53058       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "inverse_fold" "', argument " "2"" of type '" "char const *""'");
53059     }
53060     arg2 = reinterpret_cast< char * >(buf2);
53061     {
53062       try {
53063         result = (char *)my_inverse_fold(arg1,(char const *)arg2,arg3);
53064       } catch (const std::exception& e) {
53065         SWIG_exception(SWIG_RuntimeError, e.what());
53066       }
53067     }
53068     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
53069     if (SWIG_IsTmpObj(res3)) {
53070       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
53071     } else {
53072       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
53073       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
53074     }
53075     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53076     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
53077 
53078     delete[] result;
53079     XSRETURN(argvi);
53080   fail:
53081     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53082     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
53083 
53084     SWIG_croak_null();
53085   }
53086 }
53087 
53088 
XS(_wrap_inverse_pf_fold)53089 XS(_wrap_inverse_pf_fold) {
53090   {
53091     char *arg1 = (char *) 0 ;
53092     char *arg2 = (char *) 0 ;
53093     float *arg3 = (float *) 0 ;
53094     int res1 ;
53095     char *buf1 = 0 ;
53096     int alloc1 = 0 ;
53097     int res2 ;
53098     char *buf2 = 0 ;
53099     int alloc2 = 0 ;
53100     float temp3 ;
53101     int res3 = SWIG_TMPOBJ ;
53102     int argvi = 0;
53103     char *result = 0 ;
53104     dXSARGS;
53105 
53106     arg3 = &temp3;
53107     if ((items < 2) || (items > 2)) {
53108       SWIG_croak("Usage: inverse_pf_fold(start,target);");
53109     }
53110     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
53111     if (!SWIG_IsOK(res1)) {
53112       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "inverse_pf_fold" "', argument " "1"" of type '" "char *""'");
53113     }
53114     arg1 = reinterpret_cast< char * >(buf1);
53115     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
53116     if (!SWIG_IsOK(res2)) {
53117       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "inverse_pf_fold" "', argument " "2"" of type '" "char const *""'");
53118     }
53119     arg2 = reinterpret_cast< char * >(buf2);
53120     {
53121       try {
53122         result = (char *)my_inverse_pf_fold(arg1,(char const *)arg2,arg3);
53123       } catch (const std::exception& e) {
53124         SWIG_exception(SWIG_RuntimeError, e.what());
53125       }
53126     }
53127     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
53128     if (SWIG_IsTmpObj(res3)) {
53129       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
53130     } else {
53131       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
53132       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
53133     }
53134     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53135     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
53136 
53137     delete[] result;
53138     XSRETURN(argvi);
53139   fail:
53140     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53141     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
53142 
53143     SWIG_croak_null();
53144   }
53145 }
53146 
53147 
XS(_wrap_b2HIT)53148 XS(_wrap_b2HIT) {
53149   {
53150     char *arg1 = (char *) 0 ;
53151     int res1 ;
53152     char *buf1 = 0 ;
53153     int alloc1 = 0 ;
53154     int argvi = 0;
53155     char *result = 0 ;
53156     dXSARGS;
53157 
53158     if ((items < 1) || (items > 1)) {
53159       SWIG_croak("Usage: b2HIT(structure);");
53160     }
53161     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
53162     if (!SWIG_IsOK(res1)) {
53163       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "b2HIT" "', argument " "1"" of type '" "char *""'");
53164     }
53165     arg1 = reinterpret_cast< char * >(buf1);
53166     {
53167       try {
53168         result = (char *)b2HIT(arg1);
53169       } catch (const std::exception& e) {
53170         SWIG_exception(SWIG_RuntimeError, e.what());
53171       }
53172     }
53173     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
53174     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53175     delete[] result;
53176     XSRETURN(argvi);
53177   fail:
53178     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53179     SWIG_croak_null();
53180   }
53181 }
53182 
53183 
XS(_wrap_b2C)53184 XS(_wrap_b2C) {
53185   {
53186     char *arg1 = (char *) 0 ;
53187     int res1 ;
53188     char *buf1 = 0 ;
53189     int alloc1 = 0 ;
53190     int argvi = 0;
53191     char *result = 0 ;
53192     dXSARGS;
53193 
53194     if ((items < 1) || (items > 1)) {
53195       SWIG_croak("Usage: b2C(structure);");
53196     }
53197     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
53198     if (!SWIG_IsOK(res1)) {
53199       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "b2C" "', argument " "1"" of type '" "char *""'");
53200     }
53201     arg1 = reinterpret_cast< char * >(buf1);
53202     {
53203       try {
53204         result = (char *)b2C(arg1);
53205       } catch (const std::exception& e) {
53206         SWIG_exception(SWIG_RuntimeError, e.what());
53207       }
53208     }
53209     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
53210     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53211     delete[] result;
53212     XSRETURN(argvi);
53213   fail:
53214     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53215     SWIG_croak_null();
53216   }
53217 }
53218 
53219 
XS(_wrap_b2Shapiro)53220 XS(_wrap_b2Shapiro) {
53221   {
53222     char *arg1 = (char *) 0 ;
53223     int res1 ;
53224     char *buf1 = 0 ;
53225     int alloc1 = 0 ;
53226     int argvi = 0;
53227     char *result = 0 ;
53228     dXSARGS;
53229 
53230     if ((items < 1) || (items > 1)) {
53231       SWIG_croak("Usage: b2Shapiro(structure);");
53232     }
53233     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
53234     if (!SWIG_IsOK(res1)) {
53235       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "b2Shapiro" "', argument " "1"" of type '" "char *""'");
53236     }
53237     arg1 = reinterpret_cast< char * >(buf1);
53238     {
53239       try {
53240         result = (char *)b2Shapiro(arg1);
53241       } catch (const std::exception& e) {
53242         SWIG_exception(SWIG_RuntimeError, e.what());
53243       }
53244     }
53245     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
53246     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53247     delete[] result;
53248     XSRETURN(argvi);
53249   fail:
53250     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53251     SWIG_croak_null();
53252   }
53253 }
53254 
53255 
XS(_wrap_add_root)53256 XS(_wrap_add_root) {
53257   {
53258     char *arg1 = (char *) 0 ;
53259     int res1 ;
53260     char *buf1 = 0 ;
53261     int alloc1 = 0 ;
53262     int argvi = 0;
53263     char *result = 0 ;
53264     dXSARGS;
53265 
53266     if ((items < 1) || (items > 1)) {
53267       SWIG_croak("Usage: add_root(char *);");
53268     }
53269     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
53270     if (!SWIG_IsOK(res1)) {
53271       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "add_root" "', argument " "1"" of type '" "char *""'");
53272     }
53273     arg1 = reinterpret_cast< char * >(buf1);
53274     {
53275       try {
53276         result = (char *)add_root(arg1);
53277       } catch (const std::exception& e) {
53278         SWIG_exception(SWIG_RuntimeError, e.what());
53279       }
53280     }
53281     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
53282     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53283     delete[] result;
53284     XSRETURN(argvi);
53285   fail:
53286     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53287     SWIG_croak_null();
53288   }
53289 }
53290 
53291 
XS(_wrap_expand_Shapiro)53292 XS(_wrap_expand_Shapiro) {
53293   {
53294     char *arg1 = (char *) 0 ;
53295     int res1 ;
53296     char *buf1 = 0 ;
53297     int alloc1 = 0 ;
53298     int argvi = 0;
53299     char *result = 0 ;
53300     dXSARGS;
53301 
53302     if ((items < 1) || (items > 1)) {
53303       SWIG_croak("Usage: expand_Shapiro(coarse);");
53304     }
53305     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
53306     if (!SWIG_IsOK(res1)) {
53307       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "expand_Shapiro" "', argument " "1"" of type '" "char *""'");
53308     }
53309     arg1 = reinterpret_cast< char * >(buf1);
53310     {
53311       try {
53312         result = (char *)expand_Shapiro(arg1);
53313       } catch (const std::exception& e) {
53314         SWIG_exception(SWIG_RuntimeError, e.what());
53315       }
53316     }
53317     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
53318     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53319     delete[] result;
53320     XSRETURN(argvi);
53321   fail:
53322     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53323     SWIG_croak_null();
53324   }
53325 }
53326 
53327 
XS(_wrap_expand_Full)53328 XS(_wrap_expand_Full) {
53329   {
53330     char *arg1 = (char *) 0 ;
53331     int res1 ;
53332     char *buf1 = 0 ;
53333     int alloc1 = 0 ;
53334     int argvi = 0;
53335     char *result = 0 ;
53336     dXSARGS;
53337 
53338     if ((items < 1) || (items > 1)) {
53339       SWIG_croak("Usage: expand_Full(structure);");
53340     }
53341     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
53342     if (!SWIG_IsOK(res1)) {
53343       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "expand_Full" "', argument " "1"" of type '" "char *""'");
53344     }
53345     arg1 = reinterpret_cast< char * >(buf1);
53346     {
53347       try {
53348         result = (char *)expand_Full(arg1);
53349       } catch (const std::exception& e) {
53350         SWIG_exception(SWIG_RuntimeError, e.what());
53351       }
53352     }
53353     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
53354     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53355     delete[] result;
53356     XSRETURN(argvi);
53357   fail:
53358     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53359     SWIG_croak_null();
53360   }
53361 }
53362 
53363 
XS(_wrap_unexpand_Full)53364 XS(_wrap_unexpand_Full) {
53365   {
53366     char *arg1 = (char *) 0 ;
53367     int res1 ;
53368     char *buf1 = 0 ;
53369     int alloc1 = 0 ;
53370     int argvi = 0;
53371     char *result = 0 ;
53372     dXSARGS;
53373 
53374     if ((items < 1) || (items > 1)) {
53375       SWIG_croak("Usage: unexpand_Full(ffull);");
53376     }
53377     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
53378     if (!SWIG_IsOK(res1)) {
53379       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "unexpand_Full" "', argument " "1"" of type '" "char *""'");
53380     }
53381     arg1 = reinterpret_cast< char * >(buf1);
53382     {
53383       try {
53384         result = (char *)unexpand_Full(arg1);
53385       } catch (const std::exception& e) {
53386         SWIG_exception(SWIG_RuntimeError, e.what());
53387       }
53388     }
53389     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
53390     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53391     delete[] result;
53392     XSRETURN(argvi);
53393   fail:
53394     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53395     SWIG_croak_null();
53396   }
53397 }
53398 
53399 
XS(_wrap_unweight)53400 XS(_wrap_unweight) {
53401   {
53402     char *arg1 = (char *) 0 ;
53403     int res1 ;
53404     char *buf1 = 0 ;
53405     int alloc1 = 0 ;
53406     int argvi = 0;
53407     char *result = 0 ;
53408     dXSARGS;
53409 
53410     if ((items < 1) || (items > 1)) {
53411       SWIG_croak("Usage: unweight(wcoarse);");
53412     }
53413     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
53414     if (!SWIG_IsOK(res1)) {
53415       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "unweight" "', argument " "1"" of type '" "char *""'");
53416     }
53417     arg1 = reinterpret_cast< char * >(buf1);
53418     {
53419       try {
53420         result = (char *)unweight(arg1);
53421       } catch (const std::exception& e) {
53422         SWIG_exception(SWIG_RuntimeError, e.what());
53423       }
53424     }
53425     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
53426     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53427     delete[] result;
53428     XSRETURN(argvi);
53429   fail:
53430     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53431     SWIG_croak_null();
53432   }
53433 }
53434 
53435 
XS(_wrap_unexpand_aligned_F)53436 XS(_wrap_unexpand_aligned_F) {
53437   {
53438     char **arg1 ;
53439     void *argp1 = 0 ;
53440     int res1 = 0 ;
53441     int argvi = 0;
53442     dXSARGS;
53443 
53444     if ((items < 1) || (items > 1)) {
53445       SWIG_croak("Usage: unexpand_aligned_F(align);");
53446     }
53447     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_p_char, 0 |  0 );
53448     if (!SWIG_IsOK(res1)) {
53449       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "unexpand_aligned_F" "', argument " "1"" of type '" "char *[2]""'");
53450     }
53451     arg1 = reinterpret_cast< char ** >(argp1);
53452     {
53453       try {
53454         unexpand_aligned_F(arg1);
53455       } catch (const std::exception& e) {
53456         SWIG_exception(SWIG_RuntimeError, e.what());
53457       }
53458     }
53459     ST(argvi) = &PL_sv_undef;
53460 
53461     XSRETURN(argvi);
53462   fail:
53463 
53464     SWIG_croak_null();
53465   }
53466 }
53467 
53468 
XS(_wrap_parse_structure)53469 XS(_wrap_parse_structure) {
53470   {
53471     char *arg1 = (char *) 0 ;
53472     int res1 ;
53473     char *buf1 = 0 ;
53474     int alloc1 = 0 ;
53475     int argvi = 0;
53476     dXSARGS;
53477 
53478     if ((items < 1) || (items > 1)) {
53479       SWIG_croak("Usage: parse_structure(structure);");
53480     }
53481     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
53482     if (!SWIG_IsOK(res1)) {
53483       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "parse_structure" "', argument " "1"" of type '" "char *""'");
53484     }
53485     arg1 = reinterpret_cast< char * >(buf1);
53486     {
53487       try {
53488         parse_structure(arg1);
53489       } catch (const std::exception& e) {
53490         SWIG_exception(SWIG_RuntimeError, e.what());
53491       }
53492     }
53493     ST(argvi) = &PL_sv_undef;
53494     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53495     XSRETURN(argvi);
53496   fail:
53497     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53498     SWIG_croak_null();
53499   }
53500 }
53501 
53502 
XS(_wrap_make_tree)53503 XS(_wrap_make_tree) {
53504   {
53505     char *arg1 = (char *) 0 ;
53506     int res1 ;
53507     char *buf1 = 0 ;
53508     int alloc1 = 0 ;
53509     int argvi = 0;
53510     Tree *result = 0 ;
53511     dXSARGS;
53512 
53513     if ((items < 1) || (items > 1)) {
53514       SWIG_croak("Usage: make_tree(struc);");
53515     }
53516     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
53517     if (!SWIG_IsOK(res1)) {
53518       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "make_tree" "', argument " "1"" of type '" "char *""'");
53519     }
53520     arg1 = reinterpret_cast< char * >(buf1);
53521     {
53522       try {
53523         result = (Tree *)make_tree(arg1);
53524       } catch (const std::exception& e) {
53525         SWIG_exception(SWIG_RuntimeError, e.what());
53526       }
53527     }
53528     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_Tree, 0 | 0); argvi++ ;
53529     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53530     XSRETURN(argvi);
53531   fail:
53532     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53533     SWIG_croak_null();
53534   }
53535 }
53536 
53537 
XS(_wrap_tree_edit_distance)53538 XS(_wrap_tree_edit_distance) {
53539   {
53540     Tree *arg1 = (Tree *) 0 ;
53541     Tree *arg2 = (Tree *) 0 ;
53542     void *argp1 = 0 ;
53543     int res1 = 0 ;
53544     void *argp2 = 0 ;
53545     int res2 = 0 ;
53546     int argvi = 0;
53547     float result;
53548     dXSARGS;
53549 
53550     if ((items < 2) || (items > 2)) {
53551       SWIG_croak("Usage: tree_edit_distance(T1,T2);");
53552     }
53553     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_Tree, 0 |  0 );
53554     if (!SWIG_IsOK(res1)) {
53555       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "tree_edit_distance" "', argument " "1"" of type '" "Tree *""'");
53556     }
53557     arg1 = reinterpret_cast< Tree * >(argp1);
53558     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_Tree, 0 |  0 );
53559     if (!SWIG_IsOK(res2)) {
53560       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "tree_edit_distance" "', argument " "2"" of type '" "Tree *""'");
53561     }
53562     arg2 = reinterpret_cast< Tree * >(argp2);
53563     {
53564       try {
53565         result = (float)tree_edit_distance(arg1,arg2);
53566       } catch (const std::exception& e) {
53567         SWIG_exception(SWIG_RuntimeError, e.what());
53568       }
53569     }
53570     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
53571 
53572 
53573     XSRETURN(argvi);
53574   fail:
53575 
53576 
53577     SWIG_croak_null();
53578   }
53579 }
53580 
53581 
XS(_wrap_print_tree)53582 XS(_wrap_print_tree) {
53583   {
53584     Tree *arg1 = (Tree *) 0 ;
53585     void *argp1 = 0 ;
53586     int res1 = 0 ;
53587     int argvi = 0;
53588     dXSARGS;
53589 
53590     if ((items < 1) || (items > 1)) {
53591       SWIG_croak("Usage: print_tree(t);");
53592     }
53593     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_Tree, 0 |  0 );
53594     if (!SWIG_IsOK(res1)) {
53595       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "print_tree" "', argument " "1"" of type '" "Tree *""'");
53596     }
53597     arg1 = reinterpret_cast< Tree * >(argp1);
53598     {
53599       try {
53600         print_tree(arg1);
53601       } catch (const std::exception& e) {
53602         SWIG_exception(SWIG_RuntimeError, e.what());
53603       }
53604     }
53605     ST(argvi) = &PL_sv_undef;
53606 
53607     XSRETURN(argvi);
53608   fail:
53609 
53610     SWIG_croak_null();
53611   }
53612 }
53613 
53614 
XS(_wrap_free_tree)53615 XS(_wrap_free_tree) {
53616   {
53617     Tree *arg1 = (Tree *) 0 ;
53618     void *argp1 = 0 ;
53619     int res1 = 0 ;
53620     int argvi = 0;
53621     dXSARGS;
53622 
53623     if ((items < 1) || (items > 1)) {
53624       SWIG_croak("Usage: free_tree(t);");
53625     }
53626     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_Tree, 0 |  0 );
53627     if (!SWIG_IsOK(res1)) {
53628       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "free_tree" "', argument " "1"" of type '" "Tree *""'");
53629     }
53630     arg1 = reinterpret_cast< Tree * >(argp1);
53631     {
53632       try {
53633         free_tree(arg1);
53634       } catch (const std::exception& e) {
53635         SWIG_exception(SWIG_RuntimeError, e.what());
53636       }
53637     }
53638     ST(argvi) = &PL_sv_undef;
53639 
53640     XSRETURN(argvi);
53641   fail:
53642 
53643     SWIG_croak_null();
53644   }
53645 }
53646 
53647 
XS(_wrap_Make_swString)53648 XS(_wrap_Make_swString) {
53649   {
53650     char *arg1 = (char *) 0 ;
53651     int res1 ;
53652     char *buf1 = 0 ;
53653     int alloc1 = 0 ;
53654     int argvi = 0;
53655     swString *result = 0 ;
53656     dXSARGS;
53657 
53658     if ((items < 1) || (items > 1)) {
53659       SWIG_croak("Usage: Make_swString(string);");
53660     }
53661     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
53662     if (!SWIG_IsOK(res1)) {
53663       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Make_swString" "', argument " "1"" of type '" "char *""'");
53664     }
53665     arg1 = reinterpret_cast< char * >(buf1);
53666     {
53667       try {
53668         result = (swString *)Make_swString(arg1);
53669       } catch (const std::exception& e) {
53670         SWIG_exception(SWIG_RuntimeError, e.what());
53671       }
53672     }
53673     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swString, 0 | 0); argvi++ ;
53674     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53675     XSRETURN(argvi);
53676   fail:
53677     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
53678     SWIG_croak_null();
53679   }
53680 }
53681 
53682 
XS(_wrap_string_edit_distance)53683 XS(_wrap_string_edit_distance) {
53684   {
53685     swString *arg1 = (swString *) 0 ;
53686     swString *arg2 = (swString *) 0 ;
53687     void *argp1 = 0 ;
53688     int res1 = 0 ;
53689     void *argp2 = 0 ;
53690     int res2 = 0 ;
53691     int argvi = 0;
53692     float result;
53693     dXSARGS;
53694 
53695     if ((items < 2) || (items > 2)) {
53696       SWIG_croak("Usage: string_edit_distance(T1,T2);");
53697     }
53698     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_swString, 0 |  0 );
53699     if (!SWIG_IsOK(res1)) {
53700       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "string_edit_distance" "', argument " "1"" of type '" "swString *""'");
53701     }
53702     arg1 = reinterpret_cast< swString * >(argp1);
53703     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_swString, 0 |  0 );
53704     if (!SWIG_IsOK(res2)) {
53705       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "string_edit_distance" "', argument " "2"" of type '" "swString *""'");
53706     }
53707     arg2 = reinterpret_cast< swString * >(argp2);
53708     {
53709       try {
53710         result = (float)string_edit_distance(arg1,arg2);
53711       } catch (const std::exception& e) {
53712         SWIG_exception(SWIG_RuntimeError, e.what());
53713       }
53714     }
53715     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
53716 
53717 
53718     XSRETURN(argvi);
53719   fail:
53720 
53721 
53722     SWIG_croak_null();
53723   }
53724 }
53725 
53726 
XS(_wrap_profile_edit_distance)53727 XS(_wrap_profile_edit_distance) {
53728   {
53729     float *arg1 = (float *) 0 ;
53730     float *arg2 = (float *) 0 ;
53731     void *argp1 = 0 ;
53732     int res1 = 0 ;
53733     void *argp2 = 0 ;
53734     int res2 = 0 ;
53735     int argvi = 0;
53736     float result;
53737     dXSARGS;
53738 
53739     if ((items < 2) || (items > 2)) {
53740       SWIG_croak("Usage: profile_edit_distance(T1,T2);");
53741     }
53742     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_float, 0 |  0 );
53743     if (!SWIG_IsOK(res1)) {
53744       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "profile_edit_distance" "', argument " "1"" of type '" "float const *""'");
53745     }
53746     arg1 = reinterpret_cast< float * >(argp1);
53747     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_float, 0 |  0 );
53748     if (!SWIG_IsOK(res2)) {
53749       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "profile_edit_distance" "', argument " "2"" of type '" "float const *""'");
53750     }
53751     arg2 = reinterpret_cast< float * >(argp2);
53752     {
53753       try {
53754         result = (float)profile_edit_distance((float const *)arg1,(float const *)arg2);
53755       } catch (const std::exception& e) {
53756         SWIG_exception(SWIG_RuntimeError, e.what());
53757       }
53758     }
53759     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
53760 
53761 
53762     XSRETURN(argvi);
53763   fail:
53764 
53765 
53766     SWIG_croak_null();
53767   }
53768 }
53769 
53770 
XS(_wrap_Make_bp_profile_bppm)53771 XS(_wrap_Make_bp_profile_bppm) {
53772   {
53773     FLT_OR_DBL *arg1 = (FLT_OR_DBL *) 0 ;
53774     int arg2 ;
53775     void *argp1 = 0 ;
53776     int res1 = 0 ;
53777     int val2 ;
53778     int ecode2 = 0 ;
53779     int argvi = 0;
53780     float *result = 0 ;
53781     dXSARGS;
53782 
53783     if ((items < 2) || (items > 2)) {
53784       SWIG_croak("Usage: Make_bp_profile_bppm(bppm,length);");
53785     }
53786     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_double, 0 |  0 );
53787     if (!SWIG_IsOK(res1)) {
53788       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Make_bp_profile_bppm" "', argument " "1"" of type '" "FLT_OR_DBL *""'");
53789     }
53790     arg1 = reinterpret_cast< FLT_OR_DBL * >(argp1);
53791     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
53792     if (!SWIG_IsOK(ecode2)) {
53793       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Make_bp_profile_bppm" "', argument " "2"" of type '" "int""'");
53794     }
53795     arg2 = static_cast< int >(val2);
53796     {
53797       try {
53798         result = (float *)Make_bp_profile_bppm(arg1,arg2);
53799       } catch (const std::exception& e) {
53800         SWIG_exception(SWIG_RuntimeError, e.what());
53801       }
53802     }
53803     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_float, 0 | 0); argvi++ ;
53804 
53805 
53806     XSRETURN(argvi);
53807   fail:
53808 
53809 
53810     SWIG_croak_null();
53811   }
53812 }
53813 
53814 
XS(_wrap_print_bppm)53815 XS(_wrap_print_bppm) {
53816   {
53817     float *arg1 = (float *) 0 ;
53818     void *argp1 = 0 ;
53819     int res1 = 0 ;
53820     int argvi = 0;
53821     dXSARGS;
53822 
53823     if ((items < 1) || (items > 1)) {
53824       SWIG_croak("Usage: print_bppm(T);");
53825     }
53826     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_float, 0 |  0 );
53827     if (!SWIG_IsOK(res1)) {
53828       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "print_bppm" "', argument " "1"" of type '" "float const *""'");
53829     }
53830     arg1 = reinterpret_cast< float * >(argp1);
53831     {
53832       try {
53833         print_bppm((float const *)arg1);
53834       } catch (const std::exception& e) {
53835         SWIG_exception(SWIG_RuntimeError, e.what());
53836       }
53837     }
53838     ST(argvi) = &PL_sv_undef;
53839 
53840     XSRETURN(argvi);
53841   fail:
53842 
53843     SWIG_croak_null();
53844   }
53845 }
53846 
53847 
XS(_wrap_free_profile)53848 XS(_wrap_free_profile) {
53849   {
53850     float *arg1 = (float *) 0 ;
53851     void *argp1 = 0 ;
53852     int res1 = 0 ;
53853     int argvi = 0;
53854     dXSARGS;
53855 
53856     if ((items < 1) || (items > 1)) {
53857       SWIG_croak("Usage: free_profile(T);");
53858     }
53859     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_float, 0 |  0 );
53860     if (!SWIG_IsOK(res1)) {
53861       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "free_profile" "', argument " "1"" of type '" "float *""'");
53862     }
53863     arg1 = reinterpret_cast< float * >(argp1);
53864     {
53865       try {
53866         free_profile(arg1);
53867       } catch (const std::exception& e) {
53868         SWIG_exception(SWIG_RuntimeError, e.what());
53869       }
53870     }
53871     ST(argvi) = &PL_sv_undef;
53872 
53873     XSRETURN(argvi);
53874   fail:
53875 
53876     SWIG_croak_null();
53877   }
53878 }
53879 
53880 
XS(_wrap_Make_bp_profile)53881 XS(_wrap_Make_bp_profile) {
53882   {
53883     int arg1 ;
53884     int val1 ;
53885     int ecode1 = 0 ;
53886     int argvi = 0;
53887     float *result = 0 ;
53888     dXSARGS;
53889 
53890     if ((items < 1) || (items > 1)) {
53891       SWIG_croak("Usage: Make_bp_profile(length);");
53892     }
53893     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
53894     if (!SWIG_IsOK(ecode1)) {
53895       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "Make_bp_profile" "', argument " "1"" of type '" "int""'");
53896     }
53897     arg1 = static_cast< int >(val1);
53898     {
53899       try {
53900         result = (float *)Make_bp_profile(arg1);
53901       } catch (const std::exception& e) {
53902         SWIG_exception(SWIG_RuntimeError, e.what());
53903       }
53904     }
53905     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_float, SWIG_OWNER | 0); argvi++ ;
53906 
53907     XSRETURN(argvi);
53908   fail:
53909 
53910     SWIG_croak_null();
53911   }
53912 }
53913 
53914 
XS(_wrap_deref_any)53915 XS(_wrap_deref_any) {
53916   {
53917     void **arg1 = (void **) 0 ;
53918     int arg2 ;
53919     void *argp1 = 0 ;
53920     int res1 = 0 ;
53921     int val2 ;
53922     int ecode2 = 0 ;
53923     int argvi = 0;
53924     void *result = 0 ;
53925     dXSARGS;
53926 
53927     if ((items < 2) || (items > 2)) {
53928       SWIG_croak("Usage: deref_any(ptr,index);");
53929     }
53930     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_p_void, 0 |  0 );
53931     if (!SWIG_IsOK(res1)) {
53932       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "deref_any" "', argument " "1"" of type '" "void **""'");
53933     }
53934     arg1 = reinterpret_cast< void ** >(argp1);
53935     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
53936     if (!SWIG_IsOK(ecode2)) {
53937       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "deref_any" "', argument " "2"" of type '" "int""'");
53938     }
53939     arg2 = static_cast< int >(val2);
53940     {
53941       try {
53942         result = (void *)deref_any(arg1,arg2);
53943       } catch (const std::exception& e) {
53944         SWIG_exception(SWIG_RuntimeError, e.what());
53945       }
53946     }
53947     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 | 0); argvi++ ;
53948 
53949 
53950     XSRETURN(argvi);
53951   fail:
53952 
53953 
53954     SWIG_croak_null();
53955   }
53956 }
53957 
53958 
XS(_wrap_get_aligned_line)53959 XS(_wrap_get_aligned_line) {
53960   {
53961     int arg1 ;
53962     int val1 ;
53963     int ecode1 = 0 ;
53964     int argvi = 0;
53965     char *result = 0 ;
53966     dXSARGS;
53967 
53968     if ((items < 1) || (items > 1)) {
53969       SWIG_croak("Usage: get_aligned_line(int);");
53970     }
53971     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
53972     if (!SWIG_IsOK(ecode1)) {
53973       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "get_aligned_line" "', argument " "1"" of type '" "int""'");
53974     }
53975     arg1 = static_cast< int >(val1);
53976     {
53977       try {
53978         result = (char *)get_aligned_line(arg1);
53979       } catch (const std::exception& e) {
53980         SWIG_exception(SWIG_RuntimeError, e.what());
53981       }
53982     }
53983     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
53984 
53985     XSRETURN(argvi);
53986   fail:
53987 
53988     SWIG_croak_null();
53989   }
53990 }
53991 
53992 
XS(_wrap_file_SHAPE_read)53993 XS(_wrap_file_SHAPE_read) {
53994   {
53995     char *arg1 = (char *) 0 ;
53996     int arg2 ;
53997     double arg3 ;
53998     std::string *arg4 = (std::string *) 0 ;
53999     int *arg5 = (int *) 0 ;
54000     int res1 ;
54001     char *buf1 = 0 ;
54002     int alloc1 = 0 ;
54003     int val2 ;
54004     int ecode2 = 0 ;
54005     double val3 ;
54006     int ecode3 = 0 ;
54007     std::string temp4 ;
54008     int res4 = SWIG_TMPOBJ ;
54009     int temp5 ;
54010     int res5 = SWIG_TMPOBJ ;
54011     int argvi = 0;
54012     std::vector< double > result;
54013     dXSARGS;
54014 
54015     arg4 = &temp4;
54016     arg5 = &temp5;
54017     if ((items < 3) || (items > 3)) {
54018       SWIG_croak("Usage: file_SHAPE_read(file_name,length,default_value);");
54019     }
54020     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
54021     if (!SWIG_IsOK(res1)) {
54022       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "file_SHAPE_read" "', argument " "1"" of type '" "char const *""'");
54023     }
54024     arg1 = reinterpret_cast< char * >(buf1);
54025     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
54026     if (!SWIG_IsOK(ecode2)) {
54027       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "file_SHAPE_read" "', argument " "2"" of type '" "int""'");
54028     }
54029     arg2 = static_cast< int >(val2);
54030     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
54031     if (!SWIG_IsOK(ecode3)) {
54032       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "file_SHAPE_read" "', argument " "3"" of type '" "double""'");
54033     }
54034     arg3 = static_cast< double >(val3);
54035     {
54036       try {
54037         result = my_file_SHAPE_read((char const *)arg1,arg2,arg3,arg4,arg5);
54038       } catch (const std::exception& e) {
54039         SWIG_exception(SWIG_RuntimeError, e.what());
54040       }
54041     }
54042     {
54043       size_t len = (&result)->size();
54044       SV **svs = new SV*[len];
54045       for (size_t i=0; i<len; i++) {
54046         svs[i] = sv_newmortal();
54047         sv_setnv(svs[i], result[i]);
54048       }
54049       AV *myav = av_make(len, svs);
54050       delete[] svs;
54051       ST(argvi) = newRV_noinc((SV*) myav);
54052       sv_2mortal(ST(argvi));
54053       argvi++;
54054     }
54055     if (SWIG_IsTmpObj(res4)) {
54056       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1((*arg4)); argvi++  ;
54057     } else {
54058       int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0) : 0;
54059       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_std__string, new_flags); argvi++  ;
54060     }
54061     if (SWIG_IsTmpObj(res5)) {
54062       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1((*arg5)); argvi++  ;
54063     } else {
54064       int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0) : 0;
54065       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_int, new_flags); argvi++  ;
54066     }
54067     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
54068 
54069 
54070 
54071 
54072     XSRETURN(argvi);
54073   fail:
54074     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
54075 
54076 
54077 
54078 
54079     SWIG_croak_null();
54080   }
54081 }
54082 
54083 
XS(_wrap_file_fasta_read__SWIG_0)54084 XS(_wrap_file_fasta_read__SWIG_0) {
54085   {
54086     std::string *arg1 = (std::string *) 0 ;
54087     std::string *arg2 = (std::string *) 0 ;
54088     std::vector< std::string > *arg3 = (std::vector< std::string > *) 0 ;
54089     FILE *arg4 = (FILE *) 0 ;
54090     unsigned int arg5 ;
54091     std::string temp1 ;
54092     int res1 = SWIG_TMPOBJ ;
54093     std::string temp2 ;
54094     int res2 = SWIG_TMPOBJ ;
54095     std::vector< std::string > junk3 ;
54096     unsigned int val5 ;
54097     int ecode5 = 0 ;
54098     int argvi = 0;
54099     int result;
54100     dXSARGS;
54101 
54102     arg1 = &temp1;
54103     arg2 = &temp2;
54104     {
54105       arg3 = &junk3;
54106     }
54107     if ((items < 2) || (items > 2)) {
54108       SWIG_croak("Usage: file_fasta_read(file,options);");
54109     }
54110     {
54111       if (SvOK(ST(0))) /* check for undef */
54112       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(0))));
54113       else  arg4 = NULL;
54114     }
54115     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val5);
54116     if (!SWIG_IsOK(ecode5)) {
54117       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "file_fasta_read" "', argument " "5"" of type '" "unsigned int""'");
54118     }
54119     arg5 = static_cast< unsigned int >(val5);
54120     {
54121       try {
54122         result = (int)my_file_fasta_read(arg1,arg2,arg3,arg4,arg5);
54123       } catch (const std::exception& e) {
54124         SWIG_exception(SWIG_RuntimeError, e.what());
54125       }
54126     }
54127     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
54128     if (SWIG_IsTmpObj(res1)) {
54129       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1((*arg1)); argvi++  ;
54130     } else {
54131       int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0) : 0;
54132       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_std__string, new_flags); argvi++  ;
54133     }
54134     if (SWIG_IsTmpObj(res2)) {
54135       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
54136     } else {
54137       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
54138       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_std__string, new_flags); argvi++  ;
54139     }
54140     {
54141       SV **svs;
54142       int i = 0;
54143       svs = (SV **) malloc(arg3->size() * sizeof(SV *));
54144       for (std::vector<std::string>::iterator it = arg3->begin(); it != arg3->end(); it++, i++) {
54145         svs[i] = sv_newmortal();
54146         sv_setpv((SV*)svs[i], it->c_str());
54147       }
54148       ST(argvi) = newRV_noinc((SV*)av_make(arg3->size(), svs));
54149       sv_2mortal( ST(argvi) );
54150       free(svs);
54151       argvi++;
54152     }
54153 
54154 
54155 
54156 
54157 
54158     XSRETURN(argvi);
54159   fail:
54160 
54161 
54162 
54163 
54164 
54165     SWIG_croak_null();
54166   }
54167 }
54168 
54169 
XS(_wrap_file_fasta_read__SWIG_1)54170 XS(_wrap_file_fasta_read__SWIG_1) {
54171   {
54172     std::string *arg1 = (std::string *) 0 ;
54173     std::string *arg2 = (std::string *) 0 ;
54174     std::vector< std::string > *arg3 = (std::vector< std::string > *) 0 ;
54175     FILE *arg4 = (FILE *) 0 ;
54176     std::string temp1 ;
54177     int res1 = SWIG_TMPOBJ ;
54178     std::string temp2 ;
54179     int res2 = SWIG_TMPOBJ ;
54180     std::vector< std::string > junk3 ;
54181     int argvi = 0;
54182     int result;
54183     dXSARGS;
54184 
54185     arg1 = &temp1;
54186     arg2 = &temp2;
54187     {
54188       arg3 = &junk3;
54189     }
54190     if ((items < 1) || (items > 1)) {
54191       SWIG_croak("Usage: file_fasta_read(file);");
54192     }
54193     {
54194       if (SvOK(ST(0))) /* check for undef */
54195       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(0))));
54196       else  arg4 = NULL;
54197     }
54198     {
54199       try {
54200         result = (int)my_file_fasta_read(arg1,arg2,arg3,arg4);
54201       } catch (const std::exception& e) {
54202         SWIG_exception(SWIG_RuntimeError, e.what());
54203       }
54204     }
54205     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
54206     if (SWIG_IsTmpObj(res1)) {
54207       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1((*arg1)); argvi++  ;
54208     } else {
54209       int new_flags = SWIG_IsNewObj(res1) ? (SWIG_POINTER_OWN | 0) : 0;
54210       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg1), SWIGTYPE_p_std__string, new_flags); argvi++  ;
54211     }
54212     if (SWIG_IsTmpObj(res2)) {
54213       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
54214     } else {
54215       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
54216       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_std__string, new_flags); argvi++  ;
54217     }
54218     {
54219       SV **svs;
54220       int i = 0;
54221       svs = (SV **) malloc(arg3->size() * sizeof(SV *));
54222       for (std::vector<std::string>::iterator it = arg3->begin(); it != arg3->end(); it++, i++) {
54223         svs[i] = sv_newmortal();
54224         sv_setpv((SV*)svs[i], it->c_str());
54225       }
54226       ST(argvi) = newRV_noinc((SV*)av_make(arg3->size(), svs));
54227       sv_2mortal( ST(argvi) );
54228       free(svs);
54229       argvi++;
54230     }
54231 
54232 
54233 
54234 
54235     XSRETURN(argvi);
54236   fail:
54237 
54238 
54239 
54240 
54241     SWIG_croak_null();
54242   }
54243 }
54244 
54245 
XS(_wrap_file_fasta_read)54246 XS(_wrap_file_fasta_read) {
54247   dXSARGS;
54248 
54249   {
54250     unsigned long _index = 0;
54251     SWIG_TypeRank _rank = 0;
54252     if (items == 1) {
54253       SWIG_TypeRank _ranki = 0;
54254       SWIG_TypeRank _rankm = 0;
54255       SWIG_TypeRank _pi = 1;
54256       int _v = 0;
54257       {
54258         {
54259           if (SvOK(ST(0)))
54260           _v = (sv_2io(ST(0))) ? 1 : 0;
54261         }
54262       }
54263       if (!_v) goto check_1;
54264       _ranki += _v*_pi;
54265       _rankm += _pi;
54266       _pi *= SWIG_MAXCASTRANK;
54267       if (!_index || (_ranki < _rank)) {
54268         _rank = _ranki; _index = 1;
54269         if (_rank == _rankm) goto dispatch;
54270       }
54271     }
54272   check_1:
54273 
54274     if (items == 2) {
54275       SWIG_TypeRank _ranki = 0;
54276       SWIG_TypeRank _rankm = 0;
54277       SWIG_TypeRank _pi = 1;
54278       int _v = 0;
54279       {
54280         {
54281           if (SvOK(ST(0)))
54282           _v = (sv_2io(ST(0))) ? 1 : 0;
54283         }
54284       }
54285       if (!_v) goto check_2;
54286       _ranki += _v*_pi;
54287       _rankm += _pi;
54288       _pi *= SWIG_MAXCASTRANK;
54289       {
54290         {
54291           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
54292           _v = SWIG_CheckState(res);
54293         }
54294       }
54295       if (!_v) goto check_2;
54296       _ranki += _v*_pi;
54297       _rankm += _pi;
54298       _pi *= SWIG_MAXCASTRANK;
54299       if (!_index || (_ranki < _rank)) {
54300         _rank = _ranki; _index = 2;
54301         if (_rank == _rankm) goto dispatch;
54302       }
54303     }
54304   check_2:
54305 
54306   dispatch:
54307     switch(_index) {
54308     case 1:
54309       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_fasta_read__SWIG_1); return;
54310     case 2:
54311       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_fasta_read__SWIG_0); return;
54312     }
54313   }
54314 
54315   croak("No matching function for overloaded 'file_fasta_read'");
54316   XSRETURN(0);
54317 }
54318 
54319 
XS(_wrap_extract_record_rest_structure)54320 XS(_wrap_extract_record_rest_structure) {
54321   {
54322     char **arg1 = (char **) 0 ;
54323     unsigned int arg2 ;
54324     unsigned int arg3 ;
54325     unsigned int val2 ;
54326     int ecode2 = 0 ;
54327     unsigned int val3 ;
54328     int ecode3 = 0 ;
54329     int argvi = 0;
54330     char *result = 0 ;
54331     dXSARGS;
54332 
54333     if ((items < 3) || (items > 3)) {
54334       SWIG_croak("Usage: extract_record_rest_structure(lines,length,option);");
54335     }
54336     {
54337       AV *tempav;
54338       I32 len;
54339       int i;
54340       SV  **tv;
54341       if (!SvROK(ST(0)))
54342       croak("Argument 1 is not a reference.");
54343       if (SvTYPE(SvRV(ST(0))) != SVt_PVAV)
54344       croak("Argument 1 is not an array.");
54345       tempav = (AV*)SvRV(ST(0));
54346       len = av_len(tempav);
54347       arg1 = (char **) malloc((len+2)*sizeof(char *));
54348       for (i = 0; i <= len; i++) {
54349         tv = av_fetch(tempav, i, 0);
54350         arg1[i] = (char *) SvPV(*tv,PL_na);
54351       }
54352       arg1[i] = NULL;
54353     }
54354     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
54355     if (!SWIG_IsOK(ecode2)) {
54356       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "extract_record_rest_structure" "', argument " "2"" of type '" "unsigned int""'");
54357     }
54358     arg2 = static_cast< unsigned int >(val2);
54359     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
54360     if (!SWIG_IsOK(ecode3)) {
54361       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "extract_record_rest_structure" "', argument " "3"" of type '" "unsigned int""'");
54362     }
54363     arg3 = static_cast< unsigned int >(val3);
54364     {
54365       try {
54366         result = (char *)extract_record_rest_structure((char const **)arg1,arg2,arg3);
54367       } catch (const std::exception& e) {
54368         SWIG_exception(SWIG_RuntimeError, e.what());
54369       }
54370     }
54371     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
54372     {
54373       free(arg1);
54374     }
54375 
54376 
54377     XSRETURN(argvi);
54378   fail:
54379     {
54380       free(arg1);
54381     }
54382 
54383 
54384     SWIG_croak_null();
54385   }
54386 }
54387 
54388 
XS(_wrap_read_record)54389 XS(_wrap_read_record) {
54390   {
54391     char **arg1 = (char **) 0 ;
54392     char **arg2 = (char **) 0 ;
54393     char ***arg3 = (char ***) 0 ;
54394     unsigned int arg4 ;
54395     void *argp3 = 0 ;
54396     int res3 = 0 ;
54397     unsigned int val4 ;
54398     int ecode4 = 0 ;
54399     int argvi = 0;
54400     unsigned int result;
54401     dXSARGS;
54402 
54403     if ((items < 4) || (items > 4)) {
54404       SWIG_croak("Usage: read_record(header,sequence,rest,options);");
54405     }
54406     {
54407       AV *tempav;
54408       I32 len;
54409       int i;
54410       SV  **tv;
54411       if (!SvROK(ST(0)))
54412       croak("Argument 1 is not a reference.");
54413       if (SvTYPE(SvRV(ST(0))) != SVt_PVAV)
54414       croak("Argument 1 is not an array.");
54415       tempav = (AV*)SvRV(ST(0));
54416       len = av_len(tempav);
54417       arg1 = (char **) malloc((len+2)*sizeof(char *));
54418       for (i = 0; i <= len; i++) {
54419         tv = av_fetch(tempav, i, 0);
54420         arg1[i] = (char *) SvPV(*tv,PL_na);
54421       }
54422       arg1[i] = NULL;
54423     }
54424     {
54425       AV *tempav;
54426       I32 len;
54427       int i;
54428       SV  **tv;
54429       if (!SvROK(ST(1)))
54430       croak("Argument 2 is not a reference.");
54431       if (SvTYPE(SvRV(ST(1))) != SVt_PVAV)
54432       croak("Argument 2 is not an array.");
54433       tempav = (AV*)SvRV(ST(1));
54434       len = av_len(tempav);
54435       arg2 = (char **) malloc((len+2)*sizeof(char *));
54436       for (i = 0; i <= len; i++) {
54437         tv = av_fetch(tempav, i, 0);
54438         arg2[i] = (char *) SvPV(*tv,PL_na);
54439       }
54440       arg2[i] = NULL;
54441     }
54442     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_p_p_char, 0 |  0 );
54443     if (!SWIG_IsOK(res3)) {
54444       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "read_record" "', argument " "3"" of type '" "char ***""'");
54445     }
54446     arg3 = reinterpret_cast< char *** >(argp3);
54447     ecode4 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
54448     if (!SWIG_IsOK(ecode4)) {
54449       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "read_record" "', argument " "4"" of type '" "unsigned int""'");
54450     }
54451     arg4 = static_cast< unsigned int >(val4);
54452     {
54453       try {
54454         result = (unsigned int)read_record(arg1,arg2,arg3,arg4);
54455       } catch (const std::exception& e) {
54456         SWIG_exception(SWIG_RuntimeError, e.what());
54457       }
54458     }
54459     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
54460     {
54461       free(arg1);
54462     }
54463     {
54464       free(arg2);
54465     }
54466 
54467 
54468     XSRETURN(argvi);
54469   fail:
54470     {
54471       free(arg1);
54472     }
54473     {
54474       free(arg2);
54475     }
54476 
54477 
54478     SWIG_croak_null();
54479   }
54480 }
54481 
54482 
XS(_wrap_get_multi_input_line)54483 XS(_wrap_get_multi_input_line) {
54484   {
54485     char **arg1 = (char **) 0 ;
54486     unsigned int arg2 ;
54487     unsigned int val2 ;
54488     int ecode2 = 0 ;
54489     int argvi = 0;
54490     unsigned int result;
54491     dXSARGS;
54492 
54493     if ((items < 2) || (items > 2)) {
54494       SWIG_croak("Usage: get_multi_input_line(string,options);");
54495     }
54496     {
54497       AV *tempav;
54498       I32 len;
54499       int i;
54500       SV  **tv;
54501       if (!SvROK(ST(0)))
54502       croak("Argument 1 is not a reference.");
54503       if (SvTYPE(SvRV(ST(0))) != SVt_PVAV)
54504       croak("Argument 1 is not an array.");
54505       tempav = (AV*)SvRV(ST(0));
54506       len = av_len(tempav);
54507       arg1 = (char **) malloc((len+2)*sizeof(char *));
54508       for (i = 0; i <= len; i++) {
54509         tv = av_fetch(tempav, i, 0);
54510         arg1[i] = (char *) SvPV(*tv,PL_na);
54511       }
54512       arg1[i] = NULL;
54513     }
54514     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
54515     if (!SWIG_IsOK(ecode2)) {
54516       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "get_multi_input_line" "', argument " "2"" of type '" "unsigned int""'");
54517     }
54518     arg2 = static_cast< unsigned int >(val2);
54519     {
54520       try {
54521         result = (unsigned int)get_multi_input_line(arg1,arg2);
54522       } catch (const std::exception& e) {
54523         SWIG_exception(SWIG_RuntimeError, e.what());
54524       }
54525     }
54526     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
54527     {
54528       free(arg1);
54529     }
54530 
54531     XSRETURN(argvi);
54532   fail:
54533     {
54534       free(arg1);
54535     }
54536 
54537     SWIG_croak_null();
54538   }
54539 }
54540 
54541 
XS(_wrap_file_msa_detect_format__SWIG_0)54542 XS(_wrap_file_msa_detect_format__SWIG_0) {
54543   {
54544     std::string arg1 ;
54545     unsigned int arg2 ;
54546     unsigned int val2 ;
54547     int ecode2 = 0 ;
54548     int argvi = 0;
54549     unsigned int result;
54550     dXSARGS;
54551 
54552     if ((items < 2) || (items > 2)) {
54553       SWIG_croak("Usage: file_msa_detect_format(filename,options);");
54554     }
54555     {
54556       std::string *ptr = (std::string *)0;
54557       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
54558       if (!SWIG_IsOK(res) || !ptr) {
54559         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_detect_format" "', argument " "1"" of type '" "std::string""'");
54560       }
54561       arg1 = *ptr;
54562       if (SWIG_IsNewObj(res)) delete ptr;
54563     }
54564     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
54565     if (!SWIG_IsOK(ecode2)) {
54566       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "file_msa_detect_format" "', argument " "2"" of type '" "unsigned int""'");
54567     }
54568     arg2 = static_cast< unsigned int >(val2);
54569     {
54570       try {
54571         result = (unsigned int)my_file_msa_detect_format(arg1,arg2);
54572       } catch (const std::exception& e) {
54573         SWIG_exception(SWIG_RuntimeError, e.what());
54574       }
54575     }
54576     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
54577 
54578 
54579     XSRETURN(argvi);
54580   fail:
54581 
54582 
54583     SWIG_croak_null();
54584   }
54585 }
54586 
54587 
XS(_wrap_file_msa_detect_format__SWIG_1)54588 XS(_wrap_file_msa_detect_format__SWIG_1) {
54589   {
54590     std::string arg1 ;
54591     int argvi = 0;
54592     unsigned int result;
54593     dXSARGS;
54594 
54595     if ((items < 1) || (items > 1)) {
54596       SWIG_croak("Usage: file_msa_detect_format(filename);");
54597     }
54598     {
54599       std::string *ptr = (std::string *)0;
54600       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
54601       if (!SWIG_IsOK(res) || !ptr) {
54602         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_detect_format" "', argument " "1"" of type '" "std::string""'");
54603       }
54604       arg1 = *ptr;
54605       if (SWIG_IsNewObj(res)) delete ptr;
54606     }
54607     {
54608       try {
54609         result = (unsigned int)my_file_msa_detect_format(arg1);
54610       } catch (const std::exception& e) {
54611         SWIG_exception(SWIG_RuntimeError, e.what());
54612       }
54613     }
54614     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
54615 
54616     XSRETURN(argvi);
54617   fail:
54618 
54619     SWIG_croak_null();
54620   }
54621 }
54622 
54623 
XS(_wrap_file_msa_detect_format)54624 XS(_wrap_file_msa_detect_format) {
54625   dXSARGS;
54626 
54627   {
54628     unsigned long _index = 0;
54629     SWIG_TypeRank _rank = 0;
54630     if (items == 1) {
54631       SWIG_TypeRank _ranki = 0;
54632       SWIG_TypeRank _rankm = 0;
54633       SWIG_TypeRank _pi = 1;
54634       int _v = 0;
54635       {
54636         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
54637         _v = SWIG_CheckState(res);
54638       }
54639       if (!_v) goto check_1;
54640       _ranki += _v*_pi;
54641       _rankm += _pi;
54642       _pi *= SWIG_MAXCASTRANK;
54643       if (!_index || (_ranki < _rank)) {
54644         _rank = _ranki; _index = 1;
54645         if (_rank == _rankm) goto dispatch;
54646       }
54647     }
54648   check_1:
54649 
54650     if (items == 2) {
54651       SWIG_TypeRank _ranki = 0;
54652       SWIG_TypeRank _rankm = 0;
54653       SWIG_TypeRank _pi = 1;
54654       int _v = 0;
54655       {
54656         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
54657         _v = SWIG_CheckState(res);
54658       }
54659       if (!_v) goto check_2;
54660       _ranki += _v*_pi;
54661       _rankm += _pi;
54662       _pi *= SWIG_MAXCASTRANK;
54663       {
54664         {
54665           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
54666           _v = SWIG_CheckState(res);
54667         }
54668       }
54669       if (!_v) goto check_2;
54670       _ranki += _v*_pi;
54671       _rankm += _pi;
54672       _pi *= SWIG_MAXCASTRANK;
54673       if (!_index || (_ranki < _rank)) {
54674         _rank = _ranki; _index = 2;
54675         if (_rank == _rankm) goto dispatch;
54676       }
54677     }
54678   check_2:
54679 
54680   dispatch:
54681     switch(_index) {
54682     case 1:
54683       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_msa_detect_format__SWIG_1); return;
54684     case 2:
54685       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_msa_detect_format__SWIG_0); return;
54686     }
54687   }
54688 
54689   croak("No matching function for overloaded 'file_msa_detect_format'");
54690   XSRETURN(0);
54691 }
54692 
54693 
XS(_wrap_file_msa_write__SWIG_0)54694 XS(_wrap_file_msa_write__SWIG_0) {
54695   {
54696     std::string arg1 ;
54697     std::vector< std::string > arg2 ;
54698     std::vector< std::string > arg3 ;
54699     std::string arg4 ;
54700     std::string arg5 ;
54701     std::string arg6 ;
54702     unsigned int arg7 ;
54703     std::vector< std::string > *v2 ;
54704     std::vector< std::string > *v3 ;
54705     unsigned int val7 ;
54706     int ecode7 = 0 ;
54707     int argvi = 0;
54708     int result;
54709     dXSARGS;
54710 
54711     if ((items < 7) || (items > 7)) {
54712       SWIG_croak("Usage: file_msa_write(filename,names,alignment,id,structure,source,options);");
54713     }
54714     {
54715       std::string *ptr = (std::string *)0;
54716       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
54717       if (!SWIG_IsOK(res) || !ptr) {
54718         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_write" "', argument " "1"" of type '" "std::string""'");
54719       }
54720       arg1 = *ptr;
54721       if (SWIG_IsNewObj(res)) delete ptr;
54722     }
54723     {
54724       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
54725           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
54726         arg2 = *v2;
54727       } else if (SvROK(ST(1))) {
54728         AV *av = (AV *)SvRV(ST(1));
54729         if (SvTYPE(av) != SVt_PVAV)
54730         SWIG_croak("Type error in argument 2 of file_msa_write. "
54731           "Expected an array of ""std::string");
54732         SV **tv;
54733         I32 len = av_len(av) + 1;
54734         for (int i=0; i<len; i++) {
54735           tv = av_fetch(av, i, 0);
54736           if (SvPOK(*tv)) {
54737             (&arg2)->push_back((std::string)SwigSvToString(*tv));
54738           } else {
54739             SWIG_croak("Type error in argument 2 of "
54740               "file_msa_write. "
54741               "Expected an array of ""std::string");
54742           }
54743         }
54744       } else {
54745         SWIG_croak("Type error in argument 2 of file_msa_write. "
54746           "Expected an array of ""std::string");
54747       }
54748     }
54749     {
54750       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
54751           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
54752         arg3 = *v3;
54753       } else if (SvROK(ST(2))) {
54754         AV *av = (AV *)SvRV(ST(2));
54755         if (SvTYPE(av) != SVt_PVAV)
54756         SWIG_croak("Type error in argument 3 of file_msa_write. "
54757           "Expected an array of ""std::string");
54758         SV **tv;
54759         I32 len = av_len(av) + 1;
54760         for (int i=0; i<len; i++) {
54761           tv = av_fetch(av, i, 0);
54762           if (SvPOK(*tv)) {
54763             (&arg3)->push_back((std::string)SwigSvToString(*tv));
54764           } else {
54765             SWIG_croak("Type error in argument 3 of "
54766               "file_msa_write. "
54767               "Expected an array of ""std::string");
54768           }
54769         }
54770       } else {
54771         SWIG_croak("Type error in argument 3 of file_msa_write. "
54772           "Expected an array of ""std::string");
54773       }
54774     }
54775     {
54776       std::string *ptr = (std::string *)0;
54777       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), &ptr);
54778       if (!SWIG_IsOK(res) || !ptr) {
54779         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_write" "', argument " "4"" of type '" "std::string""'");
54780       }
54781       arg4 = *ptr;
54782       if (SWIG_IsNewObj(res)) delete ptr;
54783     }
54784     {
54785       std::string *ptr = (std::string *)0;
54786       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(4), &ptr);
54787       if (!SWIG_IsOK(res) || !ptr) {
54788         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_write" "', argument " "5"" of type '" "std::string""'");
54789       }
54790       arg5 = *ptr;
54791       if (SWIG_IsNewObj(res)) delete ptr;
54792     }
54793     {
54794       std::string *ptr = (std::string *)0;
54795       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(5), &ptr);
54796       if (!SWIG_IsOK(res) || !ptr) {
54797         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_write" "', argument " "6"" of type '" "std::string""'");
54798       }
54799       arg6 = *ptr;
54800       if (SWIG_IsNewObj(res)) delete ptr;
54801     }
54802     ecode7 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
54803     if (!SWIG_IsOK(ecode7)) {
54804       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "file_msa_write" "', argument " "7"" of type '" "unsigned int""'");
54805     }
54806     arg7 = static_cast< unsigned int >(val7);
54807     {
54808       try {
54809         result = (int)my_file_msa_write(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
54810       } catch (const std::exception& e) {
54811         SWIG_exception(SWIG_RuntimeError, e.what());
54812       }
54813     }
54814     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
54815 
54816 
54817 
54818 
54819 
54820     XSRETURN(argvi);
54821   fail:
54822 
54823 
54824 
54825 
54826 
54827     SWIG_croak_null();
54828   }
54829 }
54830 
54831 
XS(_wrap_file_msa_write__SWIG_1)54832 XS(_wrap_file_msa_write__SWIG_1) {
54833   {
54834     std::string arg1 ;
54835     std::vector< std::string > arg2 ;
54836     std::vector< std::string > arg3 ;
54837     std::string arg4 ;
54838     std::string arg5 ;
54839     std::string arg6 ;
54840     std::vector< std::string > *v2 ;
54841     std::vector< std::string > *v3 ;
54842     int argvi = 0;
54843     int result;
54844     dXSARGS;
54845 
54846     if ((items < 6) || (items > 6)) {
54847       SWIG_croak("Usage: file_msa_write(filename,names,alignment,id,structure,source);");
54848     }
54849     {
54850       std::string *ptr = (std::string *)0;
54851       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
54852       if (!SWIG_IsOK(res) || !ptr) {
54853         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_write" "', argument " "1"" of type '" "std::string""'");
54854       }
54855       arg1 = *ptr;
54856       if (SWIG_IsNewObj(res)) delete ptr;
54857     }
54858     {
54859       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
54860           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
54861         arg2 = *v2;
54862       } else if (SvROK(ST(1))) {
54863         AV *av = (AV *)SvRV(ST(1));
54864         if (SvTYPE(av) != SVt_PVAV)
54865         SWIG_croak("Type error in argument 2 of file_msa_write. "
54866           "Expected an array of ""std::string");
54867         SV **tv;
54868         I32 len = av_len(av) + 1;
54869         for (int i=0; i<len; i++) {
54870           tv = av_fetch(av, i, 0);
54871           if (SvPOK(*tv)) {
54872             (&arg2)->push_back((std::string)SwigSvToString(*tv));
54873           } else {
54874             SWIG_croak("Type error in argument 2 of "
54875               "file_msa_write. "
54876               "Expected an array of ""std::string");
54877           }
54878         }
54879       } else {
54880         SWIG_croak("Type error in argument 2 of file_msa_write. "
54881           "Expected an array of ""std::string");
54882       }
54883     }
54884     {
54885       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
54886           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
54887         arg3 = *v3;
54888       } else if (SvROK(ST(2))) {
54889         AV *av = (AV *)SvRV(ST(2));
54890         if (SvTYPE(av) != SVt_PVAV)
54891         SWIG_croak("Type error in argument 3 of file_msa_write. "
54892           "Expected an array of ""std::string");
54893         SV **tv;
54894         I32 len = av_len(av) + 1;
54895         for (int i=0; i<len; i++) {
54896           tv = av_fetch(av, i, 0);
54897           if (SvPOK(*tv)) {
54898             (&arg3)->push_back((std::string)SwigSvToString(*tv));
54899           } else {
54900             SWIG_croak("Type error in argument 3 of "
54901               "file_msa_write. "
54902               "Expected an array of ""std::string");
54903           }
54904         }
54905       } else {
54906         SWIG_croak("Type error in argument 3 of file_msa_write. "
54907           "Expected an array of ""std::string");
54908       }
54909     }
54910     {
54911       std::string *ptr = (std::string *)0;
54912       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), &ptr);
54913       if (!SWIG_IsOK(res) || !ptr) {
54914         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_write" "', argument " "4"" of type '" "std::string""'");
54915       }
54916       arg4 = *ptr;
54917       if (SWIG_IsNewObj(res)) delete ptr;
54918     }
54919     {
54920       std::string *ptr = (std::string *)0;
54921       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(4), &ptr);
54922       if (!SWIG_IsOK(res) || !ptr) {
54923         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_write" "', argument " "5"" of type '" "std::string""'");
54924       }
54925       arg5 = *ptr;
54926       if (SWIG_IsNewObj(res)) delete ptr;
54927     }
54928     {
54929       std::string *ptr = (std::string *)0;
54930       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(5), &ptr);
54931       if (!SWIG_IsOK(res) || !ptr) {
54932         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_write" "', argument " "6"" of type '" "std::string""'");
54933       }
54934       arg6 = *ptr;
54935       if (SWIG_IsNewObj(res)) delete ptr;
54936     }
54937     {
54938       try {
54939         result = (int)my_file_msa_write(arg1,arg2,arg3,arg4,arg5,arg6);
54940       } catch (const std::exception& e) {
54941         SWIG_exception(SWIG_RuntimeError, e.what());
54942       }
54943     }
54944     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
54945 
54946 
54947 
54948 
54949     XSRETURN(argvi);
54950   fail:
54951 
54952 
54953 
54954 
54955     SWIG_croak_null();
54956   }
54957 }
54958 
54959 
XS(_wrap_file_msa_write__SWIG_2)54960 XS(_wrap_file_msa_write__SWIG_2) {
54961   {
54962     std::string arg1 ;
54963     std::vector< std::string > arg2 ;
54964     std::vector< std::string > arg3 ;
54965     std::string arg4 ;
54966     std::string arg5 ;
54967     std::vector< std::string > *v2 ;
54968     std::vector< std::string > *v3 ;
54969     int argvi = 0;
54970     int result;
54971     dXSARGS;
54972 
54973     if ((items < 5) || (items > 5)) {
54974       SWIG_croak("Usage: file_msa_write(filename,names,alignment,id,structure);");
54975     }
54976     {
54977       std::string *ptr = (std::string *)0;
54978       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
54979       if (!SWIG_IsOK(res) || !ptr) {
54980         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_write" "', argument " "1"" of type '" "std::string""'");
54981       }
54982       arg1 = *ptr;
54983       if (SWIG_IsNewObj(res)) delete ptr;
54984     }
54985     {
54986       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
54987           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
54988         arg2 = *v2;
54989       } else if (SvROK(ST(1))) {
54990         AV *av = (AV *)SvRV(ST(1));
54991         if (SvTYPE(av) != SVt_PVAV)
54992         SWIG_croak("Type error in argument 2 of file_msa_write. "
54993           "Expected an array of ""std::string");
54994         SV **tv;
54995         I32 len = av_len(av) + 1;
54996         for (int i=0; i<len; i++) {
54997           tv = av_fetch(av, i, 0);
54998           if (SvPOK(*tv)) {
54999             (&arg2)->push_back((std::string)SwigSvToString(*tv));
55000           } else {
55001             SWIG_croak("Type error in argument 2 of "
55002               "file_msa_write. "
55003               "Expected an array of ""std::string");
55004           }
55005         }
55006       } else {
55007         SWIG_croak("Type error in argument 2 of file_msa_write. "
55008           "Expected an array of ""std::string");
55009       }
55010     }
55011     {
55012       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
55013           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
55014         arg3 = *v3;
55015       } else if (SvROK(ST(2))) {
55016         AV *av = (AV *)SvRV(ST(2));
55017         if (SvTYPE(av) != SVt_PVAV)
55018         SWIG_croak("Type error in argument 3 of file_msa_write. "
55019           "Expected an array of ""std::string");
55020         SV **tv;
55021         I32 len = av_len(av) + 1;
55022         for (int i=0; i<len; i++) {
55023           tv = av_fetch(av, i, 0);
55024           if (SvPOK(*tv)) {
55025             (&arg3)->push_back((std::string)SwigSvToString(*tv));
55026           } else {
55027             SWIG_croak("Type error in argument 3 of "
55028               "file_msa_write. "
55029               "Expected an array of ""std::string");
55030           }
55031         }
55032       } else {
55033         SWIG_croak("Type error in argument 3 of file_msa_write. "
55034           "Expected an array of ""std::string");
55035       }
55036     }
55037     {
55038       std::string *ptr = (std::string *)0;
55039       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), &ptr);
55040       if (!SWIG_IsOK(res) || !ptr) {
55041         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_write" "', argument " "4"" of type '" "std::string""'");
55042       }
55043       arg4 = *ptr;
55044       if (SWIG_IsNewObj(res)) delete ptr;
55045     }
55046     {
55047       std::string *ptr = (std::string *)0;
55048       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(4), &ptr);
55049       if (!SWIG_IsOK(res) || !ptr) {
55050         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_write" "', argument " "5"" of type '" "std::string""'");
55051       }
55052       arg5 = *ptr;
55053       if (SWIG_IsNewObj(res)) delete ptr;
55054     }
55055     {
55056       try {
55057         result = (int)my_file_msa_write(arg1,arg2,arg3,arg4,arg5);
55058       } catch (const std::exception& e) {
55059         SWIG_exception(SWIG_RuntimeError, e.what());
55060       }
55061     }
55062     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
55063 
55064 
55065 
55066     XSRETURN(argvi);
55067   fail:
55068 
55069 
55070 
55071     SWIG_croak_null();
55072   }
55073 }
55074 
55075 
XS(_wrap_file_msa_write__SWIG_3)55076 XS(_wrap_file_msa_write__SWIG_3) {
55077   {
55078     std::string arg1 ;
55079     std::vector< std::string > arg2 ;
55080     std::vector< std::string > arg3 ;
55081     std::string arg4 ;
55082     std::vector< std::string > *v2 ;
55083     std::vector< std::string > *v3 ;
55084     int argvi = 0;
55085     int result;
55086     dXSARGS;
55087 
55088     if ((items < 4) || (items > 4)) {
55089       SWIG_croak("Usage: file_msa_write(filename,names,alignment,id);");
55090     }
55091     {
55092       std::string *ptr = (std::string *)0;
55093       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
55094       if (!SWIG_IsOK(res) || !ptr) {
55095         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_write" "', argument " "1"" of type '" "std::string""'");
55096       }
55097       arg1 = *ptr;
55098       if (SWIG_IsNewObj(res)) delete ptr;
55099     }
55100     {
55101       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
55102           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
55103         arg2 = *v2;
55104       } else if (SvROK(ST(1))) {
55105         AV *av = (AV *)SvRV(ST(1));
55106         if (SvTYPE(av) != SVt_PVAV)
55107         SWIG_croak("Type error in argument 2 of file_msa_write. "
55108           "Expected an array of ""std::string");
55109         SV **tv;
55110         I32 len = av_len(av) + 1;
55111         for (int i=0; i<len; i++) {
55112           tv = av_fetch(av, i, 0);
55113           if (SvPOK(*tv)) {
55114             (&arg2)->push_back((std::string)SwigSvToString(*tv));
55115           } else {
55116             SWIG_croak("Type error in argument 2 of "
55117               "file_msa_write. "
55118               "Expected an array of ""std::string");
55119           }
55120         }
55121       } else {
55122         SWIG_croak("Type error in argument 2 of file_msa_write. "
55123           "Expected an array of ""std::string");
55124       }
55125     }
55126     {
55127       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
55128           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
55129         arg3 = *v3;
55130       } else if (SvROK(ST(2))) {
55131         AV *av = (AV *)SvRV(ST(2));
55132         if (SvTYPE(av) != SVt_PVAV)
55133         SWIG_croak("Type error in argument 3 of file_msa_write. "
55134           "Expected an array of ""std::string");
55135         SV **tv;
55136         I32 len = av_len(av) + 1;
55137         for (int i=0; i<len; i++) {
55138           tv = av_fetch(av, i, 0);
55139           if (SvPOK(*tv)) {
55140             (&arg3)->push_back((std::string)SwigSvToString(*tv));
55141           } else {
55142             SWIG_croak("Type error in argument 3 of "
55143               "file_msa_write. "
55144               "Expected an array of ""std::string");
55145           }
55146         }
55147       } else {
55148         SWIG_croak("Type error in argument 3 of file_msa_write. "
55149           "Expected an array of ""std::string");
55150       }
55151     }
55152     {
55153       std::string *ptr = (std::string *)0;
55154       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), &ptr);
55155       if (!SWIG_IsOK(res) || !ptr) {
55156         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_write" "', argument " "4"" of type '" "std::string""'");
55157       }
55158       arg4 = *ptr;
55159       if (SWIG_IsNewObj(res)) delete ptr;
55160     }
55161     {
55162       try {
55163         result = (int)my_file_msa_write(arg1,arg2,arg3,arg4);
55164       } catch (const std::exception& e) {
55165         SWIG_exception(SWIG_RuntimeError, e.what());
55166       }
55167     }
55168     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
55169 
55170 
55171     XSRETURN(argvi);
55172   fail:
55173 
55174 
55175     SWIG_croak_null();
55176   }
55177 }
55178 
55179 
XS(_wrap_file_msa_write__SWIG_4)55180 XS(_wrap_file_msa_write__SWIG_4) {
55181   {
55182     std::string arg1 ;
55183     std::vector< std::string > arg2 ;
55184     std::vector< std::string > arg3 ;
55185     std::vector< std::string > *v2 ;
55186     std::vector< std::string > *v3 ;
55187     int argvi = 0;
55188     int result;
55189     dXSARGS;
55190 
55191     if ((items < 3) || (items > 3)) {
55192       SWIG_croak("Usage: file_msa_write(filename,names,alignment);");
55193     }
55194     {
55195       std::string *ptr = (std::string *)0;
55196       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
55197       if (!SWIG_IsOK(res) || !ptr) {
55198         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_write" "', argument " "1"" of type '" "std::string""'");
55199       }
55200       arg1 = *ptr;
55201       if (SWIG_IsNewObj(res)) delete ptr;
55202     }
55203     {
55204       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
55205           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
55206         arg2 = *v2;
55207       } else if (SvROK(ST(1))) {
55208         AV *av = (AV *)SvRV(ST(1));
55209         if (SvTYPE(av) != SVt_PVAV)
55210         SWIG_croak("Type error in argument 2 of file_msa_write. "
55211           "Expected an array of ""std::string");
55212         SV **tv;
55213         I32 len = av_len(av) + 1;
55214         for (int i=0; i<len; i++) {
55215           tv = av_fetch(av, i, 0);
55216           if (SvPOK(*tv)) {
55217             (&arg2)->push_back((std::string)SwigSvToString(*tv));
55218           } else {
55219             SWIG_croak("Type error in argument 2 of "
55220               "file_msa_write. "
55221               "Expected an array of ""std::string");
55222           }
55223         }
55224       } else {
55225         SWIG_croak("Type error in argument 2 of file_msa_write. "
55226           "Expected an array of ""std::string");
55227       }
55228     }
55229     {
55230       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
55231           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
55232         arg3 = *v3;
55233       } else if (SvROK(ST(2))) {
55234         AV *av = (AV *)SvRV(ST(2));
55235         if (SvTYPE(av) != SVt_PVAV)
55236         SWIG_croak("Type error in argument 3 of file_msa_write. "
55237           "Expected an array of ""std::string");
55238         SV **tv;
55239         I32 len = av_len(av) + 1;
55240         for (int i=0; i<len; i++) {
55241           tv = av_fetch(av, i, 0);
55242           if (SvPOK(*tv)) {
55243             (&arg3)->push_back((std::string)SwigSvToString(*tv));
55244           } else {
55245             SWIG_croak("Type error in argument 3 of "
55246               "file_msa_write. "
55247               "Expected an array of ""std::string");
55248           }
55249         }
55250       } else {
55251         SWIG_croak("Type error in argument 3 of file_msa_write. "
55252           "Expected an array of ""std::string");
55253       }
55254     }
55255     {
55256       try {
55257         result = (int)my_file_msa_write(arg1,arg2,arg3);
55258       } catch (const std::exception& e) {
55259         SWIG_exception(SWIG_RuntimeError, e.what());
55260       }
55261     }
55262     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
55263 
55264     XSRETURN(argvi);
55265   fail:
55266 
55267     SWIG_croak_null();
55268   }
55269 }
55270 
55271 
XS(_wrap_file_msa_write)55272 XS(_wrap_file_msa_write) {
55273   dXSARGS;
55274 
55275   {
55276     unsigned long _index = 0;
55277     SWIG_TypeRank _rank = 0;
55278     if (items == 3) {
55279       SWIG_TypeRank _ranki = 0;
55280       SWIG_TypeRank _rankm = 0;
55281       SWIG_TypeRank _pi = 1;
55282       int _v = 0;
55283       {
55284         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
55285         _v = SWIG_CheckState(res);
55286       }
55287       if (!_v) goto check_1;
55288       _ranki += _v*_pi;
55289       _rankm += _pi;
55290       _pi *= SWIG_MAXCASTRANK;
55291       {
55292         {
55293           {
55294             /* wrapped vector? */
55295             std::vector< std::string >* v;
55296             if (SWIG_ConvertPtr(ST(1),(void **) &v,
55297                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
55298               _v = 1;
55299             } else if (SvROK(ST(1))) {
55300               /* native sequence? */
55301               AV *av = (AV *)SvRV(ST(1));
55302               if (SvTYPE(av) == SVt_PVAV) {
55303                 I32 len = av_len(av) + 1;
55304                 if (len == 0) {
55305                   /* an empty sequence can be of any type */
55306                   _v = 1;
55307                 } else {
55308                   /* check the first element only */
55309                   SV **tv = av_fetch(av, 0, 0);
55310                   if (SvPOK(*tv))
55311                   _v = 1;
55312                   else
55313                   _v = 0;
55314                 }
55315               }
55316             } else {
55317               _v = 0;
55318             }
55319           }
55320         }
55321       }
55322       if (!_v) goto check_1;
55323       _ranki += _v*_pi;
55324       _rankm += _pi;
55325       _pi *= SWIG_MAXCASTRANK;
55326       {
55327         {
55328           {
55329             /* wrapped vector? */
55330             std::vector< std::string >* v;
55331             if (SWIG_ConvertPtr(ST(2),(void **) &v,
55332                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
55333               _v = 1;
55334             } else if (SvROK(ST(2))) {
55335               /* native sequence? */
55336               AV *av = (AV *)SvRV(ST(2));
55337               if (SvTYPE(av) == SVt_PVAV) {
55338                 I32 len = av_len(av) + 1;
55339                 if (len == 0) {
55340                   /* an empty sequence can be of any type */
55341                   _v = 1;
55342                 } else {
55343                   /* check the first element only */
55344                   SV **tv = av_fetch(av, 0, 0);
55345                   if (SvPOK(*tv))
55346                   _v = 1;
55347                   else
55348                   _v = 0;
55349                 }
55350               }
55351             } else {
55352               _v = 0;
55353             }
55354           }
55355         }
55356       }
55357       if (!_v) goto check_1;
55358       _ranki += _v*_pi;
55359       _rankm += _pi;
55360       _pi *= SWIG_MAXCASTRANK;
55361       if (!_index || (_ranki < _rank)) {
55362         _rank = _ranki; _index = 1;
55363         if (_rank == _rankm) goto dispatch;
55364       }
55365     }
55366   check_1:
55367 
55368     if (items == 4) {
55369       SWIG_TypeRank _ranki = 0;
55370       SWIG_TypeRank _rankm = 0;
55371       SWIG_TypeRank _pi = 1;
55372       int _v = 0;
55373       {
55374         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
55375         _v = SWIG_CheckState(res);
55376       }
55377       if (!_v) goto check_2;
55378       _ranki += _v*_pi;
55379       _rankm += _pi;
55380       _pi *= SWIG_MAXCASTRANK;
55381       {
55382         {
55383           {
55384             /* wrapped vector? */
55385             std::vector< std::string >* v;
55386             if (SWIG_ConvertPtr(ST(1),(void **) &v,
55387                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
55388               _v = 1;
55389             } else if (SvROK(ST(1))) {
55390               /* native sequence? */
55391               AV *av = (AV *)SvRV(ST(1));
55392               if (SvTYPE(av) == SVt_PVAV) {
55393                 I32 len = av_len(av) + 1;
55394                 if (len == 0) {
55395                   /* an empty sequence can be of any type */
55396                   _v = 1;
55397                 } else {
55398                   /* check the first element only */
55399                   SV **tv = av_fetch(av, 0, 0);
55400                   if (SvPOK(*tv))
55401                   _v = 1;
55402                   else
55403                   _v = 0;
55404                 }
55405               }
55406             } else {
55407               _v = 0;
55408             }
55409           }
55410         }
55411       }
55412       if (!_v) goto check_2;
55413       _ranki += _v*_pi;
55414       _rankm += _pi;
55415       _pi *= SWIG_MAXCASTRANK;
55416       {
55417         {
55418           {
55419             /* wrapped vector? */
55420             std::vector< std::string >* v;
55421             if (SWIG_ConvertPtr(ST(2),(void **) &v,
55422                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
55423               _v = 1;
55424             } else if (SvROK(ST(2))) {
55425               /* native sequence? */
55426               AV *av = (AV *)SvRV(ST(2));
55427               if (SvTYPE(av) == SVt_PVAV) {
55428                 I32 len = av_len(av) + 1;
55429                 if (len == 0) {
55430                   /* an empty sequence can be of any type */
55431                   _v = 1;
55432                 } else {
55433                   /* check the first element only */
55434                   SV **tv = av_fetch(av, 0, 0);
55435                   if (SvPOK(*tv))
55436                   _v = 1;
55437                   else
55438                   _v = 0;
55439                 }
55440               }
55441             } else {
55442               _v = 0;
55443             }
55444           }
55445         }
55446       }
55447       if (!_v) goto check_2;
55448       _ranki += _v*_pi;
55449       _rankm += _pi;
55450       _pi *= SWIG_MAXCASTRANK;
55451       {
55452         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), (std::string**)(0));
55453         _v = SWIG_CheckState(res);
55454       }
55455       if (!_v) goto check_2;
55456       _ranki += _v*_pi;
55457       _rankm += _pi;
55458       _pi *= SWIG_MAXCASTRANK;
55459       if (!_index || (_ranki < _rank)) {
55460         _rank = _ranki; _index = 2;
55461         if (_rank == _rankm) goto dispatch;
55462       }
55463     }
55464   check_2:
55465 
55466     if (items == 5) {
55467       SWIG_TypeRank _ranki = 0;
55468       SWIG_TypeRank _rankm = 0;
55469       SWIG_TypeRank _pi = 1;
55470       int _v = 0;
55471       {
55472         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
55473         _v = SWIG_CheckState(res);
55474       }
55475       if (!_v) goto check_3;
55476       _ranki += _v*_pi;
55477       _rankm += _pi;
55478       _pi *= SWIG_MAXCASTRANK;
55479       {
55480         {
55481           {
55482             /* wrapped vector? */
55483             std::vector< std::string >* v;
55484             if (SWIG_ConvertPtr(ST(1),(void **) &v,
55485                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
55486               _v = 1;
55487             } else if (SvROK(ST(1))) {
55488               /* native sequence? */
55489               AV *av = (AV *)SvRV(ST(1));
55490               if (SvTYPE(av) == SVt_PVAV) {
55491                 I32 len = av_len(av) + 1;
55492                 if (len == 0) {
55493                   /* an empty sequence can be of any type */
55494                   _v = 1;
55495                 } else {
55496                   /* check the first element only */
55497                   SV **tv = av_fetch(av, 0, 0);
55498                   if (SvPOK(*tv))
55499                   _v = 1;
55500                   else
55501                   _v = 0;
55502                 }
55503               }
55504             } else {
55505               _v = 0;
55506             }
55507           }
55508         }
55509       }
55510       if (!_v) goto check_3;
55511       _ranki += _v*_pi;
55512       _rankm += _pi;
55513       _pi *= SWIG_MAXCASTRANK;
55514       {
55515         {
55516           {
55517             /* wrapped vector? */
55518             std::vector< std::string >* v;
55519             if (SWIG_ConvertPtr(ST(2),(void **) &v,
55520                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
55521               _v = 1;
55522             } else if (SvROK(ST(2))) {
55523               /* native sequence? */
55524               AV *av = (AV *)SvRV(ST(2));
55525               if (SvTYPE(av) == SVt_PVAV) {
55526                 I32 len = av_len(av) + 1;
55527                 if (len == 0) {
55528                   /* an empty sequence can be of any type */
55529                   _v = 1;
55530                 } else {
55531                   /* check the first element only */
55532                   SV **tv = av_fetch(av, 0, 0);
55533                   if (SvPOK(*tv))
55534                   _v = 1;
55535                   else
55536                   _v = 0;
55537                 }
55538               }
55539             } else {
55540               _v = 0;
55541             }
55542           }
55543         }
55544       }
55545       if (!_v) goto check_3;
55546       _ranki += _v*_pi;
55547       _rankm += _pi;
55548       _pi *= SWIG_MAXCASTRANK;
55549       {
55550         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), (std::string**)(0));
55551         _v = SWIG_CheckState(res);
55552       }
55553       if (!_v) goto check_3;
55554       _ranki += _v*_pi;
55555       _rankm += _pi;
55556       _pi *= SWIG_MAXCASTRANK;
55557       {
55558         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(4), (std::string**)(0));
55559         _v = SWIG_CheckState(res);
55560       }
55561       if (!_v) goto check_3;
55562       _ranki += _v*_pi;
55563       _rankm += _pi;
55564       _pi *= SWIG_MAXCASTRANK;
55565       if (!_index || (_ranki < _rank)) {
55566         _rank = _ranki; _index = 3;
55567         if (_rank == _rankm) goto dispatch;
55568       }
55569     }
55570   check_3:
55571 
55572     if (items == 6) {
55573       SWIG_TypeRank _ranki = 0;
55574       SWIG_TypeRank _rankm = 0;
55575       SWIG_TypeRank _pi = 1;
55576       int _v = 0;
55577       {
55578         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
55579         _v = SWIG_CheckState(res);
55580       }
55581       if (!_v) goto check_4;
55582       _ranki += _v*_pi;
55583       _rankm += _pi;
55584       _pi *= SWIG_MAXCASTRANK;
55585       {
55586         {
55587           {
55588             /* wrapped vector? */
55589             std::vector< std::string >* v;
55590             if (SWIG_ConvertPtr(ST(1),(void **) &v,
55591                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
55592               _v = 1;
55593             } else if (SvROK(ST(1))) {
55594               /* native sequence? */
55595               AV *av = (AV *)SvRV(ST(1));
55596               if (SvTYPE(av) == SVt_PVAV) {
55597                 I32 len = av_len(av) + 1;
55598                 if (len == 0) {
55599                   /* an empty sequence can be of any type */
55600                   _v = 1;
55601                 } else {
55602                   /* check the first element only */
55603                   SV **tv = av_fetch(av, 0, 0);
55604                   if (SvPOK(*tv))
55605                   _v = 1;
55606                   else
55607                   _v = 0;
55608                 }
55609               }
55610             } else {
55611               _v = 0;
55612             }
55613           }
55614         }
55615       }
55616       if (!_v) goto check_4;
55617       _ranki += _v*_pi;
55618       _rankm += _pi;
55619       _pi *= SWIG_MAXCASTRANK;
55620       {
55621         {
55622           {
55623             /* wrapped vector? */
55624             std::vector< std::string >* v;
55625             if (SWIG_ConvertPtr(ST(2),(void **) &v,
55626                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
55627               _v = 1;
55628             } else if (SvROK(ST(2))) {
55629               /* native sequence? */
55630               AV *av = (AV *)SvRV(ST(2));
55631               if (SvTYPE(av) == SVt_PVAV) {
55632                 I32 len = av_len(av) + 1;
55633                 if (len == 0) {
55634                   /* an empty sequence can be of any type */
55635                   _v = 1;
55636                 } else {
55637                   /* check the first element only */
55638                   SV **tv = av_fetch(av, 0, 0);
55639                   if (SvPOK(*tv))
55640                   _v = 1;
55641                   else
55642                   _v = 0;
55643                 }
55644               }
55645             } else {
55646               _v = 0;
55647             }
55648           }
55649         }
55650       }
55651       if (!_v) goto check_4;
55652       _ranki += _v*_pi;
55653       _rankm += _pi;
55654       _pi *= SWIG_MAXCASTRANK;
55655       {
55656         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), (std::string**)(0));
55657         _v = SWIG_CheckState(res);
55658       }
55659       if (!_v) goto check_4;
55660       _ranki += _v*_pi;
55661       _rankm += _pi;
55662       _pi *= SWIG_MAXCASTRANK;
55663       {
55664         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(4), (std::string**)(0));
55665         _v = SWIG_CheckState(res);
55666       }
55667       if (!_v) goto check_4;
55668       _ranki += _v*_pi;
55669       _rankm += _pi;
55670       _pi *= SWIG_MAXCASTRANK;
55671       {
55672         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(5), (std::string**)(0));
55673         _v = SWIG_CheckState(res);
55674       }
55675       if (!_v) goto check_4;
55676       _ranki += _v*_pi;
55677       _rankm += _pi;
55678       _pi *= SWIG_MAXCASTRANK;
55679       if (!_index || (_ranki < _rank)) {
55680         _rank = _ranki; _index = 4;
55681         if (_rank == _rankm) goto dispatch;
55682       }
55683     }
55684   check_4:
55685 
55686     if (items == 7) {
55687       SWIG_TypeRank _ranki = 0;
55688       SWIG_TypeRank _rankm = 0;
55689       SWIG_TypeRank _pi = 1;
55690       int _v = 0;
55691       {
55692         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
55693         _v = SWIG_CheckState(res);
55694       }
55695       if (!_v) goto check_5;
55696       _ranki += _v*_pi;
55697       _rankm += _pi;
55698       _pi *= SWIG_MAXCASTRANK;
55699       {
55700         {
55701           {
55702             /* wrapped vector? */
55703             std::vector< std::string >* v;
55704             if (SWIG_ConvertPtr(ST(1),(void **) &v,
55705                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
55706               _v = 1;
55707             } else if (SvROK(ST(1))) {
55708               /* native sequence? */
55709               AV *av = (AV *)SvRV(ST(1));
55710               if (SvTYPE(av) == SVt_PVAV) {
55711                 I32 len = av_len(av) + 1;
55712                 if (len == 0) {
55713                   /* an empty sequence can be of any type */
55714                   _v = 1;
55715                 } else {
55716                   /* check the first element only */
55717                   SV **tv = av_fetch(av, 0, 0);
55718                   if (SvPOK(*tv))
55719                   _v = 1;
55720                   else
55721                   _v = 0;
55722                 }
55723               }
55724             } else {
55725               _v = 0;
55726             }
55727           }
55728         }
55729       }
55730       if (!_v) goto check_5;
55731       _ranki += _v*_pi;
55732       _rankm += _pi;
55733       _pi *= SWIG_MAXCASTRANK;
55734       {
55735         {
55736           {
55737             /* wrapped vector? */
55738             std::vector< std::string >* v;
55739             if (SWIG_ConvertPtr(ST(2),(void **) &v,
55740                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
55741               _v = 1;
55742             } else if (SvROK(ST(2))) {
55743               /* native sequence? */
55744               AV *av = (AV *)SvRV(ST(2));
55745               if (SvTYPE(av) == SVt_PVAV) {
55746                 I32 len = av_len(av) + 1;
55747                 if (len == 0) {
55748                   /* an empty sequence can be of any type */
55749                   _v = 1;
55750                 } else {
55751                   /* check the first element only */
55752                   SV **tv = av_fetch(av, 0, 0);
55753                   if (SvPOK(*tv))
55754                   _v = 1;
55755                   else
55756                   _v = 0;
55757                 }
55758               }
55759             } else {
55760               _v = 0;
55761             }
55762           }
55763         }
55764       }
55765       if (!_v) goto check_5;
55766       _ranki += _v*_pi;
55767       _rankm += _pi;
55768       _pi *= SWIG_MAXCASTRANK;
55769       {
55770         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), (std::string**)(0));
55771         _v = SWIG_CheckState(res);
55772       }
55773       if (!_v) goto check_5;
55774       _ranki += _v*_pi;
55775       _rankm += _pi;
55776       _pi *= SWIG_MAXCASTRANK;
55777       {
55778         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(4), (std::string**)(0));
55779         _v = SWIG_CheckState(res);
55780       }
55781       if (!_v) goto check_5;
55782       _ranki += _v*_pi;
55783       _rankm += _pi;
55784       _pi *= SWIG_MAXCASTRANK;
55785       {
55786         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(5), (std::string**)(0));
55787         _v = SWIG_CheckState(res);
55788       }
55789       if (!_v) goto check_5;
55790       _ranki += _v*_pi;
55791       _rankm += _pi;
55792       _pi *= SWIG_MAXCASTRANK;
55793       {
55794         {
55795           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
55796           _v = SWIG_CheckState(res);
55797         }
55798       }
55799       if (!_v) goto check_5;
55800       _ranki += _v*_pi;
55801       _rankm += _pi;
55802       _pi *= SWIG_MAXCASTRANK;
55803       if (!_index || (_ranki < _rank)) {
55804         _rank = _ranki; _index = 5;
55805         if (_rank == _rankm) goto dispatch;
55806       }
55807     }
55808   check_5:
55809 
55810   dispatch:
55811     switch(_index) {
55812     case 1:
55813       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_msa_write__SWIG_4); return;
55814     case 2:
55815       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_msa_write__SWIG_3); return;
55816     case 3:
55817       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_msa_write__SWIG_2); return;
55818     case 4:
55819       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_msa_write__SWIG_1); return;
55820     case 5:
55821       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_msa_write__SWIG_0); return;
55822     }
55823   }
55824 
55825   croak("No matching function for overloaded 'file_msa_write'");
55826   XSRETURN(0);
55827 }
55828 
55829 
XS(_wrap_file_msa_read__SWIG_0)55830 XS(_wrap_file_msa_read__SWIG_0) {
55831   {
55832     std::string arg1 ;
55833     std::vector< std::string > *arg2 = (std::vector< std::string > *) 0 ;
55834     std::vector< std::string > *arg3 = (std::vector< std::string > *) 0 ;
55835     std::string *arg4 = (std::string *) 0 ;
55836     std::string *arg5 = (std::string *) 0 ;
55837     unsigned int arg6 ;
55838     std::vector< std::string > junk2 ;
55839     std::vector< std::string > junk3 ;
55840     std::string temp4 ;
55841     int res4 = SWIG_TMPOBJ ;
55842     std::string temp5 ;
55843     int res5 = SWIG_TMPOBJ ;
55844     unsigned int val6 ;
55845     int ecode6 = 0 ;
55846     int argvi = 0;
55847     int result;
55848     dXSARGS;
55849 
55850     {
55851       arg2 = &junk2;
55852     }
55853     {
55854       arg3 = &junk3;
55855     }
55856     arg4 = &temp4;
55857     arg5 = &temp5;
55858     if ((items < 2) || (items > 2)) {
55859       SWIG_croak("Usage: file_msa_read(filename,options);");
55860     }
55861     {
55862       std::string *ptr = (std::string *)0;
55863       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
55864       if (!SWIG_IsOK(res) || !ptr) {
55865         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_read" "', argument " "1"" of type '" "std::string""'");
55866       }
55867       arg1 = *ptr;
55868       if (SWIG_IsNewObj(res)) delete ptr;
55869     }
55870     ecode6 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val6);
55871     if (!SWIG_IsOK(ecode6)) {
55872       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "file_msa_read" "', argument " "6"" of type '" "unsigned int""'");
55873     }
55874     arg6 = static_cast< unsigned int >(val6);
55875     {
55876       try {
55877         result = (int)my_file_msa_read(arg1,arg2,arg3,arg4,arg5,arg6);
55878       } catch (const std::exception& e) {
55879         SWIG_exception(SWIG_RuntimeError, e.what());
55880       }
55881     }
55882     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
55883     {
55884       SV **svs;
55885       int i = 0;
55886       svs = (SV **) malloc(arg2->size() * sizeof(SV *));
55887       for (std::vector<std::string>::iterator it = arg2->begin(); it != arg2->end(); it++, i++) {
55888         svs[i] = sv_newmortal();
55889         sv_setpv((SV*)svs[i], it->c_str());
55890       }
55891       ST(argvi) = newRV_noinc((SV*)av_make(arg2->size(), svs));
55892       sv_2mortal( ST(argvi) );
55893       free(svs);
55894       argvi++;
55895     }
55896     {
55897       SV **svs;
55898       int i = 0;
55899       svs = (SV **) malloc(arg3->size() * sizeof(SV *));
55900       for (std::vector<std::string>::iterator it = arg3->begin(); it != arg3->end(); it++, i++) {
55901         svs[i] = sv_newmortal();
55902         sv_setpv((SV*)svs[i], it->c_str());
55903       }
55904       ST(argvi) = newRV_noinc((SV*)av_make(arg3->size(), svs));
55905       sv_2mortal( ST(argvi) );
55906       free(svs);
55907       argvi++;
55908     }
55909     if (SWIG_IsTmpObj(res4)) {
55910       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1((*arg4)); argvi++  ;
55911     } else {
55912       int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0) : 0;
55913       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_std__string, new_flags); argvi++  ;
55914     }
55915     if (SWIG_IsTmpObj(res5)) {
55916       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1((*arg5)); argvi++  ;
55917     } else {
55918       int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0) : 0;
55919       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_std__string, new_flags); argvi++  ;
55920     }
55921 
55922 
55923 
55924 
55925 
55926 
55927     XSRETURN(argvi);
55928   fail:
55929 
55930 
55931 
55932 
55933 
55934 
55935     SWIG_croak_null();
55936   }
55937 }
55938 
55939 
XS(_wrap_file_msa_read__SWIG_1)55940 XS(_wrap_file_msa_read__SWIG_1) {
55941   {
55942     std::string arg1 ;
55943     std::vector< std::string > *arg2 = (std::vector< std::string > *) 0 ;
55944     std::vector< std::string > *arg3 = (std::vector< std::string > *) 0 ;
55945     std::string *arg4 = (std::string *) 0 ;
55946     std::string *arg5 = (std::string *) 0 ;
55947     std::vector< std::string > junk2 ;
55948     std::vector< std::string > junk3 ;
55949     std::string temp4 ;
55950     int res4 = SWIG_TMPOBJ ;
55951     std::string temp5 ;
55952     int res5 = SWIG_TMPOBJ ;
55953     int argvi = 0;
55954     int result;
55955     dXSARGS;
55956 
55957     {
55958       arg2 = &junk2;
55959     }
55960     {
55961       arg3 = &junk3;
55962     }
55963     arg4 = &temp4;
55964     arg5 = &temp5;
55965     if ((items < 1) || (items > 1)) {
55966       SWIG_croak("Usage: file_msa_read(filename);");
55967     }
55968     {
55969       std::string *ptr = (std::string *)0;
55970       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
55971       if (!SWIG_IsOK(res) || !ptr) {
55972         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_msa_read" "', argument " "1"" of type '" "std::string""'");
55973       }
55974       arg1 = *ptr;
55975       if (SWIG_IsNewObj(res)) delete ptr;
55976     }
55977     {
55978       try {
55979         result = (int)my_file_msa_read(arg1,arg2,arg3,arg4,arg5);
55980       } catch (const std::exception& e) {
55981         SWIG_exception(SWIG_RuntimeError, e.what());
55982       }
55983     }
55984     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
55985     {
55986       SV **svs;
55987       int i = 0;
55988       svs = (SV **) malloc(arg2->size() * sizeof(SV *));
55989       for (std::vector<std::string>::iterator it = arg2->begin(); it != arg2->end(); it++, i++) {
55990         svs[i] = sv_newmortal();
55991         sv_setpv((SV*)svs[i], it->c_str());
55992       }
55993       ST(argvi) = newRV_noinc((SV*)av_make(arg2->size(), svs));
55994       sv_2mortal( ST(argvi) );
55995       free(svs);
55996       argvi++;
55997     }
55998     {
55999       SV **svs;
56000       int i = 0;
56001       svs = (SV **) malloc(arg3->size() * sizeof(SV *));
56002       for (std::vector<std::string>::iterator it = arg3->begin(); it != arg3->end(); it++, i++) {
56003         svs[i] = sv_newmortal();
56004         sv_setpv((SV*)svs[i], it->c_str());
56005       }
56006       ST(argvi) = newRV_noinc((SV*)av_make(arg3->size(), svs));
56007       sv_2mortal( ST(argvi) );
56008       free(svs);
56009       argvi++;
56010     }
56011     if (SWIG_IsTmpObj(res4)) {
56012       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1((*arg4)); argvi++  ;
56013     } else {
56014       int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0) : 0;
56015       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_std__string, new_flags); argvi++  ;
56016     }
56017     if (SWIG_IsTmpObj(res5)) {
56018       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1((*arg5)); argvi++  ;
56019     } else {
56020       int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0) : 0;
56021       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_std__string, new_flags); argvi++  ;
56022     }
56023 
56024 
56025 
56026 
56027 
56028     XSRETURN(argvi);
56029   fail:
56030 
56031 
56032 
56033 
56034 
56035     SWIG_croak_null();
56036   }
56037 }
56038 
56039 
XS(_wrap_file_msa_read)56040 XS(_wrap_file_msa_read) {
56041   dXSARGS;
56042 
56043   {
56044     unsigned long _index = 0;
56045     SWIG_TypeRank _rank = 0;
56046     if (items == 1) {
56047       SWIG_TypeRank _ranki = 0;
56048       SWIG_TypeRank _rankm = 0;
56049       SWIG_TypeRank _pi = 1;
56050       int _v = 0;
56051       {
56052         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
56053         _v = SWIG_CheckState(res);
56054       }
56055       if (!_v) goto check_1;
56056       _ranki += _v*_pi;
56057       _rankm += _pi;
56058       _pi *= SWIG_MAXCASTRANK;
56059       if (!_index || (_ranki < _rank)) {
56060         _rank = _ranki; _index = 1;
56061         if (_rank == _rankm) goto dispatch;
56062       }
56063     }
56064   check_1:
56065 
56066     if (items == 2) {
56067       SWIG_TypeRank _ranki = 0;
56068       SWIG_TypeRank _rankm = 0;
56069       SWIG_TypeRank _pi = 1;
56070       int _v = 0;
56071       {
56072         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
56073         _v = SWIG_CheckState(res);
56074       }
56075       if (!_v) goto check_2;
56076       _ranki += _v*_pi;
56077       _rankm += _pi;
56078       _pi *= SWIG_MAXCASTRANK;
56079       {
56080         {
56081           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
56082           _v = SWIG_CheckState(res);
56083         }
56084       }
56085       if (!_v) goto check_2;
56086       _ranki += _v*_pi;
56087       _rankm += _pi;
56088       _pi *= SWIG_MAXCASTRANK;
56089       if (!_index || (_ranki < _rank)) {
56090         _rank = _ranki; _index = 2;
56091         if (_rank == _rankm) goto dispatch;
56092       }
56093     }
56094   check_2:
56095 
56096   dispatch:
56097     switch(_index) {
56098     case 1:
56099       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_msa_read__SWIG_1); return;
56100     case 2:
56101       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_msa_read__SWIG_0); return;
56102     }
56103   }
56104 
56105   croak("No matching function for overloaded 'file_msa_read'");
56106   XSRETURN(0);
56107 }
56108 
56109 
XS(_wrap_file_msa_read_record__SWIG_0)56110 XS(_wrap_file_msa_read_record__SWIG_0) {
56111   {
56112     FILE *arg1 = (FILE *) 0 ;
56113     std::vector< std::string > *arg2 = (std::vector< std::string > *) 0 ;
56114     std::vector< std::string > *arg3 = (std::vector< std::string > *) 0 ;
56115     std::string *arg4 = (std::string *) 0 ;
56116     std::string *arg5 = (std::string *) 0 ;
56117     unsigned int arg6 ;
56118     std::vector< std::string > junk2 ;
56119     std::vector< std::string > junk3 ;
56120     std::string temp4 ;
56121     int res4 = SWIG_TMPOBJ ;
56122     std::string temp5 ;
56123     int res5 = SWIG_TMPOBJ ;
56124     unsigned int val6 ;
56125     int ecode6 = 0 ;
56126     int argvi = 0;
56127     int result;
56128     dXSARGS;
56129 
56130     {
56131       arg2 = &junk2;
56132     }
56133     {
56134       arg3 = &junk3;
56135     }
56136     arg4 = &temp4;
56137     arg5 = &temp5;
56138     if ((items < 2) || (items > 2)) {
56139       SWIG_croak("Usage: file_msa_read_record(filehandle,options);");
56140     }
56141     {
56142       if (SvOK(ST(0))) /* check for undef */
56143       arg1 = PerlIO_findFILE(IoIFP(sv_2io(ST(0))));
56144       else  arg1 = NULL;
56145     }
56146     ecode6 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val6);
56147     if (!SWIG_IsOK(ecode6)) {
56148       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "file_msa_read_record" "', argument " "6"" of type '" "unsigned int""'");
56149     }
56150     arg6 = static_cast< unsigned int >(val6);
56151     {
56152       try {
56153         result = (int)my_file_msa_read_record(arg1,arg2,arg3,arg4,arg5,arg6);
56154       } catch (const std::exception& e) {
56155         SWIG_exception(SWIG_RuntimeError, e.what());
56156       }
56157     }
56158     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
56159     {
56160       SV **svs;
56161       int i = 0;
56162       svs = (SV **) malloc(arg2->size() * sizeof(SV *));
56163       for (std::vector<std::string>::iterator it = arg2->begin(); it != arg2->end(); it++, i++) {
56164         svs[i] = sv_newmortal();
56165         sv_setpv((SV*)svs[i], it->c_str());
56166       }
56167       ST(argvi) = newRV_noinc((SV*)av_make(arg2->size(), svs));
56168       sv_2mortal( ST(argvi) );
56169       free(svs);
56170       argvi++;
56171     }
56172     {
56173       SV **svs;
56174       int i = 0;
56175       svs = (SV **) malloc(arg3->size() * sizeof(SV *));
56176       for (std::vector<std::string>::iterator it = arg3->begin(); it != arg3->end(); it++, i++) {
56177         svs[i] = sv_newmortal();
56178         sv_setpv((SV*)svs[i], it->c_str());
56179       }
56180       ST(argvi) = newRV_noinc((SV*)av_make(arg3->size(), svs));
56181       sv_2mortal( ST(argvi) );
56182       free(svs);
56183       argvi++;
56184     }
56185     if (SWIG_IsTmpObj(res4)) {
56186       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1((*arg4)); argvi++  ;
56187     } else {
56188       int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0) : 0;
56189       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_std__string, new_flags); argvi++  ;
56190     }
56191     if (SWIG_IsTmpObj(res5)) {
56192       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1((*arg5)); argvi++  ;
56193     } else {
56194       int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0) : 0;
56195       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_std__string, new_flags); argvi++  ;
56196     }
56197 
56198 
56199 
56200 
56201 
56202 
56203     XSRETURN(argvi);
56204   fail:
56205 
56206 
56207 
56208 
56209 
56210 
56211     SWIG_croak_null();
56212   }
56213 }
56214 
56215 
XS(_wrap_file_msa_read_record__SWIG_1)56216 XS(_wrap_file_msa_read_record__SWIG_1) {
56217   {
56218     FILE *arg1 = (FILE *) 0 ;
56219     std::vector< std::string > *arg2 = (std::vector< std::string > *) 0 ;
56220     std::vector< std::string > *arg3 = (std::vector< std::string > *) 0 ;
56221     std::string *arg4 = (std::string *) 0 ;
56222     std::string *arg5 = (std::string *) 0 ;
56223     std::vector< std::string > junk2 ;
56224     std::vector< std::string > junk3 ;
56225     std::string temp4 ;
56226     int res4 = SWIG_TMPOBJ ;
56227     std::string temp5 ;
56228     int res5 = SWIG_TMPOBJ ;
56229     int argvi = 0;
56230     int result;
56231     dXSARGS;
56232 
56233     {
56234       arg2 = &junk2;
56235     }
56236     {
56237       arg3 = &junk3;
56238     }
56239     arg4 = &temp4;
56240     arg5 = &temp5;
56241     if ((items < 1) || (items > 1)) {
56242       SWIG_croak("Usage: file_msa_read_record(filehandle);");
56243     }
56244     {
56245       if (SvOK(ST(0))) /* check for undef */
56246       arg1 = PerlIO_findFILE(IoIFP(sv_2io(ST(0))));
56247       else  arg1 = NULL;
56248     }
56249     {
56250       try {
56251         result = (int)my_file_msa_read_record(arg1,arg2,arg3,arg4,arg5);
56252       } catch (const std::exception& e) {
56253         SWIG_exception(SWIG_RuntimeError, e.what());
56254       }
56255     }
56256     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
56257     {
56258       SV **svs;
56259       int i = 0;
56260       svs = (SV **) malloc(arg2->size() * sizeof(SV *));
56261       for (std::vector<std::string>::iterator it = arg2->begin(); it != arg2->end(); it++, i++) {
56262         svs[i] = sv_newmortal();
56263         sv_setpv((SV*)svs[i], it->c_str());
56264       }
56265       ST(argvi) = newRV_noinc((SV*)av_make(arg2->size(), svs));
56266       sv_2mortal( ST(argvi) );
56267       free(svs);
56268       argvi++;
56269     }
56270     {
56271       SV **svs;
56272       int i = 0;
56273       svs = (SV **) malloc(arg3->size() * sizeof(SV *));
56274       for (std::vector<std::string>::iterator it = arg3->begin(); it != arg3->end(); it++, i++) {
56275         svs[i] = sv_newmortal();
56276         sv_setpv((SV*)svs[i], it->c_str());
56277       }
56278       ST(argvi) = newRV_noinc((SV*)av_make(arg3->size(), svs));
56279       sv_2mortal( ST(argvi) );
56280       free(svs);
56281       argvi++;
56282     }
56283     if (SWIG_IsTmpObj(res4)) {
56284       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1((*arg4)); argvi++  ;
56285     } else {
56286       int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0) : 0;
56287       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_std__string, new_flags); argvi++  ;
56288     }
56289     if (SWIG_IsTmpObj(res5)) {
56290       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_std_string  SWIG_PERL_CALL_ARGS_1((*arg5)); argvi++  ;
56291     } else {
56292       int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0) : 0;
56293       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_std__string, new_flags); argvi++  ;
56294     }
56295 
56296 
56297 
56298 
56299 
56300     XSRETURN(argvi);
56301   fail:
56302 
56303 
56304 
56305 
56306 
56307     SWIG_croak_null();
56308   }
56309 }
56310 
56311 
XS(_wrap_file_msa_read_record)56312 XS(_wrap_file_msa_read_record) {
56313   dXSARGS;
56314 
56315   {
56316     unsigned long _index = 0;
56317     SWIG_TypeRank _rank = 0;
56318     if (items == 1) {
56319       SWIG_TypeRank _ranki = 0;
56320       SWIG_TypeRank _rankm = 0;
56321       SWIG_TypeRank _pi = 1;
56322       int _v = 0;
56323       {
56324         {
56325           if (SvOK(ST(0)))
56326           _v = (sv_2io(ST(0))) ? 1 : 0;
56327         }
56328       }
56329       if (!_v) goto check_1;
56330       _ranki += _v*_pi;
56331       _rankm += _pi;
56332       _pi *= SWIG_MAXCASTRANK;
56333       if (!_index || (_ranki < _rank)) {
56334         _rank = _ranki; _index = 1;
56335         if (_rank == _rankm) goto dispatch;
56336       }
56337     }
56338   check_1:
56339 
56340     if (items == 2) {
56341       SWIG_TypeRank _ranki = 0;
56342       SWIG_TypeRank _rankm = 0;
56343       SWIG_TypeRank _pi = 1;
56344       int _v = 0;
56345       {
56346         {
56347           if (SvOK(ST(0)))
56348           _v = (sv_2io(ST(0))) ? 1 : 0;
56349         }
56350       }
56351       if (!_v) goto check_2;
56352       _ranki += _v*_pi;
56353       _rankm += _pi;
56354       _pi *= SWIG_MAXCASTRANK;
56355       {
56356         {
56357           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
56358           _v = SWIG_CheckState(res);
56359         }
56360       }
56361       if (!_v) goto check_2;
56362       _ranki += _v*_pi;
56363       _rankm += _pi;
56364       _pi *= SWIG_MAXCASTRANK;
56365       if (!_index || (_ranki < _rank)) {
56366         _rank = _ranki; _index = 2;
56367         if (_rank == _rankm) goto dispatch;
56368       }
56369     }
56370   check_2:
56371 
56372   dispatch:
56373     switch(_index) {
56374     case 1:
56375       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_msa_read_record__SWIG_1); return;
56376     case 2:
56377       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_msa_read_record__SWIG_0); return;
56378     }
56379   }
56380 
56381   croak("No matching function for overloaded 'file_msa_read_record'");
56382   XSRETURN(0);
56383 }
56384 
56385 
XS(_wrap_seq_encode__SWIG_0)56386 XS(_wrap_seq_encode__SWIG_0) {
56387   {
56388     std::string arg1 ;
56389     vrna_md_t *arg2 = (vrna_md_t *) 0 ;
56390     void *argp2 = 0 ;
56391     int res2 = 0 ;
56392     int argvi = 0;
56393     std::vector< int > result;
56394     dXSARGS;
56395 
56396     if ((items < 2) || (items > 2)) {
56397       SWIG_croak("Usage: seq_encode(sequence,md_p);");
56398     }
56399     {
56400       std::string *ptr = (std::string *)0;
56401       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
56402       if (!SWIG_IsOK(res) || !ptr) {
56403         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "seq_encode" "', argument " "1"" of type '" "std::string""'");
56404       }
56405       arg1 = *ptr;
56406       if (SWIG_IsNewObj(res)) delete ptr;
56407     }
56408     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_md_t, 0 |  0 );
56409     if (!SWIG_IsOK(res2)) {
56410       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "seq_encode" "', argument " "2"" of type '" "vrna_md_t *""'");
56411     }
56412     arg2 = reinterpret_cast< vrna_md_t * >(argp2);
56413     {
56414       try {
56415         result = my_seq_encode(arg1,arg2);
56416       } catch (const std::exception& e) {
56417         SWIG_exception(SWIG_RuntimeError, e.what());
56418       }
56419     }
56420     {
56421       size_t len = (&result)->size();
56422       SV **svs = new SV*[len];
56423       for (size_t i=0; i<len; i++) {
56424         svs[i] = sv_newmortal();
56425         sv_setiv(svs[i], result[i]);
56426       }
56427       AV *myav = av_make(len, svs);
56428       delete[] svs;
56429       ST(argvi) = newRV_noinc((SV*) myav);
56430       sv_2mortal(ST(argvi));
56431       argvi++;
56432     }
56433 
56434 
56435     XSRETURN(argvi);
56436   fail:
56437 
56438 
56439     SWIG_croak_null();
56440   }
56441 }
56442 
56443 
XS(_wrap_seq_encode__SWIG_1)56444 XS(_wrap_seq_encode__SWIG_1) {
56445   {
56446     std::string arg1 ;
56447     int argvi = 0;
56448     std::vector< int > result;
56449     dXSARGS;
56450 
56451     if ((items < 1) || (items > 1)) {
56452       SWIG_croak("Usage: seq_encode(sequence);");
56453     }
56454     {
56455       std::string *ptr = (std::string *)0;
56456       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
56457       if (!SWIG_IsOK(res) || !ptr) {
56458         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "seq_encode" "', argument " "1"" of type '" "std::string""'");
56459       }
56460       arg1 = *ptr;
56461       if (SWIG_IsNewObj(res)) delete ptr;
56462     }
56463     {
56464       try {
56465         result = my_seq_encode(arg1);
56466       } catch (const std::exception& e) {
56467         SWIG_exception(SWIG_RuntimeError, e.what());
56468       }
56469     }
56470     {
56471       size_t len = (&result)->size();
56472       SV **svs = new SV*[len];
56473       for (size_t i=0; i<len; i++) {
56474         svs[i] = sv_newmortal();
56475         sv_setiv(svs[i], result[i]);
56476       }
56477       AV *myav = av_make(len, svs);
56478       delete[] svs;
56479       ST(argvi) = newRV_noinc((SV*) myav);
56480       sv_2mortal(ST(argvi));
56481       argvi++;
56482     }
56483 
56484     XSRETURN(argvi);
56485   fail:
56486 
56487     SWIG_croak_null();
56488   }
56489 }
56490 
56491 
XS(_wrap_seq_encode)56492 XS(_wrap_seq_encode) {
56493   dXSARGS;
56494 
56495   {
56496     unsigned long _index = 0;
56497     SWIG_TypeRank _rank = 0;
56498     if (items == 1) {
56499       SWIG_TypeRank _ranki = 0;
56500       SWIG_TypeRank _rankm = 0;
56501       SWIG_TypeRank _pi = 1;
56502       int _v = 0;
56503       {
56504         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
56505         _v = SWIG_CheckState(res);
56506       }
56507       if (!_v) goto check_1;
56508       _ranki += _v*_pi;
56509       _rankm += _pi;
56510       _pi *= SWIG_MAXCASTRANK;
56511       if (!_index || (_ranki < _rank)) {
56512         _rank = _ranki; _index = 1;
56513         if (_rank == _rankm) goto dispatch;
56514       }
56515     }
56516   check_1:
56517 
56518     if (items == 2) {
56519       SWIG_TypeRank _ranki = 0;
56520       SWIG_TypeRank _rankm = 0;
56521       SWIG_TypeRank _pi = 1;
56522       int _v = 0;
56523       {
56524         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
56525         _v = SWIG_CheckState(res);
56526       }
56527       if (!_v) goto check_2;
56528       _ranki += _v*_pi;
56529       _rankm += _pi;
56530       _pi *= SWIG_MAXCASTRANK;
56531       {
56532         void *vptr = 0;
56533         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_md_t, 0);
56534         _v = SWIG_CheckState(res);
56535       }
56536       if (!_v) goto check_2;
56537       _ranki += _v*_pi;
56538       _rankm += _pi;
56539       _pi *= SWIG_MAXCASTRANK;
56540       if (!_index || (_ranki < _rank)) {
56541         _rank = _ranki; _index = 2;
56542         if (_rank == _rankm) goto dispatch;
56543       }
56544     }
56545   check_2:
56546 
56547   dispatch:
56548     switch(_index) {
56549     case 1:
56550       PUSHMARK(MARK); SWIG_CALLXS(_wrap_seq_encode__SWIG_1); return;
56551     case 2:
56552       PUSHMARK(MARK); SWIG_CALLXS(_wrap_seq_encode__SWIG_0); return;
56553     }
56554   }
56555 
56556   croak("No matching function for overloaded 'seq_encode'");
56557   XSRETURN(0);
56558 }
56559 
56560 
XS(_wrap_new_cmd)56561 XS(_wrap_new_cmd) {
56562   {
56563     int argvi = 0;
56564     vrna_command_s *result = 0 ;
56565     dXSARGS;
56566 
56567     if ((items < 0) || (items > 0)) {
56568       SWIG_croak("Usage: new_cmd();");
56569     }
56570     {
56571       try {
56572         result = (vrna_command_s *)new_vrna_command_s();
56573       } catch (const std::exception& e) {
56574         SWIG_exception(SWIG_RuntimeError, e.what());
56575       }
56576     }
56577     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_command_s, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
56578     XSRETURN(argvi);
56579   fail:
56580     SWIG_croak_null();
56581   }
56582 }
56583 
56584 
XS(_wrap_delete_cmd)56585 XS(_wrap_delete_cmd) {
56586   {
56587     vrna_command_s *arg1 = (vrna_command_s *) 0 ;
56588     void *argp1 = 0 ;
56589     int res1 = 0 ;
56590     int argvi = 0;
56591     dXSARGS;
56592 
56593     if ((items < 1) || (items > 1)) {
56594       SWIG_croak("Usage: delete_cmd(self);");
56595     }
56596     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_command_s, SWIG_POINTER_DISOWN |  0 );
56597     if (!SWIG_IsOK(res1)) {
56598       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_cmd" "', argument " "1"" of type '" "vrna_command_s *""'");
56599     }
56600     arg1 = reinterpret_cast< vrna_command_s * >(argp1);
56601     {
56602       try {
56603         delete_vrna_command_s(arg1);
56604       } catch (const std::exception& e) {
56605         SWIG_exception(SWIG_RuntimeError, e.what());
56606       }
56607     }
56608     ST(argvi) = &PL_sv_undef;
56609 
56610     XSRETURN(argvi);
56611   fail:
56612 
56613     SWIG_croak_null();
56614   }
56615 }
56616 
56617 
XS(_wrap_file_commands_read__SWIG_0)56618 XS(_wrap_file_commands_read__SWIG_0) {
56619   {
56620     std::string arg1 ;
56621     unsigned int arg2 ;
56622     unsigned int val2 ;
56623     int ecode2 = 0 ;
56624     int argvi = 0;
56625     vrna_command_s *result = 0 ;
56626     dXSARGS;
56627 
56628     if ((items < 2) || (items > 2)) {
56629       SWIG_croak("Usage: file_commands_read(filename,options);");
56630     }
56631     {
56632       std::string *ptr = (std::string *)0;
56633       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
56634       if (!SWIG_IsOK(res) || !ptr) {
56635         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_commands_read" "', argument " "1"" of type '" "std::string""'");
56636       }
56637       arg1 = *ptr;
56638       if (SWIG_IsNewObj(res)) delete ptr;
56639     }
56640     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
56641     if (!SWIG_IsOK(ecode2)) {
56642       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "file_commands_read" "', argument " "2"" of type '" "unsigned int""'");
56643     }
56644     arg2 = static_cast< unsigned int >(val2);
56645     {
56646       try {
56647         result = (vrna_command_s *)my_file_commands_read(arg1,arg2);
56648       } catch (const std::exception& e) {
56649         SWIG_exception(SWIG_RuntimeError, e.what());
56650       }
56651     }
56652     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_command_s, 0 | SWIG_SHADOW); argvi++ ;
56653 
56654 
56655     XSRETURN(argvi);
56656   fail:
56657 
56658 
56659     SWIG_croak_null();
56660   }
56661 }
56662 
56663 
XS(_wrap_file_commands_read__SWIG_1)56664 XS(_wrap_file_commands_read__SWIG_1) {
56665   {
56666     std::string arg1 ;
56667     int argvi = 0;
56668     vrna_command_s *result = 0 ;
56669     dXSARGS;
56670 
56671     if ((items < 1) || (items > 1)) {
56672       SWIG_croak("Usage: file_commands_read(filename);");
56673     }
56674     {
56675       std::string *ptr = (std::string *)0;
56676       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
56677       if (!SWIG_IsOK(res) || !ptr) {
56678         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "file_commands_read" "', argument " "1"" of type '" "std::string""'");
56679       }
56680       arg1 = *ptr;
56681       if (SWIG_IsNewObj(res)) delete ptr;
56682     }
56683     {
56684       try {
56685         result = (vrna_command_s *)my_file_commands_read(arg1);
56686       } catch (const std::exception& e) {
56687         SWIG_exception(SWIG_RuntimeError, e.what());
56688       }
56689     }
56690     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_command_s, 0 | SWIG_SHADOW); argvi++ ;
56691 
56692     XSRETURN(argvi);
56693   fail:
56694 
56695     SWIG_croak_null();
56696   }
56697 }
56698 
56699 
XS(_wrap_file_commands_read)56700 XS(_wrap_file_commands_read) {
56701   dXSARGS;
56702 
56703   {
56704     unsigned long _index = 0;
56705     SWIG_TypeRank _rank = 0;
56706     if (items == 1) {
56707       SWIG_TypeRank _ranki = 0;
56708       SWIG_TypeRank _rankm = 0;
56709       SWIG_TypeRank _pi = 1;
56710       int _v = 0;
56711       {
56712         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
56713         _v = SWIG_CheckState(res);
56714       }
56715       if (!_v) goto check_1;
56716       _ranki += _v*_pi;
56717       _rankm += _pi;
56718       _pi *= SWIG_MAXCASTRANK;
56719       if (!_index || (_ranki < _rank)) {
56720         _rank = _ranki; _index = 1;
56721         if (_rank == _rankm) goto dispatch;
56722       }
56723     }
56724   check_1:
56725 
56726     if (items == 2) {
56727       SWIG_TypeRank _ranki = 0;
56728       SWIG_TypeRank _rankm = 0;
56729       SWIG_TypeRank _pi = 1;
56730       int _v = 0;
56731       {
56732         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
56733         _v = SWIG_CheckState(res);
56734       }
56735       if (!_v) goto check_2;
56736       _ranki += _v*_pi;
56737       _rankm += _pi;
56738       _pi *= SWIG_MAXCASTRANK;
56739       {
56740         {
56741           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
56742           _v = SWIG_CheckState(res);
56743         }
56744       }
56745       if (!_v) goto check_2;
56746       _ranki += _v*_pi;
56747       _rankm += _pi;
56748       _pi *= SWIG_MAXCASTRANK;
56749       if (!_index || (_ranki < _rank)) {
56750         _rank = _ranki; _index = 2;
56751         if (_rank == _rankm) goto dispatch;
56752       }
56753     }
56754   check_2:
56755 
56756   dispatch:
56757     switch(_index) {
56758     case 1:
56759       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_commands_read__SWIG_1); return;
56760     case 2:
56761       PUSHMARK(MARK); SWIG_CALLXS(_wrap_file_commands_read__SWIG_0); return;
56762     }
56763   }
56764 
56765   croak("No matching function for overloaded 'file_commands_read'");
56766   XSRETURN(0);
56767 }
56768 
56769 
XS(_wrap_enumerate_necklaces)56770 XS(_wrap_enumerate_necklaces) {
56771   {
56772     std::vector< unsigned int > arg1 ;
56773     std::vector< unsigned int > *v1 ;
56774     int argvi = 0;
56775     std::vector< std::vector< int > > result;
56776     dXSARGS;
56777 
56778     if ((items < 1) || (items > 1)) {
56779       SWIG_croak("Usage: enumerate_necklaces(entity_counts);");
56780     }
56781     {
56782       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
56783           SWIGTYPE_p_std__vectorT_unsigned_int_t,1) != -1){
56784         arg1 = *v1;
56785       } else if (SvROK(ST(0))) {
56786         AV *av = (AV *)SvRV(ST(0));
56787         if (SvTYPE(av) != SVt_PVAV)
56788         SWIG_croak("Type error in argument 1 of enumerate_necklaces. "
56789           "Expected an array of ""unsigned int");
56790         SV **tv;
56791         I32 len = av_len(av) + 1;
56792         for (int i=0; i<len; i++) {
56793           tv = av_fetch(av, i, 0);
56794           if (SvIOK(*tv)) {
56795             (&arg1)->push_back((unsigned int)SvIVX(*tv));
56796           } else {
56797             SWIG_croak("Type error in argument 1 of "
56798               "enumerate_necklaces. "
56799               "Expected an array of ""unsigned int");
56800           }
56801         }
56802       } else {
56803         SWIG_croak("Type error in argument 1 of enumerate_necklaces. "
56804           "Expected an array of ""unsigned int");
56805       }
56806     }
56807     {
56808       try {
56809         result = my_enumerate_necklaces(arg1);
56810       } catch (const std::exception& e) {
56811         SWIG_exception(SWIG_RuntimeError, e.what());
56812       }
56813     }
56814     {
56815       AV *arr = newAV();
56816       for(unsigned int i = 0; i < (&result)->size(); i++) {
56817         AV *vec = newAV();
56818         for(unsigned int j = 0; j < result[i].size(); j++) {
56819           SV *v = newSViv(result[i][j]);
56820           if (!av_store(vec, j, v))
56821           SvREFCNT_dec(v);
56822         }
56823         /* store reference to array */
56824         av_store(arr, i, newRV_noinc((SV*) vec));
56825       }
56826 
56827       ST(argvi) = newRV_noinc((SV*) arr);
56828       sv_2mortal( ST(argvi) );
56829       argvi++;
56830     }
56831     XSRETURN(argvi);
56832   fail:
56833     SWIG_croak_null();
56834   }
56835 }
56836 
56837 
XS(_wrap_rotational_symmetry__SWIG_0)56838 XS(_wrap_rotational_symmetry__SWIG_0) {
56839   {
56840     std::vector< unsigned int > arg1 ;
56841     std::vector< unsigned int > *v1 ;
56842     int argvi = 0;
56843     std::vector< unsigned int > result;
56844     dXSARGS;
56845 
56846     if ((items < 1) || (items > 1)) {
56847       SWIG_croak("Usage: rotational_symmetry(string);");
56848     }
56849     {
56850       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
56851           SWIGTYPE_p_std__vectorT_unsigned_int_t,1) != -1){
56852         arg1 = *v1;
56853       } else if (SvROK(ST(0))) {
56854         AV *av = (AV *)SvRV(ST(0));
56855         if (SvTYPE(av) != SVt_PVAV)
56856         SWIG_croak("Type error in argument 1 of rotational_symmetry. "
56857           "Expected an array of ""unsigned int");
56858         SV **tv;
56859         I32 len = av_len(av) + 1;
56860         for (int i=0; i<len; i++) {
56861           tv = av_fetch(av, i, 0);
56862           if (SvIOK(*tv)) {
56863             (&arg1)->push_back((unsigned int)SvIVX(*tv));
56864           } else {
56865             SWIG_croak("Type error in argument 1 of "
56866               "rotational_symmetry. "
56867               "Expected an array of ""unsigned int");
56868           }
56869         }
56870       } else {
56871         SWIG_croak("Type error in argument 1 of rotational_symmetry. "
56872           "Expected an array of ""unsigned int");
56873       }
56874     }
56875     {
56876       try {
56877         result = my_rotational_symmetry(arg1);
56878       } catch (const std::exception& e) {
56879         SWIG_exception(SWIG_RuntimeError, e.what());
56880       }
56881     }
56882     {
56883       size_t len = (&result)->size();
56884       SV **svs = new SV*[len];
56885       for (size_t i=0; i<len; i++) {
56886         svs[i] = sv_newmortal();
56887         sv_setiv(svs[i], result[i]);
56888       }
56889       AV *myav = av_make(len, svs);
56890       delete[] svs;
56891       ST(argvi) = newRV_noinc((SV*) myav);
56892       sv_2mortal(ST(argvi));
56893       argvi++;
56894     }
56895     XSRETURN(argvi);
56896   fail:
56897     SWIG_croak_null();
56898   }
56899 }
56900 
56901 
XS(_wrap_rotational_symmetry__SWIG_1)56902 XS(_wrap_rotational_symmetry__SWIG_1) {
56903   {
56904     std::string arg1 ;
56905     int argvi = 0;
56906     std::vector< unsigned int > result;
56907     dXSARGS;
56908 
56909     if ((items < 1) || (items > 1)) {
56910       SWIG_croak("Usage: rotational_symmetry(string);");
56911     }
56912     {
56913       std::string *ptr = (std::string *)0;
56914       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
56915       if (!SWIG_IsOK(res) || !ptr) {
56916         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "rotational_symmetry" "', argument " "1"" of type '" "std::string""'");
56917       }
56918       arg1 = *ptr;
56919       if (SWIG_IsNewObj(res)) delete ptr;
56920     }
56921     {
56922       try {
56923         result = my_rotational_symmetry(arg1);
56924       } catch (const std::exception& e) {
56925         SWIG_exception(SWIG_RuntimeError, e.what());
56926       }
56927     }
56928     {
56929       size_t len = (&result)->size();
56930       SV **svs = new SV*[len];
56931       for (size_t i=0; i<len; i++) {
56932         svs[i] = sv_newmortal();
56933         sv_setiv(svs[i], result[i]);
56934       }
56935       AV *myav = av_make(len, svs);
56936       delete[] svs;
56937       ST(argvi) = newRV_noinc((SV*) myav);
56938       sv_2mortal(ST(argvi));
56939       argvi++;
56940     }
56941 
56942     XSRETURN(argvi);
56943   fail:
56944 
56945     SWIG_croak_null();
56946   }
56947 }
56948 
56949 
XS(_wrap_rotational_symmetry)56950 XS(_wrap_rotational_symmetry) {
56951   dXSARGS;
56952 
56953   {
56954     unsigned long _index = 0;
56955     SWIG_TypeRank _rank = 0;
56956     if (items == 1) {
56957       SWIG_TypeRank _ranki = 0;
56958       SWIG_TypeRank _rankm = 0;
56959       SWIG_TypeRank _pi = 1;
56960       int _v = 0;
56961       {
56962         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
56963         _v = SWIG_CheckState(res);
56964       }
56965       if (!_v) goto check_1;
56966       _ranki += _v*_pi;
56967       _rankm += _pi;
56968       _pi *= SWIG_MAXCASTRANK;
56969       if (!_index || (_ranki < _rank)) {
56970         _rank = _ranki; _index = 1;
56971         if (_rank == _rankm) goto dispatch;
56972       }
56973     }
56974   check_1:
56975 
56976     if (items == 1) {
56977       SWIG_TypeRank _ranki = 0;
56978       SWIG_TypeRank _rankm = 0;
56979       SWIG_TypeRank _pi = 1;
56980       int _v = 0;
56981       {
56982         {
56983           {
56984             /* wrapped vector? */
56985             std::vector< unsigned int >* v;
56986             if (SWIG_ConvertPtr(ST(0),(void **) &v,
56987                 SWIGTYPE_p_std__vectorT_unsigned_int_t,0) != -1) {
56988               _v = 1;
56989             } else if (SvROK(ST(0))) {
56990               /* native sequence? */
56991               AV *av = (AV *)SvRV(ST(0));
56992               if (SvTYPE(av) == SVt_PVAV) {
56993                 I32 len = av_len(av) + 1;
56994                 if (len == 0) {
56995                   /* an empty sequence can be of any type */
56996                   _v = 1;
56997                 } else {
56998                   /* check the first element only */
56999                   SV **tv = av_fetch(av, 0, 0);
57000                   if (SvIOK(*tv))
57001                   _v = 1;
57002                   else
57003                   _v = 0;
57004                 }
57005               }
57006             } else {
57007               _v = 0;
57008             }
57009           }
57010         }
57011       }
57012       if (!_v) goto check_2;
57013       _ranki += _v*_pi;
57014       _rankm += _pi;
57015       _pi *= SWIG_MAXCASTRANK;
57016       if (!_index || (_ranki < _rank)) {
57017         _rank = _ranki; _index = 2;
57018         if (_rank == _rankm) goto dispatch;
57019       }
57020     }
57021   check_2:
57022 
57023   dispatch:
57024     switch(_index) {
57025     case 1:
57026       PUSHMARK(MARK); SWIG_CALLXS(_wrap_rotational_symmetry__SWIG_1); return;
57027     case 2:
57028       PUSHMARK(MARK); SWIG_CALLXS(_wrap_rotational_symmetry__SWIG_0); return;
57029     }
57030   }
57031 
57032   croak("No matching function for overloaded 'rotational_symmetry'");
57033   XSRETURN(0);
57034 }
57035 
57036 
XS(_wrap_duplexT_i_set)57037 XS(_wrap_duplexT_i_set) {
57038   {
57039     duplexT *arg1 = (duplexT *) 0 ;
57040     int arg2 ;
57041     void *argp1 = 0 ;
57042     int res1 = 0 ;
57043     int val2 ;
57044     int ecode2 = 0 ;
57045     int argvi = 0;
57046     dXSARGS;
57047 
57048     if ((items < 2) || (items > 2)) {
57049       SWIG_croak("Usage: duplexT_i_set(self,i);");
57050     }
57051     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplexT, 0 |  0 );
57052     if (!SWIG_IsOK(res1)) {
57053       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplexT_i_set" "', argument " "1"" of type '" "duplexT *""'");
57054     }
57055     arg1 = reinterpret_cast< duplexT * >(argp1);
57056     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
57057     if (!SWIG_IsOK(ecode2)) {
57058       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "duplexT_i_set" "', argument " "2"" of type '" "int""'");
57059     }
57060     arg2 = static_cast< int >(val2);
57061     if (arg1) (arg1)->i = arg2;
57062     ST(argvi) = &PL_sv_undef;
57063 
57064 
57065     XSRETURN(argvi);
57066   fail:
57067 
57068 
57069     SWIG_croak_null();
57070   }
57071 }
57072 
57073 
XS(_wrap_duplexT_i_get)57074 XS(_wrap_duplexT_i_get) {
57075   {
57076     duplexT *arg1 = (duplexT *) 0 ;
57077     void *argp1 = 0 ;
57078     int res1 = 0 ;
57079     int argvi = 0;
57080     int result;
57081     dXSARGS;
57082 
57083     if ((items < 1) || (items > 1)) {
57084       SWIG_croak("Usage: duplexT_i_get(self);");
57085     }
57086     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplexT, 0 |  0 );
57087     if (!SWIG_IsOK(res1)) {
57088       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplexT_i_get" "', argument " "1"" of type '" "duplexT *""'");
57089     }
57090     arg1 = reinterpret_cast< duplexT * >(argp1);
57091     result = (int) ((arg1)->i);
57092     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
57093 
57094     XSRETURN(argvi);
57095   fail:
57096 
57097     SWIG_croak_null();
57098   }
57099 }
57100 
57101 
XS(_wrap_duplexT_j_set)57102 XS(_wrap_duplexT_j_set) {
57103   {
57104     duplexT *arg1 = (duplexT *) 0 ;
57105     int arg2 ;
57106     void *argp1 = 0 ;
57107     int res1 = 0 ;
57108     int val2 ;
57109     int ecode2 = 0 ;
57110     int argvi = 0;
57111     dXSARGS;
57112 
57113     if ((items < 2) || (items > 2)) {
57114       SWIG_croak("Usage: duplexT_j_set(self,j);");
57115     }
57116     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplexT, 0 |  0 );
57117     if (!SWIG_IsOK(res1)) {
57118       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplexT_j_set" "', argument " "1"" of type '" "duplexT *""'");
57119     }
57120     arg1 = reinterpret_cast< duplexT * >(argp1);
57121     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
57122     if (!SWIG_IsOK(ecode2)) {
57123       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "duplexT_j_set" "', argument " "2"" of type '" "int""'");
57124     }
57125     arg2 = static_cast< int >(val2);
57126     if (arg1) (arg1)->j = arg2;
57127     ST(argvi) = &PL_sv_undef;
57128 
57129 
57130     XSRETURN(argvi);
57131   fail:
57132 
57133 
57134     SWIG_croak_null();
57135   }
57136 }
57137 
57138 
XS(_wrap_duplexT_j_get)57139 XS(_wrap_duplexT_j_get) {
57140   {
57141     duplexT *arg1 = (duplexT *) 0 ;
57142     void *argp1 = 0 ;
57143     int res1 = 0 ;
57144     int argvi = 0;
57145     int result;
57146     dXSARGS;
57147 
57148     if ((items < 1) || (items > 1)) {
57149       SWIG_croak("Usage: duplexT_j_get(self);");
57150     }
57151     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplexT, 0 |  0 );
57152     if (!SWIG_IsOK(res1)) {
57153       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplexT_j_get" "', argument " "1"" of type '" "duplexT *""'");
57154     }
57155     arg1 = reinterpret_cast< duplexT * >(argp1);
57156     result = (int) ((arg1)->j);
57157     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
57158 
57159     XSRETURN(argvi);
57160   fail:
57161 
57162     SWIG_croak_null();
57163   }
57164 }
57165 
57166 
XS(_wrap_duplexT_structure_set)57167 XS(_wrap_duplexT_structure_set) {
57168   {
57169     duplexT *arg1 = (duplexT *) 0 ;
57170     char *arg2 = (char *) 0 ;
57171     void *argp1 = 0 ;
57172     int res1 = 0 ;
57173     int res2 ;
57174     char *buf2 = 0 ;
57175     int alloc2 = 0 ;
57176     int argvi = 0;
57177     dXSARGS;
57178 
57179     if ((items < 2) || (items > 2)) {
57180       SWIG_croak("Usage: duplexT_structure_set(self,structure);");
57181     }
57182     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplexT, 0 |  0 );
57183     if (!SWIG_IsOK(res1)) {
57184       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplexT_structure_set" "', argument " "1"" of type '" "duplexT *""'");
57185     }
57186     arg1 = reinterpret_cast< duplexT * >(argp1);
57187     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
57188     if (!SWIG_IsOK(res2)) {
57189       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "duplexT_structure_set" "', argument " "2"" of type '" "char *""'");
57190     }
57191     arg2 = reinterpret_cast< char * >(buf2);
57192     if (arg1->structure) delete[] arg1->structure;
57193     if (arg2) {
57194       size_t size = strlen(reinterpret_cast< const char * >(arg2)) + 1;
57195       arg1->structure = (char *)reinterpret_cast< char* >(memcpy(new char[size], reinterpret_cast< const char * >(arg2), sizeof(char)*(size)));
57196     } else {
57197       arg1->structure = 0;
57198     }
57199     ST(argvi) = &PL_sv_undef;
57200 
57201     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
57202     XSRETURN(argvi);
57203   fail:
57204 
57205     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
57206     SWIG_croak_null();
57207   }
57208 }
57209 
57210 
XS(_wrap_duplexT_structure_get)57211 XS(_wrap_duplexT_structure_get) {
57212   {
57213     duplexT *arg1 = (duplexT *) 0 ;
57214     void *argp1 = 0 ;
57215     int res1 = 0 ;
57216     int argvi = 0;
57217     char *result = 0 ;
57218     dXSARGS;
57219 
57220     if ((items < 1) || (items > 1)) {
57221       SWIG_croak("Usage: duplexT_structure_get(self);");
57222     }
57223     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplexT, 0 |  0 );
57224     if (!SWIG_IsOK(res1)) {
57225       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplexT_structure_get" "', argument " "1"" of type '" "duplexT *""'");
57226     }
57227     arg1 = reinterpret_cast< duplexT * >(argp1);
57228     result = (char *) ((arg1)->structure);
57229     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
57230 
57231     XSRETURN(argvi);
57232   fail:
57233 
57234     SWIG_croak_null();
57235   }
57236 }
57237 
57238 
XS(_wrap_duplexT_energy_set)57239 XS(_wrap_duplexT_energy_set) {
57240   {
57241     duplexT *arg1 = (duplexT *) 0 ;
57242     float arg2 ;
57243     void *argp1 = 0 ;
57244     int res1 = 0 ;
57245     float val2 ;
57246     int ecode2 = 0 ;
57247     int argvi = 0;
57248     dXSARGS;
57249 
57250     if ((items < 2) || (items > 2)) {
57251       SWIG_croak("Usage: duplexT_energy_set(self,energy);");
57252     }
57253     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplexT, 0 |  0 );
57254     if (!SWIG_IsOK(res1)) {
57255       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplexT_energy_set" "', argument " "1"" of type '" "duplexT *""'");
57256     }
57257     arg1 = reinterpret_cast< duplexT * >(argp1);
57258     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
57259     if (!SWIG_IsOK(ecode2)) {
57260       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "duplexT_energy_set" "', argument " "2"" of type '" "float""'");
57261     }
57262     arg2 = static_cast< float >(val2);
57263     if (arg1) (arg1)->energy = arg2;
57264     ST(argvi) = &PL_sv_undef;
57265 
57266 
57267     XSRETURN(argvi);
57268   fail:
57269 
57270 
57271     SWIG_croak_null();
57272   }
57273 }
57274 
57275 
XS(_wrap_duplexT_energy_get)57276 XS(_wrap_duplexT_energy_get) {
57277   {
57278     duplexT *arg1 = (duplexT *) 0 ;
57279     void *argp1 = 0 ;
57280     int res1 = 0 ;
57281     int argvi = 0;
57282     float result;
57283     dXSARGS;
57284 
57285     if ((items < 1) || (items > 1)) {
57286       SWIG_croak("Usage: duplexT_energy_get(self);");
57287     }
57288     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplexT, 0 |  0 );
57289     if (!SWIG_IsOK(res1)) {
57290       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplexT_energy_get" "', argument " "1"" of type '" "duplexT *""'");
57291     }
57292     arg1 = reinterpret_cast< duplexT * >(argp1);
57293     result = (float) ((arg1)->energy);
57294     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
57295 
57296     XSRETURN(argvi);
57297   fail:
57298 
57299     SWIG_croak_null();
57300   }
57301 }
57302 
57303 
XS(_wrap_delete_duplexT)57304 XS(_wrap_delete_duplexT) {
57305   {
57306     duplexT *arg1 = (duplexT *) 0 ;
57307     void *argp1 = 0 ;
57308     int res1 = 0 ;
57309     int argvi = 0;
57310     dXSARGS;
57311 
57312     if ((items < 1) || (items > 1)) {
57313       SWIG_croak("Usage: delete_duplexT(self);");
57314     }
57315     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplexT, SWIG_POINTER_DISOWN |  0 );
57316     if (!SWIG_IsOK(res1)) {
57317       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_duplexT" "', argument " "1"" of type '" "duplexT *""'");
57318     }
57319     arg1 = reinterpret_cast< duplexT * >(argp1);
57320     {
57321       try {
57322         delete_duplexT(arg1);
57323       } catch (const std::exception& e) {
57324         SWIG_exception(SWIG_RuntimeError, e.what());
57325       }
57326     }
57327     ST(argvi) = &PL_sv_undef;
57328 
57329     XSRETURN(argvi);
57330   fail:
57331 
57332     SWIG_croak_null();
57333   }
57334 }
57335 
57336 
XS(_wrap_duplex_list_t_i_set)57337 XS(_wrap_duplex_list_t_i_set) {
57338   {
57339     duplex_list_t *arg1 = (duplex_list_t *) 0 ;
57340     int arg2 ;
57341     void *argp1 = 0 ;
57342     int res1 = 0 ;
57343     int val2 ;
57344     int ecode2 = 0 ;
57345     int argvi = 0;
57346     dXSARGS;
57347 
57348     if ((items < 2) || (items > 2)) {
57349       SWIG_croak("Usage: duplex_list_t_i_set(self,i);");
57350     }
57351     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplex_list_t, 0 |  0 );
57352     if (!SWIG_IsOK(res1)) {
57353       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplex_list_t_i_set" "', argument " "1"" of type '" "duplex_list_t *""'");
57354     }
57355     arg1 = reinterpret_cast< duplex_list_t * >(argp1);
57356     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
57357     if (!SWIG_IsOK(ecode2)) {
57358       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "duplex_list_t_i_set" "', argument " "2"" of type '" "int""'");
57359     }
57360     arg2 = static_cast< int >(val2);
57361     if (arg1) (arg1)->i = arg2;
57362     ST(argvi) = &PL_sv_undef;
57363 
57364 
57365     XSRETURN(argvi);
57366   fail:
57367 
57368 
57369     SWIG_croak_null();
57370   }
57371 }
57372 
57373 
XS(_wrap_duplex_list_t_i_get)57374 XS(_wrap_duplex_list_t_i_get) {
57375   {
57376     duplex_list_t *arg1 = (duplex_list_t *) 0 ;
57377     void *argp1 = 0 ;
57378     int res1 = 0 ;
57379     int argvi = 0;
57380     int result;
57381     dXSARGS;
57382 
57383     if ((items < 1) || (items > 1)) {
57384       SWIG_croak("Usage: duplex_list_t_i_get(self);");
57385     }
57386     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplex_list_t, 0 |  0 );
57387     if (!SWIG_IsOK(res1)) {
57388       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplex_list_t_i_get" "', argument " "1"" of type '" "duplex_list_t *""'");
57389     }
57390     arg1 = reinterpret_cast< duplex_list_t * >(argp1);
57391     result = (int) ((arg1)->i);
57392     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
57393 
57394     XSRETURN(argvi);
57395   fail:
57396 
57397     SWIG_croak_null();
57398   }
57399 }
57400 
57401 
XS(_wrap_duplex_list_t_j_set)57402 XS(_wrap_duplex_list_t_j_set) {
57403   {
57404     duplex_list_t *arg1 = (duplex_list_t *) 0 ;
57405     int arg2 ;
57406     void *argp1 = 0 ;
57407     int res1 = 0 ;
57408     int val2 ;
57409     int ecode2 = 0 ;
57410     int argvi = 0;
57411     dXSARGS;
57412 
57413     if ((items < 2) || (items > 2)) {
57414       SWIG_croak("Usage: duplex_list_t_j_set(self,j);");
57415     }
57416     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplex_list_t, 0 |  0 );
57417     if (!SWIG_IsOK(res1)) {
57418       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplex_list_t_j_set" "', argument " "1"" of type '" "duplex_list_t *""'");
57419     }
57420     arg1 = reinterpret_cast< duplex_list_t * >(argp1);
57421     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
57422     if (!SWIG_IsOK(ecode2)) {
57423       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "duplex_list_t_j_set" "', argument " "2"" of type '" "int""'");
57424     }
57425     arg2 = static_cast< int >(val2);
57426     if (arg1) (arg1)->j = arg2;
57427     ST(argvi) = &PL_sv_undef;
57428 
57429 
57430     XSRETURN(argvi);
57431   fail:
57432 
57433 
57434     SWIG_croak_null();
57435   }
57436 }
57437 
57438 
XS(_wrap_duplex_list_t_j_get)57439 XS(_wrap_duplex_list_t_j_get) {
57440   {
57441     duplex_list_t *arg1 = (duplex_list_t *) 0 ;
57442     void *argp1 = 0 ;
57443     int res1 = 0 ;
57444     int argvi = 0;
57445     int result;
57446     dXSARGS;
57447 
57448     if ((items < 1) || (items > 1)) {
57449       SWIG_croak("Usage: duplex_list_t_j_get(self);");
57450     }
57451     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplex_list_t, 0 |  0 );
57452     if (!SWIG_IsOK(res1)) {
57453       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplex_list_t_j_get" "', argument " "1"" of type '" "duplex_list_t *""'");
57454     }
57455     arg1 = reinterpret_cast< duplex_list_t * >(argp1);
57456     result = (int) ((arg1)->j);
57457     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
57458 
57459     XSRETURN(argvi);
57460   fail:
57461 
57462     SWIG_croak_null();
57463   }
57464 }
57465 
57466 
XS(_wrap_duplex_list_t_energy_set)57467 XS(_wrap_duplex_list_t_energy_set) {
57468   {
57469     duplex_list_t *arg1 = (duplex_list_t *) 0 ;
57470     float arg2 ;
57471     void *argp1 = 0 ;
57472     int res1 = 0 ;
57473     float val2 ;
57474     int ecode2 = 0 ;
57475     int argvi = 0;
57476     dXSARGS;
57477 
57478     if ((items < 2) || (items > 2)) {
57479       SWIG_croak("Usage: duplex_list_t_energy_set(self,energy);");
57480     }
57481     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplex_list_t, 0 |  0 );
57482     if (!SWIG_IsOK(res1)) {
57483       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplex_list_t_energy_set" "', argument " "1"" of type '" "duplex_list_t *""'");
57484     }
57485     arg1 = reinterpret_cast< duplex_list_t * >(argp1);
57486     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
57487     if (!SWIG_IsOK(ecode2)) {
57488       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "duplex_list_t_energy_set" "', argument " "2"" of type '" "float""'");
57489     }
57490     arg2 = static_cast< float >(val2);
57491     if (arg1) (arg1)->energy = arg2;
57492     ST(argvi) = &PL_sv_undef;
57493 
57494 
57495     XSRETURN(argvi);
57496   fail:
57497 
57498 
57499     SWIG_croak_null();
57500   }
57501 }
57502 
57503 
XS(_wrap_duplex_list_t_energy_get)57504 XS(_wrap_duplex_list_t_energy_get) {
57505   {
57506     duplex_list_t *arg1 = (duplex_list_t *) 0 ;
57507     void *argp1 = 0 ;
57508     int res1 = 0 ;
57509     int argvi = 0;
57510     float result;
57511     dXSARGS;
57512 
57513     if ((items < 1) || (items > 1)) {
57514       SWIG_croak("Usage: duplex_list_t_energy_get(self);");
57515     }
57516     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplex_list_t, 0 |  0 );
57517     if (!SWIG_IsOK(res1)) {
57518       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplex_list_t_energy_get" "', argument " "1"" of type '" "duplex_list_t *""'");
57519     }
57520     arg1 = reinterpret_cast< duplex_list_t * >(argp1);
57521     result = (float) ((arg1)->energy);
57522     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
57523 
57524     XSRETURN(argvi);
57525   fail:
57526 
57527     SWIG_croak_null();
57528   }
57529 }
57530 
57531 
XS(_wrap_duplex_list_t_structure_set)57532 XS(_wrap_duplex_list_t_structure_set) {
57533   {
57534     duplex_list_t *arg1 = (duplex_list_t *) 0 ;
57535     char *arg2 = (char *) 0 ;
57536     void *argp1 = 0 ;
57537     int res1 = 0 ;
57538     int res2 ;
57539     char *buf2 = 0 ;
57540     int alloc2 = 0 ;
57541     int argvi = 0;
57542     dXSARGS;
57543 
57544     if ((items < 2) || (items > 2)) {
57545       SWIG_croak("Usage: duplex_list_t_structure_set(self,structure);");
57546     }
57547     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplex_list_t, 0 |  0 );
57548     if (!SWIG_IsOK(res1)) {
57549       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplex_list_t_structure_set" "', argument " "1"" of type '" "duplex_list_t *""'");
57550     }
57551     arg1 = reinterpret_cast< duplex_list_t * >(argp1);
57552     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
57553     if (!SWIG_IsOK(res2)) {
57554       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "duplex_list_t_structure_set" "', argument " "2"" of type '" "char *""'");
57555     }
57556     arg2 = reinterpret_cast< char * >(buf2);
57557     if (arg1->structure) delete[] arg1->structure;
57558     if (arg2) {
57559       size_t size = strlen(reinterpret_cast< const char * >(arg2)) + 1;
57560       arg1->structure = (char *)reinterpret_cast< char* >(memcpy(new char[size], reinterpret_cast< const char * >(arg2), sizeof(char)*(size)));
57561     } else {
57562       arg1->structure = 0;
57563     }
57564     ST(argvi) = &PL_sv_undef;
57565 
57566     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
57567     XSRETURN(argvi);
57568   fail:
57569 
57570     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
57571     SWIG_croak_null();
57572   }
57573 }
57574 
57575 
XS(_wrap_duplex_list_t_structure_get)57576 XS(_wrap_duplex_list_t_structure_get) {
57577   {
57578     duplex_list_t *arg1 = (duplex_list_t *) 0 ;
57579     void *argp1 = 0 ;
57580     int res1 = 0 ;
57581     int argvi = 0;
57582     char *result = 0 ;
57583     dXSARGS;
57584 
57585     if ((items < 1) || (items > 1)) {
57586       SWIG_croak("Usage: duplex_list_t_structure_get(self);");
57587     }
57588     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplex_list_t, 0 |  0 );
57589     if (!SWIG_IsOK(res1)) {
57590       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "duplex_list_t_structure_get" "', argument " "1"" of type '" "duplex_list_t *""'");
57591     }
57592     arg1 = reinterpret_cast< duplex_list_t * >(argp1);
57593     result = (char *) ((arg1)->structure);
57594     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
57595 
57596     XSRETURN(argvi);
57597   fail:
57598 
57599     SWIG_croak_null();
57600   }
57601 }
57602 
57603 
XS(_wrap_delete_duplex_list_t)57604 XS(_wrap_delete_duplex_list_t) {
57605   {
57606     duplex_list_t *arg1 = (duplex_list_t *) 0 ;
57607     void *argp1 = 0 ;
57608     int res1 = 0 ;
57609     int argvi = 0;
57610     dXSARGS;
57611 
57612     if ((items < 1) || (items > 1)) {
57613       SWIG_croak("Usage: delete_duplex_list_t(self);");
57614     }
57615     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_duplex_list_t, SWIG_POINTER_DISOWN |  0 );
57616     if (!SWIG_IsOK(res1)) {
57617       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_duplex_list_t" "', argument " "1"" of type '" "duplex_list_t *""'");
57618     }
57619     arg1 = reinterpret_cast< duplex_list_t * >(argp1);
57620     {
57621       try {
57622         delete_duplex_list_t(arg1);
57623       } catch (const std::exception& e) {
57624         SWIG_exception(SWIG_RuntimeError, e.what());
57625       }
57626     }
57627     ST(argvi) = &PL_sv_undef;
57628 
57629     XSRETURN(argvi);
57630   fail:
57631 
57632     SWIG_croak_null();
57633   }
57634 }
57635 
57636 
XS(_wrap_new_duplex_list_t)57637 XS(_wrap_new_duplex_list_t) {
57638   {
57639     int argvi = 0;
57640     duplex_list_t *result = 0 ;
57641     dXSARGS;
57642 
57643     if ((items < 0) || (items > 0)) {
57644       SWIG_croak("Usage: new_duplex_list_t();");
57645     }
57646     {
57647       try {
57648         result = (duplex_list_t *)new duplex_list_t();
57649       } catch (const std::exception& e) {
57650         SWIG_exception(SWIG_RuntimeError, e.what());
57651       }
57652     }
57653     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_duplex_list_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
57654     XSRETURN(argvi);
57655   fail:
57656     SWIG_croak_null();
57657   }
57658 }
57659 
57660 
XS(_wrap_new_DuplexVector__SWIG_0)57661 XS(_wrap_new_DuplexVector__SWIG_0) {
57662   {
57663     unsigned int arg1 ;
57664     unsigned int val1 ;
57665     int ecode1 = 0 ;
57666     int argvi = 0;
57667     std::vector< duplex_list_t > *result = 0 ;
57668     dXSARGS;
57669 
57670     if ((items < 1) || (items > 1)) {
57671       SWIG_croak("Usage: new_DuplexVector(size);");
57672     }
57673     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
57674     if (!SWIG_IsOK(ecode1)) {
57675       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_DuplexVector" "', argument " "1"" of type '" "unsigned int""'");
57676     }
57677     arg1 = static_cast< unsigned int >(val1);
57678     {
57679       try {
57680         result = (std::vector< duplex_list_t > *)new std::vector< duplex_list_t >(arg1);
57681       } catch (const std::exception& e) {
57682         SWIG_exception(SWIG_RuntimeError, e.what());
57683       }
57684     }
57685     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_duplex_list_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
57686 
57687     XSRETURN(argvi);
57688   fail:
57689 
57690     SWIG_croak_null();
57691   }
57692 }
57693 
57694 
XS(_wrap_new_DuplexVector__SWIG_1)57695 XS(_wrap_new_DuplexVector__SWIG_1) {
57696   {
57697     int argvi = 0;
57698     std::vector< duplex_list_t > *result = 0 ;
57699     dXSARGS;
57700 
57701     if ((items < 0) || (items > 0)) {
57702       SWIG_croak("Usage: new_DuplexVector();");
57703     }
57704     {
57705       try {
57706         result = (std::vector< duplex_list_t > *)new std::vector< duplex_list_t >();
57707       } catch (const std::exception& e) {
57708         SWIG_exception(SWIG_RuntimeError, e.what());
57709       }
57710     }
57711     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_duplex_list_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
57712     XSRETURN(argvi);
57713   fail:
57714     SWIG_croak_null();
57715   }
57716 }
57717 
57718 
XS(_wrap_new_DuplexVector__SWIG_2)57719 XS(_wrap_new_DuplexVector__SWIG_2) {
57720   {
57721     unsigned int arg1 ;
57722     duplex_list_t *arg2 = 0 ;
57723     unsigned int val1 ;
57724     int ecode1 = 0 ;
57725     void *argp2 ;
57726     int res2 = 0 ;
57727     int argvi = 0;
57728     std::vector< duplex_list_t > *result = 0 ;
57729     dXSARGS;
57730 
57731     if ((items < 2) || (items > 2)) {
57732       SWIG_croak("Usage: new_DuplexVector(size,value);");
57733     }
57734     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
57735     if (!SWIG_IsOK(ecode1)) {
57736       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_DuplexVector" "', argument " "1"" of type '" "unsigned int""'");
57737     }
57738     arg1 = static_cast< unsigned int >(val1);
57739     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_duplex_list_t,  0 );
57740     if (!SWIG_IsOK(res2)) {
57741       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_DuplexVector" "', argument " "2"" of type '" "duplex_list_t const &""'");
57742     }
57743     if (!argp2) {
57744       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_DuplexVector" "', argument " "2"" of type '" "duplex_list_t const &""'");
57745     }
57746     arg2 = reinterpret_cast< duplex_list_t * >(argp2);
57747     {
57748       try {
57749         result = (std::vector< duplex_list_t > *)new std::vector< duplex_list_t >(arg1,(duplex_list_t const &)*arg2);
57750       } catch (const std::exception& e) {
57751         SWIG_exception(SWIG_RuntimeError, e.what());
57752       }
57753     }
57754     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_duplex_list_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
57755 
57756 
57757     XSRETURN(argvi);
57758   fail:
57759 
57760 
57761     SWIG_croak_null();
57762   }
57763 }
57764 
57765 
XS(_wrap_new_DuplexVector__SWIG_3)57766 XS(_wrap_new_DuplexVector__SWIG_3) {
57767   {
57768     std::vector< duplex_list_t > *arg1 = 0 ;
57769     std::vector< duplex_list_t > temp1 ;
57770     std::vector< duplex_list_t > *v1 ;
57771     int argvi = 0;
57772     std::vector< duplex_list_t > *result = 0 ;
57773     dXSARGS;
57774 
57775     if ((items < 1) || (items > 1)) {
57776       SWIG_croak("Usage: new_DuplexVector(other);");
57777     }
57778     {
57779       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
57780           SWIGTYPE_p_std__vectorT_duplex_list_t_t,1) != -1) {
57781         arg1 = v1;
57782       } else if (SvROK(ST(0))) {
57783         AV *av = (AV *)SvRV(ST(0));
57784         if (SvTYPE(av) != SVt_PVAV)
57785         SWIG_croak("Type error in argument 1 of new_DuplexVector. "
57786           "Expected an array of " "duplex_list_t");
57787         SV **tv;
57788         I32 len = av_len(av) + 1;
57789         duplex_list_t* obj;
57790         for (int i=0; i<len; i++) {
57791           tv = av_fetch(av, i, 0);
57792           if (SWIG_ConvertPtr(*tv, (void **)&obj,
57793               SWIGTYPE_p_duplex_list_t,0) != -1) {
57794             temp1.push_back(*obj);
57795           } else {
57796             SWIG_croak("Type error in argument 1 of "
57797               "new_DuplexVector. "
57798               "Expected an array of " "duplex_list_t");
57799           }
57800         }
57801         arg1 = &temp1;
57802       } else {
57803         SWIG_croak("Type error in argument 1 of new_DuplexVector. "
57804           "Expected an array of " "duplex_list_t");
57805       }
57806     }
57807     {
57808       try {
57809         result = (std::vector< duplex_list_t > *)new std::vector< duplex_list_t >((std::vector< duplex_list_t > const &)*arg1);
57810       } catch (const std::exception& e) {
57811         SWIG_exception(SWIG_RuntimeError, e.what());
57812       }
57813     }
57814     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_duplex_list_t_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
57815 
57816     XSRETURN(argvi);
57817   fail:
57818 
57819     SWIG_croak_null();
57820   }
57821 }
57822 
57823 
XS(_wrap_new_DuplexVector)57824 XS(_wrap_new_DuplexVector) {
57825   dXSARGS;
57826 
57827   {
57828     unsigned long _index = 0;
57829     SWIG_TypeRank _rank = 0;
57830     if (items == 0) {
57831       SWIG_TypeRank _ranki = 0;
57832       SWIG_TypeRank _rankm = 0;
57833       if (!_index || (_ranki < _rank)) {
57834         _rank = _ranki; _index = 1;
57835         if (_rank == _rankm) goto dispatch;
57836       }
57837     }
57838     if (items == 1) {
57839       SWIG_TypeRank _ranki = 0;
57840       SWIG_TypeRank _rankm = 0;
57841       SWIG_TypeRank _pi = 1;
57842       int _v = 0;
57843       {
57844         {
57845           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
57846           _v = SWIG_CheckState(res);
57847         }
57848       }
57849       if (!_v) goto check_2;
57850       _ranki += _v*_pi;
57851       _rankm += _pi;
57852       _pi *= SWIG_MAXCASTRANK;
57853       if (!_index || (_ranki < _rank)) {
57854         _rank = _ranki; _index = 2;
57855         if (_rank == _rankm) goto dispatch;
57856       }
57857     }
57858   check_2:
57859 
57860     if (items == 1) {
57861       SWIG_TypeRank _ranki = 0;
57862       SWIG_TypeRank _rankm = 0;
57863       SWIG_TypeRank _pi = 1;
57864       int _v = 0;
57865       {
57866         {
57867           {
57868             /* wrapped vector? */
57869             std::vector< duplex_list_t >* v;
57870             if (SWIG_ConvertPtr(ST(0),(void **) &v,
57871                 SWIGTYPE_p_std__vectorT_duplex_list_t_t,0) != -1) {
57872               _v = 1;
57873             } else if (SvROK(ST(0))) {
57874               /* native sequence? */
57875               AV *av = (AV *)SvRV(ST(0));
57876               if (SvTYPE(av) == SVt_PVAV) {
57877                 I32 len = av_len(av) + 1;
57878                 if (len == 0) {
57879                   /* an empty sequence can be of any type */
57880                   _v = 1;
57881                 } else {
57882                   /* check the first element only */
57883                   duplex_list_t* obj;
57884                   SV **tv = av_fetch(av, 0, 0);
57885                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
57886                       SWIGTYPE_p_duplex_list_t,0) != -1)
57887                   _v = 1;
57888                   else
57889                   _v = 0;
57890                 }
57891               }
57892             } else {
57893               _v = 0;
57894             }
57895           }
57896         }
57897       }
57898       if (!_v) goto check_3;
57899       _ranki += _v*_pi;
57900       _rankm += _pi;
57901       _pi *= SWIG_MAXCASTRANK;
57902       if (!_index || (_ranki < _rank)) {
57903         _rank = _ranki; _index = 3;
57904         if (_rank == _rankm) goto dispatch;
57905       }
57906     }
57907   check_3:
57908 
57909     if (items == 2) {
57910       SWIG_TypeRank _ranki = 0;
57911       SWIG_TypeRank _rankm = 0;
57912       SWIG_TypeRank _pi = 1;
57913       int _v = 0;
57914       {
57915         {
57916           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
57917           _v = SWIG_CheckState(res);
57918         }
57919       }
57920       if (!_v) goto check_4;
57921       _ranki += _v*_pi;
57922       _rankm += _pi;
57923       _pi *= SWIG_MAXCASTRANK;
57924       {
57925         void *vptr = 0;
57926         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_duplex_list_t, SWIG_POINTER_NO_NULL);
57927         _v = SWIG_CheckState(res);
57928       }
57929       if (!_v) goto check_4;
57930       _ranki += _v*_pi;
57931       _rankm += _pi;
57932       _pi *= SWIG_MAXCASTRANK;
57933       if (!_index || (_ranki < _rank)) {
57934         _rank = _ranki; _index = 4;
57935         if (_rank == _rankm) goto dispatch;
57936       }
57937     }
57938   check_4:
57939 
57940   dispatch:
57941     switch(_index) {
57942     case 1:
57943       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DuplexVector__SWIG_1); return;
57944     case 2:
57945       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DuplexVector__SWIG_0); return;
57946     case 3:
57947       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DuplexVector__SWIG_3); return;
57948     case 4:
57949       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_DuplexVector__SWIG_2); return;
57950     }
57951   }
57952 
57953   croak("No matching function for overloaded 'new_DuplexVector'");
57954   XSRETURN(0);
57955 }
57956 
57957 
XS(_wrap_DuplexVector_size)57958 XS(_wrap_DuplexVector_size) {
57959   {
57960     std::vector< duplex_list_t > *arg1 = (std::vector< duplex_list_t > *) 0 ;
57961     std::vector< duplex_list_t > temp1 ;
57962     std::vector< duplex_list_t > *v1 ;
57963     int argvi = 0;
57964     unsigned int result;
57965     dXSARGS;
57966 
57967     if ((items < 1) || (items > 1)) {
57968       SWIG_croak("Usage: DuplexVector_size(self);");
57969     }
57970     {
57971       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
57972           SWIGTYPE_p_std__vectorT_duplex_list_t_t,1) != -1) {
57973         arg1 = v1;
57974       } else if (SvROK(ST(0))) {
57975         AV *av = (AV *)SvRV(ST(0));
57976         if (SvTYPE(av) != SVt_PVAV)
57977         SWIG_croak("Type error in argument 1 of DuplexVector_size. "
57978           "Expected an array of " "duplex_list_t");
57979         SV **tv;
57980         I32 len = av_len(av) + 1;
57981         duplex_list_t* obj;
57982         for (int i=0; i<len; i++) {
57983           tv = av_fetch(av, i, 0);
57984           if (SWIG_ConvertPtr(*tv, (void **)&obj,
57985               SWIGTYPE_p_duplex_list_t,0) != -1) {
57986             temp1.push_back(*obj);
57987           } else {
57988             SWIG_croak("Type error in argument 1 of "
57989               "DuplexVector_size. "
57990               "Expected an array of " "duplex_list_t");
57991           }
57992         }
57993         arg1 = &temp1;
57994       } else {
57995         SWIG_croak("Type error in argument 1 of DuplexVector_size. "
57996           "Expected an array of " "duplex_list_t");
57997       }
57998     }
57999     {
58000       try {
58001         result = (unsigned int)((std::vector< duplex_list_t > const *)arg1)->size();
58002       } catch (const std::exception& e) {
58003         SWIG_exception(SWIG_RuntimeError, e.what());
58004       }
58005     }
58006     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
58007 
58008     XSRETURN(argvi);
58009   fail:
58010 
58011     SWIG_croak_null();
58012   }
58013 }
58014 
58015 
XS(_wrap_DuplexVector_empty)58016 XS(_wrap_DuplexVector_empty) {
58017   {
58018     std::vector< duplex_list_t > *arg1 = (std::vector< duplex_list_t > *) 0 ;
58019     std::vector< duplex_list_t > temp1 ;
58020     std::vector< duplex_list_t > *v1 ;
58021     int argvi = 0;
58022     bool result;
58023     dXSARGS;
58024 
58025     if ((items < 1) || (items > 1)) {
58026       SWIG_croak("Usage: DuplexVector_empty(self);");
58027     }
58028     {
58029       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
58030           SWIGTYPE_p_std__vectorT_duplex_list_t_t,1) != -1) {
58031         arg1 = v1;
58032       } else if (SvROK(ST(0))) {
58033         AV *av = (AV *)SvRV(ST(0));
58034         if (SvTYPE(av) != SVt_PVAV)
58035         SWIG_croak("Type error in argument 1 of DuplexVector_empty. "
58036           "Expected an array of " "duplex_list_t");
58037         SV **tv;
58038         I32 len = av_len(av) + 1;
58039         duplex_list_t* obj;
58040         for (int i=0; i<len; i++) {
58041           tv = av_fetch(av, i, 0);
58042           if (SWIG_ConvertPtr(*tv, (void **)&obj,
58043               SWIGTYPE_p_duplex_list_t,0) != -1) {
58044             temp1.push_back(*obj);
58045           } else {
58046             SWIG_croak("Type error in argument 1 of "
58047               "DuplexVector_empty. "
58048               "Expected an array of " "duplex_list_t");
58049           }
58050         }
58051         arg1 = &temp1;
58052       } else {
58053         SWIG_croak("Type error in argument 1 of DuplexVector_empty. "
58054           "Expected an array of " "duplex_list_t");
58055       }
58056     }
58057     {
58058       try {
58059         result = (bool)((std::vector< duplex_list_t > const *)arg1)->empty();
58060       } catch (const std::exception& e) {
58061         SWIG_exception(SWIG_RuntimeError, e.what());
58062       }
58063     }
58064     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
58065 
58066     XSRETURN(argvi);
58067   fail:
58068 
58069     SWIG_croak_null();
58070   }
58071 }
58072 
58073 
XS(_wrap_DuplexVector_clear)58074 XS(_wrap_DuplexVector_clear) {
58075   {
58076     std::vector< duplex_list_t > *arg1 = (std::vector< duplex_list_t > *) 0 ;
58077     void *argp1 = 0 ;
58078     int res1 = 0 ;
58079     int argvi = 0;
58080     dXSARGS;
58081 
58082     if ((items < 1) || (items > 1)) {
58083       SWIG_croak("Usage: DuplexVector_clear(self);");
58084     }
58085     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_duplex_list_t_t, 0 |  0 );
58086     if (!SWIG_IsOK(res1)) {
58087       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DuplexVector_clear" "', argument " "1"" of type '" "std::vector< duplex_list_t > *""'");
58088     }
58089     arg1 = reinterpret_cast< std::vector< duplex_list_t > * >(argp1);
58090     {
58091       try {
58092         (arg1)->clear();
58093       } catch (const std::exception& e) {
58094         SWIG_exception(SWIG_RuntimeError, e.what());
58095       }
58096     }
58097     ST(argvi) = &PL_sv_undef;
58098 
58099     XSRETURN(argvi);
58100   fail:
58101 
58102     SWIG_croak_null();
58103   }
58104 }
58105 
58106 
XS(_wrap_DuplexVector_push)58107 XS(_wrap_DuplexVector_push) {
58108   {
58109     std::vector< duplex_list_t > *arg1 = (std::vector< duplex_list_t > *) 0 ;
58110     duplex_list_t *arg2 = 0 ;
58111     void *argp1 = 0 ;
58112     int res1 = 0 ;
58113     void *argp2 ;
58114     int res2 = 0 ;
58115     int argvi = 0;
58116     dXSARGS;
58117 
58118     if ((items < 2) || (items > 2)) {
58119       SWIG_croak("Usage: DuplexVector_push(self,x);");
58120     }
58121     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_duplex_list_t_t, 0 |  0 );
58122     if (!SWIG_IsOK(res1)) {
58123       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DuplexVector_push" "', argument " "1"" of type '" "std::vector< duplex_list_t > *""'");
58124     }
58125     arg1 = reinterpret_cast< std::vector< duplex_list_t > * >(argp1);
58126     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_duplex_list_t,  0 );
58127     if (!SWIG_IsOK(res2)) {
58128       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "DuplexVector_push" "', argument " "2"" of type '" "duplex_list_t const &""'");
58129     }
58130     if (!argp2) {
58131       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DuplexVector_push" "', argument " "2"" of type '" "duplex_list_t const &""'");
58132     }
58133     arg2 = reinterpret_cast< duplex_list_t * >(argp2);
58134     {
58135       try {
58136         (arg1)->push_back((duplex_list_t const &)*arg2);
58137       } catch (const std::exception& e) {
58138         SWIG_exception(SWIG_RuntimeError, e.what());
58139       }
58140     }
58141     ST(argvi) = &PL_sv_undef;
58142 
58143 
58144     XSRETURN(argvi);
58145   fail:
58146 
58147 
58148     SWIG_croak_null();
58149   }
58150 }
58151 
58152 
XS(_wrap_DuplexVector_pop)58153 XS(_wrap_DuplexVector_pop) {
58154   {
58155     std::vector< duplex_list_t > *arg1 = (std::vector< duplex_list_t > *) 0 ;
58156     void *argp1 = 0 ;
58157     int res1 = 0 ;
58158     int argvi = 0;
58159     duplex_list_t result;
58160     dXSARGS;
58161 
58162     if ((items < 1) || (items > 1)) {
58163       SWIG_croak("Usage: DuplexVector_pop(self);");
58164     }
58165     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_duplex_list_t_t, 0 |  0 );
58166     if (!SWIG_IsOK(res1)) {
58167       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DuplexVector_pop" "', argument " "1"" of type '" "std::vector< duplex_list_t > *""'");
58168     }
58169     arg1 = reinterpret_cast< std::vector< duplex_list_t > * >(argp1);
58170     {
58171       try {
58172         try {
58173           result = std_vector_Sl_duplex_list_t_Sg__pop(arg1);
58174         } catch(std::out_of_range &_e) {
58175           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
58176         }
58177       } catch (const std::exception& e) {
58178         SWIG_exception(SWIG_RuntimeError, e.what());
58179       }
58180     }
58181     ST(argvi) = SWIG_NewPointerObj((new duplex_list_t(static_cast< const duplex_list_t& >(result))), SWIGTYPE_p_duplex_list_t, SWIG_POINTER_OWN | SWIG_SHADOW); argvi++ ;
58182 
58183     XSRETURN(argvi);
58184   fail:
58185 
58186     SWIG_croak_null();
58187   }
58188 }
58189 
58190 
XS(_wrap_DuplexVector_get)58191 XS(_wrap_DuplexVector_get) {
58192   {
58193     std::vector< duplex_list_t > *arg1 = (std::vector< duplex_list_t > *) 0 ;
58194     int arg2 ;
58195     void *argp1 = 0 ;
58196     int res1 = 0 ;
58197     int val2 ;
58198     int ecode2 = 0 ;
58199     int argvi = 0;
58200     duplex_list_t *result = 0 ;
58201     dXSARGS;
58202 
58203     if ((items < 2) || (items > 2)) {
58204       SWIG_croak("Usage: DuplexVector_get(self,i);");
58205     }
58206     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_duplex_list_t_t, 0 |  0 );
58207     if (!SWIG_IsOK(res1)) {
58208       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DuplexVector_get" "', argument " "1"" of type '" "std::vector< duplex_list_t > *""'");
58209     }
58210     arg1 = reinterpret_cast< std::vector< duplex_list_t > * >(argp1);
58211     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
58212     if (!SWIG_IsOK(ecode2)) {
58213       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "DuplexVector_get" "', argument " "2"" of type '" "int""'");
58214     }
58215     arg2 = static_cast< int >(val2);
58216     {
58217       try {
58218         try {
58219           result = (duplex_list_t *) &std_vector_Sl_duplex_list_t_Sg__get(arg1,arg2);
58220         } catch(std::out_of_range &_e) {
58221           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
58222         }
58223       } catch (const std::exception& e) {
58224         SWIG_exception(SWIG_RuntimeError, e.what());
58225       }
58226     }
58227     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_duplex_list_t, 0 | SWIG_SHADOW); argvi++ ;
58228 
58229 
58230     XSRETURN(argvi);
58231   fail:
58232 
58233 
58234     SWIG_croak_null();
58235   }
58236 }
58237 
58238 
XS(_wrap_DuplexVector_set)58239 XS(_wrap_DuplexVector_set) {
58240   {
58241     std::vector< duplex_list_t > *arg1 = (std::vector< duplex_list_t > *) 0 ;
58242     int arg2 ;
58243     duplex_list_t *arg3 = 0 ;
58244     void *argp1 = 0 ;
58245     int res1 = 0 ;
58246     int val2 ;
58247     int ecode2 = 0 ;
58248     void *argp3 ;
58249     int res3 = 0 ;
58250     int argvi = 0;
58251     dXSARGS;
58252 
58253     if ((items < 3) || (items > 3)) {
58254       SWIG_croak("Usage: DuplexVector_set(self,i,x);");
58255     }
58256     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_duplex_list_t_t, 0 |  0 );
58257     if (!SWIG_IsOK(res1)) {
58258       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DuplexVector_set" "', argument " "1"" of type '" "std::vector< duplex_list_t > *""'");
58259     }
58260     arg1 = reinterpret_cast< std::vector< duplex_list_t > * >(argp1);
58261     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
58262     if (!SWIG_IsOK(ecode2)) {
58263       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "DuplexVector_set" "', argument " "2"" of type '" "int""'");
58264     }
58265     arg2 = static_cast< int >(val2);
58266     res3 = SWIG_ConvertPtr(ST(2), &argp3, SWIGTYPE_p_duplex_list_t,  0 );
58267     if (!SWIG_IsOK(res3)) {
58268       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "DuplexVector_set" "', argument " "3"" of type '" "duplex_list_t const &""'");
58269     }
58270     if (!argp3) {
58271       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DuplexVector_set" "', argument " "3"" of type '" "duplex_list_t const &""'");
58272     }
58273     arg3 = reinterpret_cast< duplex_list_t * >(argp3);
58274     {
58275       try {
58276         try {
58277           std_vector_Sl_duplex_list_t_Sg__set(arg1,arg2,(duplex_list_t const &)*arg3);
58278         } catch(std::out_of_range &_e) {
58279           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
58280         }
58281       } catch (const std::exception& e) {
58282         SWIG_exception(SWIG_RuntimeError, e.what());
58283       }
58284     }
58285     ST(argvi) = &PL_sv_undef;
58286 
58287 
58288 
58289     XSRETURN(argvi);
58290   fail:
58291 
58292 
58293 
58294     SWIG_croak_null();
58295   }
58296 }
58297 
58298 
XS(_wrap_delete_DuplexVector)58299 XS(_wrap_delete_DuplexVector) {
58300   {
58301     std::vector< duplex_list_t > *arg1 = (std::vector< duplex_list_t > *) 0 ;
58302     void *argp1 = 0 ;
58303     int res1 = 0 ;
58304     int argvi = 0;
58305     dXSARGS;
58306 
58307     if ((items < 1) || (items > 1)) {
58308       SWIG_croak("Usage: delete_DuplexVector(self);");
58309     }
58310     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_duplex_list_t_t, SWIG_POINTER_DISOWN |  0 );
58311     if (!SWIG_IsOK(res1)) {
58312       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DuplexVector" "', argument " "1"" of type '" "std::vector< duplex_list_t > *""'");
58313     }
58314     arg1 = reinterpret_cast< std::vector< duplex_list_t > * >(argp1);
58315     {
58316       try {
58317         delete arg1;
58318       } catch (const std::exception& e) {
58319         SWIG_exception(SWIG_RuntimeError, e.what());
58320       }
58321     }
58322     ST(argvi) = &PL_sv_undef;
58323 
58324     XSRETURN(argvi);
58325   fail:
58326 
58327     SWIG_croak_null();
58328   }
58329 }
58330 
58331 
XS(_wrap_duplexfold)58332 XS(_wrap_duplexfold) {
58333   {
58334     std::string arg1 ;
58335     std::string arg2 ;
58336     int argvi = 0;
58337     duplexT result;
58338     dXSARGS;
58339 
58340     if ((items < 2) || (items > 2)) {
58341       SWIG_croak("Usage: duplexfold(s1,s2);");
58342     }
58343     {
58344       std::string *ptr = (std::string *)0;
58345       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
58346       if (!SWIG_IsOK(res) || !ptr) {
58347         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "duplexfold" "', argument " "1"" of type '" "std::string""'");
58348       }
58349       arg1 = *ptr;
58350       if (SWIG_IsNewObj(res)) delete ptr;
58351     }
58352     {
58353       std::string *ptr = (std::string *)0;
58354       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
58355       if (!SWIG_IsOK(res) || !ptr) {
58356         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "duplexfold" "', argument " "2"" of type '" "std::string""'");
58357       }
58358       arg2 = *ptr;
58359       if (SWIG_IsNewObj(res)) delete ptr;
58360     }
58361     {
58362       try {
58363         result = my_duplexfold(arg1,arg2);
58364       } catch (const std::exception& e) {
58365         SWIG_exception(SWIG_RuntimeError, e.what());
58366       }
58367     }
58368     ST(argvi) = SWIG_NewPointerObj((new duplexT(static_cast< const duplexT& >(result))), SWIGTYPE_p_duplexT, SWIG_POINTER_OWN | SWIG_SHADOW); argvi++ ;
58369 
58370 
58371     XSRETURN(argvi);
58372   fail:
58373 
58374 
58375     SWIG_croak_null();
58376   }
58377 }
58378 
58379 
XS(_wrap_duplex_subopt)58380 XS(_wrap_duplex_subopt) {
58381   {
58382     std::string arg1 ;
58383     std::string arg2 ;
58384     int arg3 ;
58385     int arg4 ;
58386     int val3 ;
58387     int ecode3 = 0 ;
58388     int val4 ;
58389     int ecode4 = 0 ;
58390     int argvi = 0;
58391     std::vector< duplex_list_t > result;
58392     dXSARGS;
58393 
58394     if ((items < 4) || (items > 4)) {
58395       SWIG_croak("Usage: duplex_subopt(s1,s2,delta,w);");
58396     }
58397     {
58398       std::string *ptr = (std::string *)0;
58399       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
58400       if (!SWIG_IsOK(res) || !ptr) {
58401         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "duplex_subopt" "', argument " "1"" of type '" "std::string""'");
58402       }
58403       arg1 = *ptr;
58404       if (SWIG_IsNewObj(res)) delete ptr;
58405     }
58406     {
58407       std::string *ptr = (std::string *)0;
58408       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
58409       if (!SWIG_IsOK(res) || !ptr) {
58410         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "duplex_subopt" "', argument " "2"" of type '" "std::string""'");
58411       }
58412       arg2 = *ptr;
58413       if (SWIG_IsNewObj(res)) delete ptr;
58414     }
58415     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
58416     if (!SWIG_IsOK(ecode3)) {
58417       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "duplex_subopt" "', argument " "3"" of type '" "int""'");
58418     }
58419     arg3 = static_cast< int >(val3);
58420     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
58421     if (!SWIG_IsOK(ecode4)) {
58422       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "duplex_subopt" "', argument " "4"" of type '" "int""'");
58423     }
58424     arg4 = static_cast< int >(val4);
58425     {
58426       try {
58427         result = my_duplex_subopt(arg1,arg2,arg3,arg4);
58428       } catch (const std::exception& e) {
58429         SWIG_exception(SWIG_RuntimeError, e.what());
58430       }
58431     }
58432     {
58433       size_t len = (&result)->size();
58434       SV **svs = new SV*[len];
58435       for (size_t i=0; i<len; i++) {
58436         duplex_list_t* ptr = new duplex_list_t(result[i]);
58437         svs[i] = sv_newmortal();
58438         SWIG_MakePtr(svs[i], (void*) ptr,
58439           SWIGTYPE_p_duplex_list_t, SWIG_SHADOW|0);
58440       }
58441       AV *myav = av_make(len, svs);
58442       delete[] svs;
58443       ST(argvi) = newRV_noinc((SV*) myav);
58444       sv_2mortal(ST(argvi));
58445       argvi++;
58446     }
58447 
58448 
58449 
58450 
58451     XSRETURN(argvi);
58452   fail:
58453 
58454 
58455 
58456 
58457     SWIG_croak_null();
58458   }
58459 }
58460 
58461 
XS(_wrap_aliduplexfold)58462 XS(_wrap_aliduplexfold) {
58463   {
58464     std::vector< std::string > arg1 ;
58465     std::vector< std::string > arg2 ;
58466     std::vector< std::string > *v1 ;
58467     std::vector< std::string > *v2 ;
58468     int argvi = 0;
58469     duplexT result;
58470     dXSARGS;
58471 
58472     if ((items < 2) || (items > 2)) {
58473       SWIG_croak("Usage: aliduplexfold(alignment1,alignment2);");
58474     }
58475     {
58476       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
58477           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
58478         arg1 = *v1;
58479       } else if (SvROK(ST(0))) {
58480         AV *av = (AV *)SvRV(ST(0));
58481         if (SvTYPE(av) != SVt_PVAV)
58482         SWIG_croak("Type error in argument 1 of aliduplexfold. "
58483           "Expected an array of ""std::string");
58484         SV **tv;
58485         I32 len = av_len(av) + 1;
58486         for (int i=0; i<len; i++) {
58487           tv = av_fetch(av, i, 0);
58488           if (SvPOK(*tv)) {
58489             (&arg1)->push_back((std::string)SwigSvToString(*tv));
58490           } else {
58491             SWIG_croak("Type error in argument 1 of "
58492               "aliduplexfold. "
58493               "Expected an array of ""std::string");
58494           }
58495         }
58496       } else {
58497         SWIG_croak("Type error in argument 1 of aliduplexfold. "
58498           "Expected an array of ""std::string");
58499       }
58500     }
58501     {
58502       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
58503           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
58504         arg2 = *v2;
58505       } else if (SvROK(ST(1))) {
58506         AV *av = (AV *)SvRV(ST(1));
58507         if (SvTYPE(av) != SVt_PVAV)
58508         SWIG_croak("Type error in argument 2 of aliduplexfold. "
58509           "Expected an array of ""std::string");
58510         SV **tv;
58511         I32 len = av_len(av) + 1;
58512         for (int i=0; i<len; i++) {
58513           tv = av_fetch(av, i, 0);
58514           if (SvPOK(*tv)) {
58515             (&arg2)->push_back((std::string)SwigSvToString(*tv));
58516           } else {
58517             SWIG_croak("Type error in argument 2 of "
58518               "aliduplexfold. "
58519               "Expected an array of ""std::string");
58520           }
58521         }
58522       } else {
58523         SWIG_croak("Type error in argument 2 of aliduplexfold. "
58524           "Expected an array of ""std::string");
58525       }
58526     }
58527     {
58528       try {
58529         result = my_aliduplexfold(arg1,arg2);
58530       } catch (const std::exception& e) {
58531         SWIG_exception(SWIG_RuntimeError, e.what());
58532       }
58533     }
58534     ST(argvi) = SWIG_NewPointerObj((new duplexT(static_cast< const duplexT& >(result))), SWIGTYPE_p_duplexT, SWIG_POINTER_OWN | SWIG_SHADOW); argvi++ ;
58535     XSRETURN(argvi);
58536   fail:
58537     SWIG_croak_null();
58538   }
58539 }
58540 
58541 
XS(_wrap_aliduplex_subopt)58542 XS(_wrap_aliduplex_subopt) {
58543   {
58544     std::vector< std::string > arg1 ;
58545     std::vector< std::string > arg2 ;
58546     int arg3 ;
58547     int arg4 ;
58548     std::vector< std::string > *v1 ;
58549     std::vector< std::string > *v2 ;
58550     int val3 ;
58551     int ecode3 = 0 ;
58552     int val4 ;
58553     int ecode4 = 0 ;
58554     int argvi = 0;
58555     std::vector< duplex_list_t > result;
58556     dXSARGS;
58557 
58558     if ((items < 4) || (items > 4)) {
58559       SWIG_croak("Usage: aliduplex_subopt(alignment1,alignment2,delta,w);");
58560     }
58561     {
58562       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
58563           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
58564         arg1 = *v1;
58565       } else if (SvROK(ST(0))) {
58566         AV *av = (AV *)SvRV(ST(0));
58567         if (SvTYPE(av) != SVt_PVAV)
58568         SWIG_croak("Type error in argument 1 of aliduplex_subopt. "
58569           "Expected an array of ""std::string");
58570         SV **tv;
58571         I32 len = av_len(av) + 1;
58572         for (int i=0; i<len; i++) {
58573           tv = av_fetch(av, i, 0);
58574           if (SvPOK(*tv)) {
58575             (&arg1)->push_back((std::string)SwigSvToString(*tv));
58576           } else {
58577             SWIG_croak("Type error in argument 1 of "
58578               "aliduplex_subopt. "
58579               "Expected an array of ""std::string");
58580           }
58581         }
58582       } else {
58583         SWIG_croak("Type error in argument 1 of aliduplex_subopt. "
58584           "Expected an array of ""std::string");
58585       }
58586     }
58587     {
58588       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
58589           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
58590         arg2 = *v2;
58591       } else if (SvROK(ST(1))) {
58592         AV *av = (AV *)SvRV(ST(1));
58593         if (SvTYPE(av) != SVt_PVAV)
58594         SWIG_croak("Type error in argument 2 of aliduplex_subopt. "
58595           "Expected an array of ""std::string");
58596         SV **tv;
58597         I32 len = av_len(av) + 1;
58598         for (int i=0; i<len; i++) {
58599           tv = av_fetch(av, i, 0);
58600           if (SvPOK(*tv)) {
58601             (&arg2)->push_back((std::string)SwigSvToString(*tv));
58602           } else {
58603             SWIG_croak("Type error in argument 2 of "
58604               "aliduplex_subopt. "
58605               "Expected an array of ""std::string");
58606           }
58607         }
58608       } else {
58609         SWIG_croak("Type error in argument 2 of aliduplex_subopt. "
58610           "Expected an array of ""std::string");
58611       }
58612     }
58613     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
58614     if (!SWIG_IsOK(ecode3)) {
58615       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "aliduplex_subopt" "', argument " "3"" of type '" "int""'");
58616     }
58617     arg3 = static_cast< int >(val3);
58618     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
58619     if (!SWIG_IsOK(ecode4)) {
58620       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "aliduplex_subopt" "', argument " "4"" of type '" "int""'");
58621     }
58622     arg4 = static_cast< int >(val4);
58623     {
58624       try {
58625         result = aliduplex_subopt(arg1,arg2,arg3,arg4);
58626       } catch (const std::exception& e) {
58627         SWIG_exception(SWIG_RuntimeError, e.what());
58628       }
58629     }
58630     {
58631       size_t len = (&result)->size();
58632       SV **svs = new SV*[len];
58633       for (size_t i=0; i<len; i++) {
58634         duplex_list_t* ptr = new duplex_list_t(result[i]);
58635         svs[i] = sv_newmortal();
58636         SWIG_MakePtr(svs[i], (void*) ptr,
58637           SWIGTYPE_p_duplex_list_t, SWIG_SHADOW|0);
58638       }
58639       AV *myav = av_make(len, svs);
58640       delete[] svs;
58641       ST(argvi) = newRV_noinc((SV*) myav);
58642       sv_2mortal(ST(argvi));
58643       argvi++;
58644     }
58645 
58646 
58647     XSRETURN(argvi);
58648   fail:
58649 
58650 
58651     SWIG_croak_null();
58652   }
58653 }
58654 
58655 
XS(_wrap_move_pos_5_set)58656 XS(_wrap_move_pos_5_set) {
58657   {
58658     vrna_move_t *arg1 = (vrna_move_t *) 0 ;
58659     int arg2 ;
58660     void *argp1 = 0 ;
58661     int res1 = 0 ;
58662     int val2 ;
58663     int ecode2 = 0 ;
58664     int argvi = 0;
58665     dXSARGS;
58666 
58667     if ((items < 2) || (items > 2)) {
58668       SWIG_croak("Usage: move_pos_5_set(self,pos_5);");
58669     }
58670     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_move_t, 0 |  0 );
58671     if (!SWIG_IsOK(res1)) {
58672       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "move_pos_5_set" "', argument " "1"" of type '" "vrna_move_t *""'");
58673     }
58674     arg1 = reinterpret_cast< vrna_move_t * >(argp1);
58675     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
58676     if (!SWIG_IsOK(ecode2)) {
58677       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "move_pos_5_set" "', argument " "2"" of type '" "int""'");
58678     }
58679     arg2 = static_cast< int >(val2);
58680     if (arg1) (arg1)->pos_5 = arg2;
58681     ST(argvi) = &PL_sv_undef;
58682 
58683 
58684     XSRETURN(argvi);
58685   fail:
58686 
58687 
58688     SWIG_croak_null();
58689   }
58690 }
58691 
58692 
XS(_wrap_move_pos_5_get)58693 XS(_wrap_move_pos_5_get) {
58694   {
58695     vrna_move_t *arg1 = (vrna_move_t *) 0 ;
58696     void *argp1 = 0 ;
58697     int res1 = 0 ;
58698     int argvi = 0;
58699     int result;
58700     dXSARGS;
58701 
58702     if ((items < 1) || (items > 1)) {
58703       SWIG_croak("Usage: move_pos_5_get(self);");
58704     }
58705     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_move_t, 0 |  0 );
58706     if (!SWIG_IsOK(res1)) {
58707       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "move_pos_5_get" "', argument " "1"" of type '" "vrna_move_t *""'");
58708     }
58709     arg1 = reinterpret_cast< vrna_move_t * >(argp1);
58710     result = (int) ((arg1)->pos_5);
58711     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
58712 
58713     XSRETURN(argvi);
58714   fail:
58715 
58716     SWIG_croak_null();
58717   }
58718 }
58719 
58720 
XS(_wrap_move_pos_3_set)58721 XS(_wrap_move_pos_3_set) {
58722   {
58723     vrna_move_t *arg1 = (vrna_move_t *) 0 ;
58724     int arg2 ;
58725     void *argp1 = 0 ;
58726     int res1 = 0 ;
58727     int val2 ;
58728     int ecode2 = 0 ;
58729     int argvi = 0;
58730     dXSARGS;
58731 
58732     if ((items < 2) || (items > 2)) {
58733       SWIG_croak("Usage: move_pos_3_set(self,pos_3);");
58734     }
58735     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_move_t, 0 |  0 );
58736     if (!SWIG_IsOK(res1)) {
58737       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "move_pos_3_set" "', argument " "1"" of type '" "vrna_move_t *""'");
58738     }
58739     arg1 = reinterpret_cast< vrna_move_t * >(argp1);
58740     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
58741     if (!SWIG_IsOK(ecode2)) {
58742       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "move_pos_3_set" "', argument " "2"" of type '" "int""'");
58743     }
58744     arg2 = static_cast< int >(val2);
58745     if (arg1) (arg1)->pos_3 = arg2;
58746     ST(argvi) = &PL_sv_undef;
58747 
58748 
58749     XSRETURN(argvi);
58750   fail:
58751 
58752 
58753     SWIG_croak_null();
58754   }
58755 }
58756 
58757 
XS(_wrap_move_pos_3_get)58758 XS(_wrap_move_pos_3_get) {
58759   {
58760     vrna_move_t *arg1 = (vrna_move_t *) 0 ;
58761     void *argp1 = 0 ;
58762     int res1 = 0 ;
58763     int argvi = 0;
58764     int result;
58765     dXSARGS;
58766 
58767     if ((items < 1) || (items > 1)) {
58768       SWIG_croak("Usage: move_pos_3_get(self);");
58769     }
58770     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_move_t, 0 |  0 );
58771     if (!SWIG_IsOK(res1)) {
58772       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "move_pos_3_get" "', argument " "1"" of type '" "vrna_move_t *""'");
58773     }
58774     arg1 = reinterpret_cast< vrna_move_t * >(argp1);
58775     result = (int) ((arg1)->pos_3);
58776     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
58777 
58778     XSRETURN(argvi);
58779   fail:
58780 
58781     SWIG_croak_null();
58782   }
58783 }
58784 
58785 
XS(_wrap_new_move__SWIG_0)58786 XS(_wrap_new_move__SWIG_0) {
58787   {
58788     int arg1 ;
58789     int arg2 ;
58790     int val1 ;
58791     int ecode1 = 0 ;
58792     int val2 ;
58793     int ecode2 = 0 ;
58794     int argvi = 0;
58795     vrna_move_t *result = 0 ;
58796     dXSARGS;
58797 
58798     if ((items < 2) || (items > 2)) {
58799       SWIG_croak("Usage: new_move(pos_5,pos_3);");
58800     }
58801     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
58802     if (!SWIG_IsOK(ecode1)) {
58803       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_move" "', argument " "1"" of type '" "int""'");
58804     }
58805     arg1 = static_cast< int >(val1);
58806     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
58807     if (!SWIG_IsOK(ecode2)) {
58808       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_move" "', argument " "2"" of type '" "int""'");
58809     }
58810     arg2 = static_cast< int >(val2);
58811     {
58812       try {
58813         result = (vrna_move_t *)new_vrna_move_t__SWIG_0(arg1,arg2);
58814       } catch (const std::exception& e) {
58815         SWIG_exception(SWIG_RuntimeError, e.what());
58816       }
58817     }
58818     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_move_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
58819 
58820 
58821     XSRETURN(argvi);
58822   fail:
58823 
58824 
58825     SWIG_croak_null();
58826   }
58827 }
58828 
58829 
XS(_wrap_new_move__SWIG_1)58830 XS(_wrap_new_move__SWIG_1) {
58831   {
58832     int arg1 ;
58833     int val1 ;
58834     int ecode1 = 0 ;
58835     int argvi = 0;
58836     vrna_move_t *result = 0 ;
58837     dXSARGS;
58838 
58839     if ((items < 1) || (items > 1)) {
58840       SWIG_croak("Usage: new_move(pos_5);");
58841     }
58842     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
58843     if (!SWIG_IsOK(ecode1)) {
58844       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_move" "', argument " "1"" of type '" "int""'");
58845     }
58846     arg1 = static_cast< int >(val1);
58847     {
58848       try {
58849         result = (vrna_move_t *)new_vrna_move_t__SWIG_0(arg1);
58850       } catch (const std::exception& e) {
58851         SWIG_exception(SWIG_RuntimeError, e.what());
58852       }
58853     }
58854     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_move_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
58855 
58856     XSRETURN(argvi);
58857   fail:
58858 
58859     SWIG_croak_null();
58860   }
58861 }
58862 
58863 
XS(_wrap_new_move__SWIG_2)58864 XS(_wrap_new_move__SWIG_2) {
58865   {
58866     int argvi = 0;
58867     vrna_move_t *result = 0 ;
58868     dXSARGS;
58869 
58870     if ((items < 0) || (items > 0)) {
58871       SWIG_croak("Usage: new_move();");
58872     }
58873     {
58874       try {
58875         result = (vrna_move_t *)new_vrna_move_t__SWIG_0();
58876       } catch (const std::exception& e) {
58877         SWIG_exception(SWIG_RuntimeError, e.what());
58878       }
58879     }
58880     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_move_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
58881     XSRETURN(argvi);
58882   fail:
58883     SWIG_croak_null();
58884   }
58885 }
58886 
58887 
XS(_wrap_new_move)58888 XS(_wrap_new_move) {
58889   dXSARGS;
58890 
58891   {
58892     unsigned long _index = 0;
58893     SWIG_TypeRank _rank = 0;
58894     if (items == 0) {
58895       SWIG_TypeRank _ranki = 0;
58896       SWIG_TypeRank _rankm = 0;
58897       if (!_index || (_ranki < _rank)) {
58898         _rank = _ranki; _index = 1;
58899         if (_rank == _rankm) goto dispatch;
58900       }
58901     }
58902     if (items == 1) {
58903       SWIG_TypeRank _ranki = 0;
58904       SWIG_TypeRank _rankm = 0;
58905       SWIG_TypeRank _pi = 1;
58906       int _v = 0;
58907       {
58908         {
58909           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
58910           _v = SWIG_CheckState(res);
58911         }
58912       }
58913       if (!_v) goto check_2;
58914       _ranki += _v*_pi;
58915       _rankm += _pi;
58916       _pi *= SWIG_MAXCASTRANK;
58917       if (!_index || (_ranki < _rank)) {
58918         _rank = _ranki; _index = 2;
58919         if (_rank == _rankm) goto dispatch;
58920       }
58921     }
58922   check_2:
58923 
58924     if (items == 2) {
58925       SWIG_TypeRank _ranki = 0;
58926       SWIG_TypeRank _rankm = 0;
58927       SWIG_TypeRank _pi = 1;
58928       int _v = 0;
58929       {
58930         {
58931           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
58932           _v = SWIG_CheckState(res);
58933         }
58934       }
58935       if (!_v) goto check_3;
58936       _ranki += _v*_pi;
58937       _rankm += _pi;
58938       _pi *= SWIG_MAXCASTRANK;
58939       {
58940         {
58941           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
58942           _v = SWIG_CheckState(res);
58943         }
58944       }
58945       if (!_v) goto check_3;
58946       _ranki += _v*_pi;
58947       _rankm += _pi;
58948       _pi *= SWIG_MAXCASTRANK;
58949       if (!_index || (_ranki < _rank)) {
58950         _rank = _ranki; _index = 3;
58951         if (_rank == _rankm) goto dispatch;
58952       }
58953     }
58954   check_3:
58955 
58956   dispatch:
58957     switch(_index) {
58958     case 1:
58959       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_move__SWIG_2); return;
58960     case 2:
58961       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_move__SWIG_1); return;
58962     case 3:
58963       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_move__SWIG_0); return;
58964     }
58965   }
58966 
58967   croak("No matching function for overloaded 'new_move'");
58968   XSRETURN(0);
58969 }
58970 
58971 
XS(_wrap_delete_move)58972 XS(_wrap_delete_move) {
58973   {
58974     vrna_move_t *arg1 = (vrna_move_t *) 0 ;
58975     void *argp1 = 0 ;
58976     int res1 = 0 ;
58977     int argvi = 0;
58978     dXSARGS;
58979 
58980     if ((items < 1) || (items > 1)) {
58981       SWIG_croak("Usage: delete_move(self);");
58982     }
58983     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_move_t, SWIG_POINTER_DISOWN |  0 );
58984     if (!SWIG_IsOK(res1)) {
58985       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_move" "', argument " "1"" of type '" "vrna_move_t *""'");
58986     }
58987     arg1 = reinterpret_cast< vrna_move_t * >(argp1);
58988     {
58989       try {
58990         delete_vrna_move_t(arg1);
58991       } catch (const std::exception& e) {
58992         SWIG_exception(SWIG_RuntimeError, e.what());
58993       }
58994     }
58995     ST(argvi) = &PL_sv_undef;
58996 
58997     XSRETURN(argvi);
58998   fail:
58999 
59000     SWIG_croak_null();
59001   }
59002 }
59003 
59004 
XS(_wrap_move_is_removal)59005 XS(_wrap_move_is_removal) {
59006   {
59007     vrna_move_t *arg1 = (vrna_move_t *) 0 ;
59008     void *argp1 = 0 ;
59009     int res1 = 0 ;
59010     int argvi = 0;
59011     int result;
59012     dXSARGS;
59013 
59014     if ((items < 1) || (items > 1)) {
59015       SWIG_croak("Usage: move_is_removal(self);");
59016     }
59017     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_move_t, 0 |  0 );
59018     if (!SWIG_IsOK(res1)) {
59019       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "move_is_removal" "', argument " "1"" of type '" "vrna_move_t *""'");
59020     }
59021     arg1 = reinterpret_cast< vrna_move_t * >(argp1);
59022     {
59023       try {
59024         result = (int)vrna_move_t_is_removal(arg1);
59025       } catch (const std::exception& e) {
59026         SWIG_exception(SWIG_RuntimeError, e.what());
59027       }
59028     }
59029     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
59030 
59031     XSRETURN(argvi);
59032   fail:
59033 
59034     SWIG_croak_null();
59035   }
59036 }
59037 
59038 
XS(_wrap_move_is_insertion)59039 XS(_wrap_move_is_insertion) {
59040   {
59041     vrna_move_t *arg1 = (vrna_move_t *) 0 ;
59042     void *argp1 = 0 ;
59043     int res1 = 0 ;
59044     int argvi = 0;
59045     int result;
59046     dXSARGS;
59047 
59048     if ((items < 1) || (items > 1)) {
59049       SWIG_croak("Usage: move_is_insertion(self);");
59050     }
59051     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_move_t, 0 |  0 );
59052     if (!SWIG_IsOK(res1)) {
59053       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "move_is_insertion" "', argument " "1"" of type '" "vrna_move_t *""'");
59054     }
59055     arg1 = reinterpret_cast< vrna_move_t * >(argp1);
59056     {
59057       try {
59058         result = (int)vrna_move_t_is_insertion(arg1);
59059       } catch (const std::exception& e) {
59060         SWIG_exception(SWIG_RuntimeError, e.what());
59061       }
59062     }
59063     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
59064 
59065     XSRETURN(argvi);
59066   fail:
59067 
59068     SWIG_croak_null();
59069   }
59070 }
59071 
59072 
XS(_wrap_move_is_shift)59073 XS(_wrap_move_is_shift) {
59074   {
59075     vrna_move_t *arg1 = (vrna_move_t *) 0 ;
59076     void *argp1 = 0 ;
59077     int res1 = 0 ;
59078     int argvi = 0;
59079     int result;
59080     dXSARGS;
59081 
59082     if ((items < 1) || (items > 1)) {
59083       SWIG_croak("Usage: move_is_shift(self);");
59084     }
59085     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_move_t, 0 |  0 );
59086     if (!SWIG_IsOK(res1)) {
59087       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "move_is_shift" "', argument " "1"" of type '" "vrna_move_t *""'");
59088     }
59089     arg1 = reinterpret_cast< vrna_move_t * >(argp1);
59090     {
59091       try {
59092         result = (int)vrna_move_t_is_shift(arg1);
59093       } catch (const std::exception& e) {
59094         SWIG_exception(SWIG_RuntimeError, e.what());
59095       }
59096     }
59097     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
59098 
59099     XSRETURN(argvi);
59100   fail:
59101 
59102     SWIG_croak_null();
59103   }
59104 }
59105 
59106 
XS(_wrap_move_compare__SWIG_0)59107 XS(_wrap_move_compare__SWIG_0) {
59108   {
59109     vrna_move_t *arg1 = (vrna_move_t *) 0 ;
59110     vrna_move_t *arg2 = (vrna_move_t *) 0 ;
59111     std::vector< int > arg3 ;
59112     void *argp1 = 0 ;
59113     int res1 = 0 ;
59114     void *argp2 = 0 ;
59115     int res2 = 0 ;
59116     std::vector< int > *v3 ;
59117     int argvi = 0;
59118     int result;
59119     dXSARGS;
59120 
59121     if ((items < 3) || (items > 3)) {
59122       SWIG_croak("Usage: move_compare(self,b,pt);");
59123     }
59124     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_move_t, 0 |  0 );
59125     if (!SWIG_IsOK(res1)) {
59126       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "move_compare" "', argument " "1"" of type '" "vrna_move_t *""'");
59127     }
59128     arg1 = reinterpret_cast< vrna_move_t * >(argp1);
59129     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_move_t, 0 |  0 );
59130     if (!SWIG_IsOK(res2)) {
59131       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "move_compare" "', argument " "2"" of type '" "vrna_move_t const *""'");
59132     }
59133     arg2 = reinterpret_cast< vrna_move_t * >(argp2);
59134     {
59135       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
59136           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
59137         arg3 = *v3;
59138       } else if (SvROK(ST(2))) {
59139         AV *av = (AV *)SvRV(ST(2));
59140         if (SvTYPE(av) != SVt_PVAV)
59141         SWIG_croak("Type error in argument 3 of move_compare. "
59142           "Expected an array of ""int");
59143         SV **tv;
59144         I32 len = av_len(av) + 1;
59145         for (int i=0; i<len; i++) {
59146           tv = av_fetch(av, i, 0);
59147           if (SvIOK(*tv)) {
59148             (&arg3)->push_back((int)SvIVX(*tv));
59149           } else {
59150             SWIG_croak("Type error in argument 3 of "
59151               "move_compare. "
59152               "Expected an array of ""int");
59153           }
59154         }
59155       } else {
59156         SWIG_croak("Type error in argument 3 of move_compare. "
59157           "Expected an array of ""int");
59158       }
59159     }
59160     {
59161       try {
59162         result = (int)vrna_move_t_compare__SWIG_0(arg1,(vrna_move_t const *)arg2,arg3);
59163       } catch (const std::exception& e) {
59164         SWIG_exception(SWIG_RuntimeError, e.what());
59165       }
59166     }
59167     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
59168 
59169 
59170     XSRETURN(argvi);
59171   fail:
59172 
59173 
59174     SWIG_croak_null();
59175   }
59176 }
59177 
59178 
XS(_wrap_move_compare__SWIG_1)59179 XS(_wrap_move_compare__SWIG_1) {
59180   {
59181     vrna_move_t *arg1 = (vrna_move_t *) 0 ;
59182     vrna_move_t *arg2 = (vrna_move_t *) 0 ;
59183     void *argp1 = 0 ;
59184     int res1 = 0 ;
59185     void *argp2 = 0 ;
59186     int res2 = 0 ;
59187     int argvi = 0;
59188     int result;
59189     dXSARGS;
59190 
59191     if ((items < 2) || (items > 2)) {
59192       SWIG_croak("Usage: move_compare(self,b);");
59193     }
59194     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_move_t, 0 |  0 );
59195     if (!SWIG_IsOK(res1)) {
59196       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "move_compare" "', argument " "1"" of type '" "vrna_move_t *""'");
59197     }
59198     arg1 = reinterpret_cast< vrna_move_t * >(argp1);
59199     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_move_t, 0 |  0 );
59200     if (!SWIG_IsOK(res2)) {
59201       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "move_compare" "', argument " "2"" of type '" "vrna_move_t const *""'");
59202     }
59203     arg2 = reinterpret_cast< vrna_move_t * >(argp2);
59204     {
59205       try {
59206         result = (int)vrna_move_t_compare__SWIG_0(arg1,(vrna_move_t const *)arg2);
59207       } catch (const std::exception& e) {
59208         SWIG_exception(SWIG_RuntimeError, e.what());
59209       }
59210     }
59211     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
59212 
59213 
59214     XSRETURN(argvi);
59215   fail:
59216 
59217 
59218     SWIG_croak_null();
59219   }
59220 }
59221 
59222 
XS(_wrap_move_compare)59223 XS(_wrap_move_compare) {
59224   dXSARGS;
59225 
59226   {
59227     unsigned long _index = 0;
59228     SWIG_TypeRank _rank = 0;
59229     if (items == 2) {
59230       SWIG_TypeRank _ranki = 0;
59231       SWIG_TypeRank _rankm = 0;
59232       SWIG_TypeRank _pi = 1;
59233       int _v = 0;
59234       {
59235         void *vptr = 0;
59236         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_move_t, 0);
59237         _v = SWIG_CheckState(res);
59238       }
59239       if (!_v) goto check_1;
59240       _ranki += _v*_pi;
59241       _rankm += _pi;
59242       _pi *= SWIG_MAXCASTRANK;
59243       {
59244         void *vptr = 0;
59245         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_move_t, 0);
59246         _v = SWIG_CheckState(res);
59247       }
59248       if (!_v) goto check_1;
59249       _ranki += _v*_pi;
59250       _rankm += _pi;
59251       _pi *= SWIG_MAXCASTRANK;
59252       if (!_index || (_ranki < _rank)) {
59253         _rank = _ranki; _index = 1;
59254         if (_rank == _rankm) goto dispatch;
59255       }
59256     }
59257   check_1:
59258 
59259     if (items == 3) {
59260       SWIG_TypeRank _ranki = 0;
59261       SWIG_TypeRank _rankm = 0;
59262       SWIG_TypeRank _pi = 1;
59263       int _v = 0;
59264       {
59265         void *vptr = 0;
59266         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_move_t, 0);
59267         _v = SWIG_CheckState(res);
59268       }
59269       if (!_v) goto check_2;
59270       _ranki += _v*_pi;
59271       _rankm += _pi;
59272       _pi *= SWIG_MAXCASTRANK;
59273       {
59274         void *vptr = 0;
59275         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_move_t, 0);
59276         _v = SWIG_CheckState(res);
59277       }
59278       if (!_v) goto check_2;
59279       _ranki += _v*_pi;
59280       _rankm += _pi;
59281       _pi *= SWIG_MAXCASTRANK;
59282       {
59283         {
59284           {
59285             /* wrapped vector? */
59286             std::vector< int >* v;
59287             if (SWIG_ConvertPtr(ST(2),(void **) &v,
59288                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
59289               _v = 1;
59290             } else if (SvROK(ST(2))) {
59291               /* native sequence? */
59292               AV *av = (AV *)SvRV(ST(2));
59293               if (SvTYPE(av) == SVt_PVAV) {
59294                 I32 len = av_len(av) + 1;
59295                 if (len == 0) {
59296                   /* an empty sequence can be of any type */
59297                   _v = 1;
59298                 } else {
59299                   /* check the first element only */
59300                   SV **tv = av_fetch(av, 0, 0);
59301                   if (SvIOK(*tv))
59302                   _v = 1;
59303                   else
59304                   _v = 0;
59305                 }
59306               }
59307             } else {
59308               _v = 0;
59309             }
59310           }
59311         }
59312       }
59313       if (!_v) goto check_2;
59314       _ranki += _v*_pi;
59315       _rankm += _pi;
59316       _pi *= SWIG_MAXCASTRANK;
59317       if (!_index || (_ranki < _rank)) {
59318         _rank = _ranki; _index = 2;
59319         if (_rank == _rankm) goto dispatch;
59320       }
59321     }
59322   check_2:
59323 
59324   dispatch:
59325     switch(_index) {
59326     case 1:
59327       PUSHMARK(MARK); SWIG_CALLXS(_wrap_move_compare__SWIG_1); return;
59328     case 2:
59329       PUSHMARK(MARK); SWIG_CALLXS(_wrap_move_compare__SWIG_0); return;
59330     }
59331   }
59332 
59333   croak("No matching function for overloaded 'move_compare'");
59334   XSRETURN(0);
59335 }
59336 
59337 
XS(_wrap_path_type_set)59338 XS(_wrap_path_type_set) {
59339   {
59340     vrna_path_t *arg1 = (vrna_path_t *) 0 ;
59341     unsigned int arg2 ;
59342     void *argp1 = 0 ;
59343     int res1 = 0 ;
59344     unsigned int val2 ;
59345     int ecode2 = 0 ;
59346     int argvi = 0;
59347     dXSARGS;
59348 
59349     if ((items < 2) || (items > 2)) {
59350       SWIG_croak("Usage: path_type_set(self,type);");
59351     }
59352     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_path_t, 0 |  0 );
59353     if (!SWIG_IsOK(res1)) {
59354       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "path_type_set" "', argument " "1"" of type '" "vrna_path_t *""'");
59355     }
59356     arg1 = reinterpret_cast< vrna_path_t * >(argp1);
59357     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
59358     if (!SWIG_IsOK(ecode2)) {
59359       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "path_type_set" "', argument " "2"" of type '" "unsigned int""'");
59360     }
59361     arg2 = static_cast< unsigned int >(val2);
59362     if (arg1) (arg1)->type = arg2;
59363     ST(argvi) = &PL_sv_undef;
59364 
59365 
59366     XSRETURN(argvi);
59367   fail:
59368 
59369 
59370     SWIG_croak_null();
59371   }
59372 }
59373 
59374 
XS(_wrap_path_type_get)59375 XS(_wrap_path_type_get) {
59376   {
59377     vrna_path_t *arg1 = (vrna_path_t *) 0 ;
59378     void *argp1 = 0 ;
59379     int res1 = 0 ;
59380     int argvi = 0;
59381     unsigned int result;
59382     dXSARGS;
59383 
59384     if ((items < 1) || (items > 1)) {
59385       SWIG_croak("Usage: path_type_get(self);");
59386     }
59387     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_path_t, 0 |  0 );
59388     if (!SWIG_IsOK(res1)) {
59389       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "path_type_get" "', argument " "1"" of type '" "vrna_path_t *""'");
59390     }
59391     arg1 = reinterpret_cast< vrna_path_t * >(argp1);
59392     result = (unsigned int) ((arg1)->type);
59393     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
59394 
59395     XSRETURN(argvi);
59396   fail:
59397 
59398     SWIG_croak_null();
59399   }
59400 }
59401 
59402 
XS(_wrap_path_en_set)59403 XS(_wrap_path_en_set) {
59404   {
59405     vrna_path_t *arg1 = (vrna_path_t *) 0 ;
59406     double arg2 ;
59407     void *argp1 = 0 ;
59408     int res1 = 0 ;
59409     double val2 ;
59410     int ecode2 = 0 ;
59411     int argvi = 0;
59412     dXSARGS;
59413 
59414     if ((items < 2) || (items > 2)) {
59415       SWIG_croak("Usage: path_en_set(self,en);");
59416     }
59417     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_path_t, 0 |  0 );
59418     if (!SWIG_IsOK(res1)) {
59419       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "path_en_set" "', argument " "1"" of type '" "vrna_path_t *""'");
59420     }
59421     arg1 = reinterpret_cast< vrna_path_t * >(argp1);
59422     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
59423     if (!SWIG_IsOK(ecode2)) {
59424       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "path_en_set" "', argument " "2"" of type '" "double""'");
59425     }
59426     arg2 = static_cast< double >(val2);
59427     if (arg1) (arg1)->en = arg2;
59428     ST(argvi) = &PL_sv_undef;
59429 
59430 
59431     XSRETURN(argvi);
59432   fail:
59433 
59434 
59435     SWIG_croak_null();
59436   }
59437 }
59438 
59439 
XS(_wrap_path_en_get)59440 XS(_wrap_path_en_get) {
59441   {
59442     vrna_path_t *arg1 = (vrna_path_t *) 0 ;
59443     void *argp1 = 0 ;
59444     int res1 = 0 ;
59445     int argvi = 0;
59446     double result;
59447     dXSARGS;
59448 
59449     if ((items < 1) || (items > 1)) {
59450       SWIG_croak("Usage: path_en_get(self);");
59451     }
59452     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_path_t, 0 |  0 );
59453     if (!SWIG_IsOK(res1)) {
59454       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "path_en_get" "', argument " "1"" of type '" "vrna_path_t *""'");
59455     }
59456     arg1 = reinterpret_cast< vrna_path_t * >(argp1);
59457     result = (double) ((arg1)->en);
59458     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
59459 
59460     XSRETURN(argvi);
59461   fail:
59462 
59463     SWIG_croak_null();
59464   }
59465 }
59466 
59467 
XS(_wrap_path_s_set)59468 XS(_wrap_path_s_set) {
59469   {
59470     vrna_path_t *arg1 = (vrna_path_t *) 0 ;
59471     char *arg2 = (char *) 0 ;
59472     void *argp1 = 0 ;
59473     int res1 = 0 ;
59474     int res2 ;
59475     char *buf2 = 0 ;
59476     int alloc2 = 0 ;
59477     int argvi = 0;
59478     dXSARGS;
59479 
59480     if ((items < 2) || (items > 2)) {
59481       SWIG_croak("Usage: path_s_set(self,s);");
59482     }
59483     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_path_t, 0 |  0 );
59484     if (!SWIG_IsOK(res1)) {
59485       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "path_s_set" "', argument " "1"" of type '" "vrna_path_t *""'");
59486     }
59487     arg1 = reinterpret_cast< vrna_path_t * >(argp1);
59488     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
59489     if (!SWIG_IsOK(res2)) {
59490       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "path_s_set" "', argument " "2"" of type '" "char *""'");
59491     }
59492     arg2 = reinterpret_cast< char * >(buf2);
59493     if (arg1->s) delete[] arg1->s;
59494     if (arg2) {
59495       size_t size = strlen(reinterpret_cast< const char * >(arg2)) + 1;
59496       arg1->s = (char *)reinterpret_cast< char* >(memcpy(new char[size], reinterpret_cast< const char * >(arg2), sizeof(char)*(size)));
59497     } else {
59498       arg1->s = 0;
59499     }
59500     ST(argvi) = &PL_sv_undef;
59501 
59502     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
59503     XSRETURN(argvi);
59504   fail:
59505 
59506     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
59507     SWIG_croak_null();
59508   }
59509 }
59510 
59511 
XS(_wrap_path_s_get)59512 XS(_wrap_path_s_get) {
59513   {
59514     vrna_path_t *arg1 = (vrna_path_t *) 0 ;
59515     void *argp1 = 0 ;
59516     int res1 = 0 ;
59517     int argvi = 0;
59518     char *result = 0 ;
59519     dXSARGS;
59520 
59521     if ((items < 1) || (items > 1)) {
59522       SWIG_croak("Usage: path_s_get(self);");
59523     }
59524     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_path_t, 0 |  0 );
59525     if (!SWIG_IsOK(res1)) {
59526       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "path_s_get" "', argument " "1"" of type '" "vrna_path_t *""'");
59527     }
59528     arg1 = reinterpret_cast< vrna_path_t * >(argp1);
59529     result = (char *) ((arg1)->s);
59530     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
59531 
59532     XSRETURN(argvi);
59533   fail:
59534 
59535     SWIG_croak_null();
59536   }
59537 }
59538 
59539 
XS(_wrap_path_move_set)59540 XS(_wrap_path_move_set) {
59541   {
59542     vrna_path_t *arg1 = (vrna_path_t *) 0 ;
59543     vrna_move_t *arg2 = (vrna_move_t *) 0 ;
59544     void *argp1 = 0 ;
59545     int res1 = 0 ;
59546     void *argp2 = 0 ;
59547     int res2 = 0 ;
59548     int argvi = 0;
59549     dXSARGS;
59550 
59551     if ((items < 2) || (items > 2)) {
59552       SWIG_croak("Usage: path_move_set(self,move);");
59553     }
59554     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_path_t, 0 |  0 );
59555     if (!SWIG_IsOK(res1)) {
59556       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "path_move_set" "', argument " "1"" of type '" "vrna_path_t *""'");
59557     }
59558     arg1 = reinterpret_cast< vrna_path_t * >(argp1);
59559     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_move_t, 0 |  0 );
59560     if (!SWIG_IsOK(res2)) {
59561       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "path_move_set" "', argument " "2"" of type '" "vrna_move_t *""'");
59562     }
59563     arg2 = reinterpret_cast< vrna_move_t * >(argp2);
59564     if (arg1) (arg1)->move = *arg2;
59565     ST(argvi) = &PL_sv_undef;
59566 
59567 
59568     XSRETURN(argvi);
59569   fail:
59570 
59571 
59572     SWIG_croak_null();
59573   }
59574 }
59575 
59576 
XS(_wrap_path_move_get)59577 XS(_wrap_path_move_get) {
59578   {
59579     vrna_path_t *arg1 = (vrna_path_t *) 0 ;
59580     void *argp1 = 0 ;
59581     int res1 = 0 ;
59582     int argvi = 0;
59583     vrna_move_t *result = 0 ;
59584     dXSARGS;
59585 
59586     if ((items < 1) || (items > 1)) {
59587       SWIG_croak("Usage: path_move_get(self);");
59588     }
59589     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_path_t, 0 |  0 );
59590     if (!SWIG_IsOK(res1)) {
59591       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "path_move_get" "', argument " "1"" of type '" "vrna_path_t *""'");
59592     }
59593     arg1 = reinterpret_cast< vrna_path_t * >(argp1);
59594     result = (vrna_move_t *)& ((arg1)->move);
59595     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_move_t, 0 | SWIG_SHADOW); argvi++ ;
59596 
59597     XSRETURN(argvi);
59598   fail:
59599 
59600     SWIG_croak_null();
59601   }
59602 }
59603 
59604 
XS(_wrap_new_path__SWIG_0)59605 XS(_wrap_new_path__SWIG_0) {
59606   {
59607     double arg1 ;
59608     std::string arg2 ;
59609     vrna_move_t *arg3 = (vrna_move_t *) 0 ;
59610     unsigned int arg4 ;
59611     double val1 ;
59612     int ecode1 = 0 ;
59613     void *argp3 = 0 ;
59614     int res3 = 0 ;
59615     unsigned int val4 ;
59616     int ecode4 = 0 ;
59617     int argvi = 0;
59618     vrna_path_t *result = 0 ;
59619     dXSARGS;
59620 
59621     if ((items < 4) || (items > 4)) {
59622       SWIG_croak("Usage: new_path(en,s,move,type);");
59623     }
59624     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
59625     if (!SWIG_IsOK(ecode1)) {
59626       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_path" "', argument " "1"" of type '" "double""'");
59627     }
59628     arg1 = static_cast< double >(val1);
59629     {
59630       std::string *ptr = (std::string *)0;
59631       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
59632       if (!SWIG_IsOK(res) || !ptr) {
59633         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "new_path" "', argument " "2"" of type '" "std::string""'");
59634       }
59635       arg2 = *ptr;
59636       if (SWIG_IsNewObj(res)) delete ptr;
59637     }
59638     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_vrna_move_t, 0 |  0 );
59639     if (!SWIG_IsOK(res3)) {
59640       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "new_path" "', argument " "3"" of type '" "vrna_move_t *""'");
59641     }
59642     arg3 = reinterpret_cast< vrna_move_t * >(argp3);
59643     ecode4 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
59644     if (!SWIG_IsOK(ecode4)) {
59645       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "new_path" "', argument " "4"" of type '" "unsigned int""'");
59646     }
59647     arg4 = static_cast< unsigned int >(val4);
59648     {
59649       try {
59650         result = (vrna_path_t *)new_vrna_path_t__SWIG_0(arg1,arg2,arg3,arg4);
59651       } catch (const std::exception& e) {
59652         SWIG_exception(SWIG_RuntimeError, e.what());
59653       }
59654     }
59655     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_path_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
59656 
59657 
59658 
59659 
59660     XSRETURN(argvi);
59661   fail:
59662 
59663 
59664 
59665 
59666     SWIG_croak_null();
59667   }
59668 }
59669 
59670 
XS(_wrap_new_path__SWIG_1)59671 XS(_wrap_new_path__SWIG_1) {
59672   {
59673     double arg1 ;
59674     std::string arg2 ;
59675     vrna_move_t *arg3 = (vrna_move_t *) 0 ;
59676     double val1 ;
59677     int ecode1 = 0 ;
59678     void *argp3 = 0 ;
59679     int res3 = 0 ;
59680     int argvi = 0;
59681     vrna_path_t *result = 0 ;
59682     dXSARGS;
59683 
59684     if ((items < 3) || (items > 3)) {
59685       SWIG_croak("Usage: new_path(en,s,move);");
59686     }
59687     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
59688     if (!SWIG_IsOK(ecode1)) {
59689       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_path" "', argument " "1"" of type '" "double""'");
59690     }
59691     arg1 = static_cast< double >(val1);
59692     {
59693       std::string *ptr = (std::string *)0;
59694       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
59695       if (!SWIG_IsOK(res) || !ptr) {
59696         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "new_path" "', argument " "2"" of type '" "std::string""'");
59697       }
59698       arg2 = *ptr;
59699       if (SWIG_IsNewObj(res)) delete ptr;
59700     }
59701     res3 = SWIG_ConvertPtr(ST(2), &argp3,SWIGTYPE_p_vrna_move_t, 0 |  0 );
59702     if (!SWIG_IsOK(res3)) {
59703       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "new_path" "', argument " "3"" of type '" "vrna_move_t *""'");
59704     }
59705     arg3 = reinterpret_cast< vrna_move_t * >(argp3);
59706     {
59707       try {
59708         result = (vrna_path_t *)new_vrna_path_t__SWIG_0(arg1,arg2,arg3);
59709       } catch (const std::exception& e) {
59710         SWIG_exception(SWIG_RuntimeError, e.what());
59711       }
59712     }
59713     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_path_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
59714 
59715 
59716 
59717     XSRETURN(argvi);
59718   fail:
59719 
59720 
59721 
59722     SWIG_croak_null();
59723   }
59724 }
59725 
59726 
XS(_wrap_new_path__SWIG_2)59727 XS(_wrap_new_path__SWIG_2) {
59728   {
59729     double arg1 ;
59730     std::string arg2 ;
59731     double val1 ;
59732     int ecode1 = 0 ;
59733     int argvi = 0;
59734     vrna_path_t *result = 0 ;
59735     dXSARGS;
59736 
59737     if ((items < 2) || (items > 2)) {
59738       SWIG_croak("Usage: new_path(en,s);");
59739     }
59740     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
59741     if (!SWIG_IsOK(ecode1)) {
59742       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_path" "', argument " "1"" of type '" "double""'");
59743     }
59744     arg1 = static_cast< double >(val1);
59745     {
59746       std::string *ptr = (std::string *)0;
59747       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
59748       if (!SWIG_IsOK(res) || !ptr) {
59749         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "new_path" "', argument " "2"" of type '" "std::string""'");
59750       }
59751       arg2 = *ptr;
59752       if (SWIG_IsNewObj(res)) delete ptr;
59753     }
59754     {
59755       try {
59756         result = (vrna_path_t *)new_vrna_path_t__SWIG_0(arg1,arg2);
59757       } catch (const std::exception& e) {
59758         SWIG_exception(SWIG_RuntimeError, e.what());
59759       }
59760     }
59761     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_path_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
59762 
59763 
59764     XSRETURN(argvi);
59765   fail:
59766 
59767 
59768     SWIG_croak_null();
59769   }
59770 }
59771 
59772 
XS(_wrap_new_path__SWIG_3)59773 XS(_wrap_new_path__SWIG_3) {
59774   {
59775     double arg1 ;
59776     double val1 ;
59777     int ecode1 = 0 ;
59778     int argvi = 0;
59779     vrna_path_t *result = 0 ;
59780     dXSARGS;
59781 
59782     if ((items < 1) || (items > 1)) {
59783       SWIG_croak("Usage: new_path(en);");
59784     }
59785     ecode1 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
59786     if (!SWIG_IsOK(ecode1)) {
59787       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_path" "', argument " "1"" of type '" "double""'");
59788     }
59789     arg1 = static_cast< double >(val1);
59790     {
59791       try {
59792         result = (vrna_path_t *)new_vrna_path_t__SWIG_0(arg1);
59793       } catch (const std::exception& e) {
59794         SWIG_exception(SWIG_RuntimeError, e.what());
59795       }
59796     }
59797     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_path_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
59798 
59799     XSRETURN(argvi);
59800   fail:
59801 
59802     SWIG_croak_null();
59803   }
59804 }
59805 
59806 
XS(_wrap_new_path)59807 XS(_wrap_new_path) {
59808   dXSARGS;
59809 
59810   {
59811     unsigned long _index = 0;
59812     SWIG_TypeRank _rank = 0;
59813     if (items == 1) {
59814       SWIG_TypeRank _ranki = 0;
59815       SWIG_TypeRank _rankm = 0;
59816       SWIG_TypeRank _pi = 1;
59817       int _v = 0;
59818       {
59819         {
59820           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
59821           _v = SWIG_CheckState(res);
59822         }
59823       }
59824       if (!_v) goto check_1;
59825       _ranki += _v*_pi;
59826       _rankm += _pi;
59827       _pi *= SWIG_MAXCASTRANK;
59828       if (!_index || (_ranki < _rank)) {
59829         _rank = _ranki; _index = 1;
59830         if (_rank == _rankm) goto dispatch;
59831       }
59832     }
59833   check_1:
59834 
59835     if (items == 2) {
59836       SWIG_TypeRank _ranki = 0;
59837       SWIG_TypeRank _rankm = 0;
59838       SWIG_TypeRank _pi = 1;
59839       int _v = 0;
59840       {
59841         {
59842           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
59843           _v = SWIG_CheckState(res);
59844         }
59845       }
59846       if (!_v) goto check_2;
59847       _ranki += _v*_pi;
59848       _rankm += _pi;
59849       _pi *= SWIG_MAXCASTRANK;
59850       {
59851         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
59852         _v = SWIG_CheckState(res);
59853       }
59854       if (!_v) goto check_2;
59855       _ranki += _v*_pi;
59856       _rankm += _pi;
59857       _pi *= SWIG_MAXCASTRANK;
59858       if (!_index || (_ranki < _rank)) {
59859         _rank = _ranki; _index = 2;
59860         if (_rank == _rankm) goto dispatch;
59861       }
59862     }
59863   check_2:
59864 
59865     if (items == 3) {
59866       SWIG_TypeRank _ranki = 0;
59867       SWIG_TypeRank _rankm = 0;
59868       SWIG_TypeRank _pi = 1;
59869       int _v = 0;
59870       {
59871         {
59872           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
59873           _v = SWIG_CheckState(res);
59874         }
59875       }
59876       if (!_v) goto check_3;
59877       _ranki += _v*_pi;
59878       _rankm += _pi;
59879       _pi *= SWIG_MAXCASTRANK;
59880       {
59881         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
59882         _v = SWIG_CheckState(res);
59883       }
59884       if (!_v) goto check_3;
59885       _ranki += _v*_pi;
59886       _rankm += _pi;
59887       _pi *= SWIG_MAXCASTRANK;
59888       {
59889         void *vptr = 0;
59890         int res = SWIG_ConvertPtr(ST(2), &vptr, SWIGTYPE_p_vrna_move_t, 0);
59891         _v = SWIG_CheckState(res);
59892       }
59893       if (!_v) goto check_3;
59894       _ranki += _v*_pi;
59895       _rankm += _pi;
59896       _pi *= SWIG_MAXCASTRANK;
59897       if (!_index || (_ranki < _rank)) {
59898         _rank = _ranki; _index = 3;
59899         if (_rank == _rankm) goto dispatch;
59900       }
59901     }
59902   check_3:
59903 
59904     if (items == 4) {
59905       SWIG_TypeRank _ranki = 0;
59906       SWIG_TypeRank _rankm = 0;
59907       SWIG_TypeRank _pi = 1;
59908       int _v = 0;
59909       {
59910         {
59911           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
59912           _v = SWIG_CheckState(res);
59913         }
59914       }
59915       if (!_v) goto check_4;
59916       _ranki += _v*_pi;
59917       _rankm += _pi;
59918       _pi *= SWIG_MAXCASTRANK;
59919       {
59920         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
59921         _v = SWIG_CheckState(res);
59922       }
59923       if (!_v) goto check_4;
59924       _ranki += _v*_pi;
59925       _rankm += _pi;
59926       _pi *= SWIG_MAXCASTRANK;
59927       {
59928         void *vptr = 0;
59929         int res = SWIG_ConvertPtr(ST(2), &vptr, SWIGTYPE_p_vrna_move_t, 0);
59930         _v = SWIG_CheckState(res);
59931       }
59932       if (!_v) goto check_4;
59933       _ranki += _v*_pi;
59934       _rankm += _pi;
59935       _pi *= SWIG_MAXCASTRANK;
59936       {
59937         {
59938           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
59939           _v = SWIG_CheckState(res);
59940         }
59941       }
59942       if (!_v) goto check_4;
59943       _ranki += _v*_pi;
59944       _rankm += _pi;
59945       _pi *= SWIG_MAXCASTRANK;
59946       if (!_index || (_ranki < _rank)) {
59947         _rank = _ranki; _index = 4;
59948         if (_rank == _rankm) goto dispatch;
59949       }
59950     }
59951   check_4:
59952 
59953   dispatch:
59954     switch(_index) {
59955     case 1:
59956       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_path__SWIG_3); return;
59957     case 2:
59958       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_path__SWIG_2); return;
59959     case 3:
59960       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_path__SWIG_1); return;
59961     case 4:
59962       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_path__SWIG_0); return;
59963     }
59964   }
59965 
59966   croak("No matching function for overloaded 'new_path'");
59967   XSRETURN(0);
59968 }
59969 
59970 
XS(_wrap_delete_path)59971 XS(_wrap_delete_path) {
59972   {
59973     vrna_path_t *arg1 = (vrna_path_t *) 0 ;
59974     void *argp1 = 0 ;
59975     int res1 = 0 ;
59976     int argvi = 0;
59977     dXSARGS;
59978 
59979     if ((items < 1) || (items > 1)) {
59980       SWIG_croak("Usage: delete_path(self);");
59981     }
59982     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_path_t, SWIG_POINTER_DISOWN |  0 );
59983     if (!SWIG_IsOK(res1)) {
59984       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_path" "', argument " "1"" of type '" "vrna_path_t *""'");
59985     }
59986     arg1 = reinterpret_cast< vrna_path_t * >(argp1);
59987     {
59988       try {
59989         delete_vrna_path_t(arg1);
59990       } catch (const std::exception& e) {
59991         SWIG_exception(SWIG_RuntimeError, e.what());
59992       }
59993     }
59994     ST(argvi) = &PL_sv_undef;
59995 
59996     XSRETURN(argvi);
59997   fail:
59998 
59999     SWIG_croak_null();
60000   }
60001 }
60002 
60003 
XS(_wrap_new_path_options)60004 XS(_wrap_new_path_options) {
60005   {
60006     int argvi = 0;
60007     vrna_path_options_s *result = 0 ;
60008     dXSARGS;
60009 
60010     if ((items < 0) || (items > 0)) {
60011       SWIG_croak("Usage: new_path_options();");
60012     }
60013     {
60014       try {
60015         result = (vrna_path_options_s *)new_vrna_path_options_s();
60016       } catch (const std::exception& e) {
60017         SWIG_exception(SWIG_RuntimeError, e.what());
60018       }
60019     }
60020     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_path_options_s, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
60021     XSRETURN(argvi);
60022   fail:
60023     SWIG_croak_null();
60024   }
60025 }
60026 
60027 
XS(_wrap_delete_path_options)60028 XS(_wrap_delete_path_options) {
60029   {
60030     vrna_path_options_s *arg1 = (vrna_path_options_s *) 0 ;
60031     void *argp1 = 0 ;
60032     int res1 = 0 ;
60033     int argvi = 0;
60034     dXSARGS;
60035 
60036     if ((items < 1) || (items > 1)) {
60037       SWIG_croak("Usage: delete_path_options(self);");
60038     }
60039     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_path_options_s, SWIG_POINTER_DISOWN |  0 );
60040     if (!SWIG_IsOK(res1)) {
60041       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_path_options" "', argument " "1"" of type '" "vrna_path_options_s *""'");
60042     }
60043     arg1 = reinterpret_cast< vrna_path_options_s * >(argp1);
60044     {
60045       try {
60046         delete_vrna_path_options_s(arg1);
60047       } catch (const std::exception& e) {
60048         SWIG_exception(SWIG_RuntimeError, e.what());
60049       }
60050     }
60051     ST(argvi) = &PL_sv_undef;
60052 
60053     XSRETURN(argvi);
60054   fail:
60055 
60056     SWIG_croak_null();
60057   }
60058 }
60059 
60060 
XS(_wrap_path_options_findpath__SWIG_0)60061 XS(_wrap_path_options_findpath__SWIG_0) {
60062   {
60063     int arg1 ;
60064     unsigned int arg2 ;
60065     int val1 ;
60066     int ecode1 = 0 ;
60067     unsigned int val2 ;
60068     int ecode2 = 0 ;
60069     int argvi = 0;
60070     vrna_path_options_s *result = 0 ;
60071     dXSARGS;
60072 
60073     if ((items < 2) || (items > 2)) {
60074       SWIG_croak("Usage: path_options_findpath(width,type);");
60075     }
60076     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
60077     if (!SWIG_IsOK(ecode1)) {
60078       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "path_options_findpath" "', argument " "1"" of type '" "int""'");
60079     }
60080     arg1 = static_cast< int >(val1);
60081     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
60082     if (!SWIG_IsOK(ecode2)) {
60083       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "path_options_findpath" "', argument " "2"" of type '" "unsigned int""'");
60084     }
60085     arg2 = static_cast< unsigned int >(val2);
60086     {
60087       try {
60088         result = (vrna_path_options_s *)my_path_options_findpath(arg1,arg2);
60089       } catch (const std::exception& e) {
60090         SWIG_exception(SWIG_RuntimeError, e.what());
60091       }
60092     }
60093     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_path_options_s, 0 | SWIG_SHADOW); argvi++ ;
60094 
60095 
60096     XSRETURN(argvi);
60097   fail:
60098 
60099 
60100     SWIG_croak_null();
60101   }
60102 }
60103 
60104 
XS(_wrap_path_options_findpath__SWIG_1)60105 XS(_wrap_path_options_findpath__SWIG_1) {
60106   {
60107     int arg1 ;
60108     int val1 ;
60109     int ecode1 = 0 ;
60110     int argvi = 0;
60111     vrna_path_options_s *result = 0 ;
60112     dXSARGS;
60113 
60114     if ((items < 1) || (items > 1)) {
60115       SWIG_croak("Usage: path_options_findpath(width);");
60116     }
60117     ecode1 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
60118     if (!SWIG_IsOK(ecode1)) {
60119       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "path_options_findpath" "', argument " "1"" of type '" "int""'");
60120     }
60121     arg1 = static_cast< int >(val1);
60122     {
60123       try {
60124         result = (vrna_path_options_s *)my_path_options_findpath(arg1);
60125       } catch (const std::exception& e) {
60126         SWIG_exception(SWIG_RuntimeError, e.what());
60127       }
60128     }
60129     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_path_options_s, 0 | SWIG_SHADOW); argvi++ ;
60130 
60131     XSRETURN(argvi);
60132   fail:
60133 
60134     SWIG_croak_null();
60135   }
60136 }
60137 
60138 
XS(_wrap_path_options_findpath__SWIG_2)60139 XS(_wrap_path_options_findpath__SWIG_2) {
60140   {
60141     int argvi = 0;
60142     vrna_path_options_s *result = 0 ;
60143     dXSARGS;
60144 
60145     if ((items < 0) || (items > 0)) {
60146       SWIG_croak("Usage: path_options_findpath();");
60147     }
60148     {
60149       try {
60150         result = (vrna_path_options_s *)my_path_options_findpath();
60151       } catch (const std::exception& e) {
60152         SWIG_exception(SWIG_RuntimeError, e.what());
60153       }
60154     }
60155     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_path_options_s, 0 | SWIG_SHADOW); argvi++ ;
60156     XSRETURN(argvi);
60157   fail:
60158     SWIG_croak_null();
60159   }
60160 }
60161 
60162 
XS(_wrap_path_options_findpath)60163 XS(_wrap_path_options_findpath) {
60164   dXSARGS;
60165 
60166   {
60167     unsigned long _index = 0;
60168     SWIG_TypeRank _rank = 0;
60169     if (items == 0) {
60170       SWIG_TypeRank _ranki = 0;
60171       SWIG_TypeRank _rankm = 0;
60172       if (!_index || (_ranki < _rank)) {
60173         _rank = _ranki; _index = 1;
60174         if (_rank == _rankm) goto dispatch;
60175       }
60176     }
60177     if (items == 1) {
60178       SWIG_TypeRank _ranki = 0;
60179       SWIG_TypeRank _rankm = 0;
60180       SWIG_TypeRank _pi = 1;
60181       int _v = 0;
60182       {
60183         {
60184           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
60185           _v = SWIG_CheckState(res);
60186         }
60187       }
60188       if (!_v) goto check_2;
60189       _ranki += _v*_pi;
60190       _rankm += _pi;
60191       _pi *= SWIG_MAXCASTRANK;
60192       if (!_index || (_ranki < _rank)) {
60193         _rank = _ranki; _index = 2;
60194         if (_rank == _rankm) goto dispatch;
60195       }
60196     }
60197   check_2:
60198 
60199     if (items == 2) {
60200       SWIG_TypeRank _ranki = 0;
60201       SWIG_TypeRank _rankm = 0;
60202       SWIG_TypeRank _pi = 1;
60203       int _v = 0;
60204       {
60205         {
60206           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
60207           _v = SWIG_CheckState(res);
60208         }
60209       }
60210       if (!_v) goto check_3;
60211       _ranki += _v*_pi;
60212       _rankm += _pi;
60213       _pi *= SWIG_MAXCASTRANK;
60214       {
60215         {
60216           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
60217           _v = SWIG_CheckState(res);
60218         }
60219       }
60220       if (!_v) goto check_3;
60221       _ranki += _v*_pi;
60222       _rankm += _pi;
60223       _pi *= SWIG_MAXCASTRANK;
60224       if (!_index || (_ranki < _rank)) {
60225         _rank = _ranki; _index = 3;
60226         if (_rank == _rankm) goto dispatch;
60227       }
60228     }
60229   check_3:
60230 
60231   dispatch:
60232     switch(_index) {
60233     case 1:
60234       PUSHMARK(MARK); SWIG_CALLXS(_wrap_path_options_findpath__SWIG_2); return;
60235     case 2:
60236       PUSHMARK(MARK); SWIG_CALLXS(_wrap_path_options_findpath__SWIG_1); return;
60237     case 3:
60238       PUSHMARK(MARK); SWIG_CALLXS(_wrap_path_options_findpath__SWIG_0); return;
60239     }
60240   }
60241 
60242   croak("No matching function for overloaded 'path_options_findpath'");
60243   XSRETURN(0);
60244 }
60245 
60246 
XS(_wrap_get_path)60247 XS(_wrap_get_path) {
60248   {
60249     std::string arg1 ;
60250     std::string arg2 ;
60251     std::string arg3 ;
60252     int arg4 ;
60253     int val4 ;
60254     int ecode4 = 0 ;
60255     int argvi = 0;
60256     std::vector< vrna_path_t > result;
60257     dXSARGS;
60258 
60259     if ((items < 4) || (items > 4)) {
60260       SWIG_croak("Usage: get_path(seq,s1,s2,maxkeep);");
60261     }
60262     {
60263       std::string *ptr = (std::string *)0;
60264       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
60265       if (!SWIG_IsOK(res) || !ptr) {
60266         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "get_path" "', argument " "1"" of type '" "std::string""'");
60267       }
60268       arg1 = *ptr;
60269       if (SWIG_IsNewObj(res)) delete ptr;
60270     }
60271     {
60272       std::string *ptr = (std::string *)0;
60273       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
60274       if (!SWIG_IsOK(res) || !ptr) {
60275         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "get_path" "', argument " "2"" of type '" "std::string""'");
60276       }
60277       arg2 = *ptr;
60278       if (SWIG_IsNewObj(res)) delete ptr;
60279     }
60280     {
60281       std::string *ptr = (std::string *)0;
60282       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
60283       if (!SWIG_IsOK(res) || !ptr) {
60284         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "get_path" "', argument " "3"" of type '" "std::string""'");
60285       }
60286       arg3 = *ptr;
60287       if (SWIG_IsNewObj(res)) delete ptr;
60288     }
60289     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
60290     if (!SWIG_IsOK(ecode4)) {
60291       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "get_path" "', argument " "4"" of type '" "int""'");
60292     }
60293     arg4 = static_cast< int >(val4);
60294     {
60295       try {
60296         result = my_get_path(arg1,arg2,arg3,arg4);
60297       } catch (const std::exception& e) {
60298         SWIG_exception(SWIG_RuntimeError, e.what());
60299       }
60300     }
60301     {
60302       size_t len = (&result)->size();
60303       SV **svs = new SV*[len];
60304       for (size_t i=0; i<len; i++) {
60305         vrna_path_t* ptr = new vrna_path_t(result[i]);
60306         svs[i] = sv_newmortal();
60307         SWIG_MakePtr(svs[i], (void*) ptr,
60308           SWIGTYPE_p_vrna_path_t, SWIG_SHADOW|0);
60309       }
60310       AV *myav = av_make(len, svs);
60311       delete[] svs;
60312       ST(argvi) = newRV_noinc((SV*) myav);
60313       sv_2mortal(ST(argvi));
60314       argvi++;
60315     }
60316 
60317 
60318 
60319 
60320     XSRETURN(argvi);
60321   fail:
60322 
60323 
60324 
60325 
60326     SWIG_croak_null();
60327   }
60328 }
60329 
60330 
XS(_wrap_find_saddle)60331 XS(_wrap_find_saddle) {
60332   {
60333     char *arg1 = (char *) 0 ;
60334     char *arg2 = (char *) 0 ;
60335     char *arg3 = (char *) 0 ;
60336     int arg4 ;
60337     int res1 ;
60338     char *buf1 = 0 ;
60339     int alloc1 = 0 ;
60340     int res2 ;
60341     char *buf2 = 0 ;
60342     int alloc2 = 0 ;
60343     int res3 ;
60344     char *buf3 = 0 ;
60345     int alloc3 = 0 ;
60346     int val4 ;
60347     int ecode4 = 0 ;
60348     int argvi = 0;
60349     int result;
60350     dXSARGS;
60351 
60352     if ((items < 4) || (items > 4)) {
60353       SWIG_croak("Usage: find_saddle(seq,s1,s2,width);");
60354     }
60355     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
60356     if (!SWIG_IsOK(res1)) {
60357       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "find_saddle" "', argument " "1"" of type '" "char const *""'");
60358     }
60359     arg1 = reinterpret_cast< char * >(buf1);
60360     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
60361     if (!SWIG_IsOK(res2)) {
60362       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "find_saddle" "', argument " "2"" of type '" "char const *""'");
60363     }
60364     arg2 = reinterpret_cast< char * >(buf2);
60365     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
60366     if (!SWIG_IsOK(res3)) {
60367       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "find_saddle" "', argument " "3"" of type '" "char const *""'");
60368     }
60369     arg3 = reinterpret_cast< char * >(buf3);
60370     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
60371     if (!SWIG_IsOK(ecode4)) {
60372       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "find_saddle" "', argument " "4"" of type '" "int""'");
60373     }
60374     arg4 = static_cast< int >(val4);
60375     {
60376       try {
60377         result = (int)find_saddle((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4);
60378       } catch (const std::exception& e) {
60379         SWIG_exception(SWIG_RuntimeError, e.what());
60380       }
60381     }
60382     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
60383     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
60384     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
60385     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
60386 
60387     XSRETURN(argvi);
60388   fail:
60389     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
60390     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
60391     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
60392 
60393     SWIG_croak_null();
60394   }
60395 }
60396 
60397 
XS(_wrap_free_path)60398 XS(_wrap_free_path) {
60399   {
60400     vrna_path_t *arg1 = (vrna_path_t *) 0 ;
60401     void *argp1 = 0 ;
60402     int res1 = 0 ;
60403     int argvi = 0;
60404     dXSARGS;
60405 
60406     if ((items < 1) || (items > 1)) {
60407       SWIG_croak("Usage: free_path(path);");
60408     }
60409     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_path_t, 0 |  0 );
60410     if (!SWIG_IsOK(res1)) {
60411       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "free_path" "', argument " "1"" of type '" "vrna_path_t *""'");
60412     }
60413     arg1 = reinterpret_cast< vrna_path_t * >(argp1);
60414     {
60415       try {
60416         free_path(arg1);
60417       } catch (const std::exception& e) {
60418         SWIG_exception(SWIG_RuntimeError, e.what());
60419       }
60420     }
60421     ST(argvi) = &PL_sv_undef;
60422 
60423     XSRETURN(argvi);
60424   fail:
60425 
60426     SWIG_croak_null();
60427   }
60428 }
60429 
60430 
XS(_wrap_heat_capacity_result_temperature_set)60431 XS(_wrap_heat_capacity_result_temperature_set) {
60432   {
60433     heat_capacity_result *arg1 = (heat_capacity_result *) 0 ;
60434     float arg2 ;
60435     void *argp1 = 0 ;
60436     int res1 = 0 ;
60437     float val2 ;
60438     int ecode2 = 0 ;
60439     int argvi = 0;
60440     dXSARGS;
60441 
60442     if ((items < 2) || (items > 2)) {
60443       SWIG_croak("Usage: heat_capacity_result_temperature_set(self,temperature);");
60444     }
60445     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_heat_capacity_result, 0 |  0 );
60446     if (!SWIG_IsOK(res1)) {
60447       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "heat_capacity_result_temperature_set" "', argument " "1"" of type '" "heat_capacity_result *""'");
60448     }
60449     arg1 = reinterpret_cast< heat_capacity_result * >(argp1);
60450     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
60451     if (!SWIG_IsOK(ecode2)) {
60452       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "heat_capacity_result_temperature_set" "', argument " "2"" of type '" "float""'");
60453     }
60454     arg2 = static_cast< float >(val2);
60455     if (arg1) (arg1)->temperature = arg2;
60456     ST(argvi) = &PL_sv_undef;
60457 
60458 
60459     XSRETURN(argvi);
60460   fail:
60461 
60462 
60463     SWIG_croak_null();
60464   }
60465 }
60466 
60467 
XS(_wrap_heat_capacity_result_temperature_get)60468 XS(_wrap_heat_capacity_result_temperature_get) {
60469   {
60470     heat_capacity_result *arg1 = (heat_capacity_result *) 0 ;
60471     void *argp1 = 0 ;
60472     int res1 = 0 ;
60473     int argvi = 0;
60474     float result;
60475     dXSARGS;
60476 
60477     if ((items < 1) || (items > 1)) {
60478       SWIG_croak("Usage: heat_capacity_result_temperature_get(self);");
60479     }
60480     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_heat_capacity_result, 0 |  0 );
60481     if (!SWIG_IsOK(res1)) {
60482       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "heat_capacity_result_temperature_get" "', argument " "1"" of type '" "heat_capacity_result *""'");
60483     }
60484     arg1 = reinterpret_cast< heat_capacity_result * >(argp1);
60485     result = (float) ((arg1)->temperature);
60486     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
60487 
60488     XSRETURN(argvi);
60489   fail:
60490 
60491     SWIG_croak_null();
60492   }
60493 }
60494 
60495 
XS(_wrap_heat_capacity_result_heat_capacity_set)60496 XS(_wrap_heat_capacity_result_heat_capacity_set) {
60497   {
60498     heat_capacity_result *arg1 = (heat_capacity_result *) 0 ;
60499     float arg2 ;
60500     void *argp1 = 0 ;
60501     int res1 = 0 ;
60502     float val2 ;
60503     int ecode2 = 0 ;
60504     int argvi = 0;
60505     dXSARGS;
60506 
60507     if ((items < 2) || (items > 2)) {
60508       SWIG_croak("Usage: heat_capacity_result_heat_capacity_set(self,heat_capacity);");
60509     }
60510     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_heat_capacity_result, 0 |  0 );
60511     if (!SWIG_IsOK(res1)) {
60512       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "heat_capacity_result_heat_capacity_set" "', argument " "1"" of type '" "heat_capacity_result *""'");
60513     }
60514     arg1 = reinterpret_cast< heat_capacity_result * >(argp1);
60515     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
60516     if (!SWIG_IsOK(ecode2)) {
60517       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "heat_capacity_result_heat_capacity_set" "', argument " "2"" of type '" "float""'");
60518     }
60519     arg2 = static_cast< float >(val2);
60520     if (arg1) (arg1)->heat_capacity = arg2;
60521     ST(argvi) = &PL_sv_undef;
60522 
60523 
60524     XSRETURN(argvi);
60525   fail:
60526 
60527 
60528     SWIG_croak_null();
60529   }
60530 }
60531 
60532 
XS(_wrap_heat_capacity_result_heat_capacity_get)60533 XS(_wrap_heat_capacity_result_heat_capacity_get) {
60534   {
60535     heat_capacity_result *arg1 = (heat_capacity_result *) 0 ;
60536     void *argp1 = 0 ;
60537     int res1 = 0 ;
60538     int argvi = 0;
60539     float result;
60540     dXSARGS;
60541 
60542     if ((items < 1) || (items > 1)) {
60543       SWIG_croak("Usage: heat_capacity_result_heat_capacity_get(self);");
60544     }
60545     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_heat_capacity_result, 0 |  0 );
60546     if (!SWIG_IsOK(res1)) {
60547       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "heat_capacity_result_heat_capacity_get" "', argument " "1"" of type '" "heat_capacity_result *""'");
60548     }
60549     arg1 = reinterpret_cast< heat_capacity_result * >(argp1);
60550     result = (float) ((arg1)->heat_capacity);
60551     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
60552 
60553     XSRETURN(argvi);
60554   fail:
60555 
60556     SWIG_croak_null();
60557   }
60558 }
60559 
60560 
XS(_wrap_new_heat_capacity_result)60561 XS(_wrap_new_heat_capacity_result) {
60562   {
60563     int argvi = 0;
60564     heat_capacity_result *result = 0 ;
60565     dXSARGS;
60566 
60567     if ((items < 0) || (items > 0)) {
60568       SWIG_croak("Usage: new_heat_capacity_result();");
60569     }
60570     {
60571       try {
60572         result = (heat_capacity_result *)new heat_capacity_result();
60573       } catch (const std::exception& e) {
60574         SWIG_exception(SWIG_RuntimeError, e.what());
60575       }
60576     }
60577     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_heat_capacity_result, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
60578     XSRETURN(argvi);
60579   fail:
60580     SWIG_croak_null();
60581   }
60582 }
60583 
60584 
XS(_wrap_delete_heat_capacity_result)60585 XS(_wrap_delete_heat_capacity_result) {
60586   {
60587     heat_capacity_result *arg1 = (heat_capacity_result *) 0 ;
60588     void *argp1 = 0 ;
60589     int res1 = 0 ;
60590     int argvi = 0;
60591     dXSARGS;
60592 
60593     if ((items < 1) || (items > 1)) {
60594       SWIG_croak("Usage: delete_heat_capacity_result(self);");
60595     }
60596     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_heat_capacity_result, SWIG_POINTER_DISOWN |  0 );
60597     if (!SWIG_IsOK(res1)) {
60598       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_heat_capacity_result" "', argument " "1"" of type '" "heat_capacity_result *""'");
60599     }
60600     arg1 = reinterpret_cast< heat_capacity_result * >(argp1);
60601     {
60602       try {
60603         delete arg1;
60604       } catch (const std::exception& e) {
60605         SWIG_exception(SWIG_RuntimeError, e.what());
60606       }
60607     }
60608     ST(argvi) = &PL_sv_undef;
60609 
60610     XSRETURN(argvi);
60611   fail:
60612 
60613     SWIG_croak_null();
60614   }
60615 }
60616 
60617 
XS(_wrap_new_HeatCapacityVector__SWIG_0)60618 XS(_wrap_new_HeatCapacityVector__SWIG_0) {
60619   {
60620     unsigned int arg1 ;
60621     unsigned int val1 ;
60622     int ecode1 = 0 ;
60623     int argvi = 0;
60624     std::vector< heat_capacity_result > *result = 0 ;
60625     dXSARGS;
60626 
60627     if ((items < 1) || (items > 1)) {
60628       SWIG_croak("Usage: new_HeatCapacityVector(size);");
60629     }
60630     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
60631     if (!SWIG_IsOK(ecode1)) {
60632       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_HeatCapacityVector" "', argument " "1"" of type '" "unsigned int""'");
60633     }
60634     arg1 = static_cast< unsigned int >(val1);
60635     {
60636       try {
60637         result = (std::vector< heat_capacity_result > *)new std::vector< heat_capacity_result >(arg1);
60638       } catch (const std::exception& e) {
60639         SWIG_exception(SWIG_RuntimeError, e.what());
60640       }
60641     }
60642     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_heat_capacity_result_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
60643 
60644     XSRETURN(argvi);
60645   fail:
60646 
60647     SWIG_croak_null();
60648   }
60649 }
60650 
60651 
XS(_wrap_new_HeatCapacityVector__SWIG_1)60652 XS(_wrap_new_HeatCapacityVector__SWIG_1) {
60653   {
60654     int argvi = 0;
60655     std::vector< heat_capacity_result > *result = 0 ;
60656     dXSARGS;
60657 
60658     if ((items < 0) || (items > 0)) {
60659       SWIG_croak("Usage: new_HeatCapacityVector();");
60660     }
60661     {
60662       try {
60663         result = (std::vector< heat_capacity_result > *)new std::vector< heat_capacity_result >();
60664       } catch (const std::exception& e) {
60665         SWIG_exception(SWIG_RuntimeError, e.what());
60666       }
60667     }
60668     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_heat_capacity_result_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
60669     XSRETURN(argvi);
60670   fail:
60671     SWIG_croak_null();
60672   }
60673 }
60674 
60675 
XS(_wrap_new_HeatCapacityVector__SWIG_2)60676 XS(_wrap_new_HeatCapacityVector__SWIG_2) {
60677   {
60678     unsigned int arg1 ;
60679     heat_capacity_result *arg2 = 0 ;
60680     unsigned int val1 ;
60681     int ecode1 = 0 ;
60682     void *argp2 ;
60683     int res2 = 0 ;
60684     int argvi = 0;
60685     std::vector< heat_capacity_result > *result = 0 ;
60686     dXSARGS;
60687 
60688     if ((items < 2) || (items > 2)) {
60689       SWIG_croak("Usage: new_HeatCapacityVector(size,value);");
60690     }
60691     ecode1 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), &val1);
60692     if (!SWIG_IsOK(ecode1)) {
60693       SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_HeatCapacityVector" "', argument " "1"" of type '" "unsigned int""'");
60694     }
60695     arg1 = static_cast< unsigned int >(val1);
60696     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_heat_capacity_result,  0 );
60697     if (!SWIG_IsOK(res2)) {
60698       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_HeatCapacityVector" "', argument " "2"" of type '" "heat_capacity_result const &""'");
60699     }
60700     if (!argp2) {
60701       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_HeatCapacityVector" "', argument " "2"" of type '" "heat_capacity_result const &""'");
60702     }
60703     arg2 = reinterpret_cast< heat_capacity_result * >(argp2);
60704     {
60705       try {
60706         result = (std::vector< heat_capacity_result > *)new std::vector< heat_capacity_result >(arg1,(heat_capacity_result const &)*arg2);
60707       } catch (const std::exception& e) {
60708         SWIG_exception(SWIG_RuntimeError, e.what());
60709       }
60710     }
60711     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_heat_capacity_result_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
60712 
60713 
60714     XSRETURN(argvi);
60715   fail:
60716 
60717 
60718     SWIG_croak_null();
60719   }
60720 }
60721 
60722 
XS(_wrap_new_HeatCapacityVector__SWIG_3)60723 XS(_wrap_new_HeatCapacityVector__SWIG_3) {
60724   {
60725     std::vector< heat_capacity_result > *arg1 = 0 ;
60726     std::vector< heat_capacity_result > temp1 ;
60727     std::vector< heat_capacity_result > *v1 ;
60728     int argvi = 0;
60729     std::vector< heat_capacity_result > *result = 0 ;
60730     dXSARGS;
60731 
60732     if ((items < 1) || (items > 1)) {
60733       SWIG_croak("Usage: new_HeatCapacityVector(other);");
60734     }
60735     {
60736       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
60737           SWIGTYPE_p_std__vectorT_heat_capacity_result_t,1) != -1) {
60738         arg1 = v1;
60739       } else if (SvROK(ST(0))) {
60740         AV *av = (AV *)SvRV(ST(0));
60741         if (SvTYPE(av) != SVt_PVAV)
60742         SWIG_croak("Type error in argument 1 of new_HeatCapacityVector. "
60743           "Expected an array of " "heat_capacity_result");
60744         SV **tv;
60745         I32 len = av_len(av) + 1;
60746         heat_capacity_result* obj;
60747         for (int i=0; i<len; i++) {
60748           tv = av_fetch(av, i, 0);
60749           if (SWIG_ConvertPtr(*tv, (void **)&obj,
60750               SWIGTYPE_p_heat_capacity_result,0) != -1) {
60751             temp1.push_back(*obj);
60752           } else {
60753             SWIG_croak("Type error in argument 1 of "
60754               "new_HeatCapacityVector. "
60755               "Expected an array of " "heat_capacity_result");
60756           }
60757         }
60758         arg1 = &temp1;
60759       } else {
60760         SWIG_croak("Type error in argument 1 of new_HeatCapacityVector. "
60761           "Expected an array of " "heat_capacity_result");
60762       }
60763     }
60764     {
60765       try {
60766         result = (std::vector< heat_capacity_result > *)new std::vector< heat_capacity_result >((std::vector< heat_capacity_result > const &)*arg1);
60767       } catch (const std::exception& e) {
60768         SWIG_exception(SWIG_RuntimeError, e.what());
60769       }
60770     }
60771     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_heat_capacity_result_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
60772 
60773     XSRETURN(argvi);
60774   fail:
60775 
60776     SWIG_croak_null();
60777   }
60778 }
60779 
60780 
XS(_wrap_new_HeatCapacityVector)60781 XS(_wrap_new_HeatCapacityVector) {
60782   dXSARGS;
60783 
60784   {
60785     unsigned long _index = 0;
60786     SWIG_TypeRank _rank = 0;
60787     if (items == 0) {
60788       SWIG_TypeRank _ranki = 0;
60789       SWIG_TypeRank _rankm = 0;
60790       if (!_index || (_ranki < _rank)) {
60791         _rank = _ranki; _index = 1;
60792         if (_rank == _rankm) goto dispatch;
60793       }
60794     }
60795     if (items == 1) {
60796       SWIG_TypeRank _ranki = 0;
60797       SWIG_TypeRank _rankm = 0;
60798       SWIG_TypeRank _pi = 1;
60799       int _v = 0;
60800       {
60801         {
60802           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
60803           _v = SWIG_CheckState(res);
60804         }
60805       }
60806       if (!_v) goto check_2;
60807       _ranki += _v*_pi;
60808       _rankm += _pi;
60809       _pi *= SWIG_MAXCASTRANK;
60810       if (!_index || (_ranki < _rank)) {
60811         _rank = _ranki; _index = 2;
60812         if (_rank == _rankm) goto dispatch;
60813       }
60814     }
60815   check_2:
60816 
60817     if (items == 1) {
60818       SWIG_TypeRank _ranki = 0;
60819       SWIG_TypeRank _rankm = 0;
60820       SWIG_TypeRank _pi = 1;
60821       int _v = 0;
60822       {
60823         {
60824           {
60825             /* wrapped vector? */
60826             std::vector< heat_capacity_result >* v;
60827             if (SWIG_ConvertPtr(ST(0),(void **) &v,
60828                 SWIGTYPE_p_std__vectorT_heat_capacity_result_t,0) != -1) {
60829               _v = 1;
60830             } else if (SvROK(ST(0))) {
60831               /* native sequence? */
60832               AV *av = (AV *)SvRV(ST(0));
60833               if (SvTYPE(av) == SVt_PVAV) {
60834                 I32 len = av_len(av) + 1;
60835                 if (len == 0) {
60836                   /* an empty sequence can be of any type */
60837                   _v = 1;
60838                 } else {
60839                   /* check the first element only */
60840                   heat_capacity_result* obj;
60841                   SV **tv = av_fetch(av, 0, 0);
60842                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
60843                       SWIGTYPE_p_heat_capacity_result,0) != -1)
60844                   _v = 1;
60845                   else
60846                   _v = 0;
60847                 }
60848               }
60849             } else {
60850               _v = 0;
60851             }
60852           }
60853         }
60854       }
60855       if (!_v) goto check_3;
60856       _ranki += _v*_pi;
60857       _rankm += _pi;
60858       _pi *= SWIG_MAXCASTRANK;
60859       if (!_index || (_ranki < _rank)) {
60860         _rank = _ranki; _index = 3;
60861         if (_rank == _rankm) goto dispatch;
60862       }
60863     }
60864   check_3:
60865 
60866     if (items == 2) {
60867       SWIG_TypeRank _ranki = 0;
60868       SWIG_TypeRank _rankm = 0;
60869       SWIG_TypeRank _pi = 1;
60870       int _v = 0;
60871       {
60872         {
60873           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(0), NULL);
60874           _v = SWIG_CheckState(res);
60875         }
60876       }
60877       if (!_v) goto check_4;
60878       _ranki += _v*_pi;
60879       _rankm += _pi;
60880       _pi *= SWIG_MAXCASTRANK;
60881       {
60882         void *vptr = 0;
60883         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_heat_capacity_result, SWIG_POINTER_NO_NULL);
60884         _v = SWIG_CheckState(res);
60885       }
60886       if (!_v) goto check_4;
60887       _ranki += _v*_pi;
60888       _rankm += _pi;
60889       _pi *= SWIG_MAXCASTRANK;
60890       if (!_index || (_ranki < _rank)) {
60891         _rank = _ranki; _index = 4;
60892         if (_rank == _rankm) goto dispatch;
60893       }
60894     }
60895   check_4:
60896 
60897   dispatch:
60898     switch(_index) {
60899     case 1:
60900       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_HeatCapacityVector__SWIG_1); return;
60901     case 2:
60902       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_HeatCapacityVector__SWIG_0); return;
60903     case 3:
60904       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_HeatCapacityVector__SWIG_3); return;
60905     case 4:
60906       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_HeatCapacityVector__SWIG_2); return;
60907     }
60908   }
60909 
60910   croak("No matching function for overloaded 'new_HeatCapacityVector'");
60911   XSRETURN(0);
60912 }
60913 
60914 
XS(_wrap_HeatCapacityVector_size)60915 XS(_wrap_HeatCapacityVector_size) {
60916   {
60917     std::vector< heat_capacity_result > *arg1 = (std::vector< heat_capacity_result > *) 0 ;
60918     std::vector< heat_capacity_result > temp1 ;
60919     std::vector< heat_capacity_result > *v1 ;
60920     int argvi = 0;
60921     unsigned int result;
60922     dXSARGS;
60923 
60924     if ((items < 1) || (items > 1)) {
60925       SWIG_croak("Usage: HeatCapacityVector_size(self);");
60926     }
60927     {
60928       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
60929           SWIGTYPE_p_std__vectorT_heat_capacity_result_t,1) != -1) {
60930         arg1 = v1;
60931       } else if (SvROK(ST(0))) {
60932         AV *av = (AV *)SvRV(ST(0));
60933         if (SvTYPE(av) != SVt_PVAV)
60934         SWIG_croak("Type error in argument 1 of HeatCapacityVector_size. "
60935           "Expected an array of " "heat_capacity_result");
60936         SV **tv;
60937         I32 len = av_len(av) + 1;
60938         heat_capacity_result* obj;
60939         for (int i=0; i<len; i++) {
60940           tv = av_fetch(av, i, 0);
60941           if (SWIG_ConvertPtr(*tv, (void **)&obj,
60942               SWIGTYPE_p_heat_capacity_result,0) != -1) {
60943             temp1.push_back(*obj);
60944           } else {
60945             SWIG_croak("Type error in argument 1 of "
60946               "HeatCapacityVector_size. "
60947               "Expected an array of " "heat_capacity_result");
60948           }
60949         }
60950         arg1 = &temp1;
60951       } else {
60952         SWIG_croak("Type error in argument 1 of HeatCapacityVector_size. "
60953           "Expected an array of " "heat_capacity_result");
60954       }
60955     }
60956     {
60957       try {
60958         result = (unsigned int)((std::vector< heat_capacity_result > const *)arg1)->size();
60959       } catch (const std::exception& e) {
60960         SWIG_exception(SWIG_RuntimeError, e.what());
60961       }
60962     }
60963     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
60964 
60965     XSRETURN(argvi);
60966   fail:
60967 
60968     SWIG_croak_null();
60969   }
60970 }
60971 
60972 
XS(_wrap_HeatCapacityVector_empty)60973 XS(_wrap_HeatCapacityVector_empty) {
60974   {
60975     std::vector< heat_capacity_result > *arg1 = (std::vector< heat_capacity_result > *) 0 ;
60976     std::vector< heat_capacity_result > temp1 ;
60977     std::vector< heat_capacity_result > *v1 ;
60978     int argvi = 0;
60979     bool result;
60980     dXSARGS;
60981 
60982     if ((items < 1) || (items > 1)) {
60983       SWIG_croak("Usage: HeatCapacityVector_empty(self);");
60984     }
60985     {
60986       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
60987           SWIGTYPE_p_std__vectorT_heat_capacity_result_t,1) != -1) {
60988         arg1 = v1;
60989       } else if (SvROK(ST(0))) {
60990         AV *av = (AV *)SvRV(ST(0));
60991         if (SvTYPE(av) != SVt_PVAV)
60992         SWIG_croak("Type error in argument 1 of HeatCapacityVector_empty. "
60993           "Expected an array of " "heat_capacity_result");
60994         SV **tv;
60995         I32 len = av_len(av) + 1;
60996         heat_capacity_result* obj;
60997         for (int i=0; i<len; i++) {
60998           tv = av_fetch(av, i, 0);
60999           if (SWIG_ConvertPtr(*tv, (void **)&obj,
61000               SWIGTYPE_p_heat_capacity_result,0) != -1) {
61001             temp1.push_back(*obj);
61002           } else {
61003             SWIG_croak("Type error in argument 1 of "
61004               "HeatCapacityVector_empty. "
61005               "Expected an array of " "heat_capacity_result");
61006           }
61007         }
61008         arg1 = &temp1;
61009       } else {
61010         SWIG_croak("Type error in argument 1 of HeatCapacityVector_empty. "
61011           "Expected an array of " "heat_capacity_result");
61012       }
61013     }
61014     {
61015       try {
61016         result = (bool)((std::vector< heat_capacity_result > const *)arg1)->empty();
61017       } catch (const std::exception& e) {
61018         SWIG_exception(SWIG_RuntimeError, e.what());
61019       }
61020     }
61021     ST(argvi) = SWIG_From_bool  SWIG_PERL_CALL_ARGS_1(static_cast< bool >(result)); argvi++ ;
61022 
61023     XSRETURN(argvi);
61024   fail:
61025 
61026     SWIG_croak_null();
61027   }
61028 }
61029 
61030 
XS(_wrap_HeatCapacityVector_clear)61031 XS(_wrap_HeatCapacityVector_clear) {
61032   {
61033     std::vector< heat_capacity_result > *arg1 = (std::vector< heat_capacity_result > *) 0 ;
61034     void *argp1 = 0 ;
61035     int res1 = 0 ;
61036     int argvi = 0;
61037     dXSARGS;
61038 
61039     if ((items < 1) || (items > 1)) {
61040       SWIG_croak("Usage: HeatCapacityVector_clear(self);");
61041     }
61042     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_heat_capacity_result_t, 0 |  0 );
61043     if (!SWIG_IsOK(res1)) {
61044       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "HeatCapacityVector_clear" "', argument " "1"" of type '" "std::vector< heat_capacity_result > *""'");
61045     }
61046     arg1 = reinterpret_cast< std::vector< heat_capacity_result > * >(argp1);
61047     {
61048       try {
61049         (arg1)->clear();
61050       } catch (const std::exception& e) {
61051         SWIG_exception(SWIG_RuntimeError, e.what());
61052       }
61053     }
61054     ST(argvi) = &PL_sv_undef;
61055 
61056     XSRETURN(argvi);
61057   fail:
61058 
61059     SWIG_croak_null();
61060   }
61061 }
61062 
61063 
XS(_wrap_HeatCapacityVector_push)61064 XS(_wrap_HeatCapacityVector_push) {
61065   {
61066     std::vector< heat_capacity_result > *arg1 = (std::vector< heat_capacity_result > *) 0 ;
61067     heat_capacity_result *arg2 = 0 ;
61068     void *argp1 = 0 ;
61069     int res1 = 0 ;
61070     void *argp2 ;
61071     int res2 = 0 ;
61072     int argvi = 0;
61073     dXSARGS;
61074 
61075     if ((items < 2) || (items > 2)) {
61076       SWIG_croak("Usage: HeatCapacityVector_push(self,x);");
61077     }
61078     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_heat_capacity_result_t, 0 |  0 );
61079     if (!SWIG_IsOK(res1)) {
61080       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "HeatCapacityVector_push" "', argument " "1"" of type '" "std::vector< heat_capacity_result > *""'");
61081     }
61082     arg1 = reinterpret_cast< std::vector< heat_capacity_result > * >(argp1);
61083     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_heat_capacity_result,  0 );
61084     if (!SWIG_IsOK(res2)) {
61085       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "HeatCapacityVector_push" "', argument " "2"" of type '" "heat_capacity_result const &""'");
61086     }
61087     if (!argp2) {
61088       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "HeatCapacityVector_push" "', argument " "2"" of type '" "heat_capacity_result const &""'");
61089     }
61090     arg2 = reinterpret_cast< heat_capacity_result * >(argp2);
61091     {
61092       try {
61093         (arg1)->push_back((heat_capacity_result const &)*arg2);
61094       } catch (const std::exception& e) {
61095         SWIG_exception(SWIG_RuntimeError, e.what());
61096       }
61097     }
61098     ST(argvi) = &PL_sv_undef;
61099 
61100 
61101     XSRETURN(argvi);
61102   fail:
61103 
61104 
61105     SWIG_croak_null();
61106   }
61107 }
61108 
61109 
XS(_wrap_HeatCapacityVector_pop)61110 XS(_wrap_HeatCapacityVector_pop) {
61111   {
61112     std::vector< heat_capacity_result > *arg1 = (std::vector< heat_capacity_result > *) 0 ;
61113     void *argp1 = 0 ;
61114     int res1 = 0 ;
61115     int argvi = 0;
61116     heat_capacity_result result;
61117     dXSARGS;
61118 
61119     if ((items < 1) || (items > 1)) {
61120       SWIG_croak("Usage: HeatCapacityVector_pop(self);");
61121     }
61122     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_heat_capacity_result_t, 0 |  0 );
61123     if (!SWIG_IsOK(res1)) {
61124       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "HeatCapacityVector_pop" "', argument " "1"" of type '" "std::vector< heat_capacity_result > *""'");
61125     }
61126     arg1 = reinterpret_cast< std::vector< heat_capacity_result > * >(argp1);
61127     {
61128       try {
61129         try {
61130           result = std_vector_Sl_heat_capacity_result_Sg__pop(arg1);
61131         } catch(std::out_of_range &_e) {
61132           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
61133         }
61134       } catch (const std::exception& e) {
61135         SWIG_exception(SWIG_RuntimeError, e.what());
61136       }
61137     }
61138     ST(argvi) = SWIG_NewPointerObj((new heat_capacity_result(static_cast< const heat_capacity_result& >(result))), SWIGTYPE_p_heat_capacity_result, SWIG_POINTER_OWN | SWIG_SHADOW); argvi++ ;
61139 
61140     XSRETURN(argvi);
61141   fail:
61142 
61143     SWIG_croak_null();
61144   }
61145 }
61146 
61147 
XS(_wrap_HeatCapacityVector_get)61148 XS(_wrap_HeatCapacityVector_get) {
61149   {
61150     std::vector< heat_capacity_result > *arg1 = (std::vector< heat_capacity_result > *) 0 ;
61151     int arg2 ;
61152     void *argp1 = 0 ;
61153     int res1 = 0 ;
61154     int val2 ;
61155     int ecode2 = 0 ;
61156     int argvi = 0;
61157     heat_capacity_result *result = 0 ;
61158     dXSARGS;
61159 
61160     if ((items < 2) || (items > 2)) {
61161       SWIG_croak("Usage: HeatCapacityVector_get(self,i);");
61162     }
61163     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_heat_capacity_result_t, 0 |  0 );
61164     if (!SWIG_IsOK(res1)) {
61165       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "HeatCapacityVector_get" "', argument " "1"" of type '" "std::vector< heat_capacity_result > *""'");
61166     }
61167     arg1 = reinterpret_cast< std::vector< heat_capacity_result > * >(argp1);
61168     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
61169     if (!SWIG_IsOK(ecode2)) {
61170       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "HeatCapacityVector_get" "', argument " "2"" of type '" "int""'");
61171     }
61172     arg2 = static_cast< int >(val2);
61173     {
61174       try {
61175         try {
61176           result = (heat_capacity_result *) &std_vector_Sl_heat_capacity_result_Sg__get(arg1,arg2);
61177         } catch(std::out_of_range &_e) {
61178           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
61179         }
61180       } catch (const std::exception& e) {
61181         SWIG_exception(SWIG_RuntimeError, e.what());
61182       }
61183     }
61184     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_heat_capacity_result, 0 | SWIG_SHADOW); argvi++ ;
61185 
61186 
61187     XSRETURN(argvi);
61188   fail:
61189 
61190 
61191     SWIG_croak_null();
61192   }
61193 }
61194 
61195 
XS(_wrap_HeatCapacityVector_set)61196 XS(_wrap_HeatCapacityVector_set) {
61197   {
61198     std::vector< heat_capacity_result > *arg1 = (std::vector< heat_capacity_result > *) 0 ;
61199     int arg2 ;
61200     heat_capacity_result *arg3 = 0 ;
61201     void *argp1 = 0 ;
61202     int res1 = 0 ;
61203     int val2 ;
61204     int ecode2 = 0 ;
61205     void *argp3 ;
61206     int res3 = 0 ;
61207     int argvi = 0;
61208     dXSARGS;
61209 
61210     if ((items < 3) || (items > 3)) {
61211       SWIG_croak("Usage: HeatCapacityVector_set(self,i,x);");
61212     }
61213     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_heat_capacity_result_t, 0 |  0 );
61214     if (!SWIG_IsOK(res1)) {
61215       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "HeatCapacityVector_set" "', argument " "1"" of type '" "std::vector< heat_capacity_result > *""'");
61216     }
61217     arg1 = reinterpret_cast< std::vector< heat_capacity_result > * >(argp1);
61218     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
61219     if (!SWIG_IsOK(ecode2)) {
61220       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "HeatCapacityVector_set" "', argument " "2"" of type '" "int""'");
61221     }
61222     arg2 = static_cast< int >(val2);
61223     res3 = SWIG_ConvertPtr(ST(2), &argp3, SWIGTYPE_p_heat_capacity_result,  0 );
61224     if (!SWIG_IsOK(res3)) {
61225       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "HeatCapacityVector_set" "', argument " "3"" of type '" "heat_capacity_result const &""'");
61226     }
61227     if (!argp3) {
61228       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "HeatCapacityVector_set" "', argument " "3"" of type '" "heat_capacity_result const &""'");
61229     }
61230     arg3 = reinterpret_cast< heat_capacity_result * >(argp3);
61231     {
61232       try {
61233         try {
61234           std_vector_Sl_heat_capacity_result_Sg__set(arg1,arg2,(heat_capacity_result const &)*arg3);
61235         } catch(std::out_of_range &_e) {
61236           sv_setsv(get_sv("@", GV_ADD), SWIG_NewPointerObj((new std::out_of_range(static_cast< const std::out_of_range& >(_e))),SWIGTYPE_p_std__out_of_range,SWIG_POINTER_OWN)); SWIG_fail ;
61237         }
61238       } catch (const std::exception& e) {
61239         SWIG_exception(SWIG_RuntimeError, e.what());
61240       }
61241     }
61242     ST(argvi) = &PL_sv_undef;
61243 
61244 
61245 
61246     XSRETURN(argvi);
61247   fail:
61248 
61249 
61250 
61251     SWIG_croak_null();
61252   }
61253 }
61254 
61255 
XS(_wrap_delete_HeatCapacityVector)61256 XS(_wrap_delete_HeatCapacityVector) {
61257   {
61258     std::vector< heat_capacity_result > *arg1 = (std::vector< heat_capacity_result > *) 0 ;
61259     void *argp1 = 0 ;
61260     int res1 = 0 ;
61261     int argvi = 0;
61262     dXSARGS;
61263 
61264     if ((items < 1) || (items > 1)) {
61265       SWIG_croak("Usage: delete_HeatCapacityVector(self);");
61266     }
61267     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_std__vectorT_heat_capacity_result_t, SWIG_POINTER_DISOWN |  0 );
61268     if (!SWIG_IsOK(res1)) {
61269       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_HeatCapacityVector" "', argument " "1"" of type '" "std::vector< heat_capacity_result > *""'");
61270     }
61271     arg1 = reinterpret_cast< std::vector< heat_capacity_result > * >(argp1);
61272     {
61273       try {
61274         delete arg1;
61275       } catch (const std::exception& e) {
61276         SWIG_exception(SWIG_RuntimeError, e.what());
61277       }
61278     }
61279     ST(argvi) = &PL_sv_undef;
61280 
61281     XSRETURN(argvi);
61282   fail:
61283 
61284     SWIG_croak_null();
61285   }
61286 }
61287 
61288 
XS(_wrap_heat_capacity__SWIG_0)61289 XS(_wrap_heat_capacity__SWIG_0) {
61290   {
61291     std::string arg1 ;
61292     float arg2 ;
61293     float arg3 ;
61294     float arg4 ;
61295     unsigned int arg5 ;
61296     float val2 ;
61297     int ecode2 = 0 ;
61298     float val3 ;
61299     int ecode3 = 0 ;
61300     float val4 ;
61301     int ecode4 = 0 ;
61302     unsigned int val5 ;
61303     int ecode5 = 0 ;
61304     int argvi = 0;
61305     std::vector< heat_capacity_result > result;
61306     dXSARGS;
61307 
61308     if ((items < 5) || (items > 5)) {
61309       SWIG_croak("Usage: heat_capacity(sequence,T_min,T_max,T_increment,mpoints);");
61310     }
61311     {
61312       std::string *ptr = (std::string *)0;
61313       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
61314       if (!SWIG_IsOK(res) || !ptr) {
61315         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "heat_capacity" "', argument " "1"" of type '" "std::string""'");
61316       }
61317       arg1 = *ptr;
61318       if (SWIG_IsNewObj(res)) delete ptr;
61319     }
61320     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
61321     if (!SWIG_IsOK(ecode2)) {
61322       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "heat_capacity" "', argument " "2"" of type '" "float""'");
61323     }
61324     arg2 = static_cast< float >(val2);
61325     ecode3 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
61326     if (!SWIG_IsOK(ecode3)) {
61327       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "heat_capacity" "', argument " "3"" of type '" "float""'");
61328     }
61329     arg3 = static_cast< float >(val3);
61330     ecode4 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
61331     if (!SWIG_IsOK(ecode4)) {
61332       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "heat_capacity" "', argument " "4"" of type '" "float""'");
61333     }
61334     arg4 = static_cast< float >(val4);
61335     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
61336     if (!SWIG_IsOK(ecode5)) {
61337       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "heat_capacity" "', argument " "5"" of type '" "unsigned int""'");
61338     }
61339     arg5 = static_cast< unsigned int >(val5);
61340     {
61341       try {
61342         result = my_heat_capacity(arg1,arg2,arg3,arg4,arg5);
61343       } catch (const std::exception& e) {
61344         SWIG_exception(SWIG_RuntimeError, e.what());
61345       }
61346     }
61347     {
61348       size_t len = (&result)->size();
61349       SV **svs = new SV*[len];
61350       for (size_t i=0; i<len; i++) {
61351         heat_capacity_result* ptr = new heat_capacity_result(result[i]);
61352         svs[i] = sv_newmortal();
61353         SWIG_MakePtr(svs[i], (void*) ptr,
61354           SWIGTYPE_p_heat_capacity_result, SWIG_SHADOW|0);
61355       }
61356       AV *myav = av_make(len, svs);
61357       delete[] svs;
61358       ST(argvi) = newRV_noinc((SV*) myav);
61359       sv_2mortal(ST(argvi));
61360       argvi++;
61361     }
61362 
61363 
61364 
61365 
61366 
61367     XSRETURN(argvi);
61368   fail:
61369 
61370 
61371 
61372 
61373 
61374     SWIG_croak_null();
61375   }
61376 }
61377 
61378 
XS(_wrap_heat_capacity__SWIG_1)61379 XS(_wrap_heat_capacity__SWIG_1) {
61380   {
61381     std::string arg1 ;
61382     float arg2 ;
61383     float arg3 ;
61384     float arg4 ;
61385     float val2 ;
61386     int ecode2 = 0 ;
61387     float val3 ;
61388     int ecode3 = 0 ;
61389     float val4 ;
61390     int ecode4 = 0 ;
61391     int argvi = 0;
61392     std::vector< heat_capacity_result > result;
61393     dXSARGS;
61394 
61395     if ((items < 4) || (items > 4)) {
61396       SWIG_croak("Usage: heat_capacity(sequence,T_min,T_max,T_increment);");
61397     }
61398     {
61399       std::string *ptr = (std::string *)0;
61400       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
61401       if (!SWIG_IsOK(res) || !ptr) {
61402         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "heat_capacity" "', argument " "1"" of type '" "std::string""'");
61403       }
61404       arg1 = *ptr;
61405       if (SWIG_IsNewObj(res)) delete ptr;
61406     }
61407     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
61408     if (!SWIG_IsOK(ecode2)) {
61409       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "heat_capacity" "', argument " "2"" of type '" "float""'");
61410     }
61411     arg2 = static_cast< float >(val2);
61412     ecode3 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
61413     if (!SWIG_IsOK(ecode3)) {
61414       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "heat_capacity" "', argument " "3"" of type '" "float""'");
61415     }
61416     arg3 = static_cast< float >(val3);
61417     ecode4 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
61418     if (!SWIG_IsOK(ecode4)) {
61419       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "heat_capacity" "', argument " "4"" of type '" "float""'");
61420     }
61421     arg4 = static_cast< float >(val4);
61422     {
61423       try {
61424         result = my_heat_capacity(arg1,arg2,arg3,arg4);
61425       } catch (const std::exception& e) {
61426         SWIG_exception(SWIG_RuntimeError, e.what());
61427       }
61428     }
61429     {
61430       size_t len = (&result)->size();
61431       SV **svs = new SV*[len];
61432       for (size_t i=0; i<len; i++) {
61433         heat_capacity_result* ptr = new heat_capacity_result(result[i]);
61434         svs[i] = sv_newmortal();
61435         SWIG_MakePtr(svs[i], (void*) ptr,
61436           SWIGTYPE_p_heat_capacity_result, SWIG_SHADOW|0);
61437       }
61438       AV *myav = av_make(len, svs);
61439       delete[] svs;
61440       ST(argvi) = newRV_noinc((SV*) myav);
61441       sv_2mortal(ST(argvi));
61442       argvi++;
61443     }
61444 
61445 
61446 
61447 
61448     XSRETURN(argvi);
61449   fail:
61450 
61451 
61452 
61453 
61454     SWIG_croak_null();
61455   }
61456 }
61457 
61458 
XS(_wrap_heat_capacity__SWIG_2)61459 XS(_wrap_heat_capacity__SWIG_2) {
61460   {
61461     std::string arg1 ;
61462     float arg2 ;
61463     float arg3 ;
61464     float val2 ;
61465     int ecode2 = 0 ;
61466     float val3 ;
61467     int ecode3 = 0 ;
61468     int argvi = 0;
61469     std::vector< heat_capacity_result > result;
61470     dXSARGS;
61471 
61472     if ((items < 3) || (items > 3)) {
61473       SWIG_croak("Usage: heat_capacity(sequence,T_min,T_max);");
61474     }
61475     {
61476       std::string *ptr = (std::string *)0;
61477       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
61478       if (!SWIG_IsOK(res) || !ptr) {
61479         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "heat_capacity" "', argument " "1"" of type '" "std::string""'");
61480       }
61481       arg1 = *ptr;
61482       if (SWIG_IsNewObj(res)) delete ptr;
61483     }
61484     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
61485     if (!SWIG_IsOK(ecode2)) {
61486       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "heat_capacity" "', argument " "2"" of type '" "float""'");
61487     }
61488     arg2 = static_cast< float >(val2);
61489     ecode3 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
61490     if (!SWIG_IsOK(ecode3)) {
61491       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "heat_capacity" "', argument " "3"" of type '" "float""'");
61492     }
61493     arg3 = static_cast< float >(val3);
61494     {
61495       try {
61496         result = my_heat_capacity(arg1,arg2,arg3);
61497       } catch (const std::exception& e) {
61498         SWIG_exception(SWIG_RuntimeError, e.what());
61499       }
61500     }
61501     {
61502       size_t len = (&result)->size();
61503       SV **svs = new SV*[len];
61504       for (size_t i=0; i<len; i++) {
61505         heat_capacity_result* ptr = new heat_capacity_result(result[i]);
61506         svs[i] = sv_newmortal();
61507         SWIG_MakePtr(svs[i], (void*) ptr,
61508           SWIGTYPE_p_heat_capacity_result, SWIG_SHADOW|0);
61509       }
61510       AV *myav = av_make(len, svs);
61511       delete[] svs;
61512       ST(argvi) = newRV_noinc((SV*) myav);
61513       sv_2mortal(ST(argvi));
61514       argvi++;
61515     }
61516 
61517 
61518 
61519     XSRETURN(argvi);
61520   fail:
61521 
61522 
61523 
61524     SWIG_croak_null();
61525   }
61526 }
61527 
61528 
XS(_wrap_heat_capacity__SWIG_3)61529 XS(_wrap_heat_capacity__SWIG_3) {
61530   {
61531     std::string arg1 ;
61532     float arg2 ;
61533     float val2 ;
61534     int ecode2 = 0 ;
61535     int argvi = 0;
61536     std::vector< heat_capacity_result > result;
61537     dXSARGS;
61538 
61539     if ((items < 2) || (items > 2)) {
61540       SWIG_croak("Usage: heat_capacity(sequence,T_min);");
61541     }
61542     {
61543       std::string *ptr = (std::string *)0;
61544       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
61545       if (!SWIG_IsOK(res) || !ptr) {
61546         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "heat_capacity" "', argument " "1"" of type '" "std::string""'");
61547       }
61548       arg1 = *ptr;
61549       if (SWIG_IsNewObj(res)) delete ptr;
61550     }
61551     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
61552     if (!SWIG_IsOK(ecode2)) {
61553       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "heat_capacity" "', argument " "2"" of type '" "float""'");
61554     }
61555     arg2 = static_cast< float >(val2);
61556     {
61557       try {
61558         result = my_heat_capacity(arg1,arg2);
61559       } catch (const std::exception& e) {
61560         SWIG_exception(SWIG_RuntimeError, e.what());
61561       }
61562     }
61563     {
61564       size_t len = (&result)->size();
61565       SV **svs = new SV*[len];
61566       for (size_t i=0; i<len; i++) {
61567         heat_capacity_result* ptr = new heat_capacity_result(result[i]);
61568         svs[i] = sv_newmortal();
61569         SWIG_MakePtr(svs[i], (void*) ptr,
61570           SWIGTYPE_p_heat_capacity_result, SWIG_SHADOW|0);
61571       }
61572       AV *myav = av_make(len, svs);
61573       delete[] svs;
61574       ST(argvi) = newRV_noinc((SV*) myav);
61575       sv_2mortal(ST(argvi));
61576       argvi++;
61577     }
61578 
61579 
61580     XSRETURN(argvi);
61581   fail:
61582 
61583 
61584     SWIG_croak_null();
61585   }
61586 }
61587 
61588 
XS(_wrap_heat_capacity__SWIG_4)61589 XS(_wrap_heat_capacity__SWIG_4) {
61590   {
61591     std::string arg1 ;
61592     int argvi = 0;
61593     std::vector< heat_capacity_result > result;
61594     dXSARGS;
61595 
61596     if ((items < 1) || (items > 1)) {
61597       SWIG_croak("Usage: heat_capacity(sequence);");
61598     }
61599     {
61600       std::string *ptr = (std::string *)0;
61601       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
61602       if (!SWIG_IsOK(res) || !ptr) {
61603         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "heat_capacity" "', argument " "1"" of type '" "std::string""'");
61604       }
61605       arg1 = *ptr;
61606       if (SWIG_IsNewObj(res)) delete ptr;
61607     }
61608     {
61609       try {
61610         result = my_heat_capacity(arg1);
61611       } catch (const std::exception& e) {
61612         SWIG_exception(SWIG_RuntimeError, e.what());
61613       }
61614     }
61615     {
61616       size_t len = (&result)->size();
61617       SV **svs = new SV*[len];
61618       for (size_t i=0; i<len; i++) {
61619         heat_capacity_result* ptr = new heat_capacity_result(result[i]);
61620         svs[i] = sv_newmortal();
61621         SWIG_MakePtr(svs[i], (void*) ptr,
61622           SWIGTYPE_p_heat_capacity_result, SWIG_SHADOW|0);
61623       }
61624       AV *myav = av_make(len, svs);
61625       delete[] svs;
61626       ST(argvi) = newRV_noinc((SV*) myav);
61627       sv_2mortal(ST(argvi));
61628       argvi++;
61629     }
61630 
61631     XSRETURN(argvi);
61632   fail:
61633 
61634     SWIG_croak_null();
61635   }
61636 }
61637 
61638 
XS(_wrap_heat_capacity)61639 XS(_wrap_heat_capacity) {
61640   dXSARGS;
61641 
61642   {
61643     unsigned long _index = 0;
61644     SWIG_TypeRank _rank = 0;
61645     if (items == 1) {
61646       SWIG_TypeRank _ranki = 0;
61647       SWIG_TypeRank _rankm = 0;
61648       SWIG_TypeRank _pi = 1;
61649       int _v = 0;
61650       {
61651         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
61652         _v = SWIG_CheckState(res);
61653       }
61654       if (!_v) goto check_1;
61655       _ranki += _v*_pi;
61656       _rankm += _pi;
61657       _pi *= SWIG_MAXCASTRANK;
61658       if (!_index || (_ranki < _rank)) {
61659         _rank = _ranki; _index = 1;
61660         if (_rank == _rankm) goto dispatch;
61661       }
61662     }
61663   check_1:
61664 
61665     if (items == 2) {
61666       SWIG_TypeRank _ranki = 0;
61667       SWIG_TypeRank _rankm = 0;
61668       SWIG_TypeRank _pi = 1;
61669       int _v = 0;
61670       {
61671         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
61672         _v = SWIG_CheckState(res);
61673       }
61674       if (!_v) goto check_2;
61675       _ranki += _v*_pi;
61676       _rankm += _pi;
61677       _pi *= SWIG_MAXCASTRANK;
61678       {
61679         {
61680           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
61681           _v = SWIG_CheckState(res);
61682         }
61683       }
61684       if (!_v) goto check_2;
61685       _ranki += _v*_pi;
61686       _rankm += _pi;
61687       _pi *= SWIG_MAXCASTRANK;
61688       if (!_index || (_ranki < _rank)) {
61689         _rank = _ranki; _index = 2;
61690         if (_rank == _rankm) goto dispatch;
61691       }
61692     }
61693   check_2:
61694 
61695     if (items == 3) {
61696       SWIG_TypeRank _ranki = 0;
61697       SWIG_TypeRank _rankm = 0;
61698       SWIG_TypeRank _pi = 1;
61699       int _v = 0;
61700       {
61701         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
61702         _v = SWIG_CheckState(res);
61703       }
61704       if (!_v) goto check_3;
61705       _ranki += _v*_pi;
61706       _rankm += _pi;
61707       _pi *= SWIG_MAXCASTRANK;
61708       {
61709         {
61710           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
61711           _v = SWIG_CheckState(res);
61712         }
61713       }
61714       if (!_v) goto check_3;
61715       _ranki += _v*_pi;
61716       _rankm += _pi;
61717       _pi *= SWIG_MAXCASTRANK;
61718       {
61719         {
61720           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
61721           _v = SWIG_CheckState(res);
61722         }
61723       }
61724       if (!_v) goto check_3;
61725       _ranki += _v*_pi;
61726       _rankm += _pi;
61727       _pi *= SWIG_MAXCASTRANK;
61728       if (!_index || (_ranki < _rank)) {
61729         _rank = _ranki; _index = 3;
61730         if (_rank == _rankm) goto dispatch;
61731       }
61732     }
61733   check_3:
61734 
61735     if (items == 4) {
61736       SWIG_TypeRank _ranki = 0;
61737       SWIG_TypeRank _rankm = 0;
61738       SWIG_TypeRank _pi = 1;
61739       int _v = 0;
61740       {
61741         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
61742         _v = SWIG_CheckState(res);
61743       }
61744       if (!_v) goto check_4;
61745       _ranki += _v*_pi;
61746       _rankm += _pi;
61747       _pi *= SWIG_MAXCASTRANK;
61748       {
61749         {
61750           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
61751           _v = SWIG_CheckState(res);
61752         }
61753       }
61754       if (!_v) goto check_4;
61755       _ranki += _v*_pi;
61756       _rankm += _pi;
61757       _pi *= SWIG_MAXCASTRANK;
61758       {
61759         {
61760           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
61761           _v = SWIG_CheckState(res);
61762         }
61763       }
61764       if (!_v) goto check_4;
61765       _ranki += _v*_pi;
61766       _rankm += _pi;
61767       _pi *= SWIG_MAXCASTRANK;
61768       {
61769         {
61770           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
61771           _v = SWIG_CheckState(res);
61772         }
61773       }
61774       if (!_v) goto check_4;
61775       _ranki += _v*_pi;
61776       _rankm += _pi;
61777       _pi *= SWIG_MAXCASTRANK;
61778       if (!_index || (_ranki < _rank)) {
61779         _rank = _ranki; _index = 4;
61780         if (_rank == _rankm) goto dispatch;
61781       }
61782     }
61783   check_4:
61784 
61785     if (items == 5) {
61786       SWIG_TypeRank _ranki = 0;
61787       SWIG_TypeRank _rankm = 0;
61788       SWIG_TypeRank _pi = 1;
61789       int _v = 0;
61790       {
61791         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
61792         _v = SWIG_CheckState(res);
61793       }
61794       if (!_v) goto check_5;
61795       _ranki += _v*_pi;
61796       _rankm += _pi;
61797       _pi *= SWIG_MAXCASTRANK;
61798       {
61799         {
61800           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
61801           _v = SWIG_CheckState(res);
61802         }
61803       }
61804       if (!_v) goto check_5;
61805       _ranki += _v*_pi;
61806       _rankm += _pi;
61807       _pi *= SWIG_MAXCASTRANK;
61808       {
61809         {
61810           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
61811           _v = SWIG_CheckState(res);
61812         }
61813       }
61814       if (!_v) goto check_5;
61815       _ranki += _v*_pi;
61816       _rankm += _pi;
61817       _pi *= SWIG_MAXCASTRANK;
61818       {
61819         {
61820           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
61821           _v = SWIG_CheckState(res);
61822         }
61823       }
61824       if (!_v) goto check_5;
61825       _ranki += _v*_pi;
61826       _rankm += _pi;
61827       _pi *= SWIG_MAXCASTRANK;
61828       {
61829         {
61830           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
61831           _v = SWIG_CheckState(res);
61832         }
61833       }
61834       if (!_v) goto check_5;
61835       _ranki += _v*_pi;
61836       _rankm += _pi;
61837       _pi *= SWIG_MAXCASTRANK;
61838       if (!_index || (_ranki < _rank)) {
61839         _rank = _ranki; _index = 5;
61840         if (_rank == _rankm) goto dispatch;
61841       }
61842     }
61843   check_5:
61844 
61845   dispatch:
61846     switch(_index) {
61847     case 1:
61848       PUSHMARK(MARK); SWIG_CALLXS(_wrap_heat_capacity__SWIG_4); return;
61849     case 2:
61850       PUSHMARK(MARK); SWIG_CALLXS(_wrap_heat_capacity__SWIG_3); return;
61851     case 3:
61852       PUSHMARK(MARK); SWIG_CALLXS(_wrap_heat_capacity__SWIG_2); return;
61853     case 4:
61854       PUSHMARK(MARK); SWIG_CALLXS(_wrap_heat_capacity__SWIG_1); return;
61855     case 5:
61856       PUSHMARK(MARK); SWIG_CALLXS(_wrap_heat_capacity__SWIG_0); return;
61857     }
61858   }
61859 
61860   croak("No matching function for overloaded 'heat_capacity'");
61861   XSRETURN(0);
61862 }
61863 
61864 
XS(_wrap_basepair_i_set)61865 XS(_wrap_basepair_i_set) {
61866   {
61867     vrna_basepair_t *arg1 = (vrna_basepair_t *) 0 ;
61868     int arg2 ;
61869     void *argp1 = 0 ;
61870     int res1 = 0 ;
61871     int val2 ;
61872     int ecode2 = 0 ;
61873     int argvi = 0;
61874     dXSARGS;
61875 
61876     if ((items < 2) || (items > 2)) {
61877       SWIG_croak("Usage: basepair_i_set(self,i);");
61878     }
61879     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_basepair_t, 0 |  0 );
61880     if (!SWIG_IsOK(res1)) {
61881       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "basepair_i_set" "', argument " "1"" of type '" "vrna_basepair_t *""'");
61882     }
61883     arg1 = reinterpret_cast< vrna_basepair_t * >(argp1);
61884     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
61885     if (!SWIG_IsOK(ecode2)) {
61886       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "basepair_i_set" "', argument " "2"" of type '" "int""'");
61887     }
61888     arg2 = static_cast< int >(val2);
61889     if (arg1) (arg1)->i = arg2;
61890     ST(argvi) = &PL_sv_undef;
61891 
61892 
61893     XSRETURN(argvi);
61894   fail:
61895 
61896 
61897     SWIG_croak_null();
61898   }
61899 }
61900 
61901 
XS(_wrap_basepair_i_get)61902 XS(_wrap_basepair_i_get) {
61903   {
61904     vrna_basepair_t *arg1 = (vrna_basepair_t *) 0 ;
61905     void *argp1 = 0 ;
61906     int res1 = 0 ;
61907     int argvi = 0;
61908     int result;
61909     dXSARGS;
61910 
61911     if ((items < 1) || (items > 1)) {
61912       SWIG_croak("Usage: basepair_i_get(self);");
61913     }
61914     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_basepair_t, 0 |  0 );
61915     if (!SWIG_IsOK(res1)) {
61916       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "basepair_i_get" "', argument " "1"" of type '" "vrna_basepair_t *""'");
61917     }
61918     arg1 = reinterpret_cast< vrna_basepair_t * >(argp1);
61919     result = (int) ((arg1)->i);
61920     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
61921 
61922     XSRETURN(argvi);
61923   fail:
61924 
61925     SWIG_croak_null();
61926   }
61927 }
61928 
61929 
XS(_wrap_basepair_j_set)61930 XS(_wrap_basepair_j_set) {
61931   {
61932     vrna_basepair_t *arg1 = (vrna_basepair_t *) 0 ;
61933     int arg2 ;
61934     void *argp1 = 0 ;
61935     int res1 = 0 ;
61936     int val2 ;
61937     int ecode2 = 0 ;
61938     int argvi = 0;
61939     dXSARGS;
61940 
61941     if ((items < 2) || (items > 2)) {
61942       SWIG_croak("Usage: basepair_j_set(self,j);");
61943     }
61944     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_basepair_t, 0 |  0 );
61945     if (!SWIG_IsOK(res1)) {
61946       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "basepair_j_set" "', argument " "1"" of type '" "vrna_basepair_t *""'");
61947     }
61948     arg1 = reinterpret_cast< vrna_basepair_t * >(argp1);
61949     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
61950     if (!SWIG_IsOK(ecode2)) {
61951       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "basepair_j_set" "', argument " "2"" of type '" "int""'");
61952     }
61953     arg2 = static_cast< int >(val2);
61954     if (arg1) (arg1)->j = arg2;
61955     ST(argvi) = &PL_sv_undef;
61956 
61957 
61958     XSRETURN(argvi);
61959   fail:
61960 
61961 
61962     SWIG_croak_null();
61963   }
61964 }
61965 
61966 
XS(_wrap_basepair_j_get)61967 XS(_wrap_basepair_j_get) {
61968   {
61969     vrna_basepair_t *arg1 = (vrna_basepair_t *) 0 ;
61970     void *argp1 = 0 ;
61971     int res1 = 0 ;
61972     int argvi = 0;
61973     int result;
61974     dXSARGS;
61975 
61976     if ((items < 1) || (items > 1)) {
61977       SWIG_croak("Usage: basepair_j_get(self);");
61978     }
61979     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_basepair_t, 0 |  0 );
61980     if (!SWIG_IsOK(res1)) {
61981       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "basepair_j_get" "', argument " "1"" of type '" "vrna_basepair_t *""'");
61982     }
61983     arg1 = reinterpret_cast< vrna_basepair_t * >(argp1);
61984     result = (int) ((arg1)->j);
61985     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
61986 
61987     XSRETURN(argvi);
61988   fail:
61989 
61990     SWIG_croak_null();
61991   }
61992 }
61993 
61994 
XS(_wrap_new_basepair)61995 XS(_wrap_new_basepair) {
61996   {
61997     int argvi = 0;
61998     vrna_basepair_t *result = 0 ;
61999     dXSARGS;
62000 
62001     if ((items < 0) || (items > 0)) {
62002       SWIG_croak("Usage: new_basepair();");
62003     }
62004     {
62005       try {
62006         result = (vrna_basepair_t *)new vrna_basepair_t();
62007       } catch (const std::exception& e) {
62008         SWIG_exception(SWIG_RuntimeError, e.what());
62009       }
62010     }
62011     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_basepair_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
62012     XSRETURN(argvi);
62013   fail:
62014     SWIG_croak_null();
62015   }
62016 }
62017 
62018 
XS(_wrap_delete_basepair)62019 XS(_wrap_delete_basepair) {
62020   {
62021     vrna_basepair_t *arg1 = (vrna_basepair_t *) 0 ;
62022     void *argp1 = 0 ;
62023     int res1 = 0 ;
62024     int argvi = 0;
62025     dXSARGS;
62026 
62027     if ((items < 1) || (items > 1)) {
62028       SWIG_croak("Usage: delete_basepair(self);");
62029     }
62030     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_basepair_t, SWIG_POINTER_DISOWN |  0 );
62031     if (!SWIG_IsOK(res1)) {
62032       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_basepair" "', argument " "1"" of type '" "vrna_basepair_t *""'");
62033     }
62034     arg1 = reinterpret_cast< vrna_basepair_t * >(argp1);
62035     {
62036       try {
62037         delete arg1;
62038       } catch (const std::exception& e) {
62039         SWIG_exception(SWIG_RuntimeError, e.what());
62040       }
62041     }
62042     ST(argvi) = &PL_sv_undef;
62043 
62044     XSRETURN(argvi);
62045   fail:
62046 
62047     SWIG_croak_null();
62048   }
62049 }
62050 
62051 
XS(_wrap_fc_add_perl_callback)62052 XS(_wrap_fc_add_perl_callback) {
62053   {
62054     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
62055     SV *arg2 = (SV *) 0 ;
62056     void *argp1 = 0 ;
62057     int res1 = 0 ;
62058     int argvi = 0;
62059     dXSARGS;
62060 
62061     if ((items < 2) || (items > 2)) {
62062       SWIG_croak("Usage: fc_add_perl_callback(vc,PerlFunc);");
62063     }
62064     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
62065     if (!SWIG_IsOK(res1)) {
62066       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fc_add_perl_callback" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
62067     }
62068     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
62069     {
62070       arg2 = ST(1);
62071     }
62072     {
62073       try {
62074         fc_add_perl_callback(arg1,arg2);
62075       } catch (const std::exception& e) {
62076         SWIG_exception(SWIG_RuntimeError, e.what());
62077       }
62078     }
62079     ST(argvi) = &PL_sv_undef;
62080 
62081 
62082     XSRETURN(argvi);
62083   fail:
62084 
62085 
62086     SWIG_croak_null();
62087   }
62088 }
62089 
62090 
XS(_wrap_fc_add_perl_data)62091 XS(_wrap_fc_add_perl_data) {
62092   {
62093     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
62094     SV *arg2 = (SV *) 0 ;
62095     SV *arg3 = (SV *) 0 ;
62096     void *argp1 = 0 ;
62097     int res1 = 0 ;
62098     int argvi = 0;
62099     dXSARGS;
62100 
62101     if ((items < 3) || (items > 3)) {
62102       SWIG_croak("Usage: fc_add_perl_data(vc,data,PerlFunc);");
62103     }
62104     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
62105     if (!SWIG_IsOK(res1)) {
62106       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fc_add_perl_data" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
62107     }
62108     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
62109     {
62110       arg2 = ST(1);
62111     }
62112     {
62113       arg3 = ST(2);
62114     }
62115     {
62116       try {
62117         fc_add_perl_data(arg1,arg2,arg3);
62118       } catch (const std::exception& e) {
62119         SWIG_exception(SWIG_RuntimeError, e.what());
62120       }
62121     }
62122     ST(argvi) = &PL_sv_undef;
62123 
62124 
62125 
62126     XSRETURN(argvi);
62127   fail:
62128 
62129 
62130 
62131     SWIG_croak_null();
62132   }
62133 }
62134 
62135 
XS(_wrap_sc_add_f_perl_callback)62136 XS(_wrap_sc_add_f_perl_callback) {
62137   {
62138     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
62139     SV *arg2 = (SV *) 0 ;
62140     void *argp1 = 0 ;
62141     int res1 = 0 ;
62142     int argvi = 0;
62143     int result;
62144     dXSARGS;
62145 
62146     if ((items < 2) || (items > 2)) {
62147       SWIG_croak("Usage: sc_add_f_perl_callback(vc,PerlFunc);");
62148     }
62149     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
62150     if (!SWIG_IsOK(res1)) {
62151       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "sc_add_f_perl_callback" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
62152     }
62153     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
62154     {
62155       arg2 = ST(1);
62156     }
62157     {
62158       try {
62159         result = (int)sc_add_f_perl_callback(arg1,arg2);
62160       } catch (const std::exception& e) {
62161         SWIG_exception(SWIG_RuntimeError, e.what());
62162       }
62163     }
62164     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
62165 
62166 
62167     XSRETURN(argvi);
62168   fail:
62169 
62170 
62171     SWIG_croak_null();
62172   }
62173 }
62174 
62175 
XS(_wrap_sc_add_bt_perl_callback)62176 XS(_wrap_sc_add_bt_perl_callback) {
62177   {
62178     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
62179     SV *arg2 = (SV *) 0 ;
62180     void *argp1 = 0 ;
62181     int res1 = 0 ;
62182     int argvi = 0;
62183     int result;
62184     dXSARGS;
62185 
62186     if ((items < 2) || (items > 2)) {
62187       SWIG_croak("Usage: sc_add_bt_perl_callback(vc,PerlFunc);");
62188     }
62189     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
62190     if (!SWIG_IsOK(res1)) {
62191       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "sc_add_bt_perl_callback" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
62192     }
62193     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
62194     {
62195       arg2 = ST(1);
62196     }
62197     {
62198       try {
62199         result = (int)sc_add_bt_perl_callback(arg1,arg2);
62200       } catch (const std::exception& e) {
62201         SWIG_exception(SWIG_RuntimeError, e.what());
62202       }
62203     }
62204     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
62205 
62206 
62207     XSRETURN(argvi);
62208   fail:
62209 
62210 
62211     SWIG_croak_null();
62212   }
62213 }
62214 
62215 
XS(_wrap_sc_add_exp_f_perl_callback)62216 XS(_wrap_sc_add_exp_f_perl_callback) {
62217   {
62218     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
62219     SV *arg2 = (SV *) 0 ;
62220     void *argp1 = 0 ;
62221     int res1 = 0 ;
62222     int argvi = 0;
62223     int result;
62224     dXSARGS;
62225 
62226     if ((items < 2) || (items > 2)) {
62227       SWIG_croak("Usage: sc_add_exp_f_perl_callback(vc,PerlFunc);");
62228     }
62229     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
62230     if (!SWIG_IsOK(res1)) {
62231       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "sc_add_exp_f_perl_callback" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
62232     }
62233     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
62234     {
62235       arg2 = ST(1);
62236     }
62237     {
62238       try {
62239         result = (int)sc_add_exp_f_perl_callback(arg1,arg2);
62240       } catch (const std::exception& e) {
62241         SWIG_exception(SWIG_RuntimeError, e.what());
62242       }
62243     }
62244     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
62245 
62246 
62247     XSRETURN(argvi);
62248   fail:
62249 
62250 
62251     SWIG_croak_null();
62252   }
62253 }
62254 
62255 
XS(_wrap_sc_add_perl_data)62256 XS(_wrap_sc_add_perl_data) {
62257   {
62258     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
62259     SV *arg2 = (SV *) 0 ;
62260     SV *arg3 = (SV *) 0 ;
62261     void *argp1 = 0 ;
62262     int res1 = 0 ;
62263     int argvi = 0;
62264     int result;
62265     dXSARGS;
62266 
62267     if ((items < 3) || (items > 3)) {
62268       SWIG_croak("Usage: sc_add_perl_data(vc,data,PerlFunc);");
62269     }
62270     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
62271     if (!SWIG_IsOK(res1)) {
62272       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "sc_add_perl_data" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
62273     }
62274     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
62275     {
62276       arg2 = ST(1);
62277     }
62278     {
62279       arg3 = ST(2);
62280     }
62281     {
62282       try {
62283         result = (int)sc_add_perl_data(arg1,arg2,arg3);
62284       } catch (const std::exception& e) {
62285         SWIG_exception(SWIG_RuntimeError, e.what());
62286       }
62287     }
62288     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
62289 
62290 
62291 
62292     XSRETURN(argvi);
62293   fail:
62294 
62295 
62296 
62297     SWIG_croak_null();
62298   }
62299 }
62300 
62301 
XS(_wrap_ud_set_data)62302 XS(_wrap_ud_set_data) {
62303   {
62304     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
62305     SV *arg2 = (SV *) 0 ;
62306     SV *arg3 = (SV *) 0 ;
62307     void *argp1 = 0 ;
62308     int res1 = 0 ;
62309     int argvi = 0;
62310     dXSARGS;
62311 
62312     if ((items < 3) || (items > 3)) {
62313       SWIG_croak("Usage: ud_set_data(vc,data,PerlFunc);");
62314     }
62315     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
62316     if (!SWIG_IsOK(res1)) {
62317       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ud_set_data" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
62318     }
62319     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
62320     {
62321       arg2 = ST(1);
62322     }
62323     {
62324       arg3 = ST(2);
62325     }
62326     {
62327       try {
62328         ud_set_data(arg1,arg2,arg3);
62329       } catch (const std::exception& e) {
62330         SWIG_exception(SWIG_RuntimeError, e.what());
62331       }
62332     }
62333     ST(argvi) = &PL_sv_undef;
62334 
62335 
62336 
62337     XSRETURN(argvi);
62338   fail:
62339 
62340 
62341 
62342     SWIG_croak_null();
62343   }
62344 }
62345 
62346 
XS(_wrap_ud_set_prod_rule_cb)62347 XS(_wrap_ud_set_prod_rule_cb) {
62348   {
62349     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
62350     SV *arg2 = (SV *) 0 ;
62351     SV *arg3 = (SV *) 0 ;
62352     void *argp1 = 0 ;
62353     int res1 = 0 ;
62354     int argvi = 0;
62355     dXSARGS;
62356 
62357     if ((items < 3) || (items > 3)) {
62358       SWIG_croak("Usage: ud_set_prod_rule_cb(vc,prod_cb,eval_cb);");
62359     }
62360     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
62361     if (!SWIG_IsOK(res1)) {
62362       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ud_set_prod_rule_cb" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
62363     }
62364     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
62365     arg2 = ST(1);
62366     arg3 = ST(2);
62367     {
62368       try {
62369         ud_set_prod_rule_cb(arg1,arg2,arg3);
62370       } catch (const std::exception& e) {
62371         SWIG_exception(SWIG_RuntimeError, e.what());
62372       }
62373     }
62374     ST(argvi) = &PL_sv_undef;
62375 
62376 
62377 
62378     XSRETURN(argvi);
62379   fail:
62380 
62381 
62382 
62383     SWIG_croak_null();
62384   }
62385 }
62386 
62387 
XS(_wrap_ud_set_exp_prod_rule_cb)62388 XS(_wrap_ud_set_exp_prod_rule_cb) {
62389   {
62390     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
62391     SV *arg2 = (SV *) 0 ;
62392     SV *arg3 = (SV *) 0 ;
62393     void *argp1 = 0 ;
62394     int res1 = 0 ;
62395     int argvi = 0;
62396     dXSARGS;
62397 
62398     if ((items < 3) || (items > 3)) {
62399       SWIG_croak("Usage: ud_set_exp_prod_rule_cb(vc,prod_cb,eval_cb);");
62400     }
62401     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
62402     if (!SWIG_IsOK(res1)) {
62403       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ud_set_exp_prod_rule_cb" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
62404     }
62405     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
62406     arg2 = ST(1);
62407     arg3 = ST(2);
62408     {
62409       try {
62410         ud_set_exp_prod_rule_cb(arg1,arg2,arg3);
62411       } catch (const std::exception& e) {
62412         SWIG_exception(SWIG_RuntimeError, e.what());
62413       }
62414     }
62415     ST(argvi) = &PL_sv_undef;
62416 
62417 
62418 
62419     XSRETURN(argvi);
62420   fail:
62421 
62422 
62423 
62424     SWIG_croak_null();
62425   }
62426 }
62427 
62428 
XS(_wrap_ud_set_prob_cb)62429 XS(_wrap_ud_set_prob_cb) {
62430   {
62431     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
62432     SV *arg2 = (SV *) 0 ;
62433     SV *arg3 = (SV *) 0 ;
62434     void *argp1 = 0 ;
62435     int res1 = 0 ;
62436     int argvi = 0;
62437     dXSARGS;
62438 
62439     if ((items < 3) || (items > 3)) {
62440       SWIG_croak("Usage: ud_set_prob_cb(vc,setter,getter);");
62441     }
62442     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
62443     if (!SWIG_IsOK(res1)) {
62444       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ud_set_prob_cb" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
62445     }
62446     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
62447     arg2 = ST(1);
62448     arg3 = ST(2);
62449     {
62450       try {
62451         ud_set_prob_cb(arg1,arg2,arg3);
62452       } catch (const std::exception& e) {
62453         SWIG_exception(SWIG_RuntimeError, e.what());
62454       }
62455     }
62456     ST(argvi) = &PL_sv_undef;
62457 
62458 
62459 
62460     XSRETURN(argvi);
62461   fail:
62462 
62463 
62464 
62465     SWIG_croak_null();
62466   }
62467 }
62468 
62469 
XS(_wrap_Lfold_cb__SWIG_0)62470 XS(_wrap_Lfold_cb__SWIG_0) {
62471   {
62472     char *arg1 = (char *) 0 ;
62473     int arg2 ;
62474     SV *arg3 = (SV *) 0 ;
62475     SV *arg4 = (SV *) 0 ;
62476     int res1 ;
62477     char *buf1 = 0 ;
62478     int alloc1 = 0 ;
62479     int val2 ;
62480     int ecode2 = 0 ;
62481     int argvi = 0;
62482     float result;
62483     dXSARGS;
62484 
62485     if ((items < 4) || (items > 4)) {
62486       SWIG_croak("Usage: Lfold_cb(string,window_size,PerlFunc,PerlData);");
62487     }
62488     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
62489     if (!SWIG_IsOK(res1)) {
62490       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Lfold_cb" "', argument " "1"" of type '" "char *""'");
62491     }
62492     arg1 = reinterpret_cast< char * >(buf1);
62493     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
62494     if (!SWIG_IsOK(ecode2)) {
62495       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Lfold_cb" "', argument " "2"" of type '" "int""'");
62496     }
62497     arg2 = static_cast< int >(val2);
62498     {
62499       arg3 = ST(2);
62500     }
62501     arg4 = ST(3);
62502     {
62503       try {
62504         result = (float)my_Lfold_cb(arg1,arg2,arg3,arg4);
62505       } catch (const std::exception& e) {
62506         SWIG_exception(SWIG_RuntimeError, e.what());
62507       }
62508     }
62509     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
62510     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
62511 
62512 
62513 
62514     XSRETURN(argvi);
62515   fail:
62516     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
62517 
62518 
62519 
62520     SWIG_croak_null();
62521   }
62522 }
62523 
62524 
XS(_wrap_Lfold_cb__SWIG_1)62525 XS(_wrap_Lfold_cb__SWIG_1) {
62526   {
62527     char *arg1 = (char *) 0 ;
62528     int arg2 ;
62529     SV *arg3 = (SV *) 0 ;
62530     int res1 ;
62531     char *buf1 = 0 ;
62532     int alloc1 = 0 ;
62533     int val2 ;
62534     int ecode2 = 0 ;
62535     int argvi = 0;
62536     float result;
62537     dXSARGS;
62538 
62539     if ((items < 3) || (items > 3)) {
62540       SWIG_croak("Usage: Lfold_cb(string,window_size,PerlFunc);");
62541     }
62542     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
62543     if (!SWIG_IsOK(res1)) {
62544       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Lfold_cb" "', argument " "1"" of type '" "char *""'");
62545     }
62546     arg1 = reinterpret_cast< char * >(buf1);
62547     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
62548     if (!SWIG_IsOK(ecode2)) {
62549       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Lfold_cb" "', argument " "2"" of type '" "int""'");
62550     }
62551     arg2 = static_cast< int >(val2);
62552     {
62553       arg3 = ST(2);
62554     }
62555     {
62556       try {
62557         result = (float)my_Lfold_cb(arg1,arg2,arg3);
62558       } catch (const std::exception& e) {
62559         SWIG_exception(SWIG_RuntimeError, e.what());
62560       }
62561     }
62562     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
62563     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
62564 
62565 
62566     XSRETURN(argvi);
62567   fail:
62568     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
62569 
62570 
62571     SWIG_croak_null();
62572   }
62573 }
62574 
62575 
XS(_wrap_Lfold_cb)62576 XS(_wrap_Lfold_cb) {
62577   dXSARGS;
62578 
62579   {
62580     unsigned long _index = 0;
62581     SWIG_TypeRank _rank = 0;
62582     if (items == 3) {
62583       SWIG_TypeRank _ranki = 0;
62584       SWIG_TypeRank _rankm = 0;
62585       SWIG_TypeRank _pi = 1;
62586       int _v = 0;
62587       {
62588         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
62589         _v = SWIG_CheckState(res);
62590       }
62591       if (!_v) goto check_1;
62592       _ranki += _v*_pi;
62593       _rankm += _pi;
62594       _pi *= SWIG_MAXCASTRANK;
62595       {
62596         {
62597           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
62598           _v = SWIG_CheckState(res);
62599         }
62600       }
62601       if (!_v) goto check_1;
62602       _ranki += _v*_pi;
62603       _rankm += _pi;
62604       _pi *= SWIG_MAXCASTRANK;
62605       {
62606         _v = (ST(2) != 0);
62607       }
62608       if (!_v) goto check_1;
62609       _ranki += _v*_pi;
62610       _rankm += _pi;
62611       _pi *= SWIG_MAXCASTRANK;
62612       if (!_index || (_ranki < _rank)) {
62613         _rank = _ranki; _index = 1;
62614         if (_rank == _rankm) goto dispatch;
62615       }
62616     }
62617   check_1:
62618 
62619     if (items == 4) {
62620       SWIG_TypeRank _ranki = 0;
62621       SWIG_TypeRank _rankm = 0;
62622       SWIG_TypeRank _pi = 1;
62623       int _v = 0;
62624       {
62625         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
62626         _v = SWIG_CheckState(res);
62627       }
62628       if (!_v) goto check_2;
62629       _ranki += _v*_pi;
62630       _rankm += _pi;
62631       _pi *= SWIG_MAXCASTRANK;
62632       {
62633         {
62634           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
62635           _v = SWIG_CheckState(res);
62636         }
62637       }
62638       if (!_v) goto check_2;
62639       _ranki += _v*_pi;
62640       _rankm += _pi;
62641       _pi *= SWIG_MAXCASTRANK;
62642       {
62643         _v = (ST(2) != 0);
62644       }
62645       if (!_v) goto check_2;
62646       _ranki += _v*_pi;
62647       _rankm += _pi;
62648       _pi *= SWIG_MAXCASTRANK;
62649       {
62650         _v = (ST(3) != 0);
62651       }
62652       if (!_v) goto check_2;
62653       _ranki += _v*_pi;
62654       _rankm += _pi;
62655       _pi *= SWIG_MAXCASTRANK;
62656       if (!_index || (_ranki < _rank)) {
62657         _rank = _ranki; _index = 2;
62658         if (_rank == _rankm) goto dispatch;
62659       }
62660     }
62661   check_2:
62662 
62663   dispatch:
62664     switch(_index) {
62665     case 1:
62666       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Lfold_cb__SWIG_1); return;
62667     case 2:
62668       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Lfold_cb__SWIG_0); return;
62669     }
62670   }
62671 
62672   croak("No matching function for overloaded 'Lfold_cb'");
62673   XSRETURN(0);
62674 }
62675 
62676 
XS(_wrap_Lfoldz_cb__SWIG_0)62677 XS(_wrap_Lfoldz_cb__SWIG_0) {
62678   {
62679     char *arg1 = (char *) 0 ;
62680     int arg2 ;
62681     double arg3 ;
62682     SV *arg4 = (SV *) 0 ;
62683     SV *arg5 = (SV *) 0 ;
62684     int res1 ;
62685     char *buf1 = 0 ;
62686     int alloc1 = 0 ;
62687     int val2 ;
62688     int ecode2 = 0 ;
62689     double val3 ;
62690     int ecode3 = 0 ;
62691     int argvi = 0;
62692     float result;
62693     dXSARGS;
62694 
62695     if ((items < 5) || (items > 5)) {
62696       SWIG_croak("Usage: Lfoldz_cb(string,window_size,min_z,PerlFunc,PerlData);");
62697     }
62698     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
62699     if (!SWIG_IsOK(res1)) {
62700       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Lfoldz_cb" "', argument " "1"" of type '" "char *""'");
62701     }
62702     arg1 = reinterpret_cast< char * >(buf1);
62703     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
62704     if (!SWIG_IsOK(ecode2)) {
62705       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Lfoldz_cb" "', argument " "2"" of type '" "int""'");
62706     }
62707     arg2 = static_cast< int >(val2);
62708     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
62709     if (!SWIG_IsOK(ecode3)) {
62710       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Lfoldz_cb" "', argument " "3"" of type '" "double""'");
62711     }
62712     arg3 = static_cast< double >(val3);
62713     {
62714       arg4 = ST(3);
62715     }
62716     arg5 = ST(4);
62717     {
62718       try {
62719         result = (float)my_Lfoldz_cb(arg1,arg2,arg3,arg4,arg5);
62720       } catch (const std::exception& e) {
62721         SWIG_exception(SWIG_RuntimeError, e.what());
62722       }
62723     }
62724     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
62725     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
62726 
62727 
62728 
62729 
62730     XSRETURN(argvi);
62731   fail:
62732     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
62733 
62734 
62735 
62736 
62737     SWIG_croak_null();
62738   }
62739 }
62740 
62741 
XS(_wrap_Lfoldz_cb__SWIG_1)62742 XS(_wrap_Lfoldz_cb__SWIG_1) {
62743   {
62744     char *arg1 = (char *) 0 ;
62745     int arg2 ;
62746     double arg3 ;
62747     SV *arg4 = (SV *) 0 ;
62748     int res1 ;
62749     char *buf1 = 0 ;
62750     int alloc1 = 0 ;
62751     int val2 ;
62752     int ecode2 = 0 ;
62753     double val3 ;
62754     int ecode3 = 0 ;
62755     int argvi = 0;
62756     float result;
62757     dXSARGS;
62758 
62759     if ((items < 4) || (items > 4)) {
62760       SWIG_croak("Usage: Lfoldz_cb(string,window_size,min_z,PerlFunc);");
62761     }
62762     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
62763     if (!SWIG_IsOK(res1)) {
62764       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Lfoldz_cb" "', argument " "1"" of type '" "char *""'");
62765     }
62766     arg1 = reinterpret_cast< char * >(buf1);
62767     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
62768     if (!SWIG_IsOK(ecode2)) {
62769       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Lfoldz_cb" "', argument " "2"" of type '" "int""'");
62770     }
62771     arg2 = static_cast< int >(val2);
62772     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
62773     if (!SWIG_IsOK(ecode3)) {
62774       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Lfoldz_cb" "', argument " "3"" of type '" "double""'");
62775     }
62776     arg3 = static_cast< double >(val3);
62777     {
62778       arg4 = ST(3);
62779     }
62780     {
62781       try {
62782         result = (float)my_Lfoldz_cb(arg1,arg2,arg3,arg4);
62783       } catch (const std::exception& e) {
62784         SWIG_exception(SWIG_RuntimeError, e.what());
62785       }
62786     }
62787     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
62788     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
62789 
62790 
62791 
62792     XSRETURN(argvi);
62793   fail:
62794     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
62795 
62796 
62797 
62798     SWIG_croak_null();
62799   }
62800 }
62801 
62802 
XS(_wrap_Lfoldz_cb)62803 XS(_wrap_Lfoldz_cb) {
62804   dXSARGS;
62805 
62806   {
62807     unsigned long _index = 0;
62808     SWIG_TypeRank _rank = 0;
62809     if (items == 4) {
62810       SWIG_TypeRank _ranki = 0;
62811       SWIG_TypeRank _rankm = 0;
62812       SWIG_TypeRank _pi = 1;
62813       int _v = 0;
62814       {
62815         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
62816         _v = SWIG_CheckState(res);
62817       }
62818       if (!_v) goto check_1;
62819       _ranki += _v*_pi;
62820       _rankm += _pi;
62821       _pi *= SWIG_MAXCASTRANK;
62822       {
62823         {
62824           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
62825           _v = SWIG_CheckState(res);
62826         }
62827       }
62828       if (!_v) goto check_1;
62829       _ranki += _v*_pi;
62830       _rankm += _pi;
62831       _pi *= SWIG_MAXCASTRANK;
62832       {
62833         {
62834           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
62835           _v = SWIG_CheckState(res);
62836         }
62837       }
62838       if (!_v) goto check_1;
62839       _ranki += _v*_pi;
62840       _rankm += _pi;
62841       _pi *= SWIG_MAXCASTRANK;
62842       {
62843         _v = (ST(3) != 0);
62844       }
62845       if (!_v) goto check_1;
62846       _ranki += _v*_pi;
62847       _rankm += _pi;
62848       _pi *= SWIG_MAXCASTRANK;
62849       if (!_index || (_ranki < _rank)) {
62850         _rank = _ranki; _index = 1;
62851         if (_rank == _rankm) goto dispatch;
62852       }
62853     }
62854   check_1:
62855 
62856     if (items == 5) {
62857       SWIG_TypeRank _ranki = 0;
62858       SWIG_TypeRank _rankm = 0;
62859       SWIG_TypeRank _pi = 1;
62860       int _v = 0;
62861       {
62862         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
62863         _v = SWIG_CheckState(res);
62864       }
62865       if (!_v) goto check_2;
62866       _ranki += _v*_pi;
62867       _rankm += _pi;
62868       _pi *= SWIG_MAXCASTRANK;
62869       {
62870         {
62871           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
62872           _v = SWIG_CheckState(res);
62873         }
62874       }
62875       if (!_v) goto check_2;
62876       _ranki += _v*_pi;
62877       _rankm += _pi;
62878       _pi *= SWIG_MAXCASTRANK;
62879       {
62880         {
62881           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
62882           _v = SWIG_CheckState(res);
62883         }
62884       }
62885       if (!_v) goto check_2;
62886       _ranki += _v*_pi;
62887       _rankm += _pi;
62888       _pi *= SWIG_MAXCASTRANK;
62889       {
62890         _v = (ST(3) != 0);
62891       }
62892       if (!_v) goto check_2;
62893       _ranki += _v*_pi;
62894       _rankm += _pi;
62895       _pi *= SWIG_MAXCASTRANK;
62896       {
62897         _v = (ST(4) != 0);
62898       }
62899       if (!_v) goto check_2;
62900       _ranki += _v*_pi;
62901       _rankm += _pi;
62902       _pi *= SWIG_MAXCASTRANK;
62903       if (!_index || (_ranki < _rank)) {
62904         _rank = _ranki; _index = 2;
62905         if (_rank == _rankm) goto dispatch;
62906       }
62907     }
62908   check_2:
62909 
62910   dispatch:
62911     switch(_index) {
62912     case 1:
62913       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Lfoldz_cb__SWIG_1); return;
62914     case 2:
62915       PUSHMARK(MARK); SWIG_CALLXS(_wrap_Lfoldz_cb__SWIG_0); return;
62916     }
62917   }
62918 
62919   croak("No matching function for overloaded 'Lfoldz_cb'");
62920   XSRETURN(0);
62921 }
62922 
62923 
XS(_wrap_aliLfold_cb__SWIG_0)62924 XS(_wrap_aliLfold_cb__SWIG_0) {
62925   {
62926     std::vector< std::string > arg1 ;
62927     int arg2 ;
62928     SV *arg3 = (SV *) 0 ;
62929     SV *arg4 = (SV *) 0 ;
62930     std::vector< std::string > *v1 ;
62931     int val2 ;
62932     int ecode2 = 0 ;
62933     int argvi = 0;
62934     float result;
62935     dXSARGS;
62936 
62937     if ((items < 4) || (items > 4)) {
62938       SWIG_croak("Usage: aliLfold_cb(alignment,window_size,PerlFunc,PerlData);");
62939     }
62940     {
62941       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
62942           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
62943         arg1 = *v1;
62944       } else if (SvROK(ST(0))) {
62945         AV *av = (AV *)SvRV(ST(0));
62946         if (SvTYPE(av) != SVt_PVAV)
62947         SWIG_croak("Type error in argument 1 of aliLfold_cb. "
62948           "Expected an array of ""std::string");
62949         SV **tv;
62950         I32 len = av_len(av) + 1;
62951         for (int i=0; i<len; i++) {
62952           tv = av_fetch(av, i, 0);
62953           if (SvPOK(*tv)) {
62954             (&arg1)->push_back((std::string)SwigSvToString(*tv));
62955           } else {
62956             SWIG_croak("Type error in argument 1 of "
62957               "aliLfold_cb. "
62958               "Expected an array of ""std::string");
62959           }
62960         }
62961       } else {
62962         SWIG_croak("Type error in argument 1 of aliLfold_cb. "
62963           "Expected an array of ""std::string");
62964       }
62965     }
62966     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
62967     if (!SWIG_IsOK(ecode2)) {
62968       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "aliLfold_cb" "', argument " "2"" of type '" "int""'");
62969     }
62970     arg2 = static_cast< int >(val2);
62971     {
62972       arg3 = ST(2);
62973     }
62974     arg4 = ST(3);
62975     {
62976       try {
62977         result = (float)my_aliLfold_cb(arg1,arg2,arg3,arg4);
62978       } catch (const std::exception& e) {
62979         SWIG_exception(SWIG_RuntimeError, e.what());
62980       }
62981     }
62982     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
62983 
62984 
62985 
62986     XSRETURN(argvi);
62987   fail:
62988 
62989 
62990 
62991     SWIG_croak_null();
62992   }
62993 }
62994 
62995 
XS(_wrap_aliLfold_cb__SWIG_1)62996 XS(_wrap_aliLfold_cb__SWIG_1) {
62997   {
62998     std::vector< std::string > arg1 ;
62999     int arg2 ;
63000     SV *arg3 = (SV *) 0 ;
63001     std::vector< std::string > *v1 ;
63002     int val2 ;
63003     int ecode2 = 0 ;
63004     int argvi = 0;
63005     float result;
63006     dXSARGS;
63007 
63008     if ((items < 3) || (items > 3)) {
63009       SWIG_croak("Usage: aliLfold_cb(alignment,window_size,PerlFunc);");
63010     }
63011     {
63012       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
63013           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
63014         arg1 = *v1;
63015       } else if (SvROK(ST(0))) {
63016         AV *av = (AV *)SvRV(ST(0));
63017         if (SvTYPE(av) != SVt_PVAV)
63018         SWIG_croak("Type error in argument 1 of aliLfold_cb. "
63019           "Expected an array of ""std::string");
63020         SV **tv;
63021         I32 len = av_len(av) + 1;
63022         for (int i=0; i<len; i++) {
63023           tv = av_fetch(av, i, 0);
63024           if (SvPOK(*tv)) {
63025             (&arg1)->push_back((std::string)SwigSvToString(*tv));
63026           } else {
63027             SWIG_croak("Type error in argument 1 of "
63028               "aliLfold_cb. "
63029               "Expected an array of ""std::string");
63030           }
63031         }
63032       } else {
63033         SWIG_croak("Type error in argument 1 of aliLfold_cb. "
63034           "Expected an array of ""std::string");
63035       }
63036     }
63037     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
63038     if (!SWIG_IsOK(ecode2)) {
63039       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "aliLfold_cb" "', argument " "2"" of type '" "int""'");
63040     }
63041     arg2 = static_cast< int >(val2);
63042     {
63043       arg3 = ST(2);
63044     }
63045     {
63046       try {
63047         result = (float)my_aliLfold_cb(arg1,arg2,arg3);
63048       } catch (const std::exception& e) {
63049         SWIG_exception(SWIG_RuntimeError, e.what());
63050       }
63051     }
63052     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
63053 
63054 
63055     XSRETURN(argvi);
63056   fail:
63057 
63058 
63059     SWIG_croak_null();
63060   }
63061 }
63062 
63063 
XS(_wrap_aliLfold_cb)63064 XS(_wrap_aliLfold_cb) {
63065   dXSARGS;
63066 
63067   {
63068     unsigned long _index = 0;
63069     SWIG_TypeRank _rank = 0;
63070     if (items == 3) {
63071       SWIG_TypeRank _ranki = 0;
63072       SWIG_TypeRank _rankm = 0;
63073       SWIG_TypeRank _pi = 1;
63074       int _v = 0;
63075       {
63076         {
63077           {
63078             /* wrapped vector? */
63079             std::vector< std::string >* v;
63080             if (SWIG_ConvertPtr(ST(0),(void **) &v,
63081                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
63082               _v = 1;
63083             } else if (SvROK(ST(0))) {
63084               /* native sequence? */
63085               AV *av = (AV *)SvRV(ST(0));
63086               if (SvTYPE(av) == SVt_PVAV) {
63087                 I32 len = av_len(av) + 1;
63088                 if (len == 0) {
63089                   /* an empty sequence can be of any type */
63090                   _v = 1;
63091                 } else {
63092                   /* check the first element only */
63093                   SV **tv = av_fetch(av, 0, 0);
63094                   if (SvPOK(*tv))
63095                   _v = 1;
63096                   else
63097                   _v = 0;
63098                 }
63099               }
63100             } else {
63101               _v = 0;
63102             }
63103           }
63104         }
63105       }
63106       if (!_v) goto check_1;
63107       _ranki += _v*_pi;
63108       _rankm += _pi;
63109       _pi *= SWIG_MAXCASTRANK;
63110       {
63111         {
63112           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
63113           _v = SWIG_CheckState(res);
63114         }
63115       }
63116       if (!_v) goto check_1;
63117       _ranki += _v*_pi;
63118       _rankm += _pi;
63119       _pi *= SWIG_MAXCASTRANK;
63120       {
63121         _v = (ST(2) != 0);
63122       }
63123       if (!_v) goto check_1;
63124       _ranki += _v*_pi;
63125       _rankm += _pi;
63126       _pi *= SWIG_MAXCASTRANK;
63127       if (!_index || (_ranki < _rank)) {
63128         _rank = _ranki; _index = 1;
63129         if (_rank == _rankm) goto dispatch;
63130       }
63131     }
63132   check_1:
63133 
63134     if (items == 4) {
63135       SWIG_TypeRank _ranki = 0;
63136       SWIG_TypeRank _rankm = 0;
63137       SWIG_TypeRank _pi = 1;
63138       int _v = 0;
63139       {
63140         {
63141           {
63142             /* wrapped vector? */
63143             std::vector< std::string >* v;
63144             if (SWIG_ConvertPtr(ST(0),(void **) &v,
63145                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
63146               _v = 1;
63147             } else if (SvROK(ST(0))) {
63148               /* native sequence? */
63149               AV *av = (AV *)SvRV(ST(0));
63150               if (SvTYPE(av) == SVt_PVAV) {
63151                 I32 len = av_len(av) + 1;
63152                 if (len == 0) {
63153                   /* an empty sequence can be of any type */
63154                   _v = 1;
63155                 } else {
63156                   /* check the first element only */
63157                   SV **tv = av_fetch(av, 0, 0);
63158                   if (SvPOK(*tv))
63159                   _v = 1;
63160                   else
63161                   _v = 0;
63162                 }
63163               }
63164             } else {
63165               _v = 0;
63166             }
63167           }
63168         }
63169       }
63170       if (!_v) goto check_2;
63171       _ranki += _v*_pi;
63172       _rankm += _pi;
63173       _pi *= SWIG_MAXCASTRANK;
63174       {
63175         {
63176           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
63177           _v = SWIG_CheckState(res);
63178         }
63179       }
63180       if (!_v) goto check_2;
63181       _ranki += _v*_pi;
63182       _rankm += _pi;
63183       _pi *= SWIG_MAXCASTRANK;
63184       {
63185         _v = (ST(2) != 0);
63186       }
63187       if (!_v) goto check_2;
63188       _ranki += _v*_pi;
63189       _rankm += _pi;
63190       _pi *= SWIG_MAXCASTRANK;
63191       {
63192         _v = (ST(3) != 0);
63193       }
63194       if (!_v) goto check_2;
63195       _ranki += _v*_pi;
63196       _rankm += _pi;
63197       _pi *= SWIG_MAXCASTRANK;
63198       if (!_index || (_ranki < _rank)) {
63199         _rank = _ranki; _index = 2;
63200         if (_rank == _rankm) goto dispatch;
63201       }
63202     }
63203   check_2:
63204 
63205   dispatch:
63206     switch(_index) {
63207     case 1:
63208       PUSHMARK(MARK); SWIG_CALLXS(_wrap_aliLfold_cb__SWIG_1); return;
63209     case 2:
63210       PUSHMARK(MARK); SWIG_CALLXS(_wrap_aliLfold_cb__SWIG_0); return;
63211     }
63212   }
63213 
63214   croak("No matching function for overloaded 'aliLfold_cb'");
63215   XSRETURN(0);
63216 }
63217 
63218 
XS(_wrap_pfl_fold_cb__SWIG_0)63219 XS(_wrap_pfl_fold_cb__SWIG_0) {
63220   {
63221     std::string arg1 ;
63222     int arg2 ;
63223     int arg3 ;
63224     SV *arg4 = (SV *) 0 ;
63225     SV *arg5 = (SV *) 0 ;
63226     int val2 ;
63227     int ecode2 = 0 ;
63228     int val3 ;
63229     int ecode3 = 0 ;
63230     int argvi = 0;
63231     int result;
63232     dXSARGS;
63233 
63234     if ((items < 5) || (items > 5)) {
63235       SWIG_croak("Usage: pfl_fold_cb(sequence,window_size,max_bp_span,PerlFunc,PerlData);");
63236     }
63237     {
63238       std::string *ptr = (std::string *)0;
63239       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
63240       if (!SWIG_IsOK(res) || !ptr) {
63241         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "pfl_fold_cb" "', argument " "1"" of type '" "std::string""'");
63242       }
63243       arg1 = *ptr;
63244       if (SWIG_IsNewObj(res)) delete ptr;
63245     }
63246     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
63247     if (!SWIG_IsOK(ecode2)) {
63248       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pfl_fold_cb" "', argument " "2"" of type '" "int""'");
63249     }
63250     arg2 = static_cast< int >(val2);
63251     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
63252     if (!SWIG_IsOK(ecode3)) {
63253       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "pfl_fold_cb" "', argument " "3"" of type '" "int""'");
63254     }
63255     arg3 = static_cast< int >(val3);
63256     {
63257       arg4 = ST(3);
63258     }
63259     arg5 = ST(4);
63260     {
63261       try {
63262         result = (int)pfl_fold_cb(arg1,arg2,arg3,arg4,arg5);
63263       } catch (const std::exception& e) {
63264         SWIG_exception(SWIG_RuntimeError, e.what());
63265       }
63266     }
63267     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
63268 
63269 
63270 
63271 
63272 
63273     XSRETURN(argvi);
63274   fail:
63275 
63276 
63277 
63278 
63279 
63280     SWIG_croak_null();
63281   }
63282 }
63283 
63284 
XS(_wrap_pfl_fold_cb__SWIG_1)63285 XS(_wrap_pfl_fold_cb__SWIG_1) {
63286   {
63287     std::string arg1 ;
63288     int arg2 ;
63289     int arg3 ;
63290     SV *arg4 = (SV *) 0 ;
63291     int val2 ;
63292     int ecode2 = 0 ;
63293     int val3 ;
63294     int ecode3 = 0 ;
63295     int argvi = 0;
63296     int result;
63297     dXSARGS;
63298 
63299     if ((items < 4) || (items > 4)) {
63300       SWIG_croak("Usage: pfl_fold_cb(sequence,window_size,max_bp_span,PerlFunc);");
63301     }
63302     {
63303       std::string *ptr = (std::string *)0;
63304       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
63305       if (!SWIG_IsOK(res) || !ptr) {
63306         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "pfl_fold_cb" "', argument " "1"" of type '" "std::string""'");
63307       }
63308       arg1 = *ptr;
63309       if (SWIG_IsNewObj(res)) delete ptr;
63310     }
63311     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
63312     if (!SWIG_IsOK(ecode2)) {
63313       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pfl_fold_cb" "', argument " "2"" of type '" "int""'");
63314     }
63315     arg2 = static_cast< int >(val2);
63316     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
63317     if (!SWIG_IsOK(ecode3)) {
63318       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "pfl_fold_cb" "', argument " "3"" of type '" "int""'");
63319     }
63320     arg3 = static_cast< int >(val3);
63321     {
63322       arg4 = ST(3);
63323     }
63324     {
63325       try {
63326         result = (int)pfl_fold_cb(arg1,arg2,arg3,arg4);
63327       } catch (const std::exception& e) {
63328         SWIG_exception(SWIG_RuntimeError, e.what());
63329       }
63330     }
63331     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
63332 
63333 
63334 
63335 
63336     XSRETURN(argvi);
63337   fail:
63338 
63339 
63340 
63341 
63342     SWIG_croak_null();
63343   }
63344 }
63345 
63346 
XS(_wrap_pfl_fold_cb)63347 XS(_wrap_pfl_fold_cb) {
63348   dXSARGS;
63349 
63350   {
63351     unsigned long _index = 0;
63352     SWIG_TypeRank _rank = 0;
63353     if (items == 4) {
63354       SWIG_TypeRank _ranki = 0;
63355       SWIG_TypeRank _rankm = 0;
63356       SWIG_TypeRank _pi = 1;
63357       int _v = 0;
63358       {
63359         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
63360         _v = SWIG_CheckState(res);
63361       }
63362       if (!_v) goto check_1;
63363       _ranki += _v*_pi;
63364       _rankm += _pi;
63365       _pi *= SWIG_MAXCASTRANK;
63366       {
63367         {
63368           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
63369           _v = SWIG_CheckState(res);
63370         }
63371       }
63372       if (!_v) goto check_1;
63373       _ranki += _v*_pi;
63374       _rankm += _pi;
63375       _pi *= SWIG_MAXCASTRANK;
63376       {
63377         {
63378           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
63379           _v = SWIG_CheckState(res);
63380         }
63381       }
63382       if (!_v) goto check_1;
63383       _ranki += _v*_pi;
63384       _rankm += _pi;
63385       _pi *= SWIG_MAXCASTRANK;
63386       {
63387         _v = (ST(3) != 0);
63388       }
63389       if (!_v) goto check_1;
63390       _ranki += _v*_pi;
63391       _rankm += _pi;
63392       _pi *= SWIG_MAXCASTRANK;
63393       if (!_index || (_ranki < _rank)) {
63394         _rank = _ranki; _index = 1;
63395         if (_rank == _rankm) goto dispatch;
63396       }
63397     }
63398   check_1:
63399 
63400     if (items == 5) {
63401       SWIG_TypeRank _ranki = 0;
63402       SWIG_TypeRank _rankm = 0;
63403       SWIG_TypeRank _pi = 1;
63404       int _v = 0;
63405       {
63406         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
63407         _v = SWIG_CheckState(res);
63408       }
63409       if (!_v) goto check_2;
63410       _ranki += _v*_pi;
63411       _rankm += _pi;
63412       _pi *= SWIG_MAXCASTRANK;
63413       {
63414         {
63415           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
63416           _v = SWIG_CheckState(res);
63417         }
63418       }
63419       if (!_v) goto check_2;
63420       _ranki += _v*_pi;
63421       _rankm += _pi;
63422       _pi *= SWIG_MAXCASTRANK;
63423       {
63424         {
63425           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
63426           _v = SWIG_CheckState(res);
63427         }
63428       }
63429       if (!_v) goto check_2;
63430       _ranki += _v*_pi;
63431       _rankm += _pi;
63432       _pi *= SWIG_MAXCASTRANK;
63433       {
63434         _v = (ST(3) != 0);
63435       }
63436       if (!_v) goto check_2;
63437       _ranki += _v*_pi;
63438       _rankm += _pi;
63439       _pi *= SWIG_MAXCASTRANK;
63440       {
63441         _v = (ST(4) != 0);
63442       }
63443       if (!_v) goto check_2;
63444       _ranki += _v*_pi;
63445       _rankm += _pi;
63446       _pi *= SWIG_MAXCASTRANK;
63447       if (!_index || (_ranki < _rank)) {
63448         _rank = _ranki; _index = 2;
63449         if (_rank == _rankm) goto dispatch;
63450       }
63451     }
63452   check_2:
63453 
63454   dispatch:
63455     switch(_index) {
63456     case 1:
63457       PUSHMARK(MARK); SWIG_CALLXS(_wrap_pfl_fold_cb__SWIG_1); return;
63458     case 2:
63459       PUSHMARK(MARK); SWIG_CALLXS(_wrap_pfl_fold_cb__SWIG_0); return;
63460     }
63461   }
63462 
63463   croak("No matching function for overloaded 'pfl_fold_cb'");
63464   XSRETURN(0);
63465 }
63466 
63467 
XS(_wrap_pfl_fold_up_cb__SWIG_0)63468 XS(_wrap_pfl_fold_up_cb__SWIG_0) {
63469   {
63470     std::string arg1 ;
63471     int arg2 ;
63472     int arg3 ;
63473     int arg4 ;
63474     SV *arg5 = (SV *) 0 ;
63475     SV *arg6 = (SV *) 0 ;
63476     int val2 ;
63477     int ecode2 = 0 ;
63478     int val3 ;
63479     int ecode3 = 0 ;
63480     int val4 ;
63481     int ecode4 = 0 ;
63482     int argvi = 0;
63483     int result;
63484     dXSARGS;
63485 
63486     if ((items < 6) || (items > 6)) {
63487       SWIG_croak("Usage: pfl_fold_up_cb(sequence,ulength,window_size,max_bp_span,PerlFunc,PerlData);");
63488     }
63489     {
63490       std::string *ptr = (std::string *)0;
63491       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
63492       if (!SWIG_IsOK(res) || !ptr) {
63493         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "pfl_fold_up_cb" "', argument " "1"" of type '" "std::string""'");
63494       }
63495       arg1 = *ptr;
63496       if (SWIG_IsNewObj(res)) delete ptr;
63497     }
63498     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
63499     if (!SWIG_IsOK(ecode2)) {
63500       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pfl_fold_up_cb" "', argument " "2"" of type '" "int""'");
63501     }
63502     arg2 = static_cast< int >(val2);
63503     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
63504     if (!SWIG_IsOK(ecode3)) {
63505       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "pfl_fold_up_cb" "', argument " "3"" of type '" "int""'");
63506     }
63507     arg3 = static_cast< int >(val3);
63508     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
63509     if (!SWIG_IsOK(ecode4)) {
63510       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "pfl_fold_up_cb" "', argument " "4"" of type '" "int""'");
63511     }
63512     arg4 = static_cast< int >(val4);
63513     {
63514       arg5 = ST(4);
63515     }
63516     arg6 = ST(5);
63517     {
63518       try {
63519         result = (int)pfl_fold_up_cb(arg1,arg2,arg3,arg4,arg5,arg6);
63520       } catch (const std::exception& e) {
63521         SWIG_exception(SWIG_RuntimeError, e.what());
63522       }
63523     }
63524     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
63525 
63526 
63527 
63528 
63529 
63530 
63531     XSRETURN(argvi);
63532   fail:
63533 
63534 
63535 
63536 
63537 
63538 
63539     SWIG_croak_null();
63540   }
63541 }
63542 
63543 
XS(_wrap_pfl_fold_up_cb__SWIG_1)63544 XS(_wrap_pfl_fold_up_cb__SWIG_1) {
63545   {
63546     std::string arg1 ;
63547     int arg2 ;
63548     int arg3 ;
63549     int arg4 ;
63550     SV *arg5 = (SV *) 0 ;
63551     int val2 ;
63552     int ecode2 = 0 ;
63553     int val3 ;
63554     int ecode3 = 0 ;
63555     int val4 ;
63556     int ecode4 = 0 ;
63557     int argvi = 0;
63558     int result;
63559     dXSARGS;
63560 
63561     if ((items < 5) || (items > 5)) {
63562       SWIG_croak("Usage: pfl_fold_up_cb(sequence,ulength,window_size,max_bp_span,PerlFunc);");
63563     }
63564     {
63565       std::string *ptr = (std::string *)0;
63566       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), &ptr);
63567       if (!SWIG_IsOK(res) || !ptr) {
63568         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "pfl_fold_up_cb" "', argument " "1"" of type '" "std::string""'");
63569       }
63570       arg1 = *ptr;
63571       if (SWIG_IsNewObj(res)) delete ptr;
63572     }
63573     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
63574     if (!SWIG_IsOK(ecode2)) {
63575       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "pfl_fold_up_cb" "', argument " "2"" of type '" "int""'");
63576     }
63577     arg2 = static_cast< int >(val2);
63578     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
63579     if (!SWIG_IsOK(ecode3)) {
63580       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "pfl_fold_up_cb" "', argument " "3"" of type '" "int""'");
63581     }
63582     arg3 = static_cast< int >(val3);
63583     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
63584     if (!SWIG_IsOK(ecode4)) {
63585       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "pfl_fold_up_cb" "', argument " "4"" of type '" "int""'");
63586     }
63587     arg4 = static_cast< int >(val4);
63588     {
63589       arg5 = ST(4);
63590     }
63591     {
63592       try {
63593         result = (int)pfl_fold_up_cb(arg1,arg2,arg3,arg4,arg5);
63594       } catch (const std::exception& e) {
63595         SWIG_exception(SWIG_RuntimeError, e.what());
63596       }
63597     }
63598     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
63599 
63600 
63601 
63602 
63603 
63604     XSRETURN(argvi);
63605   fail:
63606 
63607 
63608 
63609 
63610 
63611     SWIG_croak_null();
63612   }
63613 }
63614 
63615 
XS(_wrap_pfl_fold_up_cb)63616 XS(_wrap_pfl_fold_up_cb) {
63617   dXSARGS;
63618 
63619   {
63620     unsigned long _index = 0;
63621     SWIG_TypeRank _rank = 0;
63622     if (items == 5) {
63623       SWIG_TypeRank _ranki = 0;
63624       SWIG_TypeRank _rankm = 0;
63625       SWIG_TypeRank _pi = 1;
63626       int _v = 0;
63627       {
63628         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
63629         _v = SWIG_CheckState(res);
63630       }
63631       if (!_v) goto check_1;
63632       _ranki += _v*_pi;
63633       _rankm += _pi;
63634       _pi *= SWIG_MAXCASTRANK;
63635       {
63636         {
63637           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
63638           _v = SWIG_CheckState(res);
63639         }
63640       }
63641       if (!_v) goto check_1;
63642       _ranki += _v*_pi;
63643       _rankm += _pi;
63644       _pi *= SWIG_MAXCASTRANK;
63645       {
63646         {
63647           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
63648           _v = SWIG_CheckState(res);
63649         }
63650       }
63651       if (!_v) goto check_1;
63652       _ranki += _v*_pi;
63653       _rankm += _pi;
63654       _pi *= SWIG_MAXCASTRANK;
63655       {
63656         {
63657           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
63658           _v = SWIG_CheckState(res);
63659         }
63660       }
63661       if (!_v) goto check_1;
63662       _ranki += _v*_pi;
63663       _rankm += _pi;
63664       _pi *= SWIG_MAXCASTRANK;
63665       {
63666         _v = (ST(4) != 0);
63667       }
63668       if (!_v) goto check_1;
63669       _ranki += _v*_pi;
63670       _rankm += _pi;
63671       _pi *= SWIG_MAXCASTRANK;
63672       if (!_index || (_ranki < _rank)) {
63673         _rank = _ranki; _index = 1;
63674         if (_rank == _rankm) goto dispatch;
63675       }
63676     }
63677   check_1:
63678 
63679     if (items == 6) {
63680       SWIG_TypeRank _ranki = 0;
63681       SWIG_TypeRank _rankm = 0;
63682       SWIG_TypeRank _pi = 1;
63683       int _v = 0;
63684       {
63685         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(0), (std::string**)(0));
63686         _v = SWIG_CheckState(res);
63687       }
63688       if (!_v) goto check_2;
63689       _ranki += _v*_pi;
63690       _rankm += _pi;
63691       _pi *= SWIG_MAXCASTRANK;
63692       {
63693         {
63694           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
63695           _v = SWIG_CheckState(res);
63696         }
63697       }
63698       if (!_v) goto check_2;
63699       _ranki += _v*_pi;
63700       _rankm += _pi;
63701       _pi *= SWIG_MAXCASTRANK;
63702       {
63703         {
63704           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
63705           _v = SWIG_CheckState(res);
63706         }
63707       }
63708       if (!_v) goto check_2;
63709       _ranki += _v*_pi;
63710       _rankm += _pi;
63711       _pi *= SWIG_MAXCASTRANK;
63712       {
63713         {
63714           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
63715           _v = SWIG_CheckState(res);
63716         }
63717       }
63718       if (!_v) goto check_2;
63719       _ranki += _v*_pi;
63720       _rankm += _pi;
63721       _pi *= SWIG_MAXCASTRANK;
63722       {
63723         _v = (ST(4) != 0);
63724       }
63725       if (!_v) goto check_2;
63726       _ranki += _v*_pi;
63727       _rankm += _pi;
63728       _pi *= SWIG_MAXCASTRANK;
63729       {
63730         _v = (ST(5) != 0);
63731       }
63732       if (!_v) goto check_2;
63733       _ranki += _v*_pi;
63734       _rankm += _pi;
63735       _pi *= SWIG_MAXCASTRANK;
63736       if (!_index || (_ranki < _rank)) {
63737         _rank = _ranki; _index = 2;
63738         if (_rank == _rankm) goto dispatch;
63739       }
63740     }
63741   check_2:
63742 
63743   dispatch:
63744     switch(_index) {
63745     case 1:
63746       PUSHMARK(MARK); SWIG_CALLXS(_wrap_pfl_fold_up_cb__SWIG_1); return;
63747     case 2:
63748       PUSHMARK(MARK); SWIG_CALLXS(_wrap_pfl_fold_up_cb__SWIG_0); return;
63749     }
63750   }
63751 
63752   croak("No matching function for overloaded 'pfl_fold_up_cb'");
63753   XSRETURN(0);
63754 }
63755 
63756 
XS(_wrap_fold_compound_params_reset__SWIG_0)63757 XS(_wrap_fold_compound_params_reset__SWIG_0) {
63758   {
63759     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
63760     vrna_md_t *arg2 = (vrna_md_t *) 0 ;
63761     void *argp1 = 0 ;
63762     int res1 = 0 ;
63763     void *argp2 = 0 ;
63764     int res2 = 0 ;
63765     int argvi = 0;
63766     dXSARGS;
63767 
63768     if ((items < 2) || (items > 2)) {
63769       SWIG_croak("Usage: fold_compound_params_reset(self,md);");
63770     }
63771     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
63772     if (!SWIG_IsOK(res1)) {
63773       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_params_reset" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
63774     }
63775     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
63776     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_md_t, 0 |  0 );
63777     if (!SWIG_IsOK(res2)) {
63778       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_params_reset" "', argument " "2"" of type '" "vrna_md_t *""'");
63779     }
63780     arg2 = reinterpret_cast< vrna_md_t * >(argp2);
63781     {
63782       try {
63783         vrna_fold_compound_t_params_reset__SWIG_0(arg1,arg2);
63784       } catch (const std::exception& e) {
63785         SWIG_exception(SWIG_RuntimeError, e.what());
63786       }
63787     }
63788     ST(argvi) = &PL_sv_undef;
63789 
63790 
63791     XSRETURN(argvi);
63792   fail:
63793 
63794 
63795     SWIG_croak_null();
63796   }
63797 }
63798 
63799 
XS(_wrap_fold_compound_params_reset__SWIG_1)63800 XS(_wrap_fold_compound_params_reset__SWIG_1) {
63801   {
63802     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
63803     void *argp1 = 0 ;
63804     int res1 = 0 ;
63805     int argvi = 0;
63806     dXSARGS;
63807 
63808     if ((items < 1) || (items > 1)) {
63809       SWIG_croak("Usage: fold_compound_params_reset(self);");
63810     }
63811     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
63812     if (!SWIG_IsOK(res1)) {
63813       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_params_reset" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
63814     }
63815     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
63816     {
63817       try {
63818         vrna_fold_compound_t_params_reset__SWIG_0(arg1);
63819       } catch (const std::exception& e) {
63820         SWIG_exception(SWIG_RuntimeError, e.what());
63821       }
63822     }
63823     ST(argvi) = &PL_sv_undef;
63824 
63825     XSRETURN(argvi);
63826   fail:
63827 
63828     SWIG_croak_null();
63829   }
63830 }
63831 
63832 
XS(_wrap_fold_compound_params_reset)63833 XS(_wrap_fold_compound_params_reset) {
63834   dXSARGS;
63835 
63836   {
63837     unsigned long _index = 0;
63838     SWIG_TypeRank _rank = 0;
63839     if (items == 1) {
63840       SWIG_TypeRank _ranki = 0;
63841       SWIG_TypeRank _rankm = 0;
63842       SWIG_TypeRank _pi = 1;
63843       int _v = 0;
63844       {
63845         void *vptr = 0;
63846         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
63847         _v = SWIG_CheckState(res);
63848       }
63849       if (!_v) goto check_1;
63850       _ranki += _v*_pi;
63851       _rankm += _pi;
63852       _pi *= SWIG_MAXCASTRANK;
63853       if (!_index || (_ranki < _rank)) {
63854         _rank = _ranki; _index = 1;
63855         if (_rank == _rankm) goto dispatch;
63856       }
63857     }
63858   check_1:
63859 
63860     if (items == 2) {
63861       SWIG_TypeRank _ranki = 0;
63862       SWIG_TypeRank _rankm = 0;
63863       SWIG_TypeRank _pi = 1;
63864       int _v = 0;
63865       {
63866         void *vptr = 0;
63867         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
63868         _v = SWIG_CheckState(res);
63869       }
63870       if (!_v) goto check_2;
63871       _ranki += _v*_pi;
63872       _rankm += _pi;
63873       _pi *= SWIG_MAXCASTRANK;
63874       {
63875         void *vptr = 0;
63876         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_md_t, 0);
63877         _v = SWIG_CheckState(res);
63878       }
63879       if (!_v) goto check_2;
63880       _ranki += _v*_pi;
63881       _rankm += _pi;
63882       _pi *= SWIG_MAXCASTRANK;
63883       if (!_index || (_ranki < _rank)) {
63884         _rank = _ranki; _index = 2;
63885         if (_rank == _rankm) goto dispatch;
63886       }
63887     }
63888   check_2:
63889 
63890   dispatch:
63891     switch(_index) {
63892     case 1:
63893       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_params_reset__SWIG_1); return;
63894     case 2:
63895       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_params_reset__SWIG_0); return;
63896     }
63897   }
63898 
63899   croak("No matching function for overloaded 'fold_compound_params_reset'");
63900   XSRETURN(0);
63901 }
63902 
63903 
XS(_wrap_fold_compound_params_subst__SWIG_0)63904 XS(_wrap_fold_compound_params_subst__SWIG_0) {
63905   {
63906     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
63907     vrna_param_t *arg2 = (vrna_param_t *) 0 ;
63908     void *argp1 = 0 ;
63909     int res1 = 0 ;
63910     void *argp2 = 0 ;
63911     int res2 = 0 ;
63912     int argvi = 0;
63913     dXSARGS;
63914 
63915     if ((items < 2) || (items > 2)) {
63916       SWIG_croak("Usage: fold_compound_params_subst(self,par);");
63917     }
63918     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
63919     if (!SWIG_IsOK(res1)) {
63920       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_params_subst" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
63921     }
63922     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
63923     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_param_t, 0 |  0 );
63924     if (!SWIG_IsOK(res2)) {
63925       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_params_subst" "', argument " "2"" of type '" "vrna_param_t *""'");
63926     }
63927     arg2 = reinterpret_cast< vrna_param_t * >(argp2);
63928     {
63929       try {
63930         vrna_fold_compound_t_params_subst__SWIG_0(arg1,arg2);
63931       } catch (const std::exception& e) {
63932         SWIG_exception(SWIG_RuntimeError, e.what());
63933       }
63934     }
63935     ST(argvi) = &PL_sv_undef;
63936 
63937 
63938     XSRETURN(argvi);
63939   fail:
63940 
63941 
63942     SWIG_croak_null();
63943   }
63944 }
63945 
63946 
XS(_wrap_fold_compound_params_subst__SWIG_1)63947 XS(_wrap_fold_compound_params_subst__SWIG_1) {
63948   {
63949     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
63950     void *argp1 = 0 ;
63951     int res1 = 0 ;
63952     int argvi = 0;
63953     dXSARGS;
63954 
63955     if ((items < 1) || (items > 1)) {
63956       SWIG_croak("Usage: fold_compound_params_subst(self);");
63957     }
63958     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
63959     if (!SWIG_IsOK(res1)) {
63960       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_params_subst" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
63961     }
63962     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
63963     {
63964       try {
63965         vrna_fold_compound_t_params_subst__SWIG_0(arg1);
63966       } catch (const std::exception& e) {
63967         SWIG_exception(SWIG_RuntimeError, e.what());
63968       }
63969     }
63970     ST(argvi) = &PL_sv_undef;
63971 
63972     XSRETURN(argvi);
63973   fail:
63974 
63975     SWIG_croak_null();
63976   }
63977 }
63978 
63979 
XS(_wrap_fold_compound_params_subst)63980 XS(_wrap_fold_compound_params_subst) {
63981   dXSARGS;
63982 
63983   {
63984     unsigned long _index = 0;
63985     SWIG_TypeRank _rank = 0;
63986     if (items == 1) {
63987       SWIG_TypeRank _ranki = 0;
63988       SWIG_TypeRank _rankm = 0;
63989       SWIG_TypeRank _pi = 1;
63990       int _v = 0;
63991       {
63992         void *vptr = 0;
63993         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
63994         _v = SWIG_CheckState(res);
63995       }
63996       if (!_v) goto check_1;
63997       _ranki += _v*_pi;
63998       _rankm += _pi;
63999       _pi *= SWIG_MAXCASTRANK;
64000       if (!_index || (_ranki < _rank)) {
64001         _rank = _ranki; _index = 1;
64002         if (_rank == _rankm) goto dispatch;
64003       }
64004     }
64005   check_1:
64006 
64007     if (items == 2) {
64008       SWIG_TypeRank _ranki = 0;
64009       SWIG_TypeRank _rankm = 0;
64010       SWIG_TypeRank _pi = 1;
64011       int _v = 0;
64012       {
64013         void *vptr = 0;
64014         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
64015         _v = SWIG_CheckState(res);
64016       }
64017       if (!_v) goto check_2;
64018       _ranki += _v*_pi;
64019       _rankm += _pi;
64020       _pi *= SWIG_MAXCASTRANK;
64021       {
64022         void *vptr = 0;
64023         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_param_t, 0);
64024         _v = SWIG_CheckState(res);
64025       }
64026       if (!_v) goto check_2;
64027       _ranki += _v*_pi;
64028       _rankm += _pi;
64029       _pi *= SWIG_MAXCASTRANK;
64030       if (!_index || (_ranki < _rank)) {
64031         _rank = _ranki; _index = 2;
64032         if (_rank == _rankm) goto dispatch;
64033       }
64034     }
64035   check_2:
64036 
64037   dispatch:
64038     switch(_index) {
64039     case 1:
64040       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_params_subst__SWIG_1); return;
64041     case 2:
64042       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_params_subst__SWIG_0); return;
64043     }
64044   }
64045 
64046   croak("No matching function for overloaded 'fold_compound_params_subst'");
64047   XSRETURN(0);
64048 }
64049 
64050 
XS(_wrap_fold_compound_exp_params_rescale__SWIG_0)64051 XS(_wrap_fold_compound_exp_params_rescale__SWIG_0) {
64052   {
64053     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
64054     void *argp1 = 0 ;
64055     int res1 = 0 ;
64056     int argvi = 0;
64057     dXSARGS;
64058 
64059     if ((items < 1) || (items > 1)) {
64060       SWIG_croak("Usage: fold_compound_exp_params_rescale(self);");
64061     }
64062     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
64063     if (!SWIG_IsOK(res1)) {
64064       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_exp_params_rescale" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
64065     }
64066     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
64067     {
64068       try {
64069         vrna_fold_compound_t_exp_params_rescale__SWIG_0(arg1);
64070       } catch (const std::exception& e) {
64071         SWIG_exception(SWIG_RuntimeError, e.what());
64072       }
64073     }
64074     ST(argvi) = &PL_sv_undef;
64075 
64076     XSRETURN(argvi);
64077   fail:
64078 
64079     SWIG_croak_null();
64080   }
64081 }
64082 
64083 
XS(_wrap_fold_compound_exp_params_rescale__SWIG_1)64084 XS(_wrap_fold_compound_exp_params_rescale__SWIG_1) {
64085   {
64086     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
64087     double arg2 ;
64088     void *argp1 = 0 ;
64089     int res1 = 0 ;
64090     double val2 ;
64091     int ecode2 = 0 ;
64092     int argvi = 0;
64093     dXSARGS;
64094 
64095     if ((items < 2) || (items > 2)) {
64096       SWIG_croak("Usage: fold_compound_exp_params_rescale(self,fe);");
64097     }
64098     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
64099     if (!SWIG_IsOK(res1)) {
64100       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_exp_params_rescale" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
64101     }
64102     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
64103     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
64104     if (!SWIG_IsOK(ecode2)) {
64105       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_exp_params_rescale" "', argument " "2"" of type '" "double""'");
64106     }
64107     arg2 = static_cast< double >(val2);
64108     {
64109       try {
64110         vrna_fold_compound_t_exp_params_rescale__SWIG_1(arg1,arg2);
64111       } catch (const std::exception& e) {
64112         SWIG_exception(SWIG_RuntimeError, e.what());
64113       }
64114     }
64115     ST(argvi) = &PL_sv_undef;
64116 
64117 
64118     XSRETURN(argvi);
64119   fail:
64120 
64121 
64122     SWIG_croak_null();
64123   }
64124 }
64125 
64126 
XS(_wrap_fold_compound_exp_params_rescale)64127 XS(_wrap_fold_compound_exp_params_rescale) {
64128   dXSARGS;
64129 
64130   {
64131     unsigned long _index = 0;
64132     SWIG_TypeRank _rank = 0;
64133     if (items == 1) {
64134       SWIG_TypeRank _ranki = 0;
64135       SWIG_TypeRank _rankm = 0;
64136       SWIG_TypeRank _pi = 1;
64137       int _v = 0;
64138       {
64139         void *vptr = 0;
64140         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
64141         _v = SWIG_CheckState(res);
64142       }
64143       if (!_v) goto check_1;
64144       _ranki += _v*_pi;
64145       _rankm += _pi;
64146       _pi *= SWIG_MAXCASTRANK;
64147       if (!_index || (_ranki < _rank)) {
64148         _rank = _ranki; _index = 1;
64149         if (_rank == _rankm) goto dispatch;
64150       }
64151     }
64152   check_1:
64153 
64154     if (items == 2) {
64155       SWIG_TypeRank _ranki = 0;
64156       SWIG_TypeRank _rankm = 0;
64157       SWIG_TypeRank _pi = 1;
64158       int _v = 0;
64159       {
64160         void *vptr = 0;
64161         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
64162         _v = SWIG_CheckState(res);
64163       }
64164       if (!_v) goto check_2;
64165       _ranki += _v*_pi;
64166       _rankm += _pi;
64167       _pi *= SWIG_MAXCASTRANK;
64168       {
64169         {
64170           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
64171           _v = SWIG_CheckState(res);
64172         }
64173       }
64174       if (!_v) goto check_2;
64175       _ranki += _v*_pi;
64176       _rankm += _pi;
64177       _pi *= SWIG_MAXCASTRANK;
64178       if (!_index || (_ranki < _rank)) {
64179         _rank = _ranki; _index = 2;
64180         if (_rank == _rankm) goto dispatch;
64181       }
64182     }
64183   check_2:
64184 
64185   dispatch:
64186     switch(_index) {
64187     case 1:
64188       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_exp_params_rescale__SWIG_0); return;
64189     case 2:
64190       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_exp_params_rescale__SWIG_1); return;
64191     }
64192   }
64193 
64194   croak("No matching function for overloaded 'fold_compound_exp_params_rescale'");
64195   XSRETURN(0);
64196 }
64197 
64198 
XS(_wrap_fold_compound_exp_params_reset__SWIG_0)64199 XS(_wrap_fold_compound_exp_params_reset__SWIG_0) {
64200   {
64201     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
64202     vrna_md_t *arg2 = (vrna_md_t *) 0 ;
64203     void *argp1 = 0 ;
64204     int res1 = 0 ;
64205     void *argp2 = 0 ;
64206     int res2 = 0 ;
64207     int argvi = 0;
64208     dXSARGS;
64209 
64210     if ((items < 2) || (items > 2)) {
64211       SWIG_croak("Usage: fold_compound_exp_params_reset(self,md);");
64212     }
64213     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
64214     if (!SWIG_IsOK(res1)) {
64215       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_exp_params_reset" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
64216     }
64217     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
64218     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_md_t, 0 |  0 );
64219     if (!SWIG_IsOK(res2)) {
64220       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_exp_params_reset" "', argument " "2"" of type '" "vrna_md_t *""'");
64221     }
64222     arg2 = reinterpret_cast< vrna_md_t * >(argp2);
64223     {
64224       try {
64225         vrna_fold_compound_t_exp_params_reset__SWIG_0(arg1,arg2);
64226       } catch (const std::exception& e) {
64227         SWIG_exception(SWIG_RuntimeError, e.what());
64228       }
64229     }
64230     ST(argvi) = &PL_sv_undef;
64231 
64232 
64233     XSRETURN(argvi);
64234   fail:
64235 
64236 
64237     SWIG_croak_null();
64238   }
64239 }
64240 
64241 
XS(_wrap_fold_compound_exp_params_reset__SWIG_1)64242 XS(_wrap_fold_compound_exp_params_reset__SWIG_1) {
64243   {
64244     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
64245     void *argp1 = 0 ;
64246     int res1 = 0 ;
64247     int argvi = 0;
64248     dXSARGS;
64249 
64250     if ((items < 1) || (items > 1)) {
64251       SWIG_croak("Usage: fold_compound_exp_params_reset(self);");
64252     }
64253     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
64254     if (!SWIG_IsOK(res1)) {
64255       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_exp_params_reset" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
64256     }
64257     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
64258     {
64259       try {
64260         vrna_fold_compound_t_exp_params_reset__SWIG_0(arg1);
64261       } catch (const std::exception& e) {
64262         SWIG_exception(SWIG_RuntimeError, e.what());
64263       }
64264     }
64265     ST(argvi) = &PL_sv_undef;
64266 
64267     XSRETURN(argvi);
64268   fail:
64269 
64270     SWIG_croak_null();
64271   }
64272 }
64273 
64274 
XS(_wrap_fold_compound_exp_params_reset)64275 XS(_wrap_fold_compound_exp_params_reset) {
64276   dXSARGS;
64277 
64278   {
64279     unsigned long _index = 0;
64280     SWIG_TypeRank _rank = 0;
64281     if (items == 1) {
64282       SWIG_TypeRank _ranki = 0;
64283       SWIG_TypeRank _rankm = 0;
64284       SWIG_TypeRank _pi = 1;
64285       int _v = 0;
64286       {
64287         void *vptr = 0;
64288         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
64289         _v = SWIG_CheckState(res);
64290       }
64291       if (!_v) goto check_1;
64292       _ranki += _v*_pi;
64293       _rankm += _pi;
64294       _pi *= SWIG_MAXCASTRANK;
64295       if (!_index || (_ranki < _rank)) {
64296         _rank = _ranki; _index = 1;
64297         if (_rank == _rankm) goto dispatch;
64298       }
64299     }
64300   check_1:
64301 
64302     if (items == 2) {
64303       SWIG_TypeRank _ranki = 0;
64304       SWIG_TypeRank _rankm = 0;
64305       SWIG_TypeRank _pi = 1;
64306       int _v = 0;
64307       {
64308         void *vptr = 0;
64309         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
64310         _v = SWIG_CheckState(res);
64311       }
64312       if (!_v) goto check_2;
64313       _ranki += _v*_pi;
64314       _rankm += _pi;
64315       _pi *= SWIG_MAXCASTRANK;
64316       {
64317         void *vptr = 0;
64318         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_md_t, 0);
64319         _v = SWIG_CheckState(res);
64320       }
64321       if (!_v) goto check_2;
64322       _ranki += _v*_pi;
64323       _rankm += _pi;
64324       _pi *= SWIG_MAXCASTRANK;
64325       if (!_index || (_ranki < _rank)) {
64326         _rank = _ranki; _index = 2;
64327         if (_rank == _rankm) goto dispatch;
64328       }
64329     }
64330   check_2:
64331 
64332   dispatch:
64333     switch(_index) {
64334     case 1:
64335       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_exp_params_reset__SWIG_1); return;
64336     case 2:
64337       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_exp_params_reset__SWIG_0); return;
64338     }
64339   }
64340 
64341   croak("No matching function for overloaded 'fold_compound_exp_params_reset'");
64342   XSRETURN(0);
64343 }
64344 
64345 
XS(_wrap_fold_compound_exp_params_subst)64346 XS(_wrap_fold_compound_exp_params_subst) {
64347   {
64348     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
64349     vrna_exp_param_t *arg2 = (vrna_exp_param_t *) 0 ;
64350     void *argp1 = 0 ;
64351     int res1 = 0 ;
64352     void *argp2 = 0 ;
64353     int res2 = 0 ;
64354     int argvi = 0;
64355     dXSARGS;
64356 
64357     if ((items < 2) || (items > 2)) {
64358       SWIG_croak("Usage: fold_compound_exp_params_subst(self,par);");
64359     }
64360     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
64361     if (!SWIG_IsOK(res1)) {
64362       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_exp_params_subst" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
64363     }
64364     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
64365     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_exp_param_t, 0 |  0 );
64366     if (!SWIG_IsOK(res2)) {
64367       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_exp_params_subst" "', argument " "2"" of type '" "vrna_exp_param_t *""'");
64368     }
64369     arg2 = reinterpret_cast< vrna_exp_param_t * >(argp2);
64370     {
64371       try {
64372         vrna_fold_compound_t_exp_params_subst(arg1,arg2);
64373       } catch (const std::exception& e) {
64374         SWIG_exception(SWIG_RuntimeError, e.what());
64375       }
64376     }
64377     ST(argvi) = &PL_sv_undef;
64378 
64379 
64380     XSRETURN(argvi);
64381   fail:
64382 
64383 
64384     SWIG_croak_null();
64385   }
64386 }
64387 
64388 
XS(_wrap_fold_compound_plist_from_probs)64389 XS(_wrap_fold_compound_plist_from_probs) {
64390   {
64391     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
64392     double arg2 ;
64393     void *argp1 = 0 ;
64394     int res1 = 0 ;
64395     double val2 ;
64396     int ecode2 = 0 ;
64397     int argvi = 0;
64398     std::vector< vrna_ep_t > result;
64399     dXSARGS;
64400 
64401     if ((items < 2) || (items > 2)) {
64402       SWIG_croak("Usage: fold_compound_plist_from_probs(self,cutoff);");
64403     }
64404     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
64405     if (!SWIG_IsOK(res1)) {
64406       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_plist_from_probs" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
64407     }
64408     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
64409     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
64410     if (!SWIG_IsOK(ecode2)) {
64411       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_plist_from_probs" "', argument " "2"" of type '" "double""'");
64412     }
64413     arg2 = static_cast< double >(val2);
64414     {
64415       try {
64416         result = vrna_fold_compound_t_plist_from_probs(arg1,arg2);
64417       } catch (const std::exception& e) {
64418         SWIG_exception(SWIG_RuntimeError, e.what());
64419       }
64420     }
64421     {
64422       size_t len = (&result)->size();
64423       SV **svs = new SV*[len];
64424       for (size_t i=0; i<len; i++) {
64425         vrna_ep_t* ptr = new vrna_ep_t(result[i]);
64426         svs[i] = sv_newmortal();
64427         SWIG_MakePtr(svs[i], (void*) ptr,
64428           SWIGTYPE_p_vrna_ep_t, SWIG_SHADOW|0);
64429       }
64430       AV *myav = av_make(len, svs);
64431       delete[] svs;
64432       ST(argvi) = newRV_noinc((SV*) myav);
64433       sv_2mortal(ST(argvi));
64434       argvi++;
64435     }
64436 
64437 
64438     XSRETURN(argvi);
64439   fail:
64440 
64441 
64442     SWIG_croak_null();
64443   }
64444 }
64445 
64446 
XS(_wrap_fold_compound_constraints_add__SWIG_0)64447 XS(_wrap_fold_compound_constraints_add__SWIG_0) {
64448   {
64449     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
64450     char *arg2 = (char *) 0 ;
64451     unsigned int arg3 ;
64452     void *argp1 = 0 ;
64453     int res1 = 0 ;
64454     int res2 ;
64455     char *buf2 = 0 ;
64456     int alloc2 = 0 ;
64457     unsigned int val3 ;
64458     int ecode3 = 0 ;
64459     int argvi = 0;
64460     dXSARGS;
64461 
64462     if ((items < 3) || (items > 3)) {
64463       SWIG_croak("Usage: fold_compound_constraints_add(self,constraint,options);");
64464     }
64465     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
64466     if (!SWIG_IsOK(res1)) {
64467       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_constraints_add" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
64468     }
64469     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
64470     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
64471     if (!SWIG_IsOK(res2)) {
64472       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_constraints_add" "', argument " "2"" of type '" "char const *""'");
64473     }
64474     arg2 = reinterpret_cast< char * >(buf2);
64475     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
64476     if (!SWIG_IsOK(ecode3)) {
64477       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_constraints_add" "', argument " "3"" of type '" "unsigned int""'");
64478     }
64479     arg3 = static_cast< unsigned int >(val3);
64480     {
64481       try {
64482         vrna_fold_compound_t_constraints_add__SWIG_0(arg1,(char const *)arg2,arg3);
64483       } catch (const std::exception& e) {
64484         SWIG_exception(SWIG_RuntimeError, e.what());
64485       }
64486     }
64487     ST(argvi) = &PL_sv_undef;
64488 
64489     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
64490 
64491     XSRETURN(argvi);
64492   fail:
64493 
64494     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
64495 
64496     SWIG_croak_null();
64497   }
64498 }
64499 
64500 
XS(_wrap_fold_compound_constraints_add__SWIG_1)64501 XS(_wrap_fold_compound_constraints_add__SWIG_1) {
64502   {
64503     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
64504     char *arg2 = (char *) 0 ;
64505     void *argp1 = 0 ;
64506     int res1 = 0 ;
64507     int res2 ;
64508     char *buf2 = 0 ;
64509     int alloc2 = 0 ;
64510     int argvi = 0;
64511     dXSARGS;
64512 
64513     if ((items < 2) || (items > 2)) {
64514       SWIG_croak("Usage: fold_compound_constraints_add(self,constraint);");
64515     }
64516     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
64517     if (!SWIG_IsOK(res1)) {
64518       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_constraints_add" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
64519     }
64520     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
64521     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
64522     if (!SWIG_IsOK(res2)) {
64523       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_constraints_add" "', argument " "2"" of type '" "char const *""'");
64524     }
64525     arg2 = reinterpret_cast< char * >(buf2);
64526     {
64527       try {
64528         vrna_fold_compound_t_constraints_add__SWIG_0(arg1,(char const *)arg2);
64529       } catch (const std::exception& e) {
64530         SWIG_exception(SWIG_RuntimeError, e.what());
64531       }
64532     }
64533     ST(argvi) = &PL_sv_undef;
64534 
64535     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
64536     XSRETURN(argvi);
64537   fail:
64538 
64539     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
64540     SWIG_croak_null();
64541   }
64542 }
64543 
64544 
XS(_wrap_fold_compound_constraints_add)64545 XS(_wrap_fold_compound_constraints_add) {
64546   dXSARGS;
64547 
64548   {
64549     unsigned long _index = 0;
64550     SWIG_TypeRank _rank = 0;
64551     if (items == 2) {
64552       SWIG_TypeRank _ranki = 0;
64553       SWIG_TypeRank _rankm = 0;
64554       SWIG_TypeRank _pi = 1;
64555       int _v = 0;
64556       {
64557         void *vptr = 0;
64558         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
64559         _v = SWIG_CheckState(res);
64560       }
64561       if (!_v) goto check_1;
64562       _ranki += _v*_pi;
64563       _rankm += _pi;
64564       _pi *= SWIG_MAXCASTRANK;
64565       {
64566         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
64567         _v = SWIG_CheckState(res);
64568       }
64569       if (!_v) goto check_1;
64570       _ranki += _v*_pi;
64571       _rankm += _pi;
64572       _pi *= SWIG_MAXCASTRANK;
64573       if (!_index || (_ranki < _rank)) {
64574         _rank = _ranki; _index = 1;
64575         if (_rank == _rankm) goto dispatch;
64576       }
64577     }
64578   check_1:
64579 
64580     if (items == 3) {
64581       SWIG_TypeRank _ranki = 0;
64582       SWIG_TypeRank _rankm = 0;
64583       SWIG_TypeRank _pi = 1;
64584       int _v = 0;
64585       {
64586         void *vptr = 0;
64587         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
64588         _v = SWIG_CheckState(res);
64589       }
64590       if (!_v) goto check_2;
64591       _ranki += _v*_pi;
64592       _rankm += _pi;
64593       _pi *= SWIG_MAXCASTRANK;
64594       {
64595         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
64596         _v = SWIG_CheckState(res);
64597       }
64598       if (!_v) goto check_2;
64599       _ranki += _v*_pi;
64600       _rankm += _pi;
64601       _pi *= SWIG_MAXCASTRANK;
64602       {
64603         {
64604           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
64605           _v = SWIG_CheckState(res);
64606         }
64607       }
64608       if (!_v) goto check_2;
64609       _ranki += _v*_pi;
64610       _rankm += _pi;
64611       _pi *= SWIG_MAXCASTRANK;
64612       if (!_index || (_ranki < _rank)) {
64613         _rank = _ranki; _index = 2;
64614         if (_rank == _rankm) goto dispatch;
64615       }
64616     }
64617   check_2:
64618 
64619   dispatch:
64620     switch(_index) {
64621     case 1:
64622       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_constraints_add__SWIG_1); return;
64623     case 2:
64624       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_constraints_add__SWIG_0); return;
64625     }
64626   }
64627 
64628   croak("No matching function for overloaded 'fold_compound_constraints_add'");
64629   XSRETURN(0);
64630 }
64631 
64632 
XS(_wrap_fold_compound_hc_init)64633 XS(_wrap_fold_compound_hc_init) {
64634   {
64635     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
64636     void *argp1 = 0 ;
64637     int res1 = 0 ;
64638     int argvi = 0;
64639     dXSARGS;
64640 
64641     if ((items < 1) || (items > 1)) {
64642       SWIG_croak("Usage: fold_compound_hc_init(self);");
64643     }
64644     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
64645     if (!SWIG_IsOK(res1)) {
64646       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_hc_init" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
64647     }
64648     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
64649     {
64650       try {
64651         vrna_fold_compound_t_hc_init(arg1);
64652       } catch (const std::exception& e) {
64653         SWIG_exception(SWIG_RuntimeError, e.what());
64654       }
64655     }
64656     ST(argvi) = &PL_sv_undef;
64657 
64658     XSRETURN(argvi);
64659   fail:
64660 
64661     SWIG_croak_null();
64662   }
64663 }
64664 
64665 
XS(_wrap_fold_compound_hc_add_up__SWIG_0)64666 XS(_wrap_fold_compound_hc_add_up__SWIG_0) {
64667   {
64668     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
64669     int arg2 ;
64670     unsigned int arg3 ;
64671     void *argp1 = 0 ;
64672     int res1 = 0 ;
64673     int val2 ;
64674     int ecode2 = 0 ;
64675     unsigned int val3 ;
64676     int ecode3 = 0 ;
64677     int argvi = 0;
64678     dXSARGS;
64679 
64680     if ((items < 3) || (items > 3)) {
64681       SWIG_croak("Usage: fold_compound_hc_add_up(self,i,option);");
64682     }
64683     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
64684     if (!SWIG_IsOK(res1)) {
64685       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_hc_add_up" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
64686     }
64687     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
64688     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
64689     if (!SWIG_IsOK(ecode2)) {
64690       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_hc_add_up" "', argument " "2"" of type '" "int""'");
64691     }
64692     arg2 = static_cast< int >(val2);
64693     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
64694     if (!SWIG_IsOK(ecode3)) {
64695       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_hc_add_up" "', argument " "3"" of type '" "unsigned int""'");
64696     }
64697     arg3 = static_cast< unsigned int >(val3);
64698     {
64699       try {
64700         vrna_fold_compound_t_hc_add_up__SWIG_0(arg1,arg2,arg3);
64701       } catch (const std::exception& e) {
64702         SWIG_exception(SWIG_RuntimeError, e.what());
64703       }
64704     }
64705     ST(argvi) = &PL_sv_undef;
64706 
64707 
64708 
64709     XSRETURN(argvi);
64710   fail:
64711 
64712 
64713 
64714     SWIG_croak_null();
64715   }
64716 }
64717 
64718 
XS(_wrap_fold_compound_hc_add_up__SWIG_1)64719 XS(_wrap_fold_compound_hc_add_up__SWIG_1) {
64720   {
64721     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
64722     int arg2 ;
64723     void *argp1 = 0 ;
64724     int res1 = 0 ;
64725     int val2 ;
64726     int ecode2 = 0 ;
64727     int argvi = 0;
64728     dXSARGS;
64729 
64730     if ((items < 2) || (items > 2)) {
64731       SWIG_croak("Usage: fold_compound_hc_add_up(self,i);");
64732     }
64733     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
64734     if (!SWIG_IsOK(res1)) {
64735       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_hc_add_up" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
64736     }
64737     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
64738     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
64739     if (!SWIG_IsOK(ecode2)) {
64740       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_hc_add_up" "', argument " "2"" of type '" "int""'");
64741     }
64742     arg2 = static_cast< int >(val2);
64743     {
64744       try {
64745         vrna_fold_compound_t_hc_add_up__SWIG_0(arg1,arg2);
64746       } catch (const std::exception& e) {
64747         SWIG_exception(SWIG_RuntimeError, e.what());
64748       }
64749     }
64750     ST(argvi) = &PL_sv_undef;
64751 
64752 
64753     XSRETURN(argvi);
64754   fail:
64755 
64756 
64757     SWIG_croak_null();
64758   }
64759 }
64760 
64761 
XS(_wrap_fold_compound_hc_add_up)64762 XS(_wrap_fold_compound_hc_add_up) {
64763   dXSARGS;
64764 
64765   {
64766     unsigned long _index = 0;
64767     SWIG_TypeRank _rank = 0;
64768     if (items == 2) {
64769       SWIG_TypeRank _ranki = 0;
64770       SWIG_TypeRank _rankm = 0;
64771       SWIG_TypeRank _pi = 1;
64772       int _v = 0;
64773       {
64774         void *vptr = 0;
64775         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
64776         _v = SWIG_CheckState(res);
64777       }
64778       if (!_v) goto check_1;
64779       _ranki += _v*_pi;
64780       _rankm += _pi;
64781       _pi *= SWIG_MAXCASTRANK;
64782       {
64783         {
64784           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
64785           _v = SWIG_CheckState(res);
64786         }
64787       }
64788       if (!_v) goto check_1;
64789       _ranki += _v*_pi;
64790       _rankm += _pi;
64791       _pi *= SWIG_MAXCASTRANK;
64792       if (!_index || (_ranki < _rank)) {
64793         _rank = _ranki; _index = 1;
64794         if (_rank == _rankm) goto dispatch;
64795       }
64796     }
64797   check_1:
64798 
64799     if (items == 3) {
64800       SWIG_TypeRank _ranki = 0;
64801       SWIG_TypeRank _rankm = 0;
64802       SWIG_TypeRank _pi = 1;
64803       int _v = 0;
64804       {
64805         void *vptr = 0;
64806         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
64807         _v = SWIG_CheckState(res);
64808       }
64809       if (!_v) goto check_2;
64810       _ranki += _v*_pi;
64811       _rankm += _pi;
64812       _pi *= SWIG_MAXCASTRANK;
64813       {
64814         {
64815           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
64816           _v = SWIG_CheckState(res);
64817         }
64818       }
64819       if (!_v) goto check_2;
64820       _ranki += _v*_pi;
64821       _rankm += _pi;
64822       _pi *= SWIG_MAXCASTRANK;
64823       {
64824         {
64825           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
64826           _v = SWIG_CheckState(res);
64827         }
64828       }
64829       if (!_v) goto check_2;
64830       _ranki += _v*_pi;
64831       _rankm += _pi;
64832       _pi *= SWIG_MAXCASTRANK;
64833       if (!_index || (_ranki < _rank)) {
64834         _rank = _ranki; _index = 2;
64835         if (_rank == _rankm) goto dispatch;
64836       }
64837     }
64838   check_2:
64839 
64840   dispatch:
64841     switch(_index) {
64842     case 1:
64843       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_hc_add_up__SWIG_1); return;
64844     case 2:
64845       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_hc_add_up__SWIG_0); return;
64846     }
64847   }
64848 
64849   croak("No matching function for overloaded 'fold_compound_hc_add_up'");
64850   XSRETURN(0);
64851 }
64852 
64853 
XS(_wrap_fold_compound_hc_add_bp_nonspecific__SWIG_0)64854 XS(_wrap_fold_compound_hc_add_bp_nonspecific__SWIG_0) {
64855   {
64856     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
64857     int arg2 ;
64858     int arg3 ;
64859     unsigned int arg4 ;
64860     void *argp1 = 0 ;
64861     int res1 = 0 ;
64862     int val2 ;
64863     int ecode2 = 0 ;
64864     int val3 ;
64865     int ecode3 = 0 ;
64866     unsigned int val4 ;
64867     int ecode4 = 0 ;
64868     int argvi = 0;
64869     dXSARGS;
64870 
64871     if ((items < 4) || (items > 4)) {
64872       SWIG_croak("Usage: fold_compound_hc_add_bp_nonspecific(self,i,d,option);");
64873     }
64874     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
64875     if (!SWIG_IsOK(res1)) {
64876       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_hc_add_bp_nonspecific" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
64877     }
64878     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
64879     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
64880     if (!SWIG_IsOK(ecode2)) {
64881       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_hc_add_bp_nonspecific" "', argument " "2"" of type '" "int""'");
64882     }
64883     arg2 = static_cast< int >(val2);
64884     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
64885     if (!SWIG_IsOK(ecode3)) {
64886       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_hc_add_bp_nonspecific" "', argument " "3"" of type '" "int""'");
64887     }
64888     arg3 = static_cast< int >(val3);
64889     ecode4 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
64890     if (!SWIG_IsOK(ecode4)) {
64891       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_hc_add_bp_nonspecific" "', argument " "4"" of type '" "unsigned int""'");
64892     }
64893     arg4 = static_cast< unsigned int >(val4);
64894     {
64895       try {
64896         vrna_fold_compound_t_hc_add_bp_nonspecific__SWIG_0(arg1,arg2,arg3,arg4);
64897       } catch (const std::exception& e) {
64898         SWIG_exception(SWIG_RuntimeError, e.what());
64899       }
64900     }
64901     ST(argvi) = &PL_sv_undef;
64902 
64903 
64904 
64905 
64906     XSRETURN(argvi);
64907   fail:
64908 
64909 
64910 
64911 
64912     SWIG_croak_null();
64913   }
64914 }
64915 
64916 
XS(_wrap_fold_compound_hc_add_bp_nonspecific__SWIG_1)64917 XS(_wrap_fold_compound_hc_add_bp_nonspecific__SWIG_1) {
64918   {
64919     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
64920     int arg2 ;
64921     int arg3 ;
64922     void *argp1 = 0 ;
64923     int res1 = 0 ;
64924     int val2 ;
64925     int ecode2 = 0 ;
64926     int val3 ;
64927     int ecode3 = 0 ;
64928     int argvi = 0;
64929     dXSARGS;
64930 
64931     if ((items < 3) || (items > 3)) {
64932       SWIG_croak("Usage: fold_compound_hc_add_bp_nonspecific(self,i,d);");
64933     }
64934     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
64935     if (!SWIG_IsOK(res1)) {
64936       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_hc_add_bp_nonspecific" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
64937     }
64938     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
64939     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
64940     if (!SWIG_IsOK(ecode2)) {
64941       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_hc_add_bp_nonspecific" "', argument " "2"" of type '" "int""'");
64942     }
64943     arg2 = static_cast< int >(val2);
64944     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
64945     if (!SWIG_IsOK(ecode3)) {
64946       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_hc_add_bp_nonspecific" "', argument " "3"" of type '" "int""'");
64947     }
64948     arg3 = static_cast< int >(val3);
64949     {
64950       try {
64951         vrna_fold_compound_t_hc_add_bp_nonspecific__SWIG_0(arg1,arg2,arg3);
64952       } catch (const std::exception& e) {
64953         SWIG_exception(SWIG_RuntimeError, e.what());
64954       }
64955     }
64956     ST(argvi) = &PL_sv_undef;
64957 
64958 
64959 
64960     XSRETURN(argvi);
64961   fail:
64962 
64963 
64964 
64965     SWIG_croak_null();
64966   }
64967 }
64968 
64969 
XS(_wrap_fold_compound_hc_add_bp_nonspecific)64970 XS(_wrap_fold_compound_hc_add_bp_nonspecific) {
64971   dXSARGS;
64972 
64973   {
64974     unsigned long _index = 0;
64975     SWIG_TypeRank _rank = 0;
64976     if (items == 3) {
64977       SWIG_TypeRank _ranki = 0;
64978       SWIG_TypeRank _rankm = 0;
64979       SWIG_TypeRank _pi = 1;
64980       int _v = 0;
64981       {
64982         void *vptr = 0;
64983         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
64984         _v = SWIG_CheckState(res);
64985       }
64986       if (!_v) goto check_1;
64987       _ranki += _v*_pi;
64988       _rankm += _pi;
64989       _pi *= SWIG_MAXCASTRANK;
64990       {
64991         {
64992           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
64993           _v = SWIG_CheckState(res);
64994         }
64995       }
64996       if (!_v) goto check_1;
64997       _ranki += _v*_pi;
64998       _rankm += _pi;
64999       _pi *= SWIG_MAXCASTRANK;
65000       {
65001         {
65002           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
65003           _v = SWIG_CheckState(res);
65004         }
65005       }
65006       if (!_v) goto check_1;
65007       _ranki += _v*_pi;
65008       _rankm += _pi;
65009       _pi *= SWIG_MAXCASTRANK;
65010       if (!_index || (_ranki < _rank)) {
65011         _rank = _ranki; _index = 1;
65012         if (_rank == _rankm) goto dispatch;
65013       }
65014     }
65015   check_1:
65016 
65017     if (items == 4) {
65018       SWIG_TypeRank _ranki = 0;
65019       SWIG_TypeRank _rankm = 0;
65020       SWIG_TypeRank _pi = 1;
65021       int _v = 0;
65022       {
65023         void *vptr = 0;
65024         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
65025         _v = SWIG_CheckState(res);
65026       }
65027       if (!_v) goto check_2;
65028       _ranki += _v*_pi;
65029       _rankm += _pi;
65030       _pi *= SWIG_MAXCASTRANK;
65031       {
65032         {
65033           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
65034           _v = SWIG_CheckState(res);
65035         }
65036       }
65037       if (!_v) goto check_2;
65038       _ranki += _v*_pi;
65039       _rankm += _pi;
65040       _pi *= SWIG_MAXCASTRANK;
65041       {
65042         {
65043           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
65044           _v = SWIG_CheckState(res);
65045         }
65046       }
65047       if (!_v) goto check_2;
65048       _ranki += _v*_pi;
65049       _rankm += _pi;
65050       _pi *= SWIG_MAXCASTRANK;
65051       {
65052         {
65053           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
65054           _v = SWIG_CheckState(res);
65055         }
65056       }
65057       if (!_v) goto check_2;
65058       _ranki += _v*_pi;
65059       _rankm += _pi;
65060       _pi *= SWIG_MAXCASTRANK;
65061       if (!_index || (_ranki < _rank)) {
65062         _rank = _ranki; _index = 2;
65063         if (_rank == _rankm) goto dispatch;
65064       }
65065     }
65066   check_2:
65067 
65068   dispatch:
65069     switch(_index) {
65070     case 1:
65071       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_hc_add_bp_nonspecific__SWIG_1); return;
65072     case 2:
65073       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_hc_add_bp_nonspecific__SWIG_0); return;
65074     }
65075   }
65076 
65077   croak("No matching function for overloaded 'fold_compound_hc_add_bp_nonspecific'");
65078   XSRETURN(0);
65079 }
65080 
65081 
XS(_wrap_fold_compound_hc_add_bp__SWIG_0)65082 XS(_wrap_fold_compound_hc_add_bp__SWIG_0) {
65083   {
65084     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
65085     int arg2 ;
65086     int arg3 ;
65087     unsigned int arg4 ;
65088     void *argp1 = 0 ;
65089     int res1 = 0 ;
65090     int val2 ;
65091     int ecode2 = 0 ;
65092     int val3 ;
65093     int ecode3 = 0 ;
65094     unsigned int val4 ;
65095     int ecode4 = 0 ;
65096     int argvi = 0;
65097     dXSARGS;
65098 
65099     if ((items < 4) || (items > 4)) {
65100       SWIG_croak("Usage: fold_compound_hc_add_bp(self,i,j,option);");
65101     }
65102     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
65103     if (!SWIG_IsOK(res1)) {
65104       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_hc_add_bp" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
65105     }
65106     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
65107     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
65108     if (!SWIG_IsOK(ecode2)) {
65109       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_hc_add_bp" "', argument " "2"" of type '" "int""'");
65110     }
65111     arg2 = static_cast< int >(val2);
65112     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
65113     if (!SWIG_IsOK(ecode3)) {
65114       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_hc_add_bp" "', argument " "3"" of type '" "int""'");
65115     }
65116     arg3 = static_cast< int >(val3);
65117     ecode4 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
65118     if (!SWIG_IsOK(ecode4)) {
65119       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_hc_add_bp" "', argument " "4"" of type '" "unsigned int""'");
65120     }
65121     arg4 = static_cast< unsigned int >(val4);
65122     {
65123       try {
65124         vrna_fold_compound_t_hc_add_bp__SWIG_0(arg1,arg2,arg3,arg4);
65125       } catch (const std::exception& e) {
65126         SWIG_exception(SWIG_RuntimeError, e.what());
65127       }
65128     }
65129     ST(argvi) = &PL_sv_undef;
65130 
65131 
65132 
65133 
65134     XSRETURN(argvi);
65135   fail:
65136 
65137 
65138 
65139 
65140     SWIG_croak_null();
65141   }
65142 }
65143 
65144 
XS(_wrap_fold_compound_hc_add_bp__SWIG_1)65145 XS(_wrap_fold_compound_hc_add_bp__SWIG_1) {
65146   {
65147     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
65148     int arg2 ;
65149     int arg3 ;
65150     void *argp1 = 0 ;
65151     int res1 = 0 ;
65152     int val2 ;
65153     int ecode2 = 0 ;
65154     int val3 ;
65155     int ecode3 = 0 ;
65156     int argvi = 0;
65157     dXSARGS;
65158 
65159     if ((items < 3) || (items > 3)) {
65160       SWIG_croak("Usage: fold_compound_hc_add_bp(self,i,j);");
65161     }
65162     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
65163     if (!SWIG_IsOK(res1)) {
65164       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_hc_add_bp" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
65165     }
65166     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
65167     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
65168     if (!SWIG_IsOK(ecode2)) {
65169       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_hc_add_bp" "', argument " "2"" of type '" "int""'");
65170     }
65171     arg2 = static_cast< int >(val2);
65172     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
65173     if (!SWIG_IsOK(ecode3)) {
65174       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_hc_add_bp" "', argument " "3"" of type '" "int""'");
65175     }
65176     arg3 = static_cast< int >(val3);
65177     {
65178       try {
65179         vrna_fold_compound_t_hc_add_bp__SWIG_0(arg1,arg2,arg3);
65180       } catch (const std::exception& e) {
65181         SWIG_exception(SWIG_RuntimeError, e.what());
65182       }
65183     }
65184     ST(argvi) = &PL_sv_undef;
65185 
65186 
65187 
65188     XSRETURN(argvi);
65189   fail:
65190 
65191 
65192 
65193     SWIG_croak_null();
65194   }
65195 }
65196 
65197 
XS(_wrap_fold_compound_hc_add_bp)65198 XS(_wrap_fold_compound_hc_add_bp) {
65199   dXSARGS;
65200 
65201   {
65202     unsigned long _index = 0;
65203     SWIG_TypeRank _rank = 0;
65204     if (items == 3) {
65205       SWIG_TypeRank _ranki = 0;
65206       SWIG_TypeRank _rankm = 0;
65207       SWIG_TypeRank _pi = 1;
65208       int _v = 0;
65209       {
65210         void *vptr = 0;
65211         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
65212         _v = SWIG_CheckState(res);
65213       }
65214       if (!_v) goto check_1;
65215       _ranki += _v*_pi;
65216       _rankm += _pi;
65217       _pi *= SWIG_MAXCASTRANK;
65218       {
65219         {
65220           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
65221           _v = SWIG_CheckState(res);
65222         }
65223       }
65224       if (!_v) goto check_1;
65225       _ranki += _v*_pi;
65226       _rankm += _pi;
65227       _pi *= SWIG_MAXCASTRANK;
65228       {
65229         {
65230           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
65231           _v = SWIG_CheckState(res);
65232         }
65233       }
65234       if (!_v) goto check_1;
65235       _ranki += _v*_pi;
65236       _rankm += _pi;
65237       _pi *= SWIG_MAXCASTRANK;
65238       if (!_index || (_ranki < _rank)) {
65239         _rank = _ranki; _index = 1;
65240         if (_rank == _rankm) goto dispatch;
65241       }
65242     }
65243   check_1:
65244 
65245     if (items == 4) {
65246       SWIG_TypeRank _ranki = 0;
65247       SWIG_TypeRank _rankm = 0;
65248       SWIG_TypeRank _pi = 1;
65249       int _v = 0;
65250       {
65251         void *vptr = 0;
65252         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
65253         _v = SWIG_CheckState(res);
65254       }
65255       if (!_v) goto check_2;
65256       _ranki += _v*_pi;
65257       _rankm += _pi;
65258       _pi *= SWIG_MAXCASTRANK;
65259       {
65260         {
65261           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
65262           _v = SWIG_CheckState(res);
65263         }
65264       }
65265       if (!_v) goto check_2;
65266       _ranki += _v*_pi;
65267       _rankm += _pi;
65268       _pi *= SWIG_MAXCASTRANK;
65269       {
65270         {
65271           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
65272           _v = SWIG_CheckState(res);
65273         }
65274       }
65275       if (!_v) goto check_2;
65276       _ranki += _v*_pi;
65277       _rankm += _pi;
65278       _pi *= SWIG_MAXCASTRANK;
65279       {
65280         {
65281           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
65282           _v = SWIG_CheckState(res);
65283         }
65284       }
65285       if (!_v) goto check_2;
65286       _ranki += _v*_pi;
65287       _rankm += _pi;
65288       _pi *= SWIG_MAXCASTRANK;
65289       if (!_index || (_ranki < _rank)) {
65290         _rank = _ranki; _index = 2;
65291         if (_rank == _rankm) goto dispatch;
65292       }
65293     }
65294   check_2:
65295 
65296   dispatch:
65297     switch(_index) {
65298     case 1:
65299       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_hc_add_bp__SWIG_1); return;
65300     case 2:
65301       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_hc_add_bp__SWIG_0); return;
65302     }
65303   }
65304 
65305   croak("No matching function for overloaded 'fold_compound_hc_add_bp'");
65306   XSRETURN(0);
65307 }
65308 
65309 
XS(_wrap_fold_compound_hc_add_from_db__SWIG_0)65310 XS(_wrap_fold_compound_hc_add_from_db__SWIG_0) {
65311   {
65312     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
65313     char *arg2 = (char *) 0 ;
65314     unsigned int arg3 ;
65315     void *argp1 = 0 ;
65316     int res1 = 0 ;
65317     int res2 ;
65318     char *buf2 = 0 ;
65319     int alloc2 = 0 ;
65320     unsigned int val3 ;
65321     int ecode3 = 0 ;
65322     int argvi = 0;
65323     int result;
65324     dXSARGS;
65325 
65326     if ((items < 3) || (items > 3)) {
65327       SWIG_croak("Usage: fold_compound_hc_add_from_db(self,constraint,options);");
65328     }
65329     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
65330     if (!SWIG_IsOK(res1)) {
65331       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_hc_add_from_db" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
65332     }
65333     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
65334     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
65335     if (!SWIG_IsOK(res2)) {
65336       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_hc_add_from_db" "', argument " "2"" of type '" "char const *""'");
65337     }
65338     arg2 = reinterpret_cast< char * >(buf2);
65339     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
65340     if (!SWIG_IsOK(ecode3)) {
65341       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_hc_add_from_db" "', argument " "3"" of type '" "unsigned int""'");
65342     }
65343     arg3 = static_cast< unsigned int >(val3);
65344     {
65345       try {
65346         result = (int)vrna_fold_compound_t_hc_add_from_db__SWIG_0(arg1,(char const *)arg2,arg3);
65347       } catch (const std::exception& e) {
65348         SWIG_exception(SWIG_RuntimeError, e.what());
65349       }
65350     }
65351     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
65352 
65353     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
65354 
65355     XSRETURN(argvi);
65356   fail:
65357 
65358     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
65359 
65360     SWIG_croak_null();
65361   }
65362 }
65363 
65364 
XS(_wrap_fold_compound_hc_add_from_db__SWIG_1)65365 XS(_wrap_fold_compound_hc_add_from_db__SWIG_1) {
65366   {
65367     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
65368     char *arg2 = (char *) 0 ;
65369     void *argp1 = 0 ;
65370     int res1 = 0 ;
65371     int res2 ;
65372     char *buf2 = 0 ;
65373     int alloc2 = 0 ;
65374     int argvi = 0;
65375     int result;
65376     dXSARGS;
65377 
65378     if ((items < 2) || (items > 2)) {
65379       SWIG_croak("Usage: fold_compound_hc_add_from_db(self,constraint);");
65380     }
65381     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
65382     if (!SWIG_IsOK(res1)) {
65383       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_hc_add_from_db" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
65384     }
65385     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
65386     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
65387     if (!SWIG_IsOK(res2)) {
65388       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_hc_add_from_db" "', argument " "2"" of type '" "char const *""'");
65389     }
65390     arg2 = reinterpret_cast< char * >(buf2);
65391     {
65392       try {
65393         result = (int)vrna_fold_compound_t_hc_add_from_db__SWIG_0(arg1,(char const *)arg2);
65394       } catch (const std::exception& e) {
65395         SWIG_exception(SWIG_RuntimeError, e.what());
65396       }
65397     }
65398     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
65399 
65400     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
65401     XSRETURN(argvi);
65402   fail:
65403 
65404     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
65405     SWIG_croak_null();
65406   }
65407 }
65408 
65409 
XS(_wrap_fold_compound_hc_add_from_db)65410 XS(_wrap_fold_compound_hc_add_from_db) {
65411   dXSARGS;
65412 
65413   {
65414     unsigned long _index = 0;
65415     SWIG_TypeRank _rank = 0;
65416     if (items == 2) {
65417       SWIG_TypeRank _ranki = 0;
65418       SWIG_TypeRank _rankm = 0;
65419       SWIG_TypeRank _pi = 1;
65420       int _v = 0;
65421       {
65422         void *vptr = 0;
65423         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
65424         _v = SWIG_CheckState(res);
65425       }
65426       if (!_v) goto check_1;
65427       _ranki += _v*_pi;
65428       _rankm += _pi;
65429       _pi *= SWIG_MAXCASTRANK;
65430       {
65431         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
65432         _v = SWIG_CheckState(res);
65433       }
65434       if (!_v) goto check_1;
65435       _ranki += _v*_pi;
65436       _rankm += _pi;
65437       _pi *= SWIG_MAXCASTRANK;
65438       if (!_index || (_ranki < _rank)) {
65439         _rank = _ranki; _index = 1;
65440         if (_rank == _rankm) goto dispatch;
65441       }
65442     }
65443   check_1:
65444 
65445     if (items == 3) {
65446       SWIG_TypeRank _ranki = 0;
65447       SWIG_TypeRank _rankm = 0;
65448       SWIG_TypeRank _pi = 1;
65449       int _v = 0;
65450       {
65451         void *vptr = 0;
65452         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
65453         _v = SWIG_CheckState(res);
65454       }
65455       if (!_v) goto check_2;
65456       _ranki += _v*_pi;
65457       _rankm += _pi;
65458       _pi *= SWIG_MAXCASTRANK;
65459       {
65460         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
65461         _v = SWIG_CheckState(res);
65462       }
65463       if (!_v) goto check_2;
65464       _ranki += _v*_pi;
65465       _rankm += _pi;
65466       _pi *= SWIG_MAXCASTRANK;
65467       {
65468         {
65469           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
65470           _v = SWIG_CheckState(res);
65471         }
65472       }
65473       if (!_v) goto check_2;
65474       _ranki += _v*_pi;
65475       _rankm += _pi;
65476       _pi *= SWIG_MAXCASTRANK;
65477       if (!_index || (_ranki < _rank)) {
65478         _rank = _ranki; _index = 2;
65479         if (_rank == _rankm) goto dispatch;
65480       }
65481     }
65482   check_2:
65483 
65484   dispatch:
65485     switch(_index) {
65486     case 1:
65487       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_hc_add_from_db__SWIG_1); return;
65488     case 2:
65489       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_hc_add_from_db__SWIG_0); return;
65490     }
65491   }
65492 
65493   croak("No matching function for overloaded 'fold_compound_hc_add_from_db'");
65494   XSRETURN(0);
65495 }
65496 
65497 
XS(_wrap_fold_compound_sc_remove)65498 XS(_wrap_fold_compound_sc_remove) {
65499   {
65500     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
65501     void *argp1 = 0 ;
65502     int res1 = 0 ;
65503     int argvi = 0;
65504     dXSARGS;
65505 
65506     if ((items < 1) || (items > 1)) {
65507       SWIG_croak("Usage: fold_compound_sc_remove(self);");
65508     }
65509     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
65510     if (!SWIG_IsOK(res1)) {
65511       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_remove" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
65512     }
65513     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
65514     {
65515       try {
65516         vrna_fold_compound_t_sc_remove(arg1);
65517       } catch (const std::exception& e) {
65518         SWIG_exception(SWIG_RuntimeError, e.what());
65519       }
65520     }
65521     ST(argvi) = &PL_sv_undef;
65522 
65523     XSRETURN(argvi);
65524   fail:
65525 
65526     SWIG_croak_null();
65527   }
65528 }
65529 
65530 
XS(_wrap_fold_compound_sc_init)65531 XS(_wrap_fold_compound_sc_init) {
65532   {
65533     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
65534     void *argp1 = 0 ;
65535     int res1 = 0 ;
65536     int argvi = 0;
65537     dXSARGS;
65538 
65539     if ((items < 1) || (items > 1)) {
65540       SWIG_croak("Usage: fold_compound_sc_init(self);");
65541     }
65542     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
65543     if (!SWIG_IsOK(res1)) {
65544       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_init" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
65545     }
65546     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
65547     {
65548       try {
65549         vrna_fold_compound_t_sc_init(arg1);
65550       } catch (const std::exception& e) {
65551         SWIG_exception(SWIG_RuntimeError, e.what());
65552       }
65553     }
65554     ST(argvi) = &PL_sv_undef;
65555 
65556     XSRETURN(argvi);
65557   fail:
65558 
65559     SWIG_croak_null();
65560   }
65561 }
65562 
65563 
XS(_wrap_fold_compound_sc_add_up__SWIG_0)65564 XS(_wrap_fold_compound_sc_add_up__SWIG_0) {
65565   {
65566     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
65567     int arg2 ;
65568     double arg3 ;
65569     unsigned int arg4 ;
65570     void *argp1 = 0 ;
65571     int res1 = 0 ;
65572     int val2 ;
65573     int ecode2 = 0 ;
65574     double val3 ;
65575     int ecode3 = 0 ;
65576     unsigned int val4 ;
65577     int ecode4 = 0 ;
65578     int argvi = 0;
65579     int result;
65580     dXSARGS;
65581 
65582     if ((items < 4) || (items > 4)) {
65583       SWIG_croak("Usage: fold_compound_sc_add_up(self,i,energy,options);");
65584     }
65585     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
65586     if (!SWIG_IsOK(res1)) {
65587       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_up" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
65588     }
65589     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
65590     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
65591     if (!SWIG_IsOK(ecode2)) {
65592       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_sc_add_up" "', argument " "2"" of type '" "int""'");
65593     }
65594     arg2 = static_cast< int >(val2);
65595     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
65596     if (!SWIG_IsOK(ecode3)) {
65597       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_add_up" "', argument " "3"" of type '" "double""'");
65598     }
65599     arg3 = static_cast< double >(val3);
65600     ecode4 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
65601     if (!SWIG_IsOK(ecode4)) {
65602       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_sc_add_up" "', argument " "4"" of type '" "unsigned int""'");
65603     }
65604     arg4 = static_cast< unsigned int >(val4);
65605     {
65606       try {
65607         result = (int)vrna_fold_compound_t_sc_add_up__SWIG_0(arg1,arg2,arg3,arg4);
65608       } catch (const std::exception& e) {
65609         SWIG_exception(SWIG_RuntimeError, e.what());
65610       }
65611     }
65612     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
65613 
65614 
65615 
65616 
65617     XSRETURN(argvi);
65618   fail:
65619 
65620 
65621 
65622 
65623     SWIG_croak_null();
65624   }
65625 }
65626 
65627 
XS(_wrap_fold_compound_sc_add_up__SWIG_1)65628 XS(_wrap_fold_compound_sc_add_up__SWIG_1) {
65629   {
65630     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
65631     int arg2 ;
65632     double arg3 ;
65633     void *argp1 = 0 ;
65634     int res1 = 0 ;
65635     int val2 ;
65636     int ecode2 = 0 ;
65637     double val3 ;
65638     int ecode3 = 0 ;
65639     int argvi = 0;
65640     int result;
65641     dXSARGS;
65642 
65643     if ((items < 3) || (items > 3)) {
65644       SWIG_croak("Usage: fold_compound_sc_add_up(self,i,energy);");
65645     }
65646     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
65647     if (!SWIG_IsOK(res1)) {
65648       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_up" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
65649     }
65650     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
65651     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
65652     if (!SWIG_IsOK(ecode2)) {
65653       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_sc_add_up" "', argument " "2"" of type '" "int""'");
65654     }
65655     arg2 = static_cast< int >(val2);
65656     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
65657     if (!SWIG_IsOK(ecode3)) {
65658       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_add_up" "', argument " "3"" of type '" "double""'");
65659     }
65660     arg3 = static_cast< double >(val3);
65661     {
65662       try {
65663         result = (int)vrna_fold_compound_t_sc_add_up__SWIG_0(arg1,arg2,arg3);
65664       } catch (const std::exception& e) {
65665         SWIG_exception(SWIG_RuntimeError, e.what());
65666       }
65667     }
65668     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
65669 
65670 
65671 
65672     XSRETURN(argvi);
65673   fail:
65674 
65675 
65676 
65677     SWIG_croak_null();
65678   }
65679 }
65680 
65681 
XS(_wrap_fold_compound_sc_add_up__SWIG_2)65682 XS(_wrap_fold_compound_sc_add_up__SWIG_2) {
65683   {
65684     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
65685     std::vector< double > arg2 ;
65686     unsigned int arg3 ;
65687     void *argp1 = 0 ;
65688     int res1 = 0 ;
65689     std::vector< double > *v2 ;
65690     unsigned int val3 ;
65691     int ecode3 = 0 ;
65692     int argvi = 0;
65693     int result;
65694     dXSARGS;
65695 
65696     if ((items < 3) || (items > 3)) {
65697       SWIG_croak("Usage: fold_compound_sc_add_up(self,constraints,options);");
65698     }
65699     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
65700     if (!SWIG_IsOK(res1)) {
65701       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_up" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
65702     }
65703     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
65704     {
65705       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
65706           SWIGTYPE_p_std__vectorT_double_t,1) != -1){
65707         arg2 = *v2;
65708       } else if (SvROK(ST(1))) {
65709         AV *av = (AV *)SvRV(ST(1));
65710         if (SvTYPE(av) != SVt_PVAV)
65711         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_up. "
65712           "Expected an array of ""double");
65713         SV **tv;
65714         I32 len = av_len(av) + 1;
65715         for (int i=0; i<len; i++) {
65716           tv = av_fetch(av, i, 0);
65717           if (SvNIOK(*tv)) {
65718             (&arg2)->push_back((double)SwigSvToNumber(*tv));
65719           } else {
65720             SWIG_croak("Type error in argument 2 of "
65721               "fold_compound_sc_add_up. "
65722               "Expected an array of ""double");
65723           }
65724         }
65725       } else {
65726         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_up. "
65727           "Expected an array of ""double");
65728       }
65729     }
65730     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
65731     if (!SWIG_IsOK(ecode3)) {
65732       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_add_up" "', argument " "3"" of type '" "unsigned int""'");
65733     }
65734     arg3 = static_cast< unsigned int >(val3);
65735     {
65736       try {
65737         result = (int)vrna_fold_compound_t_sc_add_up__SWIG_2(arg1,arg2,arg3);
65738       } catch (const std::exception& e) {
65739         SWIG_exception(SWIG_RuntimeError, e.what());
65740       }
65741     }
65742     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
65743 
65744 
65745     XSRETURN(argvi);
65746   fail:
65747 
65748 
65749     SWIG_croak_null();
65750   }
65751 }
65752 
65753 
XS(_wrap_fold_compound_sc_add_up__SWIG_3)65754 XS(_wrap_fold_compound_sc_add_up__SWIG_3) {
65755   {
65756     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
65757     std::vector< double > arg2 ;
65758     void *argp1 = 0 ;
65759     int res1 = 0 ;
65760     std::vector< double > *v2 ;
65761     int argvi = 0;
65762     int result;
65763     dXSARGS;
65764 
65765     if ((items < 2) || (items > 2)) {
65766       SWIG_croak("Usage: fold_compound_sc_add_up(self,constraints);");
65767     }
65768     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
65769     if (!SWIG_IsOK(res1)) {
65770       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_up" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
65771     }
65772     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
65773     {
65774       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
65775           SWIGTYPE_p_std__vectorT_double_t,1) != -1){
65776         arg2 = *v2;
65777       } else if (SvROK(ST(1))) {
65778         AV *av = (AV *)SvRV(ST(1));
65779         if (SvTYPE(av) != SVt_PVAV)
65780         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_up. "
65781           "Expected an array of ""double");
65782         SV **tv;
65783         I32 len = av_len(av) + 1;
65784         for (int i=0; i<len; i++) {
65785           tv = av_fetch(av, i, 0);
65786           if (SvNIOK(*tv)) {
65787             (&arg2)->push_back((double)SwigSvToNumber(*tv));
65788           } else {
65789             SWIG_croak("Type error in argument 2 of "
65790               "fold_compound_sc_add_up. "
65791               "Expected an array of ""double");
65792           }
65793         }
65794       } else {
65795         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_up. "
65796           "Expected an array of ""double");
65797       }
65798     }
65799     {
65800       try {
65801         result = (int)vrna_fold_compound_t_sc_add_up__SWIG_2(arg1,arg2);
65802       } catch (const std::exception& e) {
65803         SWIG_exception(SWIG_RuntimeError, e.what());
65804       }
65805     }
65806     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
65807 
65808     XSRETURN(argvi);
65809   fail:
65810 
65811     SWIG_croak_null();
65812   }
65813 }
65814 
65815 
XS(_wrap_fold_compound_sc_add_up)65816 XS(_wrap_fold_compound_sc_add_up) {
65817   dXSARGS;
65818 
65819   {
65820     unsigned long _index = 0;
65821     SWIG_TypeRank _rank = 0;
65822     if (items == 2) {
65823       SWIG_TypeRank _ranki = 0;
65824       SWIG_TypeRank _rankm = 0;
65825       SWIG_TypeRank _pi = 1;
65826       int _v = 0;
65827       {
65828         void *vptr = 0;
65829         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
65830         _v = SWIG_CheckState(res);
65831       }
65832       if (!_v) goto check_1;
65833       _ranki += _v*_pi;
65834       _rankm += _pi;
65835       _pi *= SWIG_MAXCASTRANK;
65836       {
65837         {
65838           {
65839             /* wrapped vector? */
65840             std::vector< double >* v;
65841             if (SWIG_ConvertPtr(ST(1),(void **) &v,
65842                 SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
65843               _v = 1;
65844             } else if (SvROK(ST(1))) {
65845               /* native sequence? */
65846               AV *av = (AV *)SvRV(ST(1));
65847               if (SvTYPE(av) == SVt_PVAV) {
65848                 I32 len = av_len(av) + 1;
65849                 if (len == 0) {
65850                   /* an empty sequence can be of any type */
65851                   _v = 1;
65852                 } else {
65853                   /* check the first element only */
65854                   SV **tv = av_fetch(av, 0, 0);
65855                   if (SvNIOK(*tv))
65856                   _v = 1;
65857                   else
65858                   _v = 0;
65859                 }
65860               }
65861             } else {
65862               _v = 0;
65863             }
65864           }
65865         }
65866       }
65867       if (!_v) goto check_1;
65868       _ranki += _v*_pi;
65869       _rankm += _pi;
65870       _pi *= SWIG_MAXCASTRANK;
65871       if (!_index || (_ranki < _rank)) {
65872         _rank = _ranki; _index = 1;
65873         if (_rank == _rankm) goto dispatch;
65874       }
65875     }
65876   check_1:
65877 
65878     if (items == 3) {
65879       SWIG_TypeRank _ranki = 0;
65880       SWIG_TypeRank _rankm = 0;
65881       SWIG_TypeRank _pi = 1;
65882       int _v = 0;
65883       {
65884         void *vptr = 0;
65885         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
65886         _v = SWIG_CheckState(res);
65887       }
65888       if (!_v) goto check_2;
65889       _ranki += _v*_pi;
65890       _rankm += _pi;
65891       _pi *= SWIG_MAXCASTRANK;
65892       {
65893         {
65894           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
65895           _v = SWIG_CheckState(res);
65896         }
65897       }
65898       if (!_v) goto check_2;
65899       _ranki += _v*_pi;
65900       _rankm += _pi;
65901       _pi *= SWIG_MAXCASTRANK;
65902       {
65903         {
65904           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
65905           _v = SWIG_CheckState(res);
65906         }
65907       }
65908       if (!_v) goto check_2;
65909       _ranki += _v*_pi;
65910       _rankm += _pi;
65911       _pi *= SWIG_MAXCASTRANK;
65912       if (!_index || (_ranki < _rank)) {
65913         _rank = _ranki; _index = 2;
65914         if (_rank == _rankm) goto dispatch;
65915       }
65916     }
65917   check_2:
65918 
65919     if (items == 3) {
65920       SWIG_TypeRank _ranki = 0;
65921       SWIG_TypeRank _rankm = 0;
65922       SWIG_TypeRank _pi = 1;
65923       int _v = 0;
65924       {
65925         void *vptr = 0;
65926         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
65927         _v = SWIG_CheckState(res);
65928       }
65929       if (!_v) goto check_3;
65930       _ranki += _v*_pi;
65931       _rankm += _pi;
65932       _pi *= SWIG_MAXCASTRANK;
65933       {
65934         {
65935           {
65936             /* wrapped vector? */
65937             std::vector< double >* v;
65938             if (SWIG_ConvertPtr(ST(1),(void **) &v,
65939                 SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
65940               _v = 1;
65941             } else if (SvROK(ST(1))) {
65942               /* native sequence? */
65943               AV *av = (AV *)SvRV(ST(1));
65944               if (SvTYPE(av) == SVt_PVAV) {
65945                 I32 len = av_len(av) + 1;
65946                 if (len == 0) {
65947                   /* an empty sequence can be of any type */
65948                   _v = 1;
65949                 } else {
65950                   /* check the first element only */
65951                   SV **tv = av_fetch(av, 0, 0);
65952                   if (SvNIOK(*tv))
65953                   _v = 1;
65954                   else
65955                   _v = 0;
65956                 }
65957               }
65958             } else {
65959               _v = 0;
65960             }
65961           }
65962         }
65963       }
65964       if (!_v) goto check_3;
65965       _ranki += _v*_pi;
65966       _rankm += _pi;
65967       _pi *= SWIG_MAXCASTRANK;
65968       {
65969         {
65970           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
65971           _v = SWIG_CheckState(res);
65972         }
65973       }
65974       if (!_v) goto check_3;
65975       _ranki += _v*_pi;
65976       _rankm += _pi;
65977       _pi *= SWIG_MAXCASTRANK;
65978       if (!_index || (_ranki < _rank)) {
65979         _rank = _ranki; _index = 3;
65980         if (_rank == _rankm) goto dispatch;
65981       }
65982     }
65983   check_3:
65984 
65985     if (items == 4) {
65986       SWIG_TypeRank _ranki = 0;
65987       SWIG_TypeRank _rankm = 0;
65988       SWIG_TypeRank _pi = 1;
65989       int _v = 0;
65990       {
65991         void *vptr = 0;
65992         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
65993         _v = SWIG_CheckState(res);
65994       }
65995       if (!_v) goto check_4;
65996       _ranki += _v*_pi;
65997       _rankm += _pi;
65998       _pi *= SWIG_MAXCASTRANK;
65999       {
66000         {
66001           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
66002           _v = SWIG_CheckState(res);
66003         }
66004       }
66005       if (!_v) goto check_4;
66006       _ranki += _v*_pi;
66007       _rankm += _pi;
66008       _pi *= SWIG_MAXCASTRANK;
66009       {
66010         {
66011           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
66012           _v = SWIG_CheckState(res);
66013         }
66014       }
66015       if (!_v) goto check_4;
66016       _ranki += _v*_pi;
66017       _rankm += _pi;
66018       _pi *= SWIG_MAXCASTRANK;
66019       {
66020         {
66021           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
66022           _v = SWIG_CheckState(res);
66023         }
66024       }
66025       if (!_v) goto check_4;
66026       _ranki += _v*_pi;
66027       _rankm += _pi;
66028       _pi *= SWIG_MAXCASTRANK;
66029       if (!_index || (_ranki < _rank)) {
66030         _rank = _ranki; _index = 4;
66031         if (_rank == _rankm) goto dispatch;
66032       }
66033     }
66034   check_4:
66035 
66036   dispatch:
66037     switch(_index) {
66038     case 1:
66039       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_up__SWIG_3); return;
66040     case 2:
66041       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_up__SWIG_1); return;
66042     case 3:
66043       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_up__SWIG_2); return;
66044     case 4:
66045       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_up__SWIG_0); return;
66046     }
66047   }
66048 
66049   croak("No matching function for overloaded 'fold_compound_sc_add_up'");
66050   XSRETURN(0);
66051 }
66052 
66053 
XS(_wrap_fold_compound_sc_add_bp__SWIG_0)66054 XS(_wrap_fold_compound_sc_add_bp__SWIG_0) {
66055   {
66056     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
66057     int arg2 ;
66058     int arg3 ;
66059     double arg4 ;
66060     unsigned int arg5 ;
66061     void *argp1 = 0 ;
66062     int res1 = 0 ;
66063     int val2 ;
66064     int ecode2 = 0 ;
66065     int val3 ;
66066     int ecode3 = 0 ;
66067     double val4 ;
66068     int ecode4 = 0 ;
66069     unsigned int val5 ;
66070     int ecode5 = 0 ;
66071     int argvi = 0;
66072     int result;
66073     dXSARGS;
66074 
66075     if ((items < 5) || (items > 5)) {
66076       SWIG_croak("Usage: fold_compound_sc_add_bp(self,i,j,energy,options);");
66077     }
66078     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
66079     if (!SWIG_IsOK(res1)) {
66080       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_bp" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
66081     }
66082     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
66083     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
66084     if (!SWIG_IsOK(ecode2)) {
66085       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_sc_add_bp" "', argument " "2"" of type '" "int""'");
66086     }
66087     arg2 = static_cast< int >(val2);
66088     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
66089     if (!SWIG_IsOK(ecode3)) {
66090       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_add_bp" "', argument " "3"" of type '" "int""'");
66091     }
66092     arg3 = static_cast< int >(val3);
66093     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
66094     if (!SWIG_IsOK(ecode4)) {
66095       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_sc_add_bp" "', argument " "4"" of type '" "double""'");
66096     }
66097     arg4 = static_cast< double >(val4);
66098     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
66099     if (!SWIG_IsOK(ecode5)) {
66100       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_sc_add_bp" "', argument " "5"" of type '" "unsigned int""'");
66101     }
66102     arg5 = static_cast< unsigned int >(val5);
66103     {
66104       try {
66105         result = (int)vrna_fold_compound_t_sc_add_bp__SWIG_0(arg1,arg2,arg3,arg4,arg5);
66106       } catch (const std::exception& e) {
66107         SWIG_exception(SWIG_RuntimeError, e.what());
66108       }
66109     }
66110     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
66111 
66112 
66113 
66114 
66115 
66116     XSRETURN(argvi);
66117   fail:
66118 
66119 
66120 
66121 
66122 
66123     SWIG_croak_null();
66124   }
66125 }
66126 
66127 
XS(_wrap_fold_compound_sc_add_bp__SWIG_1)66128 XS(_wrap_fold_compound_sc_add_bp__SWIG_1) {
66129   {
66130     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
66131     int arg2 ;
66132     int arg3 ;
66133     double arg4 ;
66134     void *argp1 = 0 ;
66135     int res1 = 0 ;
66136     int val2 ;
66137     int ecode2 = 0 ;
66138     int val3 ;
66139     int ecode3 = 0 ;
66140     double val4 ;
66141     int ecode4 = 0 ;
66142     int argvi = 0;
66143     int result;
66144     dXSARGS;
66145 
66146     if ((items < 4) || (items > 4)) {
66147       SWIG_croak("Usage: fold_compound_sc_add_bp(self,i,j,energy);");
66148     }
66149     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
66150     if (!SWIG_IsOK(res1)) {
66151       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_bp" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
66152     }
66153     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
66154     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
66155     if (!SWIG_IsOK(ecode2)) {
66156       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_sc_add_bp" "', argument " "2"" of type '" "int""'");
66157     }
66158     arg2 = static_cast< int >(val2);
66159     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
66160     if (!SWIG_IsOK(ecode3)) {
66161       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_add_bp" "', argument " "3"" of type '" "int""'");
66162     }
66163     arg3 = static_cast< int >(val3);
66164     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
66165     if (!SWIG_IsOK(ecode4)) {
66166       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_sc_add_bp" "', argument " "4"" of type '" "double""'");
66167     }
66168     arg4 = static_cast< double >(val4);
66169     {
66170       try {
66171         result = (int)vrna_fold_compound_t_sc_add_bp__SWIG_0(arg1,arg2,arg3,arg4);
66172       } catch (const std::exception& e) {
66173         SWIG_exception(SWIG_RuntimeError, e.what());
66174       }
66175     }
66176     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
66177 
66178 
66179 
66180 
66181     XSRETURN(argvi);
66182   fail:
66183 
66184 
66185 
66186 
66187     SWIG_croak_null();
66188   }
66189 }
66190 
66191 
XS(_wrap_fold_compound_sc_add_bp__SWIG_2)66192 XS(_wrap_fold_compound_sc_add_bp__SWIG_2) {
66193   {
66194     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
66195     std::vector< std::vector< double > > arg2 ;
66196     unsigned int arg3 ;
66197     void *argp1 = 0 ;
66198     int res1 = 0 ;
66199     std::vector< std::vector< double > > *v2 ;
66200     unsigned int val3 ;
66201     int ecode3 = 0 ;
66202     int argvi = 0;
66203     int result;
66204     dXSARGS;
66205 
66206     if ((items < 3) || (items > 3)) {
66207       SWIG_croak("Usage: fold_compound_sc_add_bp(self,constraints,options);");
66208     }
66209     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
66210     if (!SWIG_IsOK(res1)) {
66211       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_bp" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
66212     }
66213     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
66214     {
66215       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
66216           SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,1) != -1) {
66217         arg2 = *v2;
66218       } else if (SvROK(ST(1))) {
66219         AV *av = (AV *)SvRV(ST(1));
66220         if (SvTYPE(av) != SVt_PVAV)
66221         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_bp. "
66222           "Expected an array of " "std::vector< double >");
66223         SV **tv;
66224         I32 len = av_len(av) + 1;
66225         std::vector< double >* obj;
66226         for (int i=0; i<len; i++) {
66227           tv = av_fetch(av, i, 0);
66228           if (SWIG_ConvertPtr(*tv, (void **)&obj,
66229               SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
66230             (&arg2)->push_back(*obj);
66231           } else {
66232             SWIG_croak("Type error in argument 2 of "
66233               "fold_compound_sc_add_bp. "
66234               "Expected an array of " "std::vector< double >");
66235           }
66236         }
66237       } else {
66238         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_bp. "
66239           "Expected an array of " "std::vector< double >");
66240       }
66241     }
66242     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
66243     if (!SWIG_IsOK(ecode3)) {
66244       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_add_bp" "', argument " "3"" of type '" "unsigned int""'");
66245     }
66246     arg3 = static_cast< unsigned int >(val3);
66247     {
66248       try {
66249         result = (int)vrna_fold_compound_t_sc_add_bp__SWIG_2(arg1,arg2,arg3);
66250       } catch (const std::exception& e) {
66251         SWIG_exception(SWIG_RuntimeError, e.what());
66252       }
66253     }
66254     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
66255 
66256 
66257     XSRETURN(argvi);
66258   fail:
66259 
66260 
66261     SWIG_croak_null();
66262   }
66263 }
66264 
66265 
XS(_wrap_fold_compound_sc_add_bp__SWIG_3)66266 XS(_wrap_fold_compound_sc_add_bp__SWIG_3) {
66267   {
66268     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
66269     std::vector< std::vector< double > > arg2 ;
66270     void *argp1 = 0 ;
66271     int res1 = 0 ;
66272     std::vector< std::vector< double > > *v2 ;
66273     int argvi = 0;
66274     int result;
66275     dXSARGS;
66276 
66277     if ((items < 2) || (items > 2)) {
66278       SWIG_croak("Usage: fold_compound_sc_add_bp(self,constraints);");
66279     }
66280     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
66281     if (!SWIG_IsOK(res1)) {
66282       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_bp" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
66283     }
66284     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
66285     {
66286       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
66287           SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,1) != -1) {
66288         arg2 = *v2;
66289       } else if (SvROK(ST(1))) {
66290         AV *av = (AV *)SvRV(ST(1));
66291         if (SvTYPE(av) != SVt_PVAV)
66292         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_bp. "
66293           "Expected an array of " "std::vector< double >");
66294         SV **tv;
66295         I32 len = av_len(av) + 1;
66296         std::vector< double >* obj;
66297         for (int i=0; i<len; i++) {
66298           tv = av_fetch(av, i, 0);
66299           if (SWIG_ConvertPtr(*tv, (void **)&obj,
66300               SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
66301             (&arg2)->push_back(*obj);
66302           } else {
66303             SWIG_croak("Type error in argument 2 of "
66304               "fold_compound_sc_add_bp. "
66305               "Expected an array of " "std::vector< double >");
66306           }
66307         }
66308       } else {
66309         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_bp. "
66310           "Expected an array of " "std::vector< double >");
66311       }
66312     }
66313     {
66314       try {
66315         result = (int)vrna_fold_compound_t_sc_add_bp__SWIG_2(arg1,arg2);
66316       } catch (const std::exception& e) {
66317         SWIG_exception(SWIG_RuntimeError, e.what());
66318       }
66319     }
66320     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
66321 
66322     XSRETURN(argvi);
66323   fail:
66324 
66325     SWIG_croak_null();
66326   }
66327 }
66328 
66329 
XS(_wrap_fold_compound_sc_add_bp)66330 XS(_wrap_fold_compound_sc_add_bp) {
66331   dXSARGS;
66332 
66333   {
66334     unsigned long _index = 0;
66335     SWIG_TypeRank _rank = 0;
66336     if (items == 2) {
66337       SWIG_TypeRank _ranki = 0;
66338       SWIG_TypeRank _rankm = 0;
66339       SWIG_TypeRank _pi = 1;
66340       int _v = 0;
66341       {
66342         void *vptr = 0;
66343         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
66344         _v = SWIG_CheckState(res);
66345       }
66346       if (!_v) goto check_1;
66347       _ranki += _v*_pi;
66348       _rankm += _pi;
66349       _pi *= SWIG_MAXCASTRANK;
66350       {
66351         {
66352           {
66353             /* wrapped vector? */
66354             std::vector< std::vector< double > >* v;
66355             if (SWIG_ConvertPtr(ST(1),(void **) &v,
66356                 SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,0) != -1) {
66357               _v = 1;
66358             } else if (SvROK(ST(1))) {
66359               /* native sequence? */
66360               AV *av = (AV *)SvRV(ST(1));
66361               if (SvTYPE(av) == SVt_PVAV) {
66362                 I32 len = av_len(av) + 1;
66363                 if (len == 0) {
66364                   /* an empty sequence can be of any type */
66365                   _v = 1;
66366                 } else {
66367                   /* check the first element only */
66368                   std::vector< double >* obj;
66369                   SV **tv = av_fetch(av, 0, 0);
66370                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
66371                       SWIGTYPE_p_std__vectorT_double_t,0) != -1)
66372                   _v = 1;
66373                   else
66374                   _v = 0;
66375                 }
66376               }
66377             } else {
66378               _v = 0;
66379             }
66380           }
66381         }
66382       }
66383       if (!_v) goto check_1;
66384       _ranki += _v*_pi;
66385       _rankm += _pi;
66386       _pi *= SWIG_MAXCASTRANK;
66387       if (!_index || (_ranki < _rank)) {
66388         _rank = _ranki; _index = 1;
66389         if (_rank == _rankm) goto dispatch;
66390       }
66391     }
66392   check_1:
66393 
66394     if (items == 3) {
66395       SWIG_TypeRank _ranki = 0;
66396       SWIG_TypeRank _rankm = 0;
66397       SWIG_TypeRank _pi = 1;
66398       int _v = 0;
66399       {
66400         void *vptr = 0;
66401         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
66402         _v = SWIG_CheckState(res);
66403       }
66404       if (!_v) goto check_2;
66405       _ranki += _v*_pi;
66406       _rankm += _pi;
66407       _pi *= SWIG_MAXCASTRANK;
66408       {
66409         {
66410           {
66411             /* wrapped vector? */
66412             std::vector< std::vector< double > >* v;
66413             if (SWIG_ConvertPtr(ST(1),(void **) &v,
66414                 SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,0) != -1) {
66415               _v = 1;
66416             } else if (SvROK(ST(1))) {
66417               /* native sequence? */
66418               AV *av = (AV *)SvRV(ST(1));
66419               if (SvTYPE(av) == SVt_PVAV) {
66420                 I32 len = av_len(av) + 1;
66421                 if (len == 0) {
66422                   /* an empty sequence can be of any type */
66423                   _v = 1;
66424                 } else {
66425                   /* check the first element only */
66426                   std::vector< double >* obj;
66427                   SV **tv = av_fetch(av, 0, 0);
66428                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
66429                       SWIGTYPE_p_std__vectorT_double_t,0) != -1)
66430                   _v = 1;
66431                   else
66432                   _v = 0;
66433                 }
66434               }
66435             } else {
66436               _v = 0;
66437             }
66438           }
66439         }
66440       }
66441       if (!_v) goto check_2;
66442       _ranki += _v*_pi;
66443       _rankm += _pi;
66444       _pi *= SWIG_MAXCASTRANK;
66445       {
66446         {
66447           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
66448           _v = SWIG_CheckState(res);
66449         }
66450       }
66451       if (!_v) goto check_2;
66452       _ranki += _v*_pi;
66453       _rankm += _pi;
66454       _pi *= SWIG_MAXCASTRANK;
66455       if (!_index || (_ranki < _rank)) {
66456         _rank = _ranki; _index = 2;
66457         if (_rank == _rankm) goto dispatch;
66458       }
66459     }
66460   check_2:
66461 
66462     if (items == 4) {
66463       SWIG_TypeRank _ranki = 0;
66464       SWIG_TypeRank _rankm = 0;
66465       SWIG_TypeRank _pi = 1;
66466       int _v = 0;
66467       {
66468         void *vptr = 0;
66469         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
66470         _v = SWIG_CheckState(res);
66471       }
66472       if (!_v) goto check_3;
66473       _ranki += _v*_pi;
66474       _rankm += _pi;
66475       _pi *= SWIG_MAXCASTRANK;
66476       {
66477         {
66478           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
66479           _v = SWIG_CheckState(res);
66480         }
66481       }
66482       if (!_v) goto check_3;
66483       _ranki += _v*_pi;
66484       _rankm += _pi;
66485       _pi *= SWIG_MAXCASTRANK;
66486       {
66487         {
66488           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
66489           _v = SWIG_CheckState(res);
66490         }
66491       }
66492       if (!_v) goto check_3;
66493       _ranki += _v*_pi;
66494       _rankm += _pi;
66495       _pi *= SWIG_MAXCASTRANK;
66496       {
66497         {
66498           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
66499           _v = SWIG_CheckState(res);
66500         }
66501       }
66502       if (!_v) goto check_3;
66503       _ranki += _v*_pi;
66504       _rankm += _pi;
66505       _pi *= SWIG_MAXCASTRANK;
66506       if (!_index || (_ranki < _rank)) {
66507         _rank = _ranki; _index = 3;
66508         if (_rank == _rankm) goto dispatch;
66509       }
66510     }
66511   check_3:
66512 
66513     if (items == 5) {
66514       SWIG_TypeRank _ranki = 0;
66515       SWIG_TypeRank _rankm = 0;
66516       SWIG_TypeRank _pi = 1;
66517       int _v = 0;
66518       {
66519         void *vptr = 0;
66520         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
66521         _v = SWIG_CheckState(res);
66522       }
66523       if (!_v) goto check_4;
66524       _ranki += _v*_pi;
66525       _rankm += _pi;
66526       _pi *= SWIG_MAXCASTRANK;
66527       {
66528         {
66529           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
66530           _v = SWIG_CheckState(res);
66531         }
66532       }
66533       if (!_v) goto check_4;
66534       _ranki += _v*_pi;
66535       _rankm += _pi;
66536       _pi *= SWIG_MAXCASTRANK;
66537       {
66538         {
66539           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
66540           _v = SWIG_CheckState(res);
66541         }
66542       }
66543       if (!_v) goto check_4;
66544       _ranki += _v*_pi;
66545       _rankm += _pi;
66546       _pi *= SWIG_MAXCASTRANK;
66547       {
66548         {
66549           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
66550           _v = SWIG_CheckState(res);
66551         }
66552       }
66553       if (!_v) goto check_4;
66554       _ranki += _v*_pi;
66555       _rankm += _pi;
66556       _pi *= SWIG_MAXCASTRANK;
66557       {
66558         {
66559           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
66560           _v = SWIG_CheckState(res);
66561         }
66562       }
66563       if (!_v) goto check_4;
66564       _ranki += _v*_pi;
66565       _rankm += _pi;
66566       _pi *= SWIG_MAXCASTRANK;
66567       if (!_index || (_ranki < _rank)) {
66568         _rank = _ranki; _index = 4;
66569         if (_rank == _rankm) goto dispatch;
66570       }
66571     }
66572   check_4:
66573 
66574   dispatch:
66575     switch(_index) {
66576     case 1:
66577       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_bp__SWIG_3); return;
66578     case 2:
66579       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_bp__SWIG_2); return;
66580     case 3:
66581       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_bp__SWIG_1); return;
66582     case 4:
66583       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_bp__SWIG_0); return;
66584     }
66585   }
66586 
66587   croak("No matching function for overloaded 'fold_compound_sc_add_bp'");
66588   XSRETURN(0);
66589 }
66590 
66591 
XS(_wrap_fold_compound_sc_set_bp__SWIG_0)66592 XS(_wrap_fold_compound_sc_set_bp__SWIG_0) {
66593   {
66594     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
66595     std::vector< std::vector< double > > arg2 ;
66596     unsigned int arg3 ;
66597     void *argp1 = 0 ;
66598     int res1 = 0 ;
66599     std::vector< std::vector< double > > *v2 ;
66600     unsigned int val3 ;
66601     int ecode3 = 0 ;
66602     int argvi = 0;
66603     int result;
66604     dXSARGS;
66605 
66606     if ((items < 3) || (items > 3)) {
66607       SWIG_croak("Usage: fold_compound_sc_set_bp(self,constraints,options);");
66608     }
66609     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
66610     if (!SWIG_IsOK(res1)) {
66611       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_set_bp" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
66612     }
66613     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
66614     {
66615       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
66616           SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,1) != -1) {
66617         arg2 = *v2;
66618       } else if (SvROK(ST(1))) {
66619         AV *av = (AV *)SvRV(ST(1));
66620         if (SvTYPE(av) != SVt_PVAV)
66621         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_bp. "
66622           "Expected an array of " "std::vector< double >");
66623         SV **tv;
66624         I32 len = av_len(av) + 1;
66625         std::vector< double >* obj;
66626         for (int i=0; i<len; i++) {
66627           tv = av_fetch(av, i, 0);
66628           if (SWIG_ConvertPtr(*tv, (void **)&obj,
66629               SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
66630             (&arg2)->push_back(*obj);
66631           } else {
66632             SWIG_croak("Type error in argument 2 of "
66633               "fold_compound_sc_set_bp. "
66634               "Expected an array of " "std::vector< double >");
66635           }
66636         }
66637       } else {
66638         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_bp. "
66639           "Expected an array of " "std::vector< double >");
66640       }
66641     }
66642     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
66643     if (!SWIG_IsOK(ecode3)) {
66644       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_set_bp" "', argument " "3"" of type '" "unsigned int""'");
66645     }
66646     arg3 = static_cast< unsigned int >(val3);
66647     {
66648       try {
66649         result = (int)vrna_fold_compound_t_sc_set_bp__SWIG_0(arg1,arg2,arg3);
66650       } catch (const std::exception& e) {
66651         SWIG_exception(SWIG_RuntimeError, e.what());
66652       }
66653     }
66654     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
66655 
66656 
66657     XSRETURN(argvi);
66658   fail:
66659 
66660 
66661     SWIG_croak_null();
66662   }
66663 }
66664 
66665 
XS(_wrap_fold_compound_sc_set_bp__SWIG_1)66666 XS(_wrap_fold_compound_sc_set_bp__SWIG_1) {
66667   {
66668     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
66669     std::vector< std::vector< double > > arg2 ;
66670     void *argp1 = 0 ;
66671     int res1 = 0 ;
66672     std::vector< std::vector< double > > *v2 ;
66673     int argvi = 0;
66674     int result;
66675     dXSARGS;
66676 
66677     if ((items < 2) || (items > 2)) {
66678       SWIG_croak("Usage: fold_compound_sc_set_bp(self,constraints);");
66679     }
66680     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
66681     if (!SWIG_IsOK(res1)) {
66682       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_set_bp" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
66683     }
66684     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
66685     {
66686       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
66687           SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,1) != -1) {
66688         arg2 = *v2;
66689       } else if (SvROK(ST(1))) {
66690         AV *av = (AV *)SvRV(ST(1));
66691         if (SvTYPE(av) != SVt_PVAV)
66692         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_bp. "
66693           "Expected an array of " "std::vector< double >");
66694         SV **tv;
66695         I32 len = av_len(av) + 1;
66696         std::vector< double >* obj;
66697         for (int i=0; i<len; i++) {
66698           tv = av_fetch(av, i, 0);
66699           if (SWIG_ConvertPtr(*tv, (void **)&obj,
66700               SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
66701             (&arg2)->push_back(*obj);
66702           } else {
66703             SWIG_croak("Type error in argument 2 of "
66704               "fold_compound_sc_set_bp. "
66705               "Expected an array of " "std::vector< double >");
66706           }
66707         }
66708       } else {
66709         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_bp. "
66710           "Expected an array of " "std::vector< double >");
66711       }
66712     }
66713     {
66714       try {
66715         result = (int)vrna_fold_compound_t_sc_set_bp__SWIG_0(arg1,arg2);
66716       } catch (const std::exception& e) {
66717         SWIG_exception(SWIG_RuntimeError, e.what());
66718       }
66719     }
66720     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
66721 
66722     XSRETURN(argvi);
66723   fail:
66724 
66725     SWIG_croak_null();
66726   }
66727 }
66728 
66729 
XS(_wrap_fold_compound_sc_set_bp)66730 XS(_wrap_fold_compound_sc_set_bp) {
66731   dXSARGS;
66732 
66733   {
66734     unsigned long _index = 0;
66735     SWIG_TypeRank _rank = 0;
66736     if (items == 2) {
66737       SWIG_TypeRank _ranki = 0;
66738       SWIG_TypeRank _rankm = 0;
66739       SWIG_TypeRank _pi = 1;
66740       int _v = 0;
66741       {
66742         void *vptr = 0;
66743         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
66744         _v = SWIG_CheckState(res);
66745       }
66746       if (!_v) goto check_1;
66747       _ranki += _v*_pi;
66748       _rankm += _pi;
66749       _pi *= SWIG_MAXCASTRANK;
66750       {
66751         {
66752           {
66753             /* wrapped vector? */
66754             std::vector< std::vector< double > >* v;
66755             if (SWIG_ConvertPtr(ST(1),(void **) &v,
66756                 SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,0) != -1) {
66757               _v = 1;
66758             } else if (SvROK(ST(1))) {
66759               /* native sequence? */
66760               AV *av = (AV *)SvRV(ST(1));
66761               if (SvTYPE(av) == SVt_PVAV) {
66762                 I32 len = av_len(av) + 1;
66763                 if (len == 0) {
66764                   /* an empty sequence can be of any type */
66765                   _v = 1;
66766                 } else {
66767                   /* check the first element only */
66768                   std::vector< double >* obj;
66769                   SV **tv = av_fetch(av, 0, 0);
66770                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
66771                       SWIGTYPE_p_std__vectorT_double_t,0) != -1)
66772                   _v = 1;
66773                   else
66774                   _v = 0;
66775                 }
66776               }
66777             } else {
66778               _v = 0;
66779             }
66780           }
66781         }
66782       }
66783       if (!_v) goto check_1;
66784       _ranki += _v*_pi;
66785       _rankm += _pi;
66786       _pi *= SWIG_MAXCASTRANK;
66787       if (!_index || (_ranki < _rank)) {
66788         _rank = _ranki; _index = 1;
66789         if (_rank == _rankm) goto dispatch;
66790       }
66791     }
66792   check_1:
66793 
66794     if (items == 3) {
66795       SWIG_TypeRank _ranki = 0;
66796       SWIG_TypeRank _rankm = 0;
66797       SWIG_TypeRank _pi = 1;
66798       int _v = 0;
66799       {
66800         void *vptr = 0;
66801         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
66802         _v = SWIG_CheckState(res);
66803       }
66804       if (!_v) goto check_2;
66805       _ranki += _v*_pi;
66806       _rankm += _pi;
66807       _pi *= SWIG_MAXCASTRANK;
66808       {
66809         {
66810           {
66811             /* wrapped vector? */
66812             std::vector< std::vector< double > >* v;
66813             if (SWIG_ConvertPtr(ST(1),(void **) &v,
66814                 SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,0) != -1) {
66815               _v = 1;
66816             } else if (SvROK(ST(1))) {
66817               /* native sequence? */
66818               AV *av = (AV *)SvRV(ST(1));
66819               if (SvTYPE(av) == SVt_PVAV) {
66820                 I32 len = av_len(av) + 1;
66821                 if (len == 0) {
66822                   /* an empty sequence can be of any type */
66823                   _v = 1;
66824                 } else {
66825                   /* check the first element only */
66826                   std::vector< double >* obj;
66827                   SV **tv = av_fetch(av, 0, 0);
66828                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
66829                       SWIGTYPE_p_std__vectorT_double_t,0) != -1)
66830                   _v = 1;
66831                   else
66832                   _v = 0;
66833                 }
66834               }
66835             } else {
66836               _v = 0;
66837             }
66838           }
66839         }
66840       }
66841       if (!_v) goto check_2;
66842       _ranki += _v*_pi;
66843       _rankm += _pi;
66844       _pi *= SWIG_MAXCASTRANK;
66845       {
66846         {
66847           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
66848           _v = SWIG_CheckState(res);
66849         }
66850       }
66851       if (!_v) goto check_2;
66852       _ranki += _v*_pi;
66853       _rankm += _pi;
66854       _pi *= SWIG_MAXCASTRANK;
66855       if (!_index || (_ranki < _rank)) {
66856         _rank = _ranki; _index = 2;
66857         if (_rank == _rankm) goto dispatch;
66858       }
66859     }
66860   check_2:
66861 
66862   dispatch:
66863     switch(_index) {
66864     case 1:
66865       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_set_bp__SWIG_1); return;
66866     case 2:
66867       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_set_bp__SWIG_0); return;
66868     }
66869   }
66870 
66871   croak("No matching function for overloaded 'fold_compound_sc_set_bp'");
66872   XSRETURN(0);
66873 }
66874 
66875 
XS(_wrap_fold_compound_sc_set_up__SWIG_0)66876 XS(_wrap_fold_compound_sc_set_up__SWIG_0) {
66877   {
66878     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
66879     std::vector< double > arg2 ;
66880     unsigned int arg3 ;
66881     void *argp1 = 0 ;
66882     int res1 = 0 ;
66883     std::vector< double > *v2 ;
66884     unsigned int val3 ;
66885     int ecode3 = 0 ;
66886     int argvi = 0;
66887     int result;
66888     dXSARGS;
66889 
66890     if ((items < 3) || (items > 3)) {
66891       SWIG_croak("Usage: fold_compound_sc_set_up(self,constraints,options);");
66892     }
66893     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
66894     if (!SWIG_IsOK(res1)) {
66895       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_set_up" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
66896     }
66897     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
66898     {
66899       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
66900           SWIGTYPE_p_std__vectorT_double_t,1) != -1){
66901         arg2 = *v2;
66902       } else if (SvROK(ST(1))) {
66903         AV *av = (AV *)SvRV(ST(1));
66904         if (SvTYPE(av) != SVt_PVAV)
66905         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_up. "
66906           "Expected an array of ""double");
66907         SV **tv;
66908         I32 len = av_len(av) + 1;
66909         for (int i=0; i<len; i++) {
66910           tv = av_fetch(av, i, 0);
66911           if (SvNIOK(*tv)) {
66912             (&arg2)->push_back((double)SwigSvToNumber(*tv));
66913           } else {
66914             SWIG_croak("Type error in argument 2 of "
66915               "fold_compound_sc_set_up. "
66916               "Expected an array of ""double");
66917           }
66918         }
66919       } else {
66920         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_up. "
66921           "Expected an array of ""double");
66922       }
66923     }
66924     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
66925     if (!SWIG_IsOK(ecode3)) {
66926       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_set_up" "', argument " "3"" of type '" "unsigned int""'");
66927     }
66928     arg3 = static_cast< unsigned int >(val3);
66929     {
66930       try {
66931         result = (int)vrna_fold_compound_t_sc_set_up__SWIG_0(arg1,arg2,arg3);
66932       } catch (const std::exception& e) {
66933         SWIG_exception(SWIG_RuntimeError, e.what());
66934       }
66935     }
66936     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
66937 
66938 
66939     XSRETURN(argvi);
66940   fail:
66941 
66942 
66943     SWIG_croak_null();
66944   }
66945 }
66946 
66947 
XS(_wrap_fold_compound_sc_set_up__SWIG_1)66948 XS(_wrap_fold_compound_sc_set_up__SWIG_1) {
66949   {
66950     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
66951     std::vector< double > arg2 ;
66952     void *argp1 = 0 ;
66953     int res1 = 0 ;
66954     std::vector< double > *v2 ;
66955     int argvi = 0;
66956     int result;
66957     dXSARGS;
66958 
66959     if ((items < 2) || (items > 2)) {
66960       SWIG_croak("Usage: fold_compound_sc_set_up(self,constraints);");
66961     }
66962     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
66963     if (!SWIG_IsOK(res1)) {
66964       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_set_up" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
66965     }
66966     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
66967     {
66968       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
66969           SWIGTYPE_p_std__vectorT_double_t,1) != -1){
66970         arg2 = *v2;
66971       } else if (SvROK(ST(1))) {
66972         AV *av = (AV *)SvRV(ST(1));
66973         if (SvTYPE(av) != SVt_PVAV)
66974         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_up. "
66975           "Expected an array of ""double");
66976         SV **tv;
66977         I32 len = av_len(av) + 1;
66978         for (int i=0; i<len; i++) {
66979           tv = av_fetch(av, i, 0);
66980           if (SvNIOK(*tv)) {
66981             (&arg2)->push_back((double)SwigSvToNumber(*tv));
66982           } else {
66983             SWIG_croak("Type error in argument 2 of "
66984               "fold_compound_sc_set_up. "
66985               "Expected an array of ""double");
66986           }
66987         }
66988       } else {
66989         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_up. "
66990           "Expected an array of ""double");
66991       }
66992     }
66993     {
66994       try {
66995         result = (int)vrna_fold_compound_t_sc_set_up__SWIG_0(arg1,arg2);
66996       } catch (const std::exception& e) {
66997         SWIG_exception(SWIG_RuntimeError, e.what());
66998       }
66999     }
67000     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
67001 
67002     XSRETURN(argvi);
67003   fail:
67004 
67005     SWIG_croak_null();
67006   }
67007 }
67008 
67009 
XS(_wrap_fold_compound_sc_set_up)67010 XS(_wrap_fold_compound_sc_set_up) {
67011   dXSARGS;
67012 
67013   {
67014     unsigned long _index = 0;
67015     SWIG_TypeRank _rank = 0;
67016     if (items == 2) {
67017       SWIG_TypeRank _ranki = 0;
67018       SWIG_TypeRank _rankm = 0;
67019       SWIG_TypeRank _pi = 1;
67020       int _v = 0;
67021       {
67022         void *vptr = 0;
67023         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
67024         _v = SWIG_CheckState(res);
67025       }
67026       if (!_v) goto check_1;
67027       _ranki += _v*_pi;
67028       _rankm += _pi;
67029       _pi *= SWIG_MAXCASTRANK;
67030       {
67031         {
67032           {
67033             /* wrapped vector? */
67034             std::vector< double >* v;
67035             if (SWIG_ConvertPtr(ST(1),(void **) &v,
67036                 SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
67037               _v = 1;
67038             } else if (SvROK(ST(1))) {
67039               /* native sequence? */
67040               AV *av = (AV *)SvRV(ST(1));
67041               if (SvTYPE(av) == SVt_PVAV) {
67042                 I32 len = av_len(av) + 1;
67043                 if (len == 0) {
67044                   /* an empty sequence can be of any type */
67045                   _v = 1;
67046                 } else {
67047                   /* check the first element only */
67048                   SV **tv = av_fetch(av, 0, 0);
67049                   if (SvNIOK(*tv))
67050                   _v = 1;
67051                   else
67052                   _v = 0;
67053                 }
67054               }
67055             } else {
67056               _v = 0;
67057             }
67058           }
67059         }
67060       }
67061       if (!_v) goto check_1;
67062       _ranki += _v*_pi;
67063       _rankm += _pi;
67064       _pi *= SWIG_MAXCASTRANK;
67065       if (!_index || (_ranki < _rank)) {
67066         _rank = _ranki; _index = 1;
67067         if (_rank == _rankm) goto dispatch;
67068       }
67069     }
67070   check_1:
67071 
67072     if (items == 3) {
67073       SWIG_TypeRank _ranki = 0;
67074       SWIG_TypeRank _rankm = 0;
67075       SWIG_TypeRank _pi = 1;
67076       int _v = 0;
67077       {
67078         void *vptr = 0;
67079         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
67080         _v = SWIG_CheckState(res);
67081       }
67082       if (!_v) goto check_2;
67083       _ranki += _v*_pi;
67084       _rankm += _pi;
67085       _pi *= SWIG_MAXCASTRANK;
67086       {
67087         {
67088           {
67089             /* wrapped vector? */
67090             std::vector< double >* v;
67091             if (SWIG_ConvertPtr(ST(1),(void **) &v,
67092                 SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
67093               _v = 1;
67094             } else if (SvROK(ST(1))) {
67095               /* native sequence? */
67096               AV *av = (AV *)SvRV(ST(1));
67097               if (SvTYPE(av) == SVt_PVAV) {
67098                 I32 len = av_len(av) + 1;
67099                 if (len == 0) {
67100                   /* an empty sequence can be of any type */
67101                   _v = 1;
67102                 } else {
67103                   /* check the first element only */
67104                   SV **tv = av_fetch(av, 0, 0);
67105                   if (SvNIOK(*tv))
67106                   _v = 1;
67107                   else
67108                   _v = 0;
67109                 }
67110               }
67111             } else {
67112               _v = 0;
67113             }
67114           }
67115         }
67116       }
67117       if (!_v) goto check_2;
67118       _ranki += _v*_pi;
67119       _rankm += _pi;
67120       _pi *= SWIG_MAXCASTRANK;
67121       {
67122         {
67123           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
67124           _v = SWIG_CheckState(res);
67125         }
67126       }
67127       if (!_v) goto check_2;
67128       _ranki += _v*_pi;
67129       _rankm += _pi;
67130       _pi *= SWIG_MAXCASTRANK;
67131       if (!_index || (_ranki < _rank)) {
67132         _rank = _ranki; _index = 2;
67133         if (_rank == _rankm) goto dispatch;
67134       }
67135     }
67136   check_2:
67137 
67138   dispatch:
67139     switch(_index) {
67140     case 1:
67141       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_set_up__SWIG_1); return;
67142     case 2:
67143       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_set_up__SWIG_0); return;
67144     }
67145   }
67146 
67147   croak("No matching function for overloaded 'fold_compound_sc_set_up'");
67148   XSRETURN(0);
67149 }
67150 
67151 
XS(_wrap_fold_compound_sc_set_stack__SWIG_0)67152 XS(_wrap_fold_compound_sc_set_stack__SWIG_0) {
67153   {
67154     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
67155     std::vector< double > arg2 ;
67156     unsigned int arg3 ;
67157     void *argp1 = 0 ;
67158     int res1 = 0 ;
67159     std::vector< double > *v2 ;
67160     unsigned int val3 ;
67161     int ecode3 = 0 ;
67162     int argvi = 0;
67163     int result;
67164     dXSARGS;
67165 
67166     if ((items < 3) || (items > 3)) {
67167       SWIG_croak("Usage: fold_compound_sc_set_stack(self,constraints,options);");
67168     }
67169     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
67170     if (!SWIG_IsOK(res1)) {
67171       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_set_stack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
67172     }
67173     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
67174     {
67175       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
67176           SWIGTYPE_p_std__vectorT_double_t,1) != -1){
67177         arg2 = *v2;
67178       } else if (SvROK(ST(1))) {
67179         AV *av = (AV *)SvRV(ST(1));
67180         if (SvTYPE(av) != SVt_PVAV)
67181         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_stack. "
67182           "Expected an array of ""double");
67183         SV **tv;
67184         I32 len = av_len(av) + 1;
67185         for (int i=0; i<len; i++) {
67186           tv = av_fetch(av, i, 0);
67187           if (SvNIOK(*tv)) {
67188             (&arg2)->push_back((double)SwigSvToNumber(*tv));
67189           } else {
67190             SWIG_croak("Type error in argument 2 of "
67191               "fold_compound_sc_set_stack. "
67192               "Expected an array of ""double");
67193           }
67194         }
67195       } else {
67196         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_stack. "
67197           "Expected an array of ""double");
67198       }
67199     }
67200     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
67201     if (!SWIG_IsOK(ecode3)) {
67202       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_set_stack" "', argument " "3"" of type '" "unsigned int""'");
67203     }
67204     arg3 = static_cast< unsigned int >(val3);
67205     {
67206       try {
67207         result = (int)vrna_fold_compound_t_sc_set_stack__SWIG_0(arg1,arg2,arg3);
67208       } catch (const std::exception& e) {
67209         SWIG_exception(SWIG_RuntimeError, e.what());
67210       }
67211     }
67212     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
67213 
67214 
67215     XSRETURN(argvi);
67216   fail:
67217 
67218 
67219     SWIG_croak_null();
67220   }
67221 }
67222 
67223 
XS(_wrap_fold_compound_sc_set_stack__SWIG_1)67224 XS(_wrap_fold_compound_sc_set_stack__SWIG_1) {
67225   {
67226     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
67227     std::vector< double > arg2 ;
67228     void *argp1 = 0 ;
67229     int res1 = 0 ;
67230     std::vector< double > *v2 ;
67231     int argvi = 0;
67232     int result;
67233     dXSARGS;
67234 
67235     if ((items < 2) || (items > 2)) {
67236       SWIG_croak("Usage: fold_compound_sc_set_stack(self,constraints);");
67237     }
67238     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
67239     if (!SWIG_IsOK(res1)) {
67240       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_set_stack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
67241     }
67242     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
67243     {
67244       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
67245           SWIGTYPE_p_std__vectorT_double_t,1) != -1){
67246         arg2 = *v2;
67247       } else if (SvROK(ST(1))) {
67248         AV *av = (AV *)SvRV(ST(1));
67249         if (SvTYPE(av) != SVt_PVAV)
67250         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_stack. "
67251           "Expected an array of ""double");
67252         SV **tv;
67253         I32 len = av_len(av) + 1;
67254         for (int i=0; i<len; i++) {
67255           tv = av_fetch(av, i, 0);
67256           if (SvNIOK(*tv)) {
67257             (&arg2)->push_back((double)SwigSvToNumber(*tv));
67258           } else {
67259             SWIG_croak("Type error in argument 2 of "
67260               "fold_compound_sc_set_stack. "
67261               "Expected an array of ""double");
67262           }
67263         }
67264       } else {
67265         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_stack. "
67266           "Expected an array of ""double");
67267       }
67268     }
67269     {
67270       try {
67271         result = (int)vrna_fold_compound_t_sc_set_stack__SWIG_0(arg1,arg2);
67272       } catch (const std::exception& e) {
67273         SWIG_exception(SWIG_RuntimeError, e.what());
67274       }
67275     }
67276     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
67277 
67278     XSRETURN(argvi);
67279   fail:
67280 
67281     SWIG_croak_null();
67282   }
67283 }
67284 
67285 
XS(_wrap_fold_compound_sc_set_stack__SWIG_2)67286 XS(_wrap_fold_compound_sc_set_stack__SWIG_2) {
67287   {
67288     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
67289     std::vector< std::vector< double > > arg2 ;
67290     unsigned int arg3 ;
67291     void *argp1 = 0 ;
67292     int res1 = 0 ;
67293     std::vector< std::vector< double > > *v2 ;
67294     unsigned int val3 ;
67295     int ecode3 = 0 ;
67296     int argvi = 0;
67297     int result;
67298     dXSARGS;
67299 
67300     if ((items < 3) || (items > 3)) {
67301       SWIG_croak("Usage: fold_compound_sc_set_stack(self,constraints,options);");
67302     }
67303     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
67304     if (!SWIG_IsOK(res1)) {
67305       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_set_stack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
67306     }
67307     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
67308     {
67309       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
67310           SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,1) != -1) {
67311         arg2 = *v2;
67312       } else if (SvROK(ST(1))) {
67313         AV *av = (AV *)SvRV(ST(1));
67314         if (SvTYPE(av) != SVt_PVAV)
67315         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_stack. "
67316           "Expected an array of " "std::vector< double >");
67317         SV **tv;
67318         I32 len = av_len(av) + 1;
67319         std::vector< double >* obj;
67320         for (int i=0; i<len; i++) {
67321           tv = av_fetch(av, i, 0);
67322           if (SWIG_ConvertPtr(*tv, (void **)&obj,
67323               SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
67324             (&arg2)->push_back(*obj);
67325           } else {
67326             SWIG_croak("Type error in argument 2 of "
67327               "fold_compound_sc_set_stack. "
67328               "Expected an array of " "std::vector< double >");
67329           }
67330         }
67331       } else {
67332         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_stack. "
67333           "Expected an array of " "std::vector< double >");
67334       }
67335     }
67336     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
67337     if (!SWIG_IsOK(ecode3)) {
67338       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_set_stack" "', argument " "3"" of type '" "unsigned int""'");
67339     }
67340     arg3 = static_cast< unsigned int >(val3);
67341     {
67342       try {
67343         result = (int)vrna_fold_compound_t_sc_set_stack__SWIG_2(arg1,arg2,arg3);
67344       } catch (const std::exception& e) {
67345         SWIG_exception(SWIG_RuntimeError, e.what());
67346       }
67347     }
67348     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
67349 
67350 
67351     XSRETURN(argvi);
67352   fail:
67353 
67354 
67355     SWIG_croak_null();
67356   }
67357 }
67358 
67359 
XS(_wrap_fold_compound_sc_set_stack__SWIG_3)67360 XS(_wrap_fold_compound_sc_set_stack__SWIG_3) {
67361   {
67362     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
67363     std::vector< std::vector< double > > arg2 ;
67364     void *argp1 = 0 ;
67365     int res1 = 0 ;
67366     std::vector< std::vector< double > > *v2 ;
67367     int argvi = 0;
67368     int result;
67369     dXSARGS;
67370 
67371     if ((items < 2) || (items > 2)) {
67372       SWIG_croak("Usage: fold_compound_sc_set_stack(self,constraints);");
67373     }
67374     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
67375     if (!SWIG_IsOK(res1)) {
67376       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_set_stack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
67377     }
67378     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
67379     {
67380       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
67381           SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,1) != -1) {
67382         arg2 = *v2;
67383       } else if (SvROK(ST(1))) {
67384         AV *av = (AV *)SvRV(ST(1));
67385         if (SvTYPE(av) != SVt_PVAV)
67386         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_stack. "
67387           "Expected an array of " "std::vector< double >");
67388         SV **tv;
67389         I32 len = av_len(av) + 1;
67390         std::vector< double >* obj;
67391         for (int i=0; i<len; i++) {
67392           tv = av_fetch(av, i, 0);
67393           if (SWIG_ConvertPtr(*tv, (void **)&obj,
67394               SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
67395             (&arg2)->push_back(*obj);
67396           } else {
67397             SWIG_croak("Type error in argument 2 of "
67398               "fold_compound_sc_set_stack. "
67399               "Expected an array of " "std::vector< double >");
67400           }
67401         }
67402       } else {
67403         SWIG_croak("Type error in argument 2 of fold_compound_sc_set_stack. "
67404           "Expected an array of " "std::vector< double >");
67405       }
67406     }
67407     {
67408       try {
67409         result = (int)vrna_fold_compound_t_sc_set_stack__SWIG_2(arg1,arg2);
67410       } catch (const std::exception& e) {
67411         SWIG_exception(SWIG_RuntimeError, e.what());
67412       }
67413     }
67414     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
67415 
67416     XSRETURN(argvi);
67417   fail:
67418 
67419     SWIG_croak_null();
67420   }
67421 }
67422 
67423 
XS(_wrap_fold_compound_sc_set_stack)67424 XS(_wrap_fold_compound_sc_set_stack) {
67425   dXSARGS;
67426 
67427   {
67428     unsigned long _index = 0;
67429     SWIG_TypeRank _rank = 0;
67430     if (items == 2) {
67431       SWIG_TypeRank _ranki = 0;
67432       SWIG_TypeRank _rankm = 0;
67433       SWIG_TypeRank _pi = 1;
67434       int _v = 0;
67435       {
67436         void *vptr = 0;
67437         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
67438         _v = SWIG_CheckState(res);
67439       }
67440       if (!_v) goto check_1;
67441       _ranki += _v*_pi;
67442       _rankm += _pi;
67443       _pi *= SWIG_MAXCASTRANK;
67444       {
67445         {
67446           {
67447             /* wrapped vector? */
67448             std::vector< double >* v;
67449             if (SWIG_ConvertPtr(ST(1),(void **) &v,
67450                 SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
67451               _v = 1;
67452             } else if (SvROK(ST(1))) {
67453               /* native sequence? */
67454               AV *av = (AV *)SvRV(ST(1));
67455               if (SvTYPE(av) == SVt_PVAV) {
67456                 I32 len = av_len(av) + 1;
67457                 if (len == 0) {
67458                   /* an empty sequence can be of any type */
67459                   _v = 1;
67460                 } else {
67461                   /* check the first element only */
67462                   SV **tv = av_fetch(av, 0, 0);
67463                   if (SvNIOK(*tv))
67464                   _v = 1;
67465                   else
67466                   _v = 0;
67467                 }
67468               }
67469             } else {
67470               _v = 0;
67471             }
67472           }
67473         }
67474       }
67475       if (!_v) goto check_1;
67476       _ranki += _v*_pi;
67477       _rankm += _pi;
67478       _pi *= SWIG_MAXCASTRANK;
67479       if (!_index || (_ranki < _rank)) {
67480         _rank = _ranki; _index = 1;
67481         if (_rank == _rankm) goto dispatch;
67482       }
67483     }
67484   check_1:
67485 
67486     if (items == 2) {
67487       SWIG_TypeRank _ranki = 0;
67488       SWIG_TypeRank _rankm = 0;
67489       SWIG_TypeRank _pi = 1;
67490       int _v = 0;
67491       {
67492         void *vptr = 0;
67493         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
67494         _v = SWIG_CheckState(res);
67495       }
67496       if (!_v) goto check_2;
67497       _ranki += _v*_pi;
67498       _rankm += _pi;
67499       _pi *= SWIG_MAXCASTRANK;
67500       {
67501         {
67502           {
67503             /* wrapped vector? */
67504             std::vector< std::vector< double > >* v;
67505             if (SWIG_ConvertPtr(ST(1),(void **) &v,
67506                 SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,0) != -1) {
67507               _v = 1;
67508             } else if (SvROK(ST(1))) {
67509               /* native sequence? */
67510               AV *av = (AV *)SvRV(ST(1));
67511               if (SvTYPE(av) == SVt_PVAV) {
67512                 I32 len = av_len(av) + 1;
67513                 if (len == 0) {
67514                   /* an empty sequence can be of any type */
67515                   _v = 1;
67516                 } else {
67517                   /* check the first element only */
67518                   std::vector< double >* obj;
67519                   SV **tv = av_fetch(av, 0, 0);
67520                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
67521                       SWIGTYPE_p_std__vectorT_double_t,0) != -1)
67522                   _v = 1;
67523                   else
67524                   _v = 0;
67525                 }
67526               }
67527             } else {
67528               _v = 0;
67529             }
67530           }
67531         }
67532       }
67533       if (!_v) goto check_2;
67534       _ranki += _v*_pi;
67535       _rankm += _pi;
67536       _pi *= SWIG_MAXCASTRANK;
67537       if (!_index || (_ranki < _rank)) {
67538         _rank = _ranki; _index = 2;
67539         if (_rank == _rankm) goto dispatch;
67540       }
67541     }
67542   check_2:
67543 
67544     if (items == 3) {
67545       SWIG_TypeRank _ranki = 0;
67546       SWIG_TypeRank _rankm = 0;
67547       SWIG_TypeRank _pi = 1;
67548       int _v = 0;
67549       {
67550         void *vptr = 0;
67551         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
67552         _v = SWIG_CheckState(res);
67553       }
67554       if (!_v) goto check_3;
67555       _ranki += _v*_pi;
67556       _rankm += _pi;
67557       _pi *= SWIG_MAXCASTRANK;
67558       {
67559         {
67560           {
67561             /* wrapped vector? */
67562             std::vector< std::vector< double > >* v;
67563             if (SWIG_ConvertPtr(ST(1),(void **) &v,
67564                 SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t,0) != -1) {
67565               _v = 1;
67566             } else if (SvROK(ST(1))) {
67567               /* native sequence? */
67568               AV *av = (AV *)SvRV(ST(1));
67569               if (SvTYPE(av) == SVt_PVAV) {
67570                 I32 len = av_len(av) + 1;
67571                 if (len == 0) {
67572                   /* an empty sequence can be of any type */
67573                   _v = 1;
67574                 } else {
67575                   /* check the first element only */
67576                   std::vector< double >* obj;
67577                   SV **tv = av_fetch(av, 0, 0);
67578                   if (SWIG_ConvertPtr(*tv, (void **)&obj,
67579                       SWIGTYPE_p_std__vectorT_double_t,0) != -1)
67580                   _v = 1;
67581                   else
67582                   _v = 0;
67583                 }
67584               }
67585             } else {
67586               _v = 0;
67587             }
67588           }
67589         }
67590       }
67591       if (!_v) goto check_3;
67592       _ranki += _v*_pi;
67593       _rankm += _pi;
67594       _pi *= SWIG_MAXCASTRANK;
67595       {
67596         {
67597           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
67598           _v = SWIG_CheckState(res);
67599         }
67600       }
67601       if (!_v) goto check_3;
67602       _ranki += _v*_pi;
67603       _rankm += _pi;
67604       _pi *= SWIG_MAXCASTRANK;
67605       if (!_index || (_ranki < _rank)) {
67606         _rank = _ranki; _index = 3;
67607         if (_rank == _rankm) goto dispatch;
67608       }
67609     }
67610   check_3:
67611 
67612     if (items == 3) {
67613       SWIG_TypeRank _ranki = 0;
67614       SWIG_TypeRank _rankm = 0;
67615       SWIG_TypeRank _pi = 1;
67616       int _v = 0;
67617       {
67618         void *vptr = 0;
67619         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
67620         _v = SWIG_CheckState(res);
67621       }
67622       if (!_v) goto check_4;
67623       _ranki += _v*_pi;
67624       _rankm += _pi;
67625       _pi *= SWIG_MAXCASTRANK;
67626       {
67627         {
67628           {
67629             /* wrapped vector? */
67630             std::vector< double >* v;
67631             if (SWIG_ConvertPtr(ST(1),(void **) &v,
67632                 SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
67633               _v = 1;
67634             } else if (SvROK(ST(1))) {
67635               /* native sequence? */
67636               AV *av = (AV *)SvRV(ST(1));
67637               if (SvTYPE(av) == SVt_PVAV) {
67638                 I32 len = av_len(av) + 1;
67639                 if (len == 0) {
67640                   /* an empty sequence can be of any type */
67641                   _v = 1;
67642                 } else {
67643                   /* check the first element only */
67644                   SV **tv = av_fetch(av, 0, 0);
67645                   if (SvNIOK(*tv))
67646                   _v = 1;
67647                   else
67648                   _v = 0;
67649                 }
67650               }
67651             } else {
67652               _v = 0;
67653             }
67654           }
67655         }
67656       }
67657       if (!_v) goto check_4;
67658       _ranki += _v*_pi;
67659       _rankm += _pi;
67660       _pi *= SWIG_MAXCASTRANK;
67661       {
67662         {
67663           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
67664           _v = SWIG_CheckState(res);
67665         }
67666       }
67667       if (!_v) goto check_4;
67668       _ranki += _v*_pi;
67669       _rankm += _pi;
67670       _pi *= SWIG_MAXCASTRANK;
67671       if (!_index || (_ranki < _rank)) {
67672         _rank = _ranki; _index = 4;
67673         if (_rank == _rankm) goto dispatch;
67674       }
67675     }
67676   check_4:
67677 
67678   dispatch:
67679     switch(_index) {
67680     case 1:
67681       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_set_stack__SWIG_1); return;
67682     case 2:
67683       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_set_stack__SWIG_3); return;
67684     case 3:
67685       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_set_stack__SWIG_2); return;
67686     case 4:
67687       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_set_stack__SWIG_0); return;
67688     }
67689   }
67690 
67691   croak("No matching function for overloaded 'fold_compound_sc_set_stack'");
67692   XSRETURN(0);
67693 }
67694 
67695 
XS(_wrap_fold_compound_sc_add_stack__SWIG_0)67696 XS(_wrap_fold_compound_sc_add_stack__SWIG_0) {
67697   {
67698     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
67699     int arg2 ;
67700     double arg3 ;
67701     unsigned int arg4 ;
67702     void *argp1 = 0 ;
67703     int res1 = 0 ;
67704     int val2 ;
67705     int ecode2 = 0 ;
67706     double val3 ;
67707     int ecode3 = 0 ;
67708     unsigned int val4 ;
67709     int ecode4 = 0 ;
67710     int argvi = 0;
67711     int result;
67712     dXSARGS;
67713 
67714     if ((items < 4) || (items > 4)) {
67715       SWIG_croak("Usage: fold_compound_sc_add_stack(self,i,energy,options);");
67716     }
67717     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
67718     if (!SWIG_IsOK(res1)) {
67719       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_stack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
67720     }
67721     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
67722     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
67723     if (!SWIG_IsOK(ecode2)) {
67724       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_sc_add_stack" "', argument " "2"" of type '" "int""'");
67725     }
67726     arg2 = static_cast< int >(val2);
67727     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
67728     if (!SWIG_IsOK(ecode3)) {
67729       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_add_stack" "', argument " "3"" of type '" "double""'");
67730     }
67731     arg3 = static_cast< double >(val3);
67732     ecode4 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
67733     if (!SWIG_IsOK(ecode4)) {
67734       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_sc_add_stack" "', argument " "4"" of type '" "unsigned int""'");
67735     }
67736     arg4 = static_cast< unsigned int >(val4);
67737     {
67738       try {
67739         result = (int)vrna_fold_compound_t_sc_add_stack__SWIG_0(arg1,arg2,arg3,arg4);
67740       } catch (const std::exception& e) {
67741         SWIG_exception(SWIG_RuntimeError, e.what());
67742       }
67743     }
67744     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
67745 
67746 
67747 
67748 
67749     XSRETURN(argvi);
67750   fail:
67751 
67752 
67753 
67754 
67755     SWIG_croak_null();
67756   }
67757 }
67758 
67759 
XS(_wrap_fold_compound_sc_add_stack__SWIG_1)67760 XS(_wrap_fold_compound_sc_add_stack__SWIG_1) {
67761   {
67762     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
67763     int arg2 ;
67764     double arg3 ;
67765     void *argp1 = 0 ;
67766     int res1 = 0 ;
67767     int val2 ;
67768     int ecode2 = 0 ;
67769     double val3 ;
67770     int ecode3 = 0 ;
67771     int argvi = 0;
67772     int result;
67773     dXSARGS;
67774 
67775     if ((items < 3) || (items > 3)) {
67776       SWIG_croak("Usage: fold_compound_sc_add_stack(self,i,energy);");
67777     }
67778     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
67779     if (!SWIG_IsOK(res1)) {
67780       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_stack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
67781     }
67782     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
67783     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
67784     if (!SWIG_IsOK(ecode2)) {
67785       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_sc_add_stack" "', argument " "2"" of type '" "int""'");
67786     }
67787     arg2 = static_cast< int >(val2);
67788     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
67789     if (!SWIG_IsOK(ecode3)) {
67790       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_add_stack" "', argument " "3"" of type '" "double""'");
67791     }
67792     arg3 = static_cast< double >(val3);
67793     {
67794       try {
67795         result = (int)vrna_fold_compound_t_sc_add_stack__SWIG_0(arg1,arg2,arg3);
67796       } catch (const std::exception& e) {
67797         SWIG_exception(SWIG_RuntimeError, e.what());
67798       }
67799     }
67800     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
67801 
67802 
67803 
67804     XSRETURN(argvi);
67805   fail:
67806 
67807 
67808 
67809     SWIG_croak_null();
67810   }
67811 }
67812 
67813 
XS(_wrap_fold_compound_sc_add_stack__SWIG_2)67814 XS(_wrap_fold_compound_sc_add_stack__SWIG_2) {
67815   {
67816     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
67817     int arg2 ;
67818     std::vector< double > arg3 ;
67819     unsigned int arg4 ;
67820     void *argp1 = 0 ;
67821     int res1 = 0 ;
67822     int val2 ;
67823     int ecode2 = 0 ;
67824     std::vector< double > *v3 ;
67825     unsigned int val4 ;
67826     int ecode4 = 0 ;
67827     int argvi = 0;
67828     int result;
67829     dXSARGS;
67830 
67831     if ((items < 4) || (items > 4)) {
67832       SWIG_croak("Usage: fold_compound_sc_add_stack(self,i,energies,options);");
67833     }
67834     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
67835     if (!SWIG_IsOK(res1)) {
67836       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_stack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
67837     }
67838     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
67839     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
67840     if (!SWIG_IsOK(ecode2)) {
67841       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_sc_add_stack" "', argument " "2"" of type '" "int""'");
67842     }
67843     arg2 = static_cast< int >(val2);
67844     {
67845       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
67846           SWIGTYPE_p_std__vectorT_double_t,1) != -1){
67847         arg3 = *v3;
67848       } else if (SvROK(ST(2))) {
67849         AV *av = (AV *)SvRV(ST(2));
67850         if (SvTYPE(av) != SVt_PVAV)
67851         SWIG_croak("Type error in argument 3 of fold_compound_sc_add_stack. "
67852           "Expected an array of ""double");
67853         SV **tv;
67854         I32 len = av_len(av) + 1;
67855         for (int i=0; i<len; i++) {
67856           tv = av_fetch(av, i, 0);
67857           if (SvNIOK(*tv)) {
67858             (&arg3)->push_back((double)SwigSvToNumber(*tv));
67859           } else {
67860             SWIG_croak("Type error in argument 3 of "
67861               "fold_compound_sc_add_stack. "
67862               "Expected an array of ""double");
67863           }
67864         }
67865       } else {
67866         SWIG_croak("Type error in argument 3 of fold_compound_sc_add_stack. "
67867           "Expected an array of ""double");
67868       }
67869     }
67870     ecode4 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
67871     if (!SWIG_IsOK(ecode4)) {
67872       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_sc_add_stack" "', argument " "4"" of type '" "unsigned int""'");
67873     }
67874     arg4 = static_cast< unsigned int >(val4);
67875     {
67876       try {
67877         result = (int)vrna_fold_compound_t_sc_add_stack__SWIG_2(arg1,arg2,arg3,arg4);
67878       } catch (const std::exception& e) {
67879         SWIG_exception(SWIG_RuntimeError, e.what());
67880       }
67881     }
67882     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
67883 
67884 
67885 
67886     XSRETURN(argvi);
67887   fail:
67888 
67889 
67890 
67891     SWIG_croak_null();
67892   }
67893 }
67894 
67895 
XS(_wrap_fold_compound_sc_add_stack__SWIG_3)67896 XS(_wrap_fold_compound_sc_add_stack__SWIG_3) {
67897   {
67898     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
67899     int arg2 ;
67900     std::vector< double > arg3 ;
67901     void *argp1 = 0 ;
67902     int res1 = 0 ;
67903     int val2 ;
67904     int ecode2 = 0 ;
67905     std::vector< double > *v3 ;
67906     int argvi = 0;
67907     int result;
67908     dXSARGS;
67909 
67910     if ((items < 3) || (items > 3)) {
67911       SWIG_croak("Usage: fold_compound_sc_add_stack(self,i,energies);");
67912     }
67913     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
67914     if (!SWIG_IsOK(res1)) {
67915       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_stack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
67916     }
67917     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
67918     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
67919     if (!SWIG_IsOK(ecode2)) {
67920       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_sc_add_stack" "', argument " "2"" of type '" "int""'");
67921     }
67922     arg2 = static_cast< int >(val2);
67923     {
67924       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
67925           SWIGTYPE_p_std__vectorT_double_t,1) != -1){
67926         arg3 = *v3;
67927       } else if (SvROK(ST(2))) {
67928         AV *av = (AV *)SvRV(ST(2));
67929         if (SvTYPE(av) != SVt_PVAV)
67930         SWIG_croak("Type error in argument 3 of fold_compound_sc_add_stack. "
67931           "Expected an array of ""double");
67932         SV **tv;
67933         I32 len = av_len(av) + 1;
67934         for (int i=0; i<len; i++) {
67935           tv = av_fetch(av, i, 0);
67936           if (SvNIOK(*tv)) {
67937             (&arg3)->push_back((double)SwigSvToNumber(*tv));
67938           } else {
67939             SWIG_croak("Type error in argument 3 of "
67940               "fold_compound_sc_add_stack. "
67941               "Expected an array of ""double");
67942           }
67943         }
67944       } else {
67945         SWIG_croak("Type error in argument 3 of fold_compound_sc_add_stack. "
67946           "Expected an array of ""double");
67947       }
67948     }
67949     {
67950       try {
67951         result = (int)vrna_fold_compound_t_sc_add_stack__SWIG_2(arg1,arg2,arg3);
67952       } catch (const std::exception& e) {
67953         SWIG_exception(SWIG_RuntimeError, e.what());
67954       }
67955     }
67956     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
67957 
67958 
67959     XSRETURN(argvi);
67960   fail:
67961 
67962 
67963     SWIG_croak_null();
67964   }
67965 }
67966 
67967 
XS(_wrap_fold_compound_sc_add_stack)67968 XS(_wrap_fold_compound_sc_add_stack) {
67969   dXSARGS;
67970 
67971   {
67972     unsigned long _index = 0;
67973     SWIG_TypeRank _rank = 0;
67974     if (items == 3) {
67975       SWIG_TypeRank _ranki = 0;
67976       SWIG_TypeRank _rankm = 0;
67977       SWIG_TypeRank _pi = 1;
67978       int _v = 0;
67979       {
67980         void *vptr = 0;
67981         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
67982         _v = SWIG_CheckState(res);
67983       }
67984       if (!_v) goto check_1;
67985       _ranki += _v*_pi;
67986       _rankm += _pi;
67987       _pi *= SWIG_MAXCASTRANK;
67988       {
67989         {
67990           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
67991           _v = SWIG_CheckState(res);
67992         }
67993       }
67994       if (!_v) goto check_1;
67995       _ranki += _v*_pi;
67996       _rankm += _pi;
67997       _pi *= SWIG_MAXCASTRANK;
67998       {
67999         {
68000           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
68001           _v = SWIG_CheckState(res);
68002         }
68003       }
68004       if (!_v) goto check_1;
68005       _ranki += _v*_pi;
68006       _rankm += _pi;
68007       _pi *= SWIG_MAXCASTRANK;
68008       if (!_index || (_ranki < _rank)) {
68009         _rank = _ranki; _index = 1;
68010         if (_rank == _rankm) goto dispatch;
68011       }
68012     }
68013   check_1:
68014 
68015     if (items == 3) {
68016       SWIG_TypeRank _ranki = 0;
68017       SWIG_TypeRank _rankm = 0;
68018       SWIG_TypeRank _pi = 1;
68019       int _v = 0;
68020       {
68021         void *vptr = 0;
68022         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
68023         _v = SWIG_CheckState(res);
68024       }
68025       if (!_v) goto check_2;
68026       _ranki += _v*_pi;
68027       _rankm += _pi;
68028       _pi *= SWIG_MAXCASTRANK;
68029       {
68030         {
68031           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
68032           _v = SWIG_CheckState(res);
68033         }
68034       }
68035       if (!_v) goto check_2;
68036       _ranki += _v*_pi;
68037       _rankm += _pi;
68038       _pi *= SWIG_MAXCASTRANK;
68039       {
68040         {
68041           {
68042             /* wrapped vector? */
68043             std::vector< double >* v;
68044             if (SWIG_ConvertPtr(ST(2),(void **) &v,
68045                 SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
68046               _v = 1;
68047             } else if (SvROK(ST(2))) {
68048               /* native sequence? */
68049               AV *av = (AV *)SvRV(ST(2));
68050               if (SvTYPE(av) == SVt_PVAV) {
68051                 I32 len = av_len(av) + 1;
68052                 if (len == 0) {
68053                   /* an empty sequence can be of any type */
68054                   _v = 1;
68055                 } else {
68056                   /* check the first element only */
68057                   SV **tv = av_fetch(av, 0, 0);
68058                   if (SvNIOK(*tv))
68059                   _v = 1;
68060                   else
68061                   _v = 0;
68062                 }
68063               }
68064             } else {
68065               _v = 0;
68066             }
68067           }
68068         }
68069       }
68070       if (!_v) goto check_2;
68071       _ranki += _v*_pi;
68072       _rankm += _pi;
68073       _pi *= SWIG_MAXCASTRANK;
68074       if (!_index || (_ranki < _rank)) {
68075         _rank = _ranki; _index = 2;
68076         if (_rank == _rankm) goto dispatch;
68077       }
68078     }
68079   check_2:
68080 
68081     if (items == 4) {
68082       SWIG_TypeRank _ranki = 0;
68083       SWIG_TypeRank _rankm = 0;
68084       SWIG_TypeRank _pi = 1;
68085       int _v = 0;
68086       {
68087         void *vptr = 0;
68088         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
68089         _v = SWIG_CheckState(res);
68090       }
68091       if (!_v) goto check_3;
68092       _ranki += _v*_pi;
68093       _rankm += _pi;
68094       _pi *= SWIG_MAXCASTRANK;
68095       {
68096         {
68097           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
68098           _v = SWIG_CheckState(res);
68099         }
68100       }
68101       if (!_v) goto check_3;
68102       _ranki += _v*_pi;
68103       _rankm += _pi;
68104       _pi *= SWIG_MAXCASTRANK;
68105       {
68106         {
68107           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
68108           _v = SWIG_CheckState(res);
68109         }
68110       }
68111       if (!_v) goto check_3;
68112       _ranki += _v*_pi;
68113       _rankm += _pi;
68114       _pi *= SWIG_MAXCASTRANK;
68115       {
68116         {
68117           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
68118           _v = SWIG_CheckState(res);
68119         }
68120       }
68121       if (!_v) goto check_3;
68122       _ranki += _v*_pi;
68123       _rankm += _pi;
68124       _pi *= SWIG_MAXCASTRANK;
68125       if (!_index || (_ranki < _rank)) {
68126         _rank = _ranki; _index = 3;
68127         if (_rank == _rankm) goto dispatch;
68128       }
68129     }
68130   check_3:
68131 
68132     if (items == 4) {
68133       SWIG_TypeRank _ranki = 0;
68134       SWIG_TypeRank _rankm = 0;
68135       SWIG_TypeRank _pi = 1;
68136       int _v = 0;
68137       {
68138         void *vptr = 0;
68139         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
68140         _v = SWIG_CheckState(res);
68141       }
68142       if (!_v) goto check_4;
68143       _ranki += _v*_pi;
68144       _rankm += _pi;
68145       _pi *= SWIG_MAXCASTRANK;
68146       {
68147         {
68148           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
68149           _v = SWIG_CheckState(res);
68150         }
68151       }
68152       if (!_v) goto check_4;
68153       _ranki += _v*_pi;
68154       _rankm += _pi;
68155       _pi *= SWIG_MAXCASTRANK;
68156       {
68157         {
68158           {
68159             /* wrapped vector? */
68160             std::vector< double >* v;
68161             if (SWIG_ConvertPtr(ST(2),(void **) &v,
68162                 SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
68163               _v = 1;
68164             } else if (SvROK(ST(2))) {
68165               /* native sequence? */
68166               AV *av = (AV *)SvRV(ST(2));
68167               if (SvTYPE(av) == SVt_PVAV) {
68168                 I32 len = av_len(av) + 1;
68169                 if (len == 0) {
68170                   /* an empty sequence can be of any type */
68171                   _v = 1;
68172                 } else {
68173                   /* check the first element only */
68174                   SV **tv = av_fetch(av, 0, 0);
68175                   if (SvNIOK(*tv))
68176                   _v = 1;
68177                   else
68178                   _v = 0;
68179                 }
68180               }
68181             } else {
68182               _v = 0;
68183             }
68184           }
68185         }
68186       }
68187       if (!_v) goto check_4;
68188       _ranki += _v*_pi;
68189       _rankm += _pi;
68190       _pi *= SWIG_MAXCASTRANK;
68191       {
68192         {
68193           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
68194           _v = SWIG_CheckState(res);
68195         }
68196       }
68197       if (!_v) goto check_4;
68198       _ranki += _v*_pi;
68199       _rankm += _pi;
68200       _pi *= SWIG_MAXCASTRANK;
68201       if (!_index || (_ranki < _rank)) {
68202         _rank = _ranki; _index = 4;
68203         if (_rank == _rankm) goto dispatch;
68204       }
68205     }
68206   check_4:
68207 
68208   dispatch:
68209     switch(_index) {
68210     case 1:
68211       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_stack__SWIG_1); return;
68212     case 2:
68213       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_stack__SWIG_3); return;
68214     case 3:
68215       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_stack__SWIG_0); return;
68216     case 4:
68217       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_stack__SWIG_2); return;
68218     }
68219   }
68220 
68221   croak("No matching function for overloaded 'fold_compound_sc_add_stack'");
68222   XSRETURN(0);
68223 }
68224 
68225 
XS(_wrap_fold_compound_sc_add_SHAPE_deigan__SWIG_0)68226 XS(_wrap_fold_compound_sc_add_SHAPE_deigan__SWIG_0) {
68227   {
68228     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
68229     std::vector< double > arg2 ;
68230     double arg3 ;
68231     double arg4 ;
68232     unsigned int arg5 ;
68233     void *argp1 = 0 ;
68234     int res1 = 0 ;
68235     std::vector< double > *v2 ;
68236     double val3 ;
68237     int ecode3 = 0 ;
68238     double val4 ;
68239     int ecode4 = 0 ;
68240     unsigned int val5 ;
68241     int ecode5 = 0 ;
68242     int argvi = 0;
68243     int result;
68244     dXSARGS;
68245 
68246     if ((items < 5) || (items > 5)) {
68247       SWIG_croak("Usage: fold_compound_sc_add_SHAPE_deigan(self,reactivities,m,b,options);");
68248     }
68249     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
68250     if (!SWIG_IsOK(res1)) {
68251       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_SHAPE_deigan" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
68252     }
68253     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
68254     {
68255       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
68256           SWIGTYPE_p_std__vectorT_double_t,1) != -1){
68257         arg2 = *v2;
68258       } else if (SvROK(ST(1))) {
68259         AV *av = (AV *)SvRV(ST(1));
68260         if (SvTYPE(av) != SVt_PVAV)
68261         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_SHAPE_deigan. "
68262           "Expected an array of ""double");
68263         SV **tv;
68264         I32 len = av_len(av) + 1;
68265         for (int i=0; i<len; i++) {
68266           tv = av_fetch(av, i, 0);
68267           if (SvNIOK(*tv)) {
68268             (&arg2)->push_back((double)SwigSvToNumber(*tv));
68269           } else {
68270             SWIG_croak("Type error in argument 2 of "
68271               "fold_compound_sc_add_SHAPE_deigan. "
68272               "Expected an array of ""double");
68273           }
68274         }
68275       } else {
68276         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_SHAPE_deigan. "
68277           "Expected an array of ""double");
68278       }
68279     }
68280     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
68281     if (!SWIG_IsOK(ecode3)) {
68282       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_add_SHAPE_deigan" "', argument " "3"" of type '" "double""'");
68283     }
68284     arg3 = static_cast< double >(val3);
68285     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
68286     if (!SWIG_IsOK(ecode4)) {
68287       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_sc_add_SHAPE_deigan" "', argument " "4"" of type '" "double""'");
68288     }
68289     arg4 = static_cast< double >(val4);
68290     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
68291     if (!SWIG_IsOK(ecode5)) {
68292       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_sc_add_SHAPE_deigan" "', argument " "5"" of type '" "unsigned int""'");
68293     }
68294     arg5 = static_cast< unsigned int >(val5);
68295     {
68296       try {
68297         result = (int)vrna_fold_compound_t_sc_add_SHAPE_deigan__SWIG_0(arg1,arg2,arg3,arg4,arg5);
68298       } catch (const std::exception& e) {
68299         SWIG_exception(SWIG_RuntimeError, e.what());
68300       }
68301     }
68302     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
68303 
68304 
68305 
68306 
68307     XSRETURN(argvi);
68308   fail:
68309 
68310 
68311 
68312 
68313     SWIG_croak_null();
68314   }
68315 }
68316 
68317 
XS(_wrap_fold_compound_sc_add_SHAPE_deigan__SWIG_1)68318 XS(_wrap_fold_compound_sc_add_SHAPE_deigan__SWIG_1) {
68319   {
68320     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
68321     std::vector< double > arg2 ;
68322     double arg3 ;
68323     double arg4 ;
68324     void *argp1 = 0 ;
68325     int res1 = 0 ;
68326     std::vector< double > *v2 ;
68327     double val3 ;
68328     int ecode3 = 0 ;
68329     double val4 ;
68330     int ecode4 = 0 ;
68331     int argvi = 0;
68332     int result;
68333     dXSARGS;
68334 
68335     if ((items < 4) || (items > 4)) {
68336       SWIG_croak("Usage: fold_compound_sc_add_SHAPE_deigan(self,reactivities,m,b);");
68337     }
68338     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
68339     if (!SWIG_IsOK(res1)) {
68340       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_SHAPE_deigan" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
68341     }
68342     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
68343     {
68344       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
68345           SWIGTYPE_p_std__vectorT_double_t,1) != -1){
68346         arg2 = *v2;
68347       } else if (SvROK(ST(1))) {
68348         AV *av = (AV *)SvRV(ST(1));
68349         if (SvTYPE(av) != SVt_PVAV)
68350         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_SHAPE_deigan. "
68351           "Expected an array of ""double");
68352         SV **tv;
68353         I32 len = av_len(av) + 1;
68354         for (int i=0; i<len; i++) {
68355           tv = av_fetch(av, i, 0);
68356           if (SvNIOK(*tv)) {
68357             (&arg2)->push_back((double)SwigSvToNumber(*tv));
68358           } else {
68359             SWIG_croak("Type error in argument 2 of "
68360               "fold_compound_sc_add_SHAPE_deigan. "
68361               "Expected an array of ""double");
68362           }
68363         }
68364       } else {
68365         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_SHAPE_deigan. "
68366           "Expected an array of ""double");
68367       }
68368     }
68369     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
68370     if (!SWIG_IsOK(ecode3)) {
68371       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_add_SHAPE_deigan" "', argument " "3"" of type '" "double""'");
68372     }
68373     arg3 = static_cast< double >(val3);
68374     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
68375     if (!SWIG_IsOK(ecode4)) {
68376       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_sc_add_SHAPE_deigan" "', argument " "4"" of type '" "double""'");
68377     }
68378     arg4 = static_cast< double >(val4);
68379     {
68380       try {
68381         result = (int)vrna_fold_compound_t_sc_add_SHAPE_deigan__SWIG_0(arg1,arg2,arg3,arg4);
68382       } catch (const std::exception& e) {
68383         SWIG_exception(SWIG_RuntimeError, e.what());
68384       }
68385     }
68386     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
68387 
68388 
68389 
68390     XSRETURN(argvi);
68391   fail:
68392 
68393 
68394 
68395     SWIG_croak_null();
68396   }
68397 }
68398 
68399 
XS(_wrap_fold_compound_sc_add_SHAPE_deigan)68400 XS(_wrap_fold_compound_sc_add_SHAPE_deigan) {
68401   dXSARGS;
68402 
68403   {
68404     unsigned long _index = 0;
68405     SWIG_TypeRank _rank = 0;
68406     if (items == 4) {
68407       SWIG_TypeRank _ranki = 0;
68408       SWIG_TypeRank _rankm = 0;
68409       SWIG_TypeRank _pi = 1;
68410       int _v = 0;
68411       {
68412         void *vptr = 0;
68413         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
68414         _v = SWIG_CheckState(res);
68415       }
68416       if (!_v) goto check_1;
68417       _ranki += _v*_pi;
68418       _rankm += _pi;
68419       _pi *= SWIG_MAXCASTRANK;
68420       {
68421         {
68422           {
68423             /* wrapped vector? */
68424             std::vector< double >* v;
68425             if (SWIG_ConvertPtr(ST(1),(void **) &v,
68426                 SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
68427               _v = 1;
68428             } else if (SvROK(ST(1))) {
68429               /* native sequence? */
68430               AV *av = (AV *)SvRV(ST(1));
68431               if (SvTYPE(av) == SVt_PVAV) {
68432                 I32 len = av_len(av) + 1;
68433                 if (len == 0) {
68434                   /* an empty sequence can be of any type */
68435                   _v = 1;
68436                 } else {
68437                   /* check the first element only */
68438                   SV **tv = av_fetch(av, 0, 0);
68439                   if (SvNIOK(*tv))
68440                   _v = 1;
68441                   else
68442                   _v = 0;
68443                 }
68444               }
68445             } else {
68446               _v = 0;
68447             }
68448           }
68449         }
68450       }
68451       if (!_v) goto check_1;
68452       _ranki += _v*_pi;
68453       _rankm += _pi;
68454       _pi *= SWIG_MAXCASTRANK;
68455       {
68456         {
68457           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
68458           _v = SWIG_CheckState(res);
68459         }
68460       }
68461       if (!_v) goto check_1;
68462       _ranki += _v*_pi;
68463       _rankm += _pi;
68464       _pi *= SWIG_MAXCASTRANK;
68465       {
68466         {
68467           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
68468           _v = SWIG_CheckState(res);
68469         }
68470       }
68471       if (!_v) goto check_1;
68472       _ranki += _v*_pi;
68473       _rankm += _pi;
68474       _pi *= SWIG_MAXCASTRANK;
68475       if (!_index || (_ranki < _rank)) {
68476         _rank = _ranki; _index = 1;
68477         if (_rank == _rankm) goto dispatch;
68478       }
68479     }
68480   check_1:
68481 
68482     if (items == 5) {
68483       SWIG_TypeRank _ranki = 0;
68484       SWIG_TypeRank _rankm = 0;
68485       SWIG_TypeRank _pi = 1;
68486       int _v = 0;
68487       {
68488         void *vptr = 0;
68489         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
68490         _v = SWIG_CheckState(res);
68491       }
68492       if (!_v) goto check_2;
68493       _ranki += _v*_pi;
68494       _rankm += _pi;
68495       _pi *= SWIG_MAXCASTRANK;
68496       {
68497         {
68498           {
68499             /* wrapped vector? */
68500             std::vector< double >* v;
68501             if (SWIG_ConvertPtr(ST(1),(void **) &v,
68502                 SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
68503               _v = 1;
68504             } else if (SvROK(ST(1))) {
68505               /* native sequence? */
68506               AV *av = (AV *)SvRV(ST(1));
68507               if (SvTYPE(av) == SVt_PVAV) {
68508                 I32 len = av_len(av) + 1;
68509                 if (len == 0) {
68510                   /* an empty sequence can be of any type */
68511                   _v = 1;
68512                 } else {
68513                   /* check the first element only */
68514                   SV **tv = av_fetch(av, 0, 0);
68515                   if (SvNIOK(*tv))
68516                   _v = 1;
68517                   else
68518                   _v = 0;
68519                 }
68520               }
68521             } else {
68522               _v = 0;
68523             }
68524           }
68525         }
68526       }
68527       if (!_v) goto check_2;
68528       _ranki += _v*_pi;
68529       _rankm += _pi;
68530       _pi *= SWIG_MAXCASTRANK;
68531       {
68532         {
68533           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
68534           _v = SWIG_CheckState(res);
68535         }
68536       }
68537       if (!_v) goto check_2;
68538       _ranki += _v*_pi;
68539       _rankm += _pi;
68540       _pi *= SWIG_MAXCASTRANK;
68541       {
68542         {
68543           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
68544           _v = SWIG_CheckState(res);
68545         }
68546       }
68547       if (!_v) goto check_2;
68548       _ranki += _v*_pi;
68549       _rankm += _pi;
68550       _pi *= SWIG_MAXCASTRANK;
68551       {
68552         {
68553           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
68554           _v = SWIG_CheckState(res);
68555         }
68556       }
68557       if (!_v) goto check_2;
68558       _ranki += _v*_pi;
68559       _rankm += _pi;
68560       _pi *= SWIG_MAXCASTRANK;
68561       if (!_index || (_ranki < _rank)) {
68562         _rank = _ranki; _index = 2;
68563         if (_rank == _rankm) goto dispatch;
68564       }
68565     }
68566   check_2:
68567 
68568   dispatch:
68569     switch(_index) {
68570     case 1:
68571       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_SHAPE_deigan__SWIG_1); return;
68572     case 2:
68573       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_SHAPE_deigan__SWIG_0); return;
68574     }
68575   }
68576 
68577   croak("No matching function for overloaded 'fold_compound_sc_add_SHAPE_deigan'");
68578   XSRETURN(0);
68579 }
68580 
68581 
XS(_wrap_fold_compound_sc_add_SHAPE_deigan_ali__SWIG_0)68582 XS(_wrap_fold_compound_sc_add_SHAPE_deigan_ali__SWIG_0) {
68583   {
68584     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
68585     std::vector< std::string > arg2 ;
68586     std::vector< int > arg3 ;
68587     double arg4 ;
68588     double arg5 ;
68589     unsigned int arg6 ;
68590     void *argp1 = 0 ;
68591     int res1 = 0 ;
68592     std::vector< std::string > *v2 ;
68593     std::vector< int > *v3 ;
68594     double val4 ;
68595     int ecode4 = 0 ;
68596     double val5 ;
68597     int ecode5 = 0 ;
68598     unsigned int val6 ;
68599     int ecode6 = 0 ;
68600     int argvi = 0;
68601     int result;
68602     dXSARGS;
68603 
68604     if ((items < 6) || (items > 6)) {
68605       SWIG_croak("Usage: fold_compound_sc_add_SHAPE_deigan_ali(self,shape_files,shape_file_association,m,b,options);");
68606     }
68607     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
68608     if (!SWIG_IsOK(res1)) {
68609       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_SHAPE_deigan_ali" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
68610     }
68611     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
68612     {
68613       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
68614           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
68615         arg2 = *v2;
68616       } else if (SvROK(ST(1))) {
68617         AV *av = (AV *)SvRV(ST(1));
68618         if (SvTYPE(av) != SVt_PVAV)
68619         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_SHAPE_deigan_ali. "
68620           "Expected an array of ""std::string");
68621         SV **tv;
68622         I32 len = av_len(av) + 1;
68623         for (int i=0; i<len; i++) {
68624           tv = av_fetch(av, i, 0);
68625           if (SvPOK(*tv)) {
68626             (&arg2)->push_back((std::string)SwigSvToString(*tv));
68627           } else {
68628             SWIG_croak("Type error in argument 2 of "
68629               "fold_compound_sc_add_SHAPE_deigan_ali. "
68630               "Expected an array of ""std::string");
68631           }
68632         }
68633       } else {
68634         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_SHAPE_deigan_ali. "
68635           "Expected an array of ""std::string");
68636       }
68637     }
68638     {
68639       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
68640           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
68641         arg3 = *v3;
68642       } else if (SvROK(ST(2))) {
68643         AV *av = (AV *)SvRV(ST(2));
68644         if (SvTYPE(av) != SVt_PVAV)
68645         SWIG_croak("Type error in argument 3 of fold_compound_sc_add_SHAPE_deigan_ali. "
68646           "Expected an array of ""int");
68647         SV **tv;
68648         I32 len = av_len(av) + 1;
68649         for (int i=0; i<len; i++) {
68650           tv = av_fetch(av, i, 0);
68651           if (SvIOK(*tv)) {
68652             (&arg3)->push_back((int)SvIVX(*tv));
68653           } else {
68654             SWIG_croak("Type error in argument 3 of "
68655               "fold_compound_sc_add_SHAPE_deigan_ali. "
68656               "Expected an array of ""int");
68657           }
68658         }
68659       } else {
68660         SWIG_croak("Type error in argument 3 of fold_compound_sc_add_SHAPE_deigan_ali. "
68661           "Expected an array of ""int");
68662       }
68663     }
68664     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
68665     if (!SWIG_IsOK(ecode4)) {
68666       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_sc_add_SHAPE_deigan_ali" "', argument " "4"" of type '" "double""'");
68667     }
68668     arg4 = static_cast< double >(val4);
68669     ecode5 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
68670     if (!SWIG_IsOK(ecode5)) {
68671       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_sc_add_SHAPE_deigan_ali" "', argument " "5"" of type '" "double""'");
68672     }
68673     arg5 = static_cast< double >(val5);
68674     ecode6 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
68675     if (!SWIG_IsOK(ecode6)) {
68676       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "fold_compound_sc_add_SHAPE_deigan_ali" "', argument " "6"" of type '" "unsigned int""'");
68677     }
68678     arg6 = static_cast< unsigned int >(val6);
68679     {
68680       try {
68681         result = (int)vrna_fold_compound_t_sc_add_SHAPE_deigan_ali__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6);
68682       } catch (const std::exception& e) {
68683         SWIG_exception(SWIG_RuntimeError, e.what());
68684       }
68685     }
68686     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
68687 
68688 
68689 
68690 
68691     XSRETURN(argvi);
68692   fail:
68693 
68694 
68695 
68696 
68697     SWIG_croak_null();
68698   }
68699 }
68700 
68701 
XS(_wrap_fold_compound_sc_add_SHAPE_deigan_ali__SWIG_1)68702 XS(_wrap_fold_compound_sc_add_SHAPE_deigan_ali__SWIG_1) {
68703   {
68704     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
68705     std::vector< std::string > arg2 ;
68706     std::vector< int > arg3 ;
68707     double arg4 ;
68708     double arg5 ;
68709     void *argp1 = 0 ;
68710     int res1 = 0 ;
68711     std::vector< std::string > *v2 ;
68712     std::vector< int > *v3 ;
68713     double val4 ;
68714     int ecode4 = 0 ;
68715     double val5 ;
68716     int ecode5 = 0 ;
68717     int argvi = 0;
68718     int result;
68719     dXSARGS;
68720 
68721     if ((items < 5) || (items > 5)) {
68722       SWIG_croak("Usage: fold_compound_sc_add_SHAPE_deigan_ali(self,shape_files,shape_file_association,m,b);");
68723     }
68724     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
68725     if (!SWIG_IsOK(res1)) {
68726       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_SHAPE_deigan_ali" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
68727     }
68728     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
68729     {
68730       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
68731           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
68732         arg2 = *v2;
68733       } else if (SvROK(ST(1))) {
68734         AV *av = (AV *)SvRV(ST(1));
68735         if (SvTYPE(av) != SVt_PVAV)
68736         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_SHAPE_deigan_ali. "
68737           "Expected an array of ""std::string");
68738         SV **tv;
68739         I32 len = av_len(av) + 1;
68740         for (int i=0; i<len; i++) {
68741           tv = av_fetch(av, i, 0);
68742           if (SvPOK(*tv)) {
68743             (&arg2)->push_back((std::string)SwigSvToString(*tv));
68744           } else {
68745             SWIG_croak("Type error in argument 2 of "
68746               "fold_compound_sc_add_SHAPE_deigan_ali. "
68747               "Expected an array of ""std::string");
68748           }
68749         }
68750       } else {
68751         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_SHAPE_deigan_ali. "
68752           "Expected an array of ""std::string");
68753       }
68754     }
68755     {
68756       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
68757           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
68758         arg3 = *v3;
68759       } else if (SvROK(ST(2))) {
68760         AV *av = (AV *)SvRV(ST(2));
68761         if (SvTYPE(av) != SVt_PVAV)
68762         SWIG_croak("Type error in argument 3 of fold_compound_sc_add_SHAPE_deigan_ali. "
68763           "Expected an array of ""int");
68764         SV **tv;
68765         I32 len = av_len(av) + 1;
68766         for (int i=0; i<len; i++) {
68767           tv = av_fetch(av, i, 0);
68768           if (SvIOK(*tv)) {
68769             (&arg3)->push_back((int)SvIVX(*tv));
68770           } else {
68771             SWIG_croak("Type error in argument 3 of "
68772               "fold_compound_sc_add_SHAPE_deigan_ali. "
68773               "Expected an array of ""int");
68774           }
68775         }
68776       } else {
68777         SWIG_croak("Type error in argument 3 of fold_compound_sc_add_SHAPE_deigan_ali. "
68778           "Expected an array of ""int");
68779       }
68780     }
68781     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
68782     if (!SWIG_IsOK(ecode4)) {
68783       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_sc_add_SHAPE_deigan_ali" "', argument " "4"" of type '" "double""'");
68784     }
68785     arg4 = static_cast< double >(val4);
68786     ecode5 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
68787     if (!SWIG_IsOK(ecode5)) {
68788       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_sc_add_SHAPE_deigan_ali" "', argument " "5"" of type '" "double""'");
68789     }
68790     arg5 = static_cast< double >(val5);
68791     {
68792       try {
68793         result = (int)vrna_fold_compound_t_sc_add_SHAPE_deigan_ali__SWIG_0(arg1,arg2,arg3,arg4,arg5);
68794       } catch (const std::exception& e) {
68795         SWIG_exception(SWIG_RuntimeError, e.what());
68796       }
68797     }
68798     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
68799 
68800 
68801 
68802     XSRETURN(argvi);
68803   fail:
68804 
68805 
68806 
68807     SWIG_croak_null();
68808   }
68809 }
68810 
68811 
XS(_wrap_fold_compound_sc_add_SHAPE_deigan_ali)68812 XS(_wrap_fold_compound_sc_add_SHAPE_deigan_ali) {
68813   dXSARGS;
68814 
68815   {
68816     unsigned long _index = 0;
68817     SWIG_TypeRank _rank = 0;
68818     if (items == 5) {
68819       SWIG_TypeRank _ranki = 0;
68820       SWIG_TypeRank _rankm = 0;
68821       SWIG_TypeRank _pi = 1;
68822       int _v = 0;
68823       {
68824         void *vptr = 0;
68825         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
68826         _v = SWIG_CheckState(res);
68827       }
68828       if (!_v) goto check_1;
68829       _ranki += _v*_pi;
68830       _rankm += _pi;
68831       _pi *= SWIG_MAXCASTRANK;
68832       {
68833         {
68834           {
68835             /* wrapped vector? */
68836             std::vector< std::string >* v;
68837             if (SWIG_ConvertPtr(ST(1),(void **) &v,
68838                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
68839               _v = 1;
68840             } else if (SvROK(ST(1))) {
68841               /* native sequence? */
68842               AV *av = (AV *)SvRV(ST(1));
68843               if (SvTYPE(av) == SVt_PVAV) {
68844                 I32 len = av_len(av) + 1;
68845                 if (len == 0) {
68846                   /* an empty sequence can be of any type */
68847                   _v = 1;
68848                 } else {
68849                   /* check the first element only */
68850                   SV **tv = av_fetch(av, 0, 0);
68851                   if (SvPOK(*tv))
68852                   _v = 1;
68853                   else
68854                   _v = 0;
68855                 }
68856               }
68857             } else {
68858               _v = 0;
68859             }
68860           }
68861         }
68862       }
68863       if (!_v) goto check_1;
68864       _ranki += _v*_pi;
68865       _rankm += _pi;
68866       _pi *= SWIG_MAXCASTRANK;
68867       {
68868         {
68869           {
68870             /* wrapped vector? */
68871             std::vector< int >* v;
68872             if (SWIG_ConvertPtr(ST(2),(void **) &v,
68873                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
68874               _v = 1;
68875             } else if (SvROK(ST(2))) {
68876               /* native sequence? */
68877               AV *av = (AV *)SvRV(ST(2));
68878               if (SvTYPE(av) == SVt_PVAV) {
68879                 I32 len = av_len(av) + 1;
68880                 if (len == 0) {
68881                   /* an empty sequence can be of any type */
68882                   _v = 1;
68883                 } else {
68884                   /* check the first element only */
68885                   SV **tv = av_fetch(av, 0, 0);
68886                   if (SvIOK(*tv))
68887                   _v = 1;
68888                   else
68889                   _v = 0;
68890                 }
68891               }
68892             } else {
68893               _v = 0;
68894             }
68895           }
68896         }
68897       }
68898       if (!_v) goto check_1;
68899       _ranki += _v*_pi;
68900       _rankm += _pi;
68901       _pi *= SWIG_MAXCASTRANK;
68902       {
68903         {
68904           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
68905           _v = SWIG_CheckState(res);
68906         }
68907       }
68908       if (!_v) goto check_1;
68909       _ranki += _v*_pi;
68910       _rankm += _pi;
68911       _pi *= SWIG_MAXCASTRANK;
68912       {
68913         {
68914           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
68915           _v = SWIG_CheckState(res);
68916         }
68917       }
68918       if (!_v) goto check_1;
68919       _ranki += _v*_pi;
68920       _rankm += _pi;
68921       _pi *= SWIG_MAXCASTRANK;
68922       if (!_index || (_ranki < _rank)) {
68923         _rank = _ranki; _index = 1;
68924         if (_rank == _rankm) goto dispatch;
68925       }
68926     }
68927   check_1:
68928 
68929     if (items == 6) {
68930       SWIG_TypeRank _ranki = 0;
68931       SWIG_TypeRank _rankm = 0;
68932       SWIG_TypeRank _pi = 1;
68933       int _v = 0;
68934       {
68935         void *vptr = 0;
68936         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
68937         _v = SWIG_CheckState(res);
68938       }
68939       if (!_v) goto check_2;
68940       _ranki += _v*_pi;
68941       _rankm += _pi;
68942       _pi *= SWIG_MAXCASTRANK;
68943       {
68944         {
68945           {
68946             /* wrapped vector? */
68947             std::vector< std::string >* v;
68948             if (SWIG_ConvertPtr(ST(1),(void **) &v,
68949                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
68950               _v = 1;
68951             } else if (SvROK(ST(1))) {
68952               /* native sequence? */
68953               AV *av = (AV *)SvRV(ST(1));
68954               if (SvTYPE(av) == SVt_PVAV) {
68955                 I32 len = av_len(av) + 1;
68956                 if (len == 0) {
68957                   /* an empty sequence can be of any type */
68958                   _v = 1;
68959                 } else {
68960                   /* check the first element only */
68961                   SV **tv = av_fetch(av, 0, 0);
68962                   if (SvPOK(*tv))
68963                   _v = 1;
68964                   else
68965                   _v = 0;
68966                 }
68967               }
68968             } else {
68969               _v = 0;
68970             }
68971           }
68972         }
68973       }
68974       if (!_v) goto check_2;
68975       _ranki += _v*_pi;
68976       _rankm += _pi;
68977       _pi *= SWIG_MAXCASTRANK;
68978       {
68979         {
68980           {
68981             /* wrapped vector? */
68982             std::vector< int >* v;
68983             if (SWIG_ConvertPtr(ST(2),(void **) &v,
68984                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
68985               _v = 1;
68986             } else if (SvROK(ST(2))) {
68987               /* native sequence? */
68988               AV *av = (AV *)SvRV(ST(2));
68989               if (SvTYPE(av) == SVt_PVAV) {
68990                 I32 len = av_len(av) + 1;
68991                 if (len == 0) {
68992                   /* an empty sequence can be of any type */
68993                   _v = 1;
68994                 } else {
68995                   /* check the first element only */
68996                   SV **tv = av_fetch(av, 0, 0);
68997                   if (SvIOK(*tv))
68998                   _v = 1;
68999                   else
69000                   _v = 0;
69001                 }
69002               }
69003             } else {
69004               _v = 0;
69005             }
69006           }
69007         }
69008       }
69009       if (!_v) goto check_2;
69010       _ranki += _v*_pi;
69011       _rankm += _pi;
69012       _pi *= SWIG_MAXCASTRANK;
69013       {
69014         {
69015           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
69016           _v = SWIG_CheckState(res);
69017         }
69018       }
69019       if (!_v) goto check_2;
69020       _ranki += _v*_pi;
69021       _rankm += _pi;
69022       _pi *= SWIG_MAXCASTRANK;
69023       {
69024         {
69025           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
69026           _v = SWIG_CheckState(res);
69027         }
69028       }
69029       if (!_v) goto check_2;
69030       _ranki += _v*_pi;
69031       _rankm += _pi;
69032       _pi *= SWIG_MAXCASTRANK;
69033       {
69034         {
69035           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
69036           _v = SWIG_CheckState(res);
69037         }
69038       }
69039       if (!_v) goto check_2;
69040       _ranki += _v*_pi;
69041       _rankm += _pi;
69042       _pi *= SWIG_MAXCASTRANK;
69043       if (!_index || (_ranki < _rank)) {
69044         _rank = _ranki; _index = 2;
69045         if (_rank == _rankm) goto dispatch;
69046       }
69047     }
69048   check_2:
69049 
69050   dispatch:
69051     switch(_index) {
69052     case 1:
69053       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_SHAPE_deigan_ali__SWIG_1); return;
69054     case 2:
69055       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_SHAPE_deigan_ali__SWIG_0); return;
69056     }
69057   }
69058 
69059   croak("No matching function for overloaded 'fold_compound_sc_add_SHAPE_deigan_ali'");
69060   XSRETURN(0);
69061 }
69062 
69063 
XS(_wrap_fold_compound_sc_add_SHAPE_zarringhalam__SWIG_0)69064 XS(_wrap_fold_compound_sc_add_SHAPE_zarringhalam__SWIG_0) {
69065   {
69066     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
69067     std::vector< double > arg2 ;
69068     double arg3 ;
69069     double arg4 ;
69070     char *arg5 = (char *) 0 ;
69071     unsigned int arg6 ;
69072     void *argp1 = 0 ;
69073     int res1 = 0 ;
69074     std::vector< double > *v2 ;
69075     double val3 ;
69076     int ecode3 = 0 ;
69077     double val4 ;
69078     int ecode4 = 0 ;
69079     int res5 ;
69080     char *buf5 = 0 ;
69081     int alloc5 = 0 ;
69082     unsigned int val6 ;
69083     int ecode6 = 0 ;
69084     int argvi = 0;
69085     int result;
69086     dXSARGS;
69087 
69088     if ((items < 6) || (items > 6)) {
69089       SWIG_croak("Usage: fold_compound_sc_add_SHAPE_zarringhalam(self,reactivities,b,default_value,shape_conversion,options);");
69090     }
69091     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
69092     if (!SWIG_IsOK(res1)) {
69093       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_SHAPE_zarringhalam" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
69094     }
69095     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
69096     {
69097       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
69098           SWIGTYPE_p_std__vectorT_double_t,1) != -1){
69099         arg2 = *v2;
69100       } else if (SvROK(ST(1))) {
69101         AV *av = (AV *)SvRV(ST(1));
69102         if (SvTYPE(av) != SVt_PVAV)
69103         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_SHAPE_zarringhalam. "
69104           "Expected an array of ""double");
69105         SV **tv;
69106         I32 len = av_len(av) + 1;
69107         for (int i=0; i<len; i++) {
69108           tv = av_fetch(av, i, 0);
69109           if (SvNIOK(*tv)) {
69110             (&arg2)->push_back((double)SwigSvToNumber(*tv));
69111           } else {
69112             SWIG_croak("Type error in argument 2 of "
69113               "fold_compound_sc_add_SHAPE_zarringhalam. "
69114               "Expected an array of ""double");
69115           }
69116         }
69117       } else {
69118         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_SHAPE_zarringhalam. "
69119           "Expected an array of ""double");
69120       }
69121     }
69122     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
69123     if (!SWIG_IsOK(ecode3)) {
69124       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_add_SHAPE_zarringhalam" "', argument " "3"" of type '" "double""'");
69125     }
69126     arg3 = static_cast< double >(val3);
69127     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
69128     if (!SWIG_IsOK(ecode4)) {
69129       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_sc_add_SHAPE_zarringhalam" "', argument " "4"" of type '" "double""'");
69130     }
69131     arg4 = static_cast< double >(val4);
69132     res5 = SWIG_AsCharPtrAndSize(ST(4), &buf5, NULL, &alloc5);
69133     if (!SWIG_IsOK(res5)) {
69134       SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "fold_compound_sc_add_SHAPE_zarringhalam" "', argument " "5"" of type '" "char const *""'");
69135     }
69136     arg5 = reinterpret_cast< char * >(buf5);
69137     ecode6 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
69138     if (!SWIG_IsOK(ecode6)) {
69139       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "fold_compound_sc_add_SHAPE_zarringhalam" "', argument " "6"" of type '" "unsigned int""'");
69140     }
69141     arg6 = static_cast< unsigned int >(val6);
69142     {
69143       try {
69144         result = (int)vrna_fold_compound_t_sc_add_SHAPE_zarringhalam__SWIG_0(arg1,arg2,arg3,arg4,(char const *)arg5,arg6);
69145       } catch (const std::exception& e) {
69146         SWIG_exception(SWIG_RuntimeError, e.what());
69147       }
69148     }
69149     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
69150 
69151 
69152 
69153     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
69154 
69155     XSRETURN(argvi);
69156   fail:
69157 
69158 
69159 
69160     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
69161 
69162     SWIG_croak_null();
69163   }
69164 }
69165 
69166 
XS(_wrap_fold_compound_sc_add_SHAPE_zarringhalam__SWIG_1)69167 XS(_wrap_fold_compound_sc_add_SHAPE_zarringhalam__SWIG_1) {
69168   {
69169     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
69170     std::vector< double > arg2 ;
69171     double arg3 ;
69172     double arg4 ;
69173     char *arg5 = (char *) 0 ;
69174     void *argp1 = 0 ;
69175     int res1 = 0 ;
69176     std::vector< double > *v2 ;
69177     double val3 ;
69178     int ecode3 = 0 ;
69179     double val4 ;
69180     int ecode4 = 0 ;
69181     int res5 ;
69182     char *buf5 = 0 ;
69183     int alloc5 = 0 ;
69184     int argvi = 0;
69185     int result;
69186     dXSARGS;
69187 
69188     if ((items < 5) || (items > 5)) {
69189       SWIG_croak("Usage: fold_compound_sc_add_SHAPE_zarringhalam(self,reactivities,b,default_value,shape_conversion);");
69190     }
69191     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
69192     if (!SWIG_IsOK(res1)) {
69193       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_SHAPE_zarringhalam" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
69194     }
69195     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
69196     {
69197       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
69198           SWIGTYPE_p_std__vectorT_double_t,1) != -1){
69199         arg2 = *v2;
69200       } else if (SvROK(ST(1))) {
69201         AV *av = (AV *)SvRV(ST(1));
69202         if (SvTYPE(av) != SVt_PVAV)
69203         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_SHAPE_zarringhalam. "
69204           "Expected an array of ""double");
69205         SV **tv;
69206         I32 len = av_len(av) + 1;
69207         for (int i=0; i<len; i++) {
69208           tv = av_fetch(av, i, 0);
69209           if (SvNIOK(*tv)) {
69210             (&arg2)->push_back((double)SwigSvToNumber(*tv));
69211           } else {
69212             SWIG_croak("Type error in argument 2 of "
69213               "fold_compound_sc_add_SHAPE_zarringhalam. "
69214               "Expected an array of ""double");
69215           }
69216         }
69217       } else {
69218         SWIG_croak("Type error in argument 2 of fold_compound_sc_add_SHAPE_zarringhalam. "
69219           "Expected an array of ""double");
69220       }
69221     }
69222     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
69223     if (!SWIG_IsOK(ecode3)) {
69224       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sc_add_SHAPE_zarringhalam" "', argument " "3"" of type '" "double""'");
69225     }
69226     arg3 = static_cast< double >(val3);
69227     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
69228     if (!SWIG_IsOK(ecode4)) {
69229       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_sc_add_SHAPE_zarringhalam" "', argument " "4"" of type '" "double""'");
69230     }
69231     arg4 = static_cast< double >(val4);
69232     res5 = SWIG_AsCharPtrAndSize(ST(4), &buf5, NULL, &alloc5);
69233     if (!SWIG_IsOK(res5)) {
69234       SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "fold_compound_sc_add_SHAPE_zarringhalam" "', argument " "5"" of type '" "char const *""'");
69235     }
69236     arg5 = reinterpret_cast< char * >(buf5);
69237     {
69238       try {
69239         result = (int)vrna_fold_compound_t_sc_add_SHAPE_zarringhalam__SWIG_0(arg1,arg2,arg3,arg4,(char const *)arg5);
69240       } catch (const std::exception& e) {
69241         SWIG_exception(SWIG_RuntimeError, e.what());
69242       }
69243     }
69244     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
69245 
69246 
69247 
69248     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
69249     XSRETURN(argvi);
69250   fail:
69251 
69252 
69253 
69254     if (alloc5 == SWIG_NEWOBJ) delete[] buf5;
69255     SWIG_croak_null();
69256   }
69257 }
69258 
69259 
XS(_wrap_fold_compound_sc_add_SHAPE_zarringhalam)69260 XS(_wrap_fold_compound_sc_add_SHAPE_zarringhalam) {
69261   dXSARGS;
69262 
69263   {
69264     unsigned long _index = 0;
69265     SWIG_TypeRank _rank = 0;
69266     if (items == 5) {
69267       SWIG_TypeRank _ranki = 0;
69268       SWIG_TypeRank _rankm = 0;
69269       SWIG_TypeRank _pi = 1;
69270       int _v = 0;
69271       {
69272         void *vptr = 0;
69273         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
69274         _v = SWIG_CheckState(res);
69275       }
69276       if (!_v) goto check_1;
69277       _ranki += _v*_pi;
69278       _rankm += _pi;
69279       _pi *= SWIG_MAXCASTRANK;
69280       {
69281         {
69282           {
69283             /* wrapped vector? */
69284             std::vector< double >* v;
69285             if (SWIG_ConvertPtr(ST(1),(void **) &v,
69286                 SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
69287               _v = 1;
69288             } else if (SvROK(ST(1))) {
69289               /* native sequence? */
69290               AV *av = (AV *)SvRV(ST(1));
69291               if (SvTYPE(av) == SVt_PVAV) {
69292                 I32 len = av_len(av) + 1;
69293                 if (len == 0) {
69294                   /* an empty sequence can be of any type */
69295                   _v = 1;
69296                 } else {
69297                   /* check the first element only */
69298                   SV **tv = av_fetch(av, 0, 0);
69299                   if (SvNIOK(*tv))
69300                   _v = 1;
69301                   else
69302                   _v = 0;
69303                 }
69304               }
69305             } else {
69306               _v = 0;
69307             }
69308           }
69309         }
69310       }
69311       if (!_v) goto check_1;
69312       _ranki += _v*_pi;
69313       _rankm += _pi;
69314       _pi *= SWIG_MAXCASTRANK;
69315       {
69316         {
69317           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
69318           _v = SWIG_CheckState(res);
69319         }
69320       }
69321       if (!_v) goto check_1;
69322       _ranki += _v*_pi;
69323       _rankm += _pi;
69324       _pi *= SWIG_MAXCASTRANK;
69325       {
69326         {
69327           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
69328           _v = SWIG_CheckState(res);
69329         }
69330       }
69331       if (!_v) goto check_1;
69332       _ranki += _v*_pi;
69333       _rankm += _pi;
69334       _pi *= SWIG_MAXCASTRANK;
69335       {
69336         int res = SWIG_AsCharPtrAndSize(ST(4), 0, NULL, 0);
69337         _v = SWIG_CheckState(res);
69338       }
69339       if (!_v) goto check_1;
69340       _ranki += _v*_pi;
69341       _rankm += _pi;
69342       _pi *= SWIG_MAXCASTRANK;
69343       if (!_index || (_ranki < _rank)) {
69344         _rank = _ranki; _index = 1;
69345         if (_rank == _rankm) goto dispatch;
69346       }
69347     }
69348   check_1:
69349 
69350     if (items == 6) {
69351       SWIG_TypeRank _ranki = 0;
69352       SWIG_TypeRank _rankm = 0;
69353       SWIG_TypeRank _pi = 1;
69354       int _v = 0;
69355       {
69356         void *vptr = 0;
69357         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
69358         _v = SWIG_CheckState(res);
69359       }
69360       if (!_v) goto check_2;
69361       _ranki += _v*_pi;
69362       _rankm += _pi;
69363       _pi *= SWIG_MAXCASTRANK;
69364       {
69365         {
69366           {
69367             /* wrapped vector? */
69368             std::vector< double >* v;
69369             if (SWIG_ConvertPtr(ST(1),(void **) &v,
69370                 SWIGTYPE_p_std__vectorT_double_t,0) != -1) {
69371               _v = 1;
69372             } else if (SvROK(ST(1))) {
69373               /* native sequence? */
69374               AV *av = (AV *)SvRV(ST(1));
69375               if (SvTYPE(av) == SVt_PVAV) {
69376                 I32 len = av_len(av) + 1;
69377                 if (len == 0) {
69378                   /* an empty sequence can be of any type */
69379                   _v = 1;
69380                 } else {
69381                   /* check the first element only */
69382                   SV **tv = av_fetch(av, 0, 0);
69383                   if (SvNIOK(*tv))
69384                   _v = 1;
69385                   else
69386                   _v = 0;
69387                 }
69388               }
69389             } else {
69390               _v = 0;
69391             }
69392           }
69393         }
69394       }
69395       if (!_v) goto check_2;
69396       _ranki += _v*_pi;
69397       _rankm += _pi;
69398       _pi *= SWIG_MAXCASTRANK;
69399       {
69400         {
69401           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
69402           _v = SWIG_CheckState(res);
69403         }
69404       }
69405       if (!_v) goto check_2;
69406       _ranki += _v*_pi;
69407       _rankm += _pi;
69408       _pi *= SWIG_MAXCASTRANK;
69409       {
69410         {
69411           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
69412           _v = SWIG_CheckState(res);
69413         }
69414       }
69415       if (!_v) goto check_2;
69416       _ranki += _v*_pi;
69417       _rankm += _pi;
69418       _pi *= SWIG_MAXCASTRANK;
69419       {
69420         int res = SWIG_AsCharPtrAndSize(ST(4), 0, NULL, 0);
69421         _v = SWIG_CheckState(res);
69422       }
69423       if (!_v) goto check_2;
69424       _ranki += _v*_pi;
69425       _rankm += _pi;
69426       _pi *= SWIG_MAXCASTRANK;
69427       {
69428         {
69429           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
69430           _v = SWIG_CheckState(res);
69431         }
69432       }
69433       if (!_v) goto check_2;
69434       _ranki += _v*_pi;
69435       _rankm += _pi;
69436       _pi *= SWIG_MAXCASTRANK;
69437       if (!_index || (_ranki < _rank)) {
69438         _rank = _ranki; _index = 2;
69439         if (_rank == _rankm) goto dispatch;
69440       }
69441     }
69442   check_2:
69443 
69444   dispatch:
69445     switch(_index) {
69446     case 1:
69447       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_SHAPE_zarringhalam__SWIG_1); return;
69448     case 2:
69449       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_SHAPE_zarringhalam__SWIG_0); return;
69450     }
69451   }
69452 
69453   croak("No matching function for overloaded 'fold_compound_sc_add_SHAPE_zarringhalam'");
69454   XSRETURN(0);
69455 }
69456 
69457 
XS(_wrap_fold_compound_sc_add_hi_motif__SWIG_0)69458 XS(_wrap_fold_compound_sc_add_hi_motif__SWIG_0) {
69459   {
69460     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
69461     char *arg2 = (char *) 0 ;
69462     char *arg3 = (char *) 0 ;
69463     FLT_OR_DBL arg4 ;
69464     unsigned int arg5 ;
69465     void *argp1 = 0 ;
69466     int res1 = 0 ;
69467     int res2 ;
69468     char *buf2 = 0 ;
69469     int alloc2 = 0 ;
69470     int res3 ;
69471     char *buf3 = 0 ;
69472     int alloc3 = 0 ;
69473     double val4 ;
69474     int ecode4 = 0 ;
69475     unsigned int val5 ;
69476     int ecode5 = 0 ;
69477     int argvi = 0;
69478     int result;
69479     dXSARGS;
69480 
69481     if ((items < 5) || (items > 5)) {
69482       SWIG_croak("Usage: fold_compound_sc_add_hi_motif(self,seq,structure,energy,options);");
69483     }
69484     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
69485     if (!SWIG_IsOK(res1)) {
69486       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_hi_motif" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
69487     }
69488     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
69489     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
69490     if (!SWIG_IsOK(res2)) {
69491       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_sc_add_hi_motif" "', argument " "2"" of type '" "char const *""'");
69492     }
69493     arg2 = reinterpret_cast< char * >(buf2);
69494     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
69495     if (!SWIG_IsOK(res3)) {
69496       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "fold_compound_sc_add_hi_motif" "', argument " "3"" of type '" "char const *""'");
69497     }
69498     arg3 = reinterpret_cast< char * >(buf3);
69499     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
69500     if (!SWIG_IsOK(ecode4)) {
69501       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_sc_add_hi_motif" "', argument " "4"" of type '" "FLT_OR_DBL""'");
69502     }
69503     arg4 = static_cast< FLT_OR_DBL >(val4);
69504     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
69505     if (!SWIG_IsOK(ecode5)) {
69506       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_sc_add_hi_motif" "', argument " "5"" of type '" "unsigned int""'");
69507     }
69508     arg5 = static_cast< unsigned int >(val5);
69509     {
69510       try {
69511         result = (int)vrna_fold_compound_t_sc_add_hi_motif__SWIG_0(arg1,(char const *)arg2,(char const *)arg3,arg4,arg5);
69512       } catch (const std::exception& e) {
69513         SWIG_exception(SWIG_RuntimeError, e.what());
69514       }
69515     }
69516     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
69517 
69518     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
69519     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
69520 
69521 
69522     XSRETURN(argvi);
69523   fail:
69524 
69525     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
69526     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
69527 
69528 
69529     SWIG_croak_null();
69530   }
69531 }
69532 
69533 
XS(_wrap_fold_compound_sc_add_hi_motif__SWIG_1)69534 XS(_wrap_fold_compound_sc_add_hi_motif__SWIG_1) {
69535   {
69536     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
69537     char *arg2 = (char *) 0 ;
69538     char *arg3 = (char *) 0 ;
69539     FLT_OR_DBL arg4 ;
69540     void *argp1 = 0 ;
69541     int res1 = 0 ;
69542     int res2 ;
69543     char *buf2 = 0 ;
69544     int alloc2 = 0 ;
69545     int res3 ;
69546     char *buf3 = 0 ;
69547     int alloc3 = 0 ;
69548     double val4 ;
69549     int ecode4 = 0 ;
69550     int argvi = 0;
69551     int result;
69552     dXSARGS;
69553 
69554     if ((items < 4) || (items > 4)) {
69555       SWIG_croak("Usage: fold_compound_sc_add_hi_motif(self,seq,structure,energy);");
69556     }
69557     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
69558     if (!SWIG_IsOK(res1)) {
69559       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_hi_motif" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
69560     }
69561     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
69562     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
69563     if (!SWIG_IsOK(res2)) {
69564       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_sc_add_hi_motif" "', argument " "2"" of type '" "char const *""'");
69565     }
69566     arg2 = reinterpret_cast< char * >(buf2);
69567     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
69568     if (!SWIG_IsOK(res3)) {
69569       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "fold_compound_sc_add_hi_motif" "', argument " "3"" of type '" "char const *""'");
69570     }
69571     arg3 = reinterpret_cast< char * >(buf3);
69572     ecode4 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
69573     if (!SWIG_IsOK(ecode4)) {
69574       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_sc_add_hi_motif" "', argument " "4"" of type '" "FLT_OR_DBL""'");
69575     }
69576     arg4 = static_cast< FLT_OR_DBL >(val4);
69577     {
69578       try {
69579         result = (int)vrna_fold_compound_t_sc_add_hi_motif__SWIG_0(arg1,(char const *)arg2,(char const *)arg3,arg4);
69580       } catch (const std::exception& e) {
69581         SWIG_exception(SWIG_RuntimeError, e.what());
69582       }
69583     }
69584     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
69585 
69586     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
69587     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
69588 
69589     XSRETURN(argvi);
69590   fail:
69591 
69592     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
69593     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
69594 
69595     SWIG_croak_null();
69596   }
69597 }
69598 
69599 
XS(_wrap_fold_compound_sc_add_hi_motif)69600 XS(_wrap_fold_compound_sc_add_hi_motif) {
69601   dXSARGS;
69602 
69603   {
69604     unsigned long _index = 0;
69605     SWIG_TypeRank _rank = 0;
69606     if (items == 4) {
69607       SWIG_TypeRank _ranki = 0;
69608       SWIG_TypeRank _rankm = 0;
69609       SWIG_TypeRank _pi = 1;
69610       int _v = 0;
69611       {
69612         void *vptr = 0;
69613         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
69614         _v = SWIG_CheckState(res);
69615       }
69616       if (!_v) goto check_1;
69617       _ranki += _v*_pi;
69618       _rankm += _pi;
69619       _pi *= SWIG_MAXCASTRANK;
69620       {
69621         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
69622         _v = SWIG_CheckState(res);
69623       }
69624       if (!_v) goto check_1;
69625       _ranki += _v*_pi;
69626       _rankm += _pi;
69627       _pi *= SWIG_MAXCASTRANK;
69628       {
69629         int res = SWIG_AsCharPtrAndSize(ST(2), 0, NULL, 0);
69630         _v = SWIG_CheckState(res);
69631       }
69632       if (!_v) goto check_1;
69633       _ranki += _v*_pi;
69634       _rankm += _pi;
69635       _pi *= SWIG_MAXCASTRANK;
69636       {
69637         {
69638           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
69639           _v = SWIG_CheckState(res);
69640         }
69641       }
69642       if (!_v) goto check_1;
69643       _ranki += _v*_pi;
69644       _rankm += _pi;
69645       _pi *= SWIG_MAXCASTRANK;
69646       if (!_index || (_ranki < _rank)) {
69647         _rank = _ranki; _index = 1;
69648         if (_rank == _rankm) goto dispatch;
69649       }
69650     }
69651   check_1:
69652 
69653     if (items == 5) {
69654       SWIG_TypeRank _ranki = 0;
69655       SWIG_TypeRank _rankm = 0;
69656       SWIG_TypeRank _pi = 1;
69657       int _v = 0;
69658       {
69659         void *vptr = 0;
69660         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
69661         _v = SWIG_CheckState(res);
69662       }
69663       if (!_v) goto check_2;
69664       _ranki += _v*_pi;
69665       _rankm += _pi;
69666       _pi *= SWIG_MAXCASTRANK;
69667       {
69668         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
69669         _v = SWIG_CheckState(res);
69670       }
69671       if (!_v) goto check_2;
69672       _ranki += _v*_pi;
69673       _rankm += _pi;
69674       _pi *= SWIG_MAXCASTRANK;
69675       {
69676         int res = SWIG_AsCharPtrAndSize(ST(2), 0, NULL, 0);
69677         _v = SWIG_CheckState(res);
69678       }
69679       if (!_v) goto check_2;
69680       _ranki += _v*_pi;
69681       _rankm += _pi;
69682       _pi *= SWIG_MAXCASTRANK;
69683       {
69684         {
69685           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
69686           _v = SWIG_CheckState(res);
69687         }
69688       }
69689       if (!_v) goto check_2;
69690       _ranki += _v*_pi;
69691       _rankm += _pi;
69692       _pi *= SWIG_MAXCASTRANK;
69693       {
69694         {
69695           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
69696           _v = SWIG_CheckState(res);
69697         }
69698       }
69699       if (!_v) goto check_2;
69700       _ranki += _v*_pi;
69701       _rankm += _pi;
69702       _pi *= SWIG_MAXCASTRANK;
69703       if (!_index || (_ranki < _rank)) {
69704         _rank = _ranki; _index = 2;
69705         if (_rank == _rankm) goto dispatch;
69706       }
69707     }
69708   check_2:
69709 
69710   dispatch:
69711     switch(_index) {
69712     case 1:
69713       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_hi_motif__SWIG_1); return;
69714     case 2:
69715       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sc_add_hi_motif__SWIG_0); return;
69716     }
69717   }
69718 
69719   croak("No matching function for overloaded 'fold_compound_sc_add_hi_motif'");
69720   XSRETURN(0);
69721 }
69722 
69723 
XS(_wrap_fold_compound_eval_structure)69724 XS(_wrap_fold_compound_eval_structure) {
69725   {
69726     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
69727     char *arg2 = (char *) 0 ;
69728     void *argp1 = 0 ;
69729     int res1 = 0 ;
69730     int res2 ;
69731     char *buf2 = 0 ;
69732     int alloc2 = 0 ;
69733     int argvi = 0;
69734     float result;
69735     dXSARGS;
69736 
69737     if ((items < 2) || (items > 2)) {
69738       SWIG_croak("Usage: fold_compound_eval_structure(self,structure);");
69739     }
69740     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
69741     if (!SWIG_IsOK(res1)) {
69742       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_eval_structure" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
69743     }
69744     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
69745     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
69746     if (!SWIG_IsOK(res2)) {
69747       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_eval_structure" "', argument " "2"" of type '" "char const *""'");
69748     }
69749     arg2 = reinterpret_cast< char * >(buf2);
69750     {
69751       try {
69752         result = (float)vrna_fold_compound_t_eval_structure(arg1,(char const *)arg2);
69753       } catch (const std::exception& e) {
69754         SWIG_exception(SWIG_RuntimeError, e.what());
69755       }
69756     }
69757     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
69758 
69759     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
69760     XSRETURN(argvi);
69761   fail:
69762 
69763     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
69764     SWIG_croak_null();
69765   }
69766 }
69767 
69768 
XS(_wrap_fold_compound_eval_structure_pt)69769 XS(_wrap_fold_compound_eval_structure_pt) {
69770   {
69771     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
69772     std::vector< int > arg2 ;
69773     void *argp1 = 0 ;
69774     int res1 = 0 ;
69775     std::vector< int > *v2 ;
69776     int argvi = 0;
69777     int result;
69778     dXSARGS;
69779 
69780     if ((items < 2) || (items > 2)) {
69781       SWIG_croak("Usage: fold_compound_eval_structure_pt(self,pt);");
69782     }
69783     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
69784     if (!SWIG_IsOK(res1)) {
69785       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_eval_structure_pt" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
69786     }
69787     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
69788     {
69789       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
69790           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
69791         arg2 = *v2;
69792       } else if (SvROK(ST(1))) {
69793         AV *av = (AV *)SvRV(ST(1));
69794         if (SvTYPE(av) != SVt_PVAV)
69795         SWIG_croak("Type error in argument 2 of fold_compound_eval_structure_pt. "
69796           "Expected an array of ""int");
69797         SV **tv;
69798         I32 len = av_len(av) + 1;
69799         for (int i=0; i<len; i++) {
69800           tv = av_fetch(av, i, 0);
69801           if (SvIOK(*tv)) {
69802             (&arg2)->push_back((int)SvIVX(*tv));
69803           } else {
69804             SWIG_croak("Type error in argument 2 of "
69805               "fold_compound_eval_structure_pt. "
69806               "Expected an array of ""int");
69807           }
69808         }
69809       } else {
69810         SWIG_croak("Type error in argument 2 of fold_compound_eval_structure_pt. "
69811           "Expected an array of ""int");
69812       }
69813     }
69814     {
69815       try {
69816         result = (int)vrna_fold_compound_t_eval_structure_pt(arg1,arg2);
69817       } catch (const std::exception& e) {
69818         SWIG_exception(SWIG_RuntimeError, e.what());
69819       }
69820     }
69821     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
69822 
69823     XSRETURN(argvi);
69824   fail:
69825 
69826     SWIG_croak_null();
69827   }
69828 }
69829 
69830 
XS(_wrap_fold_compound_eval_structure_verbose__SWIG_0)69831 XS(_wrap_fold_compound_eval_structure_verbose__SWIG_0) {
69832   {
69833     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
69834     char *arg2 = (char *) 0 ;
69835     FILE *arg3 = (FILE *) 0 ;
69836     void *argp1 = 0 ;
69837     int res1 = 0 ;
69838     int res2 ;
69839     char *buf2 = 0 ;
69840     int alloc2 = 0 ;
69841     int argvi = 0;
69842     float result;
69843     dXSARGS;
69844 
69845     if ((items < 3) || (items > 3)) {
69846       SWIG_croak("Usage: fold_compound_eval_structure_verbose(self,structure,nullfile);");
69847     }
69848     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
69849     if (!SWIG_IsOK(res1)) {
69850       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_eval_structure_verbose" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
69851     }
69852     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
69853     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
69854     if (!SWIG_IsOK(res2)) {
69855       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_eval_structure_verbose" "', argument " "2"" of type '" "char *""'");
69856     }
69857     arg2 = reinterpret_cast< char * >(buf2);
69858     {
69859       if (SvOK(ST(2))) /* check for undef */
69860       arg3 = PerlIO_findFILE(IoIFP(sv_2io(ST(2))));
69861       else  arg3 = NULL;
69862     }
69863     {
69864       try {
69865         result = (float)vrna_fold_compound_t_eval_structure_verbose__SWIG_0(arg1,arg2,arg3);
69866       } catch (const std::exception& e) {
69867         SWIG_exception(SWIG_RuntimeError, e.what());
69868       }
69869     }
69870     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
69871 
69872     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
69873 
69874     XSRETURN(argvi);
69875   fail:
69876 
69877     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
69878 
69879     SWIG_croak_null();
69880   }
69881 }
69882 
69883 
XS(_wrap_fold_compound_eval_structure_verbose__SWIG_1)69884 XS(_wrap_fold_compound_eval_structure_verbose__SWIG_1) {
69885   {
69886     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
69887     char *arg2 = (char *) 0 ;
69888     void *argp1 = 0 ;
69889     int res1 = 0 ;
69890     int res2 ;
69891     char *buf2 = 0 ;
69892     int alloc2 = 0 ;
69893     int argvi = 0;
69894     float result;
69895     dXSARGS;
69896 
69897     if ((items < 2) || (items > 2)) {
69898       SWIG_croak("Usage: fold_compound_eval_structure_verbose(self,structure);");
69899     }
69900     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
69901     if (!SWIG_IsOK(res1)) {
69902       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_eval_structure_verbose" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
69903     }
69904     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
69905     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
69906     if (!SWIG_IsOK(res2)) {
69907       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_eval_structure_verbose" "', argument " "2"" of type '" "char *""'");
69908     }
69909     arg2 = reinterpret_cast< char * >(buf2);
69910     {
69911       try {
69912         result = (float)vrna_fold_compound_t_eval_structure_verbose__SWIG_0(arg1,arg2);
69913       } catch (const std::exception& e) {
69914         SWIG_exception(SWIG_RuntimeError, e.what());
69915       }
69916     }
69917     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
69918 
69919     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
69920     XSRETURN(argvi);
69921   fail:
69922 
69923     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
69924     SWIG_croak_null();
69925   }
69926 }
69927 
69928 
XS(_wrap_fold_compound_eval_structure_verbose)69929 XS(_wrap_fold_compound_eval_structure_verbose) {
69930   dXSARGS;
69931 
69932   {
69933     unsigned long _index = 0;
69934     SWIG_TypeRank _rank = 0;
69935     if (items == 2) {
69936       SWIG_TypeRank _ranki = 0;
69937       SWIG_TypeRank _rankm = 0;
69938       SWIG_TypeRank _pi = 1;
69939       int _v = 0;
69940       {
69941         void *vptr = 0;
69942         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
69943         _v = SWIG_CheckState(res);
69944       }
69945       if (!_v) goto check_1;
69946       _ranki += _v*_pi;
69947       _rankm += _pi;
69948       _pi *= SWIG_MAXCASTRANK;
69949       {
69950         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
69951         _v = SWIG_CheckState(res);
69952       }
69953       if (!_v) goto check_1;
69954       _ranki += _v*_pi;
69955       _rankm += _pi;
69956       _pi *= SWIG_MAXCASTRANK;
69957       if (!_index || (_ranki < _rank)) {
69958         _rank = _ranki; _index = 1;
69959         if (_rank == _rankm) goto dispatch;
69960       }
69961     }
69962   check_1:
69963 
69964     if (items == 3) {
69965       SWIG_TypeRank _ranki = 0;
69966       SWIG_TypeRank _rankm = 0;
69967       SWIG_TypeRank _pi = 1;
69968       int _v = 0;
69969       {
69970         void *vptr = 0;
69971         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
69972         _v = SWIG_CheckState(res);
69973       }
69974       if (!_v) goto check_2;
69975       _ranki += _v*_pi;
69976       _rankm += _pi;
69977       _pi *= SWIG_MAXCASTRANK;
69978       {
69979         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
69980         _v = SWIG_CheckState(res);
69981       }
69982       if (!_v) goto check_2;
69983       _ranki += _v*_pi;
69984       _rankm += _pi;
69985       _pi *= SWIG_MAXCASTRANK;
69986       {
69987         {
69988           if (SvOK(ST(2)))
69989           _v = (sv_2io(ST(2))) ? 1 : 0;
69990         }
69991       }
69992       if (!_v) goto check_2;
69993       _ranki += _v*_pi;
69994       _rankm += _pi;
69995       _pi *= SWIG_MAXCASTRANK;
69996       if (!_index || (_ranki < _rank)) {
69997         _rank = _ranki; _index = 2;
69998         if (_rank == _rankm) goto dispatch;
69999       }
70000     }
70001   check_2:
70002 
70003   dispatch:
70004     switch(_index) {
70005     case 1:
70006       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_eval_structure_verbose__SWIG_1); return;
70007     case 2:
70008       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_eval_structure_verbose__SWIG_0); return;
70009     }
70010   }
70011 
70012   croak("No matching function for overloaded 'fold_compound_eval_structure_verbose'");
70013   XSRETURN(0);
70014 }
70015 
70016 
XS(_wrap_fold_compound_eval_structure_pt_verbose__SWIG_0)70017 XS(_wrap_fold_compound_eval_structure_pt_verbose__SWIG_0) {
70018   {
70019     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
70020     std::vector< int > arg2 ;
70021     FILE *arg3 = (FILE *) 0 ;
70022     void *argp1 = 0 ;
70023     int res1 = 0 ;
70024     std::vector< int > *v2 ;
70025     int argvi = 0;
70026     int result;
70027     dXSARGS;
70028 
70029     if ((items < 3) || (items > 3)) {
70030       SWIG_croak("Usage: fold_compound_eval_structure_pt_verbose(self,pt,nullfile);");
70031     }
70032     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
70033     if (!SWIG_IsOK(res1)) {
70034       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_eval_structure_pt_verbose" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
70035     }
70036     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
70037     {
70038       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
70039           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
70040         arg2 = *v2;
70041       } else if (SvROK(ST(1))) {
70042         AV *av = (AV *)SvRV(ST(1));
70043         if (SvTYPE(av) != SVt_PVAV)
70044         SWIG_croak("Type error in argument 2 of fold_compound_eval_structure_pt_verbose. "
70045           "Expected an array of ""int");
70046         SV **tv;
70047         I32 len = av_len(av) + 1;
70048         for (int i=0; i<len; i++) {
70049           tv = av_fetch(av, i, 0);
70050           if (SvIOK(*tv)) {
70051             (&arg2)->push_back((int)SvIVX(*tv));
70052           } else {
70053             SWIG_croak("Type error in argument 2 of "
70054               "fold_compound_eval_structure_pt_verbose. "
70055               "Expected an array of ""int");
70056           }
70057         }
70058       } else {
70059         SWIG_croak("Type error in argument 2 of fold_compound_eval_structure_pt_verbose. "
70060           "Expected an array of ""int");
70061       }
70062     }
70063     {
70064       if (SvOK(ST(2))) /* check for undef */
70065       arg3 = PerlIO_findFILE(IoIFP(sv_2io(ST(2))));
70066       else  arg3 = NULL;
70067     }
70068     {
70069       try {
70070         result = (int)vrna_fold_compound_t_eval_structure_pt_verbose__SWIG_0(arg1,arg2,arg3);
70071       } catch (const std::exception& e) {
70072         SWIG_exception(SWIG_RuntimeError, e.what());
70073       }
70074     }
70075     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
70076 
70077 
70078     XSRETURN(argvi);
70079   fail:
70080 
70081 
70082     SWIG_croak_null();
70083   }
70084 }
70085 
70086 
XS(_wrap_fold_compound_eval_structure_pt_verbose__SWIG_1)70087 XS(_wrap_fold_compound_eval_structure_pt_verbose__SWIG_1) {
70088   {
70089     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
70090     std::vector< int > arg2 ;
70091     void *argp1 = 0 ;
70092     int res1 = 0 ;
70093     std::vector< int > *v2 ;
70094     int argvi = 0;
70095     int result;
70096     dXSARGS;
70097 
70098     if ((items < 2) || (items > 2)) {
70099       SWIG_croak("Usage: fold_compound_eval_structure_pt_verbose(self,pt);");
70100     }
70101     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
70102     if (!SWIG_IsOK(res1)) {
70103       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_eval_structure_pt_verbose" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
70104     }
70105     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
70106     {
70107       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
70108           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
70109         arg2 = *v2;
70110       } else if (SvROK(ST(1))) {
70111         AV *av = (AV *)SvRV(ST(1));
70112         if (SvTYPE(av) != SVt_PVAV)
70113         SWIG_croak("Type error in argument 2 of fold_compound_eval_structure_pt_verbose. "
70114           "Expected an array of ""int");
70115         SV **tv;
70116         I32 len = av_len(av) + 1;
70117         for (int i=0; i<len; i++) {
70118           tv = av_fetch(av, i, 0);
70119           if (SvIOK(*tv)) {
70120             (&arg2)->push_back((int)SvIVX(*tv));
70121           } else {
70122             SWIG_croak("Type error in argument 2 of "
70123               "fold_compound_eval_structure_pt_verbose. "
70124               "Expected an array of ""int");
70125           }
70126         }
70127       } else {
70128         SWIG_croak("Type error in argument 2 of fold_compound_eval_structure_pt_verbose. "
70129           "Expected an array of ""int");
70130       }
70131     }
70132     {
70133       try {
70134         result = (int)vrna_fold_compound_t_eval_structure_pt_verbose__SWIG_0(arg1,arg2);
70135       } catch (const std::exception& e) {
70136         SWIG_exception(SWIG_RuntimeError, e.what());
70137       }
70138     }
70139     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
70140 
70141     XSRETURN(argvi);
70142   fail:
70143 
70144     SWIG_croak_null();
70145   }
70146 }
70147 
70148 
XS(_wrap_fold_compound_eval_structure_pt_verbose)70149 XS(_wrap_fold_compound_eval_structure_pt_verbose) {
70150   dXSARGS;
70151 
70152   {
70153     unsigned long _index = 0;
70154     SWIG_TypeRank _rank = 0;
70155     if (items == 2) {
70156       SWIG_TypeRank _ranki = 0;
70157       SWIG_TypeRank _rankm = 0;
70158       SWIG_TypeRank _pi = 1;
70159       int _v = 0;
70160       {
70161         void *vptr = 0;
70162         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
70163         _v = SWIG_CheckState(res);
70164       }
70165       if (!_v) goto check_1;
70166       _ranki += _v*_pi;
70167       _rankm += _pi;
70168       _pi *= SWIG_MAXCASTRANK;
70169       {
70170         {
70171           {
70172             /* wrapped vector? */
70173             std::vector< int >* v;
70174             if (SWIG_ConvertPtr(ST(1),(void **) &v,
70175                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
70176               _v = 1;
70177             } else if (SvROK(ST(1))) {
70178               /* native sequence? */
70179               AV *av = (AV *)SvRV(ST(1));
70180               if (SvTYPE(av) == SVt_PVAV) {
70181                 I32 len = av_len(av) + 1;
70182                 if (len == 0) {
70183                   /* an empty sequence can be of any type */
70184                   _v = 1;
70185                 } else {
70186                   /* check the first element only */
70187                   SV **tv = av_fetch(av, 0, 0);
70188                   if (SvIOK(*tv))
70189                   _v = 1;
70190                   else
70191                   _v = 0;
70192                 }
70193               }
70194             } else {
70195               _v = 0;
70196             }
70197           }
70198         }
70199       }
70200       if (!_v) goto check_1;
70201       _ranki += _v*_pi;
70202       _rankm += _pi;
70203       _pi *= SWIG_MAXCASTRANK;
70204       if (!_index || (_ranki < _rank)) {
70205         _rank = _ranki; _index = 1;
70206         if (_rank == _rankm) goto dispatch;
70207       }
70208     }
70209   check_1:
70210 
70211     if (items == 3) {
70212       SWIG_TypeRank _ranki = 0;
70213       SWIG_TypeRank _rankm = 0;
70214       SWIG_TypeRank _pi = 1;
70215       int _v = 0;
70216       {
70217         void *vptr = 0;
70218         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
70219         _v = SWIG_CheckState(res);
70220       }
70221       if (!_v) goto check_2;
70222       _ranki += _v*_pi;
70223       _rankm += _pi;
70224       _pi *= SWIG_MAXCASTRANK;
70225       {
70226         {
70227           {
70228             /* wrapped vector? */
70229             std::vector< int >* v;
70230             if (SWIG_ConvertPtr(ST(1),(void **) &v,
70231                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
70232               _v = 1;
70233             } else if (SvROK(ST(1))) {
70234               /* native sequence? */
70235               AV *av = (AV *)SvRV(ST(1));
70236               if (SvTYPE(av) == SVt_PVAV) {
70237                 I32 len = av_len(av) + 1;
70238                 if (len == 0) {
70239                   /* an empty sequence can be of any type */
70240                   _v = 1;
70241                 } else {
70242                   /* check the first element only */
70243                   SV **tv = av_fetch(av, 0, 0);
70244                   if (SvIOK(*tv))
70245                   _v = 1;
70246                   else
70247                   _v = 0;
70248                 }
70249               }
70250             } else {
70251               _v = 0;
70252             }
70253           }
70254         }
70255       }
70256       if (!_v) goto check_2;
70257       _ranki += _v*_pi;
70258       _rankm += _pi;
70259       _pi *= SWIG_MAXCASTRANK;
70260       {
70261         {
70262           if (SvOK(ST(2)))
70263           _v = (sv_2io(ST(2))) ? 1 : 0;
70264         }
70265       }
70266       if (!_v) goto check_2;
70267       _ranki += _v*_pi;
70268       _rankm += _pi;
70269       _pi *= SWIG_MAXCASTRANK;
70270       if (!_index || (_ranki < _rank)) {
70271         _rank = _ranki; _index = 2;
70272         if (_rank == _rankm) goto dispatch;
70273       }
70274     }
70275   check_2:
70276 
70277   dispatch:
70278     switch(_index) {
70279     case 1:
70280       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_eval_structure_pt_verbose__SWIG_1); return;
70281     case 2:
70282       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_eval_structure_pt_verbose__SWIG_0); return;
70283     }
70284   }
70285 
70286   croak("No matching function for overloaded 'fold_compound_eval_structure_pt_verbose'");
70287   XSRETURN(0);
70288 }
70289 
70290 
XS(_wrap_fold_compound_eval_covar_structure)70291 XS(_wrap_fold_compound_eval_covar_structure) {
70292   {
70293     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
70294     char *arg2 = (char *) 0 ;
70295     void *argp1 = 0 ;
70296     int res1 = 0 ;
70297     int res2 ;
70298     char *buf2 = 0 ;
70299     int alloc2 = 0 ;
70300     int argvi = 0;
70301     float result;
70302     dXSARGS;
70303 
70304     if ((items < 2) || (items > 2)) {
70305       SWIG_croak("Usage: fold_compound_eval_covar_structure(self,structure);");
70306     }
70307     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
70308     if (!SWIG_IsOK(res1)) {
70309       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_eval_covar_structure" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
70310     }
70311     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
70312     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
70313     if (!SWIG_IsOK(res2)) {
70314       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_eval_covar_structure" "', argument " "2"" of type '" "char *""'");
70315     }
70316     arg2 = reinterpret_cast< char * >(buf2);
70317     {
70318       try {
70319         result = (float)vrna_fold_compound_t_eval_covar_structure(arg1,arg2);
70320       } catch (const std::exception& e) {
70321         SWIG_exception(SWIG_RuntimeError, e.what());
70322       }
70323     }
70324     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
70325 
70326     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
70327     XSRETURN(argvi);
70328   fail:
70329 
70330     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
70331     SWIG_croak_null();
70332   }
70333 }
70334 
70335 
XS(_wrap_fold_compound_eval_loop_pt)70336 XS(_wrap_fold_compound_eval_loop_pt) {
70337   {
70338     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
70339     int arg2 ;
70340     std::vector< int > arg3 ;
70341     void *argp1 = 0 ;
70342     int res1 = 0 ;
70343     int val2 ;
70344     int ecode2 = 0 ;
70345     std::vector< int > *v3 ;
70346     int argvi = 0;
70347     int result;
70348     dXSARGS;
70349 
70350     if ((items < 3) || (items > 3)) {
70351       SWIG_croak("Usage: fold_compound_eval_loop_pt(self,i,pt);");
70352     }
70353     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
70354     if (!SWIG_IsOK(res1)) {
70355       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_eval_loop_pt" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
70356     }
70357     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
70358     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
70359     if (!SWIG_IsOK(ecode2)) {
70360       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_eval_loop_pt" "', argument " "2"" of type '" "int""'");
70361     }
70362     arg2 = static_cast< int >(val2);
70363     {
70364       if (SWIG_ConvertPtr(ST(2),(void **) &v3,
70365           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
70366         arg3 = *v3;
70367       } else if (SvROK(ST(2))) {
70368         AV *av = (AV *)SvRV(ST(2));
70369         if (SvTYPE(av) != SVt_PVAV)
70370         SWIG_croak("Type error in argument 3 of fold_compound_eval_loop_pt. "
70371           "Expected an array of ""int");
70372         SV **tv;
70373         I32 len = av_len(av) + 1;
70374         for (int i=0; i<len; i++) {
70375           tv = av_fetch(av, i, 0);
70376           if (SvIOK(*tv)) {
70377             (&arg3)->push_back((int)SvIVX(*tv));
70378           } else {
70379             SWIG_croak("Type error in argument 3 of "
70380               "fold_compound_eval_loop_pt. "
70381               "Expected an array of ""int");
70382           }
70383         }
70384       } else {
70385         SWIG_croak("Type error in argument 3 of fold_compound_eval_loop_pt. "
70386           "Expected an array of ""int");
70387       }
70388     }
70389     {
70390       try {
70391         result = (int)vrna_fold_compound_t_eval_loop_pt(arg1,arg2,arg3);
70392       } catch (const std::exception& e) {
70393         SWIG_exception(SWIG_RuntimeError, e.what());
70394       }
70395     }
70396     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
70397 
70398 
70399     XSRETURN(argvi);
70400   fail:
70401 
70402 
70403     SWIG_croak_null();
70404   }
70405 }
70406 
70407 
XS(_wrap_fold_compound_eval_move)70408 XS(_wrap_fold_compound_eval_move) {
70409   {
70410     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
70411     char *arg2 = (char *) 0 ;
70412     int arg3 ;
70413     int arg4 ;
70414     void *argp1 = 0 ;
70415     int res1 = 0 ;
70416     int res2 ;
70417     char *buf2 = 0 ;
70418     int alloc2 = 0 ;
70419     int val3 ;
70420     int ecode3 = 0 ;
70421     int val4 ;
70422     int ecode4 = 0 ;
70423     int argvi = 0;
70424     float result;
70425     dXSARGS;
70426 
70427     if ((items < 4) || (items > 4)) {
70428       SWIG_croak("Usage: fold_compound_eval_move(self,structure,m1,m2);");
70429     }
70430     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
70431     if (!SWIG_IsOK(res1)) {
70432       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_eval_move" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
70433     }
70434     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
70435     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
70436     if (!SWIG_IsOK(res2)) {
70437       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_eval_move" "', argument " "2"" of type '" "char const *""'");
70438     }
70439     arg2 = reinterpret_cast< char * >(buf2);
70440     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
70441     if (!SWIG_IsOK(ecode3)) {
70442       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_eval_move" "', argument " "3"" of type '" "int""'");
70443     }
70444     arg3 = static_cast< int >(val3);
70445     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
70446     if (!SWIG_IsOK(ecode4)) {
70447       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_eval_move" "', argument " "4"" of type '" "int""'");
70448     }
70449     arg4 = static_cast< int >(val4);
70450     {
70451       try {
70452         result = (float)vrna_fold_compound_t_eval_move(arg1,(char const *)arg2,arg3,arg4);
70453       } catch (const std::exception& e) {
70454         SWIG_exception(SWIG_RuntimeError, e.what());
70455       }
70456     }
70457     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
70458 
70459     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
70460 
70461 
70462     XSRETURN(argvi);
70463   fail:
70464 
70465     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
70466 
70467 
70468     SWIG_croak_null();
70469   }
70470 }
70471 
70472 
XS(_wrap_fold_compound_eval_move_pt)70473 XS(_wrap_fold_compound_eval_move_pt) {
70474   {
70475     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
70476     std::vector< int > arg2 ;
70477     int arg3 ;
70478     int arg4 ;
70479     void *argp1 = 0 ;
70480     int res1 = 0 ;
70481     std::vector< int > *v2 ;
70482     int val3 ;
70483     int ecode3 = 0 ;
70484     int val4 ;
70485     int ecode4 = 0 ;
70486     int argvi = 0;
70487     int result;
70488     dXSARGS;
70489 
70490     if ((items < 4) || (items > 4)) {
70491       SWIG_croak("Usage: fold_compound_eval_move_pt(self,pt,m1,m2);");
70492     }
70493     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
70494     if (!SWIG_IsOK(res1)) {
70495       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_eval_move_pt" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
70496     }
70497     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
70498     {
70499       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
70500           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
70501         arg2 = *v2;
70502       } else if (SvROK(ST(1))) {
70503         AV *av = (AV *)SvRV(ST(1));
70504         if (SvTYPE(av) != SVt_PVAV)
70505         SWIG_croak("Type error in argument 2 of fold_compound_eval_move_pt. "
70506           "Expected an array of ""int");
70507         SV **tv;
70508         I32 len = av_len(av) + 1;
70509         for (int i=0; i<len; i++) {
70510           tv = av_fetch(av, i, 0);
70511           if (SvIOK(*tv)) {
70512             (&arg2)->push_back((int)SvIVX(*tv));
70513           } else {
70514             SWIG_croak("Type error in argument 2 of "
70515               "fold_compound_eval_move_pt. "
70516               "Expected an array of ""int");
70517           }
70518         }
70519       } else {
70520         SWIG_croak("Type error in argument 2 of fold_compound_eval_move_pt. "
70521           "Expected an array of ""int");
70522       }
70523     }
70524     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
70525     if (!SWIG_IsOK(ecode3)) {
70526       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_eval_move_pt" "', argument " "3"" of type '" "int""'");
70527     }
70528     arg3 = static_cast< int >(val3);
70529     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
70530     if (!SWIG_IsOK(ecode4)) {
70531       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_eval_move_pt" "', argument " "4"" of type '" "int""'");
70532     }
70533     arg4 = static_cast< int >(val4);
70534     {
70535       try {
70536         result = (int)vrna_fold_compound_t_eval_move_pt(arg1,arg2,arg3,arg4);
70537       } catch (const std::exception& e) {
70538         SWIG_exception(SWIG_RuntimeError, e.what());
70539       }
70540     }
70541     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
70542 
70543 
70544 
70545     XSRETURN(argvi);
70546   fail:
70547 
70548 
70549 
70550     SWIG_croak_null();
70551   }
70552 }
70553 
70554 
XS(_wrap_fold_compound_E_ext_loop)70555 XS(_wrap_fold_compound_E_ext_loop) {
70556   {
70557     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
70558     int arg2 ;
70559     int arg3 ;
70560     void *argp1 = 0 ;
70561     int res1 = 0 ;
70562     int val2 ;
70563     int ecode2 = 0 ;
70564     int val3 ;
70565     int ecode3 = 0 ;
70566     int argvi = 0;
70567     int result;
70568     dXSARGS;
70569 
70570     if ((items < 3) || (items > 3)) {
70571       SWIG_croak("Usage: fold_compound_E_ext_loop(self,i,j);");
70572     }
70573     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
70574     if (!SWIG_IsOK(res1)) {
70575       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_E_ext_loop" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
70576     }
70577     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
70578     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
70579     if (!SWIG_IsOK(ecode2)) {
70580       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_E_ext_loop" "', argument " "2"" of type '" "int""'");
70581     }
70582     arg2 = static_cast< int >(val2);
70583     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
70584     if (!SWIG_IsOK(ecode3)) {
70585       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_E_ext_loop" "', argument " "3"" of type '" "int""'");
70586     }
70587     arg3 = static_cast< int >(val3);
70588     {
70589       try {
70590         result = (int)vrna_fold_compound_t_E_ext_loop(arg1,arg2,arg3);
70591       } catch (const std::exception& e) {
70592         SWIG_exception(SWIG_RuntimeError, e.what());
70593       }
70594     }
70595     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
70596 
70597 
70598 
70599     XSRETURN(argvi);
70600   fail:
70601 
70602 
70603 
70604     SWIG_croak_null();
70605   }
70606 }
70607 
70608 
XS(_wrap_fold_compound_E_hp_loop)70609 XS(_wrap_fold_compound_E_hp_loop) {
70610   {
70611     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
70612     int arg2 ;
70613     int arg3 ;
70614     void *argp1 = 0 ;
70615     int res1 = 0 ;
70616     int val2 ;
70617     int ecode2 = 0 ;
70618     int val3 ;
70619     int ecode3 = 0 ;
70620     int argvi = 0;
70621     int result;
70622     dXSARGS;
70623 
70624     if ((items < 3) || (items > 3)) {
70625       SWIG_croak("Usage: fold_compound_E_hp_loop(self,i,j);");
70626     }
70627     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
70628     if (!SWIG_IsOK(res1)) {
70629       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_E_hp_loop" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
70630     }
70631     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
70632     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
70633     if (!SWIG_IsOK(ecode2)) {
70634       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_E_hp_loop" "', argument " "2"" of type '" "int""'");
70635     }
70636     arg2 = static_cast< int >(val2);
70637     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
70638     if (!SWIG_IsOK(ecode3)) {
70639       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_E_hp_loop" "', argument " "3"" of type '" "int""'");
70640     }
70641     arg3 = static_cast< int >(val3);
70642     {
70643       try {
70644         result = (int)vrna_fold_compound_t_E_hp_loop(arg1,arg2,arg3);
70645       } catch (const std::exception& e) {
70646         SWIG_exception(SWIG_RuntimeError, e.what());
70647       }
70648     }
70649     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
70650 
70651 
70652 
70653     XSRETURN(argvi);
70654   fail:
70655 
70656 
70657 
70658     SWIG_croak_null();
70659   }
70660 }
70661 
70662 
XS(_wrap_fold_compound_E_ext_hp_loop)70663 XS(_wrap_fold_compound_E_ext_hp_loop) {
70664   {
70665     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
70666     int arg2 ;
70667     int arg3 ;
70668     void *argp1 = 0 ;
70669     int res1 = 0 ;
70670     int val2 ;
70671     int ecode2 = 0 ;
70672     int val3 ;
70673     int ecode3 = 0 ;
70674     int argvi = 0;
70675     int result;
70676     dXSARGS;
70677 
70678     if ((items < 3) || (items > 3)) {
70679       SWIG_croak("Usage: fold_compound_E_ext_hp_loop(self,i,j);");
70680     }
70681     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
70682     if (!SWIG_IsOK(res1)) {
70683       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_E_ext_hp_loop" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
70684     }
70685     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
70686     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
70687     if (!SWIG_IsOK(ecode2)) {
70688       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_E_ext_hp_loop" "', argument " "2"" of type '" "int""'");
70689     }
70690     arg2 = static_cast< int >(val2);
70691     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
70692     if (!SWIG_IsOK(ecode3)) {
70693       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_E_ext_hp_loop" "', argument " "3"" of type '" "int""'");
70694     }
70695     arg3 = static_cast< int >(val3);
70696     {
70697       try {
70698         result = (int)vrna_fold_compound_t_E_ext_hp_loop(arg1,arg2,arg3);
70699       } catch (const std::exception& e) {
70700         SWIG_exception(SWIG_RuntimeError, e.what());
70701       }
70702     }
70703     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
70704 
70705 
70706 
70707     XSRETURN(argvi);
70708   fail:
70709 
70710 
70711 
70712     SWIG_croak_null();
70713   }
70714 }
70715 
70716 
XS(_wrap_fold_compound_eval_ext_hp_loop)70717 XS(_wrap_fold_compound_eval_ext_hp_loop) {
70718   {
70719     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
70720     int arg2 ;
70721     int arg3 ;
70722     void *argp1 = 0 ;
70723     int res1 = 0 ;
70724     int val2 ;
70725     int ecode2 = 0 ;
70726     int val3 ;
70727     int ecode3 = 0 ;
70728     int argvi = 0;
70729     int result;
70730     dXSARGS;
70731 
70732     if ((items < 3) || (items > 3)) {
70733       SWIG_croak("Usage: fold_compound_eval_ext_hp_loop(self,i,j);");
70734     }
70735     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
70736     if (!SWIG_IsOK(res1)) {
70737       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_eval_ext_hp_loop" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
70738     }
70739     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
70740     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
70741     if (!SWIG_IsOK(ecode2)) {
70742       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_eval_ext_hp_loop" "', argument " "2"" of type '" "int""'");
70743     }
70744     arg2 = static_cast< int >(val2);
70745     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
70746     if (!SWIG_IsOK(ecode3)) {
70747       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_eval_ext_hp_loop" "', argument " "3"" of type '" "int""'");
70748     }
70749     arg3 = static_cast< int >(val3);
70750     {
70751       try {
70752         result = (int)vrna_fold_compound_t_eval_ext_hp_loop(arg1,arg2,arg3);
70753       } catch (const std::exception& e) {
70754         SWIG_exception(SWIG_RuntimeError, e.what());
70755       }
70756     }
70757     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
70758 
70759 
70760 
70761     XSRETURN(argvi);
70762   fail:
70763 
70764 
70765 
70766     SWIG_croak_null();
70767   }
70768 }
70769 
70770 
XS(_wrap_fold_compound_eval_hp_loop)70771 XS(_wrap_fold_compound_eval_hp_loop) {
70772   {
70773     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
70774     int arg2 ;
70775     int arg3 ;
70776     void *argp1 = 0 ;
70777     int res1 = 0 ;
70778     int val2 ;
70779     int ecode2 = 0 ;
70780     int val3 ;
70781     int ecode3 = 0 ;
70782     int argvi = 0;
70783     int result;
70784     dXSARGS;
70785 
70786     if ((items < 3) || (items > 3)) {
70787       SWIG_croak("Usage: fold_compound_eval_hp_loop(self,i,j);");
70788     }
70789     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
70790     if (!SWIG_IsOK(res1)) {
70791       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_eval_hp_loop" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
70792     }
70793     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
70794     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
70795     if (!SWIG_IsOK(ecode2)) {
70796       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_eval_hp_loop" "', argument " "2"" of type '" "int""'");
70797     }
70798     arg2 = static_cast< int >(val2);
70799     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
70800     if (!SWIG_IsOK(ecode3)) {
70801       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_eval_hp_loop" "', argument " "3"" of type '" "int""'");
70802     }
70803     arg3 = static_cast< int >(val3);
70804     {
70805       try {
70806         result = (int)vrna_fold_compound_t_eval_hp_loop(arg1,arg2,arg3);
70807       } catch (const std::exception& e) {
70808         SWIG_exception(SWIG_RuntimeError, e.what());
70809       }
70810     }
70811     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
70812 
70813 
70814 
70815     XSRETURN(argvi);
70816   fail:
70817 
70818 
70819 
70820     SWIG_croak_null();
70821   }
70822 }
70823 
70824 
XS(_wrap_fold_compound_exp_E_hp_loop)70825 XS(_wrap_fold_compound_exp_E_hp_loop) {
70826   {
70827     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
70828     int arg2 ;
70829     int arg3 ;
70830     void *argp1 = 0 ;
70831     int res1 = 0 ;
70832     int val2 ;
70833     int ecode2 = 0 ;
70834     int val3 ;
70835     int ecode3 = 0 ;
70836     int argvi = 0;
70837     double result;
70838     dXSARGS;
70839 
70840     if ((items < 3) || (items > 3)) {
70841       SWIG_croak("Usage: fold_compound_exp_E_hp_loop(self,i,j);");
70842     }
70843     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
70844     if (!SWIG_IsOK(res1)) {
70845       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_exp_E_hp_loop" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
70846     }
70847     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
70848     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
70849     if (!SWIG_IsOK(ecode2)) {
70850       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_exp_E_hp_loop" "', argument " "2"" of type '" "int""'");
70851     }
70852     arg2 = static_cast< int >(val2);
70853     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
70854     if (!SWIG_IsOK(ecode3)) {
70855       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_exp_E_hp_loop" "', argument " "3"" of type '" "int""'");
70856     }
70857     arg3 = static_cast< int >(val3);
70858     {
70859       try {
70860         result = (double)vrna_fold_compound_t_exp_E_hp_loop(arg1,arg2,arg3);
70861       } catch (const std::exception& e) {
70862         SWIG_exception(SWIG_RuntimeError, e.what());
70863       }
70864     }
70865     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
70866 
70867 
70868 
70869     XSRETURN(argvi);
70870   fail:
70871 
70872 
70873 
70874     SWIG_croak_null();
70875   }
70876 }
70877 
70878 
XS(_wrap_fold_compound_E_int_loop)70879 XS(_wrap_fold_compound_E_int_loop) {
70880   {
70881     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
70882     int arg2 ;
70883     int arg3 ;
70884     void *argp1 = 0 ;
70885     int res1 = 0 ;
70886     int val2 ;
70887     int ecode2 = 0 ;
70888     int val3 ;
70889     int ecode3 = 0 ;
70890     int argvi = 0;
70891     int result;
70892     dXSARGS;
70893 
70894     if ((items < 3) || (items > 3)) {
70895       SWIG_croak("Usage: fold_compound_E_int_loop(self,i,j);");
70896     }
70897     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
70898     if (!SWIG_IsOK(res1)) {
70899       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_E_int_loop" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
70900     }
70901     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
70902     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
70903     if (!SWIG_IsOK(ecode2)) {
70904       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_E_int_loop" "', argument " "2"" of type '" "int""'");
70905     }
70906     arg2 = static_cast< int >(val2);
70907     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
70908     if (!SWIG_IsOK(ecode3)) {
70909       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_E_int_loop" "', argument " "3"" of type '" "int""'");
70910     }
70911     arg3 = static_cast< int >(val3);
70912     {
70913       try {
70914         result = (int)vrna_fold_compound_t_E_int_loop(arg1,arg2,arg3);
70915       } catch (const std::exception& e) {
70916         SWIG_exception(SWIG_RuntimeError, e.what());
70917       }
70918     }
70919     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
70920 
70921 
70922 
70923     XSRETURN(argvi);
70924   fail:
70925 
70926 
70927 
70928     SWIG_croak_null();
70929   }
70930 }
70931 
70932 
XS(_wrap_fold_compound_eval_int_loop)70933 XS(_wrap_fold_compound_eval_int_loop) {
70934   {
70935     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
70936     int arg2 ;
70937     int arg3 ;
70938     int arg4 ;
70939     int arg5 ;
70940     void *argp1 = 0 ;
70941     int res1 = 0 ;
70942     int val2 ;
70943     int ecode2 = 0 ;
70944     int val3 ;
70945     int ecode3 = 0 ;
70946     int val4 ;
70947     int ecode4 = 0 ;
70948     int val5 ;
70949     int ecode5 = 0 ;
70950     int argvi = 0;
70951     int result;
70952     dXSARGS;
70953 
70954     if ((items < 5) || (items > 5)) {
70955       SWIG_croak("Usage: fold_compound_eval_int_loop(self,i,j,k,l);");
70956     }
70957     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
70958     if (!SWIG_IsOK(res1)) {
70959       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_eval_int_loop" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
70960     }
70961     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
70962     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
70963     if (!SWIG_IsOK(ecode2)) {
70964       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_eval_int_loop" "', argument " "2"" of type '" "int""'");
70965     }
70966     arg2 = static_cast< int >(val2);
70967     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
70968     if (!SWIG_IsOK(ecode3)) {
70969       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_eval_int_loop" "', argument " "3"" of type '" "int""'");
70970     }
70971     arg3 = static_cast< int >(val3);
70972     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
70973     if (!SWIG_IsOK(ecode4)) {
70974       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_eval_int_loop" "', argument " "4"" of type '" "int""'");
70975     }
70976     arg4 = static_cast< int >(val4);
70977     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
70978     if (!SWIG_IsOK(ecode5)) {
70979       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_eval_int_loop" "', argument " "5"" of type '" "int""'");
70980     }
70981     arg5 = static_cast< int >(val5);
70982     {
70983       try {
70984         result = (int)vrna_fold_compound_t_eval_int_loop(arg1,arg2,arg3,arg4,arg5);
70985       } catch (const std::exception& e) {
70986         SWIG_exception(SWIG_RuntimeError, e.what());
70987       }
70988     }
70989     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
70990 
70991 
70992 
70993 
70994 
70995     XSRETURN(argvi);
70996   fail:
70997 
70998 
70999 
71000 
71001 
71002     SWIG_croak_null();
71003   }
71004 }
71005 
71006 
XS(_wrap_fold_compound_E_ext_int_loop)71007 XS(_wrap_fold_compound_E_ext_int_loop) {
71008   {
71009     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71010     int arg2 ;
71011     int arg3 ;
71012     int *arg4 = (int *) 0 ;
71013     int *arg5 = (int *) 0 ;
71014     void *argp1 = 0 ;
71015     int res1 = 0 ;
71016     int val2 ;
71017     int ecode2 = 0 ;
71018     int val3 ;
71019     int ecode3 = 0 ;
71020     int temp4 ;
71021     int res4 = SWIG_TMPOBJ ;
71022     int temp5 ;
71023     int res5 = SWIG_TMPOBJ ;
71024     int argvi = 0;
71025     int result;
71026     dXSARGS;
71027 
71028     arg4 = &temp4;
71029     arg5 = &temp5;
71030     if ((items < 3) || (items > 3)) {
71031       SWIG_croak("Usage: fold_compound_E_ext_int_loop(self,i,j);");
71032     }
71033     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71034     if (!SWIG_IsOK(res1)) {
71035       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_E_ext_int_loop" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71036     }
71037     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71038     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
71039     if (!SWIG_IsOK(ecode2)) {
71040       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_E_ext_int_loop" "', argument " "2"" of type '" "int""'");
71041     }
71042     arg2 = static_cast< int >(val2);
71043     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
71044     if (!SWIG_IsOK(ecode3)) {
71045       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_E_ext_int_loop" "', argument " "3"" of type '" "int""'");
71046     }
71047     arg3 = static_cast< int >(val3);
71048     {
71049       try {
71050         result = (int)vrna_fold_compound_t_E_ext_int_loop(arg1,arg2,arg3,arg4,arg5);
71051       } catch (const std::exception& e) {
71052         SWIG_exception(SWIG_RuntimeError, e.what());
71053       }
71054     }
71055     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
71056     if (SWIG_IsTmpObj(res4)) {
71057       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1((*arg4)); argvi++  ;
71058     } else {
71059       int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0) : 0;
71060       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_int, new_flags); argvi++  ;
71061     }
71062     if (SWIG_IsTmpObj(res5)) {
71063       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1((*arg5)); argvi++  ;
71064     } else {
71065       int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0) : 0;
71066       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_int, new_flags); argvi++  ;
71067     }
71068 
71069 
71070 
71071 
71072 
71073     XSRETURN(argvi);
71074   fail:
71075 
71076 
71077 
71078 
71079 
71080     SWIG_croak_null();
71081   }
71082 }
71083 
71084 
XS(_wrap_fold_compound_E_stack)71085 XS(_wrap_fold_compound_E_stack) {
71086   {
71087     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71088     int arg2 ;
71089     int arg3 ;
71090     void *argp1 = 0 ;
71091     int res1 = 0 ;
71092     int val2 ;
71093     int ecode2 = 0 ;
71094     int val3 ;
71095     int ecode3 = 0 ;
71096     int argvi = 0;
71097     int result;
71098     dXSARGS;
71099 
71100     if ((items < 3) || (items > 3)) {
71101       SWIG_croak("Usage: fold_compound_E_stack(self,i,j);");
71102     }
71103     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71104     if (!SWIG_IsOK(res1)) {
71105       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_E_stack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71106     }
71107     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71108     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
71109     if (!SWIG_IsOK(ecode2)) {
71110       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_E_stack" "', argument " "2"" of type '" "int""'");
71111     }
71112     arg2 = static_cast< int >(val2);
71113     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
71114     if (!SWIG_IsOK(ecode3)) {
71115       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_E_stack" "', argument " "3"" of type '" "int""'");
71116     }
71117     arg3 = static_cast< int >(val3);
71118     {
71119       try {
71120         result = (int)vrna_fold_compound_t_E_stack(arg1,arg2,arg3);
71121       } catch (const std::exception& e) {
71122         SWIG_exception(SWIG_RuntimeError, e.what());
71123       }
71124     }
71125     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
71126 
71127 
71128 
71129     XSRETURN(argvi);
71130   fail:
71131 
71132 
71133 
71134     SWIG_croak_null();
71135   }
71136 }
71137 
71138 
XS(_wrap_fold_compound_exp_E_int_loop)71139 XS(_wrap_fold_compound_exp_E_int_loop) {
71140   {
71141     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71142     int arg2 ;
71143     int arg3 ;
71144     void *argp1 = 0 ;
71145     int res1 = 0 ;
71146     int val2 ;
71147     int ecode2 = 0 ;
71148     int val3 ;
71149     int ecode3 = 0 ;
71150     int argvi = 0;
71151     double result;
71152     dXSARGS;
71153 
71154     if ((items < 3) || (items > 3)) {
71155       SWIG_croak("Usage: fold_compound_exp_E_int_loop(self,i,j);");
71156     }
71157     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71158     if (!SWIG_IsOK(res1)) {
71159       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_exp_E_int_loop" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71160     }
71161     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71162     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
71163     if (!SWIG_IsOK(ecode2)) {
71164       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_exp_E_int_loop" "', argument " "2"" of type '" "int""'");
71165     }
71166     arg2 = static_cast< int >(val2);
71167     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
71168     if (!SWIG_IsOK(ecode3)) {
71169       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_exp_E_int_loop" "', argument " "3"" of type '" "int""'");
71170     }
71171     arg3 = static_cast< int >(val3);
71172     {
71173       try {
71174         result = (double)vrna_fold_compound_t_exp_E_int_loop(arg1,arg2,arg3);
71175       } catch (const std::exception& e) {
71176         SWIG_exception(SWIG_RuntimeError, e.what());
71177       }
71178     }
71179     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
71180 
71181 
71182 
71183     XSRETURN(argvi);
71184   fail:
71185 
71186 
71187 
71188     SWIG_croak_null();
71189   }
71190 }
71191 
71192 
XS(_wrap_fold_compound_exp_E_interior_loop)71193 XS(_wrap_fold_compound_exp_E_interior_loop) {
71194   {
71195     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71196     int arg2 ;
71197     int arg3 ;
71198     int arg4 ;
71199     int arg5 ;
71200     void *argp1 = 0 ;
71201     int res1 = 0 ;
71202     int val2 ;
71203     int ecode2 = 0 ;
71204     int val3 ;
71205     int ecode3 = 0 ;
71206     int val4 ;
71207     int ecode4 = 0 ;
71208     int val5 ;
71209     int ecode5 = 0 ;
71210     int argvi = 0;
71211     double result;
71212     dXSARGS;
71213 
71214     if ((items < 5) || (items > 5)) {
71215       SWIG_croak("Usage: fold_compound_exp_E_interior_loop(self,i,j,k,l);");
71216     }
71217     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71218     if (!SWIG_IsOK(res1)) {
71219       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_exp_E_interior_loop" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71220     }
71221     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71222     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
71223     if (!SWIG_IsOK(ecode2)) {
71224       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_exp_E_interior_loop" "', argument " "2"" of type '" "int""'");
71225     }
71226     arg2 = static_cast< int >(val2);
71227     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
71228     if (!SWIG_IsOK(ecode3)) {
71229       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_exp_E_interior_loop" "', argument " "3"" of type '" "int""'");
71230     }
71231     arg3 = static_cast< int >(val3);
71232     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
71233     if (!SWIG_IsOK(ecode4)) {
71234       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_exp_E_interior_loop" "', argument " "4"" of type '" "int""'");
71235     }
71236     arg4 = static_cast< int >(val4);
71237     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
71238     if (!SWIG_IsOK(ecode5)) {
71239       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_exp_E_interior_loop" "', argument " "5"" of type '" "int""'");
71240     }
71241     arg5 = static_cast< int >(val5);
71242     {
71243       try {
71244         result = (double)vrna_fold_compound_t_exp_E_interior_loop(arg1,arg2,arg3,arg4,arg5);
71245       } catch (const std::exception& e) {
71246         SWIG_exception(SWIG_RuntimeError, e.what());
71247       }
71248     }
71249     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
71250 
71251 
71252 
71253 
71254 
71255     XSRETURN(argvi);
71256   fail:
71257 
71258 
71259 
71260 
71261 
71262     SWIG_croak_null();
71263   }
71264 }
71265 
71266 
XS(_wrap_fold_compound_maxmimum_matching)71267 XS(_wrap_fold_compound_maxmimum_matching) {
71268   {
71269     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71270     void *argp1 = 0 ;
71271     int res1 = 0 ;
71272     int argvi = 0;
71273     int result;
71274     dXSARGS;
71275 
71276     if ((items < 1) || (items > 1)) {
71277       SWIG_croak("Usage: fold_compound_maxmimum_matching(self);");
71278     }
71279     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71280     if (!SWIG_IsOK(res1)) {
71281       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_maxmimum_matching" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71282     }
71283     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71284     {
71285       try {
71286         result = (int)vrna_fold_compound_t_maxmimum_matching(arg1);
71287       } catch (const std::exception& e) {
71288         SWIG_exception(SWIG_RuntimeError, e.what());
71289       }
71290     }
71291     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
71292 
71293     XSRETURN(argvi);
71294   fail:
71295 
71296     SWIG_croak_null();
71297   }
71298 }
71299 
71300 
XS(_wrap_fold_compound_mfe)71301 XS(_wrap_fold_compound_mfe) {
71302   {
71303     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71304     float *arg2 = (float *) 0 ;
71305     void *argp1 = 0 ;
71306     int res1 = 0 ;
71307     float temp2 ;
71308     int res2 = SWIG_TMPOBJ ;
71309     int argvi = 0;
71310     char *result = 0 ;
71311     dXSARGS;
71312 
71313     arg2 = &temp2;
71314     if ((items < 1) || (items > 1)) {
71315       SWIG_croak("Usage: fold_compound_mfe(self);");
71316     }
71317     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71318     if (!SWIG_IsOK(res1)) {
71319       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_mfe" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71320     }
71321     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71322     {
71323       try {
71324         result = (char *)vrna_fold_compound_t_mfe(arg1,arg2);
71325       } catch (const std::exception& e) {
71326         SWIG_exception(SWIG_RuntimeError, e.what());
71327       }
71328     }
71329     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
71330     if (SWIG_IsTmpObj(res2)) {
71331       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
71332     } else {
71333       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
71334       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_float, new_flags); argvi++  ;
71335     }
71336 
71337 
71338     delete[] result;
71339     XSRETURN(argvi);
71340   fail:
71341 
71342 
71343     SWIG_croak_null();
71344   }
71345 }
71346 
71347 
XS(_wrap_fold_compound_mfe_dimer)71348 XS(_wrap_fold_compound_mfe_dimer) {
71349   {
71350     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71351     float *arg2 = (float *) 0 ;
71352     void *argp1 = 0 ;
71353     int res1 = 0 ;
71354     float temp2 ;
71355     int res2 = SWIG_TMPOBJ ;
71356     int argvi = 0;
71357     char *result = 0 ;
71358     dXSARGS;
71359 
71360     arg2 = &temp2;
71361     if ((items < 1) || (items > 1)) {
71362       SWIG_croak("Usage: fold_compound_mfe_dimer(self);");
71363     }
71364     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71365     if (!SWIG_IsOK(res1)) {
71366       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_mfe_dimer" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71367     }
71368     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71369     {
71370       try {
71371         result = (char *)vrna_fold_compound_t_mfe_dimer(arg1,arg2);
71372       } catch (const std::exception& e) {
71373         SWIG_exception(SWIG_RuntimeError, e.what());
71374       }
71375     }
71376     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
71377     if (SWIG_IsTmpObj(res2)) {
71378       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
71379     } else {
71380       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
71381       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_float, new_flags); argvi++  ;
71382     }
71383 
71384 
71385     delete[] result;
71386     XSRETURN(argvi);
71387   fail:
71388 
71389 
71390     SWIG_croak_null();
71391   }
71392 }
71393 
71394 
XS(_wrap_fold_compound_backtrack__SWIG_0)71395 XS(_wrap_fold_compound_backtrack__SWIG_0) {
71396   {
71397     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71398     unsigned int arg2 ;
71399     float *arg3 = (float *) 0 ;
71400     void *argp1 = 0 ;
71401     int res1 = 0 ;
71402     unsigned int val2 ;
71403     int ecode2 = 0 ;
71404     float temp3 ;
71405     int res3 = SWIG_TMPOBJ ;
71406     int argvi = 0;
71407     char *result = 0 ;
71408     dXSARGS;
71409 
71410     arg3 = &temp3;
71411     if ((items < 2) || (items > 2)) {
71412       SWIG_croak("Usage: fold_compound_backtrack(self,length);");
71413     }
71414     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71415     if (!SWIG_IsOK(res1)) {
71416       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_backtrack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71417     }
71418     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71419     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
71420     if (!SWIG_IsOK(ecode2)) {
71421       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_backtrack" "', argument " "2"" of type '" "unsigned int""'");
71422     }
71423     arg2 = static_cast< unsigned int >(val2);
71424     {
71425       try {
71426         result = (char *)vrna_fold_compound_t_backtrack__SWIG_0(arg1,arg2,arg3);
71427       } catch (const std::exception& e) {
71428         SWIG_exception(SWIG_RuntimeError, e.what());
71429       }
71430     }
71431     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
71432     if (SWIG_IsTmpObj(res3)) {
71433       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
71434     } else {
71435       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
71436       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
71437     }
71438 
71439 
71440 
71441     delete[] result;
71442     XSRETURN(argvi);
71443   fail:
71444 
71445 
71446 
71447     SWIG_croak_null();
71448   }
71449 }
71450 
71451 
XS(_wrap_fold_compound_backtrack__SWIG_1)71452 XS(_wrap_fold_compound_backtrack__SWIG_1) {
71453   {
71454     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71455     float *arg2 = (float *) 0 ;
71456     void *argp1 = 0 ;
71457     int res1 = 0 ;
71458     float temp2 ;
71459     int res2 = SWIG_TMPOBJ ;
71460     int argvi = 0;
71461     char *result = 0 ;
71462     dXSARGS;
71463 
71464     arg2 = &temp2;
71465     if ((items < 1) || (items > 1)) {
71466       SWIG_croak("Usage: fold_compound_backtrack(self);");
71467     }
71468     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71469     if (!SWIG_IsOK(res1)) {
71470       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_backtrack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71471     }
71472     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71473     {
71474       try {
71475         result = (char *)vrna_fold_compound_t_backtrack__SWIG_1(arg1,arg2);
71476       } catch (const std::exception& e) {
71477         SWIG_exception(SWIG_RuntimeError, e.what());
71478       }
71479     }
71480     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
71481     if (SWIG_IsTmpObj(res2)) {
71482       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
71483     } else {
71484       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
71485       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_float, new_flags); argvi++  ;
71486     }
71487 
71488 
71489     delete[] result;
71490     XSRETURN(argvi);
71491   fail:
71492 
71493 
71494     SWIG_croak_null();
71495   }
71496 }
71497 
71498 
XS(_wrap_fold_compound_backtrack)71499 XS(_wrap_fold_compound_backtrack) {
71500   dXSARGS;
71501 
71502   {
71503     unsigned long _index = 0;
71504     SWIG_TypeRank _rank = 0;
71505     if (items == 1) {
71506       SWIG_TypeRank _ranki = 0;
71507       SWIG_TypeRank _rankm = 0;
71508       SWIG_TypeRank _pi = 1;
71509       int _v = 0;
71510       {
71511         void *vptr = 0;
71512         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
71513         _v = SWIG_CheckState(res);
71514       }
71515       if (!_v) goto check_1;
71516       _ranki += _v*_pi;
71517       _rankm += _pi;
71518       _pi *= SWIG_MAXCASTRANK;
71519       if (!_index || (_ranki < _rank)) {
71520         _rank = _ranki; _index = 1;
71521         if (_rank == _rankm) goto dispatch;
71522       }
71523     }
71524   check_1:
71525 
71526     if (items == 2) {
71527       SWIG_TypeRank _ranki = 0;
71528       SWIG_TypeRank _rankm = 0;
71529       SWIG_TypeRank _pi = 1;
71530       int _v = 0;
71531       {
71532         void *vptr = 0;
71533         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
71534         _v = SWIG_CheckState(res);
71535       }
71536       if (!_v) goto check_2;
71537       _ranki += _v*_pi;
71538       _rankm += _pi;
71539       _pi *= SWIG_MAXCASTRANK;
71540       {
71541         {
71542           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
71543           _v = SWIG_CheckState(res);
71544         }
71545       }
71546       if (!_v) goto check_2;
71547       _ranki += _v*_pi;
71548       _rankm += _pi;
71549       _pi *= SWIG_MAXCASTRANK;
71550       if (!_index || (_ranki < _rank)) {
71551         _rank = _ranki; _index = 2;
71552         if (_rank == _rankm) goto dispatch;
71553       }
71554     }
71555   check_2:
71556 
71557   dispatch:
71558     switch(_index) {
71559     case 1:
71560       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_backtrack__SWIG_1); return;
71561     case 2:
71562       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_backtrack__SWIG_0); return;
71563     }
71564   }
71565 
71566   croak("No matching function for overloaded 'fold_compound_backtrack'");
71567   XSRETURN(0);
71568 }
71569 
71570 
XS(_wrap_fold_compound_mfe_window__SWIG_0)71571 XS(_wrap_fold_compound_mfe_window__SWIG_0) {
71572   {
71573     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71574     FILE *arg2 = (FILE *) 0 ;
71575     void *argp1 = 0 ;
71576     int res1 = 0 ;
71577     int argvi = 0;
71578     float result;
71579     dXSARGS;
71580 
71581     if ((items < 2) || (items > 2)) {
71582       SWIG_croak("Usage: fold_compound_mfe_window(self,nullfile);");
71583     }
71584     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71585     if (!SWIG_IsOK(res1)) {
71586       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_mfe_window" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71587     }
71588     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71589     {
71590       if (SvOK(ST(1))) /* check for undef */
71591       arg2 = PerlIO_findFILE(IoIFP(sv_2io(ST(1))));
71592       else  arg2 = NULL;
71593     }
71594     {
71595       try {
71596         result = (float)vrna_fold_compound_t_mfe_window__SWIG_0(arg1,arg2);
71597       } catch (const std::exception& e) {
71598         SWIG_exception(SWIG_RuntimeError, e.what());
71599       }
71600     }
71601     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
71602 
71603 
71604     XSRETURN(argvi);
71605   fail:
71606 
71607 
71608     SWIG_croak_null();
71609   }
71610 }
71611 
71612 
XS(_wrap_fold_compound_mfe_window__SWIG_1)71613 XS(_wrap_fold_compound_mfe_window__SWIG_1) {
71614   {
71615     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71616     void *argp1 = 0 ;
71617     int res1 = 0 ;
71618     int argvi = 0;
71619     float result;
71620     dXSARGS;
71621 
71622     if ((items < 1) || (items > 1)) {
71623       SWIG_croak("Usage: fold_compound_mfe_window(self);");
71624     }
71625     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71626     if (!SWIG_IsOK(res1)) {
71627       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_mfe_window" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71628     }
71629     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71630     {
71631       try {
71632         result = (float)vrna_fold_compound_t_mfe_window__SWIG_0(arg1);
71633       } catch (const std::exception& e) {
71634         SWIG_exception(SWIG_RuntimeError, e.what());
71635       }
71636     }
71637     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
71638 
71639     XSRETURN(argvi);
71640   fail:
71641 
71642     SWIG_croak_null();
71643   }
71644 }
71645 
71646 
XS(_wrap_fold_compound_mfe_window)71647 XS(_wrap_fold_compound_mfe_window) {
71648   dXSARGS;
71649 
71650   {
71651     unsigned long _index = 0;
71652     SWIG_TypeRank _rank = 0;
71653     if (items == 1) {
71654       SWIG_TypeRank _ranki = 0;
71655       SWIG_TypeRank _rankm = 0;
71656       SWIG_TypeRank _pi = 1;
71657       int _v = 0;
71658       {
71659         void *vptr = 0;
71660         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
71661         _v = SWIG_CheckState(res);
71662       }
71663       if (!_v) goto check_1;
71664       _ranki += _v*_pi;
71665       _rankm += _pi;
71666       _pi *= SWIG_MAXCASTRANK;
71667       if (!_index || (_ranki < _rank)) {
71668         _rank = _ranki; _index = 1;
71669         if (_rank == _rankm) goto dispatch;
71670       }
71671     }
71672   check_1:
71673 
71674     if (items == 2) {
71675       SWIG_TypeRank _ranki = 0;
71676       SWIG_TypeRank _rankm = 0;
71677       SWIG_TypeRank _pi = 1;
71678       int _v = 0;
71679       {
71680         void *vptr = 0;
71681         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
71682         _v = SWIG_CheckState(res);
71683       }
71684       if (!_v) goto check_2;
71685       _ranki += _v*_pi;
71686       _rankm += _pi;
71687       _pi *= SWIG_MAXCASTRANK;
71688       {
71689         {
71690           if (SvOK(ST(1)))
71691           _v = (sv_2io(ST(1))) ? 1 : 0;
71692         }
71693       }
71694       if (!_v) goto check_2;
71695       _ranki += _v*_pi;
71696       _rankm += _pi;
71697       _pi *= SWIG_MAXCASTRANK;
71698       if (!_index || (_ranki < _rank)) {
71699         _rank = _ranki; _index = 2;
71700         if (_rank == _rankm) goto dispatch;
71701       }
71702     }
71703   check_2:
71704 
71705   dispatch:
71706     switch(_index) {
71707     case 1:
71708       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_mfe_window__SWIG_1); return;
71709     case 2:
71710       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_mfe_window__SWIG_0); return;
71711     }
71712   }
71713 
71714   croak("No matching function for overloaded 'fold_compound_mfe_window'");
71715   XSRETURN(0);
71716 }
71717 
71718 
XS(_wrap_fold_compound_mfe_window_zscore__SWIG_0)71719 XS(_wrap_fold_compound_mfe_window_zscore__SWIG_0) {
71720   {
71721     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71722     double arg2 ;
71723     FILE *arg3 = (FILE *) 0 ;
71724     void *argp1 = 0 ;
71725     int res1 = 0 ;
71726     double val2 ;
71727     int ecode2 = 0 ;
71728     int argvi = 0;
71729     float result;
71730     dXSARGS;
71731 
71732     if ((items < 3) || (items > 3)) {
71733       SWIG_croak("Usage: fold_compound_mfe_window_zscore(self,min_z,nullfile);");
71734     }
71735     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71736     if (!SWIG_IsOK(res1)) {
71737       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_mfe_window_zscore" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71738     }
71739     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71740     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
71741     if (!SWIG_IsOK(ecode2)) {
71742       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_mfe_window_zscore" "', argument " "2"" of type '" "double""'");
71743     }
71744     arg2 = static_cast< double >(val2);
71745     {
71746       if (SvOK(ST(2))) /* check for undef */
71747       arg3 = PerlIO_findFILE(IoIFP(sv_2io(ST(2))));
71748       else  arg3 = NULL;
71749     }
71750     {
71751       try {
71752         result = (float)vrna_fold_compound_t_mfe_window_zscore__SWIG_0(arg1,arg2,arg3);
71753       } catch (const std::exception& e) {
71754         SWIG_exception(SWIG_RuntimeError, e.what());
71755       }
71756     }
71757     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
71758 
71759 
71760 
71761     XSRETURN(argvi);
71762   fail:
71763 
71764 
71765 
71766     SWIG_croak_null();
71767   }
71768 }
71769 
71770 
XS(_wrap_fold_compound_mfe_window_zscore__SWIG_1)71771 XS(_wrap_fold_compound_mfe_window_zscore__SWIG_1) {
71772   {
71773     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71774     double arg2 ;
71775     void *argp1 = 0 ;
71776     int res1 = 0 ;
71777     double val2 ;
71778     int ecode2 = 0 ;
71779     int argvi = 0;
71780     float result;
71781     dXSARGS;
71782 
71783     if ((items < 2) || (items > 2)) {
71784       SWIG_croak("Usage: fold_compound_mfe_window_zscore(self,min_z);");
71785     }
71786     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71787     if (!SWIG_IsOK(res1)) {
71788       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_mfe_window_zscore" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71789     }
71790     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71791     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
71792     if (!SWIG_IsOK(ecode2)) {
71793       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_mfe_window_zscore" "', argument " "2"" of type '" "double""'");
71794     }
71795     arg2 = static_cast< double >(val2);
71796     {
71797       try {
71798         result = (float)vrna_fold_compound_t_mfe_window_zscore__SWIG_0(arg1,arg2);
71799       } catch (const std::exception& e) {
71800         SWIG_exception(SWIG_RuntimeError, e.what());
71801       }
71802     }
71803     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
71804 
71805 
71806     XSRETURN(argvi);
71807   fail:
71808 
71809 
71810     SWIG_croak_null();
71811   }
71812 }
71813 
71814 
XS(_wrap_fold_compound_mfe_window_zscore)71815 XS(_wrap_fold_compound_mfe_window_zscore) {
71816   dXSARGS;
71817 
71818   {
71819     unsigned long _index = 0;
71820     SWIG_TypeRank _rank = 0;
71821     if (items == 2) {
71822       SWIG_TypeRank _ranki = 0;
71823       SWIG_TypeRank _rankm = 0;
71824       SWIG_TypeRank _pi = 1;
71825       int _v = 0;
71826       {
71827         void *vptr = 0;
71828         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
71829         _v = SWIG_CheckState(res);
71830       }
71831       if (!_v) goto check_1;
71832       _ranki += _v*_pi;
71833       _rankm += _pi;
71834       _pi *= SWIG_MAXCASTRANK;
71835       {
71836         {
71837           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
71838           _v = SWIG_CheckState(res);
71839         }
71840       }
71841       if (!_v) goto check_1;
71842       _ranki += _v*_pi;
71843       _rankm += _pi;
71844       _pi *= SWIG_MAXCASTRANK;
71845       if (!_index || (_ranki < _rank)) {
71846         _rank = _ranki; _index = 1;
71847         if (_rank == _rankm) goto dispatch;
71848       }
71849     }
71850   check_1:
71851 
71852     if (items == 3) {
71853       SWIG_TypeRank _ranki = 0;
71854       SWIG_TypeRank _rankm = 0;
71855       SWIG_TypeRank _pi = 1;
71856       int _v = 0;
71857       {
71858         void *vptr = 0;
71859         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
71860         _v = SWIG_CheckState(res);
71861       }
71862       if (!_v) goto check_2;
71863       _ranki += _v*_pi;
71864       _rankm += _pi;
71865       _pi *= SWIG_MAXCASTRANK;
71866       {
71867         {
71868           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
71869           _v = SWIG_CheckState(res);
71870         }
71871       }
71872       if (!_v) goto check_2;
71873       _ranki += _v*_pi;
71874       _rankm += _pi;
71875       _pi *= SWIG_MAXCASTRANK;
71876       {
71877         {
71878           if (SvOK(ST(2)))
71879           _v = (sv_2io(ST(2))) ? 1 : 0;
71880         }
71881       }
71882       if (!_v) goto check_2;
71883       _ranki += _v*_pi;
71884       _rankm += _pi;
71885       _pi *= SWIG_MAXCASTRANK;
71886       if (!_index || (_ranki < _rank)) {
71887         _rank = _ranki; _index = 2;
71888         if (_rank == _rankm) goto dispatch;
71889       }
71890     }
71891   check_2:
71892 
71893   dispatch:
71894     switch(_index) {
71895     case 1:
71896       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_mfe_window_zscore__SWIG_1); return;
71897     case 2:
71898       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_mfe_window_zscore__SWIG_0); return;
71899     }
71900   }
71901 
71902   croak("No matching function for overloaded 'fold_compound_mfe_window_zscore'");
71903   XSRETURN(0);
71904 }
71905 
71906 
XS(_wrap_fold_compound_zsc_filter_init__SWIG_0)71907 XS(_wrap_fold_compound_zsc_filter_init__SWIG_0) {
71908   {
71909     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71910     double arg2 ;
71911     unsigned int arg3 ;
71912     void *argp1 = 0 ;
71913     int res1 = 0 ;
71914     double val2 ;
71915     int ecode2 = 0 ;
71916     unsigned int val3 ;
71917     int ecode3 = 0 ;
71918     int argvi = 0;
71919     int result;
71920     dXSARGS;
71921 
71922     if ((items < 3) || (items > 3)) {
71923       SWIG_croak("Usage: fold_compound_zsc_filter_init(self,min_z,options);");
71924     }
71925     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71926     if (!SWIG_IsOK(res1)) {
71927       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_zsc_filter_init" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71928     }
71929     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71930     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
71931     if (!SWIG_IsOK(ecode2)) {
71932       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_zsc_filter_init" "', argument " "2"" of type '" "double""'");
71933     }
71934     arg2 = static_cast< double >(val2);
71935     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
71936     if (!SWIG_IsOK(ecode3)) {
71937       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_zsc_filter_init" "', argument " "3"" of type '" "unsigned int""'");
71938     }
71939     arg3 = static_cast< unsigned int >(val3);
71940     {
71941       try {
71942         result = (int)vrna_fold_compound_t_zsc_filter_init__SWIG_0(arg1,arg2,arg3);
71943       } catch (const std::exception& e) {
71944         SWIG_exception(SWIG_RuntimeError, e.what());
71945       }
71946     }
71947     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
71948 
71949 
71950 
71951     XSRETURN(argvi);
71952   fail:
71953 
71954 
71955 
71956     SWIG_croak_null();
71957   }
71958 }
71959 
71960 
XS(_wrap_fold_compound_zsc_filter_init__SWIG_1)71961 XS(_wrap_fold_compound_zsc_filter_init__SWIG_1) {
71962   {
71963     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
71964     double arg2 ;
71965     void *argp1 = 0 ;
71966     int res1 = 0 ;
71967     double val2 ;
71968     int ecode2 = 0 ;
71969     int argvi = 0;
71970     int result;
71971     dXSARGS;
71972 
71973     if ((items < 2) || (items > 2)) {
71974       SWIG_croak("Usage: fold_compound_zsc_filter_init(self,min_z);");
71975     }
71976     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
71977     if (!SWIG_IsOK(res1)) {
71978       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_zsc_filter_init" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
71979     }
71980     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
71981     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
71982     if (!SWIG_IsOK(ecode2)) {
71983       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_zsc_filter_init" "', argument " "2"" of type '" "double""'");
71984     }
71985     arg2 = static_cast< double >(val2);
71986     {
71987       try {
71988         result = (int)vrna_fold_compound_t_zsc_filter_init__SWIG_0(arg1,arg2);
71989       } catch (const std::exception& e) {
71990         SWIG_exception(SWIG_RuntimeError, e.what());
71991       }
71992     }
71993     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
71994 
71995 
71996     XSRETURN(argvi);
71997   fail:
71998 
71999 
72000     SWIG_croak_null();
72001   }
72002 }
72003 
72004 
XS(_wrap_fold_compound_zsc_filter_init__SWIG_2)72005 XS(_wrap_fold_compound_zsc_filter_init__SWIG_2) {
72006   {
72007     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72008     void *argp1 = 0 ;
72009     int res1 = 0 ;
72010     int argvi = 0;
72011     int result;
72012     dXSARGS;
72013 
72014     if ((items < 1) || (items > 1)) {
72015       SWIG_croak("Usage: fold_compound_zsc_filter_init(self);");
72016     }
72017     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
72018     if (!SWIG_IsOK(res1)) {
72019       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_zsc_filter_init" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
72020     }
72021     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
72022     {
72023       try {
72024         result = (int)vrna_fold_compound_t_zsc_filter_init__SWIG_0(arg1);
72025       } catch (const std::exception& e) {
72026         SWIG_exception(SWIG_RuntimeError, e.what());
72027       }
72028     }
72029     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
72030 
72031     XSRETURN(argvi);
72032   fail:
72033 
72034     SWIG_croak_null();
72035   }
72036 }
72037 
72038 
XS(_wrap_fold_compound_zsc_filter_init)72039 XS(_wrap_fold_compound_zsc_filter_init) {
72040   dXSARGS;
72041 
72042   {
72043     unsigned long _index = 0;
72044     SWIG_TypeRank _rank = 0;
72045     if (items == 1) {
72046       SWIG_TypeRank _ranki = 0;
72047       SWIG_TypeRank _rankm = 0;
72048       SWIG_TypeRank _pi = 1;
72049       int _v = 0;
72050       {
72051         void *vptr = 0;
72052         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
72053         _v = SWIG_CheckState(res);
72054       }
72055       if (!_v) goto check_1;
72056       _ranki += _v*_pi;
72057       _rankm += _pi;
72058       _pi *= SWIG_MAXCASTRANK;
72059       if (!_index || (_ranki < _rank)) {
72060         _rank = _ranki; _index = 1;
72061         if (_rank == _rankm) goto dispatch;
72062       }
72063     }
72064   check_1:
72065 
72066     if (items == 2) {
72067       SWIG_TypeRank _ranki = 0;
72068       SWIG_TypeRank _rankm = 0;
72069       SWIG_TypeRank _pi = 1;
72070       int _v = 0;
72071       {
72072         void *vptr = 0;
72073         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
72074         _v = SWIG_CheckState(res);
72075       }
72076       if (!_v) goto check_2;
72077       _ranki += _v*_pi;
72078       _rankm += _pi;
72079       _pi *= SWIG_MAXCASTRANK;
72080       {
72081         {
72082           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
72083           _v = SWIG_CheckState(res);
72084         }
72085       }
72086       if (!_v) goto check_2;
72087       _ranki += _v*_pi;
72088       _rankm += _pi;
72089       _pi *= SWIG_MAXCASTRANK;
72090       if (!_index || (_ranki < _rank)) {
72091         _rank = _ranki; _index = 2;
72092         if (_rank == _rankm) goto dispatch;
72093       }
72094     }
72095   check_2:
72096 
72097     if (items == 3) {
72098       SWIG_TypeRank _ranki = 0;
72099       SWIG_TypeRank _rankm = 0;
72100       SWIG_TypeRank _pi = 1;
72101       int _v = 0;
72102       {
72103         void *vptr = 0;
72104         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
72105         _v = SWIG_CheckState(res);
72106       }
72107       if (!_v) goto check_3;
72108       _ranki += _v*_pi;
72109       _rankm += _pi;
72110       _pi *= SWIG_MAXCASTRANK;
72111       {
72112         {
72113           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
72114           _v = SWIG_CheckState(res);
72115         }
72116       }
72117       if (!_v) goto check_3;
72118       _ranki += _v*_pi;
72119       _rankm += _pi;
72120       _pi *= SWIG_MAXCASTRANK;
72121       {
72122         {
72123           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
72124           _v = SWIG_CheckState(res);
72125         }
72126       }
72127       if (!_v) goto check_3;
72128       _ranki += _v*_pi;
72129       _rankm += _pi;
72130       _pi *= SWIG_MAXCASTRANK;
72131       if (!_index || (_ranki < _rank)) {
72132         _rank = _ranki; _index = 3;
72133         if (_rank == _rankm) goto dispatch;
72134       }
72135     }
72136   check_3:
72137 
72138   dispatch:
72139     switch(_index) {
72140     case 1:
72141       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_zsc_filter_init__SWIG_2); return;
72142     case 2:
72143       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_zsc_filter_init__SWIG_1); return;
72144     case 3:
72145       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_zsc_filter_init__SWIG_0); return;
72146     }
72147   }
72148 
72149   croak("No matching function for overloaded 'fold_compound_zsc_filter_init'");
72150   XSRETURN(0);
72151 }
72152 
72153 
XS(_wrap_fold_compound_zsc_filter_update__SWIG_0)72154 XS(_wrap_fold_compound_zsc_filter_update__SWIG_0) {
72155   {
72156     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72157     double arg2 ;
72158     unsigned int arg3 ;
72159     void *argp1 = 0 ;
72160     int res1 = 0 ;
72161     double val2 ;
72162     int ecode2 = 0 ;
72163     unsigned int val3 ;
72164     int ecode3 = 0 ;
72165     int argvi = 0;
72166     int result;
72167     dXSARGS;
72168 
72169     if ((items < 3) || (items > 3)) {
72170       SWIG_croak("Usage: fold_compound_zsc_filter_update(self,min_z,options);");
72171     }
72172     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
72173     if (!SWIG_IsOK(res1)) {
72174       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_zsc_filter_update" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
72175     }
72176     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
72177     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
72178     if (!SWIG_IsOK(ecode2)) {
72179       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_zsc_filter_update" "', argument " "2"" of type '" "double""'");
72180     }
72181     arg2 = static_cast< double >(val2);
72182     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
72183     if (!SWIG_IsOK(ecode3)) {
72184       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_zsc_filter_update" "', argument " "3"" of type '" "unsigned int""'");
72185     }
72186     arg3 = static_cast< unsigned int >(val3);
72187     {
72188       try {
72189         result = (int)vrna_fold_compound_t_zsc_filter_update__SWIG_0(arg1,arg2,arg3);
72190       } catch (const std::exception& e) {
72191         SWIG_exception(SWIG_RuntimeError, e.what());
72192       }
72193     }
72194     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
72195 
72196 
72197 
72198     XSRETURN(argvi);
72199   fail:
72200 
72201 
72202 
72203     SWIG_croak_null();
72204   }
72205 }
72206 
72207 
XS(_wrap_fold_compound_zsc_filter_update__SWIG_1)72208 XS(_wrap_fold_compound_zsc_filter_update__SWIG_1) {
72209   {
72210     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72211     double arg2 ;
72212     void *argp1 = 0 ;
72213     int res1 = 0 ;
72214     double val2 ;
72215     int ecode2 = 0 ;
72216     int argvi = 0;
72217     int result;
72218     dXSARGS;
72219 
72220     if ((items < 2) || (items > 2)) {
72221       SWIG_croak("Usage: fold_compound_zsc_filter_update(self,min_z);");
72222     }
72223     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
72224     if (!SWIG_IsOK(res1)) {
72225       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_zsc_filter_update" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
72226     }
72227     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
72228     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
72229     if (!SWIG_IsOK(ecode2)) {
72230       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_zsc_filter_update" "', argument " "2"" of type '" "double""'");
72231     }
72232     arg2 = static_cast< double >(val2);
72233     {
72234       try {
72235         result = (int)vrna_fold_compound_t_zsc_filter_update__SWIG_0(arg1,arg2);
72236       } catch (const std::exception& e) {
72237         SWIG_exception(SWIG_RuntimeError, e.what());
72238       }
72239     }
72240     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
72241 
72242 
72243     XSRETURN(argvi);
72244   fail:
72245 
72246 
72247     SWIG_croak_null();
72248   }
72249 }
72250 
72251 
XS(_wrap_fold_compound_zsc_filter_update)72252 XS(_wrap_fold_compound_zsc_filter_update) {
72253   dXSARGS;
72254 
72255   {
72256     unsigned long _index = 0;
72257     SWIG_TypeRank _rank = 0;
72258     if (items == 2) {
72259       SWIG_TypeRank _ranki = 0;
72260       SWIG_TypeRank _rankm = 0;
72261       SWIG_TypeRank _pi = 1;
72262       int _v = 0;
72263       {
72264         void *vptr = 0;
72265         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
72266         _v = SWIG_CheckState(res);
72267       }
72268       if (!_v) goto check_1;
72269       _ranki += _v*_pi;
72270       _rankm += _pi;
72271       _pi *= SWIG_MAXCASTRANK;
72272       {
72273         {
72274           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
72275           _v = SWIG_CheckState(res);
72276         }
72277       }
72278       if (!_v) goto check_1;
72279       _ranki += _v*_pi;
72280       _rankm += _pi;
72281       _pi *= SWIG_MAXCASTRANK;
72282       if (!_index || (_ranki < _rank)) {
72283         _rank = _ranki; _index = 1;
72284         if (_rank == _rankm) goto dispatch;
72285       }
72286     }
72287   check_1:
72288 
72289     if (items == 3) {
72290       SWIG_TypeRank _ranki = 0;
72291       SWIG_TypeRank _rankm = 0;
72292       SWIG_TypeRank _pi = 1;
72293       int _v = 0;
72294       {
72295         void *vptr = 0;
72296         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
72297         _v = SWIG_CheckState(res);
72298       }
72299       if (!_v) goto check_2;
72300       _ranki += _v*_pi;
72301       _rankm += _pi;
72302       _pi *= SWIG_MAXCASTRANK;
72303       {
72304         {
72305           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
72306           _v = SWIG_CheckState(res);
72307         }
72308       }
72309       if (!_v) goto check_2;
72310       _ranki += _v*_pi;
72311       _rankm += _pi;
72312       _pi *= SWIG_MAXCASTRANK;
72313       {
72314         {
72315           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
72316           _v = SWIG_CheckState(res);
72317         }
72318       }
72319       if (!_v) goto check_2;
72320       _ranki += _v*_pi;
72321       _rankm += _pi;
72322       _pi *= SWIG_MAXCASTRANK;
72323       if (!_index || (_ranki < _rank)) {
72324         _rank = _ranki; _index = 2;
72325         if (_rank == _rankm) goto dispatch;
72326       }
72327     }
72328   check_2:
72329 
72330   dispatch:
72331     switch(_index) {
72332     case 1:
72333       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_zsc_filter_update__SWIG_1); return;
72334     case 2:
72335       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_zsc_filter_update__SWIG_0); return;
72336     }
72337   }
72338 
72339   croak("No matching function for overloaded 'fold_compound_zsc_filter_update'");
72340   XSRETURN(0);
72341 }
72342 
72343 
XS(_wrap_fold_compound_zsc_filter_free)72344 XS(_wrap_fold_compound_zsc_filter_free) {
72345   {
72346     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72347     void *argp1 = 0 ;
72348     int res1 = 0 ;
72349     int argvi = 0;
72350     dXSARGS;
72351 
72352     if ((items < 1) || (items > 1)) {
72353       SWIG_croak("Usage: fold_compound_zsc_filter_free(self);");
72354     }
72355     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
72356     if (!SWIG_IsOK(res1)) {
72357       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_zsc_filter_free" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
72358     }
72359     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
72360     {
72361       try {
72362         vrna_fold_compound_t_zsc_filter_free(arg1);
72363       } catch (const std::exception& e) {
72364         SWIG_exception(SWIG_RuntimeError, e.what());
72365       }
72366     }
72367     ST(argvi) = &PL_sv_undef;
72368 
72369     XSRETURN(argvi);
72370   fail:
72371 
72372     SWIG_croak_null();
72373   }
72374 }
72375 
72376 
XS(_wrap_fold_compound_zsc_filter_on)72377 XS(_wrap_fold_compound_zsc_filter_on) {
72378   {
72379     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72380     void *argp1 = 0 ;
72381     int res1 = 0 ;
72382     int argvi = 0;
72383     int result;
72384     dXSARGS;
72385 
72386     if ((items < 1) || (items > 1)) {
72387       SWIG_croak("Usage: fold_compound_zsc_filter_on(self);");
72388     }
72389     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
72390     if (!SWIG_IsOK(res1)) {
72391       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_zsc_filter_on" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
72392     }
72393     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
72394     {
72395       try {
72396         result = (int)vrna_fold_compound_t_zsc_filter_on(arg1);
72397       } catch (const std::exception& e) {
72398         SWIG_exception(SWIG_RuntimeError, e.what());
72399       }
72400     }
72401     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
72402 
72403     XSRETURN(argvi);
72404   fail:
72405 
72406     SWIG_croak_null();
72407   }
72408 }
72409 
72410 
XS(_wrap_fold_compound_zsc_filter_threshold)72411 XS(_wrap_fold_compound_zsc_filter_threshold) {
72412   {
72413     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72414     void *argp1 = 0 ;
72415     int res1 = 0 ;
72416     int argvi = 0;
72417     double result;
72418     dXSARGS;
72419 
72420     if ((items < 1) || (items > 1)) {
72421       SWIG_croak("Usage: fold_compound_zsc_filter_threshold(self);");
72422     }
72423     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
72424     if (!SWIG_IsOK(res1)) {
72425       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_zsc_filter_threshold" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
72426     }
72427     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
72428     {
72429       try {
72430         result = (double)vrna_fold_compound_t_zsc_filter_threshold(arg1);
72431       } catch (const std::exception& e) {
72432         SWIG_exception(SWIG_RuntimeError, e.what());
72433       }
72434     }
72435     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
72436 
72437     XSRETURN(argvi);
72438   fail:
72439 
72440     SWIG_croak_null();
72441   }
72442 }
72443 
72444 
XS(_wrap_fold_compound_zsc_compute)72445 XS(_wrap_fold_compound_zsc_compute) {
72446   {
72447     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72448     unsigned int arg2 ;
72449     unsigned int arg3 ;
72450     int arg4 ;
72451     void *argp1 = 0 ;
72452     int res1 = 0 ;
72453     unsigned int val2 ;
72454     int ecode2 = 0 ;
72455     unsigned int val3 ;
72456     int ecode3 = 0 ;
72457     int val4 ;
72458     int ecode4 = 0 ;
72459     int argvi = 0;
72460     double result;
72461     dXSARGS;
72462 
72463     if ((items < 4) || (items > 4)) {
72464       SWIG_croak("Usage: fold_compound_zsc_compute(self,i,j,e);");
72465     }
72466     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
72467     if (!SWIG_IsOK(res1)) {
72468       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_zsc_compute" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
72469     }
72470     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
72471     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
72472     if (!SWIG_IsOK(ecode2)) {
72473       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_zsc_compute" "', argument " "2"" of type '" "unsigned int""'");
72474     }
72475     arg2 = static_cast< unsigned int >(val2);
72476     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
72477     if (!SWIG_IsOK(ecode3)) {
72478       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_zsc_compute" "', argument " "3"" of type '" "unsigned int""'");
72479     }
72480     arg3 = static_cast< unsigned int >(val3);
72481     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
72482     if (!SWIG_IsOK(ecode4)) {
72483       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_zsc_compute" "', argument " "4"" of type '" "int""'");
72484     }
72485     arg4 = static_cast< int >(val4);
72486     {
72487       try {
72488         result = (double)vrna_fold_compound_t_zsc_compute(arg1,arg2,arg3,arg4);
72489       } catch (const std::exception& e) {
72490         SWIG_exception(SWIG_RuntimeError, e.what());
72491       }
72492     }
72493     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
72494 
72495 
72496 
72497 
72498     XSRETURN(argvi);
72499   fail:
72500 
72501 
72502 
72503 
72504     SWIG_croak_null();
72505   }
72506 }
72507 
72508 
XS(_wrap_fold_compound_pf)72509 XS(_wrap_fold_compound_pf) {
72510   {
72511     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72512     float *arg2 = (float *) 0 ;
72513     void *argp1 = 0 ;
72514     int res1 = 0 ;
72515     float temp2 ;
72516     int res2 = SWIG_TMPOBJ ;
72517     int argvi = 0;
72518     char *result = 0 ;
72519     dXSARGS;
72520 
72521     arg2 = &temp2;
72522     if ((items < 1) || (items > 1)) {
72523       SWIG_croak("Usage: fold_compound_pf(self);");
72524     }
72525     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
72526     if (!SWIG_IsOK(res1)) {
72527       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pf" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
72528     }
72529     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
72530     {
72531       try {
72532         result = (char *)vrna_fold_compound_t_pf(arg1,arg2);
72533       } catch (const std::exception& e) {
72534         SWIG_exception(SWIG_RuntimeError, e.what());
72535       }
72536     }
72537     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
72538     if (SWIG_IsTmpObj(res2)) {
72539       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
72540     } else {
72541       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
72542       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_float, new_flags); argvi++  ;
72543     }
72544 
72545 
72546     delete[] result;
72547     XSRETURN(argvi);
72548   fail:
72549 
72550 
72551     SWIG_croak_null();
72552   }
72553 }
72554 
72555 
XS(_wrap_fold_compound_mean_bp_distance)72556 XS(_wrap_fold_compound_mean_bp_distance) {
72557   {
72558     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72559     void *argp1 = 0 ;
72560     int res1 = 0 ;
72561     int argvi = 0;
72562     double result;
72563     dXSARGS;
72564 
72565     if ((items < 1) || (items > 1)) {
72566       SWIG_croak("Usage: fold_compound_mean_bp_distance(self);");
72567     }
72568     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
72569     if (!SWIG_IsOK(res1)) {
72570       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_mean_bp_distance" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
72571     }
72572     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
72573     {
72574       try {
72575         result = (double)vrna_fold_compound_t_mean_bp_distance(arg1);
72576       } catch (const std::exception& e) {
72577         SWIG_exception(SWIG_RuntimeError, e.what());
72578       }
72579     }
72580     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
72581 
72582     XSRETURN(argvi);
72583   fail:
72584 
72585     SWIG_croak_null();
72586   }
72587 }
72588 
72589 
XS(_wrap_fold_compound_ensemble_defect__SWIG_0)72590 XS(_wrap_fold_compound_ensemble_defect__SWIG_0) {
72591   {
72592     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72593     std::string arg2 ;
72594     unsigned int arg3 ;
72595     void *argp1 = 0 ;
72596     int res1 = 0 ;
72597     unsigned int val3 ;
72598     int ecode3 = 0 ;
72599     int argvi = 0;
72600     double result;
72601     dXSARGS;
72602 
72603     if ((items < 3) || (items > 3)) {
72604       SWIG_croak("Usage: fold_compound_ensemble_defect(self,structure,options);");
72605     }
72606     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
72607     if (!SWIG_IsOK(res1)) {
72608       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_ensemble_defect" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
72609     }
72610     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
72611     {
72612       std::string *ptr = (std::string *)0;
72613       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
72614       if (!SWIG_IsOK(res) || !ptr) {
72615         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_ensemble_defect" "', argument " "2"" of type '" "std::string""'");
72616       }
72617       arg2 = *ptr;
72618       if (SWIG_IsNewObj(res)) delete ptr;
72619     }
72620     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
72621     if (!SWIG_IsOK(ecode3)) {
72622       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_ensemble_defect" "', argument " "3"" of type '" "unsigned int""'");
72623     }
72624     arg3 = static_cast< unsigned int >(val3);
72625     {
72626       try {
72627         result = (double)vrna_fold_compound_t_ensemble_defect__SWIG_0(arg1,arg2,arg3);
72628       } catch (const std::exception& e) {
72629         SWIG_exception(SWIG_RuntimeError, e.what());
72630       }
72631     }
72632     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
72633 
72634 
72635 
72636     XSRETURN(argvi);
72637   fail:
72638 
72639 
72640 
72641     SWIG_croak_null();
72642   }
72643 }
72644 
72645 
XS(_wrap_fold_compound_ensemble_defect__SWIG_1)72646 XS(_wrap_fold_compound_ensemble_defect__SWIG_1) {
72647   {
72648     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72649     std::string arg2 ;
72650     void *argp1 = 0 ;
72651     int res1 = 0 ;
72652     int argvi = 0;
72653     double result;
72654     dXSARGS;
72655 
72656     if ((items < 2) || (items > 2)) {
72657       SWIG_croak("Usage: fold_compound_ensemble_defect(self,structure);");
72658     }
72659     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
72660     if (!SWIG_IsOK(res1)) {
72661       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_ensemble_defect" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
72662     }
72663     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
72664     {
72665       std::string *ptr = (std::string *)0;
72666       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
72667       if (!SWIG_IsOK(res) || !ptr) {
72668         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_ensemble_defect" "', argument " "2"" of type '" "std::string""'");
72669       }
72670       arg2 = *ptr;
72671       if (SWIG_IsNewObj(res)) delete ptr;
72672     }
72673     {
72674       try {
72675         result = (double)vrna_fold_compound_t_ensemble_defect__SWIG_0(arg1,arg2);
72676       } catch (const std::exception& e) {
72677         SWIG_exception(SWIG_RuntimeError, e.what());
72678       }
72679     }
72680     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
72681 
72682 
72683     XSRETURN(argvi);
72684   fail:
72685 
72686 
72687     SWIG_croak_null();
72688   }
72689 }
72690 
72691 
XS(_wrap_fold_compound_ensemble_defect__SWIG_2)72692 XS(_wrap_fold_compound_ensemble_defect__SWIG_2) {
72693   {
72694     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72695     std::vector< int > arg2 ;
72696     void *argp1 = 0 ;
72697     int res1 = 0 ;
72698     std::vector< int > *v2 ;
72699     int argvi = 0;
72700     double result;
72701     dXSARGS;
72702 
72703     if ((items < 2) || (items > 2)) {
72704       SWIG_croak("Usage: fold_compound_ensemble_defect(self,pair_table);");
72705     }
72706     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
72707     if (!SWIG_IsOK(res1)) {
72708       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_ensemble_defect" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
72709     }
72710     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
72711     {
72712       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
72713           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
72714         arg2 = *v2;
72715       } else if (SvROK(ST(1))) {
72716         AV *av = (AV *)SvRV(ST(1));
72717         if (SvTYPE(av) != SVt_PVAV)
72718         SWIG_croak("Type error in argument 2 of fold_compound_ensemble_defect. "
72719           "Expected an array of ""int");
72720         SV **tv;
72721         I32 len = av_len(av) + 1;
72722         for (int i=0; i<len; i++) {
72723           tv = av_fetch(av, i, 0);
72724           if (SvIOK(*tv)) {
72725             (&arg2)->push_back((int)SvIVX(*tv));
72726           } else {
72727             SWIG_croak("Type error in argument 2 of "
72728               "fold_compound_ensemble_defect. "
72729               "Expected an array of ""int");
72730           }
72731         }
72732       } else {
72733         SWIG_croak("Type error in argument 2 of fold_compound_ensemble_defect. "
72734           "Expected an array of ""int");
72735       }
72736     }
72737     {
72738       try {
72739         result = (double)vrna_fold_compound_t_ensemble_defect__SWIG_2(arg1,arg2);
72740       } catch (const std::exception& e) {
72741         SWIG_exception(SWIG_RuntimeError, e.what());
72742       }
72743     }
72744     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
72745 
72746     XSRETURN(argvi);
72747   fail:
72748 
72749     SWIG_croak_null();
72750   }
72751 }
72752 
72753 
XS(_wrap_fold_compound_ensemble_defect)72754 XS(_wrap_fold_compound_ensemble_defect) {
72755   dXSARGS;
72756 
72757   {
72758     unsigned long _index = 0;
72759     SWIG_TypeRank _rank = 0;
72760     if (items == 2) {
72761       SWIG_TypeRank _ranki = 0;
72762       SWIG_TypeRank _rankm = 0;
72763       SWIG_TypeRank _pi = 1;
72764       int _v = 0;
72765       {
72766         void *vptr = 0;
72767         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
72768         _v = SWIG_CheckState(res);
72769       }
72770       if (!_v) goto check_1;
72771       _ranki += _v*_pi;
72772       _rankm += _pi;
72773       _pi *= SWIG_MAXCASTRANK;
72774       {
72775         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
72776         _v = SWIG_CheckState(res);
72777       }
72778       if (!_v) goto check_1;
72779       _ranki += _v*_pi;
72780       _rankm += _pi;
72781       _pi *= SWIG_MAXCASTRANK;
72782       if (!_index || (_ranki < _rank)) {
72783         _rank = _ranki; _index = 1;
72784         if (_rank == _rankm) goto dispatch;
72785       }
72786     }
72787   check_1:
72788 
72789     if (items == 2) {
72790       SWIG_TypeRank _ranki = 0;
72791       SWIG_TypeRank _rankm = 0;
72792       SWIG_TypeRank _pi = 1;
72793       int _v = 0;
72794       {
72795         void *vptr = 0;
72796         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
72797         _v = SWIG_CheckState(res);
72798       }
72799       if (!_v) goto check_2;
72800       _ranki += _v*_pi;
72801       _rankm += _pi;
72802       _pi *= SWIG_MAXCASTRANK;
72803       {
72804         {
72805           {
72806             /* wrapped vector? */
72807             std::vector< int >* v;
72808             if (SWIG_ConvertPtr(ST(1),(void **) &v,
72809                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
72810               _v = 1;
72811             } else if (SvROK(ST(1))) {
72812               /* native sequence? */
72813               AV *av = (AV *)SvRV(ST(1));
72814               if (SvTYPE(av) == SVt_PVAV) {
72815                 I32 len = av_len(av) + 1;
72816                 if (len == 0) {
72817                   /* an empty sequence can be of any type */
72818                   _v = 1;
72819                 } else {
72820                   /* check the first element only */
72821                   SV **tv = av_fetch(av, 0, 0);
72822                   if (SvIOK(*tv))
72823                   _v = 1;
72824                   else
72825                   _v = 0;
72826                 }
72827               }
72828             } else {
72829               _v = 0;
72830             }
72831           }
72832         }
72833       }
72834       if (!_v) goto check_2;
72835       _ranki += _v*_pi;
72836       _rankm += _pi;
72837       _pi *= SWIG_MAXCASTRANK;
72838       if (!_index || (_ranki < _rank)) {
72839         _rank = _ranki; _index = 2;
72840         if (_rank == _rankm) goto dispatch;
72841       }
72842     }
72843   check_2:
72844 
72845     if (items == 3) {
72846       SWIG_TypeRank _ranki = 0;
72847       SWIG_TypeRank _rankm = 0;
72848       SWIG_TypeRank _pi = 1;
72849       int _v = 0;
72850       {
72851         void *vptr = 0;
72852         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
72853         _v = SWIG_CheckState(res);
72854       }
72855       if (!_v) goto check_3;
72856       _ranki += _v*_pi;
72857       _rankm += _pi;
72858       _pi *= SWIG_MAXCASTRANK;
72859       {
72860         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
72861         _v = SWIG_CheckState(res);
72862       }
72863       if (!_v) goto check_3;
72864       _ranki += _v*_pi;
72865       _rankm += _pi;
72866       _pi *= SWIG_MAXCASTRANK;
72867       {
72868         {
72869           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
72870           _v = SWIG_CheckState(res);
72871         }
72872       }
72873       if (!_v) goto check_3;
72874       _ranki += _v*_pi;
72875       _rankm += _pi;
72876       _pi *= SWIG_MAXCASTRANK;
72877       if (!_index || (_ranki < _rank)) {
72878         _rank = _ranki; _index = 3;
72879         if (_rank == _rankm) goto dispatch;
72880       }
72881     }
72882   check_3:
72883 
72884   dispatch:
72885     switch(_index) {
72886     case 1:
72887       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_ensemble_defect__SWIG_1); return;
72888     case 2:
72889       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_ensemble_defect__SWIG_2); return;
72890     case 3:
72891       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_ensemble_defect__SWIG_0); return;
72892     }
72893   }
72894 
72895   croak("No matching function for overloaded 'fold_compound_ensemble_defect'");
72896   XSRETURN(0);
72897 }
72898 
72899 
XS(_wrap_fold_compound_positional_entropy)72900 XS(_wrap_fold_compound_positional_entropy) {
72901   {
72902     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72903     void *argp1 = 0 ;
72904     int res1 = 0 ;
72905     int argvi = 0;
72906     std::vector< double > result;
72907     dXSARGS;
72908 
72909     if ((items < 1) || (items > 1)) {
72910       SWIG_croak("Usage: fold_compound_positional_entropy(self);");
72911     }
72912     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
72913     if (!SWIG_IsOK(res1)) {
72914       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_positional_entropy" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
72915     }
72916     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
72917     {
72918       try {
72919         result = vrna_fold_compound_t_positional_entropy(arg1);
72920       } catch (const std::exception& e) {
72921         SWIG_exception(SWIG_RuntimeError, e.what());
72922       }
72923     }
72924     {
72925       size_t len = (&result)->size();
72926       SV **svs = new SV*[len];
72927       for (size_t i=0; i<len; i++) {
72928         svs[i] = sv_newmortal();
72929         sv_setnv(svs[i], result[i]);
72930       }
72931       AV *myav = av_make(len, svs);
72932       delete[] svs;
72933       ST(argvi) = newRV_noinc((SV*) myav);
72934       sv_2mortal(ST(argvi));
72935       argvi++;
72936     }
72937 
72938     XSRETURN(argvi);
72939   fail:
72940 
72941     SWIG_croak_null();
72942   }
72943 }
72944 
72945 
XS(_wrap_fold_compound_pr_structure)72946 XS(_wrap_fold_compound_pr_structure) {
72947   {
72948     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72949     std::string arg2 ;
72950     void *argp1 = 0 ;
72951     int res1 = 0 ;
72952     int argvi = 0;
72953     double result;
72954     dXSARGS;
72955 
72956     if ((items < 2) || (items > 2)) {
72957       SWIG_croak("Usage: fold_compound_pr_structure(self,structure);");
72958     }
72959     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
72960     if (!SWIG_IsOK(res1)) {
72961       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pr_structure" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
72962     }
72963     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
72964     {
72965       std::string *ptr = (std::string *)0;
72966       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
72967       if (!SWIG_IsOK(res) || !ptr) {
72968         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_pr_structure" "', argument " "2"" of type '" "std::string""'");
72969       }
72970       arg2 = *ptr;
72971       if (SWIG_IsNewObj(res)) delete ptr;
72972     }
72973     {
72974       try {
72975         result = (double)vrna_fold_compound_t_pr_structure(arg1,arg2);
72976       } catch (const std::exception& e) {
72977         SWIG_exception(SWIG_RuntimeError, e.what());
72978       }
72979     }
72980     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
72981 
72982 
72983     XSRETURN(argvi);
72984   fail:
72985 
72986 
72987     SWIG_croak_null();
72988   }
72989 }
72990 
72991 
XS(_wrap_fold_compound_pr_energy)72992 XS(_wrap_fold_compound_pr_energy) {
72993   {
72994     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
72995     double arg2 ;
72996     void *argp1 = 0 ;
72997     int res1 = 0 ;
72998     double val2 ;
72999     int ecode2 = 0 ;
73000     int argvi = 0;
73001     double result;
73002     dXSARGS;
73003 
73004     if ((items < 2) || (items > 2)) {
73005       SWIG_croak("Usage: fold_compound_pr_energy(self,e);");
73006     }
73007     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73008     if (!SWIG_IsOK(res1)) {
73009       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pr_energy" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73010     }
73011     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73012     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
73013     if (!SWIG_IsOK(ecode2)) {
73014       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pr_energy" "', argument " "2"" of type '" "double""'");
73015     }
73016     arg2 = static_cast< double >(val2);
73017     {
73018       try {
73019         result = (double)vrna_fold_compound_t_pr_energy(arg1,arg2);
73020       } catch (const std::exception& e) {
73021         SWIG_exception(SWIG_RuntimeError, e.what());
73022       }
73023     }
73024     ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(result)); argvi++ ;
73025 
73026 
73027     XSRETURN(argvi);
73028   fail:
73029 
73030 
73031     SWIG_croak_null();
73032   }
73033 }
73034 
73035 
XS(_wrap_fold_compound_pf_dimer)73036 XS(_wrap_fold_compound_pf_dimer) {
73037   {
73038     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
73039     float *arg2 = (float *) 0 ;
73040     float *arg3 = (float *) 0 ;
73041     float *arg4 = (float *) 0 ;
73042     float *arg5 = (float *) 0 ;
73043     void *argp1 = 0 ;
73044     int res1 = 0 ;
73045     float temp2 ;
73046     int res2 = SWIG_TMPOBJ ;
73047     float temp3 ;
73048     int res3 = SWIG_TMPOBJ ;
73049     float temp4 ;
73050     int res4 = SWIG_TMPOBJ ;
73051     float temp5 ;
73052     int res5 = SWIG_TMPOBJ ;
73053     int argvi = 0;
73054     char *result = 0 ;
73055     dXSARGS;
73056 
73057     arg2 = &temp2;
73058     arg3 = &temp3;
73059     arg4 = &temp4;
73060     arg5 = &temp5;
73061     if ((items < 1) || (items > 1)) {
73062       SWIG_croak("Usage: fold_compound_pf_dimer(self);");
73063     }
73064     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73065     if (!SWIG_IsOK(res1)) {
73066       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pf_dimer" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73067     }
73068     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73069     {
73070       try {
73071         result = (char *)vrna_fold_compound_t_pf_dimer(arg1,arg2,arg3,arg4,arg5);
73072       } catch (const std::exception& e) {
73073         SWIG_exception(SWIG_RuntimeError, e.what());
73074       }
73075     }
73076     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
73077     if (SWIG_IsTmpObj(res2)) {
73078       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
73079     } else {
73080       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
73081       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_float, new_flags); argvi++  ;
73082     }
73083     if (SWIG_IsTmpObj(res3)) {
73084       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
73085     } else {
73086       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
73087       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
73088     }
73089     if (SWIG_IsTmpObj(res4)) {
73090       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg4)); argvi++  ;
73091     } else {
73092       int new_flags = SWIG_IsNewObj(res4) ? (SWIG_POINTER_OWN | 0) : 0;
73093       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg4), SWIGTYPE_p_float, new_flags); argvi++  ;
73094     }
73095     if (SWIG_IsTmpObj(res5)) {
73096       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg5)); argvi++  ;
73097     } else {
73098       int new_flags = SWIG_IsNewObj(res5) ? (SWIG_POINTER_OWN | 0) : 0;
73099       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg5), SWIGTYPE_p_float, new_flags); argvi++  ;
73100     }
73101 
73102 
73103 
73104 
73105 
73106     delete[] result;
73107     XSRETURN(argvi);
73108   fail:
73109 
73110 
73111 
73112 
73113 
73114     SWIG_croak_null();
73115   }
73116 }
73117 
73118 
XS(_wrap_fold_compound_bpp)73119 XS(_wrap_fold_compound_bpp) {
73120   {
73121     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
73122     void *argp1 = 0 ;
73123     int res1 = 0 ;
73124     int argvi = 0;
73125     std::vector< std::vector< double > > result;
73126     dXSARGS;
73127 
73128     if ((items < 1) || (items > 1)) {
73129       SWIG_croak("Usage: fold_compound_bpp(self);");
73130     }
73131     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73132     if (!SWIG_IsOK(res1)) {
73133       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_bpp" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73134     }
73135     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73136     {
73137       try {
73138         result = vrna_fold_compound_t_bpp(arg1);
73139       } catch (const std::exception& e) {
73140         SWIG_exception(SWIG_RuntimeError, e.what());
73141       }
73142     }
73143     {
73144       AV *arr = newAV();
73145       for(unsigned int i = 0; i < (&result)->size(); i++) {
73146         AV *vec = newAV();
73147         for(unsigned int j = 0; j < result[i].size(); j++) {
73148           SV *v = newSVnv(result[i][j]);
73149           if (!av_store(vec, j, v))
73150           SvREFCNT_dec(v);
73151         }
73152         /* store reference to array */
73153         av_store(arr, i, newRV_noinc((SV*) vec));
73154       }
73155 
73156       ST(argvi) = newRV_noinc((SV*) arr);
73157       sv_2mortal( ST(argvi) );
73158       argvi++;
73159     }
73160 
73161     XSRETURN(argvi);
73162   fail:
73163 
73164     SWIG_croak_null();
73165   }
73166 }
73167 
73168 
XS(_wrap_fold_compound_centroid)73169 XS(_wrap_fold_compound_centroid) {
73170   {
73171     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
73172     double *arg2 = (double *) 0 ;
73173     void *argp1 = 0 ;
73174     int res1 = 0 ;
73175     double temp2 ;
73176     int res2 = SWIG_TMPOBJ ;
73177     int argvi = 0;
73178     char *result = 0 ;
73179     dXSARGS;
73180 
73181     arg2 = &temp2;
73182     if ((items < 1) || (items > 1)) {
73183       SWIG_croak("Usage: fold_compound_centroid(self);");
73184     }
73185     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73186     if (!SWIG_IsOK(res1)) {
73187       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_centroid" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73188     }
73189     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73190     {
73191       try {
73192         result = (char *)vrna_fold_compound_t_centroid(arg1,arg2);
73193       } catch (const std::exception& e) {
73194         SWIG_exception(SWIG_RuntimeError, e.what());
73195       }
73196     }
73197     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
73198     if (SWIG_IsTmpObj(res2)) {
73199       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_double  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
73200     } else {
73201       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
73202       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_double, new_flags); argvi++  ;
73203     }
73204 
73205 
73206     delete[] result;
73207     XSRETURN(argvi);
73208   fail:
73209 
73210 
73211     SWIG_croak_null();
73212   }
73213 }
73214 
73215 
XS(_wrap_fold_compound_MEA__SWIG_0)73216 XS(_wrap_fold_compound_MEA__SWIG_0) {
73217   {
73218     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
73219     float *arg2 = (float *) 0 ;
73220     void *argp1 = 0 ;
73221     int res1 = 0 ;
73222     float temp2 ;
73223     int res2 = SWIG_TMPOBJ ;
73224     int argvi = 0;
73225     char *result = 0 ;
73226     dXSARGS;
73227 
73228     arg2 = &temp2;
73229     if ((items < 1) || (items > 1)) {
73230       SWIG_croak("Usage: fold_compound_MEA(self);");
73231     }
73232     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73233     if (!SWIG_IsOK(res1)) {
73234       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_MEA" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73235     }
73236     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73237     {
73238       try {
73239         result = (char *)vrna_fold_compound_t_MEA__SWIG_0(arg1,arg2);
73240       } catch (const std::exception& e) {
73241         SWIG_exception(SWIG_RuntimeError, e.what());
73242       }
73243     }
73244     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
73245     if (SWIG_IsTmpObj(res2)) {
73246       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg2)); argvi++  ;
73247     } else {
73248       int new_flags = SWIG_IsNewObj(res2) ? (SWIG_POINTER_OWN | 0) : 0;
73249       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg2), SWIGTYPE_p_float, new_flags); argvi++  ;
73250     }
73251 
73252 
73253     delete[] result;
73254     XSRETURN(argvi);
73255   fail:
73256 
73257 
73258     SWIG_croak_null();
73259   }
73260 }
73261 
73262 
XS(_wrap_fold_compound_MEA__SWIG_1)73263 XS(_wrap_fold_compound_MEA__SWIG_1) {
73264   {
73265     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
73266     double arg2 ;
73267     float *arg3 = (float *) 0 ;
73268     void *argp1 = 0 ;
73269     int res1 = 0 ;
73270     double val2 ;
73271     int ecode2 = 0 ;
73272     float temp3 ;
73273     int res3 = SWIG_TMPOBJ ;
73274     int argvi = 0;
73275     char *result = 0 ;
73276     dXSARGS;
73277 
73278     arg3 = &temp3;
73279     if ((items < 2) || (items > 2)) {
73280       SWIG_croak("Usage: fold_compound_MEA(self,gamma);");
73281     }
73282     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73283     if (!SWIG_IsOK(res1)) {
73284       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_MEA" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73285     }
73286     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73287     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
73288     if (!SWIG_IsOK(ecode2)) {
73289       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_MEA" "', argument " "2"" of type '" "double""'");
73290     }
73291     arg2 = static_cast< double >(val2);
73292     {
73293       try {
73294         result = (char *)vrna_fold_compound_t_MEA__SWIG_1(arg1,arg2,arg3);
73295       } catch (const std::exception& e) {
73296         SWIG_exception(SWIG_RuntimeError, e.what());
73297       }
73298     }
73299     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
73300     if (SWIG_IsTmpObj(res3)) {
73301       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1((*arg3)); argvi++  ;
73302     } else {
73303       int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN | 0) : 0;
73304       if (argvi >= items) EXTEND(sp, argvi+1);  ST(argvi) = SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_float, new_flags); argvi++  ;
73305     }
73306 
73307 
73308 
73309     delete[] result;
73310     XSRETURN(argvi);
73311   fail:
73312 
73313 
73314 
73315     SWIG_croak_null();
73316   }
73317 }
73318 
73319 
XS(_wrap_fold_compound_MEA)73320 XS(_wrap_fold_compound_MEA) {
73321   dXSARGS;
73322 
73323   {
73324     unsigned long _index = 0;
73325     SWIG_TypeRank _rank = 0;
73326     if (items == 1) {
73327       SWIG_TypeRank _ranki = 0;
73328       SWIG_TypeRank _rankm = 0;
73329       SWIG_TypeRank _pi = 1;
73330       int _v = 0;
73331       {
73332         void *vptr = 0;
73333         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
73334         _v = SWIG_CheckState(res);
73335       }
73336       if (!_v) goto check_1;
73337       _ranki += _v*_pi;
73338       _rankm += _pi;
73339       _pi *= SWIG_MAXCASTRANK;
73340       if (!_index || (_ranki < _rank)) {
73341         _rank = _ranki; _index = 1;
73342         if (_rank == _rankm) goto dispatch;
73343       }
73344     }
73345   check_1:
73346 
73347     if (items == 2) {
73348       SWIG_TypeRank _ranki = 0;
73349       SWIG_TypeRank _rankm = 0;
73350       SWIG_TypeRank _pi = 1;
73351       int _v = 0;
73352       {
73353         void *vptr = 0;
73354         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
73355         _v = SWIG_CheckState(res);
73356       }
73357       if (!_v) goto check_2;
73358       _ranki += _v*_pi;
73359       _rankm += _pi;
73360       _pi *= SWIG_MAXCASTRANK;
73361       {
73362         {
73363           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
73364           _v = SWIG_CheckState(res);
73365         }
73366       }
73367       if (!_v) goto check_2;
73368       _ranki += _v*_pi;
73369       _rankm += _pi;
73370       _pi *= SWIG_MAXCASTRANK;
73371       if (!_index || (_ranki < _rank)) {
73372         _rank = _ranki; _index = 2;
73373         if (_rank == _rankm) goto dispatch;
73374       }
73375     }
73376   check_2:
73377 
73378   dispatch:
73379     switch(_index) {
73380     case 1:
73381       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_MEA__SWIG_0); return;
73382     case 2:
73383       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_MEA__SWIG_1); return;
73384     }
73385   }
73386 
73387   croak("No matching function for overloaded 'fold_compound_MEA'");
73388   XSRETURN(0);
73389 }
73390 
73391 
XS(_wrap_fold_compound_pbacktrack__SWIG_0)73392 XS(_wrap_fold_compound_pbacktrack__SWIG_0) {
73393   {
73394     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
73395     void *argp1 = 0 ;
73396     int res1 = 0 ;
73397     int argvi = 0;
73398     char *result = 0 ;
73399     dXSARGS;
73400 
73401     if ((items < 1) || (items > 1)) {
73402       SWIG_croak("Usage: fold_compound_pbacktrack(self);");
73403     }
73404     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73405     if (!SWIG_IsOK(res1)) {
73406       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73407     }
73408     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73409     {
73410       try {
73411         result = (char *)vrna_fold_compound_t_pbacktrack__SWIG_0(arg1);
73412       } catch (const std::exception& e) {
73413         SWIG_exception(SWIG_RuntimeError, e.what());
73414       }
73415     }
73416     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
73417 
73418     delete[] result;
73419     XSRETURN(argvi);
73420   fail:
73421 
73422     SWIG_croak_null();
73423   }
73424 }
73425 
73426 
XS(_wrap_fold_compound_pbacktrack5__SWIG_0)73427 XS(_wrap_fold_compound_pbacktrack5__SWIG_0) {
73428   {
73429     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
73430     unsigned int arg2 ;
73431     void *argp1 = 0 ;
73432     int res1 = 0 ;
73433     unsigned int val2 ;
73434     int ecode2 = 0 ;
73435     int argvi = 0;
73436     char *result = 0 ;
73437     dXSARGS;
73438 
73439     if ((items < 2) || (items > 2)) {
73440       SWIG_croak("Usage: fold_compound_pbacktrack5(self,length);");
73441     }
73442     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73443     if (!SWIG_IsOK(res1)) {
73444       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack5" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73445     }
73446     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73447     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
73448     if (!SWIG_IsOK(ecode2)) {
73449       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack5" "', argument " "2"" of type '" "unsigned int""'");
73450     }
73451     arg2 = static_cast< unsigned int >(val2);
73452     {
73453       try {
73454         result = (char *)vrna_fold_compound_t_pbacktrack5__SWIG_0(arg1,arg2);
73455       } catch (const std::exception& e) {
73456         SWIG_exception(SWIG_RuntimeError, e.what());
73457       }
73458     }
73459     ST(argvi) = SWIG_FromCharPtr((const char *)result); argvi++ ;
73460 
73461 
73462     XSRETURN(argvi);
73463   fail:
73464 
73465 
73466     SWIG_croak_null();
73467   }
73468 }
73469 
73470 
XS(_wrap_fold_compound_pbacktrack__SWIG_1)73471 XS(_wrap_fold_compound_pbacktrack__SWIG_1) {
73472   {
73473     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
73474     unsigned int arg2 ;
73475     unsigned int arg3 ;
73476     void *argp1 = 0 ;
73477     int res1 = 0 ;
73478     unsigned int val2 ;
73479     int ecode2 = 0 ;
73480     unsigned int val3 ;
73481     int ecode3 = 0 ;
73482     int argvi = 0;
73483     std::vector< std::string > result;
73484     dXSARGS;
73485 
73486     if ((items < 3) || (items > 3)) {
73487       SWIG_croak("Usage: fold_compound_pbacktrack(self,num_samples,options);");
73488     }
73489     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73490     if (!SWIG_IsOK(res1)) {
73491       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73492     }
73493     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73494     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
73495     if (!SWIG_IsOK(ecode2)) {
73496       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack" "', argument " "2"" of type '" "unsigned int""'");
73497     }
73498     arg2 = static_cast< unsigned int >(val2);
73499     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
73500     if (!SWIG_IsOK(ecode3)) {
73501       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_pbacktrack" "', argument " "3"" of type '" "unsigned int""'");
73502     }
73503     arg3 = static_cast< unsigned int >(val3);
73504     {
73505       try {
73506         result = vrna_fold_compound_t_pbacktrack__SWIG_1(arg1,arg2,arg3);
73507       } catch (const std::exception& e) {
73508         SWIG_exception(SWIG_RuntimeError, e.what());
73509       }
73510     }
73511     {
73512       size_t len = (&result)->size();
73513       SV **svs = new SV*[len];
73514       for (size_t i=0; i<len; i++) {
73515         svs[i] = sv_newmortal();
73516         SwigSvFromString(svs[i], result[i]);
73517       }
73518       AV *myav = av_make(len, svs);
73519       delete[] svs;
73520       ST(argvi) = newRV_noinc((SV*) myav);
73521       sv_2mortal(ST(argvi));
73522       argvi++;
73523     }
73524 
73525 
73526 
73527     XSRETURN(argvi);
73528   fail:
73529 
73530 
73531 
73532     SWIG_croak_null();
73533   }
73534 }
73535 
73536 
XS(_wrap_fold_compound_pbacktrack__SWIG_2)73537 XS(_wrap_fold_compound_pbacktrack__SWIG_2) {
73538   {
73539     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
73540     unsigned int arg2 ;
73541     void *argp1 = 0 ;
73542     int res1 = 0 ;
73543     unsigned int val2 ;
73544     int ecode2 = 0 ;
73545     int argvi = 0;
73546     std::vector< std::string > result;
73547     dXSARGS;
73548 
73549     if ((items < 2) || (items > 2)) {
73550       SWIG_croak("Usage: fold_compound_pbacktrack(self,num_samples);");
73551     }
73552     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73553     if (!SWIG_IsOK(res1)) {
73554       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73555     }
73556     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73557     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
73558     if (!SWIG_IsOK(ecode2)) {
73559       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack" "', argument " "2"" of type '" "unsigned int""'");
73560     }
73561     arg2 = static_cast< unsigned int >(val2);
73562     {
73563       try {
73564         result = vrna_fold_compound_t_pbacktrack__SWIG_1(arg1,arg2);
73565       } catch (const std::exception& e) {
73566         SWIG_exception(SWIG_RuntimeError, e.what());
73567       }
73568     }
73569     {
73570       size_t len = (&result)->size();
73571       SV **svs = new SV*[len];
73572       for (size_t i=0; i<len; i++) {
73573         svs[i] = sv_newmortal();
73574         SwigSvFromString(svs[i], result[i]);
73575       }
73576       AV *myav = av_make(len, svs);
73577       delete[] svs;
73578       ST(argvi) = newRV_noinc((SV*) myav);
73579       sv_2mortal(ST(argvi));
73580       argvi++;
73581     }
73582 
73583 
73584     XSRETURN(argvi);
73585   fail:
73586 
73587 
73588     SWIG_croak_null();
73589   }
73590 }
73591 
73592 
XS(_wrap_fold_compound_pbacktrack5__SWIG_1)73593 XS(_wrap_fold_compound_pbacktrack5__SWIG_1) {
73594   {
73595     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
73596     unsigned int arg2 ;
73597     unsigned int arg3 ;
73598     unsigned int arg4 ;
73599     void *argp1 = 0 ;
73600     int res1 = 0 ;
73601     unsigned int val2 ;
73602     int ecode2 = 0 ;
73603     unsigned int val3 ;
73604     int ecode3 = 0 ;
73605     unsigned int val4 ;
73606     int ecode4 = 0 ;
73607     int argvi = 0;
73608     std::vector< std::string > result;
73609     dXSARGS;
73610 
73611     if ((items < 4) || (items > 4)) {
73612       SWIG_croak("Usage: fold_compound_pbacktrack5(self,num_samples,length,options);");
73613     }
73614     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73615     if (!SWIG_IsOK(res1)) {
73616       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack5" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73617     }
73618     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73619     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
73620     if (!SWIG_IsOK(ecode2)) {
73621       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack5" "', argument " "2"" of type '" "unsigned int""'");
73622     }
73623     arg2 = static_cast< unsigned int >(val2);
73624     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
73625     if (!SWIG_IsOK(ecode3)) {
73626       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_pbacktrack5" "', argument " "3"" of type '" "unsigned int""'");
73627     }
73628     arg3 = static_cast< unsigned int >(val3);
73629     ecode4 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
73630     if (!SWIG_IsOK(ecode4)) {
73631       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_pbacktrack5" "', argument " "4"" of type '" "unsigned int""'");
73632     }
73633     arg4 = static_cast< unsigned int >(val4);
73634     {
73635       try {
73636         result = vrna_fold_compound_t_pbacktrack5__SWIG_1(arg1,arg2,arg3,arg4);
73637       } catch (const std::exception& e) {
73638         SWIG_exception(SWIG_RuntimeError, e.what());
73639       }
73640     }
73641     {
73642       size_t len = (&result)->size();
73643       SV **svs = new SV*[len];
73644       for (size_t i=0; i<len; i++) {
73645         svs[i] = sv_newmortal();
73646         SwigSvFromString(svs[i], result[i]);
73647       }
73648       AV *myav = av_make(len, svs);
73649       delete[] svs;
73650       ST(argvi) = newRV_noinc((SV*) myav);
73651       sv_2mortal(ST(argvi));
73652       argvi++;
73653     }
73654 
73655 
73656 
73657 
73658     XSRETURN(argvi);
73659   fail:
73660 
73661 
73662 
73663 
73664     SWIG_croak_null();
73665   }
73666 }
73667 
73668 
XS(_wrap_fold_compound_pbacktrack5__SWIG_2)73669 XS(_wrap_fold_compound_pbacktrack5__SWIG_2) {
73670   {
73671     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
73672     unsigned int arg2 ;
73673     unsigned int arg3 ;
73674     void *argp1 = 0 ;
73675     int res1 = 0 ;
73676     unsigned int val2 ;
73677     int ecode2 = 0 ;
73678     unsigned int val3 ;
73679     int ecode3 = 0 ;
73680     int argvi = 0;
73681     std::vector< std::string > result;
73682     dXSARGS;
73683 
73684     if ((items < 3) || (items > 3)) {
73685       SWIG_croak("Usage: fold_compound_pbacktrack5(self,num_samples,length);");
73686     }
73687     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73688     if (!SWIG_IsOK(res1)) {
73689       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack5" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73690     }
73691     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73692     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
73693     if (!SWIG_IsOK(ecode2)) {
73694       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack5" "', argument " "2"" of type '" "unsigned int""'");
73695     }
73696     arg2 = static_cast< unsigned int >(val2);
73697     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
73698     if (!SWIG_IsOK(ecode3)) {
73699       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_pbacktrack5" "', argument " "3"" of type '" "unsigned int""'");
73700     }
73701     arg3 = static_cast< unsigned int >(val3);
73702     {
73703       try {
73704         result = vrna_fold_compound_t_pbacktrack5__SWIG_1(arg1,arg2,arg3);
73705       } catch (const std::exception& e) {
73706         SWIG_exception(SWIG_RuntimeError, e.what());
73707       }
73708     }
73709     {
73710       size_t len = (&result)->size();
73711       SV **svs = new SV*[len];
73712       for (size_t i=0; i<len; i++) {
73713         svs[i] = sv_newmortal();
73714         SwigSvFromString(svs[i], result[i]);
73715       }
73716       AV *myav = av_make(len, svs);
73717       delete[] svs;
73718       ST(argvi) = newRV_noinc((SV*) myav);
73719       sv_2mortal(ST(argvi));
73720       argvi++;
73721     }
73722 
73723 
73724 
73725     XSRETURN(argvi);
73726   fail:
73727 
73728 
73729 
73730     SWIG_croak_null();
73731   }
73732 }
73733 
73734 
XS(_wrap_fold_compound_pbacktrack__SWIG_3)73735 XS(_wrap_fold_compound_pbacktrack__SWIG_3) {
73736   {
73737     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
73738     unsigned int arg2 ;
73739     vrna_pbacktrack_mem_t *arg3 = (vrna_pbacktrack_mem_t *) 0 ;
73740     unsigned int arg4 ;
73741     void *argp1 = 0 ;
73742     int res1 = 0 ;
73743     unsigned int val2 ;
73744     int ecode2 = 0 ;
73745     vrna_pbacktrack_mem_t *retval3 ;
73746     unsigned int val4 ;
73747     int ecode4 = 0 ;
73748     int argvi = 0;
73749     SV * _saved[1] ;
73750     std::vector< std::string > result;
73751     dXSARGS;
73752 
73753     if ((items < 4) || (items > 4)) {
73754       SWIG_croak("Usage: fold_compound_pbacktrack(self,num_samples,nr_memory,options);");
73755     }
73756     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73757     if (!SWIG_IsOK(res1)) {
73758       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73759     }
73760     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73761     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
73762     if (!SWIG_IsOK(ecode2)) {
73763       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack" "', argument " "2"" of type '" "unsigned int""'");
73764     }
73765     arg2 = static_cast< unsigned int >(val2);
73766     {
73767       if (!SvOK(ST(2))) {
73768         retval3 = new vrna_pbacktrack_mem_t();
73769         arg3 = retval3;
73770       } else {
73771         /* INOUT in */
73772         SWIG_ConvertPtr(ST(2),SWIG_as_voidptrptr(&retval3), 0, SWIG_POINTER_DISOWN);
73773         arg3 = retval3;
73774       }
73775     }
73776     ecode4 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
73777     if (!SWIG_IsOK(ecode4)) {
73778       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_pbacktrack" "', argument " "4"" of type '" "unsigned int""'");
73779     }
73780     arg4 = static_cast< unsigned int >(val4);
73781     _saved[0] = ST(2);
73782     {
73783       try {
73784         result = vrna_fold_compound_t_pbacktrack__SWIG_3(arg1,arg2,arg3,arg4);
73785       } catch (const std::exception& e) {
73786         SWIG_exception(SWIG_RuntimeError, e.what());
73787       }
73788     }
73789     {
73790       size_t len = (&result)->size();
73791       SV **svs = new SV*[len];
73792       for (size_t i=0; i<len; i++) {
73793         svs[i] = sv_newmortal();
73794         SwigSvFromString(svs[i], result[i]);
73795       }
73796       AV *myav = av_make(len, svs);
73797       delete[] svs;
73798       ST(argvi) = newRV_noinc((SV*) myav);
73799       sv_2mortal(ST(argvi));
73800       argvi++;
73801     }
73802     {
73803       /* increase output stack if necessary */
73804       if (argvi >= items) {
73805         EXTEND(sp,1);
73806       }
73807       /* move already existing return values to the back */
73808       for (int i = argvi; i > 0; i--) {
73809         ST(i) = ST(i - 1);
73810       }
73811       /* store result as first element in the stack */
73812       ST(0) = SWIG_NewPointerObj(SWIG_as_voidptr(retval3), SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
73813       /* increase return argument counter */
73814       argvi++;
73815     }
73816 
73817 
73818 
73819 
73820     XSRETURN(argvi);
73821   fail:
73822 
73823 
73824 
73825 
73826     SWIG_croak_null();
73827   }
73828 }
73829 
73830 
XS(_wrap_fold_compound_pbacktrack__SWIG_4)73831 XS(_wrap_fold_compound_pbacktrack__SWIG_4) {
73832   {
73833     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
73834     unsigned int arg2 ;
73835     vrna_pbacktrack_mem_t *arg3 = (vrna_pbacktrack_mem_t *) 0 ;
73836     void *argp1 = 0 ;
73837     int res1 = 0 ;
73838     unsigned int val2 ;
73839     int ecode2 = 0 ;
73840     vrna_pbacktrack_mem_t *retval3 ;
73841     int argvi = 0;
73842     SV * _saved[1] ;
73843     std::vector< std::string > result;
73844     dXSARGS;
73845 
73846     if ((items < 3) || (items > 3)) {
73847       SWIG_croak("Usage: fold_compound_pbacktrack(self,num_samples,nr_memory);");
73848     }
73849     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73850     if (!SWIG_IsOK(res1)) {
73851       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73852     }
73853     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73854     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
73855     if (!SWIG_IsOK(ecode2)) {
73856       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack" "', argument " "2"" of type '" "unsigned int""'");
73857     }
73858     arg2 = static_cast< unsigned int >(val2);
73859     {
73860       if (!SvOK(ST(2))) {
73861         retval3 = new vrna_pbacktrack_mem_t();
73862         arg3 = retval3;
73863       } else {
73864         /* INOUT in */
73865         SWIG_ConvertPtr(ST(2),SWIG_as_voidptrptr(&retval3), 0, SWIG_POINTER_DISOWN);
73866         arg3 = retval3;
73867       }
73868     }
73869     _saved[0] = ST(2);
73870     {
73871       try {
73872         result = vrna_fold_compound_t_pbacktrack__SWIG_3(arg1,arg2,arg3);
73873       } catch (const std::exception& e) {
73874         SWIG_exception(SWIG_RuntimeError, e.what());
73875       }
73876     }
73877     {
73878       size_t len = (&result)->size();
73879       SV **svs = new SV*[len];
73880       for (size_t i=0; i<len; i++) {
73881         svs[i] = sv_newmortal();
73882         SwigSvFromString(svs[i], result[i]);
73883       }
73884       AV *myav = av_make(len, svs);
73885       delete[] svs;
73886       ST(argvi) = newRV_noinc((SV*) myav);
73887       sv_2mortal(ST(argvi));
73888       argvi++;
73889     }
73890     {
73891       /* increase output stack if necessary */
73892       if (argvi >= items) {
73893         EXTEND(sp,1);
73894       }
73895       /* move already existing return values to the back */
73896       for (int i = argvi; i > 0; i--) {
73897         ST(i) = ST(i - 1);
73898       }
73899       /* store result as first element in the stack */
73900       ST(0) = SWIG_NewPointerObj(SWIG_as_voidptr(retval3), SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
73901       /* increase return argument counter */
73902       argvi++;
73903     }
73904 
73905 
73906 
73907     XSRETURN(argvi);
73908   fail:
73909 
73910 
73911 
73912     SWIG_croak_null();
73913   }
73914 }
73915 
73916 
XS(_wrap_fold_compound_pbacktrack5__SWIG_3)73917 XS(_wrap_fold_compound_pbacktrack5__SWIG_3) {
73918   {
73919     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
73920     unsigned int arg2 ;
73921     unsigned int arg3 ;
73922     vrna_pbacktrack_mem_t *arg4 = (vrna_pbacktrack_mem_t *) 0 ;
73923     unsigned int arg5 ;
73924     void *argp1 = 0 ;
73925     int res1 = 0 ;
73926     unsigned int val2 ;
73927     int ecode2 = 0 ;
73928     unsigned int val3 ;
73929     int ecode3 = 0 ;
73930     vrna_pbacktrack_mem_t *retval4 ;
73931     unsigned int val5 ;
73932     int ecode5 = 0 ;
73933     int argvi = 0;
73934     SV * _saved[1] ;
73935     std::vector< std::string > result;
73936     dXSARGS;
73937 
73938     if ((items < 5) || (items > 5)) {
73939       SWIG_croak("Usage: fold_compound_pbacktrack5(self,num_samples,length,nr_memory,options);");
73940     }
73941     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
73942     if (!SWIG_IsOK(res1)) {
73943       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack5" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
73944     }
73945     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
73946     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
73947     if (!SWIG_IsOK(ecode2)) {
73948       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack5" "', argument " "2"" of type '" "unsigned int""'");
73949     }
73950     arg2 = static_cast< unsigned int >(val2);
73951     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
73952     if (!SWIG_IsOK(ecode3)) {
73953       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_pbacktrack5" "', argument " "3"" of type '" "unsigned int""'");
73954     }
73955     arg3 = static_cast< unsigned int >(val3);
73956     {
73957       if (!SvOK(ST(3))) {
73958         retval4 = new vrna_pbacktrack_mem_t();
73959         arg4 = retval4;
73960       } else {
73961         /* INOUT in */
73962         SWIG_ConvertPtr(ST(3),SWIG_as_voidptrptr(&retval4), 0, SWIG_POINTER_DISOWN);
73963         arg4 = retval4;
73964       }
73965     }
73966     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
73967     if (!SWIG_IsOK(ecode5)) {
73968       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_pbacktrack5" "', argument " "5"" of type '" "unsigned int""'");
73969     }
73970     arg5 = static_cast< unsigned int >(val5);
73971     _saved[0] = ST(3);
73972     {
73973       try {
73974         result = vrna_fold_compound_t_pbacktrack5__SWIG_3(arg1,arg2,arg3,arg4,arg5);
73975       } catch (const std::exception& e) {
73976         SWIG_exception(SWIG_RuntimeError, e.what());
73977       }
73978     }
73979     {
73980       size_t len = (&result)->size();
73981       SV **svs = new SV*[len];
73982       for (size_t i=0; i<len; i++) {
73983         svs[i] = sv_newmortal();
73984         SwigSvFromString(svs[i], result[i]);
73985       }
73986       AV *myav = av_make(len, svs);
73987       delete[] svs;
73988       ST(argvi) = newRV_noinc((SV*) myav);
73989       sv_2mortal(ST(argvi));
73990       argvi++;
73991     }
73992     {
73993       /* increase output stack if necessary */
73994       if (argvi >= items) {
73995         EXTEND(sp,1);
73996       }
73997       /* move already existing return values to the back */
73998       for (int i = argvi; i > 0; i--) {
73999         ST(i) = ST(i - 1);
74000       }
74001       /* store result as first element in the stack */
74002       ST(0) = SWIG_NewPointerObj(SWIG_as_voidptr(retval4), SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
74003       /* increase return argument counter */
74004       argvi++;
74005     }
74006 
74007 
74008 
74009 
74010 
74011     XSRETURN(argvi);
74012   fail:
74013 
74014 
74015 
74016 
74017 
74018     SWIG_croak_null();
74019   }
74020 }
74021 
74022 
XS(_wrap_fold_compound_pbacktrack5__SWIG_4)74023 XS(_wrap_fold_compound_pbacktrack5__SWIG_4) {
74024   {
74025     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
74026     unsigned int arg2 ;
74027     unsigned int arg3 ;
74028     vrna_pbacktrack_mem_t *arg4 = (vrna_pbacktrack_mem_t *) 0 ;
74029     void *argp1 = 0 ;
74030     int res1 = 0 ;
74031     unsigned int val2 ;
74032     int ecode2 = 0 ;
74033     unsigned int val3 ;
74034     int ecode3 = 0 ;
74035     vrna_pbacktrack_mem_t *retval4 ;
74036     int argvi = 0;
74037     SV * _saved[1] ;
74038     std::vector< std::string > result;
74039     dXSARGS;
74040 
74041     if ((items < 4) || (items > 4)) {
74042       SWIG_croak("Usage: fold_compound_pbacktrack5(self,num_samples,length,nr_memory);");
74043     }
74044     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
74045     if (!SWIG_IsOK(res1)) {
74046       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack5" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
74047     }
74048     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
74049     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
74050     if (!SWIG_IsOK(ecode2)) {
74051       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack5" "', argument " "2"" of type '" "unsigned int""'");
74052     }
74053     arg2 = static_cast< unsigned int >(val2);
74054     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
74055     if (!SWIG_IsOK(ecode3)) {
74056       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_pbacktrack5" "', argument " "3"" of type '" "unsigned int""'");
74057     }
74058     arg3 = static_cast< unsigned int >(val3);
74059     {
74060       if (!SvOK(ST(3))) {
74061         retval4 = new vrna_pbacktrack_mem_t();
74062         arg4 = retval4;
74063       } else {
74064         /* INOUT in */
74065         SWIG_ConvertPtr(ST(3),SWIG_as_voidptrptr(&retval4), 0, SWIG_POINTER_DISOWN);
74066         arg4 = retval4;
74067       }
74068     }
74069     _saved[0] = ST(3);
74070     {
74071       try {
74072         result = vrna_fold_compound_t_pbacktrack5__SWIG_3(arg1,arg2,arg3,arg4);
74073       } catch (const std::exception& e) {
74074         SWIG_exception(SWIG_RuntimeError, e.what());
74075       }
74076     }
74077     {
74078       size_t len = (&result)->size();
74079       SV **svs = new SV*[len];
74080       for (size_t i=0; i<len; i++) {
74081         svs[i] = sv_newmortal();
74082         SwigSvFromString(svs[i], result[i]);
74083       }
74084       AV *myav = av_make(len, svs);
74085       delete[] svs;
74086       ST(argvi) = newRV_noinc((SV*) myav);
74087       sv_2mortal(ST(argvi));
74088       argvi++;
74089     }
74090     {
74091       /* increase output stack if necessary */
74092       if (argvi >= items) {
74093         EXTEND(sp,1);
74094       }
74095       /* move already existing return values to the back */
74096       for (int i = argvi; i > 0; i--) {
74097         ST(i) = ST(i - 1);
74098       }
74099       /* store result as first element in the stack */
74100       ST(0) = SWIG_NewPointerObj(SWIG_as_voidptr(retval4), SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
74101       /* increase return argument counter */
74102       argvi++;
74103     }
74104 
74105 
74106 
74107 
74108     XSRETURN(argvi);
74109   fail:
74110 
74111 
74112 
74113 
74114     SWIG_croak_null();
74115   }
74116 }
74117 
74118 
XS(_wrap_fold_compound_subopt__SWIG_0)74119 XS(_wrap_fold_compound_subopt__SWIG_0) {
74120   {
74121     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
74122     int arg2 ;
74123     int arg3 ;
74124     FILE *arg4 = (FILE *) 0 ;
74125     void *argp1 = 0 ;
74126     int res1 = 0 ;
74127     int val2 ;
74128     int ecode2 = 0 ;
74129     int val3 ;
74130     int ecode3 = 0 ;
74131     int argvi = 0;
74132     std::vector< subopt_solution > result;
74133     dXSARGS;
74134 
74135     if ((items < 4) || (items > 4)) {
74136       SWIG_croak("Usage: fold_compound_subopt(self,delta,sorted,nullfile);");
74137     }
74138     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
74139     if (!SWIG_IsOK(res1)) {
74140       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_subopt" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
74141     }
74142     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
74143     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
74144     if (!SWIG_IsOK(ecode2)) {
74145       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_subopt" "', argument " "2"" of type '" "int""'");
74146     }
74147     arg2 = static_cast< int >(val2);
74148     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
74149     if (!SWIG_IsOK(ecode3)) {
74150       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_subopt" "', argument " "3"" of type '" "int""'");
74151     }
74152     arg3 = static_cast< int >(val3);
74153     {
74154       if (SvOK(ST(3))) /* check for undef */
74155       arg4 = PerlIO_findFILE(IoIFP(sv_2io(ST(3))));
74156       else  arg4 = NULL;
74157     }
74158     {
74159       try {
74160         result = vrna_fold_compound_t_subopt__SWIG_0(arg1,arg2,arg3,arg4);
74161       } catch (const std::exception& e) {
74162         SWIG_exception(SWIG_RuntimeError, e.what());
74163       }
74164     }
74165     {
74166       size_t len = (&result)->size();
74167       SV **svs = new SV*[len];
74168       for (size_t i=0; i<len; i++) {
74169         subopt_solution* ptr = new subopt_solution(result[i]);
74170         svs[i] = sv_newmortal();
74171         SWIG_MakePtr(svs[i], (void*) ptr,
74172           SWIGTYPE_p_subopt_solution, SWIG_SHADOW|0);
74173       }
74174       AV *myav = av_make(len, svs);
74175       delete[] svs;
74176       ST(argvi) = newRV_noinc((SV*) myav);
74177       sv_2mortal(ST(argvi));
74178       argvi++;
74179     }
74180 
74181 
74182 
74183 
74184     XSRETURN(argvi);
74185   fail:
74186 
74187 
74188 
74189 
74190     SWIG_croak_null();
74191   }
74192 }
74193 
74194 
XS(_wrap_fold_compound_subopt__SWIG_1)74195 XS(_wrap_fold_compound_subopt__SWIG_1) {
74196   {
74197     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
74198     int arg2 ;
74199     int arg3 ;
74200     void *argp1 = 0 ;
74201     int res1 = 0 ;
74202     int val2 ;
74203     int ecode2 = 0 ;
74204     int val3 ;
74205     int ecode3 = 0 ;
74206     int argvi = 0;
74207     std::vector< subopt_solution > result;
74208     dXSARGS;
74209 
74210     if ((items < 3) || (items > 3)) {
74211       SWIG_croak("Usage: fold_compound_subopt(self,delta,sorted);");
74212     }
74213     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
74214     if (!SWIG_IsOK(res1)) {
74215       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_subopt" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
74216     }
74217     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
74218     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
74219     if (!SWIG_IsOK(ecode2)) {
74220       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_subopt" "', argument " "2"" of type '" "int""'");
74221     }
74222     arg2 = static_cast< int >(val2);
74223     ecode3 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
74224     if (!SWIG_IsOK(ecode3)) {
74225       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_subopt" "', argument " "3"" of type '" "int""'");
74226     }
74227     arg3 = static_cast< int >(val3);
74228     {
74229       try {
74230         result = vrna_fold_compound_t_subopt__SWIG_0(arg1,arg2,arg3);
74231       } catch (const std::exception& e) {
74232         SWIG_exception(SWIG_RuntimeError, e.what());
74233       }
74234     }
74235     {
74236       size_t len = (&result)->size();
74237       SV **svs = new SV*[len];
74238       for (size_t i=0; i<len; i++) {
74239         subopt_solution* ptr = new subopt_solution(result[i]);
74240         svs[i] = sv_newmortal();
74241         SWIG_MakePtr(svs[i], (void*) ptr,
74242           SWIGTYPE_p_subopt_solution, SWIG_SHADOW|0);
74243       }
74244       AV *myav = av_make(len, svs);
74245       delete[] svs;
74246       ST(argvi) = newRV_noinc((SV*) myav);
74247       sv_2mortal(ST(argvi));
74248       argvi++;
74249     }
74250 
74251 
74252 
74253     XSRETURN(argvi);
74254   fail:
74255 
74256 
74257 
74258     SWIG_croak_null();
74259   }
74260 }
74261 
74262 
XS(_wrap_fold_compound_subopt__SWIG_2)74263 XS(_wrap_fold_compound_subopt__SWIG_2) {
74264   {
74265     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
74266     int arg2 ;
74267     void *argp1 = 0 ;
74268     int res1 = 0 ;
74269     int val2 ;
74270     int ecode2 = 0 ;
74271     int argvi = 0;
74272     std::vector< subopt_solution > result;
74273     dXSARGS;
74274 
74275     if ((items < 2) || (items > 2)) {
74276       SWIG_croak("Usage: fold_compound_subopt(self,delta);");
74277     }
74278     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
74279     if (!SWIG_IsOK(res1)) {
74280       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_subopt" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
74281     }
74282     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
74283     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
74284     if (!SWIG_IsOK(ecode2)) {
74285       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_subopt" "', argument " "2"" of type '" "int""'");
74286     }
74287     arg2 = static_cast< int >(val2);
74288     {
74289       try {
74290         result = vrna_fold_compound_t_subopt__SWIG_0(arg1,arg2);
74291       } catch (const std::exception& e) {
74292         SWIG_exception(SWIG_RuntimeError, e.what());
74293       }
74294     }
74295     {
74296       size_t len = (&result)->size();
74297       SV **svs = new SV*[len];
74298       for (size_t i=0; i<len; i++) {
74299         subopt_solution* ptr = new subopt_solution(result[i]);
74300         svs[i] = sv_newmortal();
74301         SWIG_MakePtr(svs[i], (void*) ptr,
74302           SWIGTYPE_p_subopt_solution, SWIG_SHADOW|0);
74303       }
74304       AV *myav = av_make(len, svs);
74305       delete[] svs;
74306       ST(argvi) = newRV_noinc((SV*) myav);
74307       sv_2mortal(ST(argvi));
74308       argvi++;
74309     }
74310 
74311 
74312     XSRETURN(argvi);
74313   fail:
74314 
74315 
74316     SWIG_croak_null();
74317   }
74318 }
74319 
74320 
XS(_wrap_fold_compound_subopt)74321 XS(_wrap_fold_compound_subopt) {
74322   dXSARGS;
74323 
74324   {
74325     unsigned long _index = 0;
74326     SWIG_TypeRank _rank = 0;
74327     if (items == 2) {
74328       SWIG_TypeRank _ranki = 0;
74329       SWIG_TypeRank _rankm = 0;
74330       SWIG_TypeRank _pi = 1;
74331       int _v = 0;
74332       {
74333         void *vptr = 0;
74334         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
74335         _v = SWIG_CheckState(res);
74336       }
74337       if (!_v) goto check_1;
74338       _ranki += _v*_pi;
74339       _rankm += _pi;
74340       _pi *= SWIG_MAXCASTRANK;
74341       {
74342         {
74343           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
74344           _v = SWIG_CheckState(res);
74345         }
74346       }
74347       if (!_v) goto check_1;
74348       _ranki += _v*_pi;
74349       _rankm += _pi;
74350       _pi *= SWIG_MAXCASTRANK;
74351       if (!_index || (_ranki < _rank)) {
74352         _rank = _ranki; _index = 1;
74353         if (_rank == _rankm) goto dispatch;
74354       }
74355     }
74356   check_1:
74357 
74358     if (items == 3) {
74359       SWIG_TypeRank _ranki = 0;
74360       SWIG_TypeRank _rankm = 0;
74361       SWIG_TypeRank _pi = 1;
74362       int _v = 0;
74363       {
74364         void *vptr = 0;
74365         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
74366         _v = SWIG_CheckState(res);
74367       }
74368       if (!_v) goto check_2;
74369       _ranki += _v*_pi;
74370       _rankm += _pi;
74371       _pi *= SWIG_MAXCASTRANK;
74372       {
74373         {
74374           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
74375           _v = SWIG_CheckState(res);
74376         }
74377       }
74378       if (!_v) goto check_2;
74379       _ranki += _v*_pi;
74380       _rankm += _pi;
74381       _pi *= SWIG_MAXCASTRANK;
74382       {
74383         {
74384           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
74385           _v = SWIG_CheckState(res);
74386         }
74387       }
74388       if (!_v) goto check_2;
74389       _ranki += _v*_pi;
74390       _rankm += _pi;
74391       _pi *= SWIG_MAXCASTRANK;
74392       if (!_index || (_ranki < _rank)) {
74393         _rank = _ranki; _index = 2;
74394         if (_rank == _rankm) goto dispatch;
74395       }
74396     }
74397   check_2:
74398 
74399     if (items == 4) {
74400       SWIG_TypeRank _ranki = 0;
74401       SWIG_TypeRank _rankm = 0;
74402       SWIG_TypeRank _pi = 1;
74403       int _v = 0;
74404       {
74405         void *vptr = 0;
74406         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
74407         _v = SWIG_CheckState(res);
74408       }
74409       if (!_v) goto check_3;
74410       _ranki += _v*_pi;
74411       _rankm += _pi;
74412       _pi *= SWIG_MAXCASTRANK;
74413       {
74414         {
74415           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
74416           _v = SWIG_CheckState(res);
74417         }
74418       }
74419       if (!_v) goto check_3;
74420       _ranki += _v*_pi;
74421       _rankm += _pi;
74422       _pi *= SWIG_MAXCASTRANK;
74423       {
74424         {
74425           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
74426           _v = SWIG_CheckState(res);
74427         }
74428       }
74429       if (!_v) goto check_3;
74430       _ranki += _v*_pi;
74431       _rankm += _pi;
74432       _pi *= SWIG_MAXCASTRANK;
74433       {
74434         {
74435           if (SvOK(ST(3)))
74436           _v = (sv_2io(ST(3))) ? 1 : 0;
74437         }
74438       }
74439       if (!_v) goto check_3;
74440       _ranki += _v*_pi;
74441       _rankm += _pi;
74442       _pi *= SWIG_MAXCASTRANK;
74443       if (!_index || (_ranki < _rank)) {
74444         _rank = _ranki; _index = 3;
74445         if (_rank == _rankm) goto dispatch;
74446       }
74447     }
74448   check_3:
74449 
74450   dispatch:
74451     switch(_index) {
74452     case 1:
74453       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_subopt__SWIG_2); return;
74454     case 2:
74455       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_subopt__SWIG_1); return;
74456     case 3:
74457       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_subopt__SWIG_0); return;
74458     }
74459   }
74460 
74461   croak("No matching function for overloaded 'fold_compound_subopt'");
74462   XSRETURN(0);
74463 }
74464 
74465 
XS(_wrap_fold_compound_subopt_zuker)74466 XS(_wrap_fold_compound_subopt_zuker) {
74467   {
74468     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
74469     void *argp1 = 0 ;
74470     int res1 = 0 ;
74471     int argvi = 0;
74472     std::vector< subopt_solution > result;
74473     dXSARGS;
74474 
74475     if ((items < 1) || (items > 1)) {
74476       SWIG_croak("Usage: fold_compound_subopt_zuker(self);");
74477     }
74478     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
74479     if (!SWIG_IsOK(res1)) {
74480       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_subopt_zuker" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
74481     }
74482     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
74483     {
74484       try {
74485         result = vrna_fold_compound_t_subopt_zuker(arg1);
74486       } catch (const std::exception& e) {
74487         SWIG_exception(SWIG_RuntimeError, e.what());
74488       }
74489     }
74490     {
74491       size_t len = (&result)->size();
74492       SV **svs = new SV*[len];
74493       for (size_t i=0; i<len; i++) {
74494         subopt_solution* ptr = new subopt_solution(result[i]);
74495         svs[i] = sv_newmortal();
74496         SWIG_MakePtr(svs[i], (void*) ptr,
74497           SWIGTYPE_p_subopt_solution, SWIG_SHADOW|0);
74498       }
74499       AV *myav = av_make(len, svs);
74500       delete[] svs;
74501       ST(argvi) = newRV_noinc((SV*) myav);
74502       sv_2mortal(ST(argvi));
74503       argvi++;
74504     }
74505 
74506     XSRETURN(argvi);
74507   fail:
74508 
74509     SWIG_croak_null();
74510   }
74511 }
74512 
74513 
XS(_wrap_fold_compound_sequence_add__SWIG_0)74514 XS(_wrap_fold_compound_sequence_add__SWIG_0) {
74515   {
74516     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
74517     std::string arg2 ;
74518     unsigned int arg3 ;
74519     void *argp1 = 0 ;
74520     int res1 = 0 ;
74521     unsigned int val3 ;
74522     int ecode3 = 0 ;
74523     int argvi = 0;
74524     int result;
74525     dXSARGS;
74526 
74527     if ((items < 3) || (items > 3)) {
74528       SWIG_croak("Usage: fold_compound_sequence_add(self,sequence,options);");
74529     }
74530     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
74531     if (!SWIG_IsOK(res1)) {
74532       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sequence_add" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
74533     }
74534     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
74535     {
74536       std::string *ptr = (std::string *)0;
74537       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
74538       if (!SWIG_IsOK(res) || !ptr) {
74539         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_sequence_add" "', argument " "2"" of type '" "std::string""'");
74540       }
74541       arg2 = *ptr;
74542       if (SWIG_IsNewObj(res)) delete ptr;
74543     }
74544     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
74545     if (!SWIG_IsOK(ecode3)) {
74546       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_sequence_add" "', argument " "3"" of type '" "unsigned int""'");
74547     }
74548     arg3 = static_cast< unsigned int >(val3);
74549     {
74550       try {
74551         result = (int)vrna_fold_compound_t_sequence_add__SWIG_0(arg1,arg2,arg3);
74552       } catch (const std::exception& e) {
74553         SWIG_exception(SWIG_RuntimeError, e.what());
74554       }
74555     }
74556     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
74557 
74558 
74559 
74560     XSRETURN(argvi);
74561   fail:
74562 
74563 
74564 
74565     SWIG_croak_null();
74566   }
74567 }
74568 
74569 
XS(_wrap_fold_compound_sequence_add__SWIG_1)74570 XS(_wrap_fold_compound_sequence_add__SWIG_1) {
74571   {
74572     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
74573     std::string arg2 ;
74574     void *argp1 = 0 ;
74575     int res1 = 0 ;
74576     int argvi = 0;
74577     int result;
74578     dXSARGS;
74579 
74580     if ((items < 2) || (items > 2)) {
74581       SWIG_croak("Usage: fold_compound_sequence_add(self,sequence);");
74582     }
74583     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
74584     if (!SWIG_IsOK(res1)) {
74585       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sequence_add" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
74586     }
74587     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
74588     {
74589       std::string *ptr = (std::string *)0;
74590       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
74591       if (!SWIG_IsOK(res) || !ptr) {
74592         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_sequence_add" "', argument " "2"" of type '" "std::string""'");
74593       }
74594       arg2 = *ptr;
74595       if (SWIG_IsNewObj(res)) delete ptr;
74596     }
74597     {
74598       try {
74599         result = (int)vrna_fold_compound_t_sequence_add__SWIG_0(arg1,arg2);
74600       } catch (const std::exception& e) {
74601         SWIG_exception(SWIG_RuntimeError, e.what());
74602       }
74603     }
74604     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
74605 
74606 
74607     XSRETURN(argvi);
74608   fail:
74609 
74610 
74611     SWIG_croak_null();
74612   }
74613 }
74614 
74615 
XS(_wrap_fold_compound_sequence_add)74616 XS(_wrap_fold_compound_sequence_add) {
74617   dXSARGS;
74618 
74619   {
74620     unsigned long _index = 0;
74621     SWIG_TypeRank _rank = 0;
74622     if (items == 2) {
74623       SWIG_TypeRank _ranki = 0;
74624       SWIG_TypeRank _rankm = 0;
74625       SWIG_TypeRank _pi = 1;
74626       int _v = 0;
74627       {
74628         void *vptr = 0;
74629         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
74630         _v = SWIG_CheckState(res);
74631       }
74632       if (!_v) goto check_1;
74633       _ranki += _v*_pi;
74634       _rankm += _pi;
74635       _pi *= SWIG_MAXCASTRANK;
74636       {
74637         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
74638         _v = SWIG_CheckState(res);
74639       }
74640       if (!_v) goto check_1;
74641       _ranki += _v*_pi;
74642       _rankm += _pi;
74643       _pi *= SWIG_MAXCASTRANK;
74644       if (!_index || (_ranki < _rank)) {
74645         _rank = _ranki; _index = 1;
74646         if (_rank == _rankm) goto dispatch;
74647       }
74648     }
74649   check_1:
74650 
74651     if (items == 3) {
74652       SWIG_TypeRank _ranki = 0;
74653       SWIG_TypeRank _rankm = 0;
74654       SWIG_TypeRank _pi = 1;
74655       int _v = 0;
74656       {
74657         void *vptr = 0;
74658         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
74659         _v = SWIG_CheckState(res);
74660       }
74661       if (!_v) goto check_2;
74662       _ranki += _v*_pi;
74663       _rankm += _pi;
74664       _pi *= SWIG_MAXCASTRANK;
74665       {
74666         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
74667         _v = SWIG_CheckState(res);
74668       }
74669       if (!_v) goto check_2;
74670       _ranki += _v*_pi;
74671       _rankm += _pi;
74672       _pi *= SWIG_MAXCASTRANK;
74673       {
74674         {
74675           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
74676           _v = SWIG_CheckState(res);
74677         }
74678       }
74679       if (!_v) goto check_2;
74680       _ranki += _v*_pi;
74681       _rankm += _pi;
74682       _pi *= SWIG_MAXCASTRANK;
74683       if (!_index || (_ranki < _rank)) {
74684         _rank = _ranki; _index = 2;
74685         if (_rank == _rankm) goto dispatch;
74686       }
74687     }
74688   check_2:
74689 
74690   dispatch:
74691     switch(_index) {
74692     case 1:
74693       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sequence_add__SWIG_1); return;
74694     case 2:
74695       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_sequence_add__SWIG_0); return;
74696     }
74697   }
74698 
74699   croak("No matching function for overloaded 'fold_compound_sequence_add'");
74700   XSRETURN(0);
74701 }
74702 
74703 
XS(_wrap_fold_compound_sequence_remove)74704 XS(_wrap_fold_compound_sequence_remove) {
74705   {
74706     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
74707     unsigned int arg2 ;
74708     void *argp1 = 0 ;
74709     int res1 = 0 ;
74710     unsigned int val2 ;
74711     int ecode2 = 0 ;
74712     int argvi = 0;
74713     int result;
74714     dXSARGS;
74715 
74716     if ((items < 2) || (items > 2)) {
74717       SWIG_croak("Usage: fold_compound_sequence_remove(self,i);");
74718     }
74719     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
74720     if (!SWIG_IsOK(res1)) {
74721       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sequence_remove" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
74722     }
74723     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
74724     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
74725     if (!SWIG_IsOK(ecode2)) {
74726       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_sequence_remove" "', argument " "2"" of type '" "unsigned int""'");
74727     }
74728     arg2 = static_cast< unsigned int >(val2);
74729     {
74730       try {
74731         result = (int)vrna_fold_compound_t_sequence_remove(arg1,arg2);
74732       } catch (const std::exception& e) {
74733         SWIG_exception(SWIG_RuntimeError, e.what());
74734       }
74735     }
74736     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
74737 
74738 
74739     XSRETURN(argvi);
74740   fail:
74741 
74742 
74743     SWIG_croak_null();
74744   }
74745 }
74746 
74747 
XS(_wrap_fold_compound_sequence_remove_all)74748 XS(_wrap_fold_compound_sequence_remove_all) {
74749   {
74750     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
74751     void *argp1 = 0 ;
74752     int res1 = 0 ;
74753     int argvi = 0;
74754     dXSARGS;
74755 
74756     if ((items < 1) || (items > 1)) {
74757       SWIG_croak("Usage: fold_compound_sequence_remove_all(self);");
74758     }
74759     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
74760     if (!SWIG_IsOK(res1)) {
74761       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sequence_remove_all" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
74762     }
74763     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
74764     {
74765       try {
74766         vrna_fold_compound_t_sequence_remove_all(arg1);
74767       } catch (const std::exception& e) {
74768         SWIG_exception(SWIG_RuntimeError, e.what());
74769       }
74770     }
74771     ST(argvi) = &PL_sv_undef;
74772 
74773     XSRETURN(argvi);
74774   fail:
74775 
74776     SWIG_croak_null();
74777   }
74778 }
74779 
74780 
XS(_wrap_fold_compound_sequence_prepare)74781 XS(_wrap_fold_compound_sequence_prepare) {
74782   {
74783     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
74784     void *argp1 = 0 ;
74785     int res1 = 0 ;
74786     int argvi = 0;
74787     dXSARGS;
74788 
74789     if ((items < 1) || (items > 1)) {
74790       SWIG_croak("Usage: fold_compound_sequence_prepare(self);");
74791     }
74792     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
74793     if (!SWIG_IsOK(res1)) {
74794       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sequence_prepare" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
74795     }
74796     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
74797     {
74798       try {
74799         vrna_fold_compound_t_sequence_prepare(arg1);
74800       } catch (const std::exception& e) {
74801         SWIG_exception(SWIG_RuntimeError, e.what());
74802       }
74803     }
74804     ST(argvi) = &PL_sv_undef;
74805 
74806     XSRETURN(argvi);
74807   fail:
74808 
74809     SWIG_croak_null();
74810   }
74811 }
74812 
74813 
XS(_wrap_fold_compound_ud_add_motif__SWIG_0)74814 XS(_wrap_fold_compound_ud_add_motif__SWIG_0) {
74815   {
74816     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
74817     std::string arg2 ;
74818     double arg3 ;
74819     std::string arg4 ;
74820     unsigned int arg5 ;
74821     void *argp1 = 0 ;
74822     int res1 = 0 ;
74823     double val3 ;
74824     int ecode3 = 0 ;
74825     unsigned int val5 ;
74826     int ecode5 = 0 ;
74827     int argvi = 0;
74828     dXSARGS;
74829 
74830     if ((items < 5) || (items > 5)) {
74831       SWIG_croak("Usage: fold_compound_ud_add_motif(self,motif,motif_en,name,options);");
74832     }
74833     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
74834     if (!SWIG_IsOK(res1)) {
74835       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_ud_add_motif" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
74836     }
74837     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
74838     {
74839       std::string *ptr = (std::string *)0;
74840       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
74841       if (!SWIG_IsOK(res) || !ptr) {
74842         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_ud_add_motif" "', argument " "2"" of type '" "std::string""'");
74843       }
74844       arg2 = *ptr;
74845       if (SWIG_IsNewObj(res)) delete ptr;
74846     }
74847     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
74848     if (!SWIG_IsOK(ecode3)) {
74849       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_ud_add_motif" "', argument " "3"" of type '" "double""'");
74850     }
74851     arg3 = static_cast< double >(val3);
74852     {
74853       std::string *ptr = (std::string *)0;
74854       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), &ptr);
74855       if (!SWIG_IsOK(res) || !ptr) {
74856         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_ud_add_motif" "', argument " "4"" of type '" "std::string""'");
74857       }
74858       arg4 = *ptr;
74859       if (SWIG_IsNewObj(res)) delete ptr;
74860     }
74861     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
74862     if (!SWIG_IsOK(ecode5)) {
74863       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_ud_add_motif" "', argument " "5"" of type '" "unsigned int""'");
74864     }
74865     arg5 = static_cast< unsigned int >(val5);
74866     {
74867       try {
74868         vrna_fold_compound_t_ud_add_motif__SWIG_0(arg1,arg2,arg3,arg4,arg5);
74869       } catch (const std::exception& e) {
74870         SWIG_exception(SWIG_RuntimeError, e.what());
74871       }
74872     }
74873     ST(argvi) = &PL_sv_undef;
74874 
74875 
74876 
74877 
74878 
74879     XSRETURN(argvi);
74880   fail:
74881 
74882 
74883 
74884 
74885 
74886     SWIG_croak_null();
74887   }
74888 }
74889 
74890 
XS(_wrap_fold_compound_ud_add_motif__SWIG_1)74891 XS(_wrap_fold_compound_ud_add_motif__SWIG_1) {
74892   {
74893     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
74894     std::string arg2 ;
74895     double arg3 ;
74896     std::string arg4 ;
74897     void *argp1 = 0 ;
74898     int res1 = 0 ;
74899     double val3 ;
74900     int ecode3 = 0 ;
74901     int argvi = 0;
74902     dXSARGS;
74903 
74904     if ((items < 4) || (items > 4)) {
74905       SWIG_croak("Usage: fold_compound_ud_add_motif(self,motif,motif_en,name);");
74906     }
74907     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
74908     if (!SWIG_IsOK(res1)) {
74909       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_ud_add_motif" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
74910     }
74911     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
74912     {
74913       std::string *ptr = (std::string *)0;
74914       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
74915       if (!SWIG_IsOK(res) || !ptr) {
74916         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_ud_add_motif" "', argument " "2"" of type '" "std::string""'");
74917       }
74918       arg2 = *ptr;
74919       if (SWIG_IsNewObj(res)) delete ptr;
74920     }
74921     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
74922     if (!SWIG_IsOK(ecode3)) {
74923       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_ud_add_motif" "', argument " "3"" of type '" "double""'");
74924     }
74925     arg3 = static_cast< double >(val3);
74926     {
74927       std::string *ptr = (std::string *)0;
74928       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), &ptr);
74929       if (!SWIG_IsOK(res) || !ptr) {
74930         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_ud_add_motif" "', argument " "4"" of type '" "std::string""'");
74931       }
74932       arg4 = *ptr;
74933       if (SWIG_IsNewObj(res)) delete ptr;
74934     }
74935     {
74936       try {
74937         vrna_fold_compound_t_ud_add_motif__SWIG_0(arg1,arg2,arg3,arg4);
74938       } catch (const std::exception& e) {
74939         SWIG_exception(SWIG_RuntimeError, e.what());
74940       }
74941     }
74942     ST(argvi) = &PL_sv_undef;
74943 
74944 
74945 
74946 
74947     XSRETURN(argvi);
74948   fail:
74949 
74950 
74951 
74952 
74953     SWIG_croak_null();
74954   }
74955 }
74956 
74957 
XS(_wrap_fold_compound_ud_add_motif__SWIG_2)74958 XS(_wrap_fold_compound_ud_add_motif__SWIG_2) {
74959   {
74960     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
74961     std::string arg2 ;
74962     double arg3 ;
74963     void *argp1 = 0 ;
74964     int res1 = 0 ;
74965     double val3 ;
74966     int ecode3 = 0 ;
74967     int argvi = 0;
74968     dXSARGS;
74969 
74970     if ((items < 3) || (items > 3)) {
74971       SWIG_croak("Usage: fold_compound_ud_add_motif(self,motif,motif_en);");
74972     }
74973     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
74974     if (!SWIG_IsOK(res1)) {
74975       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_ud_add_motif" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
74976     }
74977     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
74978     {
74979       std::string *ptr = (std::string *)0;
74980       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
74981       if (!SWIG_IsOK(res) || !ptr) {
74982         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_ud_add_motif" "', argument " "2"" of type '" "std::string""'");
74983       }
74984       arg2 = *ptr;
74985       if (SWIG_IsNewObj(res)) delete ptr;
74986     }
74987     ecode3 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
74988     if (!SWIG_IsOK(ecode3)) {
74989       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_ud_add_motif" "', argument " "3"" of type '" "double""'");
74990     }
74991     arg3 = static_cast< double >(val3);
74992     {
74993       try {
74994         vrna_fold_compound_t_ud_add_motif__SWIG_0(arg1,arg2,arg3);
74995       } catch (const std::exception& e) {
74996         SWIG_exception(SWIG_RuntimeError, e.what());
74997       }
74998     }
74999     ST(argvi) = &PL_sv_undef;
75000 
75001 
75002 
75003     XSRETURN(argvi);
75004   fail:
75005 
75006 
75007 
75008     SWIG_croak_null();
75009   }
75010 }
75011 
75012 
XS(_wrap_fold_compound_ud_add_motif)75013 XS(_wrap_fold_compound_ud_add_motif) {
75014   dXSARGS;
75015 
75016   {
75017     unsigned long _index = 0;
75018     SWIG_TypeRank _rank = 0;
75019     if (items == 3) {
75020       SWIG_TypeRank _ranki = 0;
75021       SWIG_TypeRank _rankm = 0;
75022       SWIG_TypeRank _pi = 1;
75023       int _v = 0;
75024       {
75025         void *vptr = 0;
75026         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
75027         _v = SWIG_CheckState(res);
75028       }
75029       if (!_v) goto check_1;
75030       _ranki += _v*_pi;
75031       _rankm += _pi;
75032       _pi *= SWIG_MAXCASTRANK;
75033       {
75034         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
75035         _v = SWIG_CheckState(res);
75036       }
75037       if (!_v) goto check_1;
75038       _ranki += _v*_pi;
75039       _rankm += _pi;
75040       _pi *= SWIG_MAXCASTRANK;
75041       {
75042         {
75043           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
75044           _v = SWIG_CheckState(res);
75045         }
75046       }
75047       if (!_v) goto check_1;
75048       _ranki += _v*_pi;
75049       _rankm += _pi;
75050       _pi *= SWIG_MAXCASTRANK;
75051       if (!_index || (_ranki < _rank)) {
75052         _rank = _ranki; _index = 1;
75053         if (_rank == _rankm) goto dispatch;
75054       }
75055     }
75056   check_1:
75057 
75058     if (items == 4) {
75059       SWIG_TypeRank _ranki = 0;
75060       SWIG_TypeRank _rankm = 0;
75061       SWIG_TypeRank _pi = 1;
75062       int _v = 0;
75063       {
75064         void *vptr = 0;
75065         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
75066         _v = SWIG_CheckState(res);
75067       }
75068       if (!_v) goto check_2;
75069       _ranki += _v*_pi;
75070       _rankm += _pi;
75071       _pi *= SWIG_MAXCASTRANK;
75072       {
75073         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
75074         _v = SWIG_CheckState(res);
75075       }
75076       if (!_v) goto check_2;
75077       _ranki += _v*_pi;
75078       _rankm += _pi;
75079       _pi *= SWIG_MAXCASTRANK;
75080       {
75081         {
75082           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
75083           _v = SWIG_CheckState(res);
75084         }
75085       }
75086       if (!_v) goto check_2;
75087       _ranki += _v*_pi;
75088       _rankm += _pi;
75089       _pi *= SWIG_MAXCASTRANK;
75090       {
75091         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), (std::string**)(0));
75092         _v = SWIG_CheckState(res);
75093       }
75094       if (!_v) goto check_2;
75095       _ranki += _v*_pi;
75096       _rankm += _pi;
75097       _pi *= SWIG_MAXCASTRANK;
75098       if (!_index || (_ranki < _rank)) {
75099         _rank = _ranki; _index = 2;
75100         if (_rank == _rankm) goto dispatch;
75101       }
75102     }
75103   check_2:
75104 
75105     if (items == 5) {
75106       SWIG_TypeRank _ranki = 0;
75107       SWIG_TypeRank _rankm = 0;
75108       SWIG_TypeRank _pi = 1;
75109       int _v = 0;
75110       {
75111         void *vptr = 0;
75112         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
75113         _v = SWIG_CheckState(res);
75114       }
75115       if (!_v) goto check_3;
75116       _ranki += _v*_pi;
75117       _rankm += _pi;
75118       _pi *= SWIG_MAXCASTRANK;
75119       {
75120         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
75121         _v = SWIG_CheckState(res);
75122       }
75123       if (!_v) goto check_3;
75124       _ranki += _v*_pi;
75125       _rankm += _pi;
75126       _pi *= SWIG_MAXCASTRANK;
75127       {
75128         {
75129           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
75130           _v = SWIG_CheckState(res);
75131         }
75132       }
75133       if (!_v) goto check_3;
75134       _ranki += _v*_pi;
75135       _rankm += _pi;
75136       _pi *= SWIG_MAXCASTRANK;
75137       {
75138         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(3), (std::string**)(0));
75139         _v = SWIG_CheckState(res);
75140       }
75141       if (!_v) goto check_3;
75142       _ranki += _v*_pi;
75143       _rankm += _pi;
75144       _pi *= SWIG_MAXCASTRANK;
75145       {
75146         {
75147           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
75148           _v = SWIG_CheckState(res);
75149         }
75150       }
75151       if (!_v) goto check_3;
75152       _ranki += _v*_pi;
75153       _rankm += _pi;
75154       _pi *= SWIG_MAXCASTRANK;
75155       if (!_index || (_ranki < _rank)) {
75156         _rank = _ranki; _index = 3;
75157         if (_rank == _rankm) goto dispatch;
75158       }
75159     }
75160   check_3:
75161 
75162   dispatch:
75163     switch(_index) {
75164     case 1:
75165       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_ud_add_motif__SWIG_2); return;
75166     case 2:
75167       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_ud_add_motif__SWIG_1); return;
75168     case 3:
75169       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_ud_add_motif__SWIG_0); return;
75170     }
75171   }
75172 
75173   croak("No matching function for overloaded 'fold_compound_ud_add_motif'");
75174   XSRETURN(0);
75175 }
75176 
75177 
XS(_wrap_fold_compound_ud_remove)75178 XS(_wrap_fold_compound_ud_remove) {
75179   {
75180     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
75181     void *argp1 = 0 ;
75182     int res1 = 0 ;
75183     int argvi = 0;
75184     dXSARGS;
75185 
75186     if ((items < 1) || (items > 1)) {
75187       SWIG_croak("Usage: fold_compound_ud_remove(self);");
75188     }
75189     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
75190     if (!SWIG_IsOK(res1)) {
75191       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_ud_remove" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
75192     }
75193     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
75194     {
75195       try {
75196         vrna_fold_compound_t_ud_remove(arg1);
75197       } catch (const std::exception& e) {
75198         SWIG_exception(SWIG_RuntimeError, e.what());
75199       }
75200     }
75201     ST(argvi) = &PL_sv_undef;
75202 
75203     XSRETURN(argvi);
75204   fail:
75205 
75206     SWIG_croak_null();
75207   }
75208 }
75209 
75210 
XS(_wrap_fold_compound_commands_apply__SWIG_0)75211 XS(_wrap_fold_compound_commands_apply__SWIG_0) {
75212   {
75213     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
75214     vrna_command_s *arg2 = (vrna_command_s *) 0 ;
75215     unsigned int arg3 ;
75216     void *argp1 = 0 ;
75217     int res1 = 0 ;
75218     void *argp2 = 0 ;
75219     int res2 = 0 ;
75220     unsigned int val3 ;
75221     int ecode3 = 0 ;
75222     int argvi = 0;
75223     int result;
75224     dXSARGS;
75225 
75226     if ((items < 3) || (items > 3)) {
75227       SWIG_croak("Usage: fold_compound_commands_apply(self,commands,options);");
75228     }
75229     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
75230     if (!SWIG_IsOK(res1)) {
75231       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_commands_apply" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
75232     }
75233     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
75234     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_command_s, 0 |  0 );
75235     if (!SWIG_IsOK(res2)) {
75236       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_commands_apply" "', argument " "2"" of type '" "vrna_command_s *""'");
75237     }
75238     arg2 = reinterpret_cast< vrna_command_s * >(argp2);
75239     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
75240     if (!SWIG_IsOK(ecode3)) {
75241       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_commands_apply" "', argument " "3"" of type '" "unsigned int""'");
75242     }
75243     arg3 = static_cast< unsigned int >(val3);
75244     {
75245       try {
75246         result = (int)vrna_fold_compound_t_commands_apply__SWIG_0(arg1,arg2,arg3);
75247       } catch (const std::exception& e) {
75248         SWIG_exception(SWIG_RuntimeError, e.what());
75249       }
75250     }
75251     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
75252 
75253 
75254 
75255     XSRETURN(argvi);
75256   fail:
75257 
75258 
75259 
75260     SWIG_croak_null();
75261   }
75262 }
75263 
75264 
XS(_wrap_fold_compound_commands_apply__SWIG_1)75265 XS(_wrap_fold_compound_commands_apply__SWIG_1) {
75266   {
75267     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
75268     vrna_command_s *arg2 = (vrna_command_s *) 0 ;
75269     void *argp1 = 0 ;
75270     int res1 = 0 ;
75271     void *argp2 = 0 ;
75272     int res2 = 0 ;
75273     int argvi = 0;
75274     int result;
75275     dXSARGS;
75276 
75277     if ((items < 2) || (items > 2)) {
75278       SWIG_croak("Usage: fold_compound_commands_apply(self,commands);");
75279     }
75280     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
75281     if (!SWIG_IsOK(res1)) {
75282       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_commands_apply" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
75283     }
75284     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
75285     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_command_s, 0 |  0 );
75286     if (!SWIG_IsOK(res2)) {
75287       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_commands_apply" "', argument " "2"" of type '" "vrna_command_s *""'");
75288     }
75289     arg2 = reinterpret_cast< vrna_command_s * >(argp2);
75290     {
75291       try {
75292         result = (int)vrna_fold_compound_t_commands_apply__SWIG_0(arg1,arg2);
75293       } catch (const std::exception& e) {
75294         SWIG_exception(SWIG_RuntimeError, e.what());
75295       }
75296     }
75297     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
75298 
75299 
75300     XSRETURN(argvi);
75301   fail:
75302 
75303 
75304     SWIG_croak_null();
75305   }
75306 }
75307 
75308 
XS(_wrap_fold_compound_commands_apply)75309 XS(_wrap_fold_compound_commands_apply) {
75310   dXSARGS;
75311 
75312   {
75313     unsigned long _index = 0;
75314     SWIG_TypeRank _rank = 0;
75315     if (items == 2) {
75316       SWIG_TypeRank _ranki = 0;
75317       SWIG_TypeRank _rankm = 0;
75318       SWIG_TypeRank _pi = 1;
75319       int _v = 0;
75320       {
75321         void *vptr = 0;
75322         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
75323         _v = SWIG_CheckState(res);
75324       }
75325       if (!_v) goto check_1;
75326       _ranki += _v*_pi;
75327       _rankm += _pi;
75328       _pi *= SWIG_MAXCASTRANK;
75329       {
75330         void *vptr = 0;
75331         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_command_s, 0);
75332         _v = SWIG_CheckState(res);
75333       }
75334       if (!_v) goto check_1;
75335       _ranki += _v*_pi;
75336       _rankm += _pi;
75337       _pi *= SWIG_MAXCASTRANK;
75338       if (!_index || (_ranki < _rank)) {
75339         _rank = _ranki; _index = 1;
75340         if (_rank == _rankm) goto dispatch;
75341       }
75342     }
75343   check_1:
75344 
75345     if (items == 3) {
75346       SWIG_TypeRank _ranki = 0;
75347       SWIG_TypeRank _rankm = 0;
75348       SWIG_TypeRank _pi = 1;
75349       int _v = 0;
75350       {
75351         void *vptr = 0;
75352         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
75353         _v = SWIG_CheckState(res);
75354       }
75355       if (!_v) goto check_2;
75356       _ranki += _v*_pi;
75357       _rankm += _pi;
75358       _pi *= SWIG_MAXCASTRANK;
75359       {
75360         void *vptr = 0;
75361         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_command_s, 0);
75362         _v = SWIG_CheckState(res);
75363       }
75364       if (!_v) goto check_2;
75365       _ranki += _v*_pi;
75366       _rankm += _pi;
75367       _pi *= SWIG_MAXCASTRANK;
75368       {
75369         {
75370           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
75371           _v = SWIG_CheckState(res);
75372         }
75373       }
75374       if (!_v) goto check_2;
75375       _ranki += _v*_pi;
75376       _rankm += _pi;
75377       _pi *= SWIG_MAXCASTRANK;
75378       if (!_index || (_ranki < _rank)) {
75379         _rank = _ranki; _index = 2;
75380         if (_rank == _rankm) goto dispatch;
75381       }
75382     }
75383   check_2:
75384 
75385   dispatch:
75386     switch(_index) {
75387     case 1:
75388       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_commands_apply__SWIG_1); return;
75389     case 2:
75390       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_commands_apply__SWIG_0); return;
75391     }
75392   }
75393 
75394   croak("No matching function for overloaded 'fold_compound_commands_apply'");
75395   XSRETURN(0);
75396 }
75397 
75398 
XS(_wrap_fold_compound_file_commands_apply__SWIG_0)75399 XS(_wrap_fold_compound_file_commands_apply__SWIG_0) {
75400   {
75401     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
75402     std::string arg2 ;
75403     unsigned int arg3 ;
75404     void *argp1 = 0 ;
75405     int res1 = 0 ;
75406     unsigned int val3 ;
75407     int ecode3 = 0 ;
75408     int argvi = 0;
75409     int result;
75410     dXSARGS;
75411 
75412     if ((items < 3) || (items > 3)) {
75413       SWIG_croak("Usage: fold_compound_file_commands_apply(self,filename,options);");
75414     }
75415     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
75416     if (!SWIG_IsOK(res1)) {
75417       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_file_commands_apply" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
75418     }
75419     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
75420     {
75421       std::string *ptr = (std::string *)0;
75422       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
75423       if (!SWIG_IsOK(res) || !ptr) {
75424         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_file_commands_apply" "', argument " "2"" of type '" "std::string""'");
75425       }
75426       arg2 = *ptr;
75427       if (SWIG_IsNewObj(res)) delete ptr;
75428     }
75429     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
75430     if (!SWIG_IsOK(ecode3)) {
75431       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_file_commands_apply" "', argument " "3"" of type '" "unsigned int""'");
75432     }
75433     arg3 = static_cast< unsigned int >(val3);
75434     {
75435       try {
75436         result = (int)vrna_fold_compound_t_file_commands_apply__SWIG_0(arg1,arg2,arg3);
75437       } catch (const std::exception& e) {
75438         SWIG_exception(SWIG_RuntimeError, e.what());
75439       }
75440     }
75441     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
75442 
75443 
75444 
75445     XSRETURN(argvi);
75446   fail:
75447 
75448 
75449 
75450     SWIG_croak_null();
75451   }
75452 }
75453 
75454 
XS(_wrap_fold_compound_file_commands_apply__SWIG_1)75455 XS(_wrap_fold_compound_file_commands_apply__SWIG_1) {
75456   {
75457     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
75458     std::string arg2 ;
75459     void *argp1 = 0 ;
75460     int res1 = 0 ;
75461     int argvi = 0;
75462     int result;
75463     dXSARGS;
75464 
75465     if ((items < 2) || (items > 2)) {
75466       SWIG_croak("Usage: fold_compound_file_commands_apply(self,filename);");
75467     }
75468     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
75469     if (!SWIG_IsOK(res1)) {
75470       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_file_commands_apply" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
75471     }
75472     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
75473     {
75474       std::string *ptr = (std::string *)0;
75475       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
75476       if (!SWIG_IsOK(res) || !ptr) {
75477         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_file_commands_apply" "', argument " "2"" of type '" "std::string""'");
75478       }
75479       arg2 = *ptr;
75480       if (SWIG_IsNewObj(res)) delete ptr;
75481     }
75482     {
75483       try {
75484         result = (int)vrna_fold_compound_t_file_commands_apply__SWIG_0(arg1,arg2);
75485       } catch (const std::exception& e) {
75486         SWIG_exception(SWIG_RuntimeError, e.what());
75487       }
75488     }
75489     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
75490 
75491 
75492     XSRETURN(argvi);
75493   fail:
75494 
75495 
75496     SWIG_croak_null();
75497   }
75498 }
75499 
75500 
XS(_wrap_fold_compound_file_commands_apply)75501 XS(_wrap_fold_compound_file_commands_apply) {
75502   dXSARGS;
75503 
75504   {
75505     unsigned long _index = 0;
75506     SWIG_TypeRank _rank = 0;
75507     if (items == 2) {
75508       SWIG_TypeRank _ranki = 0;
75509       SWIG_TypeRank _rankm = 0;
75510       SWIG_TypeRank _pi = 1;
75511       int _v = 0;
75512       {
75513         void *vptr = 0;
75514         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
75515         _v = SWIG_CheckState(res);
75516       }
75517       if (!_v) goto check_1;
75518       _ranki += _v*_pi;
75519       _rankm += _pi;
75520       _pi *= SWIG_MAXCASTRANK;
75521       {
75522         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
75523         _v = SWIG_CheckState(res);
75524       }
75525       if (!_v) goto check_1;
75526       _ranki += _v*_pi;
75527       _rankm += _pi;
75528       _pi *= SWIG_MAXCASTRANK;
75529       if (!_index || (_ranki < _rank)) {
75530         _rank = _ranki; _index = 1;
75531         if (_rank == _rankm) goto dispatch;
75532       }
75533     }
75534   check_1:
75535 
75536     if (items == 3) {
75537       SWIG_TypeRank _ranki = 0;
75538       SWIG_TypeRank _rankm = 0;
75539       SWIG_TypeRank _pi = 1;
75540       int _v = 0;
75541       {
75542         void *vptr = 0;
75543         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
75544         _v = SWIG_CheckState(res);
75545       }
75546       if (!_v) goto check_2;
75547       _ranki += _v*_pi;
75548       _rankm += _pi;
75549       _pi *= SWIG_MAXCASTRANK;
75550       {
75551         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
75552         _v = SWIG_CheckState(res);
75553       }
75554       if (!_v) goto check_2;
75555       _ranki += _v*_pi;
75556       _rankm += _pi;
75557       _pi *= SWIG_MAXCASTRANK;
75558       {
75559         {
75560           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
75561           _v = SWIG_CheckState(res);
75562         }
75563       }
75564       if (!_v) goto check_2;
75565       _ranki += _v*_pi;
75566       _rankm += _pi;
75567       _pi *= SWIG_MAXCASTRANK;
75568       if (!_index || (_ranki < _rank)) {
75569         _rank = _ranki; _index = 2;
75570         if (_rank == _rankm) goto dispatch;
75571       }
75572     }
75573   check_2:
75574 
75575   dispatch:
75576     switch(_index) {
75577     case 1:
75578       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_file_commands_apply__SWIG_1); return;
75579     case 2:
75580       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_file_commands_apply__SWIG_0); return;
75581     }
75582   }
75583 
75584   croak("No matching function for overloaded 'fold_compound_file_commands_apply'");
75585   XSRETURN(0);
75586 }
75587 
75588 
XS(_wrap_fold_compound_rotational_symmetry_db)75589 XS(_wrap_fold_compound_rotational_symmetry_db) {
75590   {
75591     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
75592     std::string arg2 ;
75593     void *argp1 = 0 ;
75594     int res1 = 0 ;
75595     int argvi = 0;
75596     std::vector< unsigned int > result;
75597     dXSARGS;
75598 
75599     if ((items < 2) || (items > 2)) {
75600       SWIG_croak("Usage: fold_compound_rotational_symmetry_db(self,structure);");
75601     }
75602     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
75603     if (!SWIG_IsOK(res1)) {
75604       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_rotational_symmetry_db" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
75605     }
75606     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
75607     {
75608       std::string *ptr = (std::string *)0;
75609       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
75610       if (!SWIG_IsOK(res) || !ptr) {
75611         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_rotational_symmetry_db" "', argument " "2"" of type '" "std::string""'");
75612       }
75613       arg2 = *ptr;
75614       if (SWIG_IsNewObj(res)) delete ptr;
75615     }
75616     {
75617       try {
75618         result = vrna_fold_compound_t_rotational_symmetry_db(arg1,arg2);
75619       } catch (const std::exception& e) {
75620         SWIG_exception(SWIG_RuntimeError, e.what());
75621       }
75622     }
75623     {
75624       size_t len = (&result)->size();
75625       SV **svs = new SV*[len];
75626       for (size_t i=0; i<len; i++) {
75627         svs[i] = sv_newmortal();
75628         sv_setiv(svs[i], result[i]);
75629       }
75630       AV *myav = av_make(len, svs);
75631       delete[] svs;
75632       ST(argvi) = newRV_noinc((SV*) myav);
75633       sv_2mortal(ST(argvi));
75634       argvi++;
75635     }
75636 
75637 
75638     XSRETURN(argvi);
75639   fail:
75640 
75641 
75642     SWIG_croak_null();
75643   }
75644 }
75645 
75646 
XS(_wrap_fold_compound_neighbors__SWIG_0)75647 XS(_wrap_fold_compound_neighbors__SWIG_0) {
75648   {
75649     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
75650     std::vector< int > arg2 ;
75651     unsigned int arg3 ;
75652     void *argp1 = 0 ;
75653     int res1 = 0 ;
75654     std::vector< int > *v2 ;
75655     unsigned int val3 ;
75656     int ecode3 = 0 ;
75657     int argvi = 0;
75658     std::vector< vrna_move_t > result;
75659     dXSARGS;
75660 
75661     if ((items < 3) || (items > 3)) {
75662       SWIG_croak("Usage: fold_compound_neighbors(self,pt,options);");
75663     }
75664     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
75665     if (!SWIG_IsOK(res1)) {
75666       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_neighbors" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
75667     }
75668     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
75669     {
75670       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
75671           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
75672         arg2 = *v2;
75673       } else if (SvROK(ST(1))) {
75674         AV *av = (AV *)SvRV(ST(1));
75675         if (SvTYPE(av) != SVt_PVAV)
75676         SWIG_croak("Type error in argument 2 of fold_compound_neighbors. "
75677           "Expected an array of ""int");
75678         SV **tv;
75679         I32 len = av_len(av) + 1;
75680         for (int i=0; i<len; i++) {
75681           tv = av_fetch(av, i, 0);
75682           if (SvIOK(*tv)) {
75683             (&arg2)->push_back((int)SvIVX(*tv));
75684           } else {
75685             SWIG_croak("Type error in argument 2 of "
75686               "fold_compound_neighbors. "
75687               "Expected an array of ""int");
75688           }
75689         }
75690       } else {
75691         SWIG_croak("Type error in argument 2 of fold_compound_neighbors. "
75692           "Expected an array of ""int");
75693       }
75694     }
75695     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
75696     if (!SWIG_IsOK(ecode3)) {
75697       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_neighbors" "', argument " "3"" of type '" "unsigned int""'");
75698     }
75699     arg3 = static_cast< unsigned int >(val3);
75700     {
75701       try {
75702         result = vrna_fold_compound_t_neighbors__SWIG_0(arg1,arg2,arg3);
75703       } catch (const std::exception& e) {
75704         SWIG_exception(SWIG_RuntimeError, e.what());
75705       }
75706     }
75707     {
75708       size_t len = (&result)->size();
75709       SV **svs = new SV*[len];
75710       for (size_t i=0; i<len; i++) {
75711         vrna_move_t* ptr = new vrna_move_t(result[i]);
75712         svs[i] = sv_newmortal();
75713         SWIG_MakePtr(svs[i], (void*) ptr,
75714           SWIGTYPE_p_vrna_move_t, SWIG_SHADOW|0);
75715       }
75716       AV *myav = av_make(len, svs);
75717       delete[] svs;
75718       ST(argvi) = newRV_noinc((SV*) myav);
75719       sv_2mortal(ST(argvi));
75720       argvi++;
75721     }
75722 
75723 
75724     XSRETURN(argvi);
75725   fail:
75726 
75727 
75728     SWIG_croak_null();
75729   }
75730 }
75731 
75732 
XS(_wrap_fold_compound_neighbors__SWIG_1)75733 XS(_wrap_fold_compound_neighbors__SWIG_1) {
75734   {
75735     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
75736     std::vector< int > arg2 ;
75737     void *argp1 = 0 ;
75738     int res1 = 0 ;
75739     std::vector< int > *v2 ;
75740     int argvi = 0;
75741     std::vector< vrna_move_t > result;
75742     dXSARGS;
75743 
75744     if ((items < 2) || (items > 2)) {
75745       SWIG_croak("Usage: fold_compound_neighbors(self,pt);");
75746     }
75747     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
75748     if (!SWIG_IsOK(res1)) {
75749       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_neighbors" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
75750     }
75751     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
75752     {
75753       if (SWIG_ConvertPtr(ST(1),(void **) &v2,
75754           SWIGTYPE_p_std__vectorT_int_t,1) != -1){
75755         arg2 = *v2;
75756       } else if (SvROK(ST(1))) {
75757         AV *av = (AV *)SvRV(ST(1));
75758         if (SvTYPE(av) != SVt_PVAV)
75759         SWIG_croak("Type error in argument 2 of fold_compound_neighbors. "
75760           "Expected an array of ""int");
75761         SV **tv;
75762         I32 len = av_len(av) + 1;
75763         for (int i=0; i<len; i++) {
75764           tv = av_fetch(av, i, 0);
75765           if (SvIOK(*tv)) {
75766             (&arg2)->push_back((int)SvIVX(*tv));
75767           } else {
75768             SWIG_croak("Type error in argument 2 of "
75769               "fold_compound_neighbors. "
75770               "Expected an array of ""int");
75771           }
75772         }
75773       } else {
75774         SWIG_croak("Type error in argument 2 of fold_compound_neighbors. "
75775           "Expected an array of ""int");
75776       }
75777     }
75778     {
75779       try {
75780         result = vrna_fold_compound_t_neighbors__SWIG_0(arg1,arg2);
75781       } catch (const std::exception& e) {
75782         SWIG_exception(SWIG_RuntimeError, e.what());
75783       }
75784     }
75785     {
75786       size_t len = (&result)->size();
75787       SV **svs = new SV*[len];
75788       for (size_t i=0; i<len; i++) {
75789         vrna_move_t* ptr = new vrna_move_t(result[i]);
75790         svs[i] = sv_newmortal();
75791         SWIG_MakePtr(svs[i], (void*) ptr,
75792           SWIGTYPE_p_vrna_move_t, SWIG_SHADOW|0);
75793       }
75794       AV *myav = av_make(len, svs);
75795       delete[] svs;
75796       ST(argvi) = newRV_noinc((SV*) myav);
75797       sv_2mortal(ST(argvi));
75798       argvi++;
75799     }
75800 
75801     XSRETURN(argvi);
75802   fail:
75803 
75804     SWIG_croak_null();
75805   }
75806 }
75807 
75808 
XS(_wrap_fold_compound_neighbors)75809 XS(_wrap_fold_compound_neighbors) {
75810   dXSARGS;
75811 
75812   {
75813     unsigned long _index = 0;
75814     SWIG_TypeRank _rank = 0;
75815     if (items == 2) {
75816       SWIG_TypeRank _ranki = 0;
75817       SWIG_TypeRank _rankm = 0;
75818       SWIG_TypeRank _pi = 1;
75819       int _v = 0;
75820       {
75821         void *vptr = 0;
75822         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
75823         _v = SWIG_CheckState(res);
75824       }
75825       if (!_v) goto check_1;
75826       _ranki += _v*_pi;
75827       _rankm += _pi;
75828       _pi *= SWIG_MAXCASTRANK;
75829       {
75830         {
75831           {
75832             /* wrapped vector? */
75833             std::vector< int >* v;
75834             if (SWIG_ConvertPtr(ST(1),(void **) &v,
75835                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
75836               _v = 1;
75837             } else if (SvROK(ST(1))) {
75838               /* native sequence? */
75839               AV *av = (AV *)SvRV(ST(1));
75840               if (SvTYPE(av) == SVt_PVAV) {
75841                 I32 len = av_len(av) + 1;
75842                 if (len == 0) {
75843                   /* an empty sequence can be of any type */
75844                   _v = 1;
75845                 } else {
75846                   /* check the first element only */
75847                   SV **tv = av_fetch(av, 0, 0);
75848                   if (SvIOK(*tv))
75849                   _v = 1;
75850                   else
75851                   _v = 0;
75852                 }
75853               }
75854             } else {
75855               _v = 0;
75856             }
75857           }
75858         }
75859       }
75860       if (!_v) goto check_1;
75861       _ranki += _v*_pi;
75862       _rankm += _pi;
75863       _pi *= SWIG_MAXCASTRANK;
75864       if (!_index || (_ranki < _rank)) {
75865         _rank = _ranki; _index = 1;
75866         if (_rank == _rankm) goto dispatch;
75867       }
75868     }
75869   check_1:
75870 
75871     if (items == 3) {
75872       SWIG_TypeRank _ranki = 0;
75873       SWIG_TypeRank _rankm = 0;
75874       SWIG_TypeRank _pi = 1;
75875       int _v = 0;
75876       {
75877         void *vptr = 0;
75878         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
75879         _v = SWIG_CheckState(res);
75880       }
75881       if (!_v) goto check_2;
75882       _ranki += _v*_pi;
75883       _rankm += _pi;
75884       _pi *= SWIG_MAXCASTRANK;
75885       {
75886         {
75887           {
75888             /* wrapped vector? */
75889             std::vector< int >* v;
75890             if (SWIG_ConvertPtr(ST(1),(void **) &v,
75891                 SWIGTYPE_p_std__vectorT_int_t,0) != -1) {
75892               _v = 1;
75893             } else if (SvROK(ST(1))) {
75894               /* native sequence? */
75895               AV *av = (AV *)SvRV(ST(1));
75896               if (SvTYPE(av) == SVt_PVAV) {
75897                 I32 len = av_len(av) + 1;
75898                 if (len == 0) {
75899                   /* an empty sequence can be of any type */
75900                   _v = 1;
75901                 } else {
75902                   /* check the first element only */
75903                   SV **tv = av_fetch(av, 0, 0);
75904                   if (SvIOK(*tv))
75905                   _v = 1;
75906                   else
75907                   _v = 0;
75908                 }
75909               }
75910             } else {
75911               _v = 0;
75912             }
75913           }
75914         }
75915       }
75916       if (!_v) goto check_2;
75917       _ranki += _v*_pi;
75918       _rankm += _pi;
75919       _pi *= SWIG_MAXCASTRANK;
75920       {
75921         {
75922           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
75923           _v = SWIG_CheckState(res);
75924         }
75925       }
75926       if (!_v) goto check_2;
75927       _ranki += _v*_pi;
75928       _rankm += _pi;
75929       _pi *= SWIG_MAXCASTRANK;
75930       if (!_index || (_ranki < _rank)) {
75931         _rank = _ranki; _index = 2;
75932         if (_rank == _rankm) goto dispatch;
75933       }
75934     }
75935   check_2:
75936 
75937   dispatch:
75938     switch(_index) {
75939     case 1:
75940       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_neighbors__SWIG_1); return;
75941     case 2:
75942       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_neighbors__SWIG_0); return;
75943     }
75944   }
75945 
75946   croak("No matching function for overloaded 'fold_compound_neighbors'");
75947   XSRETURN(0);
75948 }
75949 
75950 
XS(_wrap_fold_compound_path__SWIG_0)75951 XS(_wrap_fold_compound_path__SWIG_0) {
75952   {
75953     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
75954     std::vector< int > *arg2 = 0 ;
75955     unsigned int arg3 ;
75956     unsigned int arg4 ;
75957     void *argp1 = 0 ;
75958     int res1 = 0 ;
75959     void *argp2 = 0 ;
75960     int res2 = 0 ;
75961     unsigned int val3 ;
75962     int ecode3 = 0 ;
75963     unsigned int val4 ;
75964     int ecode4 = 0 ;
75965     int argvi = 0;
75966     std::vector< vrna_move_t > result;
75967     dXSARGS;
75968 
75969     if ((items < 4) || (items > 4)) {
75970       SWIG_croak("Usage: fold_compound_path(self,pt,steps,options);");
75971     }
75972     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
75973     if (!SWIG_IsOK(res1)) {
75974       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
75975     }
75976     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
75977     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_std__vectorT_int_t,  0 );
75978     if (!SWIG_IsOK(res2)) {
75979       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_path" "', argument " "2"" of type '" "std::vector< int > &""'");
75980     }
75981     if (!argp2) {
75982       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "fold_compound_path" "', argument " "2"" of type '" "std::vector< int > &""'");
75983     }
75984     arg2 = reinterpret_cast< std::vector< int > * >(argp2);
75985     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
75986     if (!SWIG_IsOK(ecode3)) {
75987       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_path" "', argument " "3"" of type '" "unsigned int""'");
75988     }
75989     arg3 = static_cast< unsigned int >(val3);
75990     ecode4 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
75991     if (!SWIG_IsOK(ecode4)) {
75992       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_path" "', argument " "4"" of type '" "unsigned int""'");
75993     }
75994     arg4 = static_cast< unsigned int >(val4);
75995     {
75996       try {
75997         result = vrna_fold_compound_t_path__SWIG_0(arg1,*arg2,arg3,arg4);
75998       } catch (const std::exception& e) {
75999         SWIG_exception(SWIG_RuntimeError, e.what());
76000       }
76001     }
76002     {
76003       size_t len = (&result)->size();
76004       SV **svs = new SV*[len];
76005       for (size_t i=0; i<len; i++) {
76006         vrna_move_t* ptr = new vrna_move_t(result[i]);
76007         svs[i] = sv_newmortal();
76008         SWIG_MakePtr(svs[i], (void*) ptr,
76009           SWIGTYPE_p_vrna_move_t, SWIG_SHADOW|0);
76010       }
76011       AV *myav = av_make(len, svs);
76012       delete[] svs;
76013       ST(argvi) = newRV_noinc((SV*) myav);
76014       sv_2mortal(ST(argvi));
76015       argvi++;
76016     }
76017 
76018 
76019 
76020 
76021     XSRETURN(argvi);
76022   fail:
76023 
76024 
76025 
76026 
76027     SWIG_croak_null();
76028   }
76029 }
76030 
76031 
XS(_wrap_fold_compound_path__SWIG_1)76032 XS(_wrap_fold_compound_path__SWIG_1) {
76033   {
76034     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
76035     std::vector< int > *arg2 = 0 ;
76036     unsigned int arg3 ;
76037     void *argp1 = 0 ;
76038     int res1 = 0 ;
76039     void *argp2 = 0 ;
76040     int res2 = 0 ;
76041     unsigned int val3 ;
76042     int ecode3 = 0 ;
76043     int argvi = 0;
76044     std::vector< vrna_move_t > result;
76045     dXSARGS;
76046 
76047     if ((items < 3) || (items > 3)) {
76048       SWIG_croak("Usage: fold_compound_path(self,pt,steps);");
76049     }
76050     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
76051     if (!SWIG_IsOK(res1)) {
76052       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
76053     }
76054     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
76055     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_std__vectorT_int_t,  0 );
76056     if (!SWIG_IsOK(res2)) {
76057       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_path" "', argument " "2"" of type '" "std::vector< int > &""'");
76058     }
76059     if (!argp2) {
76060       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "fold_compound_path" "', argument " "2"" of type '" "std::vector< int > &""'");
76061     }
76062     arg2 = reinterpret_cast< std::vector< int > * >(argp2);
76063     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
76064     if (!SWIG_IsOK(ecode3)) {
76065       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_path" "', argument " "3"" of type '" "unsigned int""'");
76066     }
76067     arg3 = static_cast< unsigned int >(val3);
76068     {
76069       try {
76070         result = vrna_fold_compound_t_path__SWIG_0(arg1,*arg2,arg3);
76071       } catch (const std::exception& e) {
76072         SWIG_exception(SWIG_RuntimeError, e.what());
76073       }
76074     }
76075     {
76076       size_t len = (&result)->size();
76077       SV **svs = new SV*[len];
76078       for (size_t i=0; i<len; i++) {
76079         vrna_move_t* ptr = new vrna_move_t(result[i]);
76080         svs[i] = sv_newmortal();
76081         SWIG_MakePtr(svs[i], (void*) ptr,
76082           SWIGTYPE_p_vrna_move_t, SWIG_SHADOW|0);
76083       }
76084       AV *myav = av_make(len, svs);
76085       delete[] svs;
76086       ST(argvi) = newRV_noinc((SV*) myav);
76087       sv_2mortal(ST(argvi));
76088       argvi++;
76089     }
76090 
76091 
76092 
76093     XSRETURN(argvi);
76094   fail:
76095 
76096 
76097 
76098     SWIG_croak_null();
76099   }
76100 }
76101 
76102 
XS(_wrap_fold_compound_path)76103 XS(_wrap_fold_compound_path) {
76104   dXSARGS;
76105 
76106   {
76107     unsigned long _index = 0;
76108     SWIG_TypeRank _rank = 0;
76109     if (items == 3) {
76110       SWIG_TypeRank _ranki = 0;
76111       SWIG_TypeRank _rankm = 0;
76112       SWIG_TypeRank _pi = 1;
76113       int _v = 0;
76114       {
76115         void *vptr = 0;
76116         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
76117         _v = SWIG_CheckState(res);
76118       }
76119       if (!_v) goto check_1;
76120       _ranki += _v*_pi;
76121       _rankm += _pi;
76122       _pi *= SWIG_MAXCASTRANK;
76123       {
76124         void *vptr = 0;
76125         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_std__vectorT_int_t, SWIG_POINTER_NO_NULL);
76126         _v = SWIG_CheckState(res);
76127       }
76128       if (!_v) goto check_1;
76129       _ranki += _v*_pi;
76130       _rankm += _pi;
76131       _pi *= SWIG_MAXCASTRANK;
76132       {
76133         {
76134           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
76135           _v = SWIG_CheckState(res);
76136         }
76137       }
76138       if (!_v) goto check_1;
76139       _ranki += _v*_pi;
76140       _rankm += _pi;
76141       _pi *= SWIG_MAXCASTRANK;
76142       if (!_index || (_ranki < _rank)) {
76143         _rank = _ranki; _index = 1;
76144         if (_rank == _rankm) goto dispatch;
76145       }
76146     }
76147   check_1:
76148 
76149     if (items == 4) {
76150       SWIG_TypeRank _ranki = 0;
76151       SWIG_TypeRank _rankm = 0;
76152       SWIG_TypeRank _pi = 1;
76153       int _v = 0;
76154       {
76155         void *vptr = 0;
76156         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
76157         _v = SWIG_CheckState(res);
76158       }
76159       if (!_v) goto check_2;
76160       _ranki += _v*_pi;
76161       _rankm += _pi;
76162       _pi *= SWIG_MAXCASTRANK;
76163       {
76164         void *vptr = 0;
76165         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_std__vectorT_int_t, SWIG_POINTER_NO_NULL);
76166         _v = SWIG_CheckState(res);
76167       }
76168       if (!_v) goto check_2;
76169       _ranki += _v*_pi;
76170       _rankm += _pi;
76171       _pi *= SWIG_MAXCASTRANK;
76172       {
76173         {
76174           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
76175           _v = SWIG_CheckState(res);
76176         }
76177       }
76178       if (!_v) goto check_2;
76179       _ranki += _v*_pi;
76180       _rankm += _pi;
76181       _pi *= SWIG_MAXCASTRANK;
76182       {
76183         {
76184           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
76185           _v = SWIG_CheckState(res);
76186         }
76187       }
76188       if (!_v) goto check_2;
76189       _ranki += _v*_pi;
76190       _rankm += _pi;
76191       _pi *= SWIG_MAXCASTRANK;
76192       if (!_index || (_ranki < _rank)) {
76193         _rank = _ranki; _index = 2;
76194         if (_rank == _rankm) goto dispatch;
76195       }
76196     }
76197   check_2:
76198 
76199   dispatch:
76200     switch(_index) {
76201     case 1:
76202       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path__SWIG_1); return;
76203     case 2:
76204       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path__SWIG_0); return;
76205     }
76206   }
76207 
76208   croak("No matching function for overloaded 'fold_compound_path'");
76209   XSRETURN(0);
76210 }
76211 
76212 
XS(_wrap_fold_compound_path_gradient__SWIG_0)76213 XS(_wrap_fold_compound_path_gradient__SWIG_0) {
76214   {
76215     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
76216     std::vector< int > *arg2 = 0 ;
76217     unsigned int arg3 ;
76218     void *argp1 = 0 ;
76219     int res1 = 0 ;
76220     void *argp2 = 0 ;
76221     int res2 = 0 ;
76222     unsigned int val3 ;
76223     int ecode3 = 0 ;
76224     int argvi = 0;
76225     std::vector< vrna_move_t > result;
76226     dXSARGS;
76227 
76228     if ((items < 3) || (items > 3)) {
76229       SWIG_croak("Usage: fold_compound_path_gradient(self,pt,options);");
76230     }
76231     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
76232     if (!SWIG_IsOK(res1)) {
76233       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path_gradient" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
76234     }
76235     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
76236     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_std__vectorT_int_t,  0 );
76237     if (!SWIG_IsOK(res2)) {
76238       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_path_gradient" "', argument " "2"" of type '" "std::vector< int > &""'");
76239     }
76240     if (!argp2) {
76241       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "fold_compound_path_gradient" "', argument " "2"" of type '" "std::vector< int > &""'");
76242     }
76243     arg2 = reinterpret_cast< std::vector< int > * >(argp2);
76244     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
76245     if (!SWIG_IsOK(ecode3)) {
76246       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_path_gradient" "', argument " "3"" of type '" "unsigned int""'");
76247     }
76248     arg3 = static_cast< unsigned int >(val3);
76249     {
76250       try {
76251         result = vrna_fold_compound_t_path_gradient__SWIG_0(arg1,*arg2,arg3);
76252       } catch (const std::exception& e) {
76253         SWIG_exception(SWIG_RuntimeError, e.what());
76254       }
76255     }
76256     {
76257       size_t len = (&result)->size();
76258       SV **svs = new SV*[len];
76259       for (size_t i=0; i<len; i++) {
76260         vrna_move_t* ptr = new vrna_move_t(result[i]);
76261         svs[i] = sv_newmortal();
76262         SWIG_MakePtr(svs[i], (void*) ptr,
76263           SWIGTYPE_p_vrna_move_t, SWIG_SHADOW|0);
76264       }
76265       AV *myav = av_make(len, svs);
76266       delete[] svs;
76267       ST(argvi) = newRV_noinc((SV*) myav);
76268       sv_2mortal(ST(argvi));
76269       argvi++;
76270     }
76271 
76272 
76273 
76274     XSRETURN(argvi);
76275   fail:
76276 
76277 
76278 
76279     SWIG_croak_null();
76280   }
76281 }
76282 
76283 
XS(_wrap_fold_compound_path_gradient__SWIG_1)76284 XS(_wrap_fold_compound_path_gradient__SWIG_1) {
76285   {
76286     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
76287     std::vector< int > *arg2 = 0 ;
76288     void *argp1 = 0 ;
76289     int res1 = 0 ;
76290     void *argp2 = 0 ;
76291     int res2 = 0 ;
76292     int argvi = 0;
76293     std::vector< vrna_move_t > result;
76294     dXSARGS;
76295 
76296     if ((items < 2) || (items > 2)) {
76297       SWIG_croak("Usage: fold_compound_path_gradient(self,pt);");
76298     }
76299     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
76300     if (!SWIG_IsOK(res1)) {
76301       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path_gradient" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
76302     }
76303     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
76304     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_std__vectorT_int_t,  0 );
76305     if (!SWIG_IsOK(res2)) {
76306       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_path_gradient" "', argument " "2"" of type '" "std::vector< int > &""'");
76307     }
76308     if (!argp2) {
76309       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "fold_compound_path_gradient" "', argument " "2"" of type '" "std::vector< int > &""'");
76310     }
76311     arg2 = reinterpret_cast< std::vector< int > * >(argp2);
76312     {
76313       try {
76314         result = vrna_fold_compound_t_path_gradient__SWIG_0(arg1,*arg2);
76315       } catch (const std::exception& e) {
76316         SWIG_exception(SWIG_RuntimeError, e.what());
76317       }
76318     }
76319     {
76320       size_t len = (&result)->size();
76321       SV **svs = new SV*[len];
76322       for (size_t i=0; i<len; i++) {
76323         vrna_move_t* ptr = new vrna_move_t(result[i]);
76324         svs[i] = sv_newmortal();
76325         SWIG_MakePtr(svs[i], (void*) ptr,
76326           SWIGTYPE_p_vrna_move_t, SWIG_SHADOW|0);
76327       }
76328       AV *myav = av_make(len, svs);
76329       delete[] svs;
76330       ST(argvi) = newRV_noinc((SV*) myav);
76331       sv_2mortal(ST(argvi));
76332       argvi++;
76333     }
76334 
76335 
76336     XSRETURN(argvi);
76337   fail:
76338 
76339 
76340     SWIG_croak_null();
76341   }
76342 }
76343 
76344 
XS(_wrap_fold_compound_path_gradient)76345 XS(_wrap_fold_compound_path_gradient) {
76346   dXSARGS;
76347 
76348   {
76349     unsigned long _index = 0;
76350     SWIG_TypeRank _rank = 0;
76351     if (items == 2) {
76352       SWIG_TypeRank _ranki = 0;
76353       SWIG_TypeRank _rankm = 0;
76354       SWIG_TypeRank _pi = 1;
76355       int _v = 0;
76356       {
76357         void *vptr = 0;
76358         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
76359         _v = SWIG_CheckState(res);
76360       }
76361       if (!_v) goto check_1;
76362       _ranki += _v*_pi;
76363       _rankm += _pi;
76364       _pi *= SWIG_MAXCASTRANK;
76365       {
76366         void *vptr = 0;
76367         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_std__vectorT_int_t, SWIG_POINTER_NO_NULL);
76368         _v = SWIG_CheckState(res);
76369       }
76370       if (!_v) goto check_1;
76371       _ranki += _v*_pi;
76372       _rankm += _pi;
76373       _pi *= SWIG_MAXCASTRANK;
76374       if (!_index || (_ranki < _rank)) {
76375         _rank = _ranki; _index = 1;
76376         if (_rank == _rankm) goto dispatch;
76377       }
76378     }
76379   check_1:
76380 
76381     if (items == 3) {
76382       SWIG_TypeRank _ranki = 0;
76383       SWIG_TypeRank _rankm = 0;
76384       SWIG_TypeRank _pi = 1;
76385       int _v = 0;
76386       {
76387         void *vptr = 0;
76388         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
76389         _v = SWIG_CheckState(res);
76390       }
76391       if (!_v) goto check_2;
76392       _ranki += _v*_pi;
76393       _rankm += _pi;
76394       _pi *= SWIG_MAXCASTRANK;
76395       {
76396         void *vptr = 0;
76397         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_std__vectorT_int_t, SWIG_POINTER_NO_NULL);
76398         _v = SWIG_CheckState(res);
76399       }
76400       if (!_v) goto check_2;
76401       _ranki += _v*_pi;
76402       _rankm += _pi;
76403       _pi *= SWIG_MAXCASTRANK;
76404       {
76405         {
76406           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
76407           _v = SWIG_CheckState(res);
76408         }
76409       }
76410       if (!_v) goto check_2;
76411       _ranki += _v*_pi;
76412       _rankm += _pi;
76413       _pi *= SWIG_MAXCASTRANK;
76414       if (!_index || (_ranki < _rank)) {
76415         _rank = _ranki; _index = 2;
76416         if (_rank == _rankm) goto dispatch;
76417       }
76418     }
76419   check_2:
76420 
76421   dispatch:
76422     switch(_index) {
76423     case 1:
76424       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path_gradient__SWIG_1); return;
76425     case 2:
76426       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path_gradient__SWIG_0); return;
76427     }
76428   }
76429 
76430   croak("No matching function for overloaded 'fold_compound_path_gradient'");
76431   XSRETURN(0);
76432 }
76433 
76434 
XS(_wrap_fold_compound_path_random__SWIG_0)76435 XS(_wrap_fold_compound_path_random__SWIG_0) {
76436   {
76437     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
76438     std::vector< int > *arg2 = 0 ;
76439     unsigned int arg3 ;
76440     unsigned int arg4 ;
76441     void *argp1 = 0 ;
76442     int res1 = 0 ;
76443     void *argp2 = 0 ;
76444     int res2 = 0 ;
76445     unsigned int val3 ;
76446     int ecode3 = 0 ;
76447     unsigned int val4 ;
76448     int ecode4 = 0 ;
76449     int argvi = 0;
76450     std::vector< vrna_move_t > result;
76451     dXSARGS;
76452 
76453     if ((items < 4) || (items > 4)) {
76454       SWIG_croak("Usage: fold_compound_path_random(self,pt,steps,options);");
76455     }
76456     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
76457     if (!SWIG_IsOK(res1)) {
76458       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path_random" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
76459     }
76460     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
76461     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_std__vectorT_int_t,  0 );
76462     if (!SWIG_IsOK(res2)) {
76463       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_path_random" "', argument " "2"" of type '" "std::vector< int > &""'");
76464     }
76465     if (!argp2) {
76466       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "fold_compound_path_random" "', argument " "2"" of type '" "std::vector< int > &""'");
76467     }
76468     arg2 = reinterpret_cast< std::vector< int > * >(argp2);
76469     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
76470     if (!SWIG_IsOK(ecode3)) {
76471       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_path_random" "', argument " "3"" of type '" "unsigned int""'");
76472     }
76473     arg3 = static_cast< unsigned int >(val3);
76474     ecode4 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
76475     if (!SWIG_IsOK(ecode4)) {
76476       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_path_random" "', argument " "4"" of type '" "unsigned int""'");
76477     }
76478     arg4 = static_cast< unsigned int >(val4);
76479     {
76480       try {
76481         result = vrna_fold_compound_t_path_random__SWIG_0(arg1,*arg2,arg3,arg4);
76482       } catch (const std::exception& e) {
76483         SWIG_exception(SWIG_RuntimeError, e.what());
76484       }
76485     }
76486     {
76487       size_t len = (&result)->size();
76488       SV **svs = new SV*[len];
76489       for (size_t i=0; i<len; i++) {
76490         vrna_move_t* ptr = new vrna_move_t(result[i]);
76491         svs[i] = sv_newmortal();
76492         SWIG_MakePtr(svs[i], (void*) ptr,
76493           SWIGTYPE_p_vrna_move_t, SWIG_SHADOW|0);
76494       }
76495       AV *myav = av_make(len, svs);
76496       delete[] svs;
76497       ST(argvi) = newRV_noinc((SV*) myav);
76498       sv_2mortal(ST(argvi));
76499       argvi++;
76500     }
76501 
76502 
76503 
76504 
76505     XSRETURN(argvi);
76506   fail:
76507 
76508 
76509 
76510 
76511     SWIG_croak_null();
76512   }
76513 }
76514 
76515 
XS(_wrap_fold_compound_path_random__SWIG_1)76516 XS(_wrap_fold_compound_path_random__SWIG_1) {
76517   {
76518     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
76519     std::vector< int > *arg2 = 0 ;
76520     unsigned int arg3 ;
76521     void *argp1 = 0 ;
76522     int res1 = 0 ;
76523     void *argp2 = 0 ;
76524     int res2 = 0 ;
76525     unsigned int val3 ;
76526     int ecode3 = 0 ;
76527     int argvi = 0;
76528     std::vector< vrna_move_t > result;
76529     dXSARGS;
76530 
76531     if ((items < 3) || (items > 3)) {
76532       SWIG_croak("Usage: fold_compound_path_random(self,pt,steps);");
76533     }
76534     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
76535     if (!SWIG_IsOK(res1)) {
76536       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path_random" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
76537     }
76538     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
76539     res2 = SWIG_ConvertPtr(ST(1), &argp2, SWIGTYPE_p_std__vectorT_int_t,  0 );
76540     if (!SWIG_IsOK(res2)) {
76541       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "fold_compound_path_random" "', argument " "2"" of type '" "std::vector< int > &""'");
76542     }
76543     if (!argp2) {
76544       SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "fold_compound_path_random" "', argument " "2"" of type '" "std::vector< int > &""'");
76545     }
76546     arg2 = reinterpret_cast< std::vector< int > * >(argp2);
76547     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
76548     if (!SWIG_IsOK(ecode3)) {
76549       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_path_random" "', argument " "3"" of type '" "unsigned int""'");
76550     }
76551     arg3 = static_cast< unsigned int >(val3);
76552     {
76553       try {
76554         result = vrna_fold_compound_t_path_random__SWIG_0(arg1,*arg2,arg3);
76555       } catch (const std::exception& e) {
76556         SWIG_exception(SWIG_RuntimeError, e.what());
76557       }
76558     }
76559     {
76560       size_t len = (&result)->size();
76561       SV **svs = new SV*[len];
76562       for (size_t i=0; i<len; i++) {
76563         vrna_move_t* ptr = new vrna_move_t(result[i]);
76564         svs[i] = sv_newmortal();
76565         SWIG_MakePtr(svs[i], (void*) ptr,
76566           SWIGTYPE_p_vrna_move_t, SWIG_SHADOW|0);
76567       }
76568       AV *myav = av_make(len, svs);
76569       delete[] svs;
76570       ST(argvi) = newRV_noinc((SV*) myav);
76571       sv_2mortal(ST(argvi));
76572       argvi++;
76573     }
76574 
76575 
76576 
76577     XSRETURN(argvi);
76578   fail:
76579 
76580 
76581 
76582     SWIG_croak_null();
76583   }
76584 }
76585 
76586 
XS(_wrap_fold_compound_path_random)76587 XS(_wrap_fold_compound_path_random) {
76588   dXSARGS;
76589 
76590   {
76591     unsigned long _index = 0;
76592     SWIG_TypeRank _rank = 0;
76593     if (items == 3) {
76594       SWIG_TypeRank _ranki = 0;
76595       SWIG_TypeRank _rankm = 0;
76596       SWIG_TypeRank _pi = 1;
76597       int _v = 0;
76598       {
76599         void *vptr = 0;
76600         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
76601         _v = SWIG_CheckState(res);
76602       }
76603       if (!_v) goto check_1;
76604       _ranki += _v*_pi;
76605       _rankm += _pi;
76606       _pi *= SWIG_MAXCASTRANK;
76607       {
76608         void *vptr = 0;
76609         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_std__vectorT_int_t, SWIG_POINTER_NO_NULL);
76610         _v = SWIG_CheckState(res);
76611       }
76612       if (!_v) goto check_1;
76613       _ranki += _v*_pi;
76614       _rankm += _pi;
76615       _pi *= SWIG_MAXCASTRANK;
76616       {
76617         {
76618           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
76619           _v = SWIG_CheckState(res);
76620         }
76621       }
76622       if (!_v) goto check_1;
76623       _ranki += _v*_pi;
76624       _rankm += _pi;
76625       _pi *= SWIG_MAXCASTRANK;
76626       if (!_index || (_ranki < _rank)) {
76627         _rank = _ranki; _index = 1;
76628         if (_rank == _rankm) goto dispatch;
76629       }
76630     }
76631   check_1:
76632 
76633     if (items == 4) {
76634       SWIG_TypeRank _ranki = 0;
76635       SWIG_TypeRank _rankm = 0;
76636       SWIG_TypeRank _pi = 1;
76637       int _v = 0;
76638       {
76639         void *vptr = 0;
76640         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
76641         _v = SWIG_CheckState(res);
76642       }
76643       if (!_v) goto check_2;
76644       _ranki += _v*_pi;
76645       _rankm += _pi;
76646       _pi *= SWIG_MAXCASTRANK;
76647       {
76648         void *vptr = 0;
76649         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_std__vectorT_int_t, SWIG_POINTER_NO_NULL);
76650         _v = SWIG_CheckState(res);
76651       }
76652       if (!_v) goto check_2;
76653       _ranki += _v*_pi;
76654       _rankm += _pi;
76655       _pi *= SWIG_MAXCASTRANK;
76656       {
76657         {
76658           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
76659           _v = SWIG_CheckState(res);
76660         }
76661       }
76662       if (!_v) goto check_2;
76663       _ranki += _v*_pi;
76664       _rankm += _pi;
76665       _pi *= SWIG_MAXCASTRANK;
76666       {
76667         {
76668           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
76669           _v = SWIG_CheckState(res);
76670         }
76671       }
76672       if (!_v) goto check_2;
76673       _ranki += _v*_pi;
76674       _rankm += _pi;
76675       _pi *= SWIG_MAXCASTRANK;
76676       if (!_index || (_ranki < _rank)) {
76677         _rank = _ranki; _index = 2;
76678         if (_rank == _rankm) goto dispatch;
76679       }
76680     }
76681   check_2:
76682 
76683   dispatch:
76684     switch(_index) {
76685     case 1:
76686       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path_random__SWIG_1); return;
76687     case 2:
76688       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path_random__SWIG_0); return;
76689     }
76690   }
76691 
76692   croak("No matching function for overloaded 'fold_compound_path_random'");
76693   XSRETURN(0);
76694 }
76695 
76696 
XS(_wrap_fold_compound_path_findpath_saddle__SWIG_0)76697 XS(_wrap_fold_compound_path_findpath_saddle__SWIG_0) {
76698   {
76699     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
76700     std::string arg2 ;
76701     std::string arg3 ;
76702     int arg4 ;
76703     int arg5 ;
76704     void *argp1 = 0 ;
76705     int res1 = 0 ;
76706     int val4 ;
76707     int ecode4 = 0 ;
76708     int val5 ;
76709     int ecode5 = 0 ;
76710     int argvi = 0;
76711     SV *result = 0 ;
76712     dXSARGS;
76713 
76714     if ((items < 5) || (items > 5)) {
76715       SWIG_croak("Usage: fold_compound_path_findpath_saddle(self,s1,s2,width,maxE);");
76716     }
76717     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
76718     if (!SWIG_IsOK(res1)) {
76719       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path_findpath_saddle" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
76720     }
76721     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
76722     {
76723       std::string *ptr = (std::string *)0;
76724       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
76725       if (!SWIG_IsOK(res) || !ptr) {
76726         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_findpath_saddle" "', argument " "2"" of type '" "std::string""'");
76727       }
76728       arg2 = *ptr;
76729       if (SWIG_IsNewObj(res)) delete ptr;
76730     }
76731     {
76732       std::string *ptr = (std::string *)0;
76733       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
76734       if (!SWIG_IsOK(res) || !ptr) {
76735         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_findpath_saddle" "', argument " "3"" of type '" "std::string""'");
76736       }
76737       arg3 = *ptr;
76738       if (SWIG_IsNewObj(res)) delete ptr;
76739     }
76740     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
76741     if (!SWIG_IsOK(ecode4)) {
76742       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_path_findpath_saddle" "', argument " "4"" of type '" "int""'");
76743     }
76744     arg4 = static_cast< int >(val4);
76745     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
76746     if (!SWIG_IsOK(ecode5)) {
76747       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_path_findpath_saddle" "', argument " "5"" of type '" "int""'");
76748     }
76749     arg5 = static_cast< int >(val5);
76750     {
76751       try {
76752         result = (SV *)vrna_fold_compound_t_path_findpath_saddle__SWIG_0(arg1,arg2,arg3,arg4,arg5);
76753       } catch (const std::exception& e) {
76754         SWIG_exception(SWIG_RuntimeError, e.what());
76755       }
76756     }
76757     ST(argvi) = result; argvi++ ;
76758 
76759 
76760 
76761 
76762 
76763     XSRETURN(argvi);
76764   fail:
76765 
76766 
76767 
76768 
76769 
76770     SWIG_croak_null();
76771   }
76772 }
76773 
76774 
XS(_wrap_fold_compound_path_findpath_saddle__SWIG_1)76775 XS(_wrap_fold_compound_path_findpath_saddle__SWIG_1) {
76776   {
76777     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
76778     std::string arg2 ;
76779     std::string arg3 ;
76780     int arg4 ;
76781     void *argp1 = 0 ;
76782     int res1 = 0 ;
76783     int val4 ;
76784     int ecode4 = 0 ;
76785     int argvi = 0;
76786     SV *result = 0 ;
76787     dXSARGS;
76788 
76789     if ((items < 4) || (items > 4)) {
76790       SWIG_croak("Usage: fold_compound_path_findpath_saddle(self,s1,s2,width);");
76791     }
76792     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
76793     if (!SWIG_IsOK(res1)) {
76794       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path_findpath_saddle" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
76795     }
76796     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
76797     {
76798       std::string *ptr = (std::string *)0;
76799       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
76800       if (!SWIG_IsOK(res) || !ptr) {
76801         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_findpath_saddle" "', argument " "2"" of type '" "std::string""'");
76802       }
76803       arg2 = *ptr;
76804       if (SWIG_IsNewObj(res)) delete ptr;
76805     }
76806     {
76807       std::string *ptr = (std::string *)0;
76808       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
76809       if (!SWIG_IsOK(res) || !ptr) {
76810         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_findpath_saddle" "', argument " "3"" of type '" "std::string""'");
76811       }
76812       arg3 = *ptr;
76813       if (SWIG_IsNewObj(res)) delete ptr;
76814     }
76815     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
76816     if (!SWIG_IsOK(ecode4)) {
76817       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_path_findpath_saddle" "', argument " "4"" of type '" "int""'");
76818     }
76819     arg4 = static_cast< int >(val4);
76820     {
76821       try {
76822         result = (SV *)vrna_fold_compound_t_path_findpath_saddle__SWIG_0(arg1,arg2,arg3,arg4);
76823       } catch (const std::exception& e) {
76824         SWIG_exception(SWIG_RuntimeError, e.what());
76825       }
76826     }
76827     ST(argvi) = result; argvi++ ;
76828 
76829 
76830 
76831 
76832     XSRETURN(argvi);
76833   fail:
76834 
76835 
76836 
76837 
76838     SWIG_croak_null();
76839   }
76840 }
76841 
76842 
XS(_wrap_fold_compound_path_findpath_saddle__SWIG_2)76843 XS(_wrap_fold_compound_path_findpath_saddle__SWIG_2) {
76844   {
76845     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
76846     std::string arg2 ;
76847     std::string arg3 ;
76848     void *argp1 = 0 ;
76849     int res1 = 0 ;
76850     int argvi = 0;
76851     SV *result = 0 ;
76852     dXSARGS;
76853 
76854     if ((items < 3) || (items > 3)) {
76855       SWIG_croak("Usage: fold_compound_path_findpath_saddle(self,s1,s2);");
76856     }
76857     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
76858     if (!SWIG_IsOK(res1)) {
76859       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path_findpath_saddle" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
76860     }
76861     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
76862     {
76863       std::string *ptr = (std::string *)0;
76864       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
76865       if (!SWIG_IsOK(res) || !ptr) {
76866         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_findpath_saddle" "', argument " "2"" of type '" "std::string""'");
76867       }
76868       arg2 = *ptr;
76869       if (SWIG_IsNewObj(res)) delete ptr;
76870     }
76871     {
76872       std::string *ptr = (std::string *)0;
76873       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
76874       if (!SWIG_IsOK(res) || !ptr) {
76875         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_findpath_saddle" "', argument " "3"" of type '" "std::string""'");
76876       }
76877       arg3 = *ptr;
76878       if (SWIG_IsNewObj(res)) delete ptr;
76879     }
76880     {
76881       try {
76882         result = (SV *)vrna_fold_compound_t_path_findpath_saddle__SWIG_0(arg1,arg2,arg3);
76883       } catch (const std::exception& e) {
76884         SWIG_exception(SWIG_RuntimeError, e.what());
76885       }
76886     }
76887     ST(argvi) = result; argvi++ ;
76888 
76889 
76890 
76891     XSRETURN(argvi);
76892   fail:
76893 
76894 
76895 
76896     SWIG_croak_null();
76897   }
76898 }
76899 
76900 
XS(_wrap_fold_compound_path_findpath_saddle)76901 XS(_wrap_fold_compound_path_findpath_saddle) {
76902   dXSARGS;
76903 
76904   {
76905     unsigned long _index = 0;
76906     SWIG_TypeRank _rank = 0;
76907     if (items == 3) {
76908       SWIG_TypeRank _ranki = 0;
76909       SWIG_TypeRank _rankm = 0;
76910       SWIG_TypeRank _pi = 1;
76911       int _v = 0;
76912       {
76913         void *vptr = 0;
76914         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
76915         _v = SWIG_CheckState(res);
76916       }
76917       if (!_v) goto check_1;
76918       _ranki += _v*_pi;
76919       _rankm += _pi;
76920       _pi *= SWIG_MAXCASTRANK;
76921       {
76922         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
76923         _v = SWIG_CheckState(res);
76924       }
76925       if (!_v) goto check_1;
76926       _ranki += _v*_pi;
76927       _rankm += _pi;
76928       _pi *= SWIG_MAXCASTRANK;
76929       {
76930         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), (std::string**)(0));
76931         _v = SWIG_CheckState(res);
76932       }
76933       if (!_v) goto check_1;
76934       _ranki += _v*_pi;
76935       _rankm += _pi;
76936       _pi *= SWIG_MAXCASTRANK;
76937       if (!_index || (_ranki < _rank)) {
76938         _rank = _ranki; _index = 1;
76939         if (_rank == _rankm) goto dispatch;
76940       }
76941     }
76942   check_1:
76943 
76944     if (items == 4) {
76945       SWIG_TypeRank _ranki = 0;
76946       SWIG_TypeRank _rankm = 0;
76947       SWIG_TypeRank _pi = 1;
76948       int _v = 0;
76949       {
76950         void *vptr = 0;
76951         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
76952         _v = SWIG_CheckState(res);
76953       }
76954       if (!_v) goto check_2;
76955       _ranki += _v*_pi;
76956       _rankm += _pi;
76957       _pi *= SWIG_MAXCASTRANK;
76958       {
76959         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
76960         _v = SWIG_CheckState(res);
76961       }
76962       if (!_v) goto check_2;
76963       _ranki += _v*_pi;
76964       _rankm += _pi;
76965       _pi *= SWIG_MAXCASTRANK;
76966       {
76967         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), (std::string**)(0));
76968         _v = SWIG_CheckState(res);
76969       }
76970       if (!_v) goto check_2;
76971       _ranki += _v*_pi;
76972       _rankm += _pi;
76973       _pi *= SWIG_MAXCASTRANK;
76974       {
76975         {
76976           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
76977           _v = SWIG_CheckState(res);
76978         }
76979       }
76980       if (!_v) goto check_2;
76981       _ranki += _v*_pi;
76982       _rankm += _pi;
76983       _pi *= SWIG_MAXCASTRANK;
76984       if (!_index || (_ranki < _rank)) {
76985         _rank = _ranki; _index = 2;
76986         if (_rank == _rankm) goto dispatch;
76987       }
76988     }
76989   check_2:
76990 
76991     if (items == 5) {
76992       SWIG_TypeRank _ranki = 0;
76993       SWIG_TypeRank _rankm = 0;
76994       SWIG_TypeRank _pi = 1;
76995       int _v = 0;
76996       {
76997         void *vptr = 0;
76998         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
76999         _v = SWIG_CheckState(res);
77000       }
77001       if (!_v) goto check_3;
77002       _ranki += _v*_pi;
77003       _rankm += _pi;
77004       _pi *= SWIG_MAXCASTRANK;
77005       {
77006         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
77007         _v = SWIG_CheckState(res);
77008       }
77009       if (!_v) goto check_3;
77010       _ranki += _v*_pi;
77011       _rankm += _pi;
77012       _pi *= SWIG_MAXCASTRANK;
77013       {
77014         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), (std::string**)(0));
77015         _v = SWIG_CheckState(res);
77016       }
77017       if (!_v) goto check_3;
77018       _ranki += _v*_pi;
77019       _rankm += _pi;
77020       _pi *= SWIG_MAXCASTRANK;
77021       {
77022         {
77023           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
77024           _v = SWIG_CheckState(res);
77025         }
77026       }
77027       if (!_v) goto check_3;
77028       _ranki += _v*_pi;
77029       _rankm += _pi;
77030       _pi *= SWIG_MAXCASTRANK;
77031       {
77032         {
77033           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
77034           _v = SWIG_CheckState(res);
77035         }
77036       }
77037       if (!_v) goto check_3;
77038       _ranki += _v*_pi;
77039       _rankm += _pi;
77040       _pi *= SWIG_MAXCASTRANK;
77041       if (!_index || (_ranki < _rank)) {
77042         _rank = _ranki; _index = 3;
77043         if (_rank == _rankm) goto dispatch;
77044       }
77045     }
77046   check_3:
77047 
77048   dispatch:
77049     switch(_index) {
77050     case 1:
77051       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path_findpath_saddle__SWIG_2); return;
77052     case 2:
77053       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path_findpath_saddle__SWIG_1); return;
77054     case 3:
77055       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path_findpath_saddle__SWIG_0); return;
77056     }
77057   }
77058 
77059   croak("No matching function for overloaded 'fold_compound_path_findpath_saddle'");
77060   XSRETURN(0);
77061 }
77062 
77063 
XS(_wrap_fold_compound_path_findpath__SWIG_0)77064 XS(_wrap_fold_compound_path_findpath__SWIG_0) {
77065   {
77066     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
77067     std::string arg2 ;
77068     std::string arg3 ;
77069     int arg4 ;
77070     int arg5 ;
77071     void *argp1 = 0 ;
77072     int res1 = 0 ;
77073     int val4 ;
77074     int ecode4 = 0 ;
77075     int val5 ;
77076     int ecode5 = 0 ;
77077     int argvi = 0;
77078     std::vector< vrna_path_t > result;
77079     dXSARGS;
77080 
77081     if ((items < 5) || (items > 5)) {
77082       SWIG_croak("Usage: fold_compound_path_findpath(self,s1,s2,width,maxE);");
77083     }
77084     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
77085     if (!SWIG_IsOK(res1)) {
77086       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path_findpath" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
77087     }
77088     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
77089     {
77090       std::string *ptr = (std::string *)0;
77091       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
77092       if (!SWIG_IsOK(res) || !ptr) {
77093         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_findpath" "', argument " "2"" of type '" "std::string""'");
77094       }
77095       arg2 = *ptr;
77096       if (SWIG_IsNewObj(res)) delete ptr;
77097     }
77098     {
77099       std::string *ptr = (std::string *)0;
77100       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
77101       if (!SWIG_IsOK(res) || !ptr) {
77102         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_findpath" "', argument " "3"" of type '" "std::string""'");
77103       }
77104       arg3 = *ptr;
77105       if (SWIG_IsNewObj(res)) delete ptr;
77106     }
77107     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
77108     if (!SWIG_IsOK(ecode4)) {
77109       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_path_findpath" "', argument " "4"" of type '" "int""'");
77110     }
77111     arg4 = static_cast< int >(val4);
77112     ecode5 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
77113     if (!SWIG_IsOK(ecode5)) {
77114       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_path_findpath" "', argument " "5"" of type '" "int""'");
77115     }
77116     arg5 = static_cast< int >(val5);
77117     {
77118       try {
77119         result = vrna_fold_compound_t_path_findpath__SWIG_0(arg1,arg2,arg3,arg4,arg5);
77120       } catch (const std::exception& e) {
77121         SWIG_exception(SWIG_RuntimeError, e.what());
77122       }
77123     }
77124     {
77125       size_t len = (&result)->size();
77126       SV **svs = new SV*[len];
77127       for (size_t i=0; i<len; i++) {
77128         vrna_path_t* ptr = new vrna_path_t(result[i]);
77129         svs[i] = sv_newmortal();
77130         SWIG_MakePtr(svs[i], (void*) ptr,
77131           SWIGTYPE_p_vrna_path_t, SWIG_SHADOW|0);
77132       }
77133       AV *myav = av_make(len, svs);
77134       delete[] svs;
77135       ST(argvi) = newRV_noinc((SV*) myav);
77136       sv_2mortal(ST(argvi));
77137       argvi++;
77138     }
77139 
77140 
77141 
77142 
77143 
77144     XSRETURN(argvi);
77145   fail:
77146 
77147 
77148 
77149 
77150 
77151     SWIG_croak_null();
77152   }
77153 }
77154 
77155 
XS(_wrap_fold_compound_path_findpath__SWIG_1)77156 XS(_wrap_fold_compound_path_findpath__SWIG_1) {
77157   {
77158     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
77159     std::string arg2 ;
77160     std::string arg3 ;
77161     int arg4 ;
77162     void *argp1 = 0 ;
77163     int res1 = 0 ;
77164     int val4 ;
77165     int ecode4 = 0 ;
77166     int argvi = 0;
77167     std::vector< vrna_path_t > result;
77168     dXSARGS;
77169 
77170     if ((items < 4) || (items > 4)) {
77171       SWIG_croak("Usage: fold_compound_path_findpath(self,s1,s2,width);");
77172     }
77173     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
77174     if (!SWIG_IsOK(res1)) {
77175       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path_findpath" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
77176     }
77177     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
77178     {
77179       std::string *ptr = (std::string *)0;
77180       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
77181       if (!SWIG_IsOK(res) || !ptr) {
77182         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_findpath" "', argument " "2"" of type '" "std::string""'");
77183       }
77184       arg2 = *ptr;
77185       if (SWIG_IsNewObj(res)) delete ptr;
77186     }
77187     {
77188       std::string *ptr = (std::string *)0;
77189       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
77190       if (!SWIG_IsOK(res) || !ptr) {
77191         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_findpath" "', argument " "3"" of type '" "std::string""'");
77192       }
77193       arg3 = *ptr;
77194       if (SWIG_IsNewObj(res)) delete ptr;
77195     }
77196     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
77197     if (!SWIG_IsOK(ecode4)) {
77198       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_path_findpath" "', argument " "4"" of type '" "int""'");
77199     }
77200     arg4 = static_cast< int >(val4);
77201     {
77202       try {
77203         result = vrna_fold_compound_t_path_findpath__SWIG_0(arg1,arg2,arg3,arg4);
77204       } catch (const std::exception& e) {
77205         SWIG_exception(SWIG_RuntimeError, e.what());
77206       }
77207     }
77208     {
77209       size_t len = (&result)->size();
77210       SV **svs = new SV*[len];
77211       for (size_t i=0; i<len; i++) {
77212         vrna_path_t* ptr = new vrna_path_t(result[i]);
77213         svs[i] = sv_newmortal();
77214         SWIG_MakePtr(svs[i], (void*) ptr,
77215           SWIGTYPE_p_vrna_path_t, SWIG_SHADOW|0);
77216       }
77217       AV *myav = av_make(len, svs);
77218       delete[] svs;
77219       ST(argvi) = newRV_noinc((SV*) myav);
77220       sv_2mortal(ST(argvi));
77221       argvi++;
77222     }
77223 
77224 
77225 
77226 
77227     XSRETURN(argvi);
77228   fail:
77229 
77230 
77231 
77232 
77233     SWIG_croak_null();
77234   }
77235 }
77236 
77237 
XS(_wrap_fold_compound_path_findpath__SWIG_2)77238 XS(_wrap_fold_compound_path_findpath__SWIG_2) {
77239   {
77240     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
77241     std::string arg2 ;
77242     std::string arg3 ;
77243     void *argp1 = 0 ;
77244     int res1 = 0 ;
77245     int argvi = 0;
77246     std::vector< vrna_path_t > result;
77247     dXSARGS;
77248 
77249     if ((items < 3) || (items > 3)) {
77250       SWIG_croak("Usage: fold_compound_path_findpath(self,s1,s2);");
77251     }
77252     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
77253     if (!SWIG_IsOK(res1)) {
77254       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path_findpath" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
77255     }
77256     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
77257     {
77258       std::string *ptr = (std::string *)0;
77259       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
77260       if (!SWIG_IsOK(res) || !ptr) {
77261         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_findpath" "', argument " "2"" of type '" "std::string""'");
77262       }
77263       arg2 = *ptr;
77264       if (SWIG_IsNewObj(res)) delete ptr;
77265     }
77266     {
77267       std::string *ptr = (std::string *)0;
77268       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
77269       if (!SWIG_IsOK(res) || !ptr) {
77270         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_findpath" "', argument " "3"" of type '" "std::string""'");
77271       }
77272       arg3 = *ptr;
77273       if (SWIG_IsNewObj(res)) delete ptr;
77274     }
77275     {
77276       try {
77277         result = vrna_fold_compound_t_path_findpath__SWIG_0(arg1,arg2,arg3);
77278       } catch (const std::exception& e) {
77279         SWIG_exception(SWIG_RuntimeError, e.what());
77280       }
77281     }
77282     {
77283       size_t len = (&result)->size();
77284       SV **svs = new SV*[len];
77285       for (size_t i=0; i<len; i++) {
77286         vrna_path_t* ptr = new vrna_path_t(result[i]);
77287         svs[i] = sv_newmortal();
77288         SWIG_MakePtr(svs[i], (void*) ptr,
77289           SWIGTYPE_p_vrna_path_t, SWIG_SHADOW|0);
77290       }
77291       AV *myav = av_make(len, svs);
77292       delete[] svs;
77293       ST(argvi) = newRV_noinc((SV*) myav);
77294       sv_2mortal(ST(argvi));
77295       argvi++;
77296     }
77297 
77298 
77299 
77300     XSRETURN(argvi);
77301   fail:
77302 
77303 
77304 
77305     SWIG_croak_null();
77306   }
77307 }
77308 
77309 
XS(_wrap_fold_compound_path_findpath)77310 XS(_wrap_fold_compound_path_findpath) {
77311   dXSARGS;
77312 
77313   {
77314     unsigned long _index = 0;
77315     SWIG_TypeRank _rank = 0;
77316     if (items == 3) {
77317       SWIG_TypeRank _ranki = 0;
77318       SWIG_TypeRank _rankm = 0;
77319       SWIG_TypeRank _pi = 1;
77320       int _v = 0;
77321       {
77322         void *vptr = 0;
77323         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
77324         _v = SWIG_CheckState(res);
77325       }
77326       if (!_v) goto check_1;
77327       _ranki += _v*_pi;
77328       _rankm += _pi;
77329       _pi *= SWIG_MAXCASTRANK;
77330       {
77331         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
77332         _v = SWIG_CheckState(res);
77333       }
77334       if (!_v) goto check_1;
77335       _ranki += _v*_pi;
77336       _rankm += _pi;
77337       _pi *= SWIG_MAXCASTRANK;
77338       {
77339         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), (std::string**)(0));
77340         _v = SWIG_CheckState(res);
77341       }
77342       if (!_v) goto check_1;
77343       _ranki += _v*_pi;
77344       _rankm += _pi;
77345       _pi *= SWIG_MAXCASTRANK;
77346       if (!_index || (_ranki < _rank)) {
77347         _rank = _ranki; _index = 1;
77348         if (_rank == _rankm) goto dispatch;
77349       }
77350     }
77351   check_1:
77352 
77353     if (items == 4) {
77354       SWIG_TypeRank _ranki = 0;
77355       SWIG_TypeRank _rankm = 0;
77356       SWIG_TypeRank _pi = 1;
77357       int _v = 0;
77358       {
77359         void *vptr = 0;
77360         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
77361         _v = SWIG_CheckState(res);
77362       }
77363       if (!_v) goto check_2;
77364       _ranki += _v*_pi;
77365       _rankm += _pi;
77366       _pi *= SWIG_MAXCASTRANK;
77367       {
77368         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
77369         _v = SWIG_CheckState(res);
77370       }
77371       if (!_v) goto check_2;
77372       _ranki += _v*_pi;
77373       _rankm += _pi;
77374       _pi *= SWIG_MAXCASTRANK;
77375       {
77376         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), (std::string**)(0));
77377         _v = SWIG_CheckState(res);
77378       }
77379       if (!_v) goto check_2;
77380       _ranki += _v*_pi;
77381       _rankm += _pi;
77382       _pi *= SWIG_MAXCASTRANK;
77383       {
77384         {
77385           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
77386           _v = SWIG_CheckState(res);
77387         }
77388       }
77389       if (!_v) goto check_2;
77390       _ranki += _v*_pi;
77391       _rankm += _pi;
77392       _pi *= SWIG_MAXCASTRANK;
77393       if (!_index || (_ranki < _rank)) {
77394         _rank = _ranki; _index = 2;
77395         if (_rank == _rankm) goto dispatch;
77396       }
77397     }
77398   check_2:
77399 
77400     if (items == 5) {
77401       SWIG_TypeRank _ranki = 0;
77402       SWIG_TypeRank _rankm = 0;
77403       SWIG_TypeRank _pi = 1;
77404       int _v = 0;
77405       {
77406         void *vptr = 0;
77407         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
77408         _v = SWIG_CheckState(res);
77409       }
77410       if (!_v) goto check_3;
77411       _ranki += _v*_pi;
77412       _rankm += _pi;
77413       _pi *= SWIG_MAXCASTRANK;
77414       {
77415         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
77416         _v = SWIG_CheckState(res);
77417       }
77418       if (!_v) goto check_3;
77419       _ranki += _v*_pi;
77420       _rankm += _pi;
77421       _pi *= SWIG_MAXCASTRANK;
77422       {
77423         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), (std::string**)(0));
77424         _v = SWIG_CheckState(res);
77425       }
77426       if (!_v) goto check_3;
77427       _ranki += _v*_pi;
77428       _rankm += _pi;
77429       _pi *= SWIG_MAXCASTRANK;
77430       {
77431         {
77432           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
77433           _v = SWIG_CheckState(res);
77434         }
77435       }
77436       if (!_v) goto check_3;
77437       _ranki += _v*_pi;
77438       _rankm += _pi;
77439       _pi *= SWIG_MAXCASTRANK;
77440       {
77441         {
77442           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
77443           _v = SWIG_CheckState(res);
77444         }
77445       }
77446       if (!_v) goto check_3;
77447       _ranki += _v*_pi;
77448       _rankm += _pi;
77449       _pi *= SWIG_MAXCASTRANK;
77450       if (!_index || (_ranki < _rank)) {
77451         _rank = _ranki; _index = 3;
77452         if (_rank == _rankm) goto dispatch;
77453       }
77454     }
77455   check_3:
77456 
77457   dispatch:
77458     switch(_index) {
77459     case 1:
77460       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path_findpath__SWIG_2); return;
77461     case 2:
77462       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path_findpath__SWIG_1); return;
77463     case 3:
77464       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path_findpath__SWIG_0); return;
77465     }
77466   }
77467 
77468   croak("No matching function for overloaded 'fold_compound_path_findpath'");
77469   XSRETURN(0);
77470 }
77471 
77472 
XS(_wrap_fold_compound_path_direct__SWIG_0)77473 XS(_wrap_fold_compound_path_direct__SWIG_0) {
77474   {
77475     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
77476     std::string arg2 ;
77477     std::string arg3 ;
77478     int arg4 ;
77479     vrna_path_options_s *arg5 = (vrna_path_options_s *) 0 ;
77480     void *argp1 = 0 ;
77481     int res1 = 0 ;
77482     int val4 ;
77483     int ecode4 = 0 ;
77484     void *argp5 = 0 ;
77485     int res5 = 0 ;
77486     int argvi = 0;
77487     std::vector< vrna_path_t > result;
77488     dXSARGS;
77489 
77490     if ((items < 5) || (items > 5)) {
77491       SWIG_croak("Usage: fold_compound_path_direct(self,s1,s2,maxE,options);");
77492     }
77493     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
77494     if (!SWIG_IsOK(res1)) {
77495       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path_direct" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
77496     }
77497     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
77498     {
77499       std::string *ptr = (std::string *)0;
77500       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
77501       if (!SWIG_IsOK(res) || !ptr) {
77502         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_direct" "', argument " "2"" of type '" "std::string""'");
77503       }
77504       arg2 = *ptr;
77505       if (SWIG_IsNewObj(res)) delete ptr;
77506     }
77507     {
77508       std::string *ptr = (std::string *)0;
77509       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
77510       if (!SWIG_IsOK(res) || !ptr) {
77511         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_direct" "', argument " "3"" of type '" "std::string""'");
77512       }
77513       arg3 = *ptr;
77514       if (SWIG_IsNewObj(res)) delete ptr;
77515     }
77516     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
77517     if (!SWIG_IsOK(ecode4)) {
77518       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_path_direct" "', argument " "4"" of type '" "int""'");
77519     }
77520     arg4 = static_cast< int >(val4);
77521     res5 = SWIG_ConvertPtr(ST(4), &argp5,SWIGTYPE_p_vrna_path_options_s, 0 |  0 );
77522     if (!SWIG_IsOK(res5)) {
77523       SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "fold_compound_path_direct" "', argument " "5"" of type '" "vrna_path_options_s *""'");
77524     }
77525     arg5 = reinterpret_cast< vrna_path_options_s * >(argp5);
77526     {
77527       try {
77528         result = vrna_fold_compound_t_path_direct__SWIG_0(arg1,arg2,arg3,arg4,arg5);
77529       } catch (const std::exception& e) {
77530         SWIG_exception(SWIG_RuntimeError, e.what());
77531       }
77532     }
77533     {
77534       size_t len = (&result)->size();
77535       SV **svs = new SV*[len];
77536       for (size_t i=0; i<len; i++) {
77537         vrna_path_t* ptr = new vrna_path_t(result[i]);
77538         svs[i] = sv_newmortal();
77539         SWIG_MakePtr(svs[i], (void*) ptr,
77540           SWIGTYPE_p_vrna_path_t, SWIG_SHADOW|0);
77541       }
77542       AV *myav = av_make(len, svs);
77543       delete[] svs;
77544       ST(argvi) = newRV_noinc((SV*) myav);
77545       sv_2mortal(ST(argvi));
77546       argvi++;
77547     }
77548 
77549 
77550 
77551 
77552 
77553     XSRETURN(argvi);
77554   fail:
77555 
77556 
77557 
77558 
77559 
77560     SWIG_croak_null();
77561   }
77562 }
77563 
77564 
XS(_wrap_fold_compound_path_direct__SWIG_1)77565 XS(_wrap_fold_compound_path_direct__SWIG_1) {
77566   {
77567     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
77568     std::string arg2 ;
77569     std::string arg3 ;
77570     int arg4 ;
77571     void *argp1 = 0 ;
77572     int res1 = 0 ;
77573     int val4 ;
77574     int ecode4 = 0 ;
77575     int argvi = 0;
77576     std::vector< vrna_path_t > result;
77577     dXSARGS;
77578 
77579     if ((items < 4) || (items > 4)) {
77580       SWIG_croak("Usage: fold_compound_path_direct(self,s1,s2,maxE);");
77581     }
77582     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
77583     if (!SWIG_IsOK(res1)) {
77584       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path_direct" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
77585     }
77586     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
77587     {
77588       std::string *ptr = (std::string *)0;
77589       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
77590       if (!SWIG_IsOK(res) || !ptr) {
77591         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_direct" "', argument " "2"" of type '" "std::string""'");
77592       }
77593       arg2 = *ptr;
77594       if (SWIG_IsNewObj(res)) delete ptr;
77595     }
77596     {
77597       std::string *ptr = (std::string *)0;
77598       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
77599       if (!SWIG_IsOK(res) || !ptr) {
77600         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_direct" "', argument " "3"" of type '" "std::string""'");
77601       }
77602       arg3 = *ptr;
77603       if (SWIG_IsNewObj(res)) delete ptr;
77604     }
77605     ecode4 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
77606     if (!SWIG_IsOK(ecode4)) {
77607       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_path_direct" "', argument " "4"" of type '" "int""'");
77608     }
77609     arg4 = static_cast< int >(val4);
77610     {
77611       try {
77612         result = vrna_fold_compound_t_path_direct__SWIG_0(arg1,arg2,arg3,arg4);
77613       } catch (const std::exception& e) {
77614         SWIG_exception(SWIG_RuntimeError, e.what());
77615       }
77616     }
77617     {
77618       size_t len = (&result)->size();
77619       SV **svs = new SV*[len];
77620       for (size_t i=0; i<len; i++) {
77621         vrna_path_t* ptr = new vrna_path_t(result[i]);
77622         svs[i] = sv_newmortal();
77623         SWIG_MakePtr(svs[i], (void*) ptr,
77624           SWIGTYPE_p_vrna_path_t, SWIG_SHADOW|0);
77625       }
77626       AV *myav = av_make(len, svs);
77627       delete[] svs;
77628       ST(argvi) = newRV_noinc((SV*) myav);
77629       sv_2mortal(ST(argvi));
77630       argvi++;
77631     }
77632 
77633 
77634 
77635 
77636     XSRETURN(argvi);
77637   fail:
77638 
77639 
77640 
77641 
77642     SWIG_croak_null();
77643   }
77644 }
77645 
77646 
XS(_wrap_fold_compound_path_direct__SWIG_2)77647 XS(_wrap_fold_compound_path_direct__SWIG_2) {
77648   {
77649     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
77650     std::string arg2 ;
77651     std::string arg3 ;
77652     void *argp1 = 0 ;
77653     int res1 = 0 ;
77654     int argvi = 0;
77655     std::vector< vrna_path_t > result;
77656     dXSARGS;
77657 
77658     if ((items < 3) || (items > 3)) {
77659       SWIG_croak("Usage: fold_compound_path_direct(self,s1,s2);");
77660     }
77661     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
77662     if (!SWIG_IsOK(res1)) {
77663       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_path_direct" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
77664     }
77665     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
77666     {
77667       std::string *ptr = (std::string *)0;
77668       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), &ptr);
77669       if (!SWIG_IsOK(res) || !ptr) {
77670         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_direct" "', argument " "2"" of type '" "std::string""'");
77671       }
77672       arg2 = *ptr;
77673       if (SWIG_IsNewObj(res)) delete ptr;
77674     }
77675     {
77676       std::string *ptr = (std::string *)0;
77677       int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), &ptr);
77678       if (!SWIG_IsOK(res) || !ptr) {
77679         SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "fold_compound_path_direct" "', argument " "3"" of type '" "std::string""'");
77680       }
77681       arg3 = *ptr;
77682       if (SWIG_IsNewObj(res)) delete ptr;
77683     }
77684     {
77685       try {
77686         result = vrna_fold_compound_t_path_direct__SWIG_0(arg1,arg2,arg3);
77687       } catch (const std::exception& e) {
77688         SWIG_exception(SWIG_RuntimeError, e.what());
77689       }
77690     }
77691     {
77692       size_t len = (&result)->size();
77693       SV **svs = new SV*[len];
77694       for (size_t i=0; i<len; i++) {
77695         vrna_path_t* ptr = new vrna_path_t(result[i]);
77696         svs[i] = sv_newmortal();
77697         SWIG_MakePtr(svs[i], (void*) ptr,
77698           SWIGTYPE_p_vrna_path_t, SWIG_SHADOW|0);
77699       }
77700       AV *myav = av_make(len, svs);
77701       delete[] svs;
77702       ST(argvi) = newRV_noinc((SV*) myav);
77703       sv_2mortal(ST(argvi));
77704       argvi++;
77705     }
77706 
77707 
77708 
77709     XSRETURN(argvi);
77710   fail:
77711 
77712 
77713 
77714     SWIG_croak_null();
77715   }
77716 }
77717 
77718 
XS(_wrap_fold_compound_path_direct)77719 XS(_wrap_fold_compound_path_direct) {
77720   dXSARGS;
77721 
77722   {
77723     unsigned long _index = 0;
77724     SWIG_TypeRank _rank = 0;
77725     if (items == 3) {
77726       SWIG_TypeRank _ranki = 0;
77727       SWIG_TypeRank _rankm = 0;
77728       SWIG_TypeRank _pi = 1;
77729       int _v = 0;
77730       {
77731         void *vptr = 0;
77732         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
77733         _v = SWIG_CheckState(res);
77734       }
77735       if (!_v) goto check_1;
77736       _ranki += _v*_pi;
77737       _rankm += _pi;
77738       _pi *= SWIG_MAXCASTRANK;
77739       {
77740         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
77741         _v = SWIG_CheckState(res);
77742       }
77743       if (!_v) goto check_1;
77744       _ranki += _v*_pi;
77745       _rankm += _pi;
77746       _pi *= SWIG_MAXCASTRANK;
77747       {
77748         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), (std::string**)(0));
77749         _v = SWIG_CheckState(res);
77750       }
77751       if (!_v) goto check_1;
77752       _ranki += _v*_pi;
77753       _rankm += _pi;
77754       _pi *= SWIG_MAXCASTRANK;
77755       if (!_index || (_ranki < _rank)) {
77756         _rank = _ranki; _index = 1;
77757         if (_rank == _rankm) goto dispatch;
77758       }
77759     }
77760   check_1:
77761 
77762     if (items == 4) {
77763       SWIG_TypeRank _ranki = 0;
77764       SWIG_TypeRank _rankm = 0;
77765       SWIG_TypeRank _pi = 1;
77766       int _v = 0;
77767       {
77768         void *vptr = 0;
77769         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
77770         _v = SWIG_CheckState(res);
77771       }
77772       if (!_v) goto check_2;
77773       _ranki += _v*_pi;
77774       _rankm += _pi;
77775       _pi *= SWIG_MAXCASTRANK;
77776       {
77777         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
77778         _v = SWIG_CheckState(res);
77779       }
77780       if (!_v) goto check_2;
77781       _ranki += _v*_pi;
77782       _rankm += _pi;
77783       _pi *= SWIG_MAXCASTRANK;
77784       {
77785         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), (std::string**)(0));
77786         _v = SWIG_CheckState(res);
77787       }
77788       if (!_v) goto check_2;
77789       _ranki += _v*_pi;
77790       _rankm += _pi;
77791       _pi *= SWIG_MAXCASTRANK;
77792       {
77793         {
77794           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
77795           _v = SWIG_CheckState(res);
77796         }
77797       }
77798       if (!_v) goto check_2;
77799       _ranki += _v*_pi;
77800       _rankm += _pi;
77801       _pi *= SWIG_MAXCASTRANK;
77802       if (!_index || (_ranki < _rank)) {
77803         _rank = _ranki; _index = 2;
77804         if (_rank == _rankm) goto dispatch;
77805       }
77806     }
77807   check_2:
77808 
77809     if (items == 5) {
77810       SWIG_TypeRank _ranki = 0;
77811       SWIG_TypeRank _rankm = 0;
77812       SWIG_TypeRank _pi = 1;
77813       int _v = 0;
77814       {
77815         void *vptr = 0;
77816         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
77817         _v = SWIG_CheckState(res);
77818       }
77819       if (!_v) goto check_3;
77820       _ranki += _v*_pi;
77821       _rankm += _pi;
77822       _pi *= SWIG_MAXCASTRANK;
77823       {
77824         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(1), (std::string**)(0));
77825         _v = SWIG_CheckState(res);
77826       }
77827       if (!_v) goto check_3;
77828       _ranki += _v*_pi;
77829       _rankm += _pi;
77830       _pi *= SWIG_MAXCASTRANK;
77831       {
77832         int res = SWIG_AsPtr_std_string SWIG_PERL_CALL_ARGS_2(ST(2), (std::string**)(0));
77833         _v = SWIG_CheckState(res);
77834       }
77835       if (!_v) goto check_3;
77836       _ranki += _v*_pi;
77837       _rankm += _pi;
77838       _pi *= SWIG_MAXCASTRANK;
77839       {
77840         {
77841           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
77842           _v = SWIG_CheckState(res);
77843         }
77844       }
77845       if (!_v) goto check_3;
77846       _ranki += _v*_pi;
77847       _rankm += _pi;
77848       _pi *= SWIG_MAXCASTRANK;
77849       {
77850         void *vptr = 0;
77851         int res = SWIG_ConvertPtr(ST(4), &vptr, SWIGTYPE_p_vrna_path_options_s, 0);
77852         _v = SWIG_CheckState(res);
77853       }
77854       if (!_v) goto check_3;
77855       _ranki += _v*_pi;
77856       _rankm += _pi;
77857       _pi *= SWIG_MAXCASTRANK;
77858       if (!_index || (_ranki < _rank)) {
77859         _rank = _ranki; _index = 3;
77860         if (_rank == _rankm) goto dispatch;
77861       }
77862     }
77863   check_3:
77864 
77865   dispatch:
77866     switch(_index) {
77867     case 1:
77868       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path_direct__SWIG_2); return;
77869     case 2:
77870       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path_direct__SWIG_1); return;
77871     case 3:
77872       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_path_direct__SWIG_0); return;
77873     }
77874   }
77875 
77876   croak("No matching function for overloaded 'fold_compound_path_direct'");
77877   XSRETURN(0);
77878 }
77879 
77880 
XS(_wrap_fold_compound_heat_capacity__SWIG_0)77881 XS(_wrap_fold_compound_heat_capacity__SWIG_0) {
77882   {
77883     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
77884     float arg2 ;
77885     float arg3 ;
77886     float arg4 ;
77887     unsigned int arg5 ;
77888     void *argp1 = 0 ;
77889     int res1 = 0 ;
77890     float val2 ;
77891     int ecode2 = 0 ;
77892     float val3 ;
77893     int ecode3 = 0 ;
77894     float val4 ;
77895     int ecode4 = 0 ;
77896     unsigned int val5 ;
77897     int ecode5 = 0 ;
77898     int argvi = 0;
77899     std::vector< heat_capacity_result > result;
77900     dXSARGS;
77901 
77902     if ((items < 5) || (items > 5)) {
77903       SWIG_croak("Usage: fold_compound_heat_capacity(self,T_min,T_max,T_increment,mpoints);");
77904     }
77905     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
77906     if (!SWIG_IsOK(res1)) {
77907       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_heat_capacity" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
77908     }
77909     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
77910     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
77911     if (!SWIG_IsOK(ecode2)) {
77912       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_heat_capacity" "', argument " "2"" of type '" "float""'");
77913     }
77914     arg2 = static_cast< float >(val2);
77915     ecode3 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
77916     if (!SWIG_IsOK(ecode3)) {
77917       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_heat_capacity" "', argument " "3"" of type '" "float""'");
77918     }
77919     arg3 = static_cast< float >(val3);
77920     ecode4 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
77921     if (!SWIG_IsOK(ecode4)) {
77922       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_heat_capacity" "', argument " "4"" of type '" "float""'");
77923     }
77924     arg4 = static_cast< float >(val4);
77925     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
77926     if (!SWIG_IsOK(ecode5)) {
77927       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_heat_capacity" "', argument " "5"" of type '" "unsigned int""'");
77928     }
77929     arg5 = static_cast< unsigned int >(val5);
77930     {
77931       try {
77932         result = vrna_fold_compound_t_heat_capacity__SWIG_0(arg1,arg2,arg3,arg4,arg5);
77933       } catch (const std::exception& e) {
77934         SWIG_exception(SWIG_RuntimeError, e.what());
77935       }
77936     }
77937     {
77938       size_t len = (&result)->size();
77939       SV **svs = new SV*[len];
77940       for (size_t i=0; i<len; i++) {
77941         heat_capacity_result* ptr = new heat_capacity_result(result[i]);
77942         svs[i] = sv_newmortal();
77943         SWIG_MakePtr(svs[i], (void*) ptr,
77944           SWIGTYPE_p_heat_capacity_result, SWIG_SHADOW|0);
77945       }
77946       AV *myav = av_make(len, svs);
77947       delete[] svs;
77948       ST(argvi) = newRV_noinc((SV*) myav);
77949       sv_2mortal(ST(argvi));
77950       argvi++;
77951     }
77952 
77953 
77954 
77955 
77956 
77957     XSRETURN(argvi);
77958   fail:
77959 
77960 
77961 
77962 
77963 
77964     SWIG_croak_null();
77965   }
77966 }
77967 
77968 
XS(_wrap_fold_compound_heat_capacity__SWIG_1)77969 XS(_wrap_fold_compound_heat_capacity__SWIG_1) {
77970   {
77971     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
77972     float arg2 ;
77973     float arg3 ;
77974     float arg4 ;
77975     void *argp1 = 0 ;
77976     int res1 = 0 ;
77977     float val2 ;
77978     int ecode2 = 0 ;
77979     float val3 ;
77980     int ecode3 = 0 ;
77981     float val4 ;
77982     int ecode4 = 0 ;
77983     int argvi = 0;
77984     std::vector< heat_capacity_result > result;
77985     dXSARGS;
77986 
77987     if ((items < 4) || (items > 4)) {
77988       SWIG_croak("Usage: fold_compound_heat_capacity(self,T_min,T_max,T_increment);");
77989     }
77990     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
77991     if (!SWIG_IsOK(res1)) {
77992       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_heat_capacity" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
77993     }
77994     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
77995     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
77996     if (!SWIG_IsOK(ecode2)) {
77997       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_heat_capacity" "', argument " "2"" of type '" "float""'");
77998     }
77999     arg2 = static_cast< float >(val2);
78000     ecode3 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
78001     if (!SWIG_IsOK(ecode3)) {
78002       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_heat_capacity" "', argument " "3"" of type '" "float""'");
78003     }
78004     arg3 = static_cast< float >(val3);
78005     ecode4 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
78006     if (!SWIG_IsOK(ecode4)) {
78007       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_heat_capacity" "', argument " "4"" of type '" "float""'");
78008     }
78009     arg4 = static_cast< float >(val4);
78010     {
78011       try {
78012         result = vrna_fold_compound_t_heat_capacity__SWIG_0(arg1,arg2,arg3,arg4);
78013       } catch (const std::exception& e) {
78014         SWIG_exception(SWIG_RuntimeError, e.what());
78015       }
78016     }
78017     {
78018       size_t len = (&result)->size();
78019       SV **svs = new SV*[len];
78020       for (size_t i=0; i<len; i++) {
78021         heat_capacity_result* ptr = new heat_capacity_result(result[i]);
78022         svs[i] = sv_newmortal();
78023         SWIG_MakePtr(svs[i], (void*) ptr,
78024           SWIGTYPE_p_heat_capacity_result, SWIG_SHADOW|0);
78025       }
78026       AV *myav = av_make(len, svs);
78027       delete[] svs;
78028       ST(argvi) = newRV_noinc((SV*) myav);
78029       sv_2mortal(ST(argvi));
78030       argvi++;
78031     }
78032 
78033 
78034 
78035 
78036     XSRETURN(argvi);
78037   fail:
78038 
78039 
78040 
78041 
78042     SWIG_croak_null();
78043   }
78044 }
78045 
78046 
XS(_wrap_fold_compound_heat_capacity__SWIG_2)78047 XS(_wrap_fold_compound_heat_capacity__SWIG_2) {
78048   {
78049     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78050     float arg2 ;
78051     float arg3 ;
78052     void *argp1 = 0 ;
78053     int res1 = 0 ;
78054     float val2 ;
78055     int ecode2 = 0 ;
78056     float val3 ;
78057     int ecode3 = 0 ;
78058     int argvi = 0;
78059     std::vector< heat_capacity_result > result;
78060     dXSARGS;
78061 
78062     if ((items < 3) || (items > 3)) {
78063       SWIG_croak("Usage: fold_compound_heat_capacity(self,T_min,T_max);");
78064     }
78065     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78066     if (!SWIG_IsOK(res1)) {
78067       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_heat_capacity" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78068     }
78069     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78070     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
78071     if (!SWIG_IsOK(ecode2)) {
78072       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_heat_capacity" "', argument " "2"" of type '" "float""'");
78073     }
78074     arg2 = static_cast< float >(val2);
78075     ecode3 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
78076     if (!SWIG_IsOK(ecode3)) {
78077       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_heat_capacity" "', argument " "3"" of type '" "float""'");
78078     }
78079     arg3 = static_cast< float >(val3);
78080     {
78081       try {
78082         result = vrna_fold_compound_t_heat_capacity__SWIG_0(arg1,arg2,arg3);
78083       } catch (const std::exception& e) {
78084         SWIG_exception(SWIG_RuntimeError, e.what());
78085       }
78086     }
78087     {
78088       size_t len = (&result)->size();
78089       SV **svs = new SV*[len];
78090       for (size_t i=0; i<len; i++) {
78091         heat_capacity_result* ptr = new heat_capacity_result(result[i]);
78092         svs[i] = sv_newmortal();
78093         SWIG_MakePtr(svs[i], (void*) ptr,
78094           SWIGTYPE_p_heat_capacity_result, SWIG_SHADOW|0);
78095       }
78096       AV *myav = av_make(len, svs);
78097       delete[] svs;
78098       ST(argvi) = newRV_noinc((SV*) myav);
78099       sv_2mortal(ST(argvi));
78100       argvi++;
78101     }
78102 
78103 
78104 
78105     XSRETURN(argvi);
78106   fail:
78107 
78108 
78109 
78110     SWIG_croak_null();
78111   }
78112 }
78113 
78114 
XS(_wrap_fold_compound_heat_capacity__SWIG_3)78115 XS(_wrap_fold_compound_heat_capacity__SWIG_3) {
78116   {
78117     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78118     float arg2 ;
78119     void *argp1 = 0 ;
78120     int res1 = 0 ;
78121     float val2 ;
78122     int ecode2 = 0 ;
78123     int argvi = 0;
78124     std::vector< heat_capacity_result > result;
78125     dXSARGS;
78126 
78127     if ((items < 2) || (items > 2)) {
78128       SWIG_croak("Usage: fold_compound_heat_capacity(self,T_min);");
78129     }
78130     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78131     if (!SWIG_IsOK(res1)) {
78132       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_heat_capacity" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78133     }
78134     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78135     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
78136     if (!SWIG_IsOK(ecode2)) {
78137       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_heat_capacity" "', argument " "2"" of type '" "float""'");
78138     }
78139     arg2 = static_cast< float >(val2);
78140     {
78141       try {
78142         result = vrna_fold_compound_t_heat_capacity__SWIG_0(arg1,arg2);
78143       } catch (const std::exception& e) {
78144         SWIG_exception(SWIG_RuntimeError, e.what());
78145       }
78146     }
78147     {
78148       size_t len = (&result)->size();
78149       SV **svs = new SV*[len];
78150       for (size_t i=0; i<len; i++) {
78151         heat_capacity_result* ptr = new heat_capacity_result(result[i]);
78152         svs[i] = sv_newmortal();
78153         SWIG_MakePtr(svs[i], (void*) ptr,
78154           SWIGTYPE_p_heat_capacity_result, SWIG_SHADOW|0);
78155       }
78156       AV *myav = av_make(len, svs);
78157       delete[] svs;
78158       ST(argvi) = newRV_noinc((SV*) myav);
78159       sv_2mortal(ST(argvi));
78160       argvi++;
78161     }
78162 
78163 
78164     XSRETURN(argvi);
78165   fail:
78166 
78167 
78168     SWIG_croak_null();
78169   }
78170 }
78171 
78172 
XS(_wrap_fold_compound_heat_capacity__SWIG_4)78173 XS(_wrap_fold_compound_heat_capacity__SWIG_4) {
78174   {
78175     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78176     void *argp1 = 0 ;
78177     int res1 = 0 ;
78178     int argvi = 0;
78179     std::vector< heat_capacity_result > result;
78180     dXSARGS;
78181 
78182     if ((items < 1) || (items > 1)) {
78183       SWIG_croak("Usage: fold_compound_heat_capacity(self);");
78184     }
78185     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78186     if (!SWIG_IsOK(res1)) {
78187       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_heat_capacity" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78188     }
78189     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78190     {
78191       try {
78192         result = vrna_fold_compound_t_heat_capacity__SWIG_0(arg1);
78193       } catch (const std::exception& e) {
78194         SWIG_exception(SWIG_RuntimeError, e.what());
78195       }
78196     }
78197     {
78198       size_t len = (&result)->size();
78199       SV **svs = new SV*[len];
78200       for (size_t i=0; i<len; i++) {
78201         heat_capacity_result* ptr = new heat_capacity_result(result[i]);
78202         svs[i] = sv_newmortal();
78203         SWIG_MakePtr(svs[i], (void*) ptr,
78204           SWIGTYPE_p_heat_capacity_result, SWIG_SHADOW|0);
78205       }
78206       AV *myav = av_make(len, svs);
78207       delete[] svs;
78208       ST(argvi) = newRV_noinc((SV*) myav);
78209       sv_2mortal(ST(argvi));
78210       argvi++;
78211     }
78212 
78213     XSRETURN(argvi);
78214   fail:
78215 
78216     SWIG_croak_null();
78217   }
78218 }
78219 
78220 
XS(_wrap_fold_compound_heat_capacity)78221 XS(_wrap_fold_compound_heat_capacity) {
78222   dXSARGS;
78223 
78224   {
78225     unsigned long _index = 0;
78226     SWIG_TypeRank _rank = 0;
78227     if (items == 1) {
78228       SWIG_TypeRank _ranki = 0;
78229       SWIG_TypeRank _rankm = 0;
78230       SWIG_TypeRank _pi = 1;
78231       int _v = 0;
78232       {
78233         void *vptr = 0;
78234         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
78235         _v = SWIG_CheckState(res);
78236       }
78237       if (!_v) goto check_1;
78238       _ranki += _v*_pi;
78239       _rankm += _pi;
78240       _pi *= SWIG_MAXCASTRANK;
78241       if (!_index || (_ranki < _rank)) {
78242         _rank = _ranki; _index = 1;
78243         if (_rank == _rankm) goto dispatch;
78244       }
78245     }
78246   check_1:
78247 
78248     if (items == 2) {
78249       SWIG_TypeRank _ranki = 0;
78250       SWIG_TypeRank _rankm = 0;
78251       SWIG_TypeRank _pi = 1;
78252       int _v = 0;
78253       {
78254         void *vptr = 0;
78255         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
78256         _v = SWIG_CheckState(res);
78257       }
78258       if (!_v) goto check_2;
78259       _ranki += _v*_pi;
78260       _rankm += _pi;
78261       _pi *= SWIG_MAXCASTRANK;
78262       {
78263         {
78264           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
78265           _v = SWIG_CheckState(res);
78266         }
78267       }
78268       if (!_v) goto check_2;
78269       _ranki += _v*_pi;
78270       _rankm += _pi;
78271       _pi *= SWIG_MAXCASTRANK;
78272       if (!_index || (_ranki < _rank)) {
78273         _rank = _ranki; _index = 2;
78274         if (_rank == _rankm) goto dispatch;
78275       }
78276     }
78277   check_2:
78278 
78279     if (items == 3) {
78280       SWIG_TypeRank _ranki = 0;
78281       SWIG_TypeRank _rankm = 0;
78282       SWIG_TypeRank _pi = 1;
78283       int _v = 0;
78284       {
78285         void *vptr = 0;
78286         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
78287         _v = SWIG_CheckState(res);
78288       }
78289       if (!_v) goto check_3;
78290       _ranki += _v*_pi;
78291       _rankm += _pi;
78292       _pi *= SWIG_MAXCASTRANK;
78293       {
78294         {
78295           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
78296           _v = SWIG_CheckState(res);
78297         }
78298       }
78299       if (!_v) goto check_3;
78300       _ranki += _v*_pi;
78301       _rankm += _pi;
78302       _pi *= SWIG_MAXCASTRANK;
78303       {
78304         {
78305           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
78306           _v = SWIG_CheckState(res);
78307         }
78308       }
78309       if (!_v) goto check_3;
78310       _ranki += _v*_pi;
78311       _rankm += _pi;
78312       _pi *= SWIG_MAXCASTRANK;
78313       if (!_index || (_ranki < _rank)) {
78314         _rank = _ranki; _index = 3;
78315         if (_rank == _rankm) goto dispatch;
78316       }
78317     }
78318   check_3:
78319 
78320     if (items == 4) {
78321       SWIG_TypeRank _ranki = 0;
78322       SWIG_TypeRank _rankm = 0;
78323       SWIG_TypeRank _pi = 1;
78324       int _v = 0;
78325       {
78326         void *vptr = 0;
78327         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
78328         _v = SWIG_CheckState(res);
78329       }
78330       if (!_v) goto check_4;
78331       _ranki += _v*_pi;
78332       _rankm += _pi;
78333       _pi *= SWIG_MAXCASTRANK;
78334       {
78335         {
78336           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
78337           _v = SWIG_CheckState(res);
78338         }
78339       }
78340       if (!_v) goto check_4;
78341       _ranki += _v*_pi;
78342       _rankm += _pi;
78343       _pi *= SWIG_MAXCASTRANK;
78344       {
78345         {
78346           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
78347           _v = SWIG_CheckState(res);
78348         }
78349       }
78350       if (!_v) goto check_4;
78351       _ranki += _v*_pi;
78352       _rankm += _pi;
78353       _pi *= SWIG_MAXCASTRANK;
78354       {
78355         {
78356           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
78357           _v = SWIG_CheckState(res);
78358         }
78359       }
78360       if (!_v) goto check_4;
78361       _ranki += _v*_pi;
78362       _rankm += _pi;
78363       _pi *= SWIG_MAXCASTRANK;
78364       if (!_index || (_ranki < _rank)) {
78365         _rank = _ranki; _index = 4;
78366         if (_rank == _rankm) goto dispatch;
78367       }
78368     }
78369   check_4:
78370 
78371     if (items == 5) {
78372       SWIG_TypeRank _ranki = 0;
78373       SWIG_TypeRank _rankm = 0;
78374       SWIG_TypeRank _pi = 1;
78375       int _v = 0;
78376       {
78377         void *vptr = 0;
78378         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
78379         _v = SWIG_CheckState(res);
78380       }
78381       if (!_v) goto check_5;
78382       _ranki += _v*_pi;
78383       _rankm += _pi;
78384       _pi *= SWIG_MAXCASTRANK;
78385       {
78386         {
78387           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
78388           _v = SWIG_CheckState(res);
78389         }
78390       }
78391       if (!_v) goto check_5;
78392       _ranki += _v*_pi;
78393       _rankm += _pi;
78394       _pi *= SWIG_MAXCASTRANK;
78395       {
78396         {
78397           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
78398           _v = SWIG_CheckState(res);
78399         }
78400       }
78401       if (!_v) goto check_5;
78402       _ranki += _v*_pi;
78403       _rankm += _pi;
78404       _pi *= SWIG_MAXCASTRANK;
78405       {
78406         {
78407           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
78408           _v = SWIG_CheckState(res);
78409         }
78410       }
78411       if (!_v) goto check_5;
78412       _ranki += _v*_pi;
78413       _rankm += _pi;
78414       _pi *= SWIG_MAXCASTRANK;
78415       {
78416         {
78417           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
78418           _v = SWIG_CheckState(res);
78419         }
78420       }
78421       if (!_v) goto check_5;
78422       _ranki += _v*_pi;
78423       _rankm += _pi;
78424       _pi *= SWIG_MAXCASTRANK;
78425       if (!_index || (_ranki < _rank)) {
78426         _rank = _ranki; _index = 5;
78427         if (_rank == _rankm) goto dispatch;
78428       }
78429     }
78430   check_5:
78431 
78432   dispatch:
78433     switch(_index) {
78434     case 1:
78435       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_heat_capacity__SWIG_4); return;
78436     case 2:
78437       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_heat_capacity__SWIG_3); return;
78438     case 3:
78439       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_heat_capacity__SWIG_2); return;
78440     case 4:
78441       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_heat_capacity__SWIG_1); return;
78442     case 5:
78443       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_heat_capacity__SWIG_0); return;
78444     }
78445   }
78446 
78447   croak("No matching function for overloaded 'fold_compound_heat_capacity'");
78448   XSRETURN(0);
78449 }
78450 
78451 
XS(_wrap_fold_compound_add_auxdata)78452 XS(_wrap_fold_compound_add_auxdata) {
78453   {
78454     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78455     SV *arg2 = (SV *) 0 ;
78456     SV *arg3 = (SV *) 0 ;
78457     void *argp1 = 0 ;
78458     int res1 = 0 ;
78459     int argvi = 0;
78460     dXSARGS;
78461 
78462     if ((items < 3) || (items > 3)) {
78463       SWIG_croak("Usage: fold_compound_add_auxdata(self,data,PerlFunc);");
78464     }
78465     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78466     if (!SWIG_IsOK(res1)) {
78467       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_add_auxdata" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78468     }
78469     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78470     {
78471       arg2 = ST(1);
78472     }
78473     {
78474       arg3 = ST(2);
78475     }
78476     {
78477       try {
78478         vrna_fold_compound_t_add_auxdata(arg1,arg2,arg3);
78479       } catch (const std::exception& e) {
78480         SWIG_exception(SWIG_RuntimeError, e.what());
78481       }
78482     }
78483     ST(argvi) = &PL_sv_undef;
78484 
78485 
78486 
78487     XSRETURN(argvi);
78488   fail:
78489 
78490 
78491 
78492     SWIG_croak_null();
78493   }
78494 }
78495 
78496 
XS(_wrap_fold_compound_add_callback)78497 XS(_wrap_fold_compound_add_callback) {
78498   {
78499     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78500     SV *arg2 = (SV *) 0 ;
78501     void *argp1 = 0 ;
78502     int res1 = 0 ;
78503     int argvi = 0;
78504     dXSARGS;
78505 
78506     if ((items < 2) || (items > 2)) {
78507       SWIG_croak("Usage: fold_compound_add_callback(self,PerlFunc);");
78508     }
78509     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78510     if (!SWIG_IsOK(res1)) {
78511       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_add_callback" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78512     }
78513     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78514     {
78515       arg2 = ST(1);
78516     }
78517     {
78518       try {
78519         vrna_fold_compound_t_add_callback(arg1,arg2);
78520       } catch (const std::exception& e) {
78521         SWIG_exception(SWIG_RuntimeError, e.what());
78522       }
78523     }
78524     ST(argvi) = &PL_sv_undef;
78525 
78526 
78527     XSRETURN(argvi);
78528   fail:
78529 
78530 
78531     SWIG_croak_null();
78532   }
78533 }
78534 
78535 
XS(_wrap_fold_compound_sc_add_data)78536 XS(_wrap_fold_compound_sc_add_data) {
78537   {
78538     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78539     SV *arg2 = (SV *) 0 ;
78540     SV *arg3 = (SV *) 0 ;
78541     void *argp1 = 0 ;
78542     int res1 = 0 ;
78543     int argvi = 0;
78544     int result;
78545     dXSARGS;
78546 
78547     if ((items < 3) || (items > 3)) {
78548       SWIG_croak("Usage: fold_compound_sc_add_data(self,data,PerlFunc);");
78549     }
78550     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78551     if (!SWIG_IsOK(res1)) {
78552       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_data" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78553     }
78554     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78555     {
78556       arg2 = ST(1);
78557     }
78558     {
78559       arg3 = ST(2);
78560     }
78561     {
78562       try {
78563         result = (int)vrna_fold_compound_t_sc_add_data(arg1,arg2,arg3);
78564       } catch (const std::exception& e) {
78565         SWIG_exception(SWIG_RuntimeError, e.what());
78566       }
78567     }
78568     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
78569 
78570 
78571 
78572     XSRETURN(argvi);
78573   fail:
78574 
78575 
78576 
78577     SWIG_croak_null();
78578   }
78579 }
78580 
78581 
XS(_wrap_fold_compound_sc_add_f)78582 XS(_wrap_fold_compound_sc_add_f) {
78583   {
78584     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78585     SV *arg2 = (SV *) 0 ;
78586     void *argp1 = 0 ;
78587     int res1 = 0 ;
78588     int argvi = 0;
78589     int result;
78590     dXSARGS;
78591 
78592     if ((items < 2) || (items > 2)) {
78593       SWIG_croak("Usage: fold_compound_sc_add_f(self,PerlFunc);");
78594     }
78595     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78596     if (!SWIG_IsOK(res1)) {
78597       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_f" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78598     }
78599     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78600     {
78601       arg2 = ST(1);
78602     }
78603     {
78604       try {
78605         result = (int)vrna_fold_compound_t_sc_add_f(arg1,arg2);
78606       } catch (const std::exception& e) {
78607         SWIG_exception(SWIG_RuntimeError, e.what());
78608       }
78609     }
78610     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
78611 
78612 
78613     XSRETURN(argvi);
78614   fail:
78615 
78616 
78617     SWIG_croak_null();
78618   }
78619 }
78620 
78621 
XS(_wrap_fold_compound_sc_add_bt)78622 XS(_wrap_fold_compound_sc_add_bt) {
78623   {
78624     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78625     SV *arg2 = (SV *) 0 ;
78626     void *argp1 = 0 ;
78627     int res1 = 0 ;
78628     int argvi = 0;
78629     int result;
78630     dXSARGS;
78631 
78632     if ((items < 2) || (items > 2)) {
78633       SWIG_croak("Usage: fold_compound_sc_add_bt(self,PerlFunc);");
78634     }
78635     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78636     if (!SWIG_IsOK(res1)) {
78637       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_bt" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78638     }
78639     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78640     {
78641       arg2 = ST(1);
78642     }
78643     {
78644       try {
78645         result = (int)vrna_fold_compound_t_sc_add_bt(arg1,arg2);
78646       } catch (const std::exception& e) {
78647         SWIG_exception(SWIG_RuntimeError, e.what());
78648       }
78649     }
78650     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
78651 
78652 
78653     XSRETURN(argvi);
78654   fail:
78655 
78656 
78657     SWIG_croak_null();
78658   }
78659 }
78660 
78661 
XS(_wrap_fold_compound_sc_add_exp_f)78662 XS(_wrap_fold_compound_sc_add_exp_f) {
78663   {
78664     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78665     SV *arg2 = (SV *) 0 ;
78666     void *argp1 = 0 ;
78667     int res1 = 0 ;
78668     int argvi = 0;
78669     int result;
78670     dXSARGS;
78671 
78672     if ((items < 2) || (items > 2)) {
78673       SWIG_croak("Usage: fold_compound_sc_add_exp_f(self,PerlFunc);");
78674     }
78675     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78676     if (!SWIG_IsOK(res1)) {
78677       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_sc_add_exp_f" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78678     }
78679     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78680     {
78681       arg2 = ST(1);
78682     }
78683     {
78684       try {
78685         result = (int)vrna_fold_compound_t_sc_add_exp_f(arg1,arg2);
78686       } catch (const std::exception& e) {
78687         SWIG_exception(SWIG_RuntimeError, e.what());
78688       }
78689     }
78690     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
78691 
78692 
78693     XSRETURN(argvi);
78694   fail:
78695 
78696 
78697     SWIG_croak_null();
78698   }
78699 }
78700 
78701 
XS(_wrap_fold_compound_ud_set_data)78702 XS(_wrap_fold_compound_ud_set_data) {
78703   {
78704     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78705     SV *arg2 = (SV *) 0 ;
78706     SV *arg3 = (SV *) 0 ;
78707     void *argp1 = 0 ;
78708     int res1 = 0 ;
78709     int argvi = 0;
78710     dXSARGS;
78711 
78712     if ((items < 3) || (items > 3)) {
78713       SWIG_croak("Usage: fold_compound_ud_set_data(self,data,PerlFunc);");
78714     }
78715     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78716     if (!SWIG_IsOK(res1)) {
78717       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_ud_set_data" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78718     }
78719     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78720     {
78721       arg2 = ST(1);
78722     }
78723     {
78724       arg3 = ST(2);
78725     }
78726     {
78727       try {
78728         vrna_fold_compound_t_ud_set_data(arg1,arg2,arg3);
78729       } catch (const std::exception& e) {
78730         SWIG_exception(SWIG_RuntimeError, e.what());
78731       }
78732     }
78733     ST(argvi) = &PL_sv_undef;
78734 
78735 
78736 
78737     XSRETURN(argvi);
78738   fail:
78739 
78740 
78741 
78742     SWIG_croak_null();
78743   }
78744 }
78745 
78746 
XS(_wrap_fold_compound_ud_set_prod_rule_cb)78747 XS(_wrap_fold_compound_ud_set_prod_rule_cb) {
78748   {
78749     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78750     SV *arg2 = (SV *) 0 ;
78751     SV *arg3 = (SV *) 0 ;
78752     void *argp1 = 0 ;
78753     int res1 = 0 ;
78754     int argvi = 0;
78755     dXSARGS;
78756 
78757     if ((items < 3) || (items > 3)) {
78758       SWIG_croak("Usage: fold_compound_ud_set_prod_rule_cb(self,prod_cb,eval_cb);");
78759     }
78760     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78761     if (!SWIG_IsOK(res1)) {
78762       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_ud_set_prod_rule_cb" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78763     }
78764     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78765     arg2 = ST(1);
78766     arg3 = ST(2);
78767     {
78768       try {
78769         vrna_fold_compound_t_ud_set_prod_rule_cb(arg1,arg2,arg3);
78770       } catch (const std::exception& e) {
78771         SWIG_exception(SWIG_RuntimeError, e.what());
78772       }
78773     }
78774     ST(argvi) = &PL_sv_undef;
78775 
78776 
78777 
78778     XSRETURN(argvi);
78779   fail:
78780 
78781 
78782 
78783     SWIG_croak_null();
78784   }
78785 }
78786 
78787 
XS(_wrap_fold_compound_ud_set_exp_prod_rule_cb)78788 XS(_wrap_fold_compound_ud_set_exp_prod_rule_cb) {
78789   {
78790     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78791     SV *arg2 = (SV *) 0 ;
78792     SV *arg3 = (SV *) 0 ;
78793     void *argp1 = 0 ;
78794     int res1 = 0 ;
78795     int argvi = 0;
78796     dXSARGS;
78797 
78798     if ((items < 3) || (items > 3)) {
78799       SWIG_croak("Usage: fold_compound_ud_set_exp_prod_rule_cb(self,prod_cb,eval_cb);");
78800     }
78801     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78802     if (!SWIG_IsOK(res1)) {
78803       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_ud_set_exp_prod_rule_cb" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78804     }
78805     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78806     arg2 = ST(1);
78807     arg3 = ST(2);
78808     {
78809       try {
78810         vrna_fold_compound_t_ud_set_exp_prod_rule_cb(arg1,arg2,arg3);
78811       } catch (const std::exception& e) {
78812         SWIG_exception(SWIG_RuntimeError, e.what());
78813       }
78814     }
78815     ST(argvi) = &PL_sv_undef;
78816 
78817 
78818 
78819     XSRETURN(argvi);
78820   fail:
78821 
78822 
78823 
78824     SWIG_croak_null();
78825   }
78826 }
78827 
78828 
XS(_wrap_fold_compound_ud_set_prob_cb)78829 XS(_wrap_fold_compound_ud_set_prob_cb) {
78830   {
78831     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78832     SV *arg2 = (SV *) 0 ;
78833     SV *arg3 = (SV *) 0 ;
78834     void *argp1 = 0 ;
78835     int res1 = 0 ;
78836     int argvi = 0;
78837     dXSARGS;
78838 
78839     if ((items < 3) || (items > 3)) {
78840       SWIG_croak("Usage: fold_compound_ud_set_prob_cb(self,setter,getter);");
78841     }
78842     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78843     if (!SWIG_IsOK(res1)) {
78844       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_ud_set_prob_cb" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78845     }
78846     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78847     arg2 = ST(1);
78848     arg3 = ST(2);
78849     {
78850       try {
78851         vrna_fold_compound_t_ud_set_prob_cb(arg1,arg2,arg3);
78852       } catch (const std::exception& e) {
78853         SWIG_exception(SWIG_RuntimeError, e.what());
78854       }
78855     }
78856     ST(argvi) = &PL_sv_undef;
78857 
78858 
78859 
78860     XSRETURN(argvi);
78861   fail:
78862 
78863 
78864 
78865     SWIG_croak_null();
78866   }
78867 }
78868 
78869 
XS(_wrap_fold_compound_subopt_cb__SWIG_0)78870 XS(_wrap_fold_compound_subopt_cb__SWIG_0) {
78871   {
78872     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78873     int arg2 ;
78874     SV *arg3 = (SV *) 0 ;
78875     SV *arg4 = (SV *) 0 ;
78876     void *argp1 = 0 ;
78877     int res1 = 0 ;
78878     int val2 ;
78879     int ecode2 = 0 ;
78880     int argvi = 0;
78881     dXSARGS;
78882 
78883     if ((items < 4) || (items > 4)) {
78884       SWIG_croak("Usage: fold_compound_subopt_cb(self,delta,PerlFunc,PerlData);");
78885     }
78886     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78887     if (!SWIG_IsOK(res1)) {
78888       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_subopt_cb" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78889     }
78890     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78891     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
78892     if (!SWIG_IsOK(ecode2)) {
78893       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_subopt_cb" "', argument " "2"" of type '" "int""'");
78894     }
78895     arg2 = static_cast< int >(val2);
78896     {
78897       arg3 = ST(2);
78898     }
78899     arg4 = ST(3);
78900     {
78901       try {
78902         vrna_fold_compound_t_subopt_cb__SWIG_0(arg1,arg2,arg3,arg4);
78903       } catch (const std::exception& e) {
78904         SWIG_exception(SWIG_RuntimeError, e.what());
78905       }
78906     }
78907     ST(argvi) = &PL_sv_undef;
78908 
78909 
78910 
78911 
78912     XSRETURN(argvi);
78913   fail:
78914 
78915 
78916 
78917 
78918     SWIG_croak_null();
78919   }
78920 }
78921 
78922 
XS(_wrap_fold_compound_subopt_cb__SWIG_1)78923 XS(_wrap_fold_compound_subopt_cb__SWIG_1) {
78924   {
78925     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
78926     int arg2 ;
78927     SV *arg3 = (SV *) 0 ;
78928     void *argp1 = 0 ;
78929     int res1 = 0 ;
78930     int val2 ;
78931     int ecode2 = 0 ;
78932     int argvi = 0;
78933     dXSARGS;
78934 
78935     if ((items < 3) || (items > 3)) {
78936       SWIG_croak("Usage: fold_compound_subopt_cb(self,delta,PerlFunc);");
78937     }
78938     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
78939     if (!SWIG_IsOK(res1)) {
78940       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_subopt_cb" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
78941     }
78942     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
78943     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
78944     if (!SWIG_IsOK(ecode2)) {
78945       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_subopt_cb" "', argument " "2"" of type '" "int""'");
78946     }
78947     arg2 = static_cast< int >(val2);
78948     {
78949       arg3 = ST(2);
78950     }
78951     {
78952       try {
78953         vrna_fold_compound_t_subopt_cb__SWIG_0(arg1,arg2,arg3);
78954       } catch (const std::exception& e) {
78955         SWIG_exception(SWIG_RuntimeError, e.what());
78956       }
78957     }
78958     ST(argvi) = &PL_sv_undef;
78959 
78960 
78961 
78962     XSRETURN(argvi);
78963   fail:
78964 
78965 
78966 
78967     SWIG_croak_null();
78968   }
78969 }
78970 
78971 
XS(_wrap_fold_compound_subopt_cb)78972 XS(_wrap_fold_compound_subopt_cb) {
78973   dXSARGS;
78974 
78975   {
78976     unsigned long _index = 0;
78977     SWIG_TypeRank _rank = 0;
78978     if (items == 3) {
78979       SWIG_TypeRank _ranki = 0;
78980       SWIG_TypeRank _rankm = 0;
78981       SWIG_TypeRank _pi = 1;
78982       int _v = 0;
78983       {
78984         void *vptr = 0;
78985         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
78986         _v = SWIG_CheckState(res);
78987       }
78988       if (!_v) goto check_1;
78989       _ranki += _v*_pi;
78990       _rankm += _pi;
78991       _pi *= SWIG_MAXCASTRANK;
78992       {
78993         {
78994           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
78995           _v = SWIG_CheckState(res);
78996         }
78997       }
78998       if (!_v) goto check_1;
78999       _ranki += _v*_pi;
79000       _rankm += _pi;
79001       _pi *= SWIG_MAXCASTRANK;
79002       {
79003         _v = (ST(2) != 0);
79004       }
79005       if (!_v) goto check_1;
79006       _ranki += _v*_pi;
79007       _rankm += _pi;
79008       _pi *= SWIG_MAXCASTRANK;
79009       if (!_index || (_ranki < _rank)) {
79010         _rank = _ranki; _index = 1;
79011         if (_rank == _rankm) goto dispatch;
79012       }
79013     }
79014   check_1:
79015 
79016     if (items == 4) {
79017       SWIG_TypeRank _ranki = 0;
79018       SWIG_TypeRank _rankm = 0;
79019       SWIG_TypeRank _pi = 1;
79020       int _v = 0;
79021       {
79022         void *vptr = 0;
79023         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
79024         _v = SWIG_CheckState(res);
79025       }
79026       if (!_v) goto check_2;
79027       _ranki += _v*_pi;
79028       _rankm += _pi;
79029       _pi *= SWIG_MAXCASTRANK;
79030       {
79031         {
79032           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
79033           _v = SWIG_CheckState(res);
79034         }
79035       }
79036       if (!_v) goto check_2;
79037       _ranki += _v*_pi;
79038       _rankm += _pi;
79039       _pi *= SWIG_MAXCASTRANK;
79040       {
79041         _v = (ST(2) != 0);
79042       }
79043       if (!_v) goto check_2;
79044       _ranki += _v*_pi;
79045       _rankm += _pi;
79046       _pi *= SWIG_MAXCASTRANK;
79047       {
79048         _v = (ST(3) != 0);
79049       }
79050       if (!_v) goto check_2;
79051       _ranki += _v*_pi;
79052       _rankm += _pi;
79053       _pi *= SWIG_MAXCASTRANK;
79054       if (!_index || (_ranki < _rank)) {
79055         _rank = _ranki; _index = 2;
79056         if (_rank == _rankm) goto dispatch;
79057       }
79058     }
79059   check_2:
79060 
79061   dispatch:
79062     switch(_index) {
79063     case 1:
79064       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_subopt_cb__SWIG_1); return;
79065     case 2:
79066       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_subopt_cb__SWIG_0); return;
79067     }
79068   }
79069 
79070   croak("No matching function for overloaded 'fold_compound_subopt_cb'");
79071   XSRETURN(0);
79072 }
79073 
79074 
XS(_wrap_fold_compound_pbacktrack5__SWIG_5)79075 XS(_wrap_fold_compound_pbacktrack5__SWIG_5) {
79076   {
79077     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
79078     unsigned int arg2 ;
79079     unsigned int arg3 ;
79080     SV *arg4 = (SV *) 0 ;
79081     SV *arg5 = (SV *) 0 ;
79082     unsigned int arg6 ;
79083     void *argp1 = 0 ;
79084     int res1 = 0 ;
79085     unsigned int val2 ;
79086     int ecode2 = 0 ;
79087     unsigned int val3 ;
79088     int ecode3 = 0 ;
79089     unsigned int val6 ;
79090     int ecode6 = 0 ;
79091     int argvi = 0;
79092     unsigned int result;
79093     dXSARGS;
79094 
79095     if ((items < 6) || (items > 6)) {
79096       SWIG_croak("Usage: fold_compound_pbacktrack5(self,num_samples,length,PerlFunc,PerlData,options);");
79097     }
79098     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
79099     if (!SWIG_IsOK(res1)) {
79100       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack5" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
79101     }
79102     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
79103     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
79104     if (!SWIG_IsOK(ecode2)) {
79105       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack5" "', argument " "2"" of type '" "unsigned int""'");
79106     }
79107     arg2 = static_cast< unsigned int >(val2);
79108     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
79109     if (!SWIG_IsOK(ecode3)) {
79110       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_pbacktrack5" "', argument " "3"" of type '" "unsigned int""'");
79111     }
79112     arg3 = static_cast< unsigned int >(val3);
79113     {
79114       arg4 = ST(3);
79115     }
79116     arg5 = ST(4);
79117     ecode6 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
79118     if (!SWIG_IsOK(ecode6)) {
79119       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "fold_compound_pbacktrack5" "', argument " "6"" of type '" "unsigned int""'");
79120     }
79121     arg6 = static_cast< unsigned int >(val6);
79122     {
79123       try {
79124         result = (unsigned int)vrna_fold_compound_t_pbacktrack5__SWIG_5(arg1,arg2,arg3,arg4,arg5,arg6);
79125       } catch (const std::exception& e) {
79126         SWIG_exception(SWIG_RuntimeError, e.what());
79127       }
79128     }
79129     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
79130 
79131 
79132 
79133 
79134 
79135 
79136     XSRETURN(argvi);
79137   fail:
79138 
79139 
79140 
79141 
79142 
79143 
79144     SWIG_croak_null();
79145   }
79146 }
79147 
79148 
XS(_wrap_fold_compound_pbacktrack5__SWIG_6)79149 XS(_wrap_fold_compound_pbacktrack5__SWIG_6) {
79150   {
79151     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
79152     unsigned int arg2 ;
79153     unsigned int arg3 ;
79154     SV *arg4 = (SV *) 0 ;
79155     SV *arg5 = (SV *) 0 ;
79156     void *argp1 = 0 ;
79157     int res1 = 0 ;
79158     unsigned int val2 ;
79159     int ecode2 = 0 ;
79160     unsigned int val3 ;
79161     int ecode3 = 0 ;
79162     int argvi = 0;
79163     unsigned int result;
79164     dXSARGS;
79165 
79166     if ((items < 5) || (items > 5)) {
79167       SWIG_croak("Usage: fold_compound_pbacktrack5(self,num_samples,length,PerlFunc,PerlData);");
79168     }
79169     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
79170     if (!SWIG_IsOK(res1)) {
79171       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack5" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
79172     }
79173     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
79174     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
79175     if (!SWIG_IsOK(ecode2)) {
79176       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack5" "', argument " "2"" of type '" "unsigned int""'");
79177     }
79178     arg2 = static_cast< unsigned int >(val2);
79179     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
79180     if (!SWIG_IsOK(ecode3)) {
79181       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_pbacktrack5" "', argument " "3"" of type '" "unsigned int""'");
79182     }
79183     arg3 = static_cast< unsigned int >(val3);
79184     {
79185       arg4 = ST(3);
79186     }
79187     arg5 = ST(4);
79188     {
79189       try {
79190         result = (unsigned int)vrna_fold_compound_t_pbacktrack5__SWIG_5(arg1,arg2,arg3,arg4,arg5);
79191       } catch (const std::exception& e) {
79192         SWIG_exception(SWIG_RuntimeError, e.what());
79193       }
79194     }
79195     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
79196 
79197 
79198 
79199 
79200 
79201     XSRETURN(argvi);
79202   fail:
79203 
79204 
79205 
79206 
79207 
79208     SWIG_croak_null();
79209   }
79210 }
79211 
79212 
XS(_wrap_fold_compound_pbacktrack5__SWIG_7)79213 XS(_wrap_fold_compound_pbacktrack5__SWIG_7) {
79214   {
79215     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
79216     unsigned int arg2 ;
79217     unsigned int arg3 ;
79218     SV *arg4 = (SV *) 0 ;
79219     void *argp1 = 0 ;
79220     int res1 = 0 ;
79221     unsigned int val2 ;
79222     int ecode2 = 0 ;
79223     unsigned int val3 ;
79224     int ecode3 = 0 ;
79225     int argvi = 0;
79226     unsigned int result;
79227     dXSARGS;
79228 
79229     if ((items < 4) || (items > 4)) {
79230       SWIG_croak("Usage: fold_compound_pbacktrack5(self,num_samples,length,PerlFunc);");
79231     }
79232     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
79233     if (!SWIG_IsOK(res1)) {
79234       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack5" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
79235     }
79236     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
79237     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
79238     if (!SWIG_IsOK(ecode2)) {
79239       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack5" "', argument " "2"" of type '" "unsigned int""'");
79240     }
79241     arg2 = static_cast< unsigned int >(val2);
79242     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
79243     if (!SWIG_IsOK(ecode3)) {
79244       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_pbacktrack5" "', argument " "3"" of type '" "unsigned int""'");
79245     }
79246     arg3 = static_cast< unsigned int >(val3);
79247     {
79248       arg4 = ST(3);
79249     }
79250     {
79251       try {
79252         result = (unsigned int)vrna_fold_compound_t_pbacktrack5__SWIG_5(arg1,arg2,arg3,arg4);
79253       } catch (const std::exception& e) {
79254         SWIG_exception(SWIG_RuntimeError, e.what());
79255       }
79256     }
79257     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
79258 
79259 
79260 
79261 
79262     XSRETURN(argvi);
79263   fail:
79264 
79265 
79266 
79267 
79268     SWIG_croak_null();
79269   }
79270 }
79271 
79272 
XS(_wrap_fold_compound_pbacktrack__SWIG_5)79273 XS(_wrap_fold_compound_pbacktrack__SWIG_5) {
79274   {
79275     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
79276     unsigned int arg2 ;
79277     SV *arg3 = (SV *) 0 ;
79278     SV *arg4 = (SV *) 0 ;
79279     unsigned int arg5 ;
79280     void *argp1 = 0 ;
79281     int res1 = 0 ;
79282     unsigned int val2 ;
79283     int ecode2 = 0 ;
79284     unsigned int val5 ;
79285     int ecode5 = 0 ;
79286     int argvi = 0;
79287     unsigned int result;
79288     dXSARGS;
79289 
79290     if ((items < 5) || (items > 5)) {
79291       SWIG_croak("Usage: fold_compound_pbacktrack(self,num_samples,PerlFunc,PerlData,options);");
79292     }
79293     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
79294     if (!SWIG_IsOK(res1)) {
79295       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
79296     }
79297     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
79298     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
79299     if (!SWIG_IsOK(ecode2)) {
79300       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack" "', argument " "2"" of type '" "unsigned int""'");
79301     }
79302     arg2 = static_cast< unsigned int >(val2);
79303     {
79304       arg3 = ST(2);
79305     }
79306     arg4 = ST(3);
79307     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
79308     if (!SWIG_IsOK(ecode5)) {
79309       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_pbacktrack" "', argument " "5"" of type '" "unsigned int""'");
79310     }
79311     arg5 = static_cast< unsigned int >(val5);
79312     {
79313       try {
79314         result = (unsigned int)vrna_fold_compound_t_pbacktrack__SWIG_5(arg1,arg2,arg3,arg4,arg5);
79315       } catch (const std::exception& e) {
79316         SWIG_exception(SWIG_RuntimeError, e.what());
79317       }
79318     }
79319     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
79320 
79321 
79322 
79323 
79324 
79325     XSRETURN(argvi);
79326   fail:
79327 
79328 
79329 
79330 
79331 
79332     SWIG_croak_null();
79333   }
79334 }
79335 
79336 
XS(_wrap_fold_compound_pbacktrack__SWIG_6)79337 XS(_wrap_fold_compound_pbacktrack__SWIG_6) {
79338   {
79339     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
79340     unsigned int arg2 ;
79341     SV *arg3 = (SV *) 0 ;
79342     SV *arg4 = (SV *) 0 ;
79343     void *argp1 = 0 ;
79344     int res1 = 0 ;
79345     unsigned int val2 ;
79346     int ecode2 = 0 ;
79347     int argvi = 0;
79348     unsigned int result;
79349     dXSARGS;
79350 
79351     if ((items < 4) || (items > 4)) {
79352       SWIG_croak("Usage: fold_compound_pbacktrack(self,num_samples,PerlFunc,PerlData);");
79353     }
79354     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
79355     if (!SWIG_IsOK(res1)) {
79356       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
79357     }
79358     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
79359     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
79360     if (!SWIG_IsOK(ecode2)) {
79361       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack" "', argument " "2"" of type '" "unsigned int""'");
79362     }
79363     arg2 = static_cast< unsigned int >(val2);
79364     {
79365       arg3 = ST(2);
79366     }
79367     arg4 = ST(3);
79368     {
79369       try {
79370         result = (unsigned int)vrna_fold_compound_t_pbacktrack__SWIG_5(arg1,arg2,arg3,arg4);
79371       } catch (const std::exception& e) {
79372         SWIG_exception(SWIG_RuntimeError, e.what());
79373       }
79374     }
79375     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
79376 
79377 
79378 
79379 
79380     XSRETURN(argvi);
79381   fail:
79382 
79383 
79384 
79385 
79386     SWIG_croak_null();
79387   }
79388 }
79389 
79390 
XS(_wrap_fold_compound_pbacktrack__SWIG_7)79391 XS(_wrap_fold_compound_pbacktrack__SWIG_7) {
79392   {
79393     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
79394     unsigned int arg2 ;
79395     SV *arg3 = (SV *) 0 ;
79396     void *argp1 = 0 ;
79397     int res1 = 0 ;
79398     unsigned int val2 ;
79399     int ecode2 = 0 ;
79400     int argvi = 0;
79401     unsigned int result;
79402     dXSARGS;
79403 
79404     if ((items < 3) || (items > 3)) {
79405       SWIG_croak("Usage: fold_compound_pbacktrack(self,num_samples,PerlFunc);");
79406     }
79407     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
79408     if (!SWIG_IsOK(res1)) {
79409       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
79410     }
79411     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
79412     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
79413     if (!SWIG_IsOK(ecode2)) {
79414       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack" "', argument " "2"" of type '" "unsigned int""'");
79415     }
79416     arg2 = static_cast< unsigned int >(val2);
79417     {
79418       arg3 = ST(2);
79419     }
79420     {
79421       try {
79422         result = (unsigned int)vrna_fold_compound_t_pbacktrack__SWIG_5(arg1,arg2,arg3);
79423       } catch (const std::exception& e) {
79424         SWIG_exception(SWIG_RuntimeError, e.what());
79425       }
79426     }
79427     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
79428 
79429 
79430 
79431     XSRETURN(argvi);
79432   fail:
79433 
79434 
79435 
79436     SWIG_croak_null();
79437   }
79438 }
79439 
79440 
XS(_wrap_fold_compound_pbacktrack__SWIG_8)79441 XS(_wrap_fold_compound_pbacktrack__SWIG_8) {
79442   {
79443     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
79444     unsigned int arg2 ;
79445     SV *arg3 = (SV *) 0 ;
79446     SV *arg4 = (SV *) 0 ;
79447     vrna_pbacktrack_mem_t *arg5 = (vrna_pbacktrack_mem_t *) 0 ;
79448     unsigned int arg6 ;
79449     void *argp1 = 0 ;
79450     int res1 = 0 ;
79451     unsigned int val2 ;
79452     int ecode2 = 0 ;
79453     vrna_pbacktrack_mem_t *retval5 ;
79454     unsigned int val6 ;
79455     int ecode6 = 0 ;
79456     int argvi = 0;
79457     SV * _saved[1] ;
79458     unsigned int result;
79459     dXSARGS;
79460 
79461     if ((items < 6) || (items > 6)) {
79462       SWIG_croak("Usage: fold_compound_pbacktrack(self,num_samples,PerlFunc,PerlData,nr_memory,options);");
79463     }
79464     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
79465     if (!SWIG_IsOK(res1)) {
79466       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
79467     }
79468     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
79469     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
79470     if (!SWIG_IsOK(ecode2)) {
79471       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack" "', argument " "2"" of type '" "unsigned int""'");
79472     }
79473     arg2 = static_cast< unsigned int >(val2);
79474     {
79475       arg3 = ST(2);
79476     }
79477     arg4 = ST(3);
79478     {
79479       if (!SvOK(ST(4))) {
79480         retval5 = new vrna_pbacktrack_mem_t();
79481         arg5 = retval5;
79482       } else {
79483         /* INOUT in */
79484         SWIG_ConvertPtr(ST(4),SWIG_as_voidptrptr(&retval5), 0, SWIG_POINTER_DISOWN);
79485         arg5 = retval5;
79486       }
79487     }
79488     ecode6 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(5), &val6);
79489     if (!SWIG_IsOK(ecode6)) {
79490       SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "fold_compound_pbacktrack" "', argument " "6"" of type '" "unsigned int""'");
79491     }
79492     arg6 = static_cast< unsigned int >(val6);
79493     _saved[0] = ST(4);
79494     {
79495       try {
79496         result = (unsigned int)vrna_fold_compound_t_pbacktrack__SWIG_8(arg1,arg2,arg3,arg4,arg5,arg6);
79497       } catch (const std::exception& e) {
79498         SWIG_exception(SWIG_RuntimeError, e.what());
79499       }
79500     }
79501     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
79502     {
79503       /* increase output stack if necessary */
79504       if (argvi >= items) {
79505         EXTEND(sp,1);
79506       }
79507       /* move already existing return values to the back */
79508       for (int i = argvi; i > 0; i--) {
79509         ST(i) = ST(i - 1);
79510       }
79511       /* store result as first element in the stack */
79512       ST(0) = SWIG_NewPointerObj(SWIG_as_voidptr(retval5), SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
79513       /* increase return argument counter */
79514       argvi++;
79515     }
79516 
79517 
79518 
79519 
79520 
79521 
79522     XSRETURN(argvi);
79523   fail:
79524 
79525 
79526 
79527 
79528 
79529 
79530     SWIG_croak_null();
79531   }
79532 }
79533 
79534 
XS(_wrap_fold_compound_pbacktrack__SWIG_9)79535 XS(_wrap_fold_compound_pbacktrack__SWIG_9) {
79536   {
79537     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
79538     unsigned int arg2 ;
79539     SV *arg3 = (SV *) 0 ;
79540     SV *arg4 = (SV *) 0 ;
79541     vrna_pbacktrack_mem_t *arg5 = (vrna_pbacktrack_mem_t *) 0 ;
79542     void *argp1 = 0 ;
79543     int res1 = 0 ;
79544     unsigned int val2 ;
79545     int ecode2 = 0 ;
79546     vrna_pbacktrack_mem_t *retval5 ;
79547     int argvi = 0;
79548     SV * _saved[1] ;
79549     unsigned int result;
79550     dXSARGS;
79551 
79552     if ((items < 5) || (items > 5)) {
79553       SWIG_croak("Usage: fold_compound_pbacktrack(self,num_samples,PerlFunc,PerlData,nr_memory);");
79554     }
79555     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
79556     if (!SWIG_IsOK(res1)) {
79557       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
79558     }
79559     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
79560     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
79561     if (!SWIG_IsOK(ecode2)) {
79562       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack" "', argument " "2"" of type '" "unsigned int""'");
79563     }
79564     arg2 = static_cast< unsigned int >(val2);
79565     {
79566       arg3 = ST(2);
79567     }
79568     arg4 = ST(3);
79569     {
79570       if (!SvOK(ST(4))) {
79571         retval5 = new vrna_pbacktrack_mem_t();
79572         arg5 = retval5;
79573       } else {
79574         /* INOUT in */
79575         SWIG_ConvertPtr(ST(4),SWIG_as_voidptrptr(&retval5), 0, SWIG_POINTER_DISOWN);
79576         arg5 = retval5;
79577       }
79578     }
79579     _saved[0] = ST(4);
79580     {
79581       try {
79582         result = (unsigned int)vrna_fold_compound_t_pbacktrack__SWIG_8(arg1,arg2,arg3,arg4,arg5);
79583       } catch (const std::exception& e) {
79584         SWIG_exception(SWIG_RuntimeError, e.what());
79585       }
79586     }
79587     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
79588     {
79589       /* increase output stack if necessary */
79590       if (argvi >= items) {
79591         EXTEND(sp,1);
79592       }
79593       /* move already existing return values to the back */
79594       for (int i = argvi; i > 0; i--) {
79595         ST(i) = ST(i - 1);
79596       }
79597       /* store result as first element in the stack */
79598       ST(0) = SWIG_NewPointerObj(SWIG_as_voidptr(retval5), SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
79599       /* increase return argument counter */
79600       argvi++;
79601     }
79602 
79603 
79604 
79605 
79606 
79607     XSRETURN(argvi);
79608   fail:
79609 
79610 
79611 
79612 
79613 
79614     SWIG_croak_null();
79615   }
79616 }
79617 
79618 
XS(_wrap_fold_compound_pbacktrack)79619 XS(_wrap_fold_compound_pbacktrack) {
79620   dXSARGS;
79621 
79622   {
79623     unsigned long _index = 0;
79624     SWIG_TypeRank _rank = 0;
79625     if (items == 1) {
79626       SWIG_TypeRank _ranki = 0;
79627       SWIG_TypeRank _rankm = 0;
79628       SWIG_TypeRank _pi = 1;
79629       int _v = 0;
79630       {
79631         void *vptr = 0;
79632         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
79633         _v = SWIG_CheckState(res);
79634       }
79635       if (!_v) goto check_1;
79636       _ranki += _v*_pi;
79637       _rankm += _pi;
79638       _pi *= SWIG_MAXCASTRANK;
79639       if (!_index || (_ranki < _rank)) {
79640         _rank = _ranki; _index = 1;
79641         if (_rank == _rankm) goto dispatch;
79642       }
79643     }
79644   check_1:
79645 
79646     if (items == 2) {
79647       SWIG_TypeRank _ranki = 0;
79648       SWIG_TypeRank _rankm = 0;
79649       SWIG_TypeRank _pi = 1;
79650       int _v = 0;
79651       {
79652         void *vptr = 0;
79653         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
79654         _v = SWIG_CheckState(res);
79655       }
79656       if (!_v) goto check_2;
79657       _ranki += _v*_pi;
79658       _rankm += _pi;
79659       _pi *= SWIG_MAXCASTRANK;
79660       {
79661         {
79662           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
79663           _v = SWIG_CheckState(res);
79664         }
79665       }
79666       if (!_v) goto check_2;
79667       _ranki += _v*_pi;
79668       _rankm += _pi;
79669       _pi *= SWIG_MAXCASTRANK;
79670       if (!_index || (_ranki < _rank)) {
79671         _rank = _ranki; _index = 2;
79672         if (_rank == _rankm) goto dispatch;
79673       }
79674     }
79675   check_2:
79676 
79677     if (items == 3) {
79678       SWIG_TypeRank _ranki = 0;
79679       SWIG_TypeRank _rankm = 0;
79680       SWIG_TypeRank _pi = 1;
79681       int _v = 0;
79682       {
79683         void *vptr = 0;
79684         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
79685         _v = SWIG_CheckState(res);
79686       }
79687       if (!_v) goto check_3;
79688       _ranki += _v*_pi;
79689       _rankm += _pi;
79690       _pi *= SWIG_MAXCASTRANK;
79691       {
79692         {
79693           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
79694           _v = SWIG_CheckState(res);
79695         }
79696       }
79697       if (!_v) goto check_3;
79698       _ranki += _v*_pi;
79699       _rankm += _pi;
79700       _pi *= SWIG_MAXCASTRANK;
79701       {
79702         void *vptr = 0;
79703         int res = SWIG_ConvertPtr(ST(2), &vptr, SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
79704         _v = SWIG_CheckState(res);
79705       }
79706       if (!_v) goto check_3;
79707       _ranki += _v*_pi;
79708       _rankm += _pi;
79709       _pi *= SWIG_MAXCASTRANK;
79710       if (!_index || (_ranki < _rank)) {
79711         _rank = _ranki; _index = 3;
79712         if (_rank == _rankm) goto dispatch;
79713       }
79714     }
79715   check_3:
79716 
79717     if (items == 3) {
79718       SWIG_TypeRank _ranki = 0;
79719       SWIG_TypeRank _rankm = 0;
79720       SWIG_TypeRank _pi = 1;
79721       int _v = 0;
79722       {
79723         void *vptr = 0;
79724         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
79725         _v = SWIG_CheckState(res);
79726       }
79727       if (!_v) goto check_4;
79728       _ranki += _v*_pi;
79729       _rankm += _pi;
79730       _pi *= SWIG_MAXCASTRANK;
79731       {
79732         {
79733           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
79734           _v = SWIG_CheckState(res);
79735         }
79736       }
79737       if (!_v) goto check_4;
79738       _ranki += _v*_pi;
79739       _rankm += _pi;
79740       _pi *= SWIG_MAXCASTRANK;
79741       {
79742         {
79743           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
79744           _v = SWIG_CheckState(res);
79745         }
79746       }
79747       if (!_v) goto check_4;
79748       _ranki += _v*_pi;
79749       _rankm += _pi;
79750       _pi *= SWIG_MAXCASTRANK;
79751       if (!_index || (_ranki < _rank)) {
79752         _rank = _ranki; _index = 4;
79753         if (_rank == _rankm) goto dispatch;
79754       }
79755     }
79756   check_4:
79757 
79758     if (items == 3) {
79759       SWIG_TypeRank _ranki = 0;
79760       SWIG_TypeRank _rankm = 0;
79761       SWIG_TypeRank _pi = 1;
79762       int _v = 0;
79763       {
79764         void *vptr = 0;
79765         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
79766         _v = SWIG_CheckState(res);
79767       }
79768       if (!_v) goto check_5;
79769       _ranki += _v*_pi;
79770       _rankm += _pi;
79771       _pi *= SWIG_MAXCASTRANK;
79772       {
79773         {
79774           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
79775           _v = SWIG_CheckState(res);
79776         }
79777       }
79778       if (!_v) goto check_5;
79779       _ranki += _v*_pi;
79780       _rankm += _pi;
79781       _pi *= SWIG_MAXCASTRANK;
79782       {
79783         _v = (ST(2) != 0);
79784       }
79785       if (!_v) goto check_5;
79786       _ranki += _v*_pi;
79787       _rankm += _pi;
79788       _pi *= SWIG_MAXCASTRANK;
79789       if (!_index || (_ranki < _rank)) {
79790         _rank = _ranki; _index = 5;
79791         if (_rank == _rankm) goto dispatch;
79792       }
79793     }
79794   check_5:
79795 
79796     if (items == 4) {
79797       SWIG_TypeRank _ranki = 0;
79798       SWIG_TypeRank _rankm = 0;
79799       SWIG_TypeRank _pi = 1;
79800       int _v = 0;
79801       {
79802         void *vptr = 0;
79803         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
79804         _v = SWIG_CheckState(res);
79805       }
79806       if (!_v) goto check_6;
79807       _ranki += _v*_pi;
79808       _rankm += _pi;
79809       _pi *= SWIG_MAXCASTRANK;
79810       {
79811         {
79812           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
79813           _v = SWIG_CheckState(res);
79814         }
79815       }
79816       if (!_v) goto check_6;
79817       _ranki += _v*_pi;
79818       _rankm += _pi;
79819       _pi *= SWIG_MAXCASTRANK;
79820       {
79821         void *vptr = 0;
79822         int res = SWIG_ConvertPtr(ST(2), &vptr, SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
79823         _v = SWIG_CheckState(res);
79824       }
79825       if (!_v) goto check_6;
79826       _ranki += _v*_pi;
79827       _rankm += _pi;
79828       _pi *= SWIG_MAXCASTRANK;
79829       {
79830         {
79831           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
79832           _v = SWIG_CheckState(res);
79833         }
79834       }
79835       if (!_v) goto check_6;
79836       _ranki += _v*_pi;
79837       _rankm += _pi;
79838       _pi *= SWIG_MAXCASTRANK;
79839       if (!_index || (_ranki < _rank)) {
79840         _rank = _ranki; _index = 6;
79841         if (_rank == _rankm) goto dispatch;
79842       }
79843     }
79844   check_6:
79845 
79846     if (items == 4) {
79847       SWIG_TypeRank _ranki = 0;
79848       SWIG_TypeRank _rankm = 0;
79849       SWIG_TypeRank _pi = 1;
79850       int _v = 0;
79851       {
79852         void *vptr = 0;
79853         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
79854         _v = SWIG_CheckState(res);
79855       }
79856       if (!_v) goto check_7;
79857       _ranki += _v*_pi;
79858       _rankm += _pi;
79859       _pi *= SWIG_MAXCASTRANK;
79860       {
79861         {
79862           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
79863           _v = SWIG_CheckState(res);
79864         }
79865       }
79866       if (!_v) goto check_7;
79867       _ranki += _v*_pi;
79868       _rankm += _pi;
79869       _pi *= SWIG_MAXCASTRANK;
79870       {
79871         _v = (ST(2) != 0);
79872       }
79873       if (!_v) goto check_7;
79874       _ranki += _v*_pi;
79875       _rankm += _pi;
79876       _pi *= SWIG_MAXCASTRANK;
79877       {
79878         _v = (ST(3) != 0);
79879       }
79880       if (!_v) goto check_7;
79881       _ranki += _v*_pi;
79882       _rankm += _pi;
79883       _pi *= SWIG_MAXCASTRANK;
79884       if (!_index || (_ranki < _rank)) {
79885         _rank = _ranki; _index = 7;
79886         if (_rank == _rankm) goto dispatch;
79887       }
79888     }
79889   check_7:
79890 
79891     if (items == 5) {
79892       SWIG_TypeRank _ranki = 0;
79893       SWIG_TypeRank _rankm = 0;
79894       SWIG_TypeRank _pi = 1;
79895       int _v = 0;
79896       {
79897         void *vptr = 0;
79898         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
79899         _v = SWIG_CheckState(res);
79900       }
79901       if (!_v) goto check_8;
79902       _ranki += _v*_pi;
79903       _rankm += _pi;
79904       _pi *= SWIG_MAXCASTRANK;
79905       {
79906         {
79907           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
79908           _v = SWIG_CheckState(res);
79909         }
79910       }
79911       if (!_v) goto check_8;
79912       _ranki += _v*_pi;
79913       _rankm += _pi;
79914       _pi *= SWIG_MAXCASTRANK;
79915       {
79916         _v = (ST(2) != 0);
79917       }
79918       if (!_v) goto check_8;
79919       _ranki += _v*_pi;
79920       _rankm += _pi;
79921       _pi *= SWIG_MAXCASTRANK;
79922       {
79923         _v = (ST(3) != 0);
79924       }
79925       if (!_v) goto check_8;
79926       _ranki += _v*_pi;
79927       _rankm += _pi;
79928       _pi *= SWIG_MAXCASTRANK;
79929       {
79930         void *vptr = 0;
79931         int res = SWIG_ConvertPtr(ST(4), &vptr, SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
79932         _v = SWIG_CheckState(res);
79933       }
79934       if (!_v) goto check_8;
79935       _ranki += _v*_pi;
79936       _rankm += _pi;
79937       _pi *= SWIG_MAXCASTRANK;
79938       if (!_index || (_ranki < _rank)) {
79939         _rank = _ranki; _index = 8;
79940         if (_rank == _rankm) goto dispatch;
79941       }
79942     }
79943   check_8:
79944 
79945     if (items == 5) {
79946       SWIG_TypeRank _ranki = 0;
79947       SWIG_TypeRank _rankm = 0;
79948       SWIG_TypeRank _pi = 1;
79949       int _v = 0;
79950       {
79951         void *vptr = 0;
79952         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
79953         _v = SWIG_CheckState(res);
79954       }
79955       if (!_v) goto check_9;
79956       _ranki += _v*_pi;
79957       _rankm += _pi;
79958       _pi *= SWIG_MAXCASTRANK;
79959       {
79960         {
79961           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
79962           _v = SWIG_CheckState(res);
79963         }
79964       }
79965       if (!_v) goto check_9;
79966       _ranki += _v*_pi;
79967       _rankm += _pi;
79968       _pi *= SWIG_MAXCASTRANK;
79969       {
79970         _v = (ST(2) != 0);
79971       }
79972       if (!_v) goto check_9;
79973       _ranki += _v*_pi;
79974       _rankm += _pi;
79975       _pi *= SWIG_MAXCASTRANK;
79976       {
79977         _v = (ST(3) != 0);
79978       }
79979       if (!_v) goto check_9;
79980       _ranki += _v*_pi;
79981       _rankm += _pi;
79982       _pi *= SWIG_MAXCASTRANK;
79983       {
79984         {
79985           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
79986           _v = SWIG_CheckState(res);
79987         }
79988       }
79989       if (!_v) goto check_9;
79990       _ranki += _v*_pi;
79991       _rankm += _pi;
79992       _pi *= SWIG_MAXCASTRANK;
79993       if (!_index || (_ranki < _rank)) {
79994         _rank = _ranki; _index = 9;
79995         if (_rank == _rankm) goto dispatch;
79996       }
79997     }
79998   check_9:
79999 
80000     if (items == 6) {
80001       SWIG_TypeRank _ranki = 0;
80002       SWIG_TypeRank _rankm = 0;
80003       SWIG_TypeRank _pi = 1;
80004       int _v = 0;
80005       {
80006         void *vptr = 0;
80007         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
80008         _v = SWIG_CheckState(res);
80009       }
80010       if (!_v) goto check_10;
80011       _ranki += _v*_pi;
80012       _rankm += _pi;
80013       _pi *= SWIG_MAXCASTRANK;
80014       {
80015         {
80016           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
80017           _v = SWIG_CheckState(res);
80018         }
80019       }
80020       if (!_v) goto check_10;
80021       _ranki += _v*_pi;
80022       _rankm += _pi;
80023       _pi *= SWIG_MAXCASTRANK;
80024       {
80025         _v = (ST(2) != 0);
80026       }
80027       if (!_v) goto check_10;
80028       _ranki += _v*_pi;
80029       _rankm += _pi;
80030       _pi *= SWIG_MAXCASTRANK;
80031       {
80032         _v = (ST(3) != 0);
80033       }
80034       if (!_v) goto check_10;
80035       _ranki += _v*_pi;
80036       _rankm += _pi;
80037       _pi *= SWIG_MAXCASTRANK;
80038       {
80039         void *vptr = 0;
80040         int res = SWIG_ConvertPtr(ST(4), &vptr, SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
80041         _v = SWIG_CheckState(res);
80042       }
80043       if (!_v) goto check_10;
80044       _ranki += _v*_pi;
80045       _rankm += _pi;
80046       _pi *= SWIG_MAXCASTRANK;
80047       {
80048         {
80049           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
80050           _v = SWIG_CheckState(res);
80051         }
80052       }
80053       if (!_v) goto check_10;
80054       _ranki += _v*_pi;
80055       _rankm += _pi;
80056       _pi *= SWIG_MAXCASTRANK;
80057       if (!_index || (_ranki < _rank)) {
80058         _rank = _ranki; _index = 10;
80059         if (_rank == _rankm) goto dispatch;
80060       }
80061     }
80062   check_10:
80063 
80064   dispatch:
80065     switch(_index) {
80066     case 1:
80067       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack__SWIG_0); return;
80068     case 2:
80069       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack__SWIG_2); return;
80070     case 3:
80071       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack__SWIG_4); return;
80072     case 4:
80073       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack__SWIG_1); return;
80074     case 5:
80075       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack__SWIG_7); return;
80076     case 6:
80077       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack__SWIG_3); return;
80078     case 7:
80079       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack__SWIG_6); return;
80080     case 8:
80081       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack__SWIG_9); return;
80082     case 9:
80083       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack__SWIG_5); return;
80084     case 10:
80085       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack__SWIG_8); return;
80086     }
80087   }
80088 
80089   croak("No matching function for overloaded 'fold_compound_pbacktrack'");
80090   XSRETURN(0);
80091 }
80092 
80093 
XS(_wrap_fold_compound_pbacktrack5__SWIG_8)80094 XS(_wrap_fold_compound_pbacktrack5__SWIG_8) {
80095   {
80096     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
80097     unsigned int arg2 ;
80098     unsigned int arg3 ;
80099     SV *arg4 = (SV *) 0 ;
80100     SV *arg5 = (SV *) 0 ;
80101     vrna_pbacktrack_mem_t *arg6 = (vrna_pbacktrack_mem_t *) 0 ;
80102     unsigned int arg7 ;
80103     void *argp1 = 0 ;
80104     int res1 = 0 ;
80105     unsigned int val2 ;
80106     int ecode2 = 0 ;
80107     unsigned int val3 ;
80108     int ecode3 = 0 ;
80109     vrna_pbacktrack_mem_t *retval6 ;
80110     unsigned int val7 ;
80111     int ecode7 = 0 ;
80112     int argvi = 0;
80113     SV * _saved[1] ;
80114     unsigned int result;
80115     dXSARGS;
80116 
80117     if ((items < 7) || (items > 7)) {
80118       SWIG_croak("Usage: fold_compound_pbacktrack5(self,num_samples,length,PerlFunc,PerlData,nr_memory,options);");
80119     }
80120     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
80121     if (!SWIG_IsOK(res1)) {
80122       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack5" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
80123     }
80124     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
80125     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
80126     if (!SWIG_IsOK(ecode2)) {
80127       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack5" "', argument " "2"" of type '" "unsigned int""'");
80128     }
80129     arg2 = static_cast< unsigned int >(val2);
80130     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
80131     if (!SWIG_IsOK(ecode3)) {
80132       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_pbacktrack5" "', argument " "3"" of type '" "unsigned int""'");
80133     }
80134     arg3 = static_cast< unsigned int >(val3);
80135     {
80136       arg4 = ST(3);
80137     }
80138     arg5 = ST(4);
80139     {
80140       if (!SvOK(ST(5))) {
80141         retval6 = new vrna_pbacktrack_mem_t();
80142         arg6 = retval6;
80143       } else {
80144         /* INOUT in */
80145         SWIG_ConvertPtr(ST(5),SWIG_as_voidptrptr(&retval6), 0, SWIG_POINTER_DISOWN);
80146         arg6 = retval6;
80147       }
80148     }
80149     ecode7 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(6), &val7);
80150     if (!SWIG_IsOK(ecode7)) {
80151       SWIG_exception_fail(SWIG_ArgError(ecode7), "in method '" "fold_compound_pbacktrack5" "', argument " "7"" of type '" "unsigned int""'");
80152     }
80153     arg7 = static_cast< unsigned int >(val7);
80154     _saved[0] = ST(5);
80155     {
80156       try {
80157         result = (unsigned int)vrna_fold_compound_t_pbacktrack5__SWIG_8(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
80158       } catch (const std::exception& e) {
80159         SWIG_exception(SWIG_RuntimeError, e.what());
80160       }
80161     }
80162     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
80163     {
80164       /* increase output stack if necessary */
80165       if (argvi >= items) {
80166         EXTEND(sp,1);
80167       }
80168       /* move already existing return values to the back */
80169       for (int i = argvi; i > 0; i--) {
80170         ST(i) = ST(i - 1);
80171       }
80172       /* store result as first element in the stack */
80173       ST(0) = SWIG_NewPointerObj(SWIG_as_voidptr(retval6), SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
80174       /* increase return argument counter */
80175       argvi++;
80176     }
80177 
80178 
80179 
80180 
80181 
80182 
80183 
80184     XSRETURN(argvi);
80185   fail:
80186 
80187 
80188 
80189 
80190 
80191 
80192 
80193     SWIG_croak_null();
80194   }
80195 }
80196 
80197 
XS(_wrap_fold_compound_pbacktrack5__SWIG_9)80198 XS(_wrap_fold_compound_pbacktrack5__SWIG_9) {
80199   {
80200     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
80201     unsigned int arg2 ;
80202     unsigned int arg3 ;
80203     SV *arg4 = (SV *) 0 ;
80204     SV *arg5 = (SV *) 0 ;
80205     vrna_pbacktrack_mem_t *arg6 = (vrna_pbacktrack_mem_t *) 0 ;
80206     void *argp1 = 0 ;
80207     int res1 = 0 ;
80208     unsigned int val2 ;
80209     int ecode2 = 0 ;
80210     unsigned int val3 ;
80211     int ecode3 = 0 ;
80212     vrna_pbacktrack_mem_t *retval6 ;
80213     int argvi = 0;
80214     SV * _saved[1] ;
80215     unsigned int result;
80216     dXSARGS;
80217 
80218     if ((items < 6) || (items > 6)) {
80219       SWIG_croak("Usage: fold_compound_pbacktrack5(self,num_samples,length,PerlFunc,PerlData,nr_memory);");
80220     }
80221     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
80222     if (!SWIG_IsOK(res1)) {
80223       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_pbacktrack5" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
80224     }
80225     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
80226     ecode2 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
80227     if (!SWIG_IsOK(ecode2)) {
80228       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_pbacktrack5" "', argument " "2"" of type '" "unsigned int""'");
80229     }
80230     arg2 = static_cast< unsigned int >(val2);
80231     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
80232     if (!SWIG_IsOK(ecode3)) {
80233       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_pbacktrack5" "', argument " "3"" of type '" "unsigned int""'");
80234     }
80235     arg3 = static_cast< unsigned int >(val3);
80236     {
80237       arg4 = ST(3);
80238     }
80239     arg5 = ST(4);
80240     {
80241       if (!SvOK(ST(5))) {
80242         retval6 = new vrna_pbacktrack_mem_t();
80243         arg6 = retval6;
80244       } else {
80245         /* INOUT in */
80246         SWIG_ConvertPtr(ST(5),SWIG_as_voidptrptr(&retval6), 0, SWIG_POINTER_DISOWN);
80247         arg6 = retval6;
80248       }
80249     }
80250     _saved[0] = ST(5);
80251     {
80252       try {
80253         result = (unsigned int)vrna_fold_compound_t_pbacktrack5__SWIG_8(arg1,arg2,arg3,arg4,arg5,arg6);
80254       } catch (const std::exception& e) {
80255         SWIG_exception(SWIG_RuntimeError, e.what());
80256       }
80257     }
80258     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
80259     {
80260       /* increase output stack if necessary */
80261       if (argvi >= items) {
80262         EXTEND(sp,1);
80263       }
80264       /* move already existing return values to the back */
80265       for (int i = argvi; i > 0; i--) {
80266         ST(i) = ST(i - 1);
80267       }
80268       /* store result as first element in the stack */
80269       ST(0) = SWIG_NewPointerObj(SWIG_as_voidptr(retval6), SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
80270       /* increase return argument counter */
80271       argvi++;
80272     }
80273 
80274 
80275 
80276 
80277 
80278 
80279     XSRETURN(argvi);
80280   fail:
80281 
80282 
80283 
80284 
80285 
80286 
80287     SWIG_croak_null();
80288   }
80289 }
80290 
80291 
XS(_wrap_fold_compound_pbacktrack5)80292 XS(_wrap_fold_compound_pbacktrack5) {
80293   dXSARGS;
80294 
80295   {
80296     unsigned long _index = 0;
80297     SWIG_TypeRank _rank = 0;
80298     if (items == 2) {
80299       SWIG_TypeRank _ranki = 0;
80300       SWIG_TypeRank _rankm = 0;
80301       SWIG_TypeRank _pi = 1;
80302       int _v = 0;
80303       {
80304         void *vptr = 0;
80305         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
80306         _v = SWIG_CheckState(res);
80307       }
80308       if (!_v) goto check_1;
80309       _ranki += _v*_pi;
80310       _rankm += _pi;
80311       _pi *= SWIG_MAXCASTRANK;
80312       {
80313         {
80314           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
80315           _v = SWIG_CheckState(res);
80316         }
80317       }
80318       if (!_v) goto check_1;
80319       _ranki += _v*_pi;
80320       _rankm += _pi;
80321       _pi *= SWIG_MAXCASTRANK;
80322       if (!_index || (_ranki < _rank)) {
80323         _rank = _ranki; _index = 1;
80324         if (_rank == _rankm) goto dispatch;
80325       }
80326     }
80327   check_1:
80328 
80329     if (items == 3) {
80330       SWIG_TypeRank _ranki = 0;
80331       SWIG_TypeRank _rankm = 0;
80332       SWIG_TypeRank _pi = 1;
80333       int _v = 0;
80334       {
80335         void *vptr = 0;
80336         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
80337         _v = SWIG_CheckState(res);
80338       }
80339       if (!_v) goto check_2;
80340       _ranki += _v*_pi;
80341       _rankm += _pi;
80342       _pi *= SWIG_MAXCASTRANK;
80343       {
80344         {
80345           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
80346           _v = SWIG_CheckState(res);
80347         }
80348       }
80349       if (!_v) goto check_2;
80350       _ranki += _v*_pi;
80351       _rankm += _pi;
80352       _pi *= SWIG_MAXCASTRANK;
80353       {
80354         {
80355           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
80356           _v = SWIG_CheckState(res);
80357         }
80358       }
80359       if (!_v) goto check_2;
80360       _ranki += _v*_pi;
80361       _rankm += _pi;
80362       _pi *= SWIG_MAXCASTRANK;
80363       if (!_index || (_ranki < _rank)) {
80364         _rank = _ranki; _index = 2;
80365         if (_rank == _rankm) goto dispatch;
80366       }
80367     }
80368   check_2:
80369 
80370     if (items == 4) {
80371       SWIG_TypeRank _ranki = 0;
80372       SWIG_TypeRank _rankm = 0;
80373       SWIG_TypeRank _pi = 1;
80374       int _v = 0;
80375       {
80376         void *vptr = 0;
80377         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
80378         _v = SWIG_CheckState(res);
80379       }
80380       if (!_v) goto check_3;
80381       _ranki += _v*_pi;
80382       _rankm += _pi;
80383       _pi *= SWIG_MAXCASTRANK;
80384       {
80385         {
80386           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
80387           _v = SWIG_CheckState(res);
80388         }
80389       }
80390       if (!_v) goto check_3;
80391       _ranki += _v*_pi;
80392       _rankm += _pi;
80393       _pi *= SWIG_MAXCASTRANK;
80394       {
80395         {
80396           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
80397           _v = SWIG_CheckState(res);
80398         }
80399       }
80400       if (!_v) goto check_3;
80401       _ranki += _v*_pi;
80402       _rankm += _pi;
80403       _pi *= SWIG_MAXCASTRANK;
80404       {
80405         void *vptr = 0;
80406         int res = SWIG_ConvertPtr(ST(3), &vptr, SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
80407         _v = SWIG_CheckState(res);
80408       }
80409       if (!_v) goto check_3;
80410       _ranki += _v*_pi;
80411       _rankm += _pi;
80412       _pi *= SWIG_MAXCASTRANK;
80413       if (!_index || (_ranki < _rank)) {
80414         _rank = _ranki; _index = 3;
80415         if (_rank == _rankm) goto dispatch;
80416       }
80417     }
80418   check_3:
80419 
80420     if (items == 4) {
80421       SWIG_TypeRank _ranki = 0;
80422       SWIG_TypeRank _rankm = 0;
80423       SWIG_TypeRank _pi = 1;
80424       int _v = 0;
80425       {
80426         void *vptr = 0;
80427         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
80428         _v = SWIG_CheckState(res);
80429       }
80430       if (!_v) goto check_4;
80431       _ranki += _v*_pi;
80432       _rankm += _pi;
80433       _pi *= SWIG_MAXCASTRANK;
80434       {
80435         {
80436           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
80437           _v = SWIG_CheckState(res);
80438         }
80439       }
80440       if (!_v) goto check_4;
80441       _ranki += _v*_pi;
80442       _rankm += _pi;
80443       _pi *= SWIG_MAXCASTRANK;
80444       {
80445         {
80446           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
80447           _v = SWIG_CheckState(res);
80448         }
80449       }
80450       if (!_v) goto check_4;
80451       _ranki += _v*_pi;
80452       _rankm += _pi;
80453       _pi *= SWIG_MAXCASTRANK;
80454       {
80455         {
80456           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
80457           _v = SWIG_CheckState(res);
80458         }
80459       }
80460       if (!_v) goto check_4;
80461       _ranki += _v*_pi;
80462       _rankm += _pi;
80463       _pi *= SWIG_MAXCASTRANK;
80464       if (!_index || (_ranki < _rank)) {
80465         _rank = _ranki; _index = 4;
80466         if (_rank == _rankm) goto dispatch;
80467       }
80468     }
80469   check_4:
80470 
80471     if (items == 4) {
80472       SWIG_TypeRank _ranki = 0;
80473       SWIG_TypeRank _rankm = 0;
80474       SWIG_TypeRank _pi = 1;
80475       int _v = 0;
80476       {
80477         void *vptr = 0;
80478         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
80479         _v = SWIG_CheckState(res);
80480       }
80481       if (!_v) goto check_5;
80482       _ranki += _v*_pi;
80483       _rankm += _pi;
80484       _pi *= SWIG_MAXCASTRANK;
80485       {
80486         {
80487           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
80488           _v = SWIG_CheckState(res);
80489         }
80490       }
80491       if (!_v) goto check_5;
80492       _ranki += _v*_pi;
80493       _rankm += _pi;
80494       _pi *= SWIG_MAXCASTRANK;
80495       {
80496         {
80497           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
80498           _v = SWIG_CheckState(res);
80499         }
80500       }
80501       if (!_v) goto check_5;
80502       _ranki += _v*_pi;
80503       _rankm += _pi;
80504       _pi *= SWIG_MAXCASTRANK;
80505       {
80506         _v = (ST(3) != 0);
80507       }
80508       if (!_v) goto check_5;
80509       _ranki += _v*_pi;
80510       _rankm += _pi;
80511       _pi *= SWIG_MAXCASTRANK;
80512       if (!_index || (_ranki < _rank)) {
80513         _rank = _ranki; _index = 5;
80514         if (_rank == _rankm) goto dispatch;
80515       }
80516     }
80517   check_5:
80518 
80519     if (items == 5) {
80520       SWIG_TypeRank _ranki = 0;
80521       SWIG_TypeRank _rankm = 0;
80522       SWIG_TypeRank _pi = 1;
80523       int _v = 0;
80524       {
80525         void *vptr = 0;
80526         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
80527         _v = SWIG_CheckState(res);
80528       }
80529       if (!_v) goto check_6;
80530       _ranki += _v*_pi;
80531       _rankm += _pi;
80532       _pi *= SWIG_MAXCASTRANK;
80533       {
80534         {
80535           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
80536           _v = SWIG_CheckState(res);
80537         }
80538       }
80539       if (!_v) goto check_6;
80540       _ranki += _v*_pi;
80541       _rankm += _pi;
80542       _pi *= SWIG_MAXCASTRANK;
80543       {
80544         {
80545           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
80546           _v = SWIG_CheckState(res);
80547         }
80548       }
80549       if (!_v) goto check_6;
80550       _ranki += _v*_pi;
80551       _rankm += _pi;
80552       _pi *= SWIG_MAXCASTRANK;
80553       {
80554         void *vptr = 0;
80555         int res = SWIG_ConvertPtr(ST(3), &vptr, SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
80556         _v = SWIG_CheckState(res);
80557       }
80558       if (!_v) goto check_6;
80559       _ranki += _v*_pi;
80560       _rankm += _pi;
80561       _pi *= SWIG_MAXCASTRANK;
80562       {
80563         {
80564           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
80565           _v = SWIG_CheckState(res);
80566         }
80567       }
80568       if (!_v) goto check_6;
80569       _ranki += _v*_pi;
80570       _rankm += _pi;
80571       _pi *= SWIG_MAXCASTRANK;
80572       if (!_index || (_ranki < _rank)) {
80573         _rank = _ranki; _index = 6;
80574         if (_rank == _rankm) goto dispatch;
80575       }
80576     }
80577   check_6:
80578 
80579     if (items == 5) {
80580       SWIG_TypeRank _ranki = 0;
80581       SWIG_TypeRank _rankm = 0;
80582       SWIG_TypeRank _pi = 1;
80583       int _v = 0;
80584       {
80585         void *vptr = 0;
80586         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
80587         _v = SWIG_CheckState(res);
80588       }
80589       if (!_v) goto check_7;
80590       _ranki += _v*_pi;
80591       _rankm += _pi;
80592       _pi *= SWIG_MAXCASTRANK;
80593       {
80594         {
80595           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
80596           _v = SWIG_CheckState(res);
80597         }
80598       }
80599       if (!_v) goto check_7;
80600       _ranki += _v*_pi;
80601       _rankm += _pi;
80602       _pi *= SWIG_MAXCASTRANK;
80603       {
80604         {
80605           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
80606           _v = SWIG_CheckState(res);
80607         }
80608       }
80609       if (!_v) goto check_7;
80610       _ranki += _v*_pi;
80611       _rankm += _pi;
80612       _pi *= SWIG_MAXCASTRANK;
80613       {
80614         _v = (ST(3) != 0);
80615       }
80616       if (!_v) goto check_7;
80617       _ranki += _v*_pi;
80618       _rankm += _pi;
80619       _pi *= SWIG_MAXCASTRANK;
80620       {
80621         _v = (ST(4) != 0);
80622       }
80623       if (!_v) goto check_7;
80624       _ranki += _v*_pi;
80625       _rankm += _pi;
80626       _pi *= SWIG_MAXCASTRANK;
80627       if (!_index || (_ranki < _rank)) {
80628         _rank = _ranki; _index = 7;
80629         if (_rank == _rankm) goto dispatch;
80630       }
80631     }
80632   check_7:
80633 
80634     if (items == 6) {
80635       SWIG_TypeRank _ranki = 0;
80636       SWIG_TypeRank _rankm = 0;
80637       SWIG_TypeRank _pi = 1;
80638       int _v = 0;
80639       {
80640         void *vptr = 0;
80641         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
80642         _v = SWIG_CheckState(res);
80643       }
80644       if (!_v) goto check_8;
80645       _ranki += _v*_pi;
80646       _rankm += _pi;
80647       _pi *= SWIG_MAXCASTRANK;
80648       {
80649         {
80650           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
80651           _v = SWIG_CheckState(res);
80652         }
80653       }
80654       if (!_v) goto check_8;
80655       _ranki += _v*_pi;
80656       _rankm += _pi;
80657       _pi *= SWIG_MAXCASTRANK;
80658       {
80659         {
80660           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
80661           _v = SWIG_CheckState(res);
80662         }
80663       }
80664       if (!_v) goto check_8;
80665       _ranki += _v*_pi;
80666       _rankm += _pi;
80667       _pi *= SWIG_MAXCASTRANK;
80668       {
80669         _v = (ST(3) != 0);
80670       }
80671       if (!_v) goto check_8;
80672       _ranki += _v*_pi;
80673       _rankm += _pi;
80674       _pi *= SWIG_MAXCASTRANK;
80675       {
80676         _v = (ST(4) != 0);
80677       }
80678       if (!_v) goto check_8;
80679       _ranki += _v*_pi;
80680       _rankm += _pi;
80681       _pi *= SWIG_MAXCASTRANK;
80682       {
80683         void *vptr = 0;
80684         int res = SWIG_ConvertPtr(ST(5), &vptr, SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
80685         _v = SWIG_CheckState(res);
80686       }
80687       if (!_v) goto check_8;
80688       _ranki += _v*_pi;
80689       _rankm += _pi;
80690       _pi *= SWIG_MAXCASTRANK;
80691       if (!_index || (_ranki < _rank)) {
80692         _rank = _ranki; _index = 8;
80693         if (_rank == _rankm) goto dispatch;
80694       }
80695     }
80696   check_8:
80697 
80698     if (items == 6) {
80699       SWIG_TypeRank _ranki = 0;
80700       SWIG_TypeRank _rankm = 0;
80701       SWIG_TypeRank _pi = 1;
80702       int _v = 0;
80703       {
80704         void *vptr = 0;
80705         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
80706         _v = SWIG_CheckState(res);
80707       }
80708       if (!_v) goto check_9;
80709       _ranki += _v*_pi;
80710       _rankm += _pi;
80711       _pi *= SWIG_MAXCASTRANK;
80712       {
80713         {
80714           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
80715           _v = SWIG_CheckState(res);
80716         }
80717       }
80718       if (!_v) goto check_9;
80719       _ranki += _v*_pi;
80720       _rankm += _pi;
80721       _pi *= SWIG_MAXCASTRANK;
80722       {
80723         {
80724           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
80725           _v = SWIG_CheckState(res);
80726         }
80727       }
80728       if (!_v) goto check_9;
80729       _ranki += _v*_pi;
80730       _rankm += _pi;
80731       _pi *= SWIG_MAXCASTRANK;
80732       {
80733         _v = (ST(3) != 0);
80734       }
80735       if (!_v) goto check_9;
80736       _ranki += _v*_pi;
80737       _rankm += _pi;
80738       _pi *= SWIG_MAXCASTRANK;
80739       {
80740         _v = (ST(4) != 0);
80741       }
80742       if (!_v) goto check_9;
80743       _ranki += _v*_pi;
80744       _rankm += _pi;
80745       _pi *= SWIG_MAXCASTRANK;
80746       {
80747         {
80748           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(5), NULL);
80749           _v = SWIG_CheckState(res);
80750         }
80751       }
80752       if (!_v) goto check_9;
80753       _ranki += _v*_pi;
80754       _rankm += _pi;
80755       _pi *= SWIG_MAXCASTRANK;
80756       if (!_index || (_ranki < _rank)) {
80757         _rank = _ranki; _index = 9;
80758         if (_rank == _rankm) goto dispatch;
80759       }
80760     }
80761   check_9:
80762 
80763     if (items == 7) {
80764       SWIG_TypeRank _ranki = 0;
80765       SWIG_TypeRank _rankm = 0;
80766       SWIG_TypeRank _pi = 1;
80767       int _v = 0;
80768       {
80769         void *vptr = 0;
80770         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
80771         _v = SWIG_CheckState(res);
80772       }
80773       if (!_v) goto check_10;
80774       _ranki += _v*_pi;
80775       _rankm += _pi;
80776       _pi *= SWIG_MAXCASTRANK;
80777       {
80778         {
80779           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
80780           _v = SWIG_CheckState(res);
80781         }
80782       }
80783       if (!_v) goto check_10;
80784       _ranki += _v*_pi;
80785       _rankm += _pi;
80786       _pi *= SWIG_MAXCASTRANK;
80787       {
80788         {
80789           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
80790           _v = SWIG_CheckState(res);
80791         }
80792       }
80793       if (!_v) goto check_10;
80794       _ranki += _v*_pi;
80795       _rankm += _pi;
80796       _pi *= SWIG_MAXCASTRANK;
80797       {
80798         _v = (ST(3) != 0);
80799       }
80800       if (!_v) goto check_10;
80801       _ranki += _v*_pi;
80802       _rankm += _pi;
80803       _pi *= SWIG_MAXCASTRANK;
80804       {
80805         _v = (ST(4) != 0);
80806       }
80807       if (!_v) goto check_10;
80808       _ranki += _v*_pi;
80809       _rankm += _pi;
80810       _pi *= SWIG_MAXCASTRANK;
80811       {
80812         void *vptr = 0;
80813         int res = SWIG_ConvertPtr(ST(5), &vptr, SWIGTYPE_p_vrna_pbacktrack_mem_t, 0);
80814         _v = SWIG_CheckState(res);
80815       }
80816       if (!_v) goto check_10;
80817       _ranki += _v*_pi;
80818       _rankm += _pi;
80819       _pi *= SWIG_MAXCASTRANK;
80820       {
80821         {
80822           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(6), NULL);
80823           _v = SWIG_CheckState(res);
80824         }
80825       }
80826       if (!_v) goto check_10;
80827       _ranki += _v*_pi;
80828       _rankm += _pi;
80829       _pi *= SWIG_MAXCASTRANK;
80830       if (!_index || (_ranki < _rank)) {
80831         _rank = _ranki; _index = 10;
80832         if (_rank == _rankm) goto dispatch;
80833       }
80834     }
80835   check_10:
80836 
80837   dispatch:
80838     switch(_index) {
80839     case 1:
80840       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack5__SWIG_0); return;
80841     case 2:
80842       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack5__SWIG_2); return;
80843     case 3:
80844       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack5__SWIG_4); return;
80845     case 4:
80846       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack5__SWIG_1); return;
80847     case 5:
80848       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack5__SWIG_7); return;
80849     case 6:
80850       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack5__SWIG_3); return;
80851     case 7:
80852       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack5__SWIG_6); return;
80853     case 8:
80854       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack5__SWIG_9); return;
80855     case 9:
80856       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack5__SWIG_5); return;
80857     case 10:
80858       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_pbacktrack5__SWIG_8); return;
80859     }
80860   }
80861 
80862   croak("No matching function for overloaded 'fold_compound_pbacktrack5'");
80863   XSRETURN(0);
80864 }
80865 
80866 
XS(_wrap_fold_compound_mfe_window_cb__SWIG_0)80867 XS(_wrap_fold_compound_mfe_window_cb__SWIG_0) {
80868   {
80869     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
80870     SV *arg2 = (SV *) 0 ;
80871     SV *arg3 = (SV *) 0 ;
80872     void *argp1 = 0 ;
80873     int res1 = 0 ;
80874     int argvi = 0;
80875     float result;
80876     dXSARGS;
80877 
80878     if ((items < 3) || (items > 3)) {
80879       SWIG_croak("Usage: fold_compound_mfe_window_cb(self,PerlFunc,PerlData);");
80880     }
80881     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
80882     if (!SWIG_IsOK(res1)) {
80883       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_mfe_window_cb" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
80884     }
80885     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
80886     {
80887       arg2 = ST(1);
80888     }
80889     arg3 = ST(2);
80890     {
80891       try {
80892         result = (float)vrna_fold_compound_t_mfe_window_cb__SWIG_0(arg1,arg2,arg3);
80893       } catch (const std::exception& e) {
80894         SWIG_exception(SWIG_RuntimeError, e.what());
80895       }
80896     }
80897     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
80898 
80899 
80900 
80901     XSRETURN(argvi);
80902   fail:
80903 
80904 
80905 
80906     SWIG_croak_null();
80907   }
80908 }
80909 
80910 
XS(_wrap_fold_compound_mfe_window_cb__SWIG_1)80911 XS(_wrap_fold_compound_mfe_window_cb__SWIG_1) {
80912   {
80913     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
80914     SV *arg2 = (SV *) 0 ;
80915     void *argp1 = 0 ;
80916     int res1 = 0 ;
80917     int argvi = 0;
80918     float result;
80919     dXSARGS;
80920 
80921     if ((items < 2) || (items > 2)) {
80922       SWIG_croak("Usage: fold_compound_mfe_window_cb(self,PerlFunc);");
80923     }
80924     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
80925     if (!SWIG_IsOK(res1)) {
80926       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_mfe_window_cb" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
80927     }
80928     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
80929     {
80930       arg2 = ST(1);
80931     }
80932     {
80933       try {
80934         result = (float)vrna_fold_compound_t_mfe_window_cb__SWIG_0(arg1,arg2);
80935       } catch (const std::exception& e) {
80936         SWIG_exception(SWIG_RuntimeError, e.what());
80937       }
80938     }
80939     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
80940 
80941 
80942     XSRETURN(argvi);
80943   fail:
80944 
80945 
80946     SWIG_croak_null();
80947   }
80948 }
80949 
80950 
XS(_wrap_fold_compound_mfe_window_cb)80951 XS(_wrap_fold_compound_mfe_window_cb) {
80952   dXSARGS;
80953 
80954   {
80955     unsigned long _index = 0;
80956     SWIG_TypeRank _rank = 0;
80957     if (items == 2) {
80958       SWIG_TypeRank _ranki = 0;
80959       SWIG_TypeRank _rankm = 0;
80960       SWIG_TypeRank _pi = 1;
80961       int _v = 0;
80962       {
80963         void *vptr = 0;
80964         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
80965         _v = SWIG_CheckState(res);
80966       }
80967       if (!_v) goto check_1;
80968       _ranki += _v*_pi;
80969       _rankm += _pi;
80970       _pi *= SWIG_MAXCASTRANK;
80971       {
80972         _v = (ST(1) != 0);
80973       }
80974       if (!_v) goto check_1;
80975       _ranki += _v*_pi;
80976       _rankm += _pi;
80977       _pi *= SWIG_MAXCASTRANK;
80978       if (!_index || (_ranki < _rank)) {
80979         _rank = _ranki; _index = 1;
80980         if (_rank == _rankm) goto dispatch;
80981       }
80982     }
80983   check_1:
80984 
80985     if (items == 3) {
80986       SWIG_TypeRank _ranki = 0;
80987       SWIG_TypeRank _rankm = 0;
80988       SWIG_TypeRank _pi = 1;
80989       int _v = 0;
80990       {
80991         void *vptr = 0;
80992         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
80993         _v = SWIG_CheckState(res);
80994       }
80995       if (!_v) goto check_2;
80996       _ranki += _v*_pi;
80997       _rankm += _pi;
80998       _pi *= SWIG_MAXCASTRANK;
80999       {
81000         _v = (ST(1) != 0);
81001       }
81002       if (!_v) goto check_2;
81003       _ranki += _v*_pi;
81004       _rankm += _pi;
81005       _pi *= SWIG_MAXCASTRANK;
81006       {
81007         _v = (ST(2) != 0);
81008       }
81009       if (!_v) goto check_2;
81010       _ranki += _v*_pi;
81011       _rankm += _pi;
81012       _pi *= SWIG_MAXCASTRANK;
81013       if (!_index || (_ranki < _rank)) {
81014         _rank = _ranki; _index = 2;
81015         if (_rank == _rankm) goto dispatch;
81016       }
81017     }
81018   check_2:
81019 
81020   dispatch:
81021     switch(_index) {
81022     case 1:
81023       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_mfe_window_cb__SWIG_1); return;
81024     case 2:
81025       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_mfe_window_cb__SWIG_0); return;
81026     }
81027   }
81028 
81029   croak("No matching function for overloaded 'fold_compound_mfe_window_cb'");
81030   XSRETURN(0);
81031 }
81032 
81033 
XS(_wrap_fold_compound_mfe_window_zscore_cb__SWIG_0)81034 XS(_wrap_fold_compound_mfe_window_zscore_cb__SWIG_0) {
81035   {
81036     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
81037     double arg2 ;
81038     SV *arg3 = (SV *) 0 ;
81039     SV *arg4 = (SV *) 0 ;
81040     void *argp1 = 0 ;
81041     int res1 = 0 ;
81042     double val2 ;
81043     int ecode2 = 0 ;
81044     int argvi = 0;
81045     float result;
81046     dXSARGS;
81047 
81048     if ((items < 4) || (items > 4)) {
81049       SWIG_croak("Usage: fold_compound_mfe_window_zscore_cb(self,min_z,PerlFunc,PerlData);");
81050     }
81051     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
81052     if (!SWIG_IsOK(res1)) {
81053       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_mfe_window_zscore_cb" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
81054     }
81055     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
81056     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
81057     if (!SWIG_IsOK(ecode2)) {
81058       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_mfe_window_zscore_cb" "', argument " "2"" of type '" "double""'");
81059     }
81060     arg2 = static_cast< double >(val2);
81061     {
81062       arg3 = ST(2);
81063     }
81064     arg4 = ST(3);
81065     {
81066       try {
81067         result = (float)vrna_fold_compound_t_mfe_window_zscore_cb__SWIG_0(arg1,arg2,arg3,arg4);
81068       } catch (const std::exception& e) {
81069         SWIG_exception(SWIG_RuntimeError, e.what());
81070       }
81071     }
81072     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
81073 
81074 
81075 
81076 
81077     XSRETURN(argvi);
81078   fail:
81079 
81080 
81081 
81082 
81083     SWIG_croak_null();
81084   }
81085 }
81086 
81087 
XS(_wrap_fold_compound_mfe_window_zscore_cb__SWIG_1)81088 XS(_wrap_fold_compound_mfe_window_zscore_cb__SWIG_1) {
81089   {
81090     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
81091     double arg2 ;
81092     SV *arg3 = (SV *) 0 ;
81093     void *argp1 = 0 ;
81094     int res1 = 0 ;
81095     double val2 ;
81096     int ecode2 = 0 ;
81097     int argvi = 0;
81098     float result;
81099     dXSARGS;
81100 
81101     if ((items < 3) || (items > 3)) {
81102       SWIG_croak("Usage: fold_compound_mfe_window_zscore_cb(self,min_z,PerlFunc);");
81103     }
81104     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
81105     if (!SWIG_IsOK(res1)) {
81106       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_mfe_window_zscore_cb" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
81107     }
81108     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
81109     ecode2 = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
81110     if (!SWIG_IsOK(ecode2)) {
81111       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_mfe_window_zscore_cb" "', argument " "2"" of type '" "double""'");
81112     }
81113     arg2 = static_cast< double >(val2);
81114     {
81115       arg3 = ST(2);
81116     }
81117     {
81118       try {
81119         result = (float)vrna_fold_compound_t_mfe_window_zscore_cb__SWIG_0(arg1,arg2,arg3);
81120       } catch (const std::exception& e) {
81121         SWIG_exception(SWIG_RuntimeError, e.what());
81122       }
81123     }
81124     ST(argvi) = SWIG_From_float  SWIG_PERL_CALL_ARGS_1(static_cast< float >(result)); argvi++ ;
81125 
81126 
81127 
81128     XSRETURN(argvi);
81129   fail:
81130 
81131 
81132 
81133     SWIG_croak_null();
81134   }
81135 }
81136 
81137 
XS(_wrap_fold_compound_mfe_window_zscore_cb)81138 XS(_wrap_fold_compound_mfe_window_zscore_cb) {
81139   dXSARGS;
81140 
81141   {
81142     unsigned long _index = 0;
81143     SWIG_TypeRank _rank = 0;
81144     if (items == 3) {
81145       SWIG_TypeRank _ranki = 0;
81146       SWIG_TypeRank _rankm = 0;
81147       SWIG_TypeRank _pi = 1;
81148       int _v = 0;
81149       {
81150         void *vptr = 0;
81151         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
81152         _v = SWIG_CheckState(res);
81153       }
81154       if (!_v) goto check_1;
81155       _ranki += _v*_pi;
81156       _rankm += _pi;
81157       _pi *= SWIG_MAXCASTRANK;
81158       {
81159         {
81160           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
81161           _v = SWIG_CheckState(res);
81162         }
81163       }
81164       if (!_v) goto check_1;
81165       _ranki += _v*_pi;
81166       _rankm += _pi;
81167       _pi *= SWIG_MAXCASTRANK;
81168       {
81169         _v = (ST(2) != 0);
81170       }
81171       if (!_v) goto check_1;
81172       _ranki += _v*_pi;
81173       _rankm += _pi;
81174       _pi *= SWIG_MAXCASTRANK;
81175       if (!_index || (_ranki < _rank)) {
81176         _rank = _ranki; _index = 1;
81177         if (_rank == _rankm) goto dispatch;
81178       }
81179     }
81180   check_1:
81181 
81182     if (items == 4) {
81183       SWIG_TypeRank _ranki = 0;
81184       SWIG_TypeRank _rankm = 0;
81185       SWIG_TypeRank _pi = 1;
81186       int _v = 0;
81187       {
81188         void *vptr = 0;
81189         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
81190         _v = SWIG_CheckState(res);
81191       }
81192       if (!_v) goto check_2;
81193       _ranki += _v*_pi;
81194       _rankm += _pi;
81195       _pi *= SWIG_MAXCASTRANK;
81196       {
81197         {
81198           int res = SWIG_AsVal_double SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
81199           _v = SWIG_CheckState(res);
81200         }
81201       }
81202       if (!_v) goto check_2;
81203       _ranki += _v*_pi;
81204       _rankm += _pi;
81205       _pi *= SWIG_MAXCASTRANK;
81206       {
81207         _v = (ST(2) != 0);
81208       }
81209       if (!_v) goto check_2;
81210       _ranki += _v*_pi;
81211       _rankm += _pi;
81212       _pi *= SWIG_MAXCASTRANK;
81213       {
81214         _v = (ST(3) != 0);
81215       }
81216       if (!_v) goto check_2;
81217       _ranki += _v*_pi;
81218       _rankm += _pi;
81219       _pi *= SWIG_MAXCASTRANK;
81220       if (!_index || (_ranki < _rank)) {
81221         _rank = _ranki; _index = 2;
81222         if (_rank == _rankm) goto dispatch;
81223       }
81224     }
81225   check_2:
81226 
81227   dispatch:
81228     switch(_index) {
81229     case 1:
81230       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_mfe_window_zscore_cb__SWIG_1); return;
81231     case 2:
81232       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_mfe_window_zscore_cb__SWIG_0); return;
81233     }
81234   }
81235 
81236   croak("No matching function for overloaded 'fold_compound_mfe_window_zscore_cb'");
81237   XSRETURN(0);
81238 }
81239 
81240 
XS(_wrap_fold_compound_probs_window__SWIG_0)81241 XS(_wrap_fold_compound_probs_window__SWIG_0) {
81242   {
81243     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
81244     int arg2 ;
81245     unsigned int arg3 ;
81246     SV *arg4 = (SV *) 0 ;
81247     SV *arg5 = (SV *) 0 ;
81248     void *argp1 = 0 ;
81249     int res1 = 0 ;
81250     int val2 ;
81251     int ecode2 = 0 ;
81252     unsigned int val3 ;
81253     int ecode3 = 0 ;
81254     int argvi = 0;
81255     int result;
81256     dXSARGS;
81257 
81258     if ((items < 5) || (items > 5)) {
81259       SWIG_croak("Usage: fold_compound_probs_window(self,ulength,options,PerlFunc,PerlData);");
81260     }
81261     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
81262     if (!SWIG_IsOK(res1)) {
81263       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_probs_window" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
81264     }
81265     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
81266     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
81267     if (!SWIG_IsOK(ecode2)) {
81268       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_probs_window" "', argument " "2"" of type '" "int""'");
81269     }
81270     arg2 = static_cast< int >(val2);
81271     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
81272     if (!SWIG_IsOK(ecode3)) {
81273       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_probs_window" "', argument " "3"" of type '" "unsigned int""'");
81274     }
81275     arg3 = static_cast< unsigned int >(val3);
81276     {
81277       arg4 = ST(3);
81278     }
81279     arg5 = ST(4);
81280     {
81281       try {
81282         result = (int)vrna_fold_compound_t_probs_window__SWIG_0(arg1,arg2,arg3,arg4,arg5);
81283       } catch (const std::exception& e) {
81284         SWIG_exception(SWIG_RuntimeError, e.what());
81285       }
81286     }
81287     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
81288 
81289 
81290 
81291 
81292 
81293     XSRETURN(argvi);
81294   fail:
81295 
81296 
81297 
81298 
81299 
81300     SWIG_croak_null();
81301   }
81302 }
81303 
81304 
XS(_wrap_fold_compound_probs_window__SWIG_1)81305 XS(_wrap_fold_compound_probs_window__SWIG_1) {
81306   {
81307     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
81308     int arg2 ;
81309     unsigned int arg3 ;
81310     SV *arg4 = (SV *) 0 ;
81311     void *argp1 = 0 ;
81312     int res1 = 0 ;
81313     int val2 ;
81314     int ecode2 = 0 ;
81315     unsigned int val3 ;
81316     int ecode3 = 0 ;
81317     int argvi = 0;
81318     int result;
81319     dXSARGS;
81320 
81321     if ((items < 4) || (items > 4)) {
81322       SWIG_croak("Usage: fold_compound_probs_window(self,ulength,options,PerlFunc);");
81323     }
81324     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
81325     if (!SWIG_IsOK(res1)) {
81326       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_probs_window" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
81327     }
81328     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
81329     ecode2 = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
81330     if (!SWIG_IsOK(ecode2)) {
81331       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_probs_window" "', argument " "2"" of type '" "int""'");
81332     }
81333     arg2 = static_cast< int >(val2);
81334     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
81335     if (!SWIG_IsOK(ecode3)) {
81336       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_probs_window" "', argument " "3"" of type '" "unsigned int""'");
81337     }
81338     arg3 = static_cast< unsigned int >(val3);
81339     {
81340       arg4 = ST(3);
81341     }
81342     {
81343       try {
81344         result = (int)vrna_fold_compound_t_probs_window__SWIG_0(arg1,arg2,arg3,arg4);
81345       } catch (const std::exception& e) {
81346         SWIG_exception(SWIG_RuntimeError, e.what());
81347       }
81348     }
81349     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
81350 
81351 
81352 
81353 
81354     XSRETURN(argvi);
81355   fail:
81356 
81357 
81358 
81359 
81360     SWIG_croak_null();
81361   }
81362 }
81363 
81364 
XS(_wrap_fold_compound_probs_window)81365 XS(_wrap_fold_compound_probs_window) {
81366   dXSARGS;
81367 
81368   {
81369     unsigned long _index = 0;
81370     SWIG_TypeRank _rank = 0;
81371     if (items == 4) {
81372       SWIG_TypeRank _ranki = 0;
81373       SWIG_TypeRank _rankm = 0;
81374       SWIG_TypeRank _pi = 1;
81375       int _v = 0;
81376       {
81377         void *vptr = 0;
81378         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
81379         _v = SWIG_CheckState(res);
81380       }
81381       if (!_v) goto check_1;
81382       _ranki += _v*_pi;
81383       _rankm += _pi;
81384       _pi *= SWIG_MAXCASTRANK;
81385       {
81386         {
81387           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
81388           _v = SWIG_CheckState(res);
81389         }
81390       }
81391       if (!_v) goto check_1;
81392       _ranki += _v*_pi;
81393       _rankm += _pi;
81394       _pi *= SWIG_MAXCASTRANK;
81395       {
81396         {
81397           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
81398           _v = SWIG_CheckState(res);
81399         }
81400       }
81401       if (!_v) goto check_1;
81402       _ranki += _v*_pi;
81403       _rankm += _pi;
81404       _pi *= SWIG_MAXCASTRANK;
81405       {
81406         _v = (ST(3) != 0);
81407       }
81408       if (!_v) goto check_1;
81409       _ranki += _v*_pi;
81410       _rankm += _pi;
81411       _pi *= SWIG_MAXCASTRANK;
81412       if (!_index || (_ranki < _rank)) {
81413         _rank = _ranki; _index = 1;
81414         if (_rank == _rankm) goto dispatch;
81415       }
81416     }
81417   check_1:
81418 
81419     if (items == 5) {
81420       SWIG_TypeRank _ranki = 0;
81421       SWIG_TypeRank _rankm = 0;
81422       SWIG_TypeRank _pi = 1;
81423       int _v = 0;
81424       {
81425         void *vptr = 0;
81426         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
81427         _v = SWIG_CheckState(res);
81428       }
81429       if (!_v) goto check_2;
81430       _ranki += _v*_pi;
81431       _rankm += _pi;
81432       _pi *= SWIG_MAXCASTRANK;
81433       {
81434         {
81435           int res = SWIG_AsVal_int SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
81436           _v = SWIG_CheckState(res);
81437         }
81438       }
81439       if (!_v) goto check_2;
81440       _ranki += _v*_pi;
81441       _rankm += _pi;
81442       _pi *= SWIG_MAXCASTRANK;
81443       {
81444         {
81445           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
81446           _v = SWIG_CheckState(res);
81447         }
81448       }
81449       if (!_v) goto check_2;
81450       _ranki += _v*_pi;
81451       _rankm += _pi;
81452       _pi *= SWIG_MAXCASTRANK;
81453       {
81454         _v = (ST(3) != 0);
81455       }
81456       if (!_v) goto check_2;
81457       _ranki += _v*_pi;
81458       _rankm += _pi;
81459       _pi *= SWIG_MAXCASTRANK;
81460       {
81461         _v = (ST(4) != 0);
81462       }
81463       if (!_v) goto check_2;
81464       _ranki += _v*_pi;
81465       _rankm += _pi;
81466       _pi *= SWIG_MAXCASTRANK;
81467       if (!_index || (_ranki < _rank)) {
81468         _rank = _ranki; _index = 2;
81469         if (_rank == _rankm) goto dispatch;
81470       }
81471     }
81472   check_2:
81473 
81474   dispatch:
81475     switch(_index) {
81476     case 1:
81477       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_probs_window__SWIG_1); return;
81478     case 2:
81479       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_probs_window__SWIG_0); return;
81480     }
81481   }
81482 
81483   croak("No matching function for overloaded 'fold_compound_probs_window'");
81484   XSRETURN(0);
81485 }
81486 
81487 
XS(_wrap_fold_compound_heat_capacity_cb__SWIG_0)81488 XS(_wrap_fold_compound_heat_capacity_cb__SWIG_0) {
81489   {
81490     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
81491     float arg2 ;
81492     float arg3 ;
81493     float arg4 ;
81494     unsigned int arg5 ;
81495     SV *arg6 = (SV *) 0 ;
81496     SV *arg7 = (SV *) 0 ;
81497     void *argp1 = 0 ;
81498     int res1 = 0 ;
81499     float val2 ;
81500     int ecode2 = 0 ;
81501     float val3 ;
81502     int ecode3 = 0 ;
81503     float val4 ;
81504     int ecode4 = 0 ;
81505     unsigned int val5 ;
81506     int ecode5 = 0 ;
81507     int argvi = 0;
81508     dXSARGS;
81509 
81510     if ((items < 7) || (items > 7)) {
81511       SWIG_croak("Usage: fold_compound_heat_capacity_cb(self,T_min,T_max,T_increment,mpoints,PerlFunc,PerlData);");
81512     }
81513     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
81514     if (!SWIG_IsOK(res1)) {
81515       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_heat_capacity_cb" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
81516     }
81517     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
81518     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
81519     if (!SWIG_IsOK(ecode2)) {
81520       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_heat_capacity_cb" "', argument " "2"" of type '" "float""'");
81521     }
81522     arg2 = static_cast< float >(val2);
81523     ecode3 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
81524     if (!SWIG_IsOK(ecode3)) {
81525       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_heat_capacity_cb" "', argument " "3"" of type '" "float""'");
81526     }
81527     arg3 = static_cast< float >(val3);
81528     ecode4 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
81529     if (!SWIG_IsOK(ecode4)) {
81530       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_heat_capacity_cb" "', argument " "4"" of type '" "float""'");
81531     }
81532     arg4 = static_cast< float >(val4);
81533     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
81534     if (!SWIG_IsOK(ecode5)) {
81535       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_heat_capacity_cb" "', argument " "5"" of type '" "unsigned int""'");
81536     }
81537     arg5 = static_cast< unsigned int >(val5);
81538     {
81539       arg6 = ST(5);
81540     }
81541     arg7 = ST(6);
81542     {
81543       try {
81544         vrna_fold_compound_t_heat_capacity_cb__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6,arg7);
81545       } catch (const std::exception& e) {
81546         SWIG_exception(SWIG_RuntimeError, e.what());
81547       }
81548     }
81549     ST(argvi) = &PL_sv_undef;
81550 
81551 
81552 
81553 
81554 
81555 
81556 
81557     XSRETURN(argvi);
81558   fail:
81559 
81560 
81561 
81562 
81563 
81564 
81565 
81566     SWIG_croak_null();
81567   }
81568 }
81569 
81570 
XS(_wrap_fold_compound_heat_capacity_cb__SWIG_1)81571 XS(_wrap_fold_compound_heat_capacity_cb__SWIG_1) {
81572   {
81573     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
81574     float arg2 ;
81575     float arg3 ;
81576     float arg4 ;
81577     unsigned int arg5 ;
81578     SV *arg6 = (SV *) 0 ;
81579     void *argp1 = 0 ;
81580     int res1 = 0 ;
81581     float val2 ;
81582     int ecode2 = 0 ;
81583     float val3 ;
81584     int ecode3 = 0 ;
81585     float val4 ;
81586     int ecode4 = 0 ;
81587     unsigned int val5 ;
81588     int ecode5 = 0 ;
81589     int argvi = 0;
81590     dXSARGS;
81591 
81592     if ((items < 6) || (items > 6)) {
81593       SWIG_croak("Usage: fold_compound_heat_capacity_cb(self,T_min,T_max,T_increment,mpoints,PerlFunc);");
81594     }
81595     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
81596     if (!SWIG_IsOK(res1)) {
81597       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_heat_capacity_cb" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
81598     }
81599     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
81600     ecode2 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), &val2);
81601     if (!SWIG_IsOK(ecode2)) {
81602       SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "fold_compound_heat_capacity_cb" "', argument " "2"" of type '" "float""'");
81603     }
81604     arg2 = static_cast< float >(val2);
81605     ecode3 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
81606     if (!SWIG_IsOK(ecode3)) {
81607       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "fold_compound_heat_capacity_cb" "', argument " "3"" of type '" "float""'");
81608     }
81609     arg3 = static_cast< float >(val3);
81610     ecode4 = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(3), &val4);
81611     if (!SWIG_IsOK(ecode4)) {
81612       SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "fold_compound_heat_capacity_cb" "', argument " "4"" of type '" "float""'");
81613     }
81614     arg4 = static_cast< float >(val4);
81615     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
81616     if (!SWIG_IsOK(ecode5)) {
81617       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "fold_compound_heat_capacity_cb" "', argument " "5"" of type '" "unsigned int""'");
81618     }
81619     arg5 = static_cast< unsigned int >(val5);
81620     {
81621       arg6 = ST(5);
81622     }
81623     {
81624       try {
81625         vrna_fold_compound_t_heat_capacity_cb__SWIG_0(arg1,arg2,arg3,arg4,arg5,arg6);
81626       } catch (const std::exception& e) {
81627         SWIG_exception(SWIG_RuntimeError, e.what());
81628       }
81629     }
81630     ST(argvi) = &PL_sv_undef;
81631 
81632 
81633 
81634 
81635 
81636 
81637     XSRETURN(argvi);
81638   fail:
81639 
81640 
81641 
81642 
81643 
81644 
81645     SWIG_croak_null();
81646   }
81647 }
81648 
81649 
XS(_wrap_fold_compound_heat_capacity_cb)81650 XS(_wrap_fold_compound_heat_capacity_cb) {
81651   dXSARGS;
81652 
81653   {
81654     unsigned long _index = 0;
81655     SWIG_TypeRank _rank = 0;
81656     if (items == 6) {
81657       SWIG_TypeRank _ranki = 0;
81658       SWIG_TypeRank _rankm = 0;
81659       SWIG_TypeRank _pi = 1;
81660       int _v = 0;
81661       {
81662         void *vptr = 0;
81663         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
81664         _v = SWIG_CheckState(res);
81665       }
81666       if (!_v) goto check_1;
81667       _ranki += _v*_pi;
81668       _rankm += _pi;
81669       _pi *= SWIG_MAXCASTRANK;
81670       {
81671         {
81672           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
81673           _v = SWIG_CheckState(res);
81674         }
81675       }
81676       if (!_v) goto check_1;
81677       _ranki += _v*_pi;
81678       _rankm += _pi;
81679       _pi *= SWIG_MAXCASTRANK;
81680       {
81681         {
81682           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
81683           _v = SWIG_CheckState(res);
81684         }
81685       }
81686       if (!_v) goto check_1;
81687       _ranki += _v*_pi;
81688       _rankm += _pi;
81689       _pi *= SWIG_MAXCASTRANK;
81690       {
81691         {
81692           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
81693           _v = SWIG_CheckState(res);
81694         }
81695       }
81696       if (!_v) goto check_1;
81697       _ranki += _v*_pi;
81698       _rankm += _pi;
81699       _pi *= SWIG_MAXCASTRANK;
81700       {
81701         {
81702           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
81703           _v = SWIG_CheckState(res);
81704         }
81705       }
81706       if (!_v) goto check_1;
81707       _ranki += _v*_pi;
81708       _rankm += _pi;
81709       _pi *= SWIG_MAXCASTRANK;
81710       {
81711         _v = (ST(5) != 0);
81712       }
81713       if (!_v) goto check_1;
81714       _ranki += _v*_pi;
81715       _rankm += _pi;
81716       _pi *= SWIG_MAXCASTRANK;
81717       if (!_index || (_ranki < _rank)) {
81718         _rank = _ranki; _index = 1;
81719         if (_rank == _rankm) goto dispatch;
81720       }
81721     }
81722   check_1:
81723 
81724     if (items == 7) {
81725       SWIG_TypeRank _ranki = 0;
81726       SWIG_TypeRank _rankm = 0;
81727       SWIG_TypeRank _pi = 1;
81728       int _v = 0;
81729       {
81730         void *vptr = 0;
81731         int res = SWIG_ConvertPtr(ST(0), &vptr, SWIGTYPE_p_vrna_fold_compound_t, 0);
81732         _v = SWIG_CheckState(res);
81733       }
81734       if (!_v) goto check_2;
81735       _ranki += _v*_pi;
81736       _rankm += _pi;
81737       _pi *= SWIG_MAXCASTRANK;
81738       {
81739         {
81740           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(1), NULL);
81741           _v = SWIG_CheckState(res);
81742         }
81743       }
81744       if (!_v) goto check_2;
81745       _ranki += _v*_pi;
81746       _rankm += _pi;
81747       _pi *= SWIG_MAXCASTRANK;
81748       {
81749         {
81750           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
81751           _v = SWIG_CheckState(res);
81752         }
81753       }
81754       if (!_v) goto check_2;
81755       _ranki += _v*_pi;
81756       _rankm += _pi;
81757       _pi *= SWIG_MAXCASTRANK;
81758       {
81759         {
81760           int res = SWIG_AsVal_float SWIG_PERL_CALL_ARGS_2(ST(3), NULL);
81761           _v = SWIG_CheckState(res);
81762         }
81763       }
81764       if (!_v) goto check_2;
81765       _ranki += _v*_pi;
81766       _rankm += _pi;
81767       _pi *= SWIG_MAXCASTRANK;
81768       {
81769         {
81770           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
81771           _v = SWIG_CheckState(res);
81772         }
81773       }
81774       if (!_v) goto check_2;
81775       _ranki += _v*_pi;
81776       _rankm += _pi;
81777       _pi *= SWIG_MAXCASTRANK;
81778       {
81779         _v = (ST(5) != 0);
81780       }
81781       if (!_v) goto check_2;
81782       _ranki += _v*_pi;
81783       _rankm += _pi;
81784       _pi *= SWIG_MAXCASTRANK;
81785       {
81786         _v = (ST(6) != 0);
81787       }
81788       if (!_v) goto check_2;
81789       _ranki += _v*_pi;
81790       _rankm += _pi;
81791       _pi *= SWIG_MAXCASTRANK;
81792       if (!_index || (_ranki < _rank)) {
81793         _rank = _ranki; _index = 2;
81794         if (_rank == _rankm) goto dispatch;
81795       }
81796     }
81797   check_2:
81798 
81799   dispatch:
81800     switch(_index) {
81801     case 1:
81802       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_heat_capacity_cb__SWIG_1); return;
81803     case 2:
81804       PUSHMARK(MARK); SWIG_CALLXS(_wrap_fold_compound_heat_capacity_cb__SWIG_0); return;
81805     }
81806   }
81807 
81808   croak("No matching function for overloaded 'fold_compound_heat_capacity_cb'");
81809   XSRETURN(0);
81810 }
81811 
81812 
XS(_wrap_fold_compound_type_get)81813 XS(_wrap_fold_compound_type_get) {
81814   {
81815     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
81816     void *argp1 = 0 ;
81817     int res1 = 0 ;
81818     int argvi = 0;
81819     vrna_fc_type_e result;
81820     dXSARGS;
81821 
81822     if ((items < 1) || (items > 1)) {
81823       SWIG_croak("Usage: fold_compound_type_get(self);");
81824     }
81825     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
81826     if (!SWIG_IsOK(res1)) {
81827       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_type_get" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
81828     }
81829     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
81830     result = (vrna_fc_type_e)(vrna_fc_type_e) ((arg1)->type);
81831     ST(argvi) = SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(result)); argvi++ ;
81832 
81833     XSRETURN(argvi);
81834   fail:
81835 
81836     SWIG_croak_null();
81837   }
81838 }
81839 
81840 
XS(_wrap_fold_compound_length_get)81841 XS(_wrap_fold_compound_length_get) {
81842   {
81843     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
81844     void *argp1 = 0 ;
81845     int res1 = 0 ;
81846     int argvi = 0;
81847     unsigned int result;
81848     dXSARGS;
81849 
81850     if ((items < 1) || (items > 1)) {
81851       SWIG_croak("Usage: fold_compound_length_get(self);");
81852     }
81853     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
81854     if (!SWIG_IsOK(res1)) {
81855       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_length_get" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
81856     }
81857     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
81858     result = (unsigned int)(unsigned int) ((arg1)->length);
81859     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
81860 
81861     XSRETURN(argvi);
81862   fail:
81863 
81864     SWIG_croak_null();
81865   }
81866 }
81867 
81868 
XS(_wrap_fold_compound_strands_get)81869 XS(_wrap_fold_compound_strands_get) {
81870   {
81871     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
81872     void *argp1 = 0 ;
81873     int res1 = 0 ;
81874     int argvi = 0;
81875     unsigned int result;
81876     dXSARGS;
81877 
81878     if ((items < 1) || (items > 1)) {
81879       SWIG_croak("Usage: fold_compound_strands_get(self);");
81880     }
81881     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
81882     if (!SWIG_IsOK(res1)) {
81883       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_strands_get" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
81884     }
81885     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
81886     result = (unsigned int)(unsigned int) ((arg1)->strands);
81887     ST(argvi) = SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(result)); argvi++ ;
81888 
81889     XSRETURN(argvi);
81890   fail:
81891 
81892     SWIG_croak_null();
81893   }
81894 }
81895 
81896 
XS(_wrap_fold_compound_params_get)81897 XS(_wrap_fold_compound_params_get) {
81898   {
81899     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
81900     void *argp1 = 0 ;
81901     int res1 = 0 ;
81902     int argvi = 0;
81903     vrna_param_t *result = 0 ;
81904     dXSARGS;
81905 
81906     if ((items < 1) || (items > 1)) {
81907       SWIG_croak("Usage: fold_compound_params_get(self);");
81908     }
81909     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
81910     if (!SWIG_IsOK(res1)) {
81911       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_params_get" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
81912     }
81913     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
81914     result = (vrna_param_t *)(vrna_param_t *) ((arg1)->params);
81915     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_param_t, 0 | SWIG_SHADOW); argvi++ ;
81916 
81917     XSRETURN(argvi);
81918   fail:
81919 
81920     SWIG_croak_null();
81921   }
81922 }
81923 
81924 
XS(_wrap_fold_compound_exp_params_get)81925 XS(_wrap_fold_compound_exp_params_get) {
81926   {
81927     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
81928     void *argp1 = 0 ;
81929     int res1 = 0 ;
81930     int argvi = 0;
81931     vrna_exp_param_t *result = 0 ;
81932     dXSARGS;
81933 
81934     if ((items < 1) || (items > 1)) {
81935       SWIG_croak("Usage: fold_compound_exp_params_get(self);");
81936     }
81937     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, 0 |  0 );
81938     if (!SWIG_IsOK(res1)) {
81939       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "fold_compound_exp_params_get" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
81940     }
81941     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
81942     result = (vrna_exp_param_t *)(vrna_exp_param_t *) ((arg1)->exp_params);
81943     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_exp_param_t, 0 | SWIG_SHADOW); argvi++ ;
81944 
81945     XSRETURN(argvi);
81946   fail:
81947 
81948     SWIG_croak_null();
81949   }
81950 }
81951 
81952 
XS(_wrap_new_fold_compound__SWIG_0)81953 XS(_wrap_new_fold_compound__SWIG_0) {
81954   {
81955     char *arg1 = (char *) 0 ;
81956     vrna_md_t *arg2 = (vrna_md_t *) 0 ;
81957     unsigned int arg3 ;
81958     int res1 ;
81959     char *buf1 = 0 ;
81960     int alloc1 = 0 ;
81961     void *argp2 = 0 ;
81962     int res2 = 0 ;
81963     unsigned int val3 ;
81964     int ecode3 = 0 ;
81965     int argvi = 0;
81966     vrna_fold_compound_t *result = 0 ;
81967     dXSARGS;
81968 
81969     if ((items < 3) || (items > 3)) {
81970       SWIG_croak("Usage: new_fold_compound(sequence,md,options);");
81971     }
81972     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
81973     if (!SWIG_IsOK(res1)) {
81974       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_fold_compound" "', argument " "1"" of type '" "char const *""'");
81975     }
81976     arg1 = reinterpret_cast< char * >(buf1);
81977     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_md_t, 0 |  0 );
81978     if (!SWIG_IsOK(res2)) {
81979       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_fold_compound" "', argument " "2"" of type '" "vrna_md_t *""'");
81980     }
81981     arg2 = reinterpret_cast< vrna_md_t * >(argp2);
81982     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
81983     if (!SWIG_IsOK(ecode3)) {
81984       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_fold_compound" "', argument " "3"" of type '" "unsigned int""'");
81985     }
81986     arg3 = static_cast< unsigned int >(val3);
81987     {
81988       try {
81989         result = (vrna_fold_compound_t *)new_vrna_fold_compound_t__SWIG_0((char const *)arg1,arg2,arg3);
81990       } catch (const std::exception& e) {
81991         SWIG_exception(SWIG_RuntimeError, e.what());
81992       }
81993     }
81994     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_fold_compound_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
81995     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
81996 
81997 
81998     XSRETURN(argvi);
81999   fail:
82000     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
82001 
82002 
82003     SWIG_croak_null();
82004   }
82005 }
82006 
82007 
XS(_wrap_new_fold_compound__SWIG_1)82008 XS(_wrap_new_fold_compound__SWIG_1) {
82009   {
82010     char *arg1 = (char *) 0 ;
82011     vrna_md_t *arg2 = (vrna_md_t *) 0 ;
82012     int res1 ;
82013     char *buf1 = 0 ;
82014     int alloc1 = 0 ;
82015     void *argp2 = 0 ;
82016     int res2 = 0 ;
82017     int argvi = 0;
82018     vrna_fold_compound_t *result = 0 ;
82019     dXSARGS;
82020 
82021     if ((items < 2) || (items > 2)) {
82022       SWIG_croak("Usage: new_fold_compound(sequence,md);");
82023     }
82024     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
82025     if (!SWIG_IsOK(res1)) {
82026       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_fold_compound" "', argument " "1"" of type '" "char const *""'");
82027     }
82028     arg1 = reinterpret_cast< char * >(buf1);
82029     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_md_t, 0 |  0 );
82030     if (!SWIG_IsOK(res2)) {
82031       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_fold_compound" "', argument " "2"" of type '" "vrna_md_t *""'");
82032     }
82033     arg2 = reinterpret_cast< vrna_md_t * >(argp2);
82034     {
82035       try {
82036         result = (vrna_fold_compound_t *)new_vrna_fold_compound_t__SWIG_0((char const *)arg1,arg2);
82037       } catch (const std::exception& e) {
82038         SWIG_exception(SWIG_RuntimeError, e.what());
82039       }
82040     }
82041     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_fold_compound_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
82042     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
82043 
82044     XSRETURN(argvi);
82045   fail:
82046     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
82047 
82048     SWIG_croak_null();
82049   }
82050 }
82051 
82052 
XS(_wrap_new_fold_compound__SWIG_2)82053 XS(_wrap_new_fold_compound__SWIG_2) {
82054   {
82055     char *arg1 = (char *) 0 ;
82056     int res1 ;
82057     char *buf1 = 0 ;
82058     int alloc1 = 0 ;
82059     int argvi = 0;
82060     vrna_fold_compound_t *result = 0 ;
82061     dXSARGS;
82062 
82063     if ((items < 1) || (items > 1)) {
82064       SWIG_croak("Usage: new_fold_compound(sequence);");
82065     }
82066     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
82067     if (!SWIG_IsOK(res1)) {
82068       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_fold_compound" "', argument " "1"" of type '" "char const *""'");
82069     }
82070     arg1 = reinterpret_cast< char * >(buf1);
82071     {
82072       try {
82073         result = (vrna_fold_compound_t *)new_vrna_fold_compound_t__SWIG_0((char const *)arg1);
82074       } catch (const std::exception& e) {
82075         SWIG_exception(SWIG_RuntimeError, e.what());
82076       }
82077     }
82078     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_fold_compound_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
82079     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
82080     XSRETURN(argvi);
82081   fail:
82082     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
82083     SWIG_croak_null();
82084   }
82085 }
82086 
82087 
XS(_wrap_new_fold_compound__SWIG_3)82088 XS(_wrap_new_fold_compound__SWIG_3) {
82089   {
82090     std::vector< std::string > arg1 ;
82091     vrna_md_t *arg2 = (vrna_md_t *) 0 ;
82092     unsigned int arg3 ;
82093     std::vector< std::string > *v1 ;
82094     void *argp2 = 0 ;
82095     int res2 = 0 ;
82096     unsigned int val3 ;
82097     int ecode3 = 0 ;
82098     int argvi = 0;
82099     vrna_fold_compound_t *result = 0 ;
82100     dXSARGS;
82101 
82102     if ((items < 3) || (items > 3)) {
82103       SWIG_croak("Usage: new_fold_compound(alignment,md,options);");
82104     }
82105     {
82106       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
82107           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
82108         arg1 = *v1;
82109       } else if (SvROK(ST(0))) {
82110         AV *av = (AV *)SvRV(ST(0));
82111         if (SvTYPE(av) != SVt_PVAV)
82112         SWIG_croak("Type error in argument 1 of new_fold_compound. "
82113           "Expected an array of ""std::string");
82114         SV **tv;
82115         I32 len = av_len(av) + 1;
82116         for (int i=0; i<len; i++) {
82117           tv = av_fetch(av, i, 0);
82118           if (SvPOK(*tv)) {
82119             (&arg1)->push_back((std::string)SwigSvToString(*tv));
82120           } else {
82121             SWIG_croak("Type error in argument 1 of "
82122               "new_fold_compound. "
82123               "Expected an array of ""std::string");
82124           }
82125         }
82126       } else {
82127         SWIG_croak("Type error in argument 1 of new_fold_compound. "
82128           "Expected an array of ""std::string");
82129       }
82130     }
82131     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_md_t, 0 |  0 );
82132     if (!SWIG_IsOK(res2)) {
82133       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_fold_compound" "', argument " "2"" of type '" "vrna_md_t *""'");
82134     }
82135     arg2 = reinterpret_cast< vrna_md_t * >(argp2);
82136     ecode3 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), &val3);
82137     if (!SWIG_IsOK(ecode3)) {
82138       SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_fold_compound" "', argument " "3"" of type '" "unsigned int""'");
82139     }
82140     arg3 = static_cast< unsigned int >(val3);
82141     {
82142       try {
82143         result = (vrna_fold_compound_t *)new_vrna_fold_compound_t__SWIG_3(arg1,arg2,arg3);
82144       } catch (const std::exception& e) {
82145         SWIG_exception(SWIG_RuntimeError, e.what());
82146       }
82147     }
82148     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_fold_compound_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
82149 
82150 
82151     XSRETURN(argvi);
82152   fail:
82153 
82154 
82155     SWIG_croak_null();
82156   }
82157 }
82158 
82159 
XS(_wrap_new_fold_compound__SWIG_4)82160 XS(_wrap_new_fold_compound__SWIG_4) {
82161   {
82162     std::vector< std::string > arg1 ;
82163     vrna_md_t *arg2 = (vrna_md_t *) 0 ;
82164     std::vector< std::string > *v1 ;
82165     void *argp2 = 0 ;
82166     int res2 = 0 ;
82167     int argvi = 0;
82168     vrna_fold_compound_t *result = 0 ;
82169     dXSARGS;
82170 
82171     if ((items < 2) || (items > 2)) {
82172       SWIG_croak("Usage: new_fold_compound(alignment,md);");
82173     }
82174     {
82175       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
82176           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
82177         arg1 = *v1;
82178       } else if (SvROK(ST(0))) {
82179         AV *av = (AV *)SvRV(ST(0));
82180         if (SvTYPE(av) != SVt_PVAV)
82181         SWIG_croak("Type error in argument 1 of new_fold_compound. "
82182           "Expected an array of ""std::string");
82183         SV **tv;
82184         I32 len = av_len(av) + 1;
82185         for (int i=0; i<len; i++) {
82186           tv = av_fetch(av, i, 0);
82187           if (SvPOK(*tv)) {
82188             (&arg1)->push_back((std::string)SwigSvToString(*tv));
82189           } else {
82190             SWIG_croak("Type error in argument 1 of "
82191               "new_fold_compound. "
82192               "Expected an array of ""std::string");
82193           }
82194         }
82195       } else {
82196         SWIG_croak("Type error in argument 1 of new_fold_compound. "
82197           "Expected an array of ""std::string");
82198       }
82199     }
82200     res2 = SWIG_ConvertPtr(ST(1), &argp2,SWIGTYPE_p_vrna_md_t, 0 |  0 );
82201     if (!SWIG_IsOK(res2)) {
82202       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_fold_compound" "', argument " "2"" of type '" "vrna_md_t *""'");
82203     }
82204     arg2 = reinterpret_cast< vrna_md_t * >(argp2);
82205     {
82206       try {
82207         result = (vrna_fold_compound_t *)new_vrna_fold_compound_t__SWIG_3(arg1,arg2);
82208       } catch (const std::exception& e) {
82209         SWIG_exception(SWIG_RuntimeError, e.what());
82210       }
82211     }
82212     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_fold_compound_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
82213 
82214     XSRETURN(argvi);
82215   fail:
82216 
82217     SWIG_croak_null();
82218   }
82219 }
82220 
82221 
XS(_wrap_new_fold_compound__SWIG_5)82222 XS(_wrap_new_fold_compound__SWIG_5) {
82223   {
82224     std::vector< std::string > arg1 ;
82225     std::vector< std::string > *v1 ;
82226     int argvi = 0;
82227     vrna_fold_compound_t *result = 0 ;
82228     dXSARGS;
82229 
82230     if ((items < 1) || (items > 1)) {
82231       SWIG_croak("Usage: new_fold_compound(alignment);");
82232     }
82233     {
82234       if (SWIG_ConvertPtr(ST(0),(void **) &v1,
82235           SWIGTYPE_p_std__vectorT_std__string_t,1) != -1){
82236         arg1 = *v1;
82237       } else if (SvROK(ST(0))) {
82238         AV *av = (AV *)SvRV(ST(0));
82239         if (SvTYPE(av) != SVt_PVAV)
82240         SWIG_croak("Type error in argument 1 of new_fold_compound. "
82241           "Expected an array of ""std::string");
82242         SV **tv;
82243         I32 len = av_len(av) + 1;
82244         for (int i=0; i<len; i++) {
82245           tv = av_fetch(av, i, 0);
82246           if (SvPOK(*tv)) {
82247             (&arg1)->push_back((std::string)SwigSvToString(*tv));
82248           } else {
82249             SWIG_croak("Type error in argument 1 of "
82250               "new_fold_compound. "
82251               "Expected an array of ""std::string");
82252           }
82253         }
82254       } else {
82255         SWIG_croak("Type error in argument 1 of new_fold_compound. "
82256           "Expected an array of ""std::string");
82257       }
82258     }
82259     {
82260       try {
82261         result = (vrna_fold_compound_t *)new_vrna_fold_compound_t__SWIG_3(arg1);
82262       } catch (const std::exception& e) {
82263         SWIG_exception(SWIG_RuntimeError, e.what());
82264       }
82265     }
82266     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_fold_compound_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
82267     XSRETURN(argvi);
82268   fail:
82269     SWIG_croak_null();
82270   }
82271 }
82272 
82273 
XS(_wrap_new_fold_compound__SWIG_6)82274 XS(_wrap_new_fold_compound__SWIG_6) {
82275   {
82276     char *arg1 = (char *) 0 ;
82277     char *arg2 = (char *) 0 ;
82278     char *arg3 = (char *) 0 ;
82279     vrna_md_t *arg4 = (vrna_md_t *) 0 ;
82280     unsigned int arg5 ;
82281     int res1 ;
82282     char *buf1 = 0 ;
82283     int alloc1 = 0 ;
82284     int res2 ;
82285     char *buf2 = 0 ;
82286     int alloc2 = 0 ;
82287     int res3 ;
82288     char *buf3 = 0 ;
82289     int alloc3 = 0 ;
82290     void *argp4 = 0 ;
82291     int res4 = 0 ;
82292     unsigned int val5 ;
82293     int ecode5 = 0 ;
82294     int argvi = 0;
82295     vrna_fold_compound_t *result = 0 ;
82296     dXSARGS;
82297 
82298     if ((items < 5) || (items > 5)) {
82299       SWIG_croak("Usage: new_fold_compound(sequence,s1,s2,md,options);");
82300     }
82301     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
82302     if (!SWIG_IsOK(res1)) {
82303       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_fold_compound" "', argument " "1"" of type '" "char const *""'");
82304     }
82305     arg1 = reinterpret_cast< char * >(buf1);
82306     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
82307     if (!SWIG_IsOK(res2)) {
82308       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_fold_compound" "', argument " "2"" of type '" "char *""'");
82309     }
82310     arg2 = reinterpret_cast< char * >(buf2);
82311     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
82312     if (!SWIG_IsOK(res3)) {
82313       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "new_fold_compound" "', argument " "3"" of type '" "char *""'");
82314     }
82315     arg3 = reinterpret_cast< char * >(buf3);
82316     res4 = SWIG_ConvertPtr(ST(3), &argp4,SWIGTYPE_p_vrna_md_t, 0 |  0 );
82317     if (!SWIG_IsOK(res4)) {
82318       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "new_fold_compound" "', argument " "4"" of type '" "vrna_md_t *""'");
82319     }
82320     arg4 = reinterpret_cast< vrna_md_t * >(argp4);
82321     ecode5 = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), &val5);
82322     if (!SWIG_IsOK(ecode5)) {
82323       SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_fold_compound" "', argument " "5"" of type '" "unsigned int""'");
82324     }
82325     arg5 = static_cast< unsigned int >(val5);
82326     {
82327       try {
82328         result = (vrna_fold_compound_t *)new_vrna_fold_compound_t__SWIG_6((char const *)arg1,arg2,arg3,arg4,arg5);
82329       } catch (const std::exception& e) {
82330         SWIG_exception(SWIG_RuntimeError, e.what());
82331       }
82332     }
82333     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_fold_compound_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
82334     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
82335     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
82336     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
82337 
82338 
82339     XSRETURN(argvi);
82340   fail:
82341     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
82342     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
82343     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
82344 
82345 
82346     SWIG_croak_null();
82347   }
82348 }
82349 
82350 
XS(_wrap_new_fold_compound__SWIG_7)82351 XS(_wrap_new_fold_compound__SWIG_7) {
82352   {
82353     char *arg1 = (char *) 0 ;
82354     char *arg2 = (char *) 0 ;
82355     char *arg3 = (char *) 0 ;
82356     vrna_md_t *arg4 = (vrna_md_t *) 0 ;
82357     int res1 ;
82358     char *buf1 = 0 ;
82359     int alloc1 = 0 ;
82360     int res2 ;
82361     char *buf2 = 0 ;
82362     int alloc2 = 0 ;
82363     int res3 ;
82364     char *buf3 = 0 ;
82365     int alloc3 = 0 ;
82366     void *argp4 = 0 ;
82367     int res4 = 0 ;
82368     int argvi = 0;
82369     vrna_fold_compound_t *result = 0 ;
82370     dXSARGS;
82371 
82372     if ((items < 4) || (items > 4)) {
82373       SWIG_croak("Usage: new_fold_compound(sequence,s1,s2,md);");
82374     }
82375     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
82376     if (!SWIG_IsOK(res1)) {
82377       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_fold_compound" "', argument " "1"" of type '" "char const *""'");
82378     }
82379     arg1 = reinterpret_cast< char * >(buf1);
82380     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
82381     if (!SWIG_IsOK(res2)) {
82382       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_fold_compound" "', argument " "2"" of type '" "char *""'");
82383     }
82384     arg2 = reinterpret_cast< char * >(buf2);
82385     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
82386     if (!SWIG_IsOK(res3)) {
82387       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "new_fold_compound" "', argument " "3"" of type '" "char *""'");
82388     }
82389     arg3 = reinterpret_cast< char * >(buf3);
82390     res4 = SWIG_ConvertPtr(ST(3), &argp4,SWIGTYPE_p_vrna_md_t, 0 |  0 );
82391     if (!SWIG_IsOK(res4)) {
82392       SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "new_fold_compound" "', argument " "4"" of type '" "vrna_md_t *""'");
82393     }
82394     arg4 = reinterpret_cast< vrna_md_t * >(argp4);
82395     {
82396       try {
82397         result = (vrna_fold_compound_t *)new_vrna_fold_compound_t__SWIG_6((char const *)arg1,arg2,arg3,arg4);
82398       } catch (const std::exception& e) {
82399         SWIG_exception(SWIG_RuntimeError, e.what());
82400       }
82401     }
82402     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_fold_compound_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
82403     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
82404     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
82405     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
82406 
82407     XSRETURN(argvi);
82408   fail:
82409     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
82410     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
82411     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
82412 
82413     SWIG_croak_null();
82414   }
82415 }
82416 
82417 
XS(_wrap_new_fold_compound__SWIG_8)82418 XS(_wrap_new_fold_compound__SWIG_8) {
82419   {
82420     char *arg1 = (char *) 0 ;
82421     char *arg2 = (char *) 0 ;
82422     char *arg3 = (char *) 0 ;
82423     int res1 ;
82424     char *buf1 = 0 ;
82425     int alloc1 = 0 ;
82426     int res2 ;
82427     char *buf2 = 0 ;
82428     int alloc2 = 0 ;
82429     int res3 ;
82430     char *buf3 = 0 ;
82431     int alloc3 = 0 ;
82432     int argvi = 0;
82433     vrna_fold_compound_t *result = 0 ;
82434     dXSARGS;
82435 
82436     if ((items < 3) || (items > 3)) {
82437       SWIG_croak("Usage: new_fold_compound(sequence,s1,s2);");
82438     }
82439     res1 = SWIG_AsCharPtrAndSize(ST(0), &buf1, NULL, &alloc1);
82440     if (!SWIG_IsOK(res1)) {
82441       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_fold_compound" "', argument " "1"" of type '" "char const *""'");
82442     }
82443     arg1 = reinterpret_cast< char * >(buf1);
82444     res2 = SWIG_AsCharPtrAndSize(ST(1), &buf2, NULL, &alloc2);
82445     if (!SWIG_IsOK(res2)) {
82446       SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_fold_compound" "', argument " "2"" of type '" "char *""'");
82447     }
82448     arg2 = reinterpret_cast< char * >(buf2);
82449     res3 = SWIG_AsCharPtrAndSize(ST(2), &buf3, NULL, &alloc3);
82450     if (!SWIG_IsOK(res3)) {
82451       SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "new_fold_compound" "', argument " "3"" of type '" "char *""'");
82452     }
82453     arg3 = reinterpret_cast< char * >(buf3);
82454     {
82455       try {
82456         result = (vrna_fold_compound_t *)new_vrna_fold_compound_t__SWIG_6((char const *)arg1,arg2,arg3);
82457       } catch (const std::exception& e) {
82458         SWIG_exception(SWIG_RuntimeError, e.what());
82459       }
82460     }
82461     ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_vrna_fold_compound_t, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
82462     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
82463     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
82464     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
82465     XSRETURN(argvi);
82466   fail:
82467     if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
82468     if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
82469     if (alloc3 == SWIG_NEWOBJ) delete[] buf3;
82470     SWIG_croak_null();
82471   }
82472 }
82473 
82474 
XS(_wrap_new_fold_compound)82475 XS(_wrap_new_fold_compound) {
82476   dXSARGS;
82477 
82478   {
82479     unsigned long _index = 0;
82480     SWIG_TypeRank _rank = 0;
82481     if (items == 1) {
82482       SWIG_TypeRank _ranki = 0;
82483       SWIG_TypeRank _rankm = 0;
82484       SWIG_TypeRank _pi = 1;
82485       int _v = 0;
82486       {
82487         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
82488         _v = SWIG_CheckState(res);
82489       }
82490       if (!_v) goto check_1;
82491       _ranki += _v*_pi;
82492       _rankm += _pi;
82493       _pi *= SWIG_MAXCASTRANK;
82494       if (!_index || (_ranki < _rank)) {
82495         _rank = _ranki; _index = 1;
82496         if (_rank == _rankm) goto dispatch;
82497       }
82498     }
82499   check_1:
82500 
82501     if (items == 1) {
82502       SWIG_TypeRank _ranki = 0;
82503       SWIG_TypeRank _rankm = 0;
82504       SWIG_TypeRank _pi = 1;
82505       int _v = 0;
82506       {
82507         {
82508           {
82509             /* wrapped vector? */
82510             std::vector< std::string >* v;
82511             if (SWIG_ConvertPtr(ST(0),(void **) &v,
82512                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
82513               _v = 1;
82514             } else if (SvROK(ST(0))) {
82515               /* native sequence? */
82516               AV *av = (AV *)SvRV(ST(0));
82517               if (SvTYPE(av) == SVt_PVAV) {
82518                 I32 len = av_len(av) + 1;
82519                 if (len == 0) {
82520                   /* an empty sequence can be of any type */
82521                   _v = 1;
82522                 } else {
82523                   /* check the first element only */
82524                   SV **tv = av_fetch(av, 0, 0);
82525                   if (SvPOK(*tv))
82526                   _v = 1;
82527                   else
82528                   _v = 0;
82529                 }
82530               }
82531             } else {
82532               _v = 0;
82533             }
82534           }
82535         }
82536       }
82537       if (!_v) goto check_2;
82538       _ranki += _v*_pi;
82539       _rankm += _pi;
82540       _pi *= SWIG_MAXCASTRANK;
82541       if (!_index || (_ranki < _rank)) {
82542         _rank = _ranki; _index = 2;
82543         if (_rank == _rankm) goto dispatch;
82544       }
82545     }
82546   check_2:
82547 
82548     if (items == 2) {
82549       SWIG_TypeRank _ranki = 0;
82550       SWIG_TypeRank _rankm = 0;
82551       SWIG_TypeRank _pi = 1;
82552       int _v = 0;
82553       {
82554         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
82555         _v = SWIG_CheckState(res);
82556       }
82557       if (!_v) goto check_3;
82558       _ranki += _v*_pi;
82559       _rankm += _pi;
82560       _pi *= SWIG_MAXCASTRANK;
82561       {
82562         void *vptr = 0;
82563         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_md_t, 0);
82564         _v = SWIG_CheckState(res);
82565       }
82566       if (!_v) goto check_3;
82567       _ranki += _v*_pi;
82568       _rankm += _pi;
82569       _pi *= SWIG_MAXCASTRANK;
82570       if (!_index || (_ranki < _rank)) {
82571         _rank = _ranki; _index = 3;
82572         if (_rank == _rankm) goto dispatch;
82573       }
82574     }
82575   check_3:
82576 
82577     if (items == 2) {
82578       SWIG_TypeRank _ranki = 0;
82579       SWIG_TypeRank _rankm = 0;
82580       SWIG_TypeRank _pi = 1;
82581       int _v = 0;
82582       {
82583         {
82584           {
82585             /* wrapped vector? */
82586             std::vector< std::string >* v;
82587             if (SWIG_ConvertPtr(ST(0),(void **) &v,
82588                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
82589               _v = 1;
82590             } else if (SvROK(ST(0))) {
82591               /* native sequence? */
82592               AV *av = (AV *)SvRV(ST(0));
82593               if (SvTYPE(av) == SVt_PVAV) {
82594                 I32 len = av_len(av) + 1;
82595                 if (len == 0) {
82596                   /* an empty sequence can be of any type */
82597                   _v = 1;
82598                 } else {
82599                   /* check the first element only */
82600                   SV **tv = av_fetch(av, 0, 0);
82601                   if (SvPOK(*tv))
82602                   _v = 1;
82603                   else
82604                   _v = 0;
82605                 }
82606               }
82607             } else {
82608               _v = 0;
82609             }
82610           }
82611         }
82612       }
82613       if (!_v) goto check_4;
82614       _ranki += _v*_pi;
82615       _rankm += _pi;
82616       _pi *= SWIG_MAXCASTRANK;
82617       {
82618         void *vptr = 0;
82619         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_md_t, 0);
82620         _v = SWIG_CheckState(res);
82621       }
82622       if (!_v) goto check_4;
82623       _ranki += _v*_pi;
82624       _rankm += _pi;
82625       _pi *= SWIG_MAXCASTRANK;
82626       if (!_index || (_ranki < _rank)) {
82627         _rank = _ranki; _index = 4;
82628         if (_rank == _rankm) goto dispatch;
82629       }
82630     }
82631   check_4:
82632 
82633     if (items == 3) {
82634       SWIG_TypeRank _ranki = 0;
82635       SWIG_TypeRank _rankm = 0;
82636       SWIG_TypeRank _pi = 1;
82637       int _v = 0;
82638       {
82639         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
82640         _v = SWIG_CheckState(res);
82641       }
82642       if (!_v) goto check_5;
82643       _ranki += _v*_pi;
82644       _rankm += _pi;
82645       _pi *= SWIG_MAXCASTRANK;
82646       {
82647         void *vptr = 0;
82648         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_md_t, 0);
82649         _v = SWIG_CheckState(res);
82650       }
82651       if (!_v) goto check_5;
82652       _ranki += _v*_pi;
82653       _rankm += _pi;
82654       _pi *= SWIG_MAXCASTRANK;
82655       {
82656         {
82657           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
82658           _v = SWIG_CheckState(res);
82659         }
82660       }
82661       if (!_v) goto check_5;
82662       _ranki += _v*_pi;
82663       _rankm += _pi;
82664       _pi *= SWIG_MAXCASTRANK;
82665       if (!_index || (_ranki < _rank)) {
82666         _rank = _ranki; _index = 5;
82667         if (_rank == _rankm) goto dispatch;
82668       }
82669     }
82670   check_5:
82671 
82672     if (items == 3) {
82673       SWIG_TypeRank _ranki = 0;
82674       SWIG_TypeRank _rankm = 0;
82675       SWIG_TypeRank _pi = 1;
82676       int _v = 0;
82677       {
82678         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
82679         _v = SWIG_CheckState(res);
82680       }
82681       if (!_v) goto check_6;
82682       _ranki += _v*_pi;
82683       _rankm += _pi;
82684       _pi *= SWIG_MAXCASTRANK;
82685       {
82686         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
82687         _v = SWIG_CheckState(res);
82688       }
82689       if (!_v) goto check_6;
82690       _ranki += _v*_pi;
82691       _rankm += _pi;
82692       _pi *= SWIG_MAXCASTRANK;
82693       {
82694         int res = SWIG_AsCharPtrAndSize(ST(2), 0, NULL, 0);
82695         _v = SWIG_CheckState(res);
82696       }
82697       if (!_v) goto check_6;
82698       _ranki += _v*_pi;
82699       _rankm += _pi;
82700       _pi *= SWIG_MAXCASTRANK;
82701       if (!_index || (_ranki < _rank)) {
82702         _rank = _ranki; _index = 6;
82703         if (_rank == _rankm) goto dispatch;
82704       }
82705     }
82706   check_6:
82707 
82708     if (items == 3) {
82709       SWIG_TypeRank _ranki = 0;
82710       SWIG_TypeRank _rankm = 0;
82711       SWIG_TypeRank _pi = 1;
82712       int _v = 0;
82713       {
82714         {
82715           {
82716             /* wrapped vector? */
82717             std::vector< std::string >* v;
82718             if (SWIG_ConvertPtr(ST(0),(void **) &v,
82719                 SWIGTYPE_p_std__vectorT_std__string_t,0) != -1) {
82720               _v = 1;
82721             } else if (SvROK(ST(0))) {
82722               /* native sequence? */
82723               AV *av = (AV *)SvRV(ST(0));
82724               if (SvTYPE(av) == SVt_PVAV) {
82725                 I32 len = av_len(av) + 1;
82726                 if (len == 0) {
82727                   /* an empty sequence can be of any type */
82728                   _v = 1;
82729                 } else {
82730                   /* check the first element only */
82731                   SV **tv = av_fetch(av, 0, 0);
82732                   if (SvPOK(*tv))
82733                   _v = 1;
82734                   else
82735                   _v = 0;
82736                 }
82737               }
82738             } else {
82739               _v = 0;
82740             }
82741           }
82742         }
82743       }
82744       if (!_v) goto check_7;
82745       _ranki += _v*_pi;
82746       _rankm += _pi;
82747       _pi *= SWIG_MAXCASTRANK;
82748       {
82749         void *vptr = 0;
82750         int res = SWIG_ConvertPtr(ST(1), &vptr, SWIGTYPE_p_vrna_md_t, 0);
82751         _v = SWIG_CheckState(res);
82752       }
82753       if (!_v) goto check_7;
82754       _ranki += _v*_pi;
82755       _rankm += _pi;
82756       _pi *= SWIG_MAXCASTRANK;
82757       {
82758         {
82759           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(2), NULL);
82760           _v = SWIG_CheckState(res);
82761         }
82762       }
82763       if (!_v) goto check_7;
82764       _ranki += _v*_pi;
82765       _rankm += _pi;
82766       _pi *= SWIG_MAXCASTRANK;
82767       if (!_index || (_ranki < _rank)) {
82768         _rank = _ranki; _index = 7;
82769         if (_rank == _rankm) goto dispatch;
82770       }
82771     }
82772   check_7:
82773 
82774     if (items == 4) {
82775       SWIG_TypeRank _ranki = 0;
82776       SWIG_TypeRank _rankm = 0;
82777       SWIG_TypeRank _pi = 1;
82778       int _v = 0;
82779       {
82780         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
82781         _v = SWIG_CheckState(res);
82782       }
82783       if (!_v) goto check_8;
82784       _ranki += _v*_pi;
82785       _rankm += _pi;
82786       _pi *= SWIG_MAXCASTRANK;
82787       {
82788         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
82789         _v = SWIG_CheckState(res);
82790       }
82791       if (!_v) goto check_8;
82792       _ranki += _v*_pi;
82793       _rankm += _pi;
82794       _pi *= SWIG_MAXCASTRANK;
82795       {
82796         int res = SWIG_AsCharPtrAndSize(ST(2), 0, NULL, 0);
82797         _v = SWIG_CheckState(res);
82798       }
82799       if (!_v) goto check_8;
82800       _ranki += _v*_pi;
82801       _rankm += _pi;
82802       _pi *= SWIG_MAXCASTRANK;
82803       {
82804         void *vptr = 0;
82805         int res = SWIG_ConvertPtr(ST(3), &vptr, SWIGTYPE_p_vrna_md_t, 0);
82806         _v = SWIG_CheckState(res);
82807       }
82808       if (!_v) goto check_8;
82809       _ranki += _v*_pi;
82810       _rankm += _pi;
82811       _pi *= SWIG_MAXCASTRANK;
82812       if (!_index || (_ranki < _rank)) {
82813         _rank = _ranki; _index = 8;
82814         if (_rank == _rankm) goto dispatch;
82815       }
82816     }
82817   check_8:
82818 
82819     if (items == 5) {
82820       SWIG_TypeRank _ranki = 0;
82821       SWIG_TypeRank _rankm = 0;
82822       SWIG_TypeRank _pi = 1;
82823       int _v = 0;
82824       {
82825         int res = SWIG_AsCharPtrAndSize(ST(0), 0, NULL, 0);
82826         _v = SWIG_CheckState(res);
82827       }
82828       if (!_v) goto check_9;
82829       _ranki += _v*_pi;
82830       _rankm += _pi;
82831       _pi *= SWIG_MAXCASTRANK;
82832       {
82833         int res = SWIG_AsCharPtrAndSize(ST(1), 0, NULL, 0);
82834         _v = SWIG_CheckState(res);
82835       }
82836       if (!_v) goto check_9;
82837       _ranki += _v*_pi;
82838       _rankm += _pi;
82839       _pi *= SWIG_MAXCASTRANK;
82840       {
82841         int res = SWIG_AsCharPtrAndSize(ST(2), 0, NULL, 0);
82842         _v = SWIG_CheckState(res);
82843       }
82844       if (!_v) goto check_9;
82845       _ranki += _v*_pi;
82846       _rankm += _pi;
82847       _pi *= SWIG_MAXCASTRANK;
82848       {
82849         void *vptr = 0;
82850         int res = SWIG_ConvertPtr(ST(3), &vptr, SWIGTYPE_p_vrna_md_t, 0);
82851         _v = SWIG_CheckState(res);
82852       }
82853       if (!_v) goto check_9;
82854       _ranki += _v*_pi;
82855       _rankm += _pi;
82856       _pi *= SWIG_MAXCASTRANK;
82857       {
82858         {
82859           int res = SWIG_AsVal_unsigned_SS_int SWIG_PERL_CALL_ARGS_2(ST(4), NULL);
82860           _v = SWIG_CheckState(res);
82861         }
82862       }
82863       if (!_v) goto check_9;
82864       _ranki += _v*_pi;
82865       _rankm += _pi;
82866       _pi *= SWIG_MAXCASTRANK;
82867       if (!_index || (_ranki < _rank)) {
82868         _rank = _ranki; _index = 9;
82869         if (_rank == _rankm) goto dispatch;
82870       }
82871     }
82872   check_9:
82873 
82874   dispatch:
82875     switch(_index) {
82876     case 1:
82877       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_fold_compound__SWIG_2); return;
82878     case 2:
82879       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_fold_compound__SWIG_5); return;
82880     case 3:
82881       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_fold_compound__SWIG_1); return;
82882     case 4:
82883       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_fold_compound__SWIG_4); return;
82884     case 5:
82885       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_fold_compound__SWIG_0); return;
82886     case 6:
82887       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_fold_compound__SWIG_8); return;
82888     case 7:
82889       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_fold_compound__SWIG_3); return;
82890     case 8:
82891       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_fold_compound__SWIG_7); return;
82892     case 9:
82893       PUSHMARK(MARK); SWIG_CALLXS(_wrap_new_fold_compound__SWIG_6); return;
82894     }
82895   }
82896 
82897   croak("No matching function for overloaded 'new_fold_compound'");
82898   XSRETURN(0);
82899 }
82900 
82901 
XS(_wrap_delete_fold_compound)82902 XS(_wrap_delete_fold_compound) {
82903   {
82904     vrna_fold_compound_t *arg1 = (vrna_fold_compound_t *) 0 ;
82905     void *argp1 = 0 ;
82906     int res1 = 0 ;
82907     int argvi = 0;
82908     dXSARGS;
82909 
82910     if ((items < 1) || (items > 1)) {
82911       SWIG_croak("Usage: delete_fold_compound(self);");
82912     }
82913     res1 = SWIG_ConvertPtr(ST(0), &argp1,SWIGTYPE_p_vrna_fold_compound_t, SWIG_POINTER_DISOWN |  0 );
82914     if (!SWIG_IsOK(res1)) {
82915       SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_fold_compound" "', argument " "1"" of type '" "vrna_fold_compound_t *""'");
82916     }
82917     arg1 = reinterpret_cast< vrna_fold_compound_t * >(argp1);
82918     {
82919       try {
82920         delete_vrna_fold_compound_t(arg1);
82921       } catch (const std::exception& e) {
82922         SWIG_exception(SWIG_RuntimeError, e.what());
82923       }
82924     }
82925     ST(argvi) = &PL_sv_undef;
82926 
82927     XSRETURN(argvi);
82928   fail:
82929 
82930     SWIG_croak_null();
82931   }
82932 }
82933 
82934 
82935 
82936 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
82937 
_p_doubleArrayTo_p_double(void * x,int * SWIGUNUSEDPARM (newmemory))82938 static void *_p_doubleArrayTo_p_double(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82939     return (void *)((double *)  ((doubleArray *) x));
82940 }
_p_a_MAXLOOP_1__doubleArrayTo_p_a_MAXLOOP_1__double(void * x,int * SWIGUNUSEDPARM (newmemory))82941 static void *_p_a_MAXLOOP_1__doubleArrayTo_p_a_MAXLOOP_1__double(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82942     return (void *)((double (*)[MAXLOOP+1])  ((doubleArray (*)[MAXLOOP+1]) x));
82943 }
_p_a_NBPAIRS_1__a_5__a_5__a_5__doubleArrayTo_p_a_NBPAIRS_1__a_5__a_5__a_5__double(void * x,int * SWIGUNUSEDPARM (newmemory))82944 static void *_p_a_NBPAIRS_1__a_5__a_5__a_5__doubleArrayTo_p_a_NBPAIRS_1__a_5__a_5__a_5__double(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82945     return (void *)((double (*)[NBPAIRS+1][5][5][5])  ((doubleArray (*)[NBPAIRS+1][5][5][5]) x));
82946 }
_p_a_NBPAIRS_1__a_5__a_5__doubleArrayTo_p_a_NBPAIRS_1__a_5__a_5__double(void * x,int * SWIGUNUSEDPARM (newmemory))82947 static void *_p_a_NBPAIRS_1__a_5__a_5__doubleArrayTo_p_a_NBPAIRS_1__a_5__a_5__double(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82948     return (void *)((double (*)[NBPAIRS+1][5][5])  ((doubleArray (*)[NBPAIRS+1][5][5]) x));
82949 }
_p_a_5__doubleArrayTo_p_a_5__double(void * x,int * SWIGUNUSEDPARM (newmemory))82950 static void *_p_a_5__doubleArrayTo_p_a_5__double(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82951     return (void *)((double (*)[5])  ((doubleArray (*)[5]) x));
82952 }
_p_a_5__a_5__doubleArrayTo_p_a_5__a_5__double(void * x,int * SWIGUNUSEDPARM (newmemory))82953 static void *_p_a_5__a_5__doubleArrayTo_p_a_5__a_5__double(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82954     return (void *)((double (*)[5][5])  ((doubleArray (*)[5][5]) x));
82955 }
_p_a_NBPAIRS_1__doubleArrayTo_p_a_NBPAIRS_1__double(void * x,int * SWIGUNUSEDPARM (newmemory))82956 static void *_p_a_NBPAIRS_1__doubleArrayTo_p_a_NBPAIRS_1__double(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82957     return (void *)((double (*)[NBPAIRS+1])  ((doubleArray (*)[NBPAIRS+1]) x));
82958 }
_p_a_7_1__a_5__a_5__a_5__a_5__intArrayTo_p_a_7_1__a_5__a_5__a_5__a_5__int(void * x,int * SWIGUNUSEDPARM (newmemory))82959 static void *_p_a_7_1__a_5__a_5__a_5__a_5__intArrayTo_p_a_7_1__a_5__a_5__a_5__a_5__int(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82960     return (void *)((int (*)[7+1][5][5][5][5])  ((intArray (*)[7+1][5][5][5][5]) x));
82961 }
_p_a_7_1__a_5__a_5__a_5__intArrayTo_p_a_7_1__a_5__a_5__a_5__int(void * x,int * SWIGUNUSEDPARM (newmemory))82962 static void *_p_a_7_1__a_5__a_5__a_5__intArrayTo_p_a_7_1__a_5__a_5__a_5__int(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82963     return (void *)((int (*)[7+1][5][5][5])  ((intArray (*)[7+1][5][5][5]) x));
82964 }
_p_a_7_1__a_5__a_5__intArrayTo_p_a_7_1__a_5__a_5__int(void * x,int * SWIGUNUSEDPARM (newmemory))82965 static void *_p_a_7_1__a_5__a_5__intArrayTo_p_a_7_1__a_5__a_5__int(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82966     return (void *)((int (*)[7+1][5][5])  ((intArray (*)[7+1][5][5]) x));
82967 }
_p_a_5__a_5__intArrayTo_p_a_5__a_5__int(void * x,int * SWIGUNUSEDPARM (newmemory))82968 static void *_p_a_5__a_5__intArrayTo_p_a_5__a_5__int(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82969     return (void *)((int (*)[5][5])  ((intArray (*)[5][5]) x));
82970 }
_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__intArrayTo_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__int(void * x,int * SWIGUNUSEDPARM (newmemory))82971 static void *_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__intArrayTo_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__int(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82972     return (void *)((int (*)[NBPAIRS+1][5][5][5][5])  ((intArray (*)[NBPAIRS+1][5][5][5][5]) x));
82973 }
_p_a_NBPAIRS_1__a_5__a_5__a_5__intArrayTo_p_a_NBPAIRS_1__a_5__a_5__a_5__int(void * x,int * SWIGUNUSEDPARM (newmemory))82974 static void *_p_a_NBPAIRS_1__a_5__a_5__a_5__intArrayTo_p_a_NBPAIRS_1__a_5__a_5__a_5__int(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82975     return (void *)((int (*)[NBPAIRS+1][5][5][5])  ((intArray (*)[NBPAIRS+1][5][5][5]) x));
82976 }
_p_a_NBPAIRS_1__a_5__a_5__intArrayTo_p_a_NBPAIRS_1__a_5__a_5__int(void * x,int * SWIGUNUSEDPARM (newmemory))82977 static void *_p_a_NBPAIRS_1__a_5__a_5__intArrayTo_p_a_NBPAIRS_1__a_5__a_5__int(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82978     return (void *)((int (*)[NBPAIRS+1][5][5])  ((intArray (*)[NBPAIRS+1][5][5]) x));
82979 }
_p_floatArrayTo_p_float(void * x,int * SWIGUNUSEDPARM (newmemory))82980 static void *_p_floatArrayTo_p_float(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82981     return (void *)((float *)  ((floatArray *) x));
82982 }
_p_intArrayTo_p_int(void * x,int * SWIGUNUSEDPARM (newmemory))82983 static void *_p_intArrayTo_p_int(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82984     return (void *)((int *)  ((intArray *) x));
82985 }
_p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__doubleArrayTo_p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__double(void * x,int * SWIGUNUSEDPARM (newmemory))82986 static void *_p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__doubleArrayTo_p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__double(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82987     return (void *)((double (*)[3*VRNA_GQUAD_MAX_LINKER_LENGTH+1])  ((doubleArray (*)[3*VRNA_GQUAD_MAX_LINKER_LENGTH+1]) x));
82988 }
_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__doubleArrayTo_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__double(void * x,int * SWIGUNUSEDPARM (newmemory))82989 static void *_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__doubleArrayTo_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__double(void *x, int *SWIGUNUSEDPARM(newmemory)) {
82990     return (void *)((double (*)[NBPAIRS+1][5][5][5][5])  ((doubleArray (*)[NBPAIRS+1][5][5][5][5]) x));
82991 }
82992 static swig_type_info _swigt__p_COORDINATE = {"_p_COORDINATE", "COORDINATE *", 0, 0, (void*)"RNA::COORDINATE", 0};
82993 static swig_type_info _swigt__p_SOLUTION = {"_p_SOLUTION", "SOLUTION *", 0, 0, (void*)"RNA::SOLUTION", 0};
82994 static swig_type_info _swigt__p_Tree = {"_p_Tree", "Tree *", 0, 0, (void*)0, 0};
82995 static swig_type_info _swigt__p__struct_en = {"_p__struct_en", "_struct_en *|struct_en *", 0, 0, (void*)"RNA::struct_en", 0};
82996 static swig_type_info _swigt__p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__double = {"_p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__double", "double (*)[3*VRNA_GQUAD_MAX_LINKER_LENGTH+1]", 0, 0, (void*)0, 0};
82997 static swig_type_info _swigt__p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__doubleArray = {"_p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__doubleArray", 0, 0, 0, 0, 0};
82998 static swig_type_info _swigt__p_a_5__a_5__double = {"_p_a_5__a_5__double", "double (*)[5][5]", 0, 0, (void*)0, 0};
82999 static swig_type_info _swigt__p_a_5__a_5__doubleArray = {"_p_a_5__a_5__doubleArray", 0, 0, 0, 0, 0};
83000 static swig_type_info _swigt__p_a_5__a_5__int = {"_p_a_5__a_5__int", "int (*)[5][5]", 0, 0, (void*)0, 0};
83001 static swig_type_info _swigt__p_a_5__a_5__intArray = {"_p_a_5__a_5__intArray", 0, 0, 0, 0, 0};
83002 static swig_type_info _swigt__p_a_5__double = {"_p_a_5__double", "double (*)[5]", 0, 0, (void*)0, 0};
83003 static swig_type_info _swigt__p_a_5__doubleArray = {"_p_a_5__doubleArray", 0, 0, 0, 0, 0};
83004 static swig_type_info _swigt__p_a_7_1__a_5__a_5__a_5__a_5__int = {"_p_a_7_1__a_5__a_5__a_5__a_5__int", "int (*)[7+1][5][5][5][5]", 0, 0, (void*)0, 0};
83005 static swig_type_info _swigt__p_a_7_1__a_5__a_5__a_5__a_5__intArray = {"_p_a_7_1__a_5__a_5__a_5__a_5__intArray", 0, 0, 0, 0, 0};
83006 static swig_type_info _swigt__p_a_7_1__a_5__a_5__a_5__int = {"_p_a_7_1__a_5__a_5__a_5__int", "int (*)[7+1][5][5][5]", 0, 0, (void*)0, 0};
83007 static swig_type_info _swigt__p_a_7_1__a_5__a_5__a_5__intArray = {"_p_a_7_1__a_5__a_5__a_5__intArray", 0, 0, 0, 0, 0};
83008 static swig_type_info _swigt__p_a_7_1__a_5__a_5__int = {"_p_a_7_1__a_5__a_5__int", "int (*)[7+1][5][5]", 0, 0, (void*)0, 0};
83009 static swig_type_info _swigt__p_a_7_1__a_5__a_5__intArray = {"_p_a_7_1__a_5__a_5__intArray", 0, 0, 0, 0, 0};
83010 static swig_type_info _swigt__p_a_MAXLOOP_1__double = {"_p_a_MAXLOOP_1__double", "double (*)[MAXLOOP+1]", 0, 0, (void*)0, 0};
83011 static swig_type_info _swigt__p_a_MAXLOOP_1__doubleArray = {"_p_a_MAXLOOP_1__doubleArray", 0, 0, 0, 0, 0};
83012 static swig_type_info _swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__double = {"_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__double", "double (*)[NBPAIRS+1][5][5][5][5]", 0, 0, (void*)0, 0};
83013 static swig_type_info _swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__doubleArray = {"_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__doubleArray", 0, 0, 0, 0, 0};
83014 static swig_type_info _swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__int = {"_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__int", "int (*)[NBPAIRS+1][5][5][5][5]", 0, 0, (void*)0, 0};
83015 static swig_type_info _swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__intArray = {"_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__intArray", 0, 0, 0, 0, 0};
83016 static swig_type_info _swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__double = {"_p_a_NBPAIRS_1__a_5__a_5__a_5__double", "double (*)[NBPAIRS+1][5][5][5]", 0, 0, (void*)0, 0};
83017 static swig_type_info _swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__doubleArray = {"_p_a_NBPAIRS_1__a_5__a_5__a_5__doubleArray", 0, 0, 0, 0, 0};
83018 static swig_type_info _swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__int = {"_p_a_NBPAIRS_1__a_5__a_5__a_5__int", "int (*)[NBPAIRS+1][5][5][5]", 0, 0, (void*)0, 0};
83019 static swig_type_info _swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__intArray = {"_p_a_NBPAIRS_1__a_5__a_5__a_5__intArray", 0, 0, 0, 0, 0};
83020 static swig_type_info _swigt__p_a_NBPAIRS_1__a_5__a_5__double = {"_p_a_NBPAIRS_1__a_5__a_5__double", "double (*)[NBPAIRS+1][5][5]", 0, 0, (void*)0, 0};
83021 static swig_type_info _swigt__p_a_NBPAIRS_1__a_5__a_5__doubleArray = {"_p_a_NBPAIRS_1__a_5__a_5__doubleArray", 0, 0, 0, 0, 0};
83022 static swig_type_info _swigt__p_a_NBPAIRS_1__a_5__a_5__int = {"_p_a_NBPAIRS_1__a_5__a_5__int", "int (*)[NBPAIRS+1][5][5]", 0, 0, (void*)0, 0};
83023 static swig_type_info _swigt__p_a_NBPAIRS_1__a_5__a_5__intArray = {"_p_a_NBPAIRS_1__a_5__a_5__intArray", 0, 0, 0, 0, 0};
83024 static swig_type_info _swigt__p_a_NBPAIRS_1__double = {"_p_a_NBPAIRS_1__double", "double (*)[NBPAIRS+1]", 0, 0, (void*)0, 0};
83025 static swig_type_info _swigt__p_a_NBPAIRS_1__doubleArray = {"_p_a_NBPAIRS_1__doubleArray", 0, 0, 0, 0, 0};
83026 static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
83027 static swig_type_info _swigt__p_difference_type = {"_p_difference_type", "difference_type *", 0, 0, (void*)0, 0};
83028 static swig_type_info _swigt__p_double = {"_p_double", "FLT_OR_DBL *|double *", 0, 0, (void*)0, 0};
83029 static swig_type_info _swigt__p_doubleArray = {"_p_doubleArray", "doubleArray *", 0, 0, (void*)"RNA::doubleArray", 0};
83030 static swig_type_info _swigt__p_duplexT = {"_p_duplexT", "duplexT *", 0, 0, (void*)"RNA::duplexT", 0};
83031 static swig_type_info _swigt__p_duplex_list_t = {"_p_duplex_list_t", "duplex_list_t *", 0, 0, (void*)"RNA::duplex_list_t", 0};
83032 static swig_type_info _swigt__p_first_type = {"_p_first_type", "first_type *", 0, 0, (void*)0, 0};
83033 static swig_type_info _swigt__p_float = {"_p_float", "float *", 0, 0, (void*)0, 0};
83034 static swig_type_info _swigt__p_floatArray = {"_p_floatArray", "floatArray *", 0, 0, (void*)"RNA::floatArray", 0};
83035 static swig_type_info _swigt__p_heat_capacity_result = {"_p_heat_capacity_result", "heat_capacity_result *", 0, 0, (void*)"RNA::heat_capacity_result", 0};
83036 static swig_type_info _swigt__p_int = {"_p_int", "int *", 0, 0, (void*)0, 0};
83037 static swig_type_info _swigt__p_intArray = {"_p_intArray", "intArray *", 0, 0, (void*)"RNA::intArray", 0};
83038 static swig_type_info _swigt__p_my_fc_type_e = {"_p_my_fc_type_e", "enum my_fc_type_e *|my_fc_type_e *", 0, 0, (void*)0, 0};
83039 static swig_type_info _swigt__p_p_char = {"_p_p_char", "char **", 0, 0, (void*)0, 0};
83040 static swig_type_info _swigt__p_p_p_char = {"_p_p_p_char", "char ***", 0, 0, (void*)0, 0};
83041 static swig_type_info _swigt__p_p_void = {"_p_p_void", "void **", 0, 0, (void*)0, 0};
83042 static swig_type_info _swigt__p_second_type = {"_p_second_type", "second_type *", 0, 0, (void*)0, 0};
83043 static swig_type_info _swigt__p_short = {"_p_short", "short *", 0, 0, (void*)0, 0};
83044 static swig_type_info _swigt__p_size_type = {"_p_size_type", "size_type *", 0, 0, (void*)0, 0};
83045 static swig_type_info _swigt__p_std__out_of_range = {"_p_std__out_of_range", "std::out_of_range *", 0, 0, (void*)0, 0};
83046 static swig_type_info _swigt__p_std__pairT_double_double_t = {"_p_std__pairT_double_double_t", "std::pair< double,double > *", 0, 0, (void*)"RNA::DoublePair", 0};
83047 static swig_type_info _swigt__p_std__string = {"_p_std__string", "std::string *", 0, 0, (void*)0, 0};
83048 static swig_type_info _swigt__p_std__vectorT_COORDINATE_t = {"_p_std__vectorT_COORDINATE_t", "std::vector< COORDINATE > *", 0, 0, (void*)"RNA::CoordinateVector", 0};
83049 static swig_type_info _swigt__p_std__vectorT_SOLUTION_t = {"_p_std__vectorT_SOLUTION_t", "std::vector< SOLUTION > *", 0, 0, (void*)"RNA::SOLUTIONVector", 0};
83050 static swig_type_info _swigt__p_std__vectorT_char_const_p_t = {"_p_std__vectorT_char_const_p_t", "std::vector< char const * > *", 0, 0, (void*)"RNA::ConstCharVector", 0};
83051 static swig_type_info _swigt__p_std__vectorT_double_t = {"_p_std__vectorT_double_t", "std::vector< double > *", 0, 0, (void*)"RNA::DoubleVector", 0};
83052 static swig_type_info _swigt__p_std__vectorT_duplex_list_t_t = {"_p_std__vectorT_duplex_list_t_t", "std::vector< duplex_list_t > *", 0, 0, (void*)"RNA::DuplexVector", 0};
83053 static swig_type_info _swigt__p_std__vectorT_heat_capacity_result_t = {"_p_std__vectorT_heat_capacity_result_t", "std::vector< heat_capacity_result > *", 0, 0, (void*)"RNA::HeatCapacityVector", 0};
83054 static swig_type_info _swigt__p_std__vectorT_int_t = {"_p_std__vectorT_int_t", "std::vector< int > *", 0, 0, (void*)"RNA::IntVector", 0};
83055 static swig_type_info _swigt__p_std__vectorT_std__string_t = {"_p_std__vectorT_std__string_t", "std::vector< std::string > *", 0, 0, (void*)"RNA::StringVector", 0};
83056 static swig_type_info _swigt__p_std__vectorT_std__vectorT_double_t_t = {"_p_std__vectorT_std__vectorT_double_t_t", "std::vector< std::vector< double > > *", 0, 0, (void*)"RNA::DoubleDoubleVector", 0};
83057 static swig_type_info _swigt__p_std__vectorT_std__vectorT_int_t_t = {"_p_std__vectorT_std__vectorT_int_t_t", "std::vector< std::vector< int > > *", 0, 0, (void*)"RNA::IntIntVector", 0};
83058 static swig_type_info _swigt__p_std__vectorT_subopt_solution_t = {"_p_std__vectorT_subopt_solution_t", "std::vector< subopt_solution > *", 0, 0, (void*)"RNA::SuboptVector", 0};
83059 static swig_type_info _swigt__p_std__vectorT_unsigned_int_t = {"_p_std__vectorT_unsigned_int_t", "std::vector< unsigned int > *", 0, 0, (void*)"RNA::UIntVector", 0};
83060 static swig_type_info _swigt__p_std__vectorT_vrna_ep_t_t = {"_p_std__vectorT_vrna_ep_t_t", "std::vector< vrna_ep_t > *", 0, 0, (void*)"RNA::ElemProbVector", 0};
83061 static swig_type_info _swigt__p_std__vectorT_vrna_move_t_t = {"_p_std__vectorT_vrna_move_t_t", "std::vector< vrna_move_t > *", 0, 0, (void*)"RNA::MoveVector", 0};
83062 static swig_type_info _swigt__p_std__vectorT_vrna_path_t_t = {"_p_std__vectorT_vrna_path_t_t", "std::vector< vrna_path_t > *", 0, 0, (void*)"RNA::PathVector", 0};
83063 static swig_type_info _swigt__p_subopt_solution = {"_p_subopt_solution", "subopt_solution *", 0, 0, (void*)"RNA::subopt_solution", 0};
83064 static swig_type_info _swigt__p_swString = {"_p_swString", "swString *", 0, 0, (void*)0, 0};
83065 static swig_type_info _swigt__p_unsigned_int = {"_p_unsigned_int", "unsigned int *", 0, 0, (void*)0, 0};
83066 static swig_type_info _swigt__p_unsigned_short = {"_p_unsigned_short", "unsigned short *", 0, 0, (void*)0, 0};
83067 static swig_type_info _swigt__p_value_type = {"_p_value_type", "value_type *", 0, 0, (void*)0, 0};
83068 static swig_type_info _swigt__p_void = {"_p_void", "void *", 0, 0, (void*)0, 0};
83069 static swig_type_info _swigt__p_vrna_basepair_t = {"_p_vrna_basepair_t", "vrna_basepair_t *", 0, 0, (void*)"RNA::basepair", 0};
83070 static swig_type_info _swigt__p_vrna_bp_stack_s = {"_p_vrna_bp_stack_s", "vrna_bp_stack_s *|bondT *", 0, 0, (void*)0, 0};
83071 static swig_type_info _swigt__p_vrna_command_s = {"_p_vrna_command_s", "vrna_command_s *", 0, 0, (void*)"RNA::cmd", 0};
83072 static swig_type_info _swigt__p_vrna_cpair_s = {"_p_vrna_cpair_s", "vrna_cpair_s *|cpair *", 0, 0, (void*)0, 0};
83073 static swig_type_info _swigt__p_vrna_dimer_pf_s = {"_p_vrna_dimer_pf_s", "vrna_dimer_pf_s *|cofoldF *", 0, 0, (void*)0, 0};
83074 static swig_type_info _swigt__p_vrna_elem_prob_s = {"_p_vrna_elem_prob_s", "vrna_elem_prob_s *|plist *", 0, 0, (void*)0, 0};
83075 static swig_type_info _swigt__p_vrna_ep_t = {"_p_vrna_ep_t", "vrna_ep_t *", 0, 0, (void*)"RNA::ep", 0};
83076 static swig_type_info _swigt__p_vrna_exp_param_t = {"_p_vrna_exp_param_t", "vrna_exp_param_t *", 0, 0, (void*)"RNA::exp_param", 0};
83077 static swig_type_info _swigt__p_vrna_fold_compound_t = {"_p_vrna_fold_compound_t", "vrna_fold_compound_t *", 0, 0, (void*)"RNA::fold_compound", 0};
83078 static swig_type_info _swigt__p_vrna_md_t = {"_p_vrna_md_t", "vrna_md_t *", 0, 0, (void*)"RNA::md", 0};
83079 static swig_type_info _swigt__p_vrna_move_t = {"_p_vrna_move_t", "vrna_move_t *", 0, 0, (void*)"RNA::move", 0};
83080 static swig_type_info _swigt__p_vrna_param_t = {"_p_vrna_param_t", "vrna_param_t *", 0, 0, (void*)"RNA::param", 0};
83081 static swig_type_info _swigt__p_vrna_path_options_s = {"_p_vrna_path_options_s", "vrna_path_options_s *", 0, 0, (void*)"RNA::path_options", 0};
83082 static swig_type_info _swigt__p_vrna_path_s = {"_p_vrna_path_s", "path_t *|vrna_path_s *", 0, 0, (void*)0, 0};
83083 static swig_type_info _swigt__p_vrna_path_t = {"_p_vrna_path_t", "vrna_path_t *", 0, 0, (void*)"RNA::path", 0};
83084 static swig_type_info _swigt__p_vrna_pbacktrack_mem_t = {"_p_vrna_pbacktrack_mem_t", "vrna_pbacktrack_mem_t *", 0, 0, (void*)"RNA::pbacktrack_mem", 0};
83085 static swig_type_info _swigt__p_vrna_pinfo_s = {"_p_vrna_pinfo_s", "vrna_pinfo_s *|pair_info *", 0, 0, (void*)0, 0};
83086 static swig_type_info _swigt__p_vrna_sc_s = {"_p_vrna_sc_s", "vrna_sc_t *|vrna_sc_s *", 0, 0, (void*)0, 0};
83087 
83088 static swig_type_info *swig_type_initial[] = {
83089   &_swigt__p_COORDINATE,
83090   &_swigt__p_SOLUTION,
83091   &_swigt__p_Tree,
83092   &_swigt__p__struct_en,
83093   &_swigt__p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__double,
83094   &_swigt__p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__doubleArray,
83095   &_swigt__p_a_5__a_5__double,
83096   &_swigt__p_a_5__a_5__doubleArray,
83097   &_swigt__p_a_5__a_5__int,
83098   &_swigt__p_a_5__a_5__intArray,
83099   &_swigt__p_a_5__double,
83100   &_swigt__p_a_5__doubleArray,
83101   &_swigt__p_a_7_1__a_5__a_5__a_5__a_5__int,
83102   &_swigt__p_a_7_1__a_5__a_5__a_5__a_5__intArray,
83103   &_swigt__p_a_7_1__a_5__a_5__a_5__int,
83104   &_swigt__p_a_7_1__a_5__a_5__a_5__intArray,
83105   &_swigt__p_a_7_1__a_5__a_5__int,
83106   &_swigt__p_a_7_1__a_5__a_5__intArray,
83107   &_swigt__p_a_MAXLOOP_1__double,
83108   &_swigt__p_a_MAXLOOP_1__doubleArray,
83109   &_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__double,
83110   &_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__doubleArray,
83111   &_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__int,
83112   &_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__intArray,
83113   &_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__double,
83114   &_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__doubleArray,
83115   &_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__int,
83116   &_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__intArray,
83117   &_swigt__p_a_NBPAIRS_1__a_5__a_5__double,
83118   &_swigt__p_a_NBPAIRS_1__a_5__a_5__doubleArray,
83119   &_swigt__p_a_NBPAIRS_1__a_5__a_5__int,
83120   &_swigt__p_a_NBPAIRS_1__a_5__a_5__intArray,
83121   &_swigt__p_a_NBPAIRS_1__double,
83122   &_swigt__p_a_NBPAIRS_1__doubleArray,
83123   &_swigt__p_char,
83124   &_swigt__p_difference_type,
83125   &_swigt__p_double,
83126   &_swigt__p_doubleArray,
83127   &_swigt__p_duplexT,
83128   &_swigt__p_duplex_list_t,
83129   &_swigt__p_first_type,
83130   &_swigt__p_float,
83131   &_swigt__p_floatArray,
83132   &_swigt__p_heat_capacity_result,
83133   &_swigt__p_int,
83134   &_swigt__p_intArray,
83135   &_swigt__p_my_fc_type_e,
83136   &_swigt__p_p_char,
83137   &_swigt__p_p_p_char,
83138   &_swigt__p_p_void,
83139   &_swigt__p_second_type,
83140   &_swigt__p_short,
83141   &_swigt__p_size_type,
83142   &_swigt__p_std__out_of_range,
83143   &_swigt__p_std__pairT_double_double_t,
83144   &_swigt__p_std__string,
83145   &_swigt__p_std__vectorT_COORDINATE_t,
83146   &_swigt__p_std__vectorT_SOLUTION_t,
83147   &_swigt__p_std__vectorT_char_const_p_t,
83148   &_swigt__p_std__vectorT_double_t,
83149   &_swigt__p_std__vectorT_duplex_list_t_t,
83150   &_swigt__p_std__vectorT_heat_capacity_result_t,
83151   &_swigt__p_std__vectorT_int_t,
83152   &_swigt__p_std__vectorT_std__string_t,
83153   &_swigt__p_std__vectorT_std__vectorT_double_t_t,
83154   &_swigt__p_std__vectorT_std__vectorT_int_t_t,
83155   &_swigt__p_std__vectorT_subopt_solution_t,
83156   &_swigt__p_std__vectorT_unsigned_int_t,
83157   &_swigt__p_std__vectorT_vrna_ep_t_t,
83158   &_swigt__p_std__vectorT_vrna_move_t_t,
83159   &_swigt__p_std__vectorT_vrna_path_t_t,
83160   &_swigt__p_subopt_solution,
83161   &_swigt__p_swString,
83162   &_swigt__p_unsigned_int,
83163   &_swigt__p_unsigned_short,
83164   &_swigt__p_value_type,
83165   &_swigt__p_void,
83166   &_swigt__p_vrna_basepair_t,
83167   &_swigt__p_vrna_bp_stack_s,
83168   &_swigt__p_vrna_command_s,
83169   &_swigt__p_vrna_cpair_s,
83170   &_swigt__p_vrna_dimer_pf_s,
83171   &_swigt__p_vrna_elem_prob_s,
83172   &_swigt__p_vrna_ep_t,
83173   &_swigt__p_vrna_exp_param_t,
83174   &_swigt__p_vrna_fold_compound_t,
83175   &_swigt__p_vrna_md_t,
83176   &_swigt__p_vrna_move_t,
83177   &_swigt__p_vrna_param_t,
83178   &_swigt__p_vrna_path_options_s,
83179   &_swigt__p_vrna_path_s,
83180   &_swigt__p_vrna_path_t,
83181   &_swigt__p_vrna_pbacktrack_mem_t,
83182   &_swigt__p_vrna_pinfo_s,
83183   &_swigt__p_vrna_sc_s,
83184 };
83185 
83186 static swig_cast_info _swigc__p_COORDINATE[] = {  {&_swigt__p_COORDINATE, 0, 0, 0},{0, 0, 0, 0}};
83187 static swig_cast_info _swigc__p_SOLUTION[] = {  {&_swigt__p_SOLUTION, 0, 0, 0},{0, 0, 0, 0}};
83188 static swig_cast_info _swigc__p_Tree[] = {  {&_swigt__p_Tree, 0, 0, 0},{0, 0, 0, 0}};
83189 static swig_cast_info _swigc__p__struct_en[] = {  {&_swigt__p__struct_en, 0, 0, 0},{0, 0, 0, 0}};
83190 static swig_cast_info _swigc__p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__doubleArray[] = {{&_swigt__p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__doubleArray, 0, 0, 0},{0, 0, 0, 0}};
83191 static swig_cast_info _swigc__p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__double[] = {  {&_swigt__p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__doubleArray, _p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__doubleArrayTo_p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__double, 0, 0},  {&_swigt__p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__double, 0, 0, 0},{0, 0, 0, 0}};
83192 static swig_cast_info _swigc__p_a_5__a_5__doubleArray[] = {{&_swigt__p_a_5__a_5__doubleArray, 0, 0, 0},{0, 0, 0, 0}};
83193 static swig_cast_info _swigc__p_a_5__a_5__double[] = {  {&_swigt__p_a_5__a_5__doubleArray, _p_a_5__a_5__doubleArrayTo_p_a_5__a_5__double, 0, 0},  {&_swigt__p_a_5__a_5__double, 0, 0, 0},{0, 0, 0, 0}};
83194 static swig_cast_info _swigc__p_a_5__a_5__intArray[] = {{&_swigt__p_a_5__a_5__intArray, 0, 0, 0},{0, 0, 0, 0}};
83195 static swig_cast_info _swigc__p_a_5__a_5__int[] = {  {&_swigt__p_a_5__a_5__int, 0, 0, 0},  {&_swigt__p_a_5__a_5__intArray, _p_a_5__a_5__intArrayTo_p_a_5__a_5__int, 0, 0},{0, 0, 0, 0}};
83196 static swig_cast_info _swigc__p_a_5__doubleArray[] = {{&_swigt__p_a_5__doubleArray, 0, 0, 0},{0, 0, 0, 0}};
83197 static swig_cast_info _swigc__p_a_5__double[] = {  {&_swigt__p_a_5__doubleArray, _p_a_5__doubleArrayTo_p_a_5__double, 0, 0},  {&_swigt__p_a_5__double, 0, 0, 0},{0, 0, 0, 0}};
83198 static swig_cast_info _swigc__p_a_7_1__a_5__a_5__a_5__a_5__intArray[] = {{&_swigt__p_a_7_1__a_5__a_5__a_5__a_5__intArray, 0, 0, 0},{0, 0, 0, 0}};
83199 static swig_cast_info _swigc__p_a_7_1__a_5__a_5__a_5__a_5__int[] = {  {&_swigt__p_a_7_1__a_5__a_5__a_5__a_5__int, 0, 0, 0},  {&_swigt__p_a_7_1__a_5__a_5__a_5__a_5__intArray, _p_a_7_1__a_5__a_5__a_5__a_5__intArrayTo_p_a_7_1__a_5__a_5__a_5__a_5__int, 0, 0},{0, 0, 0, 0}};
83200 static swig_cast_info _swigc__p_a_7_1__a_5__a_5__a_5__intArray[] = {{&_swigt__p_a_7_1__a_5__a_5__a_5__intArray, 0, 0, 0},{0, 0, 0, 0}};
83201 static swig_cast_info _swigc__p_a_7_1__a_5__a_5__a_5__int[] = {  {&_swigt__p_a_7_1__a_5__a_5__a_5__int, 0, 0, 0},  {&_swigt__p_a_7_1__a_5__a_5__a_5__intArray, _p_a_7_1__a_5__a_5__a_5__intArrayTo_p_a_7_1__a_5__a_5__a_5__int, 0, 0},{0, 0, 0, 0}};
83202 static swig_cast_info _swigc__p_a_7_1__a_5__a_5__intArray[] = {{&_swigt__p_a_7_1__a_5__a_5__intArray, 0, 0, 0},{0, 0, 0, 0}};
83203 static swig_cast_info _swigc__p_a_7_1__a_5__a_5__int[] = {  {&_swigt__p_a_7_1__a_5__a_5__int, 0, 0, 0},  {&_swigt__p_a_7_1__a_5__a_5__intArray, _p_a_7_1__a_5__a_5__intArrayTo_p_a_7_1__a_5__a_5__int, 0, 0},{0, 0, 0, 0}};
83204 static swig_cast_info _swigc__p_a_MAXLOOP_1__doubleArray[] = {{&_swigt__p_a_MAXLOOP_1__doubleArray, 0, 0, 0},{0, 0, 0, 0}};
83205 static swig_cast_info _swigc__p_a_MAXLOOP_1__double[] = {  {&_swigt__p_a_MAXLOOP_1__doubleArray, _p_a_MAXLOOP_1__doubleArrayTo_p_a_MAXLOOP_1__double, 0, 0},  {&_swigt__p_a_MAXLOOP_1__double, 0, 0, 0},{0, 0, 0, 0}};
83206 static swig_cast_info _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__doubleArray[] = {{&_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__doubleArray, 0, 0, 0},{0, 0, 0, 0}};
83207 static swig_cast_info _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__double[] = {  {&_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__doubleArray, _p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__doubleArrayTo_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__double, 0, 0},  {&_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__double, 0, 0, 0},{0, 0, 0, 0}};
83208 static swig_cast_info _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__intArray[] = {{&_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__intArray, 0, 0, 0},{0, 0, 0, 0}};
83209 static swig_cast_info _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__int[] = {  {&_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__int, 0, 0, 0},  {&_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__intArray, _p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__intArrayTo_p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__int, 0, 0},{0, 0, 0, 0}};
83210 static swig_cast_info _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__doubleArray[] = {{&_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__doubleArray, 0, 0, 0},{0, 0, 0, 0}};
83211 static swig_cast_info _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__double[] = {  {&_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__doubleArray, _p_a_NBPAIRS_1__a_5__a_5__a_5__doubleArrayTo_p_a_NBPAIRS_1__a_5__a_5__a_5__double, 0, 0},  {&_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__double, 0, 0, 0},{0, 0, 0, 0}};
83212 static swig_cast_info _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__intArray[] = {{&_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__intArray, 0, 0, 0},{0, 0, 0, 0}};
83213 static swig_cast_info _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__int[] = {  {&_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__int, 0, 0, 0},  {&_swigt__p_a_NBPAIRS_1__a_5__a_5__a_5__intArray, _p_a_NBPAIRS_1__a_5__a_5__a_5__intArrayTo_p_a_NBPAIRS_1__a_5__a_5__a_5__int, 0, 0},{0, 0, 0, 0}};
83214 static swig_cast_info _swigc__p_a_NBPAIRS_1__a_5__a_5__doubleArray[] = {{&_swigt__p_a_NBPAIRS_1__a_5__a_5__doubleArray, 0, 0, 0},{0, 0, 0, 0}};
83215 static swig_cast_info _swigc__p_a_NBPAIRS_1__a_5__a_5__double[] = {  {&_swigt__p_a_NBPAIRS_1__a_5__a_5__doubleArray, _p_a_NBPAIRS_1__a_5__a_5__doubleArrayTo_p_a_NBPAIRS_1__a_5__a_5__double, 0, 0},  {&_swigt__p_a_NBPAIRS_1__a_5__a_5__double, 0, 0, 0},{0, 0, 0, 0}};
83216 static swig_cast_info _swigc__p_a_NBPAIRS_1__a_5__a_5__intArray[] = {{&_swigt__p_a_NBPAIRS_1__a_5__a_5__intArray, 0, 0, 0},{0, 0, 0, 0}};
83217 static swig_cast_info _swigc__p_a_NBPAIRS_1__a_5__a_5__int[] = {  {&_swigt__p_a_NBPAIRS_1__a_5__a_5__int, 0, 0, 0},  {&_swigt__p_a_NBPAIRS_1__a_5__a_5__intArray, _p_a_NBPAIRS_1__a_5__a_5__intArrayTo_p_a_NBPAIRS_1__a_5__a_5__int, 0, 0},{0, 0, 0, 0}};
83218 static swig_cast_info _swigc__p_a_NBPAIRS_1__doubleArray[] = {{&_swigt__p_a_NBPAIRS_1__doubleArray, 0, 0, 0},{0, 0, 0, 0}};
83219 static swig_cast_info _swigc__p_a_NBPAIRS_1__double[] = {  {&_swigt__p_a_NBPAIRS_1__doubleArray, _p_a_NBPAIRS_1__doubleArrayTo_p_a_NBPAIRS_1__double, 0, 0},  {&_swigt__p_a_NBPAIRS_1__double, 0, 0, 0},{0, 0, 0, 0}};
83220 static swig_cast_info _swigc__p_char[] = {  {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}};
83221 static swig_cast_info _swigc__p_difference_type[] = {  {&_swigt__p_difference_type, 0, 0, 0},{0, 0, 0, 0}};
83222 static swig_cast_info _swigc__p_double[] = {  {&_swigt__p_doubleArray, _p_doubleArrayTo_p_double, 0, 0},  {&_swigt__p_double, 0, 0, 0},{0, 0, 0, 0}};
83223 static swig_cast_info _swigc__p_doubleArray[] = {  {&_swigt__p_doubleArray, 0, 0, 0},{0, 0, 0, 0}};
83224 static swig_cast_info _swigc__p_duplexT[] = {  {&_swigt__p_duplexT, 0, 0, 0},{0, 0, 0, 0}};
83225 static swig_cast_info _swigc__p_duplex_list_t[] = {  {&_swigt__p_duplex_list_t, 0, 0, 0},{0, 0, 0, 0}};
83226 static swig_cast_info _swigc__p_first_type[] = {  {&_swigt__p_first_type, 0, 0, 0},{0, 0, 0, 0}};
83227 static swig_cast_info _swigc__p_float[] = {  {&_swigt__p_float, 0, 0, 0},  {&_swigt__p_floatArray, _p_floatArrayTo_p_float, 0, 0},{0, 0, 0, 0}};
83228 static swig_cast_info _swigc__p_floatArray[] = {  {&_swigt__p_floatArray, 0, 0, 0},{0, 0, 0, 0}};
83229 static swig_cast_info _swigc__p_heat_capacity_result[] = {  {&_swigt__p_heat_capacity_result, 0, 0, 0},{0, 0, 0, 0}};
83230 static swig_cast_info _swigc__p_int[] = {  {&_swigt__p_intArray, _p_intArrayTo_p_int, 0, 0},  {&_swigt__p_int, 0, 0, 0},{0, 0, 0, 0}};
83231 static swig_cast_info _swigc__p_intArray[] = {  {&_swigt__p_intArray, 0, 0, 0},{0, 0, 0, 0}};
83232 static swig_cast_info _swigc__p_my_fc_type_e[] = {  {&_swigt__p_my_fc_type_e, 0, 0, 0},{0, 0, 0, 0}};
83233 static swig_cast_info _swigc__p_p_char[] = {  {&_swigt__p_p_char, 0, 0, 0},{0, 0, 0, 0}};
83234 static swig_cast_info _swigc__p_p_p_char[] = {  {&_swigt__p_p_p_char, 0, 0, 0},{0, 0, 0, 0}};
83235 static swig_cast_info _swigc__p_p_void[] = {  {&_swigt__p_p_void, 0, 0, 0},{0, 0, 0, 0}};
83236 static swig_cast_info _swigc__p_second_type[] = {  {&_swigt__p_second_type, 0, 0, 0},{0, 0, 0, 0}};
83237 static swig_cast_info _swigc__p_short[] = {  {&_swigt__p_short, 0, 0, 0},{0, 0, 0, 0}};
83238 static swig_cast_info _swigc__p_size_type[] = {  {&_swigt__p_size_type, 0, 0, 0},{0, 0, 0, 0}};
83239 static swig_cast_info _swigc__p_std__out_of_range[] = {  {&_swigt__p_std__out_of_range, 0, 0, 0},{0, 0, 0, 0}};
83240 static swig_cast_info _swigc__p_std__pairT_double_double_t[] = {  {&_swigt__p_std__pairT_double_double_t, 0, 0, 0},{0, 0, 0, 0}};
83241 static swig_cast_info _swigc__p_std__string[] = {  {&_swigt__p_std__string, 0, 0, 0},{0, 0, 0, 0}};
83242 static swig_cast_info _swigc__p_std__vectorT_COORDINATE_t[] = {  {&_swigt__p_std__vectorT_COORDINATE_t, 0, 0, 0},{0, 0, 0, 0}};
83243 static swig_cast_info _swigc__p_std__vectorT_SOLUTION_t[] = {  {&_swigt__p_std__vectorT_SOLUTION_t, 0, 0, 0},{0, 0, 0, 0}};
83244 static swig_cast_info _swigc__p_std__vectorT_char_const_p_t[] = {  {&_swigt__p_std__vectorT_char_const_p_t, 0, 0, 0},{0, 0, 0, 0}};
83245 static swig_cast_info _swigc__p_std__vectorT_double_t[] = {  {&_swigt__p_std__vectorT_double_t, 0, 0, 0},{0, 0, 0, 0}};
83246 static swig_cast_info _swigc__p_std__vectorT_duplex_list_t_t[] = {  {&_swigt__p_std__vectorT_duplex_list_t_t, 0, 0, 0},{0, 0, 0, 0}};
83247 static swig_cast_info _swigc__p_std__vectorT_heat_capacity_result_t[] = {  {&_swigt__p_std__vectorT_heat_capacity_result_t, 0, 0, 0},{0, 0, 0, 0}};
83248 static swig_cast_info _swigc__p_std__vectorT_int_t[] = {  {&_swigt__p_std__vectorT_int_t, 0, 0, 0},{0, 0, 0, 0}};
83249 static swig_cast_info _swigc__p_std__vectorT_std__string_t[] = {  {&_swigt__p_std__vectorT_std__string_t, 0, 0, 0},{0, 0, 0, 0}};
83250 static swig_cast_info _swigc__p_std__vectorT_std__vectorT_double_t_t[] = {  {&_swigt__p_std__vectorT_std__vectorT_double_t_t, 0, 0, 0},{0, 0, 0, 0}};
83251 static swig_cast_info _swigc__p_std__vectorT_std__vectorT_int_t_t[] = {  {&_swigt__p_std__vectorT_std__vectorT_int_t_t, 0, 0, 0},{0, 0, 0, 0}};
83252 static swig_cast_info _swigc__p_std__vectorT_subopt_solution_t[] = {  {&_swigt__p_std__vectorT_subopt_solution_t, 0, 0, 0},{0, 0, 0, 0}};
83253 static swig_cast_info _swigc__p_std__vectorT_unsigned_int_t[] = {  {&_swigt__p_std__vectorT_unsigned_int_t, 0, 0, 0},{0, 0, 0, 0}};
83254 static swig_cast_info _swigc__p_std__vectorT_vrna_ep_t_t[] = {  {&_swigt__p_std__vectorT_vrna_ep_t_t, 0, 0, 0},{0, 0, 0, 0}};
83255 static swig_cast_info _swigc__p_std__vectorT_vrna_move_t_t[] = {  {&_swigt__p_std__vectorT_vrna_move_t_t, 0, 0, 0},{0, 0, 0, 0}};
83256 static swig_cast_info _swigc__p_std__vectorT_vrna_path_t_t[] = {  {&_swigt__p_std__vectorT_vrna_path_t_t, 0, 0, 0},{0, 0, 0, 0}};
83257 static swig_cast_info _swigc__p_subopt_solution[] = {  {&_swigt__p_subopt_solution, 0, 0, 0},{0, 0, 0, 0}};
83258 static swig_cast_info _swigc__p_swString[] = {  {&_swigt__p_swString, 0, 0, 0},{0, 0, 0, 0}};
83259 static swig_cast_info _swigc__p_unsigned_int[] = {  {&_swigt__p_unsigned_int, 0, 0, 0},{0, 0, 0, 0}};
83260 static swig_cast_info _swigc__p_unsigned_short[] = {  {&_swigt__p_unsigned_short, 0, 0, 0},{0, 0, 0, 0}};
83261 static swig_cast_info _swigc__p_value_type[] = {  {&_swigt__p_value_type, 0, 0, 0},{0, 0, 0, 0}};
83262 static swig_cast_info _swigc__p_void[] = {  {&_swigt__p_void, 0, 0, 0},{0, 0, 0, 0}};
83263 static swig_cast_info _swigc__p_vrna_basepair_t[] = {  {&_swigt__p_vrna_basepair_t, 0, 0, 0},{0, 0, 0, 0}};
83264 static swig_cast_info _swigc__p_vrna_bp_stack_s[] = {  {&_swigt__p_vrna_bp_stack_s, 0, 0, 0},{0, 0, 0, 0}};
83265 static swig_cast_info _swigc__p_vrna_command_s[] = {  {&_swigt__p_vrna_command_s, 0, 0, 0},{0, 0, 0, 0}};
83266 static swig_cast_info _swigc__p_vrna_cpair_s[] = {  {&_swigt__p_vrna_cpair_s, 0, 0, 0},{0, 0, 0, 0}};
83267 static swig_cast_info _swigc__p_vrna_dimer_pf_s[] = {  {&_swigt__p_vrna_dimer_pf_s, 0, 0, 0},{0, 0, 0, 0}};
83268 static swig_cast_info _swigc__p_vrna_elem_prob_s[] = {  {&_swigt__p_vrna_elem_prob_s, 0, 0, 0},{0, 0, 0, 0}};
83269 static swig_cast_info _swigc__p_vrna_ep_t[] = {  {&_swigt__p_vrna_ep_t, 0, 0, 0},{0, 0, 0, 0}};
83270 static swig_cast_info _swigc__p_vrna_exp_param_t[] = {  {&_swigt__p_vrna_exp_param_t, 0, 0, 0},{0, 0, 0, 0}};
83271 static swig_cast_info _swigc__p_vrna_fold_compound_t[] = {  {&_swigt__p_vrna_fold_compound_t, 0, 0, 0},{0, 0, 0, 0}};
83272 static swig_cast_info _swigc__p_vrna_md_t[] = {  {&_swigt__p_vrna_md_t, 0, 0, 0},{0, 0, 0, 0}};
83273 static swig_cast_info _swigc__p_vrna_move_t[] = {  {&_swigt__p_vrna_move_t, 0, 0, 0},{0, 0, 0, 0}};
83274 static swig_cast_info _swigc__p_vrna_param_t[] = {  {&_swigt__p_vrna_param_t, 0, 0, 0},{0, 0, 0, 0}};
83275 static swig_cast_info _swigc__p_vrna_path_options_s[] = {  {&_swigt__p_vrna_path_options_s, 0, 0, 0},{0, 0, 0, 0}};
83276 static swig_cast_info _swigc__p_vrna_path_s[] = {  {&_swigt__p_vrna_path_s, 0, 0, 0},{0, 0, 0, 0}};
83277 static swig_cast_info _swigc__p_vrna_path_t[] = {  {&_swigt__p_vrna_path_t, 0, 0, 0},{0, 0, 0, 0}};
83278 static swig_cast_info _swigc__p_vrna_pbacktrack_mem_t[] = {  {&_swigt__p_vrna_pbacktrack_mem_t, 0, 0, 0},{0, 0, 0, 0}};
83279 static swig_cast_info _swigc__p_vrna_pinfo_s[] = {  {&_swigt__p_vrna_pinfo_s, 0, 0, 0},{0, 0, 0, 0}};
83280 static swig_cast_info _swigc__p_vrna_sc_s[] = {  {&_swigt__p_vrna_sc_s, 0, 0, 0},{0, 0, 0, 0}};
83281 
83282 static swig_cast_info *swig_cast_initial[] = {
83283   _swigc__p_COORDINATE,
83284   _swigc__p_SOLUTION,
83285   _swigc__p_Tree,
83286   _swigc__p__struct_en,
83287   _swigc__p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__double,
83288   _swigc__p_a_3_VRNA_GQUAD_MAX_LINKER_LENGTH_1__doubleArray,
83289   _swigc__p_a_5__a_5__double,
83290   _swigc__p_a_5__a_5__doubleArray,
83291   _swigc__p_a_5__a_5__int,
83292   _swigc__p_a_5__a_5__intArray,
83293   _swigc__p_a_5__double,
83294   _swigc__p_a_5__doubleArray,
83295   _swigc__p_a_7_1__a_5__a_5__a_5__a_5__int,
83296   _swigc__p_a_7_1__a_5__a_5__a_5__a_5__intArray,
83297   _swigc__p_a_7_1__a_5__a_5__a_5__int,
83298   _swigc__p_a_7_1__a_5__a_5__a_5__intArray,
83299   _swigc__p_a_7_1__a_5__a_5__int,
83300   _swigc__p_a_7_1__a_5__a_5__intArray,
83301   _swigc__p_a_MAXLOOP_1__double,
83302   _swigc__p_a_MAXLOOP_1__doubleArray,
83303   _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__double,
83304   _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__doubleArray,
83305   _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__int,
83306   _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__a_5__intArray,
83307   _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__double,
83308   _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__doubleArray,
83309   _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__int,
83310   _swigc__p_a_NBPAIRS_1__a_5__a_5__a_5__intArray,
83311   _swigc__p_a_NBPAIRS_1__a_5__a_5__double,
83312   _swigc__p_a_NBPAIRS_1__a_5__a_5__doubleArray,
83313   _swigc__p_a_NBPAIRS_1__a_5__a_5__int,
83314   _swigc__p_a_NBPAIRS_1__a_5__a_5__intArray,
83315   _swigc__p_a_NBPAIRS_1__double,
83316   _swigc__p_a_NBPAIRS_1__doubleArray,
83317   _swigc__p_char,
83318   _swigc__p_difference_type,
83319   _swigc__p_double,
83320   _swigc__p_doubleArray,
83321   _swigc__p_duplexT,
83322   _swigc__p_duplex_list_t,
83323   _swigc__p_first_type,
83324   _swigc__p_float,
83325   _swigc__p_floatArray,
83326   _swigc__p_heat_capacity_result,
83327   _swigc__p_int,
83328   _swigc__p_intArray,
83329   _swigc__p_my_fc_type_e,
83330   _swigc__p_p_char,
83331   _swigc__p_p_p_char,
83332   _swigc__p_p_void,
83333   _swigc__p_second_type,
83334   _swigc__p_short,
83335   _swigc__p_size_type,
83336   _swigc__p_std__out_of_range,
83337   _swigc__p_std__pairT_double_double_t,
83338   _swigc__p_std__string,
83339   _swigc__p_std__vectorT_COORDINATE_t,
83340   _swigc__p_std__vectorT_SOLUTION_t,
83341   _swigc__p_std__vectorT_char_const_p_t,
83342   _swigc__p_std__vectorT_double_t,
83343   _swigc__p_std__vectorT_duplex_list_t_t,
83344   _swigc__p_std__vectorT_heat_capacity_result_t,
83345   _swigc__p_std__vectorT_int_t,
83346   _swigc__p_std__vectorT_std__string_t,
83347   _swigc__p_std__vectorT_std__vectorT_double_t_t,
83348   _swigc__p_std__vectorT_std__vectorT_int_t_t,
83349   _swigc__p_std__vectorT_subopt_solution_t,
83350   _swigc__p_std__vectorT_unsigned_int_t,
83351   _swigc__p_std__vectorT_vrna_ep_t_t,
83352   _swigc__p_std__vectorT_vrna_move_t_t,
83353   _swigc__p_std__vectorT_vrna_path_t_t,
83354   _swigc__p_subopt_solution,
83355   _swigc__p_swString,
83356   _swigc__p_unsigned_int,
83357   _swigc__p_unsigned_short,
83358   _swigc__p_value_type,
83359   _swigc__p_void,
83360   _swigc__p_vrna_basepair_t,
83361   _swigc__p_vrna_bp_stack_s,
83362   _swigc__p_vrna_command_s,
83363   _swigc__p_vrna_cpair_s,
83364   _swigc__p_vrna_dimer_pf_s,
83365   _swigc__p_vrna_elem_prob_s,
83366   _swigc__p_vrna_ep_t,
83367   _swigc__p_vrna_exp_param_t,
83368   _swigc__p_vrna_fold_compound_t,
83369   _swigc__p_vrna_md_t,
83370   _swigc__p_vrna_move_t,
83371   _swigc__p_vrna_param_t,
83372   _swigc__p_vrna_path_options_s,
83373   _swigc__p_vrna_path_s,
83374   _swigc__p_vrna_path_t,
83375   _swigc__p_vrna_pbacktrack_mem_t,
83376   _swigc__p_vrna_pinfo_s,
83377   _swigc__p_vrna_sc_s,
83378 };
83379 
83380 
83381 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */
83382 
83383 static swig_constant_info swig_constants[] = {
83384 {0,0,0,0,0,0}
83385 };
83386 #ifdef __cplusplus
83387 }
83388 #endif
83389 static swig_variable_info swig_variables[] = {
83390     { "RNAc::lxc37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_lxc37_get,0 },
83391     { "RNAc::stack37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_stack37_get,0 },
83392     { "RNAc::stackdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_stackdH_get,0 },
83393     { "RNAc::hairpin37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_hairpin37_get,0 },
83394     { "RNAc::hairpindH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_hairpindH_get,0 },
83395     { "RNAc::bulge37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_bulge37_get,0 },
83396     { "RNAc::bulgedH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_bulgedH_get,0 },
83397     { "RNAc::internal_loop37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_internal_loop37_get,0 },
83398     { "RNAc::internal_loopdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_internal_loopdH_get,0 },
83399     { "RNAc::mismatchI37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_mismatchI37_get,&SWIGTYPE_p_a_5__a_5__int },
83400     { "RNAc::mismatchIdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_mismatchIdH_get,&SWIGTYPE_p_a_5__a_5__int },
83401     { "RNAc::mismatch1nI37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_mismatch1nI37_get,&SWIGTYPE_p_a_5__a_5__int },
83402     { "RNAc::mismatch23I37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_mismatch23I37_get,&SWIGTYPE_p_a_5__a_5__int },
83403     { "RNAc::mismatch1nIdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_mismatch1nIdH_get,&SWIGTYPE_p_a_5__a_5__int },
83404     { "RNAc::mismatch23IdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_mismatch23IdH_get,&SWIGTYPE_p_a_5__a_5__int },
83405     { "RNAc::mismatchH37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_mismatchH37_get,&SWIGTYPE_p_a_5__a_5__int },
83406     { "RNAc::mismatchM37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_mismatchM37_get,&SWIGTYPE_p_a_5__a_5__int },
83407     { "RNAc::mismatchHdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_mismatchHdH_get,&SWIGTYPE_p_a_5__a_5__int },
83408     { "RNAc::mismatchMdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_mismatchMdH_get,&SWIGTYPE_p_a_5__a_5__int },
83409     { "RNAc::mismatchExt37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_mismatchExt37_get,&SWIGTYPE_p_a_5__a_5__int },
83410     { "RNAc::mismatchExtdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_mismatchExtdH_get,&SWIGTYPE_p_a_5__a_5__int },
83411     { "RNAc::dangle5_37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_dangle5_37_get,0 },
83412     { "RNAc::dangle3_37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_dangle3_37_get,0 },
83413     { "RNAc::dangle3_dH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_dangle3_dH_get,0 },
83414     { "RNAc::dangle5_dH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_dangle5_dH_get,0 },
83415     { "RNAc::int11_37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_int11_37_get,&SWIGTYPE_p_a_7_1__a_5__a_5__int },
83416     { "RNAc::int11_dH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_int11_dH_get,&SWIGTYPE_p_a_7_1__a_5__a_5__int },
83417     { "RNAc::int21_37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_int21_37_get,&SWIGTYPE_p_a_7_1__a_5__a_5__a_5__int },
83418     { "RNAc::int21_dH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_int21_dH_get,&SWIGTYPE_p_a_7_1__a_5__a_5__a_5__int },
83419     { "RNAc::int22_37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_int22_37_get,&SWIGTYPE_p_a_7_1__a_5__a_5__a_5__a_5__int },
83420     { "RNAc::int22_dH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_int22_dH_get,&SWIGTYPE_p_a_7_1__a_5__a_5__a_5__a_5__int },
83421     { "RNAc::ML_BASE37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_ML_BASE37_get,0 },
83422     { "RNAc::ML_BASEdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_ML_BASEdH_get,0 },
83423     { "RNAc::ML_closing37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_ML_closing37_get,0 },
83424     { "RNAc::ML_closingdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_ML_closingdH_get,0 },
83425     { "RNAc::ML_intern37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_ML_intern37_get,0 },
83426     { "RNAc::ML_interndH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_ML_interndH_get,0 },
83427     { "RNAc::TripleC37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_TripleC37_get,0 },
83428     { "RNAc::TripleCdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_TripleCdH_get,0 },
83429     { "RNAc::MultipleCA37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_MultipleCA37_get,0 },
83430     { "RNAc::MultipleCAdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_MultipleCAdH_get,0 },
83431     { "RNAc::MultipleCB37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_MultipleCB37_get,0 },
83432     { "RNAc::MultipleCBdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_MultipleCBdH_get,0 },
83433     { "RNAc::MAX_NINIO", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_MAX_NINIO_get,0 },
83434     { "RNAc::ninio37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_ninio37_get,0 },
83435     { "RNAc::niniodH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_niniodH_get,0 },
83436     { "RNAc::TerminalAU37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_TerminalAU37_get,0 },
83437     { "RNAc::TerminalAUdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_TerminalAUdH_get,0 },
83438     { "RNAc::DuplexInit37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_DuplexInit37_get,0 },
83439     { "RNAc::DuplexInitdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_DuplexInitdH_get,0 },
83440     { "RNAc::Tetraloops", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_Tetraloops_get,0 },
83441     { "RNAc::Tetraloop37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_Tetraloop37_get,0 },
83442     { "RNAc::TetraloopdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_TetraloopdH_get,0 },
83443     { "RNAc::Triloops", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_Triloops_get,0 },
83444     { "RNAc::Triloop37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_Triloop37_get,0 },
83445     { "RNAc::TriloopdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_TriloopdH_get,0 },
83446     { "RNAc::Hexaloops", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_Hexaloops_get,0 },
83447     { "RNAc::Hexaloop37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_Hexaloop37_get,0 },
83448     { "RNAc::HexaloopdH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_HexaloopdH_get,0 },
83449     { "RNAc::GQuadAlpha37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_GQuadAlpha37_get,0 },
83450     { "RNAc::GQuadAlphadH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_GQuadAlphadH_get,0 },
83451     { "RNAc::GQuadBeta37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_GQuadBeta37_get,0 },
83452     { "RNAc::GQuadBetadH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_GQuadBetadH_get,0 },
83453     { "RNAc::GQuadLayerMismatch37", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_GQuadLayerMismatch37_get,0 },
83454     { "RNAc::GQuadLayerMismatchH", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_GQuadLayerMismatchH_get,0 },
83455     { "RNAc::GQuadLayerMismatchMax", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_GQuadLayerMismatchMax_get,0 },
83456     { "RNAc::Tmeasure", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_Tmeasure_get,0 },
83457     { "RNAc::temperature", MAGIC_CLASS _wrap_temperature_set, MAGIC_CLASS _wrap_temperature_get,0 },
83458     { "RNAc::dangles", MAGIC_CLASS _wrap_dangles_set, MAGIC_CLASS _wrap_dangles_get,0 },
83459     { "RNAc::betaScale", MAGIC_CLASS _wrap_betaScale_set, MAGIC_CLASS _wrap_betaScale_get,0 },
83460     { "RNAc::pf_smooth", MAGIC_CLASS _wrap_pf_smooth_set, MAGIC_CLASS _wrap_pf_smooth_get,0 },
83461     { "RNAc::tetra_loop", MAGIC_CLASS _wrap_tetra_loop_set, MAGIC_CLASS _wrap_tetra_loop_get,0 },
83462     { "RNAc::special_hp", MAGIC_CLASS _wrap_special_hp_set, MAGIC_CLASS _wrap_special_hp_get,0 },
83463     { "RNAc::noLonelyPairs", MAGIC_CLASS _wrap_noLonelyPairs_set, MAGIC_CLASS _wrap_noLonelyPairs_get,0 },
83464     { "RNAc::noLP", MAGIC_CLASS _wrap_noLP_set, MAGIC_CLASS _wrap_noLP_get,0 },
83465     { "RNAc::noGU", MAGIC_CLASS _wrap_noGU_set, MAGIC_CLASS _wrap_noGU_get,0 },
83466     { "RNAc::no_closingGU", MAGIC_CLASS _wrap_no_closingGU_set, MAGIC_CLASS _wrap_no_closingGU_get,0 },
83467     { "RNAc::noGUclosure", MAGIC_CLASS _wrap_noGUclosure_set, MAGIC_CLASS _wrap_noGUclosure_get,0 },
83468     { "RNAc::logML", MAGIC_CLASS _wrap_logML_set, MAGIC_CLASS _wrap_logML_get,0 },
83469     { "RNAc::circ", MAGIC_CLASS _wrap_circ_set, MAGIC_CLASS _wrap_circ_get,0 },
83470     { "RNAc::gquad", MAGIC_CLASS _wrap_gquad_set, MAGIC_CLASS _wrap_gquad_get,0 },
83471     { "RNAc::uniq_ML", MAGIC_CLASS _wrap_uniq_ML_set, MAGIC_CLASS _wrap_uniq_ML_get,0 },
83472     { "RNAc::energy_set", MAGIC_CLASS _wrap_energy_set_set, MAGIC_CLASS _wrap_energy_set_get,0 },
83473     { "RNAc::backtrack", MAGIC_CLASS _wrap_backtrack_set, MAGIC_CLASS _wrap_backtrack_get,0 },
83474     { "RNAc::backtrack_type", MAGIC_CLASS _wrap_backtrack_type_set, MAGIC_CLASS _wrap_backtrack_type_get,0 },
83475     { "RNAc::do_backtrack", MAGIC_CLASS _wrap_do_backtrack_set, MAGIC_CLASS _wrap_do_backtrack_get,0 },
83476     { "RNAc::compute_bpp", MAGIC_CLASS _wrap_compute_bpp_set, MAGIC_CLASS _wrap_compute_bpp_get,0 },
83477     { "RNAc::max_bp_span", MAGIC_CLASS _wrap_max_bp_span_set, MAGIC_CLASS _wrap_max_bp_span_get,0 },
83478     { "RNAc::min_loop_size", MAGIC_CLASS _wrap_min_loop_size_set, MAGIC_CLASS _wrap_min_loop_size_get,0 },
83479     { "RNAc::window_size", MAGIC_CLASS _wrap_window_size_set, MAGIC_CLASS _wrap_window_size_get,0 },
83480     { "RNAc::oldAliEn", MAGIC_CLASS _wrap_oldAliEn_set, MAGIC_CLASS _wrap_oldAliEn_get,0 },
83481     { "RNAc::ribo", MAGIC_CLASS _wrap_ribo_set, MAGIC_CLASS _wrap_ribo_get,0 },
83482     { "RNAc::cv_fact", MAGIC_CLASS _wrap_cv_fact_set, MAGIC_CLASS _wrap_cv_fact_get,0 },
83483     { "RNAc::nc_fact", MAGIC_CLASS _wrap_nc_fact_set, MAGIC_CLASS _wrap_nc_fact_get,0 },
83484     { "RNAc::sfact", MAGIC_CLASS _wrap_sfact_set, MAGIC_CLASS _wrap_sfact_get,0 },
83485     { "RNAc::pf_scale", MAGIC_CLASS _wrap_pf_scale_set, MAGIC_CLASS _wrap_pf_scale_get,0 },
83486     { "RNAc::nonstandards", MAGIC_CLASS _wrap_nonstandards_set, MAGIC_CLASS _wrap_nonstandards_get,0 },
83487     { "RNAc::xsubi", MAGIC_CLASS _wrap_xsubi_set, MAGIC_CLASS _wrap_xsubi_get,&SWIGTYPE_p_unsigned_short },
83488     { "RNAc::rna_plot_type", MAGIC_CLASS _wrap_rna_plot_type_set, MAGIC_CLASS _wrap_rna_plot_type_get,0 },
83489     { "RNAc::cut_point", MAGIC_CLASS _wrap_cut_point_set, MAGIC_CLASS _wrap_cut_point_get,0 },
83490     { "RNAc::eos_debug", MAGIC_CLASS _wrap_eos_debug_set, MAGIC_CLASS _wrap_eos_debug_get,0 },
83491     { "RNAc::st_back", MAGIC_CLASS _wrap_st_back_set, MAGIC_CLASS _wrap_st_back_get,0 },
83492     { "RNAc::mirnatog", MAGIC_CLASS _wrap_mirnatog_set, MAGIC_CLASS _wrap_mirnatog_get,0 },
83493     { "RNAc::F_monomer", MAGIC_CLASS _wrap_F_monomer_set, MAGIC_CLASS _wrap_F_monomer_get,&SWIGTYPE_p_double },
83494     { "RNAc::subopt_sorted", MAGIC_CLASS _wrap_subopt_sorted_set, MAGIC_CLASS _wrap_subopt_sorted_get,0 },
83495     { "RNAc::print_energy", MAGIC_CLASS _wrap_print_energy_set, MAGIC_CLASS _wrap_print_energy_get,0 },
83496     { "RNAc::density_of_states", MAGIC_CLASS _wrap_density_of_states_set, MAGIC_CLASS _wrap_density_of_states_get,0 },
83497     { "RNAc::symbolset", MAGIC_CLASS _wrap_symbolset_set, MAGIC_CLASS _wrap_symbolset_get,0 },
83498     { "RNAc::final_cost", MAGIC_CLASS _wrap_final_cost_set, MAGIC_CLASS _wrap_final_cost_get,0 },
83499     { "RNAc::give_up", MAGIC_CLASS _wrap_give_up_set, MAGIC_CLASS _wrap_give_up_get,0 },
83500     { "RNAc::inv_verbose", MAGIC_CLASS _wrap_inv_verbose_set, MAGIC_CLASS _wrap_inv_verbose_get,0 },
83501     { "RNAc::loop_size", MAGIC_CLASS _wrap_loop_size_set, MAGIC_CLASS _wrap_loop_size_get,0 },
83502     { "RNAc::helix_size", MAGIC_CLASS _wrap_helix_size_set, MAGIC_CLASS _wrap_helix_size_get,0 },
83503     { "RNAc::loop_degree", MAGIC_CLASS _wrap_loop_degree_set, MAGIC_CLASS _wrap_loop_degree_get,0 },
83504     { "RNAc::loops", MAGIC_CLASS _wrap_loops_set, MAGIC_CLASS _wrap_loops_get,0 },
83505     { "RNAc::unpaired", MAGIC_CLASS _wrap_unpaired_set, MAGIC_CLASS _wrap_unpaired_get,0 },
83506     { "RNAc::pairs", MAGIC_CLASS _wrap_pairs_set, MAGIC_CLASS _wrap_pairs_get,0 },
83507     { "RNAc::edit_backtrack", MAGIC_CLASS _wrap_edit_backtrack_set, MAGIC_CLASS _wrap_edit_backtrack_get,0 },
83508     { "RNAc::aligned_line", MAGIC_CLASS _wrap_aligned_line_set, MAGIC_CLASS _wrap_aligned_line_get,&SWIGTYPE_p_p_char },
83509     { "RNAc::cost_matrix", MAGIC_CLASS _wrap_cost_matrix_set, MAGIC_CLASS _wrap_cost_matrix_get,0 },
83510     { "RNAc::base_pair", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_base_pair_get,&SWIGTYPE_p_vrna_bp_stack_s },
83511     { "RNAc::pr", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_pr_get,&SWIGTYPE_p_double },
83512     { "RNAc::iindx", MAGIC_CLASS swig_magic_readonly, MAGIC_CLASS _wrap_iindx_get,&SWIGTYPE_p_int },
83513     { "RNAc::fold_constrained", MAGIC_CLASS _wrap_fold_constrained_set, MAGIC_CLASS _wrap_fold_constrained_get,0 },
83514     { "RNAc::csv", MAGIC_CLASS _wrap_csv_set, MAGIC_CLASS _wrap_csv_get,0 },
83515     { "RNAc::RibosumFile", MAGIC_CLASS _wrap_RibosumFile_set, MAGIC_CLASS _wrap_RibosumFile_get,0 },
83516     { "RNAc::james_rule", MAGIC_CLASS _wrap_james_rule_set, MAGIC_CLASS _wrap_james_rule_get,0 },
83517 {0,0,0,0}
83518 };
83519 static swig_command_info swig_commands[] = {
83520 {"RNAc::new_intP", _wrap_new_intP},
83521 {"RNAc::delete_intP", _wrap_delete_intP},
83522 {"RNAc::intP_getitem", _wrap_intP_getitem},
83523 {"RNAc::intP_setitem", _wrap_intP_setitem},
83524 {"RNAc::new_intArray", _wrap_new_intArray},
83525 {"RNAc::delete_intArray", _wrap_delete_intArray},
83526 {"RNAc::intArray_getitem", _wrap_intArray_getitem},
83527 {"RNAc::intArray_setitem", _wrap_intArray_setitem},
83528 {"RNAc::intArray_cast", _wrap_intArray_cast},
83529 {"RNAc::intArray_frompointer", _wrap_intArray_frompointer},
83530 {"RNAc::new_floatP", _wrap_new_floatP},
83531 {"RNAc::delete_floatP", _wrap_delete_floatP},
83532 {"RNAc::floatP_getitem", _wrap_floatP_getitem},
83533 {"RNAc::floatP_setitem", _wrap_floatP_setitem},
83534 {"RNAc::new_floatArray", _wrap_new_floatArray},
83535 {"RNAc::delete_floatArray", _wrap_delete_floatArray},
83536 {"RNAc::floatArray_getitem", _wrap_floatArray_getitem},
83537 {"RNAc::floatArray_setitem", _wrap_floatArray_setitem},
83538 {"RNAc::floatArray_cast", _wrap_floatArray_cast},
83539 {"RNAc::floatArray_frompointer", _wrap_floatArray_frompointer},
83540 {"RNAc::new_doubleP", _wrap_new_doubleP},
83541 {"RNAc::delete_doubleP", _wrap_delete_doubleP},
83542 {"RNAc::doubleP_getitem", _wrap_doubleP_getitem},
83543 {"RNAc::doubleP_setitem", _wrap_doubleP_setitem},
83544 {"RNAc::new_doubleArray", _wrap_new_doubleArray},
83545 {"RNAc::delete_doubleArray", _wrap_delete_doubleArray},
83546 {"RNAc::doubleArray_getitem", _wrap_doubleArray_getitem},
83547 {"RNAc::doubleArray_setitem", _wrap_doubleArray_setitem},
83548 {"RNAc::doubleArray_cast", _wrap_doubleArray_cast},
83549 {"RNAc::doubleArray_frompointer", _wrap_doubleArray_frompointer},
83550 {"RNAc::new_ushortP", _wrap_new_ushortP},
83551 {"RNAc::delete_ushortP", _wrap_delete_ushortP},
83552 {"RNAc::ushortP_getitem", _wrap_ushortP_getitem},
83553 {"RNAc::ushortP_setitem", _wrap_ushortP_setitem},
83554 {"RNAc::new_shortP", _wrap_new_shortP},
83555 {"RNAc::delete_shortP", _wrap_delete_shortP},
83556 {"RNAc::shortP_getitem", _wrap_shortP_getitem},
83557 {"RNAc::shortP_setitem", _wrap_shortP_setitem},
83558 {"RNAc::cdata", _wrap_cdata},
83559 {"RNAc::memmove", _wrap_memmove},
83560 {"RNAc::new_DoublePair", _wrap_new_DoublePair},
83561 {"RNAc::DoublePair_first_set", _wrap_DoublePair_first_set},
83562 {"RNAc::DoublePair_first_get", _wrap_DoublePair_first_get},
83563 {"RNAc::DoublePair_second_set", _wrap_DoublePair_second_set},
83564 {"RNAc::DoublePair_second_get", _wrap_DoublePair_second_get},
83565 {"RNAc::delete_DoublePair", _wrap_delete_DoublePair},
83566 {"RNAc::new_IntVector", _wrap_new_IntVector},
83567 {"RNAc::IntVector_size", _wrap_IntVector_size},
83568 {"RNAc::IntVector_empty", _wrap_IntVector_empty},
83569 {"RNAc::IntVector_clear", _wrap_IntVector_clear},
83570 {"RNAc::IntVector_push", _wrap_IntVector_push},
83571 {"RNAc::IntVector_pop", _wrap_IntVector_pop},
83572 {"RNAc::IntVector_get", _wrap_IntVector_get},
83573 {"RNAc::IntVector_set", _wrap_IntVector_set},
83574 {"RNAc::delete_IntVector", _wrap_delete_IntVector},
83575 {"RNAc::new_UIntVector", _wrap_new_UIntVector},
83576 {"RNAc::UIntVector_size", _wrap_UIntVector_size},
83577 {"RNAc::UIntVector_empty", _wrap_UIntVector_empty},
83578 {"RNAc::UIntVector_clear", _wrap_UIntVector_clear},
83579 {"RNAc::UIntVector_push", _wrap_UIntVector_push},
83580 {"RNAc::UIntVector_pop", _wrap_UIntVector_pop},
83581 {"RNAc::UIntVector_get", _wrap_UIntVector_get},
83582 {"RNAc::UIntVector_set", _wrap_UIntVector_set},
83583 {"RNAc::delete_UIntVector", _wrap_delete_UIntVector},
83584 {"RNAc::new_DoubleVector", _wrap_new_DoubleVector},
83585 {"RNAc::DoubleVector_size", _wrap_DoubleVector_size},
83586 {"RNAc::DoubleVector_empty", _wrap_DoubleVector_empty},
83587 {"RNAc::DoubleVector_clear", _wrap_DoubleVector_clear},
83588 {"RNAc::DoubleVector_push", _wrap_DoubleVector_push},
83589 {"RNAc::DoubleVector_pop", _wrap_DoubleVector_pop},
83590 {"RNAc::DoubleVector_get", _wrap_DoubleVector_get},
83591 {"RNAc::DoubleVector_set", _wrap_DoubleVector_set},
83592 {"RNAc::delete_DoubleVector", _wrap_delete_DoubleVector},
83593 {"RNAc::new_StringVector", _wrap_new_StringVector},
83594 {"RNAc::StringVector_size", _wrap_StringVector_size},
83595 {"RNAc::StringVector_empty", _wrap_StringVector_empty},
83596 {"RNAc::StringVector_clear", _wrap_StringVector_clear},
83597 {"RNAc::StringVector_push", _wrap_StringVector_push},
83598 {"RNAc::StringVector_pop", _wrap_StringVector_pop},
83599 {"RNAc::StringVector_get", _wrap_StringVector_get},
83600 {"RNAc::StringVector_set", _wrap_StringVector_set},
83601 {"RNAc::delete_StringVector", _wrap_delete_StringVector},
83602 {"RNAc::new_ConstCharVector", _wrap_new_ConstCharVector},
83603 {"RNAc::ConstCharVector_size", _wrap_ConstCharVector_size},
83604 {"RNAc::ConstCharVector_empty", _wrap_ConstCharVector_empty},
83605 {"RNAc::ConstCharVector_clear", _wrap_ConstCharVector_clear},
83606 {"RNAc::ConstCharVector_push", _wrap_ConstCharVector_push},
83607 {"RNAc::ConstCharVector_pop", _wrap_ConstCharVector_pop},
83608 {"RNAc::ConstCharVector_get", _wrap_ConstCharVector_get},
83609 {"RNAc::ConstCharVector_set", _wrap_ConstCharVector_set},
83610 {"RNAc::delete_ConstCharVector", _wrap_delete_ConstCharVector},
83611 {"RNAc::new_SOLUTIONVector", _wrap_new_SOLUTIONVector},
83612 {"RNAc::SOLUTIONVector_size", _wrap_SOLUTIONVector_size},
83613 {"RNAc::SOLUTIONVector_empty", _wrap_SOLUTIONVector_empty},
83614 {"RNAc::SOLUTIONVector_clear", _wrap_SOLUTIONVector_clear},
83615 {"RNAc::SOLUTIONVector_push", _wrap_SOLUTIONVector_push},
83616 {"RNAc::SOLUTIONVector_pop", _wrap_SOLUTIONVector_pop},
83617 {"RNAc::SOLUTIONVector_get", _wrap_SOLUTIONVector_get},
83618 {"RNAc::SOLUTIONVector_set", _wrap_SOLUTIONVector_set},
83619 {"RNAc::delete_SOLUTIONVector", _wrap_delete_SOLUTIONVector},
83620 {"RNAc::new_CoordinateVector", _wrap_new_CoordinateVector},
83621 {"RNAc::CoordinateVector_size", _wrap_CoordinateVector_size},
83622 {"RNAc::CoordinateVector_empty", _wrap_CoordinateVector_empty},
83623 {"RNAc::CoordinateVector_clear", _wrap_CoordinateVector_clear},
83624 {"RNAc::CoordinateVector_push", _wrap_CoordinateVector_push},
83625 {"RNAc::CoordinateVector_pop", _wrap_CoordinateVector_pop},
83626 {"RNAc::CoordinateVector_get", _wrap_CoordinateVector_get},
83627 {"RNAc::CoordinateVector_set", _wrap_CoordinateVector_set},
83628 {"RNAc::delete_CoordinateVector", _wrap_delete_CoordinateVector},
83629 {"RNAc::new_DoubleDoubleVector", _wrap_new_DoubleDoubleVector},
83630 {"RNAc::DoubleDoubleVector_size", _wrap_DoubleDoubleVector_size},
83631 {"RNAc::DoubleDoubleVector_empty", _wrap_DoubleDoubleVector_empty},
83632 {"RNAc::DoubleDoubleVector_clear", _wrap_DoubleDoubleVector_clear},
83633 {"RNAc::DoubleDoubleVector_push", _wrap_DoubleDoubleVector_push},
83634 {"RNAc::DoubleDoubleVector_pop", _wrap_DoubleDoubleVector_pop},
83635 {"RNAc::DoubleDoubleVector_get", _wrap_DoubleDoubleVector_get},
83636 {"RNAc::DoubleDoubleVector_set", _wrap_DoubleDoubleVector_set},
83637 {"RNAc::delete_DoubleDoubleVector", _wrap_delete_DoubleDoubleVector},
83638 {"RNAc::new_IntIntVector", _wrap_new_IntIntVector},
83639 {"RNAc::IntIntVector_size", _wrap_IntIntVector_size},
83640 {"RNAc::IntIntVector_empty", _wrap_IntIntVector_empty},
83641 {"RNAc::IntIntVector_clear", _wrap_IntIntVector_clear},
83642 {"RNAc::IntIntVector_push", _wrap_IntIntVector_push},
83643 {"RNAc::IntIntVector_pop", _wrap_IntIntVector_pop},
83644 {"RNAc::IntIntVector_get", _wrap_IntIntVector_get},
83645 {"RNAc::IntIntVector_set", _wrap_IntIntVector_set},
83646 {"RNAc::delete_IntIntVector", _wrap_delete_IntIntVector},
83647 {"RNAc::new_ElemProbVector", _wrap_new_ElemProbVector},
83648 {"RNAc::ElemProbVector_size", _wrap_ElemProbVector_size},
83649 {"RNAc::ElemProbVector_empty", _wrap_ElemProbVector_empty},
83650 {"RNAc::ElemProbVector_clear", _wrap_ElemProbVector_clear},
83651 {"RNAc::ElemProbVector_push", _wrap_ElemProbVector_push},
83652 {"RNAc::ElemProbVector_pop", _wrap_ElemProbVector_pop},
83653 {"RNAc::ElemProbVector_get", _wrap_ElemProbVector_get},
83654 {"RNAc::ElemProbVector_set", _wrap_ElemProbVector_set},
83655 {"RNAc::delete_ElemProbVector", _wrap_delete_ElemProbVector},
83656 {"RNAc::new_PathVector", _wrap_new_PathVector},
83657 {"RNAc::PathVector_size", _wrap_PathVector_size},
83658 {"RNAc::PathVector_empty", _wrap_PathVector_empty},
83659 {"RNAc::PathVector_clear", _wrap_PathVector_clear},
83660 {"RNAc::PathVector_push", _wrap_PathVector_push},
83661 {"RNAc::PathVector_pop", _wrap_PathVector_pop},
83662 {"RNAc::PathVector_get", _wrap_PathVector_get},
83663 {"RNAc::PathVector_set", _wrap_PathVector_set},
83664 {"RNAc::delete_PathVector", _wrap_delete_PathVector},
83665 {"RNAc::new_MoveVector", _wrap_new_MoveVector},
83666 {"RNAc::MoveVector_size", _wrap_MoveVector_size},
83667 {"RNAc::MoveVector_empty", _wrap_MoveVector_empty},
83668 {"RNAc::MoveVector_clear", _wrap_MoveVector_clear},
83669 {"RNAc::MoveVector_push", _wrap_MoveVector_push},
83670 {"RNAc::MoveVector_pop", _wrap_MoveVector_pop},
83671 {"RNAc::MoveVector_get", _wrap_MoveVector_get},
83672 {"RNAc::MoveVector_set", _wrap_MoveVector_set},
83673 {"RNAc::delete_MoveVector", _wrap_delete_MoveVector},
83674 {"RNAc::param_id_get", _wrap_param_id_get},
83675 {"RNAc::param_stack_get", _wrap_param_stack_get},
83676 {"RNAc::param_hairpin_get", _wrap_param_hairpin_get},
83677 {"RNAc::param_bulge_get", _wrap_param_bulge_get},
83678 {"RNAc::param_internal_loop_get", _wrap_param_internal_loop_get},
83679 {"RNAc::param_mismatchExt_get", _wrap_param_mismatchExt_get},
83680 {"RNAc::param_mismatchI_get", _wrap_param_mismatchI_get},
83681 {"RNAc::param_mismatch1nI_get", _wrap_param_mismatch1nI_get},
83682 {"RNAc::param_mismatch23I_get", _wrap_param_mismatch23I_get},
83683 {"RNAc::param_mismatchH_get", _wrap_param_mismatchH_get},
83684 {"RNAc::param_mismatchM_get", _wrap_param_mismatchM_get},
83685 {"RNAc::param_dangle5_get", _wrap_param_dangle5_get},
83686 {"RNAc::param_dangle3_get", _wrap_param_dangle3_get},
83687 {"RNAc::param_int11_get", _wrap_param_int11_get},
83688 {"RNAc::param_int21_get", _wrap_param_int21_get},
83689 {"RNAc::param_int22_get", _wrap_param_int22_get},
83690 {"RNAc::param_ninio_get", _wrap_param_ninio_get},
83691 {"RNAc::param_lxc_get", _wrap_param_lxc_get},
83692 {"RNAc::param_MLbase_get", _wrap_param_MLbase_get},
83693 {"RNAc::param_MLintern_get", _wrap_param_MLintern_get},
83694 {"RNAc::param_MLclosing_get", _wrap_param_MLclosing_get},
83695 {"RNAc::param_TerminalAU_get", _wrap_param_TerminalAU_get},
83696 {"RNAc::param_DuplexInit_get", _wrap_param_DuplexInit_get},
83697 {"RNAc::param_Tetraloop_E_get", _wrap_param_Tetraloop_E_get},
83698 {"RNAc::param_Tetraloops_get", _wrap_param_Tetraloops_get},
83699 {"RNAc::param_Triloop_E_get", _wrap_param_Triloop_E_get},
83700 {"RNAc::param_Triloops_get", _wrap_param_Triloops_get},
83701 {"RNAc::param_Hexaloop_E_get", _wrap_param_Hexaloop_E_get},
83702 {"RNAc::param_Hexaloops_get", _wrap_param_Hexaloops_get},
83703 {"RNAc::param_TripleC_get", _wrap_param_TripleC_get},
83704 {"RNAc::param_MultipleCA_get", _wrap_param_MultipleCA_get},
83705 {"RNAc::param_MultipleCB_get", _wrap_param_MultipleCB_get},
83706 {"RNAc::param_gquad_get", _wrap_param_gquad_get},
83707 {"RNAc::param_gquadLayerMismatch_get", _wrap_param_gquadLayerMismatch_get},
83708 {"RNAc::param_gquadLayerMismatchMax_get", _wrap_param_gquadLayerMismatchMax_get},
83709 {"RNAc::param_temperature_get", _wrap_param_temperature_get},
83710 {"RNAc::param_model_details_get", _wrap_param_model_details_get},
83711 {"RNAc::param_param_file_get", _wrap_param_param_file_get},
83712 {"RNAc::new_param", _wrap_new_param},
83713 {"RNAc::delete_param", _wrap_delete_param},
83714 {"RNAc::exp_param_id_get", _wrap_exp_param_id_get},
83715 {"RNAc::exp_param_expstack_get", _wrap_exp_param_expstack_get},
83716 {"RNAc::exp_param_exphairpin_get", _wrap_exp_param_exphairpin_get},
83717 {"RNAc::exp_param_expbulge_get", _wrap_exp_param_expbulge_get},
83718 {"RNAc::exp_param_expinternal_get", _wrap_exp_param_expinternal_get},
83719 {"RNAc::exp_param_expmismatchExt_get", _wrap_exp_param_expmismatchExt_get},
83720 {"RNAc::exp_param_expmismatchI_get", _wrap_exp_param_expmismatchI_get},
83721 {"RNAc::exp_param_expmismatch23I_get", _wrap_exp_param_expmismatch23I_get},
83722 {"RNAc::exp_param_expmismatch1nI_get", _wrap_exp_param_expmismatch1nI_get},
83723 {"RNAc::exp_param_expmismatchH_get", _wrap_exp_param_expmismatchH_get},
83724 {"RNAc::exp_param_expmismatchM_get", _wrap_exp_param_expmismatchM_get},
83725 {"RNAc::exp_param_expdangle5_get", _wrap_exp_param_expdangle5_get},
83726 {"RNAc::exp_param_expdangle3_get", _wrap_exp_param_expdangle3_get},
83727 {"RNAc::exp_param_expint11_get", _wrap_exp_param_expint11_get},
83728 {"RNAc::exp_param_expint21_get", _wrap_exp_param_expint21_get},
83729 {"RNAc::exp_param_expint22_get", _wrap_exp_param_expint22_get},
83730 {"RNAc::exp_param_expninio_get", _wrap_exp_param_expninio_get},
83731 {"RNAc::exp_param_lxc_get", _wrap_exp_param_lxc_get},
83732 {"RNAc::exp_param_expMLbase_get", _wrap_exp_param_expMLbase_get},
83733 {"RNAc::exp_param_expMLintern_get", _wrap_exp_param_expMLintern_get},
83734 {"RNAc::exp_param_expMLclosing_get", _wrap_exp_param_expMLclosing_get},
83735 {"RNAc::exp_param_expTermAU_get", _wrap_exp_param_expTermAU_get},
83736 {"RNAc::exp_param_expDuplexInit_get", _wrap_exp_param_expDuplexInit_get},
83737 {"RNAc::exp_param_exptetra_get", _wrap_exp_param_exptetra_get},
83738 {"RNAc::exp_param_exptri_get", _wrap_exp_param_exptri_get},
83739 {"RNAc::exp_param_exphex_get", _wrap_exp_param_exphex_get},
83740 {"RNAc::exp_param_Tetraloops_get", _wrap_exp_param_Tetraloops_get},
83741 {"RNAc::exp_param_expTriloop_get", _wrap_exp_param_expTriloop_get},
83742 {"RNAc::exp_param_Triloops_get", _wrap_exp_param_Triloops_get},
83743 {"RNAc::exp_param_Hexaloops_get", _wrap_exp_param_Hexaloops_get},
83744 {"RNAc::exp_param_expTripleC_get", _wrap_exp_param_expTripleC_get},
83745 {"RNAc::exp_param_expMultipleCA_get", _wrap_exp_param_expMultipleCA_get},
83746 {"RNAc::exp_param_expMultipleCB_get", _wrap_exp_param_expMultipleCB_get},
83747 {"RNAc::exp_param_expgquad_get", _wrap_exp_param_expgquad_get},
83748 {"RNAc::exp_param_expgquadLayerMismatch_get", _wrap_exp_param_expgquadLayerMismatch_get},
83749 {"RNAc::exp_param_gquadLayerMismatchMax_get", _wrap_exp_param_gquadLayerMismatchMax_get},
83750 {"RNAc::exp_param_kT_get", _wrap_exp_param_kT_get},
83751 {"RNAc::exp_param_pf_scale_get", _wrap_exp_param_pf_scale_get},
83752 {"RNAc::exp_param_temperature_get", _wrap_exp_param_temperature_get},
83753 {"RNAc::exp_param_alpha_get", _wrap_exp_param_alpha_get},
83754 {"RNAc::exp_param_model_details_get", _wrap_exp_param_model_details_get},
83755 {"RNAc::exp_param_param_file_get", _wrap_exp_param_param_file_get},
83756 {"RNAc::new_exp_param", _wrap_new_exp_param},
83757 {"RNAc::delete_exp_param", _wrap_delete_exp_param},
83758 {"RNAc::params_load", _wrap_params_load},
83759 {"RNAc::params_save", _wrap_params_save},
83760 {"RNAc::params_load_from_string", _wrap_params_load_from_string},
83761 {"RNAc::params_load_RNA_Turner2004", _wrap_params_load_RNA_Turner2004},
83762 {"RNAc::params_load_RNA_Turner1999", _wrap_params_load_RNA_Turner1999},
83763 {"RNAc::params_load_RNA_Andronescu2007", _wrap_params_load_RNA_Andronescu2007},
83764 {"RNAc::params_load_RNA_Langdon2018", _wrap_params_load_RNA_Langdon2018},
83765 {"RNAc::params_load_RNA_misc_special_hairpins", _wrap_params_load_RNA_misc_special_hairpins},
83766 {"RNAc::params_load_DNA_Mathews2004", _wrap_params_load_DNA_Mathews2004},
83767 {"RNAc::params_load_DNA_Mathews1999", _wrap_params_load_DNA_Mathews1999},
83768 {"RNAc::last_parameter_file", _wrap_last_parameter_file},
83769 {"RNAc::read_parameter_file", _wrap_read_parameter_file},
83770 {"RNAc::write_parameter_file", _wrap_write_parameter_file},
83771 {"RNAc::gettype", _wrap_gettype},
83772 {"RNAc::settype", _wrap_settype},
83773 {"RNAc::md_temperature_set", _wrap_md_temperature_set},
83774 {"RNAc::md_temperature_get", _wrap_md_temperature_get},
83775 {"RNAc::md_betaScale_set", _wrap_md_betaScale_set},
83776 {"RNAc::md_betaScale_get", _wrap_md_betaScale_get},
83777 {"RNAc::md_pf_smooth_set", _wrap_md_pf_smooth_set},
83778 {"RNAc::md_pf_smooth_get", _wrap_md_pf_smooth_get},
83779 {"RNAc::md_dangles_set", _wrap_md_dangles_set},
83780 {"RNAc::md_dangles_get", _wrap_md_dangles_get},
83781 {"RNAc::md_special_hp_set", _wrap_md_special_hp_set},
83782 {"RNAc::md_special_hp_get", _wrap_md_special_hp_get},
83783 {"RNAc::md_noLP_set", _wrap_md_noLP_set},
83784 {"RNAc::md_noLP_get", _wrap_md_noLP_get},
83785 {"RNAc::md_noGU_set", _wrap_md_noGU_set},
83786 {"RNAc::md_noGU_get", _wrap_md_noGU_get},
83787 {"RNAc::md_noGUclosure_set", _wrap_md_noGUclosure_set},
83788 {"RNAc::md_noGUclosure_get", _wrap_md_noGUclosure_get},
83789 {"RNAc::md_logML_set", _wrap_md_logML_set},
83790 {"RNAc::md_logML_get", _wrap_md_logML_get},
83791 {"RNAc::md_circ_set", _wrap_md_circ_set},
83792 {"RNAc::md_circ_get", _wrap_md_circ_get},
83793 {"RNAc::md_gquad_set", _wrap_md_gquad_set},
83794 {"RNAc::md_gquad_get", _wrap_md_gquad_get},
83795 {"RNAc::md_uniq_ML_set", _wrap_md_uniq_ML_set},
83796 {"RNAc::md_uniq_ML_get", _wrap_md_uniq_ML_get},
83797 {"RNAc::md_energy_set_set", _wrap_md_energy_set_set},
83798 {"RNAc::md_energy_set_get", _wrap_md_energy_set_get},
83799 {"RNAc::md_backtrack_set", _wrap_md_backtrack_set},
83800 {"RNAc::md_backtrack_get", _wrap_md_backtrack_get},
83801 {"RNAc::md_backtrack_type_set", _wrap_md_backtrack_type_set},
83802 {"RNAc::md_backtrack_type_get", _wrap_md_backtrack_type_get},
83803 {"RNAc::md_compute_bpp_set", _wrap_md_compute_bpp_set},
83804 {"RNAc::md_compute_bpp_get", _wrap_md_compute_bpp_get},
83805 {"RNAc::md_nonstandards_set", _wrap_md_nonstandards_set},
83806 {"RNAc::md_nonstandards_get", _wrap_md_nonstandards_get},
83807 {"RNAc::md_max_bp_span_set", _wrap_md_max_bp_span_set},
83808 {"RNAc::md_max_bp_span_get", _wrap_md_max_bp_span_get},
83809 {"RNAc::md_min_loop_size_set", _wrap_md_min_loop_size_set},
83810 {"RNAc::md_min_loop_size_get", _wrap_md_min_loop_size_get},
83811 {"RNAc::md_window_size_set", _wrap_md_window_size_set},
83812 {"RNAc::md_window_size_get", _wrap_md_window_size_get},
83813 {"RNAc::md_oldAliEn_set", _wrap_md_oldAliEn_set},
83814 {"RNAc::md_oldAliEn_get", _wrap_md_oldAliEn_get},
83815 {"RNAc::md_ribo_set", _wrap_md_ribo_set},
83816 {"RNAc::md_ribo_get", _wrap_md_ribo_get},
83817 {"RNAc::md_cv_fact_set", _wrap_md_cv_fact_set},
83818 {"RNAc::md_cv_fact_get", _wrap_md_cv_fact_get},
83819 {"RNAc::md_nc_fact_set", _wrap_md_nc_fact_set},
83820 {"RNAc::md_nc_fact_get", _wrap_md_nc_fact_get},
83821 {"RNAc::md_sfact_set", _wrap_md_sfact_set},
83822 {"RNAc::md_sfact_get", _wrap_md_sfact_get},
83823 {"RNAc::md_rtype_get", _wrap_md_rtype_get},
83824 {"RNAc::md_alias_get", _wrap_md_alias_get},
83825 {"RNAc::md_pair_get", _wrap_md_pair_get},
83826 {"RNAc::new_md", _wrap_new_md},
83827 {"RNAc::delete_md", _wrap_delete_md},
83828 {"RNAc::md_reset", _wrap_md_reset},
83829 {"RNAc::md_set_from_globals", _wrap_md_set_from_globals},
83830 {"RNAc::md_option_string", _wrap_md_option_string},
83831 {"RNAc::init_rand", _wrap_init_rand},
83832 {"RNAc::urn", _wrap_urn},
83833 {"RNAc::int_urn", _wrap_int_urn},
83834 {"RNAc::hamming", _wrap_hamming},
83835 {"RNAc::hamming_bound", _wrap_hamming_bound},
83836 {"RNAc::encode_seq", _wrap_encode_seq},
83837 {"RNAc::random_string", _wrap_random_string},
83838 {"RNAc::hamming_distance", _wrap_hamming_distance},
83839 {"RNAc::hamming_distance_bound", _wrap_hamming_distance_bound},
83840 {"RNAc::ep_i_set", _wrap_ep_i_set},
83841 {"RNAc::ep_i_get", _wrap_ep_i_get},
83842 {"RNAc::ep_j_set", _wrap_ep_j_set},
83843 {"RNAc::ep_j_get", _wrap_ep_j_get},
83844 {"RNAc::ep_p_set", _wrap_ep_p_set},
83845 {"RNAc::ep_p_get", _wrap_ep_p_get},
83846 {"RNAc::ep_type_set", _wrap_ep_type_set},
83847 {"RNAc::ep_type_get", _wrap_ep_type_get},
83848 {"RNAc::new_ep", _wrap_new_ep},
83849 {"RNAc::delete_ep", _wrap_delete_ep},
83850 {"RNAc::pack_structure", _wrap_pack_structure},
83851 {"RNAc::unpack_structure", _wrap_unpack_structure},
83852 {"RNAc::db_from_ptable", _wrap_db_from_ptable},
83853 {"RNAc::db_flatten", _wrap_db_flatten},
83854 {"RNAc::db_from_WUSS", _wrap_db_from_WUSS},
83855 {"RNAc::abstract_shapes", _wrap_abstract_shapes},
83856 {"RNAc::ptable", _wrap_ptable},
83857 {"RNAc::ptable_pk", _wrap_ptable_pk},
83858 {"RNAc::pt_pk_remove", _wrap_pt_pk_remove},
83859 {"RNAc::plist", _wrap_plist},
83860 {"RNAc::db_from_plist", _wrap_db_from_plist},
83861 {"RNAc::db_pk_remove", _wrap_db_pk_remove},
83862 {"RNAc::db_to_tree_string", _wrap_db_to_tree_string},
83863 {"RNAc::tree_string_unweight", _wrap_tree_string_unweight},
83864 {"RNAc::tree_string_to_db", _wrap_tree_string_to_db},
83865 {"RNAc::make_loop_index", _wrap_make_loop_index},
83866 {"RNAc::loopidx_from_ptable", _wrap_loopidx_from_ptable},
83867 {"RNAc::bp_distance", _wrap_bp_distance},
83868 {"RNAc::dist_mountain", _wrap_dist_mountain},
83869 {"RNAc::db_pack", _wrap_db_pack},
83870 {"RNAc::db_unpack", _wrap_db_unpack},
83871 {"RNAc::db_to_element_string", _wrap_db_to_element_string},
83872 {"RNAc::consensus", _wrap_consensus},
83873 {"RNAc::consens_mis", _wrap_consens_mis},
83874 {"RNAc::aln_mpi", _wrap_aln_mpi},
83875 {"RNAc::aln_pscore", _wrap_aln_pscore},
83876 {"RNAc::aln_conservation_struct", _wrap_aln_conservation_struct},
83877 {"RNAc::aln_conservation_col", _wrap_aln_conservation_col},
83878 {"RNAc::move_standard", _wrap_move_standard},
83879 {"RNAc::struct_en_energy_set", _wrap_struct_en_energy_set},
83880 {"RNAc::struct_en_energy_get", _wrap_struct_en_energy_get},
83881 {"RNAc::struct_en_structure_set", _wrap_struct_en_structure_set},
83882 {"RNAc::struct_en_structure_get", _wrap_struct_en_structure_get},
83883 {"RNAc::new_struct_en", _wrap_new_struct_en},
83884 {"RNAc::delete_struct_en", _wrap_delete_struct_en},
83885 {"RNAc::filename_sanitize", _wrap_filename_sanitize},
83886 {"RNAc::get_xy_coordinates", _wrap_get_xy_coordinates},
83887 {"RNAc::simple_circplot_coordinates", _wrap_simple_circplot_coordinates},
83888 {"RNAc::naview_xy_coordinates", _wrap_naview_xy_coordinates},
83889 {"RNAc::COORDINATE_get", _wrap_COORDINATE_get},
83890 {"RNAc::COORDINATE_X_set", _wrap_COORDINATE_X_set},
83891 {"RNAc::COORDINATE_X_get", _wrap_COORDINATE_X_get},
83892 {"RNAc::COORDINATE_Y_set", _wrap_COORDINATE_Y_set},
83893 {"RNAc::COORDINATE_Y_get", _wrap_COORDINATE_Y_get},
83894 {"RNAc::new_COORDINATE", _wrap_new_COORDINATE},
83895 {"RNAc::delete_COORDINATE", _wrap_delete_COORDINATE},
83896 {"RNAc::simple_xy_coordinates", _wrap_simple_xy_coordinates},
83897 {"RNAc::my_PS_rna_plot_snoop_a", _wrap_my_PS_rna_plot_snoop_a},
83898 {"RNAc::file_PS_rnaplot", _wrap_file_PS_rnaplot},
83899 {"RNAc::file_PS_rnaplot_a", _wrap_file_PS_rnaplot_a},
83900 {"RNAc::gmlRNA", _wrap_gmlRNA},
83901 {"RNAc::ssv_rna_plot", _wrap_ssv_rna_plot},
83902 {"RNAc::svg_rna_plot", _wrap_svg_rna_plot},
83903 {"RNAc::xrna_plot", _wrap_xrna_plot},
83904 {"RNAc::PS_rna_plot", _wrap_PS_rna_plot},
83905 {"RNAc::PS_rna_plot_a", _wrap_PS_rna_plot_a},
83906 {"RNAc::PS_rna_plot_a_gquad", _wrap_PS_rna_plot_a_gquad},
83907 {"RNAc::file_PS_aln", _wrap_file_PS_aln},
83908 {"RNAc::PS_color_dot_plot", _wrap_PS_color_dot_plot},
83909 {"RNAc::PS_color_dot_plot_turn", _wrap_PS_color_dot_plot_turn},
83910 {"RNAc::PS_dot_plot_turn", _wrap_PS_dot_plot_turn},
83911 {"RNAc::PS_dot_plot_list", _wrap_PS_dot_plot_list},
83912 {"RNAc::PS_dot_plot", _wrap_PS_dot_plot},
83913 {"RNAc::eval_structure_simple", _wrap_eval_structure_simple},
83914 {"RNAc::eval_circ_structure", _wrap_eval_circ_structure},
83915 {"RNAc::eval_gquad_structure", _wrap_eval_gquad_structure},
83916 {"RNAc::eval_circ_gquad_structure", _wrap_eval_circ_gquad_structure},
83917 {"RNAc::eval_structure_pt_simple", _wrap_eval_structure_pt_simple},
83918 {"RNAc::energy_of_structure", _wrap_energy_of_structure},
83919 {"RNAc::energy_of_circ_structure", _wrap_energy_of_circ_structure},
83920 {"RNAc::energy_of_gquad_structure", _wrap_energy_of_gquad_structure},
83921 {"RNAc::energy_of_structure_pt", _wrap_energy_of_structure_pt},
83922 {"RNAc::energy_of_move", _wrap_energy_of_move},
83923 {"RNAc::energy_of_move_pt", _wrap_energy_of_move_pt},
83924 {"RNAc::loop_energy", _wrap_loop_energy},
83925 {"RNAc::energy_of_struct", _wrap_energy_of_struct},
83926 {"RNAc::energy_of_struct_pt", _wrap_energy_of_struct_pt},
83927 {"RNAc::energy_of_circ_struct", _wrap_energy_of_circ_struct},
83928 {"RNAc::E_ext_stem", _wrap_E_ext_stem},
83929 {"RNAc::exp_E_ext_stem", _wrap_exp_E_ext_stem},
83930 {"RNAc::E_Stem", _wrap_E_Stem},
83931 {"RNAc::E_ExtLoop", _wrap_E_ExtLoop},
83932 {"RNAc::exp_E_ExtLoop", _wrap_exp_E_ExtLoop},
83933 {"RNAc::exp_E_Stem", _wrap_exp_E_Stem},
83934 {"RNAc::E_Hairpin", _wrap_E_Hairpin},
83935 {"RNAc::exp_E_Hairpin", _wrap_exp_E_Hairpin},
83936 {"RNAc::E_IntLoop", _wrap_E_IntLoop},
83937 {"RNAc::exp_E_IntLoop", _wrap_exp_E_IntLoop},
83938 {"RNAc::E_IntLoop_Co", _wrap_E_IntLoop_Co},
83939 {"RNAc::ubf_eval_int_loop", _wrap_ubf_eval_int_loop},
83940 {"RNAc::ubf_eval_int_loop2", _wrap_ubf_eval_int_loop2},
83941 {"RNAc::ubf_eval_ext_int_loop", _wrap_ubf_eval_ext_int_loop},
83942 {"RNAc::E_ml_rightmost_stem", _wrap_E_ml_rightmost_stem},
83943 {"RNAc::E_MLstem", _wrap_E_MLstem},
83944 {"RNAc::exp_E_MLstem", _wrap_exp_E_MLstem},
83945 {"RNAc::maximum_matching", _wrap_maximum_matching},
83946 {"RNAc::fold", _wrap_fold},
83947 {"RNAc::alifold", _wrap_alifold},
83948 {"RNAc::cofold", _wrap_cofold},
83949 {"RNAc::circfold", _wrap_circfold},
83950 {"RNAc::free_arrays", _wrap_free_arrays},
83951 {"RNAc::update_fold_params", _wrap_update_fold_params},
83952 {"RNAc::circalifold", _wrap_circalifold},
83953 {"RNAc::free_alifold_arrays", _wrap_free_alifold_arrays},
83954 {"RNAc::free_co_arrays", _wrap_free_co_arrays},
83955 {"RNAc::update_cofold_params", _wrap_update_cofold_params},
83956 {"RNAc::initialize_cofold", _wrap_initialize_cofold},
83957 {"RNAc::Lfoldz", _wrap_Lfoldz},
83958 {"RNAc::Lfold", _wrap_Lfold},
83959 {"RNAc::aliLfold", _wrap_aliLfold},
83960 {"RNAc::pf_fold", _wrap_pf_fold},
83961 {"RNAc::pf_circ_fold", _wrap_pf_circ_fold},
83962 {"RNAc::pf_float_precision", _wrap_pf_float_precision},
83963 {"RNAc::pbacktrack", _wrap_pbacktrack},
83964 {"RNAc::pbacktrack5", _wrap_pbacktrack5},
83965 {"RNAc::pbacktrack_circ", _wrap_pbacktrack_circ},
83966 {"RNAc::free_pf_arrays", _wrap_free_pf_arrays},
83967 {"RNAc::update_pf_params", _wrap_update_pf_params},
83968 {"RNAc::mean_bp_distance", _wrap_mean_bp_distance},
83969 {"RNAc::init_pf_fold", _wrap_init_pf_fold},
83970 {"RNAc::centroid", _wrap_centroid},
83971 {"RNAc::co_pf_fold", _wrap_co_pf_fold},
83972 {"RNAc::get_concentrations", _wrap_get_concentrations},
83973 {"RNAc::free_co_pf_arrays", _wrap_free_co_pf_arrays},
83974 {"RNAc::update_co_pf_params", _wrap_update_co_pf_params},
83975 {"RNAc::get_pr", _wrap_get_pr},
83976 {"RNAc::get_centroid_struct_pl", _wrap_get_centroid_struct_pl},
83977 {"RNAc::get_centroid_struct_pr", _wrap_get_centroid_struct_pr},
83978 {"RNAc::MEA_from_plist", _wrap_MEA_from_plist},
83979 {"RNAc::new_pbacktrack_mem", _wrap_new_pbacktrack_mem},
83980 {"RNAc::delete_pbacktrack_mem", _wrap_delete_pbacktrack_mem},
83981 {"RNAc::pfl_fold", _wrap_pfl_fold},
83982 {"RNAc::pfl_fold_up", _wrap_pfl_fold_up},
83983 {"RNAc::SOLUTION_energy_set", _wrap_SOLUTION_energy_set},
83984 {"RNAc::SOLUTION_energy_get", _wrap_SOLUTION_energy_get},
83985 {"RNAc::SOLUTION_structure_set", _wrap_SOLUTION_structure_set},
83986 {"RNAc::SOLUTION_structure_get", _wrap_SOLUTION_structure_get},
83987 {"RNAc::SOLUTION_get", _wrap_SOLUTION_get},
83988 {"RNAc::SOLUTION_size", _wrap_SOLUTION_size},
83989 {"RNAc::delete_SOLUTION", _wrap_delete_SOLUTION},
83990 {"RNAc::new_SOLUTION", _wrap_new_SOLUTION},
83991 {"RNAc::subopt_solution_energy_set", _wrap_subopt_solution_energy_set},
83992 {"RNAc::subopt_solution_energy_get", _wrap_subopt_solution_energy_get},
83993 {"RNAc::subopt_solution_structure_set", _wrap_subopt_solution_structure_set},
83994 {"RNAc::subopt_solution_structure_get", _wrap_subopt_solution_structure_get},
83995 {"RNAc::delete_subopt_solution", _wrap_delete_subopt_solution},
83996 {"RNAc::new_subopt_solution", _wrap_new_subopt_solution},
83997 {"RNAc::new_SuboptVector", _wrap_new_SuboptVector},
83998 {"RNAc::SuboptVector_size", _wrap_SuboptVector_size},
83999 {"RNAc::SuboptVector_empty", _wrap_SuboptVector_empty},
84000 {"RNAc::SuboptVector_clear", _wrap_SuboptVector_clear},
84001 {"RNAc::SuboptVector_push", _wrap_SuboptVector_push},
84002 {"RNAc::SuboptVector_pop", _wrap_SuboptVector_pop},
84003 {"RNAc::SuboptVector_get", _wrap_SuboptVector_get},
84004 {"RNAc::SuboptVector_set", _wrap_SuboptVector_set},
84005 {"RNAc::delete_SuboptVector", _wrap_delete_SuboptVector},
84006 {"RNAc::subopt", _wrap_subopt},
84007 {"RNAc::zukersubopt", _wrap_zukersubopt},
84008 {"RNAc::inverse_fold", _wrap_inverse_fold},
84009 {"RNAc::inverse_pf_fold", _wrap_inverse_pf_fold},
84010 {"RNAc::b2HIT", _wrap_b2HIT},
84011 {"RNAc::b2C", _wrap_b2C},
84012 {"RNAc::b2Shapiro", _wrap_b2Shapiro},
84013 {"RNAc::add_root", _wrap_add_root},
84014 {"RNAc::expand_Shapiro", _wrap_expand_Shapiro},
84015 {"RNAc::expand_Full", _wrap_expand_Full},
84016 {"RNAc::unexpand_Full", _wrap_unexpand_Full},
84017 {"RNAc::unweight", _wrap_unweight},
84018 {"RNAc::unexpand_aligned_F", _wrap_unexpand_aligned_F},
84019 {"RNAc::parse_structure", _wrap_parse_structure},
84020 {"RNAc::make_tree", _wrap_make_tree},
84021 {"RNAc::tree_edit_distance", _wrap_tree_edit_distance},
84022 {"RNAc::print_tree", _wrap_print_tree},
84023 {"RNAc::free_tree", _wrap_free_tree},
84024 {"RNAc::Make_swString", _wrap_Make_swString},
84025 {"RNAc::string_edit_distance", _wrap_string_edit_distance},
84026 {"RNAc::profile_edit_distance", _wrap_profile_edit_distance},
84027 {"RNAc::Make_bp_profile_bppm", _wrap_Make_bp_profile_bppm},
84028 {"RNAc::print_bppm", _wrap_print_bppm},
84029 {"RNAc::free_profile", _wrap_free_profile},
84030 {"RNAc::Make_bp_profile", _wrap_Make_bp_profile},
84031 {"RNAc::deref_any", _wrap_deref_any},
84032 {"RNAc::get_aligned_line", _wrap_get_aligned_line},
84033 {"RNAc::file_SHAPE_read", _wrap_file_SHAPE_read},
84034 {"RNAc::file_fasta_read", _wrap_file_fasta_read},
84035 {"RNAc::extract_record_rest_structure", _wrap_extract_record_rest_structure},
84036 {"RNAc::read_record", _wrap_read_record},
84037 {"RNAc::get_multi_input_line", _wrap_get_multi_input_line},
84038 {"RNAc::file_msa_detect_format", _wrap_file_msa_detect_format},
84039 {"RNAc::file_msa_write", _wrap_file_msa_write},
84040 {"RNAc::file_msa_read", _wrap_file_msa_read},
84041 {"RNAc::file_msa_read_record", _wrap_file_msa_read_record},
84042 {"RNAc::seq_encode", _wrap_seq_encode},
84043 {"RNAc::new_cmd", _wrap_new_cmd},
84044 {"RNAc::delete_cmd", _wrap_delete_cmd},
84045 {"RNAc::file_commands_read", _wrap_file_commands_read},
84046 {"RNAc::enumerate_necklaces", _wrap_enumerate_necklaces},
84047 {"RNAc::rotational_symmetry", _wrap_rotational_symmetry},
84048 {"RNAc::duplexT_i_set", _wrap_duplexT_i_set},
84049 {"RNAc::duplexT_i_get", _wrap_duplexT_i_get},
84050 {"RNAc::duplexT_j_set", _wrap_duplexT_j_set},
84051 {"RNAc::duplexT_j_get", _wrap_duplexT_j_get},
84052 {"RNAc::duplexT_structure_set", _wrap_duplexT_structure_set},
84053 {"RNAc::duplexT_structure_get", _wrap_duplexT_structure_get},
84054 {"RNAc::duplexT_energy_set", _wrap_duplexT_energy_set},
84055 {"RNAc::duplexT_energy_get", _wrap_duplexT_energy_get},
84056 {"RNAc::delete_duplexT", _wrap_delete_duplexT},
84057 {"RNAc::duplex_list_t_i_set", _wrap_duplex_list_t_i_set},
84058 {"RNAc::duplex_list_t_i_get", _wrap_duplex_list_t_i_get},
84059 {"RNAc::duplex_list_t_j_set", _wrap_duplex_list_t_j_set},
84060 {"RNAc::duplex_list_t_j_get", _wrap_duplex_list_t_j_get},
84061 {"RNAc::duplex_list_t_energy_set", _wrap_duplex_list_t_energy_set},
84062 {"RNAc::duplex_list_t_energy_get", _wrap_duplex_list_t_energy_get},
84063 {"RNAc::duplex_list_t_structure_set", _wrap_duplex_list_t_structure_set},
84064 {"RNAc::duplex_list_t_structure_get", _wrap_duplex_list_t_structure_get},
84065 {"RNAc::delete_duplex_list_t", _wrap_delete_duplex_list_t},
84066 {"RNAc::new_duplex_list_t", _wrap_new_duplex_list_t},
84067 {"RNAc::new_DuplexVector", _wrap_new_DuplexVector},
84068 {"RNAc::DuplexVector_size", _wrap_DuplexVector_size},
84069 {"RNAc::DuplexVector_empty", _wrap_DuplexVector_empty},
84070 {"RNAc::DuplexVector_clear", _wrap_DuplexVector_clear},
84071 {"RNAc::DuplexVector_push", _wrap_DuplexVector_push},
84072 {"RNAc::DuplexVector_pop", _wrap_DuplexVector_pop},
84073 {"RNAc::DuplexVector_get", _wrap_DuplexVector_get},
84074 {"RNAc::DuplexVector_set", _wrap_DuplexVector_set},
84075 {"RNAc::delete_DuplexVector", _wrap_delete_DuplexVector},
84076 {"RNAc::duplexfold", _wrap_duplexfold},
84077 {"RNAc::duplex_subopt", _wrap_duplex_subopt},
84078 {"RNAc::aliduplexfold", _wrap_aliduplexfold},
84079 {"RNAc::aliduplex_subopt", _wrap_aliduplex_subopt},
84080 {"RNAc::move_pos_5_set", _wrap_move_pos_5_set},
84081 {"RNAc::move_pos_5_get", _wrap_move_pos_5_get},
84082 {"RNAc::move_pos_3_set", _wrap_move_pos_3_set},
84083 {"RNAc::move_pos_3_get", _wrap_move_pos_3_get},
84084 {"RNAc::new_move", _wrap_new_move},
84085 {"RNAc::delete_move", _wrap_delete_move},
84086 {"RNAc::move_is_removal", _wrap_move_is_removal},
84087 {"RNAc::move_is_insertion", _wrap_move_is_insertion},
84088 {"RNAc::move_is_shift", _wrap_move_is_shift},
84089 {"RNAc::move_compare", _wrap_move_compare},
84090 {"RNAc::path_type_set", _wrap_path_type_set},
84091 {"RNAc::path_type_get", _wrap_path_type_get},
84092 {"RNAc::path_en_set", _wrap_path_en_set},
84093 {"RNAc::path_en_get", _wrap_path_en_get},
84094 {"RNAc::path_s_set", _wrap_path_s_set},
84095 {"RNAc::path_s_get", _wrap_path_s_get},
84096 {"RNAc::path_move_set", _wrap_path_move_set},
84097 {"RNAc::path_move_get", _wrap_path_move_get},
84098 {"RNAc::new_path", _wrap_new_path},
84099 {"RNAc::delete_path", _wrap_delete_path},
84100 {"RNAc::new_path_options", _wrap_new_path_options},
84101 {"RNAc::delete_path_options", _wrap_delete_path_options},
84102 {"RNAc::path_options_findpath", _wrap_path_options_findpath},
84103 {"RNAc::get_path", _wrap_get_path},
84104 {"RNAc::find_saddle", _wrap_find_saddle},
84105 {"RNAc::free_path", _wrap_free_path},
84106 {"RNAc::heat_capacity_result_temperature_set", _wrap_heat_capacity_result_temperature_set},
84107 {"RNAc::heat_capacity_result_temperature_get", _wrap_heat_capacity_result_temperature_get},
84108 {"RNAc::heat_capacity_result_heat_capacity_set", _wrap_heat_capacity_result_heat_capacity_set},
84109 {"RNAc::heat_capacity_result_heat_capacity_get", _wrap_heat_capacity_result_heat_capacity_get},
84110 {"RNAc::new_heat_capacity_result", _wrap_new_heat_capacity_result},
84111 {"RNAc::delete_heat_capacity_result", _wrap_delete_heat_capacity_result},
84112 {"RNAc::new_HeatCapacityVector", _wrap_new_HeatCapacityVector},
84113 {"RNAc::HeatCapacityVector_size", _wrap_HeatCapacityVector_size},
84114 {"RNAc::HeatCapacityVector_empty", _wrap_HeatCapacityVector_empty},
84115 {"RNAc::HeatCapacityVector_clear", _wrap_HeatCapacityVector_clear},
84116 {"RNAc::HeatCapacityVector_push", _wrap_HeatCapacityVector_push},
84117 {"RNAc::HeatCapacityVector_pop", _wrap_HeatCapacityVector_pop},
84118 {"RNAc::HeatCapacityVector_get", _wrap_HeatCapacityVector_get},
84119 {"RNAc::HeatCapacityVector_set", _wrap_HeatCapacityVector_set},
84120 {"RNAc::delete_HeatCapacityVector", _wrap_delete_HeatCapacityVector},
84121 {"RNAc::heat_capacity", _wrap_heat_capacity},
84122 {"RNAc::basepair_i_set", _wrap_basepair_i_set},
84123 {"RNAc::basepair_i_get", _wrap_basepair_i_get},
84124 {"RNAc::basepair_j_set", _wrap_basepair_j_set},
84125 {"RNAc::basepair_j_get", _wrap_basepair_j_get},
84126 {"RNAc::new_basepair", _wrap_new_basepair},
84127 {"RNAc::delete_basepair", _wrap_delete_basepair},
84128 {"RNAc::fc_add_perl_callback", _wrap_fc_add_perl_callback},
84129 {"RNAc::fc_add_perl_data", _wrap_fc_add_perl_data},
84130 {"RNAc::sc_add_f_perl_callback", _wrap_sc_add_f_perl_callback},
84131 {"RNAc::sc_add_bt_perl_callback", _wrap_sc_add_bt_perl_callback},
84132 {"RNAc::sc_add_exp_f_perl_callback", _wrap_sc_add_exp_f_perl_callback},
84133 {"RNAc::sc_add_perl_data", _wrap_sc_add_perl_data},
84134 {"RNAc::ud_set_data", _wrap_ud_set_data},
84135 {"RNAc::ud_set_prod_rule_cb", _wrap_ud_set_prod_rule_cb},
84136 {"RNAc::ud_set_exp_prod_rule_cb", _wrap_ud_set_exp_prod_rule_cb},
84137 {"RNAc::ud_set_prob_cb", _wrap_ud_set_prob_cb},
84138 {"RNAc::Lfold_cb", _wrap_Lfold_cb},
84139 {"RNAc::Lfoldz_cb", _wrap_Lfoldz_cb},
84140 {"RNAc::aliLfold_cb", _wrap_aliLfold_cb},
84141 {"RNAc::pfl_fold_cb", _wrap_pfl_fold_cb},
84142 {"RNAc::pfl_fold_up_cb", _wrap_pfl_fold_up_cb},
84143 {"RNAc::fold_compound_params_reset", _wrap_fold_compound_params_reset},
84144 {"RNAc::fold_compound_params_subst", _wrap_fold_compound_params_subst},
84145 {"RNAc::fold_compound_exp_params_rescale", _wrap_fold_compound_exp_params_rescale},
84146 {"RNAc::fold_compound_exp_params_reset", _wrap_fold_compound_exp_params_reset},
84147 {"RNAc::fold_compound_exp_params_subst", _wrap_fold_compound_exp_params_subst},
84148 {"RNAc::fold_compound_plist_from_probs", _wrap_fold_compound_plist_from_probs},
84149 {"RNAc::fold_compound_constraints_add", _wrap_fold_compound_constraints_add},
84150 {"RNAc::fold_compound_hc_init", _wrap_fold_compound_hc_init},
84151 {"RNAc::fold_compound_hc_add_up", _wrap_fold_compound_hc_add_up},
84152 {"RNAc::fold_compound_hc_add_bp_nonspecific", _wrap_fold_compound_hc_add_bp_nonspecific},
84153 {"RNAc::fold_compound_hc_add_bp", _wrap_fold_compound_hc_add_bp},
84154 {"RNAc::fold_compound_hc_add_from_db", _wrap_fold_compound_hc_add_from_db},
84155 {"RNAc::fold_compound_sc_remove", _wrap_fold_compound_sc_remove},
84156 {"RNAc::fold_compound_sc_init", _wrap_fold_compound_sc_init},
84157 {"RNAc::fold_compound_sc_add_up", _wrap_fold_compound_sc_add_up},
84158 {"RNAc::fold_compound_sc_add_bp", _wrap_fold_compound_sc_add_bp},
84159 {"RNAc::fold_compound_sc_set_bp", _wrap_fold_compound_sc_set_bp},
84160 {"RNAc::fold_compound_sc_set_up", _wrap_fold_compound_sc_set_up},
84161 {"RNAc::fold_compound_sc_set_stack", _wrap_fold_compound_sc_set_stack},
84162 {"RNAc::fold_compound_sc_add_stack", _wrap_fold_compound_sc_add_stack},
84163 {"RNAc::fold_compound_sc_add_SHAPE_deigan", _wrap_fold_compound_sc_add_SHAPE_deigan},
84164 {"RNAc::fold_compound_sc_add_SHAPE_deigan_ali", _wrap_fold_compound_sc_add_SHAPE_deigan_ali},
84165 {"RNAc::fold_compound_sc_add_SHAPE_zarringhalam", _wrap_fold_compound_sc_add_SHAPE_zarringhalam},
84166 {"RNAc::fold_compound_sc_add_hi_motif", _wrap_fold_compound_sc_add_hi_motif},
84167 {"RNAc::fold_compound_eval_structure", _wrap_fold_compound_eval_structure},
84168 {"RNAc::fold_compound_eval_structure_pt", _wrap_fold_compound_eval_structure_pt},
84169 {"RNAc::fold_compound_eval_structure_verbose", _wrap_fold_compound_eval_structure_verbose},
84170 {"RNAc::fold_compound_eval_structure_pt_verbose", _wrap_fold_compound_eval_structure_pt_verbose},
84171 {"RNAc::fold_compound_eval_covar_structure", _wrap_fold_compound_eval_covar_structure},
84172 {"RNAc::fold_compound_eval_loop_pt", _wrap_fold_compound_eval_loop_pt},
84173 {"RNAc::fold_compound_eval_move", _wrap_fold_compound_eval_move},
84174 {"RNAc::fold_compound_eval_move_pt", _wrap_fold_compound_eval_move_pt},
84175 {"RNAc::fold_compound_E_ext_loop", _wrap_fold_compound_E_ext_loop},
84176 {"RNAc::fold_compound_E_hp_loop", _wrap_fold_compound_E_hp_loop},
84177 {"RNAc::fold_compound_E_ext_hp_loop", _wrap_fold_compound_E_ext_hp_loop},
84178 {"RNAc::fold_compound_eval_ext_hp_loop", _wrap_fold_compound_eval_ext_hp_loop},
84179 {"RNAc::fold_compound_eval_hp_loop", _wrap_fold_compound_eval_hp_loop},
84180 {"RNAc::fold_compound_exp_E_hp_loop", _wrap_fold_compound_exp_E_hp_loop},
84181 {"RNAc::fold_compound_E_int_loop", _wrap_fold_compound_E_int_loop},
84182 {"RNAc::fold_compound_eval_int_loop", _wrap_fold_compound_eval_int_loop},
84183 {"RNAc::fold_compound_E_ext_int_loop", _wrap_fold_compound_E_ext_int_loop},
84184 {"RNAc::fold_compound_E_stack", _wrap_fold_compound_E_stack},
84185 {"RNAc::fold_compound_exp_E_int_loop", _wrap_fold_compound_exp_E_int_loop},
84186 {"RNAc::fold_compound_exp_E_interior_loop", _wrap_fold_compound_exp_E_interior_loop},
84187 {"RNAc::fold_compound_maxmimum_matching", _wrap_fold_compound_maxmimum_matching},
84188 {"RNAc::fold_compound_mfe", _wrap_fold_compound_mfe},
84189 {"RNAc::fold_compound_mfe_dimer", _wrap_fold_compound_mfe_dimer},
84190 {"RNAc::fold_compound_backtrack", _wrap_fold_compound_backtrack},
84191 {"RNAc::fold_compound_mfe_window", _wrap_fold_compound_mfe_window},
84192 {"RNAc::fold_compound_mfe_window_zscore", _wrap_fold_compound_mfe_window_zscore},
84193 {"RNAc::fold_compound_zsc_filter_init", _wrap_fold_compound_zsc_filter_init},
84194 {"RNAc::fold_compound_zsc_filter_update", _wrap_fold_compound_zsc_filter_update},
84195 {"RNAc::fold_compound_zsc_filter_free", _wrap_fold_compound_zsc_filter_free},
84196 {"RNAc::fold_compound_zsc_filter_on", _wrap_fold_compound_zsc_filter_on},
84197 {"RNAc::fold_compound_zsc_filter_threshold", _wrap_fold_compound_zsc_filter_threshold},
84198 {"RNAc::fold_compound_zsc_compute", _wrap_fold_compound_zsc_compute},
84199 {"RNAc::fold_compound_pf", _wrap_fold_compound_pf},
84200 {"RNAc::fold_compound_mean_bp_distance", _wrap_fold_compound_mean_bp_distance},
84201 {"RNAc::fold_compound_ensemble_defect", _wrap_fold_compound_ensemble_defect},
84202 {"RNAc::fold_compound_positional_entropy", _wrap_fold_compound_positional_entropy},
84203 {"RNAc::fold_compound_pr_structure", _wrap_fold_compound_pr_structure},
84204 {"RNAc::fold_compound_pr_energy", _wrap_fold_compound_pr_energy},
84205 {"RNAc::fold_compound_pf_dimer", _wrap_fold_compound_pf_dimer},
84206 {"RNAc::fold_compound_bpp", _wrap_fold_compound_bpp},
84207 {"RNAc::fold_compound_centroid", _wrap_fold_compound_centroid},
84208 {"RNAc::fold_compound_MEA", _wrap_fold_compound_MEA},
84209 {"RNAc::fold_compound_subopt", _wrap_fold_compound_subopt},
84210 {"RNAc::fold_compound_subopt_zuker", _wrap_fold_compound_subopt_zuker},
84211 {"RNAc::fold_compound_sequence_add", _wrap_fold_compound_sequence_add},
84212 {"RNAc::fold_compound_sequence_remove", _wrap_fold_compound_sequence_remove},
84213 {"RNAc::fold_compound_sequence_remove_all", _wrap_fold_compound_sequence_remove_all},
84214 {"RNAc::fold_compound_sequence_prepare", _wrap_fold_compound_sequence_prepare},
84215 {"RNAc::fold_compound_ud_add_motif", _wrap_fold_compound_ud_add_motif},
84216 {"RNAc::fold_compound_ud_remove", _wrap_fold_compound_ud_remove},
84217 {"RNAc::fold_compound_commands_apply", _wrap_fold_compound_commands_apply},
84218 {"RNAc::fold_compound_file_commands_apply", _wrap_fold_compound_file_commands_apply},
84219 {"RNAc::fold_compound_rotational_symmetry_db", _wrap_fold_compound_rotational_symmetry_db},
84220 {"RNAc::fold_compound_neighbors", _wrap_fold_compound_neighbors},
84221 {"RNAc::fold_compound_path", _wrap_fold_compound_path},
84222 {"RNAc::fold_compound_path_gradient", _wrap_fold_compound_path_gradient},
84223 {"RNAc::fold_compound_path_random", _wrap_fold_compound_path_random},
84224 {"RNAc::fold_compound_path_findpath_saddle", _wrap_fold_compound_path_findpath_saddle},
84225 {"RNAc::fold_compound_path_findpath", _wrap_fold_compound_path_findpath},
84226 {"RNAc::fold_compound_path_direct", _wrap_fold_compound_path_direct},
84227 {"RNAc::fold_compound_heat_capacity", _wrap_fold_compound_heat_capacity},
84228 {"RNAc::fold_compound_add_auxdata", _wrap_fold_compound_add_auxdata},
84229 {"RNAc::fold_compound_add_callback", _wrap_fold_compound_add_callback},
84230 {"RNAc::fold_compound_sc_add_data", _wrap_fold_compound_sc_add_data},
84231 {"RNAc::fold_compound_sc_add_f", _wrap_fold_compound_sc_add_f},
84232 {"RNAc::fold_compound_sc_add_bt", _wrap_fold_compound_sc_add_bt},
84233 {"RNAc::fold_compound_sc_add_exp_f", _wrap_fold_compound_sc_add_exp_f},
84234 {"RNAc::fold_compound_ud_set_data", _wrap_fold_compound_ud_set_data},
84235 {"RNAc::fold_compound_ud_set_prod_rule_cb", _wrap_fold_compound_ud_set_prod_rule_cb},
84236 {"RNAc::fold_compound_ud_set_exp_prod_rule_cb", _wrap_fold_compound_ud_set_exp_prod_rule_cb},
84237 {"RNAc::fold_compound_ud_set_prob_cb", _wrap_fold_compound_ud_set_prob_cb},
84238 {"RNAc::fold_compound_subopt_cb", _wrap_fold_compound_subopt_cb},
84239 {"RNAc::fold_compound_pbacktrack", _wrap_fold_compound_pbacktrack},
84240 {"RNAc::fold_compound_pbacktrack5", _wrap_fold_compound_pbacktrack5},
84241 {"RNAc::fold_compound_mfe_window_cb", _wrap_fold_compound_mfe_window_cb},
84242 {"RNAc::fold_compound_mfe_window_zscore_cb", _wrap_fold_compound_mfe_window_zscore_cb},
84243 {"RNAc::fold_compound_probs_window", _wrap_fold_compound_probs_window},
84244 {"RNAc::fold_compound_heat_capacity_cb", _wrap_fold_compound_heat_capacity_cb},
84245 {"RNAc::fold_compound_type_get", _wrap_fold_compound_type_get},
84246 {"RNAc::fold_compound_length_get", _wrap_fold_compound_length_get},
84247 {"RNAc::fold_compound_strands_get", _wrap_fold_compound_strands_get},
84248 {"RNAc::fold_compound_params_get", _wrap_fold_compound_params_get},
84249 {"RNAc::fold_compound_exp_params_get", _wrap_fold_compound_exp_params_get},
84250 {"RNAc::new_fold_compound", _wrap_new_fold_compound},
84251 {"RNAc::delete_fold_compound", _wrap_delete_fold_compound},
84252 {0,0}
84253 };
84254 /* -----------------------------------------------------------------------------
84255  * Type initialization:
84256  * This problem is tough by the requirement that no dynamic
84257  * memory is used. Also, since swig_type_info structures store pointers to
84258  * swig_cast_info structures and swig_cast_info structures store pointers back
84259  * to swig_type_info structures, we need some lookup code at initialization.
84260  * The idea is that swig generates all the structures that are needed.
84261  * The runtime then collects these partially filled structures.
84262  * The SWIG_InitializeModule function takes these initial arrays out of
84263  * swig_module, and does all the lookup, filling in the swig_module.types
84264  * array with the correct data and linking the correct swig_cast_info
84265  * structures together.
84266  *
84267  * The generated swig_type_info structures are assigned statically to an initial
84268  * array. We just loop through that array, and handle each type individually.
84269  * First we lookup if this type has been already loaded, and if so, use the
84270  * loaded structure instead of the generated one. Then we have to fill in the
84271  * cast linked list. The cast data is initially stored in something like a
84272  * two-dimensional array. Each row corresponds to a type (there are the same
84273  * number of rows as there are in the swig_type_initial array). Each entry in
84274  * a column is one of the swig_cast_info structures for that type.
84275  * The cast_initial array is actually an array of arrays, because each row has
84276  * a variable number of columns. So to actually build the cast linked list,
84277  * we find the array of casts associated with the type, and loop through it
84278  * adding the casts to the list. The one last trick we need to do is making
84279  * sure the type pointer in the swig_cast_info struct is correct.
84280  *
84281  * First off, we lookup the cast->type name to see if it is already loaded.
84282  * There are three cases to handle:
84283  *  1) If the cast->type has already been loaded AND the type we are adding
84284  *     casting info to has not been loaded (it is in this module), THEN we
84285  *     replace the cast->type pointer with the type pointer that has already
84286  *     been loaded.
84287  *  2) If BOTH types (the one we are adding casting info to, and the
84288  *     cast->type) are loaded, THEN the cast info has already been loaded by
84289  *     the previous module so we just ignore it.
84290  *  3) Finally, if cast->type has not already been loaded, then we add that
84291  *     swig_cast_info to the linked list (because the cast->type) pointer will
84292  *     be correct.
84293  * ----------------------------------------------------------------------------- */
84294 
84295 #ifdef __cplusplus
84296 extern "C" {
84297 #if 0
84298 } /* c-mode */
84299 #endif
84300 #endif
84301 
84302 #if 0
84303 #define SWIGRUNTIME_DEBUG
84304 #endif
84305 
84306 
84307 SWIGRUNTIME void
SWIG_InitializeModule(void * clientdata)84308 SWIG_InitializeModule(void *clientdata) {
84309   size_t i;
84310   swig_module_info *module_head, *iter;
84311   int init;
84312 
84313   /* check to see if the circular list has been setup, if not, set it up */
84314   if (swig_module.next==0) {
84315     /* Initialize the swig_module */
84316     swig_module.type_initial = swig_type_initial;
84317     swig_module.cast_initial = swig_cast_initial;
84318     swig_module.next = &swig_module;
84319     init = 1;
84320   } else {
84321     init = 0;
84322   }
84323 
84324   /* Try and load any already created modules */
84325   module_head = SWIG_GetModule(clientdata);
84326   if (!module_head) {
84327     /* This is the first module loaded for this interpreter */
84328     /* so set the swig module into the interpreter */
84329     SWIG_SetModule(clientdata, &swig_module);
84330   } else {
84331     /* the interpreter has loaded a SWIG module, but has it loaded this one? */
84332     iter=module_head;
84333     do {
84334       if (iter==&swig_module) {
84335         /* Our module is already in the list, so there's nothing more to do. */
84336         return;
84337       }
84338       iter=iter->next;
84339     } while (iter!= module_head);
84340 
84341     /* otherwise we must add our module into the list */
84342     swig_module.next = module_head->next;
84343     module_head->next = &swig_module;
84344   }
84345 
84346   /* When multiple interpreters are used, a module could have already been initialized in
84347        a different interpreter, but not yet have a pointer in this interpreter.
84348        In this case, we do not want to continue adding types... everything should be
84349        set up already */
84350   if (init == 0) return;
84351 
84352   /* Now work on filling in swig_module.types */
84353 #ifdef SWIGRUNTIME_DEBUG
84354   printf("SWIG_InitializeModule: size %lu\n", (unsigned long)swig_module.size);
84355 #endif
84356   for (i = 0; i < swig_module.size; ++i) {
84357     swig_type_info *type = 0;
84358     swig_type_info *ret;
84359     swig_cast_info *cast;
84360 
84361 #ifdef SWIGRUNTIME_DEBUG
84362     printf("SWIG_InitializeModule: type %lu %s\n", (unsigned long)i, swig_module.type_initial[i]->name);
84363 #endif
84364 
84365     /* if there is another module already loaded */
84366     if (swig_module.next != &swig_module) {
84367       type = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, swig_module.type_initial[i]->name);
84368     }
84369     if (type) {
84370       /* Overwrite clientdata field */
84371 #ifdef SWIGRUNTIME_DEBUG
84372       printf("SWIG_InitializeModule: found type %s\n", type->name);
84373 #endif
84374       if (swig_module.type_initial[i]->clientdata) {
84375         type->clientdata = swig_module.type_initial[i]->clientdata;
84376 #ifdef SWIGRUNTIME_DEBUG
84377         printf("SWIG_InitializeModule: found and overwrite type %s \n", type->name);
84378 #endif
84379       }
84380     } else {
84381       type = swig_module.type_initial[i];
84382     }
84383 
84384     /* Insert casting types */
84385     cast = swig_module.cast_initial[i];
84386     while (cast->type) {
84387       /* Don't need to add information already in the list */
84388       ret = 0;
84389 #ifdef SWIGRUNTIME_DEBUG
84390       printf("SWIG_InitializeModule: look cast %s\n", cast->type->name);
84391 #endif
84392       if (swig_module.next != &swig_module) {
84393         ret = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, cast->type->name);
84394 #ifdef SWIGRUNTIME_DEBUG
84395         if (ret) printf("SWIG_InitializeModule: found cast %s\n", ret->name);
84396 #endif
84397       }
84398       if (ret) {
84399         if (type == swig_module.type_initial[i]) {
84400 #ifdef SWIGRUNTIME_DEBUG
84401           printf("SWIG_InitializeModule: skip old type %s\n", ret->name);
84402 #endif
84403           cast->type = ret;
84404           ret = 0;
84405         } else {
84406           /* Check for casting already in the list */
84407           swig_cast_info *ocast = SWIG_TypeCheck(ret->name, type);
84408 #ifdef SWIGRUNTIME_DEBUG
84409           if (ocast) printf("SWIG_InitializeModule: skip old cast %s\n", ret->name);
84410 #endif
84411           if (!ocast) ret = 0;
84412         }
84413       }
84414 
84415       if (!ret) {
84416 #ifdef SWIGRUNTIME_DEBUG
84417         printf("SWIG_InitializeModule: adding cast %s\n", cast->type->name);
84418 #endif
84419         if (type->cast) {
84420           type->cast->prev = cast;
84421           cast->next = type->cast;
84422         }
84423         type->cast = cast;
84424       }
84425       cast++;
84426     }
84427     /* Set entry in modules->types array equal to the type */
84428     swig_module.types[i] = type;
84429   }
84430   swig_module.types[i] = 0;
84431 
84432 #ifdef SWIGRUNTIME_DEBUG
84433   printf("**** SWIG_InitializeModule: Cast List ******\n");
84434   for (i = 0; i < swig_module.size; ++i) {
84435     int j = 0;
84436     swig_cast_info *cast = swig_module.cast_initial[i];
84437     printf("SWIG_InitializeModule: type %lu %s\n", (unsigned long)i, swig_module.type_initial[i]->name);
84438     while (cast->type) {
84439       printf("SWIG_InitializeModule: cast type %s\n", cast->type->name);
84440       cast++;
84441       ++j;
84442     }
84443     printf("---- Total casts: %d\n",j);
84444   }
84445   printf("**** SWIG_InitializeModule: Cast List ******\n");
84446 #endif
84447 }
84448 
84449 /* This function will propagate the clientdata field of type to
84450 * any new swig_type_info structures that have been added into the list
84451 * of equivalent types.  It is like calling
84452 * SWIG_TypeClientData(type, clientdata) a second time.
84453 */
84454 SWIGRUNTIME void
SWIG_PropagateClientData(void)84455 SWIG_PropagateClientData(void) {
84456   size_t i;
84457   swig_cast_info *equiv;
84458   static int init_run = 0;
84459 
84460   if (init_run) return;
84461   init_run = 1;
84462 
84463   for (i = 0; i < swig_module.size; i++) {
84464     if (swig_module.types[i]->clientdata) {
84465       equiv = swig_module.types[i]->cast;
84466       while (equiv) {
84467         if (!equiv->converter) {
84468           if (equiv->type && !equiv->type->clientdata)
84469           SWIG_TypeClientData(equiv->type, swig_module.types[i]->clientdata);
84470         }
84471         equiv = equiv->next;
84472       }
84473     }
84474   }
84475 }
84476 
84477 #ifdef __cplusplus
84478 #if 0
84479 {
84480   /* c-mode */
84481 #endif
84482 }
84483 #endif
84484 
84485 
84486 
84487 #if defined(__cplusplus) && ! defined(XSPROTO)
84488 extern "C"
84489 #endif
84490 
XS(SWIG_init)84491 XS(SWIG_init) {
84492   dXSARGS;
84493   int i;
84494   (void)items;
84495 
84496   SWIG_InitializeModule(0);
84497 
84498   /* Install commands */
84499   for (i = 0; swig_commands[i].name; i++) {
84500     /* Casts only needed for Perl < 5.10. */
84501 #ifdef __cplusplus
84502     newXS(const_cast<char*>(swig_commands[i].name), swig_commands[i].wrapper, const_cast<char*>(__FILE__));
84503 #else
84504     newXS((char*)swig_commands[i].name, swig_commands[i].wrapper, (char*)__FILE__);
84505 #endif
84506   }
84507 
84508   /* Install variables */
84509   for (i = 0; swig_variables[i].name; i++) {
84510     SV *sv;
84511     sv = get_sv(swig_variables[i].name, TRUE | 0x2 | GV_ADDMULTI);
84512     if (swig_variables[i].type) {
84513       SWIG_MakePtr(sv,(void *)1, *swig_variables[i].type,0);
84514     } else {
84515       sv_setiv(sv,(IV) 0);
84516     }
84517     swig_create_magic(sv, swig_variables[i].name, swig_variables[i].set, swig_variables[i].get);
84518   }
84519 
84520   /* Install constant */
84521   for (i = 0; swig_constants[i].type; i++) {
84522     SV *sv;
84523     sv = get_sv(swig_constants[i].name, TRUE | 0x2 | GV_ADDMULTI);
84524     switch(swig_constants[i].type) {
84525     case SWIG_INT:
84526       sv_setiv(sv, (IV) swig_constants[i].lvalue);
84527       break;
84528     case SWIG_FLOAT:
84529       sv_setnv(sv, (double) swig_constants[i].dvalue);
84530       break;
84531     case SWIG_STRING:
84532       sv_setpv(sv, (const char *) swig_constants[i].pvalue);
84533       break;
84534     case SWIG_POINTER:
84535       SWIG_MakePtr(sv, swig_constants[i].pvalue, *(swig_constants[i].ptype),0);
84536       break;
84537     case SWIG_BINARY:
84538       SWIG_MakePackedObj(sv, swig_constants[i].pvalue, swig_constants[i].lvalue, *(swig_constants[i].ptype));
84539       break;
84540     default:
84541       break;
84542     }
84543     SvREADONLY_on(sv);
84544   }
84545 
84546   SWIG_TypeClientData(SWIGTYPE_p_intArray, (void*) "RNA::intArray");
84547   SWIG_TypeClientData(SWIGTYPE_p_floatArray, (void*) "RNA::floatArray");
84548   SWIG_TypeClientData(SWIGTYPE_p_doubleArray, (void*) "RNA::doubleArray");
84549   SWIG_TypeClientData(SWIGTYPE_p_std__pairT_double_double_t, (void*) "RNA::DoublePair");
84550   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_int_t, (void*) "RNA::IntVector");
84551   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_unsigned_int_t, (void*) "RNA::UIntVector");
84552   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_double_t, (void*) "RNA::DoubleVector");
84553   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_std__string_t, (void*) "RNA::StringVector");
84554   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_char_const_p_t, (void*) "RNA::ConstCharVector");
84555   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_SOLUTION_t, (void*) "RNA::SOLUTIONVector");
84556   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_COORDINATE_t, (void*) "RNA::CoordinateVector");
84557   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t, (void*) "RNA::DoubleDoubleVector");
84558   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t, (void*) "RNA::IntIntVector");
84559   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_vrna_ep_t_t, (void*) "RNA::ElemProbVector");
84560   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_vrna_path_t_t, (void*) "RNA::PathVector");
84561   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_vrna_move_t_t, (void*) "RNA::MoveVector");
84562   SWIG_TypeClientData(SWIGTYPE_p_vrna_param_t, (void*) "RNA::param");
84563   SWIG_TypeClientData(SWIGTYPE_p_vrna_exp_param_t, (void*) "RNA::exp_param");
84564   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84565     SV *sv = get_sv((char*) SWIG_prefix "PARAMETER_FORMAT_DEFAULT", TRUE | 0x2 | GV_ADDMULTI);
84566     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_PARAMETER_FORMAT_DEFAULT)));
84567     SvREADONLY_on(sv);
84568   } while(0) /*@SWIG@*/;
84569   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84570     SV *sv = get_sv((char*) SWIG_prefix "UNKNOWN", TRUE | 0x2 | GV_ADDMULTI);
84571     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(UNKNOWN)));
84572     SvREADONLY_on(sv);
84573   } while(0) /*@SWIG@*/;
84574   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84575     SV *sv = get_sv((char*) SWIG_prefix "QUIT", TRUE | 0x2 | GV_ADDMULTI);
84576     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(QUIT)));
84577     SvREADONLY_on(sv);
84578   } while(0) /*@SWIG@*/;
84579   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84580     SV *sv = get_sv((char*) SWIG_prefix "S", TRUE | 0x2 | GV_ADDMULTI);
84581     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(S)));
84582     SvREADONLY_on(sv);
84583   } while(0) /*@SWIG@*/;
84584   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84585     SV *sv = get_sv((char*) SWIG_prefix "S_H", TRUE | 0x2 | GV_ADDMULTI);
84586     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(S_H)));
84587     SvREADONLY_on(sv);
84588   } while(0) /*@SWIG@*/;
84589   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84590     SV *sv = get_sv((char*) SWIG_prefix "HP", TRUE | 0x2 | GV_ADDMULTI);
84591     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(HP)));
84592     SvREADONLY_on(sv);
84593   } while(0) /*@SWIG@*/;
84594   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84595     SV *sv = get_sv((char*) SWIG_prefix "HP_H", TRUE | 0x2 | GV_ADDMULTI);
84596     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(HP_H)));
84597     SvREADONLY_on(sv);
84598   } while(0) /*@SWIG@*/;
84599   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84600     SV *sv = get_sv((char*) SWIG_prefix "B", TRUE | 0x2 | GV_ADDMULTI);
84601     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(B)));
84602     SvREADONLY_on(sv);
84603   } while(0) /*@SWIG@*/;
84604   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84605     SV *sv = get_sv((char*) SWIG_prefix "B_H", TRUE | 0x2 | GV_ADDMULTI);
84606     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(B_H)));
84607     SvREADONLY_on(sv);
84608   } while(0) /*@SWIG@*/;
84609   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84610     SV *sv = get_sv((char*) SWIG_prefix "IL", TRUE | 0x2 | GV_ADDMULTI);
84611     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(IL)));
84612     SvREADONLY_on(sv);
84613   } while(0) /*@SWIG@*/;
84614   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84615     SV *sv = get_sv((char*) SWIG_prefix "IL_H", TRUE | 0x2 | GV_ADDMULTI);
84616     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(IL_H)));
84617     SvREADONLY_on(sv);
84618   } while(0) /*@SWIG@*/;
84619   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84620     SV *sv = get_sv((char*) SWIG_prefix "MMH", TRUE | 0x2 | GV_ADDMULTI);
84621     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MMH)));
84622     SvREADONLY_on(sv);
84623   } while(0) /*@SWIG@*/;
84624   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84625     SV *sv = get_sv((char*) SWIG_prefix "MMH_H", TRUE | 0x2 | GV_ADDMULTI);
84626     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MMH_H)));
84627     SvREADONLY_on(sv);
84628   } while(0) /*@SWIG@*/;
84629   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84630     SV *sv = get_sv((char*) SWIG_prefix "MMI", TRUE | 0x2 | GV_ADDMULTI);
84631     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MMI)));
84632     SvREADONLY_on(sv);
84633   } while(0) /*@SWIG@*/;
84634   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84635     SV *sv = get_sv((char*) SWIG_prefix "MMI_H", TRUE | 0x2 | GV_ADDMULTI);
84636     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MMI_H)));
84637     SvREADONLY_on(sv);
84638   } while(0) /*@SWIG@*/;
84639   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84640     SV *sv = get_sv((char*) SWIG_prefix "MMI1N", TRUE | 0x2 | GV_ADDMULTI);
84641     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MMI1N)));
84642     SvREADONLY_on(sv);
84643   } while(0) /*@SWIG@*/;
84644   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84645     SV *sv = get_sv((char*) SWIG_prefix "MMI1N_H", TRUE | 0x2 | GV_ADDMULTI);
84646     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MMI1N_H)));
84647     SvREADONLY_on(sv);
84648   } while(0) /*@SWIG@*/;
84649   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84650     SV *sv = get_sv((char*) SWIG_prefix "MMI23", TRUE | 0x2 | GV_ADDMULTI);
84651     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MMI23)));
84652     SvREADONLY_on(sv);
84653   } while(0) /*@SWIG@*/;
84654   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84655     SV *sv = get_sv((char*) SWIG_prefix "MMI23_H", TRUE | 0x2 | GV_ADDMULTI);
84656     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MMI23_H)));
84657     SvREADONLY_on(sv);
84658   } while(0) /*@SWIG@*/;
84659   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84660     SV *sv = get_sv((char*) SWIG_prefix "MMM", TRUE | 0x2 | GV_ADDMULTI);
84661     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MMM)));
84662     SvREADONLY_on(sv);
84663   } while(0) /*@SWIG@*/;
84664   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84665     SV *sv = get_sv((char*) SWIG_prefix "MMM_H", TRUE | 0x2 | GV_ADDMULTI);
84666     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MMM_H)));
84667     SvREADONLY_on(sv);
84668   } while(0) /*@SWIG@*/;
84669   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84670     SV *sv = get_sv((char*) SWIG_prefix "MME", TRUE | 0x2 | GV_ADDMULTI);
84671     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MME)));
84672     SvREADONLY_on(sv);
84673   } while(0) /*@SWIG@*/;
84674   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84675     SV *sv = get_sv((char*) SWIG_prefix "MME_H", TRUE | 0x2 | GV_ADDMULTI);
84676     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MME_H)));
84677     SvREADONLY_on(sv);
84678   } while(0) /*@SWIG@*/;
84679   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84680     SV *sv = get_sv((char*) SWIG_prefix "D5", TRUE | 0x2 | GV_ADDMULTI);
84681     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(D5)));
84682     SvREADONLY_on(sv);
84683   } while(0) /*@SWIG@*/;
84684   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84685     SV *sv = get_sv((char*) SWIG_prefix "D5_H", TRUE | 0x2 | GV_ADDMULTI);
84686     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(D5_H)));
84687     SvREADONLY_on(sv);
84688   } while(0) /*@SWIG@*/;
84689   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84690     SV *sv = get_sv((char*) SWIG_prefix "D3", TRUE | 0x2 | GV_ADDMULTI);
84691     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(D3)));
84692     SvREADONLY_on(sv);
84693   } while(0) /*@SWIG@*/;
84694   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84695     SV *sv = get_sv((char*) SWIG_prefix "D3_H", TRUE | 0x2 | GV_ADDMULTI);
84696     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(D3_H)));
84697     SvREADONLY_on(sv);
84698   } while(0) /*@SWIG@*/;
84699   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84700     SV *sv = get_sv((char*) SWIG_prefix "INT11", TRUE | 0x2 | GV_ADDMULTI);
84701     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(INT11)));
84702     SvREADONLY_on(sv);
84703   } while(0) /*@SWIG@*/;
84704   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84705     SV *sv = get_sv((char*) SWIG_prefix "INT11_H", TRUE | 0x2 | GV_ADDMULTI);
84706     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(INT11_H)));
84707     SvREADONLY_on(sv);
84708   } while(0) /*@SWIG@*/;
84709   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84710     SV *sv = get_sv((char*) SWIG_prefix "INT21", TRUE | 0x2 | GV_ADDMULTI);
84711     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(INT21)));
84712     SvREADONLY_on(sv);
84713   } while(0) /*@SWIG@*/;
84714   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84715     SV *sv = get_sv((char*) SWIG_prefix "INT21_H", TRUE | 0x2 | GV_ADDMULTI);
84716     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(INT21_H)));
84717     SvREADONLY_on(sv);
84718   } while(0) /*@SWIG@*/;
84719   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84720     SV *sv = get_sv((char*) SWIG_prefix "INT22", TRUE | 0x2 | GV_ADDMULTI);
84721     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(INT22)));
84722     SvREADONLY_on(sv);
84723   } while(0) /*@SWIG@*/;
84724   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84725     SV *sv = get_sv((char*) SWIG_prefix "INT22_H", TRUE | 0x2 | GV_ADDMULTI);
84726     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(INT22_H)));
84727     SvREADONLY_on(sv);
84728   } while(0) /*@SWIG@*/;
84729   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84730     SV *sv = get_sv((char*) SWIG_prefix "ML", TRUE | 0x2 | GV_ADDMULTI);
84731     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(ML)));
84732     SvREADONLY_on(sv);
84733   } while(0) /*@SWIG@*/;
84734   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84735     SV *sv = get_sv((char*) SWIG_prefix "TL", TRUE | 0x2 | GV_ADDMULTI);
84736     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(TL)));
84737     SvREADONLY_on(sv);
84738   } while(0) /*@SWIG@*/;
84739   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84740     SV *sv = get_sv((char*) SWIG_prefix "TRI", TRUE | 0x2 | GV_ADDMULTI);
84741     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(TRI)));
84742     SvREADONLY_on(sv);
84743   } while(0) /*@SWIG@*/;
84744   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84745     SV *sv = get_sv((char*) SWIG_prefix "HEX", TRUE | 0x2 | GV_ADDMULTI);
84746     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(HEX)));
84747     SvREADONLY_on(sv);
84748   } while(0) /*@SWIG@*/;
84749   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84750     SV *sv = get_sv((char*) SWIG_prefix "NIN", TRUE | 0x2 | GV_ADDMULTI);
84751     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(NIN)));
84752     SvREADONLY_on(sv);
84753   } while(0) /*@SWIG@*/;
84754   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84755     SV *sv = get_sv((char*) SWIG_prefix "MISC", TRUE | 0x2 | GV_ADDMULTI);
84756     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(MISC)));
84757     SvREADONLY_on(sv);
84758   } while(0) /*@SWIG@*/;
84759   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84760     SV *sv = get_sv((char*) SWIG_prefix "GASCONST", TRUE | 0x2 | GV_ADDMULTI);
84761     sv_setsv(sv, SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(1.98717)));
84762     SvREADONLY_on(sv);
84763   } while(0) /*@SWIG@*/;
84764   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84765     SV *sv = get_sv((char*) SWIG_prefix "K0", TRUE | 0x2 | GV_ADDMULTI);
84766     sv_setsv(sv, SWIG_From_double  SWIG_PERL_CALL_ARGS_1(static_cast< double >(273.15)));
84767     SvREADONLY_on(sv);
84768   } while(0) /*@SWIG@*/;
84769   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84770     SV *sv = get_sv((char*) SWIG_prefix "INF", TRUE | 0x2 | GV_ADDMULTI);
84771     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(10000000)));
84772     SvREADONLY_on(sv);
84773   } while(0) /*@SWIG@*/;
84774   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84775     SV *sv = get_sv((char*) SWIG_prefix "EMAX", TRUE | 0x2 | GV_ADDMULTI);
84776     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((10000000/10))));
84777     SvREADONLY_on(sv);
84778   } while(0) /*@SWIG@*/;
84779   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84780     SV *sv = get_sv((char*) SWIG_prefix "FORBIDDEN", TRUE | 0x2 | GV_ADDMULTI);
84781     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(9999)));
84782     SvREADONLY_on(sv);
84783   } while(0) /*@SWIG@*/;
84784   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84785     SV *sv = get_sv((char*) SWIG_prefix "BONUS", TRUE | 0x2 | GV_ADDMULTI);
84786     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(10000)));
84787     SvREADONLY_on(sv);
84788   } while(0) /*@SWIG@*/;
84789   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84790     SV *sv = get_sv((char*) SWIG_prefix "NBPAIRS", TRUE | 0x2 | GV_ADDMULTI);
84791     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(7)));
84792     SvREADONLY_on(sv);
84793   } while(0) /*@SWIG@*/;
84794   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84795     SV *sv = get_sv((char*) SWIG_prefix "TURN", TRUE | 0x2 | GV_ADDMULTI);
84796     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(3)));
84797     SvREADONLY_on(sv);
84798   } while(0) /*@SWIG@*/;
84799   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84800     SV *sv = get_sv((char*) SWIG_prefix "MAXLOOP", TRUE | 0x2 | GV_ADDMULTI);
84801     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(30)));
84802     SvREADONLY_on(sv);
84803   } while(0) /*@SWIG@*/;
84804   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84805     SV *sv = get_sv((char*) SWIG_prefix "UNIT", TRUE | 0x2 | GV_ADDMULTI);
84806     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(100)));
84807     SvREADONLY_on(sv);
84808   } while(0) /*@SWIG@*/;
84809   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84810     SV *sv = get_sv((char*) SWIG_prefix "MINPSCORE", TRUE | 0x2 | GV_ADDMULTI);
84811     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(-2*100)));
84812     SvREADONLY_on(sv);
84813   } while(0) /*@SWIG@*/;
84814   SWIG_TypeClientData(SWIGTYPE_p_vrna_md_t, (void*) "RNA::md");
84815   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84816     SV *sv = get_sv((char*) SWIG_prefix "NBASES", TRUE | 0x2 | GV_ADDMULTI);
84817     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(8)));
84818     SvREADONLY_on(sv);
84819   } while(0) /*@SWIG@*/;
84820   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84821     SV *sv = get_sv((char*) SWIG_prefix "MAXALPHA", TRUE | 0x2 | GV_ADDMULTI);
84822     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(20)));
84823     SvREADONLY_on(sv);
84824   } while(0) /*@SWIG@*/;
84825   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84826     SV *sv = get_sv((char*) SWIG_prefix "FILENAME_MAX_LENGTH", TRUE | 0x2 | GV_ADDMULTI);
84827     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(80)));
84828     SvREADONLY_on(sv);
84829   } while(0) /*@SWIG@*/;
84830   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84831     SV *sv = get_sv((char*) SWIG_prefix "FILENAME_ID_LENGTH", TRUE | 0x2 | GV_ADDMULTI);
84832     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(42)));
84833     SvREADONLY_on(sv);
84834   } while(0) /*@SWIG@*/;
84835   SWIG_TypeClientData(SWIGTYPE_p_vrna_ep_t, (void*) "RNA::ep");
84836   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84837     SV *sv = get_sv((char*) SWIG_prefix "PLIST_TYPE_BASEPAIR", TRUE | 0x2 | GV_ADDMULTI);
84838     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(VRNA_PLIST_TYPE_BASEPAIR)));
84839     SvREADONLY_on(sv);
84840   } while(0) /*@SWIG@*/;
84841   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84842     SV *sv = get_sv((char*) SWIG_prefix "PLIST_TYPE_GQUAD", TRUE | 0x2 | GV_ADDMULTI);
84843     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(VRNA_PLIST_TYPE_GQUAD)));
84844     SvREADONLY_on(sv);
84845   } while(0) /*@SWIG@*/;
84846   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84847     SV *sv = get_sv((char*) SWIG_prefix "PLIST_TYPE_H_MOTIF", TRUE | 0x2 | GV_ADDMULTI);
84848     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(VRNA_PLIST_TYPE_H_MOTIF)));
84849     SvREADONLY_on(sv);
84850   } while(0) /*@SWIG@*/;
84851   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84852     SV *sv = get_sv((char*) SWIG_prefix "PLIST_TYPE_I_MOTIF", TRUE | 0x2 | GV_ADDMULTI);
84853     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(VRNA_PLIST_TYPE_I_MOTIF)));
84854     SvREADONLY_on(sv);
84855   } while(0) /*@SWIG@*/;
84856   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84857     SV *sv = get_sv((char*) SWIG_prefix "PLIST_TYPE_UD_MOTIF", TRUE | 0x2 | GV_ADDMULTI);
84858     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(VRNA_PLIST_TYPE_UD_MOTIF)));
84859     SvREADONLY_on(sv);
84860   } while(0) /*@SWIG@*/;
84861   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84862     SV *sv = get_sv((char*) SWIG_prefix "PLIST_TYPE_STACK", TRUE | 0x2 | GV_ADDMULTI);
84863     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(VRNA_PLIST_TYPE_STACK)));
84864     SvREADONLY_on(sv);
84865   } while(0) /*@SWIG@*/;
84866   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84867     SV *sv = get_sv((char*) SWIG_prefix "STRUCTURE_TREE_HIT", TRUE | 0x2 | GV_ADDMULTI);
84868     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_STRUCTURE_TREE_HIT)));
84869     SvREADONLY_on(sv);
84870   } while(0) /*@SWIG@*/;
84871   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84872     SV *sv = get_sv((char*) SWIG_prefix "STRUCTURE_TREE_SHAPIRO_SHORT", TRUE | 0x2 | GV_ADDMULTI);
84873     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_STRUCTURE_TREE_SHAPIRO_SHORT)));
84874     SvREADONLY_on(sv);
84875   } while(0) /*@SWIG@*/;
84876   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84877     SV *sv = get_sv((char*) SWIG_prefix "STRUCTURE_TREE_SHAPIRO", TRUE | 0x2 | GV_ADDMULTI);
84878     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_STRUCTURE_TREE_SHAPIRO)));
84879     SvREADONLY_on(sv);
84880   } while(0) /*@SWIG@*/;
84881   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84882     SV *sv = get_sv((char*) SWIG_prefix "STRUCTURE_TREE_SHAPIRO_EXT", TRUE | 0x2 | GV_ADDMULTI);
84883     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_STRUCTURE_TREE_SHAPIRO_EXT)));
84884     SvREADONLY_on(sv);
84885   } while(0) /*@SWIG@*/;
84886   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84887     SV *sv = get_sv((char*) SWIG_prefix "STRUCTURE_TREE_SHAPIRO_WEIGHT", TRUE | 0x2 | GV_ADDMULTI);
84888     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_STRUCTURE_TREE_SHAPIRO_WEIGHT)));
84889     SvREADONLY_on(sv);
84890   } while(0) /*@SWIG@*/;
84891   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84892     SV *sv = get_sv((char*) SWIG_prefix "STRUCTURE_TREE_EXPANDED", TRUE | 0x2 | GV_ADDMULTI);
84893     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_STRUCTURE_TREE_EXPANDED)));
84894     SvREADONLY_on(sv);
84895   } while(0) /*@SWIG@*/;
84896   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84897     SV *sv = get_sv((char*) SWIG_prefix "BRACKETS_RND", TRUE | 0x2 | GV_ADDMULTI);
84898     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_BRACKETS_RND)));
84899     SvREADONLY_on(sv);
84900   } while(0) /*@SWIG@*/;
84901   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84902     SV *sv = get_sv((char*) SWIG_prefix "BRACKETS_ANG", TRUE | 0x2 | GV_ADDMULTI);
84903     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_BRACKETS_ANG)));
84904     SvREADONLY_on(sv);
84905   } while(0) /*@SWIG@*/;
84906   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84907     SV *sv = get_sv((char*) SWIG_prefix "BRACKETS_SQR", TRUE | 0x2 | GV_ADDMULTI);
84908     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_BRACKETS_SQR)));
84909     SvREADONLY_on(sv);
84910   } while(0) /*@SWIG@*/;
84911   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84912     SV *sv = get_sv((char*) SWIG_prefix "BRACKETS_CLY", TRUE | 0x2 | GV_ADDMULTI);
84913     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_BRACKETS_CLY)));
84914     SvREADONLY_on(sv);
84915   } while(0) /*@SWIG@*/;
84916   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84917     SV *sv = get_sv((char*) SWIG_prefix "BRACKETS_ALPHA", TRUE | 0x2 | GV_ADDMULTI);
84918     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_BRACKETS_ALPHA)));
84919     SvREADONLY_on(sv);
84920   } while(0) /*@SWIG@*/;
84921   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84922     SV *sv = get_sv((char*) SWIG_prefix "BRACKETS_DEFAULT", TRUE | 0x2 | GV_ADDMULTI);
84923     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_BRACKETS_DEFAULT)));
84924     SvREADONLY_on(sv);
84925   } while(0) /*@SWIG@*/;
84926   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84927     SV *sv = get_sv((char*) SWIG_prefix "BRACKETS_ANY", TRUE | 0x2 | GV_ADDMULTI);
84928     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_BRACKETS_ANY)));
84929     SvREADONLY_on(sv);
84930   } while(0) /*@SWIG@*/;
84931   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84932     SV *sv = get_sv((char*) SWIG_prefix "ALN_DEFAULT", TRUE | 0x2 | GV_ADDMULTI);
84933     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_ALN_DEFAULT)));
84934     SvREADONLY_on(sv);
84935   } while(0) /*@SWIG@*/;
84936   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84937     SV *sv = get_sv((char*) SWIG_prefix "ALN_RNA", TRUE | 0x2 | GV_ADDMULTI);
84938     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_ALN_RNA)));
84939     SvREADONLY_on(sv);
84940   } while(0) /*@SWIG@*/;
84941   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84942     SV *sv = get_sv((char*) SWIG_prefix "ALN_DNA", TRUE | 0x2 | GV_ADDMULTI);
84943     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_ALN_DNA)));
84944     SvREADONLY_on(sv);
84945   } while(0) /*@SWIG@*/;
84946   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84947     SV *sv = get_sv((char*) SWIG_prefix "ALN_UPPERCASE", TRUE | 0x2 | GV_ADDMULTI);
84948     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_ALN_UPPERCASE)));
84949     SvREADONLY_on(sv);
84950   } while(0) /*@SWIG@*/;
84951   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84952     SV *sv = get_sv((char*) SWIG_prefix "ALN_LOWERCASE", TRUE | 0x2 | GV_ADDMULTI);
84953     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_ALN_LOWERCASE)));
84954     SvREADONLY_on(sv);
84955   } while(0) /*@SWIG@*/;
84956   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84957     SV *sv = get_sv((char*) SWIG_prefix "MEASURE_SHANNON_ENTROPY", TRUE | 0x2 | GV_ADDMULTI);
84958     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_MEASURE_SHANNON_ENTROPY)));
84959     SvREADONLY_on(sv);
84960   } while(0) /*@SWIG@*/;
84961   SWIG_TypeClientData(SWIGTYPE_p__struct_en, (void*) "RNA::struct_en");
84962   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84963     SV *sv = get_sv((char*) SWIG_prefix "GRADIENT", TRUE | 0x2 | GV_ADDMULTI);
84964     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(GRADIENT)));
84965     SvREADONLY_on(sv);
84966   } while(0) /*@SWIG@*/;
84967   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84968     SV *sv = get_sv((char*) SWIG_prefix "FIRST", TRUE | 0x2 | GV_ADDMULTI);
84969     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(FIRST)));
84970     SvREADONLY_on(sv);
84971   } while(0) /*@SWIG@*/;
84972   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84973     SV *sv = get_sv((char*) SWIG_prefix "ADAPTIVE", TRUE | 0x2 | GV_ADDMULTI);
84974     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(ADAPTIVE)));
84975     SvREADONLY_on(sv);
84976   } while(0) /*@SWIG@*/;
84977   SWIG_TypeClientData(SWIGTYPE_p_COORDINATE, (void*) "RNA::COORDINATE");
84978   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84979     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_PAIR_HP", TRUE | 0x2 | GV_ADDMULTI);
84980     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_PAIR_HP)));
84981     SvREADONLY_on(sv);
84982   } while(0) /*@SWIG@*/;
84983   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84984     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_PAIR_IL", TRUE | 0x2 | GV_ADDMULTI);
84985     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_PAIR_IL)));
84986     SvREADONLY_on(sv);
84987   } while(0) /*@SWIG@*/;
84988   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84989     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_PAIR_ML", TRUE | 0x2 | GV_ADDMULTI);
84990     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_PAIR_ML)));
84991     SvREADONLY_on(sv);
84992   } while(0) /*@SWIG@*/;
84993   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84994     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_ML_ML_ML", TRUE | 0x2 | GV_ADDMULTI);
84995     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_ML_ML_ML)));
84996     SvREADONLY_on(sv);
84997   } while(0) /*@SWIG@*/;
84998   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
84999     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_ML_STEM", TRUE | 0x2 | GV_ADDMULTI);
85000     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_ML_STEM)));
85001     SvREADONLY_on(sv);
85002   } while(0) /*@SWIG@*/;
85003   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85004     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_ML_ML", TRUE | 0x2 | GV_ADDMULTI);
85005     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_ML_ML)));
85006     SvREADONLY_on(sv);
85007   } while(0) /*@SWIG@*/;
85008   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85009     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_ML_UP", TRUE | 0x2 | GV_ADDMULTI);
85010     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_ML_UP)));
85011     SvREADONLY_on(sv);
85012   } while(0) /*@SWIG@*/;
85013   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85014     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_ML_ML_STEM", TRUE | 0x2 | GV_ADDMULTI);
85015     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_ML_ML_STEM)));
85016     SvREADONLY_on(sv);
85017   } while(0) /*@SWIG@*/;
85018   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85019     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_ML_COAXIAL", TRUE | 0x2 | GV_ADDMULTI);
85020     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_ML_COAXIAL)));
85021     SvREADONLY_on(sv);
85022   } while(0) /*@SWIG@*/;
85023   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85024     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_EXT_EXT", TRUE | 0x2 | GV_ADDMULTI);
85025     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_EXT_EXT)));
85026     SvREADONLY_on(sv);
85027   } while(0) /*@SWIG@*/;
85028   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85029     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_EXT_UP", TRUE | 0x2 | GV_ADDMULTI);
85030     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_EXT_UP)));
85031     SvREADONLY_on(sv);
85032   } while(0) /*@SWIG@*/;
85033   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85034     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_EXT_STEM", TRUE | 0x2 | GV_ADDMULTI);
85035     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_EXT_STEM)));
85036     SvREADONLY_on(sv);
85037   } while(0) /*@SWIG@*/;
85038   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85039     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_EXT_EXT_EXT", TRUE | 0x2 | GV_ADDMULTI);
85040     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_EXT_EXT_EXT)));
85041     SvREADONLY_on(sv);
85042   } while(0) /*@SWIG@*/;
85043   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85044     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_EXT_STEM_EXT", TRUE | 0x2 | GV_ADDMULTI);
85045     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_EXT_STEM_EXT)));
85046     SvREADONLY_on(sv);
85047   } while(0) /*@SWIG@*/;
85048   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85049     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_EXT_STEM_OUTSIDE", TRUE | 0x2 | GV_ADDMULTI);
85050     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_EXT_STEM_OUTSIDE)));
85051     SvREADONLY_on(sv);
85052   } while(0) /*@SWIG@*/;
85053   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85054     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_EXT_EXT_STEM", TRUE | 0x2 | GV_ADDMULTI);
85055     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_EXT_EXT_STEM)));
85056     SvREADONLY_on(sv);
85057   } while(0) /*@SWIG@*/;
85058   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85059     SV *sv = get_sv((char*) SWIG_prefix "DECOMP_EXT_EXT_STEM1", TRUE | 0x2 | GV_ADDMULTI);
85060     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >((int) VRNA_DECOMP_EXT_EXT_STEM1)));
85061     SvREADONLY_on(sv);
85062   } while(0) /*@SWIG@*/;
85063   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85064     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_DB", TRUE | 0x2 | GV_ADDMULTI);
85065     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_DB)));
85066     SvREADONLY_on(sv);
85067   } while(0) /*@SWIG@*/;
85068   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85069     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_DB_ENFORCE_BP", TRUE | 0x2 | GV_ADDMULTI);
85070     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_DB_ENFORCE_BP)));
85071     SvREADONLY_on(sv);
85072   } while(0) /*@SWIG@*/;
85073   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85074     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_DB_PIPE", TRUE | 0x2 | GV_ADDMULTI);
85075     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_DB_PIPE)));
85076     SvREADONLY_on(sv);
85077   } while(0) /*@SWIG@*/;
85078   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85079     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_DB_DOT", TRUE | 0x2 | GV_ADDMULTI);
85080     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_DB_DOT)));
85081     SvREADONLY_on(sv);
85082   } while(0) /*@SWIG@*/;
85083   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85084     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_DB_X", TRUE | 0x2 | GV_ADDMULTI);
85085     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_DB_X)));
85086     SvREADONLY_on(sv);
85087   } while(0) /*@SWIG@*/;
85088   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85089     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_DB_ANG_BRACK", TRUE | 0x2 | GV_ADDMULTI);
85090     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_DB_ANG_BRACK)));
85091     SvREADONLY_on(sv);
85092   } while(0) /*@SWIG@*/;
85093   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85094     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_DB_RND_BRACK", TRUE | 0x2 | GV_ADDMULTI);
85095     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_DB_RND_BRACK)));
85096     SvREADONLY_on(sv);
85097   } while(0) /*@SWIG@*/;
85098   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85099     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_DB_INTRAMOL", TRUE | 0x2 | GV_ADDMULTI);
85100     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_DB_INTRAMOL)));
85101     SvREADONLY_on(sv);
85102   } while(0) /*@SWIG@*/;
85103   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85104     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_DB_INTERMOL", TRUE | 0x2 | GV_ADDMULTI);
85105     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_DB_INTERMOL)));
85106     SvREADONLY_on(sv);
85107   } while(0) /*@SWIG@*/;
85108   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85109     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_DB_GQUAD", TRUE | 0x2 | GV_ADDMULTI);
85110     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_DB_GQUAD)));
85111     SvREADONLY_on(sv);
85112   } while(0) /*@SWIG@*/;
85113   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85114     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_DB_DEFAULT", TRUE | 0x2 | GV_ADDMULTI);
85115     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_DB_DEFAULT)));
85116     SvREADONLY_on(sv);
85117   } while(0) /*@SWIG@*/;
85118   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85119     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_CONTEXT_EXT_LOOP", TRUE | 0x2 | GV_ADDMULTI);
85120     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_CONTEXT_EXT_LOOP)));
85121     SvREADONLY_on(sv);
85122   } while(0) /*@SWIG@*/;
85123   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85124     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_CONTEXT_HP_LOOP", TRUE | 0x2 | GV_ADDMULTI);
85125     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_CONTEXT_HP_LOOP)));
85126     SvREADONLY_on(sv);
85127   } while(0) /*@SWIG@*/;
85128   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85129     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_CONTEXT_INT_LOOP", TRUE | 0x2 | GV_ADDMULTI);
85130     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_CONTEXT_INT_LOOP)));
85131     SvREADONLY_on(sv);
85132   } while(0) /*@SWIG@*/;
85133   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85134     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_CONTEXT_INT_LOOP_ENC", TRUE | 0x2 | GV_ADDMULTI);
85135     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_CONTEXT_INT_LOOP_ENC)));
85136     SvREADONLY_on(sv);
85137   } while(0) /*@SWIG@*/;
85138   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85139     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_CONTEXT_MB_LOOP", TRUE | 0x2 | GV_ADDMULTI);
85140     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_CONTEXT_MB_LOOP)));
85141     SvREADONLY_on(sv);
85142   } while(0) /*@SWIG@*/;
85143   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85144     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_CONTEXT_MB_LOOP_ENC", TRUE | 0x2 | GV_ADDMULTI);
85145     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_CONTEXT_MB_LOOP_ENC)));
85146     SvREADONLY_on(sv);
85147   } while(0) /*@SWIG@*/;
85148   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85149     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_CONTEXT_ENFORCE", TRUE | 0x2 | GV_ADDMULTI);
85150     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_CONTEXT_ENFORCE)));
85151     SvREADONLY_on(sv);
85152   } while(0) /*@SWIG@*/;
85153   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85154     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_CONTEXT_NO_REMOVE", TRUE | 0x2 | GV_ADDMULTI);
85155     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_CONTEXT_NO_REMOVE)));
85156     SvREADONLY_on(sv);
85157   } while(0) /*@SWIG@*/;
85158   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85159     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_CONTEXT_ALL_LOOPS", TRUE | 0x2 | GV_ADDMULTI);
85160     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_CONTEXT_ALL_LOOPS)));
85161     SvREADONLY_on(sv);
85162   } while(0) /*@SWIG@*/;
85163   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85164     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_CONTEXT_NONE", TRUE | 0x2 | GV_ADDMULTI);
85165     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_CONTEXT_NONE)));
85166     SvREADONLY_on(sv);
85167   } while(0) /*@SWIG@*/;
85168   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85169     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_CONTEXT_CLOSING_LOOPS", TRUE | 0x2 | GV_ADDMULTI);
85170     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_CONTEXT_CLOSING_LOOPS)));
85171     SvREADONLY_on(sv);
85172   } while(0) /*@SWIG@*/;
85173   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85174     SV *sv = get_sv((char*) SWIG_prefix "CONSTRAINT_CONTEXT_ENCLOSED_LOOPS", TRUE | 0x2 | GV_ADDMULTI);
85175     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CONSTRAINT_CONTEXT_ENCLOSED_LOOPS)));
85176     SvREADONLY_on(sv);
85177   } while(0) /*@SWIG@*/;
85178   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85179     SV *sv = get_sv((char*) SWIG_prefix "ZSCORE_OPTIONS_NONE", TRUE | 0x2 | GV_ADDMULTI);
85180     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_ZSCORE_OPTIONS_NONE)));
85181     SvREADONLY_on(sv);
85182   } while(0) /*@SWIG@*/;
85183   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85184     SV *sv = get_sv((char*) SWIG_prefix "ZSCORE_FILTER_ON", TRUE | 0x2 | GV_ADDMULTI);
85185     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_ZSCORE_FILTER_ON)));
85186     SvREADONLY_on(sv);
85187   } while(0) /*@SWIG@*/;
85188   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85189     SV *sv = get_sv((char*) SWIG_prefix "ZSCORE_PRE_FILTER", TRUE | 0x2 | GV_ADDMULTI);
85190     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_ZSCORE_PRE_FILTER)));
85191     SvREADONLY_on(sv);
85192   } while(0) /*@SWIG@*/;
85193   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85194     SV *sv = get_sv((char*) SWIG_prefix "ZSCORE_REPORT_SUBSUMED", TRUE | 0x2 | GV_ADDMULTI);
85195     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_ZSCORE_REPORT_SUBSUMED)));
85196     SvREADONLY_on(sv);
85197   } while(0) /*@SWIG@*/;
85198   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85199     SV *sv = get_sv((char*) SWIG_prefix "ZSCORE_MODEL_DEFAULT", TRUE | 0x2 | GV_ADDMULTI);
85200     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_ZSCORE_MODEL_DEFAULT)));
85201     SvREADONLY_on(sv);
85202   } while(0) /*@SWIG@*/;
85203   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85204     SV *sv = get_sv((char*) SWIG_prefix "ZSCORE_SETTINGS_DEFAULT", TRUE | 0x2 | GV_ADDMULTI);
85205     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_ZSCORE_SETTINGS_DEFAULT)));
85206     SvREADONLY_on(sv);
85207   } while(0) /*@SWIG@*/;
85208   SWIG_TypeClientData(SWIGTYPE_p_vrna_pbacktrack_mem_t, (void*) "RNA::pbacktrack_mem");
85209   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85210     SV *sv = get_sv((char*) SWIG_prefix "PBACKTRACK_DEFAULT", TRUE | 0x2 | GV_ADDMULTI);
85211     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_PBACKTRACK_DEFAULT)));
85212     SvREADONLY_on(sv);
85213   } while(0) /*@SWIG@*/;
85214   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85215     SV *sv = get_sv((char*) SWIG_prefix "PBACKTRACK_NON_REDUNDANT", TRUE | 0x2 | GV_ADDMULTI);
85216     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_PBACKTRACK_NON_REDUNDANT)));
85217     SvREADONLY_on(sv);
85218   } while(0) /*@SWIG@*/;
85219   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85220     SV *sv = get_sv((char*) SWIG_prefix "EXT_LOOP", TRUE | 0x2 | GV_ADDMULTI);
85221     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_EXT_LOOP)));
85222     SvREADONLY_on(sv);
85223   } while(0) /*@SWIG@*/;
85224   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85225     SV *sv = get_sv((char*) SWIG_prefix "HP_LOOP", TRUE | 0x2 | GV_ADDMULTI);
85226     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_HP_LOOP)));
85227     SvREADONLY_on(sv);
85228   } while(0) /*@SWIG@*/;
85229   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85230     SV *sv = get_sv((char*) SWIG_prefix "INT_LOOP", TRUE | 0x2 | GV_ADDMULTI);
85231     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_INT_LOOP)));
85232     SvREADONLY_on(sv);
85233   } while(0) /*@SWIG@*/;
85234   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85235     SV *sv = get_sv((char*) SWIG_prefix "MB_LOOP", TRUE | 0x2 | GV_ADDMULTI);
85236     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_MB_LOOP)));
85237     SvREADONLY_on(sv);
85238   } while(0) /*@SWIG@*/;
85239   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85240     SV *sv = get_sv((char*) SWIG_prefix "ANY_LOOP", TRUE | 0x2 | GV_ADDMULTI);
85241     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_ANY_LOOP)));
85242     SvREADONLY_on(sv);
85243   } while(0) /*@SWIG@*/;
85244   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85245     SV *sv = get_sv((char*) SWIG_prefix "PROBS_WINDOW_BPP", TRUE | 0x2 | GV_ADDMULTI);
85246     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_PROBS_WINDOW_BPP)));
85247     SvREADONLY_on(sv);
85248   } while(0) /*@SWIG@*/;
85249   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85250     SV *sv = get_sv((char*) SWIG_prefix "PROBS_WINDOW_UP", TRUE | 0x2 | GV_ADDMULTI);
85251     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_PROBS_WINDOW_UP)));
85252     SvREADONLY_on(sv);
85253   } while(0) /*@SWIG@*/;
85254   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85255     SV *sv = get_sv((char*) SWIG_prefix "PROBS_WINDOW_STACKP", TRUE | 0x2 | GV_ADDMULTI);
85256     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_PROBS_WINDOW_STACKP)));
85257     SvREADONLY_on(sv);
85258   } while(0) /*@SWIG@*/;
85259   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85260     SV *sv = get_sv((char*) SWIG_prefix "PROBS_WINDOW_UP_SPLIT", TRUE | 0x2 | GV_ADDMULTI);
85261     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_PROBS_WINDOW_UP_SPLIT)));
85262     SvREADONLY_on(sv);
85263   } while(0) /*@SWIG@*/;
85264   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85265     SV *sv = get_sv((char*) SWIG_prefix "PROBS_WINDOW_PF", TRUE | 0x2 | GV_ADDMULTI);
85266     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_PROBS_WINDOW_PF)));
85267     SvREADONLY_on(sv);
85268   } while(0) /*@SWIG@*/;
85269   SWIG_TypeClientData(SWIGTYPE_p_SOLUTION, (void*) "RNA::SOLUTION");
85270   SWIG_TypeClientData(SWIGTYPE_p_subopt_solution, (void*) "RNA::subopt_solution");
85271   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_subopt_solution_t, (void*) "RNA::SuboptVector");
85272   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85273     SV *sv = get_sv((char*) SWIG_prefix "MAXDOS", TRUE | 0x2 | GV_ADDMULTI);
85274     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(1000)));
85275     SvREADONLY_on(sv);
85276   } while(0) /*@SWIG@*/;
85277 
85278   /* work around segfault when script tries to free symbolset */
85279 
85280   symbolset = (char *) vrna_alloc(21);
85281   strcpy(symbolset, "AUGC");
85282 
85283 
85284   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85285     SV *sv = get_sv((char*) SWIG_prefix "FILE_FORMAT_MSA_CLUSTAL", TRUE | 0x2 | GV_ADDMULTI);
85286     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_FILE_FORMAT_MSA_CLUSTAL)));
85287     SvREADONLY_on(sv);
85288   } while(0) /*@SWIG@*/;
85289   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85290     SV *sv = get_sv((char*) SWIG_prefix "FILE_FORMAT_MSA_DEFAULT", TRUE | 0x2 | GV_ADDMULTI);
85291     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_FILE_FORMAT_MSA_DEFAULT)));
85292     SvREADONLY_on(sv);
85293   } while(0) /*@SWIG@*/;
85294   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85295     SV *sv = get_sv((char*) SWIG_prefix "FILE_FORMAT_MSA_FASTA", TRUE | 0x2 | GV_ADDMULTI);
85296     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_FILE_FORMAT_MSA_FASTA)));
85297     SvREADONLY_on(sv);
85298   } while(0) /*@SWIG@*/;
85299   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85300     SV *sv = get_sv((char*) SWIG_prefix "FILE_FORMAT_MSA_MAF", TRUE | 0x2 | GV_ADDMULTI);
85301     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_FILE_FORMAT_MSA_MAF)));
85302     SvREADONLY_on(sv);
85303   } while(0) /*@SWIG@*/;
85304   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85305     SV *sv = get_sv((char*) SWIG_prefix "FILE_FORMAT_MSA_NOCHECK", TRUE | 0x2 | GV_ADDMULTI);
85306     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_FILE_FORMAT_MSA_NOCHECK)));
85307     SvREADONLY_on(sv);
85308   } while(0) /*@SWIG@*/;
85309   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85310     SV *sv = get_sv((char*) SWIG_prefix "FILE_FORMAT_MSA_STOCKHOLM", TRUE | 0x2 | GV_ADDMULTI);
85311     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_FILE_FORMAT_MSA_STOCKHOLM)));
85312     SvREADONLY_on(sv);
85313   } while(0) /*@SWIG@*/;
85314   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85315     SV *sv = get_sv((char*) SWIG_prefix "FILE_FORMAT_MSA_MIS", TRUE | 0x2 | GV_ADDMULTI);
85316     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_FILE_FORMAT_MSA_MIS)));
85317     SvREADONLY_on(sv);
85318   } while(0) /*@SWIG@*/;
85319   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85320     SV *sv = get_sv((char*) SWIG_prefix "FILE_FORMAT_MSA_UNKNOWN", TRUE | 0x2 | GV_ADDMULTI);
85321     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_FILE_FORMAT_MSA_UNKNOWN)));
85322     SvREADONLY_on(sv);
85323   } while(0) /*@SWIG@*/;
85324   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85325     SV *sv = get_sv((char*) SWIG_prefix "FILE_FORMAT_MSA_QUIET", TRUE | 0x2 | GV_ADDMULTI);
85326     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_FILE_FORMAT_MSA_QUIET)));
85327     SvREADONLY_on(sv);
85328   } while(0) /*@SWIG@*/;
85329   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85330     SV *sv = get_sv((char*) SWIG_prefix "FILE_FORMAT_MSA_SILENT", TRUE | 0x2 | GV_ADDMULTI);
85331     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_FILE_FORMAT_MSA_SILENT)));
85332     SvREADONLY_on(sv);
85333   } while(0) /*@SWIG@*/;
85334   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85335     SV *sv = get_sv((char*) SWIG_prefix "FILE_FORMAT_MSA_APPEND", TRUE | 0x2 | GV_ADDMULTI);
85336     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_FILE_FORMAT_MSA_APPEND)));
85337     SvREADONLY_on(sv);
85338   } while(0) /*@SWIG@*/;
85339   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85340     SV *sv = get_sv((char*) SWIG_prefix "SEQUENCE_RNA", TRUE | 0x2 | GV_ADDMULTI);
85341     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_SEQUENCE_RNA)));
85342     SvREADONLY_on(sv);
85343   } while(0) /*@SWIG@*/;
85344   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85345     SV *sv = get_sv((char*) SWIG_prefix "SEQUENCE_DNA", TRUE | 0x2 | GV_ADDMULTI);
85346     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_SEQUENCE_DNA)));
85347     SvREADONLY_on(sv);
85348   } while(0) /*@SWIG@*/;
85349   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85350     SV *sv = get_sv((char*) SWIG_prefix "UNSTRUCTURED_DOMAIN_EXT_LOOP", TRUE | 0x2 | GV_ADDMULTI);
85351     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_UNSTRUCTURED_DOMAIN_EXT_LOOP)));
85352     SvREADONLY_on(sv);
85353   } while(0) /*@SWIG@*/;
85354   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85355     SV *sv = get_sv((char*) SWIG_prefix "UNSTRUCTURED_DOMAIN_HP_LOOP", TRUE | 0x2 | GV_ADDMULTI);
85356     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_UNSTRUCTURED_DOMAIN_HP_LOOP)));
85357     SvREADONLY_on(sv);
85358   } while(0) /*@SWIG@*/;
85359   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85360     SV *sv = get_sv((char*) SWIG_prefix "UNSTRUCTURED_DOMAIN_INT_LOOP", TRUE | 0x2 | GV_ADDMULTI);
85361     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_UNSTRUCTURED_DOMAIN_INT_LOOP)));
85362     SvREADONLY_on(sv);
85363   } while(0) /*@SWIG@*/;
85364   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85365     SV *sv = get_sv((char*) SWIG_prefix "UNSTRUCTURED_DOMAIN_MB_LOOP", TRUE | 0x2 | GV_ADDMULTI);
85366     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_UNSTRUCTURED_DOMAIN_MB_LOOP)));
85367     SvREADONLY_on(sv);
85368   } while(0) /*@SWIG@*/;
85369   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85370     SV *sv = get_sv((char*) SWIG_prefix "UNSTRUCTURED_DOMAIN_ALL_LOOPS", TRUE | 0x2 | GV_ADDMULTI);
85371     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_UNSTRUCTURED_DOMAIN_ALL_LOOPS)));
85372     SvREADONLY_on(sv);
85373   } while(0) /*@SWIG@*/;
85374   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85375     SV *sv = get_sv((char*) SWIG_prefix "UNSTRUCTURED_DOMAIN_MOTIF", TRUE | 0x2 | GV_ADDMULTI);
85376     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_UNSTRUCTURED_DOMAIN_MOTIF)));
85377     SvREADONLY_on(sv);
85378   } while(0) /*@SWIG@*/;
85379   SWIG_TypeClientData(SWIGTYPE_p_vrna_command_s, (void*) "RNA::cmd");
85380   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85381     SV *sv = get_sv((char*) SWIG_prefix "CMD_PARSE_DEFAULTS", TRUE | 0x2 | GV_ADDMULTI);
85382     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CMD_PARSE_DEFAULTS)));
85383     SvREADONLY_on(sv);
85384   } while(0) /*@SWIG@*/;
85385   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85386     SV *sv = get_sv((char*) SWIG_prefix "CMD_PARSE_HC", TRUE | 0x2 | GV_ADDMULTI);
85387     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CMD_PARSE_HC)));
85388     SvREADONLY_on(sv);
85389   } while(0) /*@SWIG@*/;
85390   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85391     SV *sv = get_sv((char*) SWIG_prefix "CMD_PARSE_SC", TRUE | 0x2 | GV_ADDMULTI);
85392     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CMD_PARSE_SC)));
85393     SvREADONLY_on(sv);
85394   } while(0) /*@SWIG@*/;
85395   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85396     SV *sv = get_sv((char*) SWIG_prefix "CMD_PARSE_SD", TRUE | 0x2 | GV_ADDMULTI);
85397     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CMD_PARSE_SD)));
85398     SvREADONLY_on(sv);
85399   } while(0) /*@SWIG@*/;
85400   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85401     SV *sv = get_sv((char*) SWIG_prefix "CMD_PARSE_UD", TRUE | 0x2 | GV_ADDMULTI);
85402     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_CMD_PARSE_UD)));
85403     SvREADONLY_on(sv);
85404   } while(0) /*@SWIG@*/;
85405   SWIG_TypeClientData(SWIGTYPE_p_duplexT, (void*) "RNA::duplexT");
85406   SWIG_TypeClientData(SWIGTYPE_p_duplex_list_t, (void*) "RNA::duplex_list_t");
85407   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_duplex_list_t_t, (void*) "RNA::DuplexVector");
85408   SWIG_TypeClientData(SWIGTYPE_p_vrna_move_t, (void*) "RNA::move");
85409   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85410     SV *sv = get_sv((char*) SWIG_prefix "MOVESET_INSERTION", TRUE | 0x2 | GV_ADDMULTI);
85411     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_MOVESET_INSERTION)));
85412     SvREADONLY_on(sv);
85413   } while(0) /*@SWIG@*/;
85414   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85415     SV *sv = get_sv((char*) SWIG_prefix "MOVESET_DELETION", TRUE | 0x2 | GV_ADDMULTI);
85416     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_MOVESET_DELETION)));
85417     SvREADONLY_on(sv);
85418   } while(0) /*@SWIG@*/;
85419   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85420     SV *sv = get_sv((char*) SWIG_prefix "MOVESET_SHIFT", TRUE | 0x2 | GV_ADDMULTI);
85421     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_MOVESET_SHIFT)));
85422     SvREADONLY_on(sv);
85423   } while(0) /*@SWIG@*/;
85424   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85425     SV *sv = get_sv((char*) SWIG_prefix "MOVESET_NO_LP", TRUE | 0x2 | GV_ADDMULTI);
85426     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_MOVESET_NO_LP)));
85427     SvREADONLY_on(sv);
85428   } while(0) /*@SWIG@*/;
85429   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85430     SV *sv = get_sv((char*) SWIG_prefix "MOVESET_DEFAULT", TRUE | 0x2 | GV_ADDMULTI);
85431     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_MOVESET_DEFAULT)));
85432     SvREADONLY_on(sv);
85433   } while(0) /*@SWIG@*/;
85434   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85435     SV *sv = get_sv((char*) SWIG_prefix "NEIGHBOR_CHANGE", TRUE | 0x2 | GV_ADDMULTI);
85436     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_NEIGHBOR_CHANGE)));
85437     SvREADONLY_on(sv);
85438   } while(0) /*@SWIG@*/;
85439   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85440     SV *sv = get_sv((char*) SWIG_prefix "NEIGHBOR_INVALID", TRUE | 0x2 | GV_ADDMULTI);
85441     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_NEIGHBOR_INVALID)));
85442     SvREADONLY_on(sv);
85443   } while(0) /*@SWIG@*/;
85444   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85445     SV *sv = get_sv((char*) SWIG_prefix "NEIGHBOR_NEW", TRUE | 0x2 | GV_ADDMULTI);
85446     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_NEIGHBOR_NEW)));
85447     SvREADONLY_on(sv);
85448   } while(0) /*@SWIG@*/;
85449   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85450     SV *sv = get_sv((char*) SWIG_prefix "PATH_STEEPEST_DESCENT", TRUE | 0x2 | GV_ADDMULTI);
85451     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_PATH_STEEPEST_DESCENT)));
85452     SvREADONLY_on(sv);
85453   } while(0) /*@SWIG@*/;
85454   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85455     SV *sv = get_sv((char*) SWIG_prefix "PATH_RANDOM", TRUE | 0x2 | GV_ADDMULTI);
85456     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_PATH_RANDOM)));
85457     SvREADONLY_on(sv);
85458   } while(0) /*@SWIG@*/;
85459   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85460     SV *sv = get_sv((char*) SWIG_prefix "PATH_NO_TRANSITION_OUTPUT", TRUE | 0x2 | GV_ADDMULTI);
85461     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_PATH_NO_TRANSITION_OUTPUT)));
85462     SvREADONLY_on(sv);
85463   } while(0) /*@SWIG@*/;
85464   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85465     SV *sv = get_sv((char*) SWIG_prefix "PATH_DEFAULT", TRUE | 0x2 | GV_ADDMULTI);
85466     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_PATH_DEFAULT)));
85467     SvREADONLY_on(sv);
85468   } while(0) /*@SWIG@*/;
85469   SWIG_TypeClientData(SWIGTYPE_p_vrna_path_t, (void*) "RNA::path");
85470   SWIG_TypeClientData(SWIGTYPE_p_vrna_path_options_s, (void*) "RNA::path_options");
85471   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85472     SV *sv = get_sv((char*) SWIG_prefix "PATH_TYPE_DOT_BRACKET", TRUE | 0x2 | GV_ADDMULTI);
85473     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_PATH_TYPE_DOT_BRACKET)));
85474     SvREADONLY_on(sv);
85475   } while(0) /*@SWIG@*/;
85476   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85477     SV *sv = get_sv((char*) SWIG_prefix "PATH_TYPE_MOVES", TRUE | 0x2 | GV_ADDMULTI);
85478     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_PATH_TYPE_MOVES)));
85479     SvREADONLY_on(sv);
85480   } while(0) /*@SWIG@*/;
85481   SWIG_TypeClientData(SWIGTYPE_p_heat_capacity_result, (void*) "RNA::heat_capacity_result");
85482   SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_heat_capacity_result_t, (void*) "RNA::HeatCapacityVector");
85483   SWIG_TypeClientData(SWIGTYPE_p_vrna_basepair_t, (void*) "RNA::basepair");
85484   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85485     SV *sv = get_sv((char*) SWIG_prefix "FC_TYPE_SINGLE", TRUE | 0x2 | GV_ADDMULTI);
85486     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(FC_TYPE_SINGLE)));
85487     SvREADONLY_on(sv);
85488   } while(0) /*@SWIG@*/;
85489   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85490     SV *sv = get_sv((char*) SWIG_prefix "FC_TYPE_COMPARATIVE", TRUE | 0x2 | GV_ADDMULTI);
85491     sv_setsv(sv, SWIG_From_int  SWIG_PERL_CALL_ARGS_1(static_cast< int >(FC_TYPE_COMPARATIVE)));
85492     SvREADONLY_on(sv);
85493   } while(0) /*@SWIG@*/;
85494   SWIG_TypeClientData(SWIGTYPE_p_vrna_fold_compound_t, (void*) "RNA::fold_compound");
85495   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85496     SV *sv = get_sv((char*) SWIG_prefix "STATUS_MFE_PRE", TRUE | 0x2 | GV_ADDMULTI);
85497     sv_setsv(sv, SWIG_From_unsigned_SS_char  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned char >(VRNA_STATUS_MFE_PRE)));
85498     SvREADONLY_on(sv);
85499   } while(0) /*@SWIG@*/;
85500   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85501     SV *sv = get_sv((char*) SWIG_prefix "STATUS_MFE_POST", TRUE | 0x2 | GV_ADDMULTI);
85502     sv_setsv(sv, SWIG_From_unsigned_SS_char  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned char >(VRNA_STATUS_MFE_POST)));
85503     SvREADONLY_on(sv);
85504   } while(0) /*@SWIG@*/;
85505   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85506     SV *sv = get_sv((char*) SWIG_prefix "STATUS_PF_PRE", TRUE | 0x2 | GV_ADDMULTI);
85507     sv_setsv(sv, SWIG_From_unsigned_SS_char  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned char >(VRNA_STATUS_PF_PRE)));
85508     SvREADONLY_on(sv);
85509   } while(0) /*@SWIG@*/;
85510   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85511     SV *sv = get_sv((char*) SWIG_prefix "STATUS_PF_POST", TRUE | 0x2 | GV_ADDMULTI);
85512     sv_setsv(sv, SWIG_From_unsigned_SS_char  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned char >(VRNA_STATUS_PF_POST)));
85513     SvREADONLY_on(sv);
85514   } while(0) /*@SWIG@*/;
85515   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85516     SV *sv = get_sv((char*) SWIG_prefix "OPTION_DEFAULT", TRUE | 0x2 | GV_ADDMULTI);
85517     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_OPTION_DEFAULT)));
85518     SvREADONLY_on(sv);
85519   } while(0) /*@SWIG@*/;
85520   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85521     SV *sv = get_sv((char*) SWIG_prefix "OPTION_MFE", TRUE | 0x2 | GV_ADDMULTI);
85522     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_OPTION_MFE)));
85523     SvREADONLY_on(sv);
85524   } while(0) /*@SWIG@*/;
85525   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85526     SV *sv = get_sv((char*) SWIG_prefix "OPTION_PF", TRUE | 0x2 | GV_ADDMULTI);
85527     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_OPTION_PF)));
85528     SvREADONLY_on(sv);
85529   } while(0) /*@SWIG@*/;
85530   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85531     SV *sv = get_sv((char*) SWIG_prefix "OPTION_HYBRID", TRUE | 0x2 | GV_ADDMULTI);
85532     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_OPTION_HYBRID)));
85533     SvREADONLY_on(sv);
85534   } while(0) /*@SWIG@*/;
85535   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85536     SV *sv = get_sv((char*) SWIG_prefix "OPTION_EVAL_ONLY", TRUE | 0x2 | GV_ADDMULTI);
85537     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_OPTION_EVAL_ONLY)));
85538     SvREADONLY_on(sv);
85539   } while(0) /*@SWIG@*/;
85540   /*@SWIG:/usr/share/swig/4.0.2/perl5/perltypemaps.swg,65,%set_constant@*/ do {
85541     SV *sv = get_sv((char*) SWIG_prefix "OPTION_WINDOW", TRUE | 0x2 | GV_ADDMULTI);
85542     sv_setsv(sv, SWIG_From_unsigned_SS_int  SWIG_PERL_CALL_ARGS_1(static_cast< unsigned int >(VRNA_OPTION_WINDOW)));
85543     SvREADONLY_on(sv);
85544   } while(0) /*@SWIG@*/;
85545   ST(0) = &PL_sv_yes;
85546   XSRETURN(1);
85547 }
85548 
85549