# This file was automatically generated by SWIG (http://www.swig.org).
# Version 2.0.11
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.





from sys import version_info
if version_info >= (2,6,0):
    def swig_import_helper():
        from os.path import dirname
        import imp
        fp = None
        try:
            fp, pathname, description = imp.find_module('_pygl_coord', [dirname(__file__)])
        except ImportError:
            import _pygl_coord
            return _pygl_coord
        if fp is not None:
            try:
                _mod = imp.load_module('_pygl_coord', fp, pathname, description)
            finally:
                fp.close()
            return _mod
    _pygl_coord = swig_import_helper()
    del swig_import_helper
else:
    import _pygl_coord
del version_info
try:
    _swig_property = property
except NameError:
    pass # Python < 2.2 doesn't have 'property'.
def _swig_setattr_nondynamic(self,class_type,name,value,static=1):
    if (name == "thisown"): return self.this.own(value)
    if (name == "this"):
        if type(value).__name__ == 'SwigPyObject':
            self.__dict__[name] = value
            return
    method = class_type.__swig_setmethods__.get(name,None)
    if method: return method(self,value)
    if (not static):
        self.__dict__[name] = value
    else:
        raise AttributeError("You cannot add attributes to %s" % self)

def _swig_setattr(self,class_type,name,value):
    return _swig_setattr_nondynamic(self,class_type,name,value,0)

def _swig_getattr(self,class_type,name):
    if (name == "thisown"): return self.this.own()
    method = class_type.__swig_getmethods__.get(name,None)
    if method: return method(self)
    raise AttributeError(name)

def _swig_repr(self):
    try: strthis = "proxy of " + self.this.__repr__()
    except: strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)

try:
    _object = object
    _newclass = 1
except AttributeError:
    class _object : pass
    _newclass = 0


class SwigPyIterator(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, SwigPyIterator, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, SwigPyIterator, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _pygl_coord.delete_SwigPyIterator
    __del__ = lambda self : None;
    def value(self): return _pygl_coord.SwigPyIterator_value(self)
    def incr(self, n=1): return _pygl_coord.SwigPyIterator_incr(self, n)
    def decr(self, n=1): return _pygl_coord.SwigPyIterator_decr(self, n)
    def distance(self, *args): return _pygl_coord.SwigPyIterator_distance(self, *args)
    def equal(self, *args): return _pygl_coord.SwigPyIterator_equal(self, *args)
    def copy(self): return _pygl_coord.SwigPyIterator_copy(self)
    def next(self): return _pygl_coord.SwigPyIterator_next(self)
    def __next__(self): return _pygl_coord.SwigPyIterator___next__(self)
    def previous(self): return _pygl_coord.SwigPyIterator_previous(self)
    def advance(self, *args): return _pygl_coord.SwigPyIterator_advance(self, *args)
    def __eq__(self, *args): return _pygl_coord.SwigPyIterator___eq__(self, *args)
    def __ne__(self, *args): return _pygl_coord.SwigPyIterator___ne__(self, *args)
    def __iadd__(self, *args): return _pygl_coord.SwigPyIterator___iadd__(self, *args)
    def __isub__(self, *args): return _pygl_coord.SwigPyIterator___isub__(self, *args)
    def __add__(self, *args): return _pygl_coord.SwigPyIterator___add__(self, *args)
    def __sub__(self, *args): return _pygl_coord.SwigPyIterator___sub__(self, *args)
    def __iter__(self): return self
SwigPyIterator_swigregister = _pygl_coord.SwigPyIterator_swigregister
SwigPyIterator_swigregister(SwigPyIterator)

class intp(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, intp, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, intp, name)
    __repr__ = _swig_repr
    def __init__(self): 
        this = _pygl_coord.new_intp()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pygl_coord.delete_intp
    __del__ = lambda self : None;
    def assign(self, *args): return _pygl_coord.intp_assign(self, *args)
    def value(self): return _pygl_coord.intp_value(self)
    def cast(self): return _pygl_coord.intp_cast(self)
    __swig_getmethods__["frompointer"] = lambda x: _pygl_coord.intp_frompointer
    if _newclass:frompointer = staticmethod(_pygl_coord.intp_frompointer)
intp_swigregister = _pygl_coord.intp_swigregister
intp_swigregister(intp)

def intp_frompointer(*args):
  return _pygl_coord.intp_frompointer(*args)
intp_frompointer = _pygl_coord.intp_frompointer

class doublep(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, doublep, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, doublep, name)
    __repr__ = _swig_repr
    def __init__(self): 
        this = _pygl_coord.new_doublep()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pygl_coord.delete_doublep
    __del__ = lambda self : None;
    def assign(self, *args): return _pygl_coord.doublep_assign(self, *args)
    def value(self): return _pygl_coord.doublep_value(self)
    def cast(self): return _pygl_coord.doublep_cast(self)
    __swig_getmethods__["frompointer"] = lambda x: _pygl_coord.doublep_frompointer
    if _newclass:frompointer = staticmethod(_pygl_coord.doublep_frompointer)
doublep_swigregister = _pygl_coord.doublep_swigregister
doublep_swigregister(doublep)

def doublep_frompointer(*args):
  return _pygl_coord.doublep_frompointer(*args)
doublep_frompointer = _pygl_coord.doublep_frompointer

class floatp(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, floatp, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, floatp, name)
    __repr__ = _swig_repr
    def __init__(self): 
        this = _pygl_coord.new_floatp()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pygl_coord.delete_floatp
    __del__ = lambda self : None;
    def assign(self, *args): return _pygl_coord.floatp_assign(self, *args)
    def value(self): return _pygl_coord.floatp_value(self)
    def cast(self): return _pygl_coord.floatp_cast(self)
    __swig_getmethods__["frompointer"] = lambda x: _pygl_coord.floatp_frompointer
    if _newclass:frompointer = staticmethod(_pygl_coord.floatp_frompointer)
floatp_swigregister = _pygl_coord.floatp_swigregister
floatp_swigregister(floatp)

def floatp_frompointer(*args):
  return _pygl_coord.floatp_frompointer(*args)
floatp_frompointer = _pygl_coord.floatp_frompointer

class inta(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, inta, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, inta, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _pygl_coord.new_inta(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pygl_coord.delete_inta
    __del__ = lambda self : None;
    def __getitem__(self, *args): return _pygl_coord.inta___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.inta___setitem__(self, *args)
    def cast(self): return _pygl_coord.inta_cast(self)
    __swig_getmethods__["frompointer"] = lambda x: _pygl_coord.inta_frompointer
    if _newclass:frompointer = staticmethod(_pygl_coord.inta_frompointer)
inta_swigregister = _pygl_coord.inta_swigregister
inta_swigregister(inta)

def inta_frompointer(*args):
  return _pygl_coord.inta_frompointer(*args)
inta_frompointer = _pygl_coord.inta_frompointer

class doublea(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, doublea, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, doublea, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _pygl_coord.new_doublea(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pygl_coord.delete_doublea
    __del__ = lambda self : None;
    def __getitem__(self, *args): return _pygl_coord.doublea___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.doublea___setitem__(self, *args)
    def cast(self): return _pygl_coord.doublea_cast(self)
    __swig_getmethods__["frompointer"] = lambda x: _pygl_coord.doublea_frompointer
    if _newclass:frompointer = staticmethod(_pygl_coord.doublea_frompointer)
doublea_swigregister = _pygl_coord.doublea_swigregister
doublea_swigregister(doublea)

def doublea_frompointer(*args):
  return _pygl_coord.doublea_frompointer(*args)
doublea_frompointer = _pygl_coord.doublea_frompointer

class floata(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, floata, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, floata, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _pygl_coord.new_floata(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pygl_coord.delete_floata
    __del__ = lambda self : None;
    def __getitem__(self, *args): return _pygl_coord.floata___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.floata___setitem__(self, *args)
    def cast(self): return _pygl_coord.floata_cast(self)
    __swig_getmethods__["frompointer"] = lambda x: _pygl_coord.floata_frompointer
    if _newclass:frompointer = staticmethod(_pygl_coord.floata_frompointer)
floata_swigregister = _pygl_coord.floata_swigregister
floata_swigregister(floata)

def floata_frompointer(*args):
  return _pygl_coord.floata_frompointer(*args)
floata_frompointer = _pygl_coord.floata_frompointer

class UnsignedIntVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, UnsignedIntVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, UnsignedIntVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.UnsignedIntVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.UnsignedIntVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.UnsignedIntVector___bool__(self)
    def __len__(self): return _pygl_coord.UnsignedIntVector___len__(self)
    def pop(self): return _pygl_coord.UnsignedIntVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.UnsignedIntVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.UnsignedIntVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.UnsignedIntVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.UnsignedIntVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.UnsignedIntVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.UnsignedIntVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.UnsignedIntVector_append(self, *args)
    def empty(self): return _pygl_coord.UnsignedIntVector_empty(self)
    def size(self): return _pygl_coord.UnsignedIntVector_size(self)
    def clear(self): return _pygl_coord.UnsignedIntVector_clear(self)
    def swap(self, *args): return _pygl_coord.UnsignedIntVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.UnsignedIntVector_get_allocator(self)
    def begin(self): return _pygl_coord.UnsignedIntVector_begin(self)
    def end(self): return _pygl_coord.UnsignedIntVector_end(self)
    def rbegin(self): return _pygl_coord.UnsignedIntVector_rbegin(self)
    def rend(self): return _pygl_coord.UnsignedIntVector_rend(self)
    def pop_back(self): return _pygl_coord.UnsignedIntVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.UnsignedIntVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_UnsignedIntVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.UnsignedIntVector_push_back(self, *args)
    def front(self): return _pygl_coord.UnsignedIntVector_front(self)
    def back(self): return _pygl_coord.UnsignedIntVector_back(self)
    def assign(self, *args): return _pygl_coord.UnsignedIntVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.UnsignedIntVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.UnsignedIntVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.UnsignedIntVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.UnsignedIntVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_UnsignedIntVector
    __del__ = lambda self : None;
UnsignedIntVector_swigregister = _pygl_coord.UnsignedIntVector_swigregister
UnsignedIntVector_swigregister(UnsignedIntVector)

class IntVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, IntVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, IntVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.IntVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.IntVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.IntVector___bool__(self)
    def __len__(self): return _pygl_coord.IntVector___len__(self)
    def pop(self): return _pygl_coord.IntVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.IntVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.IntVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.IntVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.IntVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.IntVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.IntVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.IntVector_append(self, *args)
    def empty(self): return _pygl_coord.IntVector_empty(self)
    def size(self): return _pygl_coord.IntVector_size(self)
    def clear(self): return _pygl_coord.IntVector_clear(self)
    def swap(self, *args): return _pygl_coord.IntVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.IntVector_get_allocator(self)
    def begin(self): return _pygl_coord.IntVector_begin(self)
    def end(self): return _pygl_coord.IntVector_end(self)
    def rbegin(self): return _pygl_coord.IntVector_rbegin(self)
    def rend(self): return _pygl_coord.IntVector_rend(self)
    def pop_back(self): return _pygl_coord.IntVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.IntVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_IntVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.IntVector_push_back(self, *args)
    def front(self): return _pygl_coord.IntVector_front(self)
    def back(self): return _pygl_coord.IntVector_back(self)
    def assign(self, *args): return _pygl_coord.IntVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.IntVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.IntVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.IntVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.IntVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_IntVector
    __del__ = lambda self : None;
IntVector_swigregister = _pygl_coord.IntVector_swigregister
IntVector_swigregister(IntVector)

class IntIntVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, IntIntVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, IntIntVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.IntIntVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.IntIntVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.IntIntVector___bool__(self)
    def __len__(self): return _pygl_coord.IntIntVector___len__(self)
    def pop(self): return _pygl_coord.IntIntVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.IntIntVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.IntIntVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.IntIntVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.IntIntVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.IntIntVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.IntIntVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.IntIntVector_append(self, *args)
    def empty(self): return _pygl_coord.IntIntVector_empty(self)
    def size(self): return _pygl_coord.IntIntVector_size(self)
    def clear(self): return _pygl_coord.IntIntVector_clear(self)
    def swap(self, *args): return _pygl_coord.IntIntVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.IntIntVector_get_allocator(self)
    def begin(self): return _pygl_coord.IntIntVector_begin(self)
    def end(self): return _pygl_coord.IntIntVector_end(self)
    def rbegin(self): return _pygl_coord.IntIntVector_rbegin(self)
    def rend(self): return _pygl_coord.IntIntVector_rend(self)
    def pop_back(self): return _pygl_coord.IntIntVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.IntIntVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_IntIntVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.IntIntVector_push_back(self, *args)
    def front(self): return _pygl_coord.IntIntVector_front(self)
    def back(self): return _pygl_coord.IntIntVector_back(self)
    def assign(self, *args): return _pygl_coord.IntIntVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.IntIntVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.IntIntVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.IntIntVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.IntIntVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_IntIntVector
    __del__ = lambda self : None;
IntIntVector_swigregister = _pygl_coord.IntIntVector_swigregister
IntIntVector_swigregister(IntIntVector)

class DoubleVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, DoubleVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, DoubleVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.DoubleVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.DoubleVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.DoubleVector___bool__(self)
    def __len__(self): return _pygl_coord.DoubleVector___len__(self)
    def pop(self): return _pygl_coord.DoubleVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.DoubleVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.DoubleVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.DoubleVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.DoubleVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.DoubleVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.DoubleVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.DoubleVector_append(self, *args)
    def empty(self): return _pygl_coord.DoubleVector_empty(self)
    def size(self): return _pygl_coord.DoubleVector_size(self)
    def clear(self): return _pygl_coord.DoubleVector_clear(self)
    def swap(self, *args): return _pygl_coord.DoubleVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.DoubleVector_get_allocator(self)
    def begin(self): return _pygl_coord.DoubleVector_begin(self)
    def end(self): return _pygl_coord.DoubleVector_end(self)
    def rbegin(self): return _pygl_coord.DoubleVector_rbegin(self)
    def rend(self): return _pygl_coord.DoubleVector_rend(self)
    def pop_back(self): return _pygl_coord.DoubleVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.DoubleVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_DoubleVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.DoubleVector_push_back(self, *args)
    def front(self): return _pygl_coord.DoubleVector_front(self)
    def back(self): return _pygl_coord.DoubleVector_back(self)
    def assign(self, *args): return _pygl_coord.DoubleVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.DoubleVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.DoubleVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.DoubleVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.DoubleVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_DoubleVector
    __del__ = lambda self : None;
DoubleVector_swigregister = _pygl_coord.DoubleVector_swigregister
DoubleVector_swigregister(DoubleVector)

class DoubleDoubleVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, DoubleDoubleVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, DoubleDoubleVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.DoubleDoubleVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.DoubleDoubleVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.DoubleDoubleVector___bool__(self)
    def __len__(self): return _pygl_coord.DoubleDoubleVector___len__(self)
    def pop(self): return _pygl_coord.DoubleDoubleVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.DoubleDoubleVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.DoubleDoubleVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.DoubleDoubleVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.DoubleDoubleVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.DoubleDoubleVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.DoubleDoubleVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.DoubleDoubleVector_append(self, *args)
    def empty(self): return _pygl_coord.DoubleDoubleVector_empty(self)
    def size(self): return _pygl_coord.DoubleDoubleVector_size(self)
    def clear(self): return _pygl_coord.DoubleDoubleVector_clear(self)
    def swap(self, *args): return _pygl_coord.DoubleDoubleVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.DoubleDoubleVector_get_allocator(self)
    def begin(self): return _pygl_coord.DoubleDoubleVector_begin(self)
    def end(self): return _pygl_coord.DoubleDoubleVector_end(self)
    def rbegin(self): return _pygl_coord.DoubleDoubleVector_rbegin(self)
    def rend(self): return _pygl_coord.DoubleDoubleVector_rend(self)
    def pop_back(self): return _pygl_coord.DoubleDoubleVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.DoubleDoubleVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_DoubleDoubleVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.DoubleDoubleVector_push_back(self, *args)
    def front(self): return _pygl_coord.DoubleDoubleVector_front(self)
    def back(self): return _pygl_coord.DoubleDoubleVector_back(self)
    def assign(self, *args): return _pygl_coord.DoubleDoubleVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.DoubleDoubleVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.DoubleDoubleVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.DoubleDoubleVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.DoubleDoubleVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_DoubleDoubleVector
    __del__ = lambda self : None;
DoubleDoubleVector_swigregister = _pygl_coord.DoubleDoubleVector_swigregister
DoubleDoubleVector_swigregister(DoubleDoubleVector)

class TreeVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, TreeVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, TreeVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.TreeVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.TreeVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.TreeVector___bool__(self)
    def __len__(self): return _pygl_coord.TreeVector___len__(self)
    def pop(self): return _pygl_coord.TreeVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.TreeVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.TreeVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.TreeVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.TreeVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.TreeVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.TreeVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.TreeVector_append(self, *args)
    def empty(self): return _pygl_coord.TreeVector_empty(self)
    def size(self): return _pygl_coord.TreeVector_size(self)
    def clear(self): return _pygl_coord.TreeVector_clear(self)
    def swap(self, *args): return _pygl_coord.TreeVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.TreeVector_get_allocator(self)
    def begin(self): return _pygl_coord.TreeVector_begin(self)
    def end(self): return _pygl_coord.TreeVector_end(self)
    def rbegin(self): return _pygl_coord.TreeVector_rbegin(self)
    def rend(self): return _pygl_coord.TreeVector_rend(self)
    def pop_back(self): return _pygl_coord.TreeVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.TreeVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_TreeVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.TreeVector_push_back(self, *args)
    def front(self): return _pygl_coord.TreeVector_front(self)
    def back(self): return _pygl_coord.TreeVector_back(self)
    def assign(self, *args): return _pygl_coord.TreeVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.TreeVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.TreeVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.TreeVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.TreeVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_TreeVector
    __del__ = lambda self : None;
TreeVector_swigregister = _pygl_coord.TreeVector_swigregister
TreeVector_swigregister(TreeVector)

class StringVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, StringVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, StringVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.StringVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.StringVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.StringVector___bool__(self)
    def __len__(self): return _pygl_coord.StringVector___len__(self)
    def pop(self): return _pygl_coord.StringVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.StringVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.StringVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.StringVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.StringVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.StringVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.StringVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.StringVector_append(self, *args)
    def empty(self): return _pygl_coord.StringVector_empty(self)
    def size(self): return _pygl_coord.StringVector_size(self)
    def clear(self): return _pygl_coord.StringVector_clear(self)
    def swap(self, *args): return _pygl_coord.StringVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.StringVector_get_allocator(self)
    def begin(self): return _pygl_coord.StringVector_begin(self)
    def end(self): return _pygl_coord.StringVector_end(self)
    def rbegin(self): return _pygl_coord.StringVector_rbegin(self)
    def rend(self): return _pygl_coord.StringVector_rend(self)
    def pop_back(self): return _pygl_coord.StringVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.StringVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_StringVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.StringVector_push_back(self, *args)
    def front(self): return _pygl_coord.StringVector_front(self)
    def back(self): return _pygl_coord.StringVector_back(self)
    def assign(self, *args): return _pygl_coord.StringVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.StringVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.StringVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.StringVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.StringVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_StringVector
    __del__ = lambda self : None;
StringVector_swigregister = _pygl_coord.StringVector_swigregister
StringVector_swigregister(StringVector)

class CartesianVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, CartesianVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, CartesianVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.CartesianVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.CartesianVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.CartesianVector___bool__(self)
    def __len__(self): return _pygl_coord.CartesianVector___len__(self)
    def pop(self): return _pygl_coord.CartesianVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.CartesianVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.CartesianVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.CartesianVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.CartesianVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.CartesianVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.CartesianVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.CartesianVector_append(self, *args)
    def empty(self): return _pygl_coord.CartesianVector_empty(self)
    def size(self): return _pygl_coord.CartesianVector_size(self)
    def clear(self): return _pygl_coord.CartesianVector_clear(self)
    def swap(self, *args): return _pygl_coord.CartesianVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.CartesianVector_get_allocator(self)
    def begin(self): return _pygl_coord.CartesianVector_begin(self)
    def end(self): return _pygl_coord.CartesianVector_end(self)
    def rbegin(self): return _pygl_coord.CartesianVector_rbegin(self)
    def rend(self): return _pygl_coord.CartesianVector_rend(self)
    def pop_back(self): return _pygl_coord.CartesianVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.CartesianVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_CartesianVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.CartesianVector_push_back(self, *args)
    def front(self): return _pygl_coord.CartesianVector_front(self)
    def back(self): return _pygl_coord.CartesianVector_back(self)
    def assign(self, *args): return _pygl_coord.CartesianVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.CartesianVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.CartesianVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.CartesianVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.CartesianVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_CartesianVector
    __del__ = lambda self : None;
CartesianVector_swigregister = _pygl_coord.CartesianVector_swigregister
CartesianVector_swigregister(CartesianVector)

class CartesianCartesianVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, CartesianCartesianVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, CartesianCartesianVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.CartesianCartesianVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.CartesianCartesianVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.CartesianCartesianVector___bool__(self)
    def __len__(self): return _pygl_coord.CartesianCartesianVector___len__(self)
    def pop(self): return _pygl_coord.CartesianCartesianVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.CartesianCartesianVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.CartesianCartesianVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.CartesianCartesianVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.CartesianCartesianVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.CartesianCartesianVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.CartesianCartesianVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.CartesianCartesianVector_append(self, *args)
    def empty(self): return _pygl_coord.CartesianCartesianVector_empty(self)
    def size(self): return _pygl_coord.CartesianCartesianVector_size(self)
    def clear(self): return _pygl_coord.CartesianCartesianVector_clear(self)
    def swap(self, *args): return _pygl_coord.CartesianCartesianVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.CartesianCartesianVector_get_allocator(self)
    def begin(self): return _pygl_coord.CartesianCartesianVector_begin(self)
    def end(self): return _pygl_coord.CartesianCartesianVector_end(self)
    def rbegin(self): return _pygl_coord.CartesianCartesianVector_rbegin(self)
    def rend(self): return _pygl_coord.CartesianCartesianVector_rend(self)
    def pop_back(self): return _pygl_coord.CartesianCartesianVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.CartesianCartesianVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_CartesianCartesianVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.CartesianCartesianVector_push_back(self, *args)
    def front(self): return _pygl_coord.CartesianCartesianVector_front(self)
    def back(self): return _pygl_coord.CartesianCartesianVector_back(self)
    def assign(self, *args): return _pygl_coord.CartesianCartesianVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.CartesianCartesianVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.CartesianCartesianVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.CartesianCartesianVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.CartesianCartesianVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_CartesianCartesianVector
    __del__ = lambda self : None;
CartesianCartesianVector_swigregister = _pygl_coord.CartesianCartesianVector_swigregister
CartesianCartesianVector_swigregister(CartesianCartesianVector)

class MatrixVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, MatrixVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, MatrixVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.MatrixVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.MatrixVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.MatrixVector___bool__(self)
    def __len__(self): return _pygl_coord.MatrixVector___len__(self)
    def pop(self): return _pygl_coord.MatrixVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.MatrixVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.MatrixVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.MatrixVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.MatrixVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.MatrixVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.MatrixVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.MatrixVector_append(self, *args)
    def empty(self): return _pygl_coord.MatrixVector_empty(self)
    def size(self): return _pygl_coord.MatrixVector_size(self)
    def clear(self): return _pygl_coord.MatrixVector_clear(self)
    def swap(self, *args): return _pygl_coord.MatrixVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.MatrixVector_get_allocator(self)
    def begin(self): return _pygl_coord.MatrixVector_begin(self)
    def end(self): return _pygl_coord.MatrixVector_end(self)
    def rbegin(self): return _pygl_coord.MatrixVector_rbegin(self)
    def rend(self): return _pygl_coord.MatrixVector_rend(self)
    def pop_back(self): return _pygl_coord.MatrixVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.MatrixVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_MatrixVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.MatrixVector_push_back(self, *args)
    def front(self): return _pygl_coord.MatrixVector_front(self)
    def back(self): return _pygl_coord.MatrixVector_back(self)
    def assign(self, *args): return _pygl_coord.MatrixVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.MatrixVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.MatrixVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.MatrixVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.MatrixVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_MatrixVector
    __del__ = lambda self : None;
MatrixVector_swigregister = _pygl_coord.MatrixVector_swigregister
MatrixVector_swigregister(MatrixVector)

class MatrixMatrixVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, MatrixMatrixVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, MatrixMatrixVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.MatrixMatrixVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.MatrixMatrixVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.MatrixMatrixVector___bool__(self)
    def __len__(self): return _pygl_coord.MatrixMatrixVector___len__(self)
    def pop(self): return _pygl_coord.MatrixMatrixVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.MatrixMatrixVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.MatrixMatrixVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.MatrixMatrixVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.MatrixMatrixVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.MatrixMatrixVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.MatrixMatrixVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.MatrixMatrixVector_append(self, *args)
    def empty(self): return _pygl_coord.MatrixMatrixVector_empty(self)
    def size(self): return _pygl_coord.MatrixMatrixVector_size(self)
    def clear(self): return _pygl_coord.MatrixMatrixVector_clear(self)
    def swap(self, *args): return _pygl_coord.MatrixMatrixVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.MatrixMatrixVector_get_allocator(self)
    def begin(self): return _pygl_coord.MatrixMatrixVector_begin(self)
    def end(self): return _pygl_coord.MatrixMatrixVector_end(self)
    def rbegin(self): return _pygl_coord.MatrixMatrixVector_rbegin(self)
    def rend(self): return _pygl_coord.MatrixMatrixVector_rend(self)
    def pop_back(self): return _pygl_coord.MatrixMatrixVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.MatrixMatrixVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_MatrixMatrixVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.MatrixMatrixVector_push_back(self, *args)
    def front(self): return _pygl_coord.MatrixMatrixVector_front(self)
    def back(self): return _pygl_coord.MatrixMatrixVector_back(self)
    def assign(self, *args): return _pygl_coord.MatrixMatrixVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.MatrixMatrixVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.MatrixMatrixVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.MatrixMatrixVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.MatrixMatrixVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_MatrixMatrixVector
    __del__ = lambda self : None;
MatrixMatrixVector_swigregister = _pygl_coord.MatrixMatrixVector_swigregister
MatrixMatrixVector_swigregister(MatrixMatrixVector)

kdelta = _pygl_coord.kdelta
class matrixRow(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, matrixRow, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, matrixRow, name)
    __repr__ = _swig_repr
    __swig_setmethods__["mat"] = _pygl_coord.matrixRow_mat_set
    __swig_getmethods__["mat"] = _pygl_coord.matrixRow_mat_get
    if _newclass:mat = _swig_property(_pygl_coord.matrixRow_mat_get, _pygl_coord.matrixRow_mat_set)
    __swig_setmethods__["row"] = _pygl_coord.matrixRow_row_set
    __swig_getmethods__["row"] = _pygl_coord.matrixRow_row_get
    if _newclass:row = _swig_property(_pygl_coord.matrixRow_row_get, _pygl_coord.matrixRow_row_set)
    def __getitem__(self, *args): return _pygl_coord.matrixRow___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.matrixRow___setitem__(self, *args)
    def __init__(self): 
        this = _pygl_coord.new_matrixRow()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pygl_coord.delete_matrixRow
    __del__ = lambda self : None;
matrixRow_swigregister = _pygl_coord.matrixRow_swigregister
matrixRow_swigregister(matrixRow)

class matrix(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, matrix, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, matrix, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _pygl_coord.delete_matrix
    __del__ = lambda self : None;
    def __init__(self, *args): 
        this = _pygl_coord.new_matrix(*args)
        try: self.this.append(this)
        except: self.this = this
    def to_dp(self): return _pygl_coord.matrix_to_dp(self)
    def Zero(self): return _pygl_coord.matrix_Zero(self)
    def get_rows(self): return _pygl_coord.matrix_get_rows(self)
    def get_columns(self): return _pygl_coord.matrix_get_columns(self)
    def Trace(self): return _pygl_coord.matrix_Trace(self)
    def Transpose(self): return _pygl_coord.matrix_Transpose(self)
    def fun(self, *args): return _pygl_coord.matrix_fun(self, *args)
    def __add__(self, *args): return _pygl_coord.matrix___add__(self, *args)
    def __sub__(self, *args): return _pygl_coord.matrix___sub__(self, *args)
    def __eq__(self, *args): return _pygl_coord.matrix___eq__(self, *args)
    def __ne__(self, *args): return _pygl_coord.matrix___ne__(self, *args)
    def __iadd__(self, *args): return _pygl_coord.matrix___iadd__(self, *args)
    def __isub__(self, *args): return _pygl_coord.matrix___isub__(self, *args)
    def __imul__(self, *args): return _pygl_coord.matrix___imul__(self, *args)
    def __idiv__(self, *args): return _pygl_coord.matrix___idiv__(self, *args)
    def __neg__(self): return _pygl_coord.matrix___neg__(self)
    __swig_getmethods__["DirSum"] = lambda x: _pygl_coord.matrix_DirSum
    if _newclass:DirSum = staticmethod(_pygl_coord.matrix_DirSum)
    def Eigen(self): return _pygl_coord.matrix_Eigen(self)
    __swig_getmethods__["SortEigenvalues"] = lambda x: _pygl_coord.matrix_SortEigenvalues
    if _newclass:SortEigenvalues = staticmethod(_pygl_coord.matrix_SortEigenvalues)
    __swig_getmethods__["MinorMatrix"] = lambda x: _pygl_coord.matrix_MinorMatrix
    if _newclass:MinorMatrix = staticmethod(_pygl_coord.matrix_MinorMatrix)
    __swig_getmethods__["Minor"] = lambda x: _pygl_coord.matrix_Minor
    if _newclass:Minor = staticmethod(_pygl_coord.matrix_Minor)
    __swig_getmethods__["TriangularSolveForward"] = lambda x: _pygl_coord.matrix_TriangularSolveForward
    if _newclass:TriangularSolveForward = staticmethod(_pygl_coord.matrix_TriangularSolveForward)
    __swig_getmethods__["TriangularSolveBack"] = lambda x: _pygl_coord.matrix_TriangularSolveBack
    if _newclass:TriangularSolveBack = staticmethod(_pygl_coord.matrix_TriangularSolveBack)
    __swig_getmethods__["SolveLinearEquations"] = lambda x: _pygl_coord.matrix_SolveLinearEquations
    if _newclass:SolveLinearEquations = staticmethod(_pygl_coord.matrix_SolveLinearEquations)
    def SVD(self): return _pygl_coord.matrix_SVD(self)
    def Bidiagonalize(self): return _pygl_coord.matrix_Bidiagonalize(self)
    def LUDecomposition(self): return _pygl_coord.matrix_LUDecomposition(self)
    def FrobeniusNorm(self): return _pygl_coord.matrix_FrobeniusNorm(self)
    def Determinant(self): return _pygl_coord.matrix_Determinant(self)
    def Inverse(self): return _pygl_coord.matrix_Inverse(self)
    def BlockMatrix(self, *args): return _pygl_coord.matrix_BlockMatrix(self, *args)
    def SwitchRows(self, *args): return _pygl_coord.matrix_SwitchRows(self, *args)
    def __call__(self, *args): return _pygl_coord.matrix___call__(self, *args)
    def Print(self): return _pygl_coord.matrix_Print(self)
    def matrixVector(self): return _pygl_coord.matrix_matrixVector(self)
    def Cholesky(self): return _pygl_coord.matrix_Cholesky(self)
    def GaussianElimination(self, unitDiag=False): return _pygl_coord.matrix_GaussianElimination(self, unitDiag)
    def GaussJordanElimination(self): return _pygl_coord.matrix_GaussJordanElimination(self)
    def GetRotationAxis(self): return _pygl_coord.matrix_GetRotationAxis(self)
    def QRDecomposition(self): return _pygl_coord.matrix_QRDecomposition(self)
    def Hessenberg(self): return _pygl_coord.matrix_Hessenberg(self)
    def Orthonormalize(self): return _pygl_coord.matrix_Orthonormalize(self)
    def GetColumn(self, *args): return _pygl_coord.matrix_GetColumn(self, *args)
    def GetRow(self, *args): return _pygl_coord.matrix_GetRow(self, *args)
    def SetColumn(self, *args): return _pygl_coord.matrix_SetColumn(self, *args)
    def SetRow(self, *args): return _pygl_coord.matrix_SetRow(self, *args)
    def isNull(self): return _pygl_coord.matrix_isNull(self)
    def MultiplyAndSetRight(self, *args): return _pygl_coord.matrix_MultiplyAndSetRight(self, *args)
    def MultiplyAndSetLeft(self, *args): return _pygl_coord.matrix_MultiplyAndSetLeft(self, *args)
    def GetEvecsAndEvalsFromEvals(self, *args): return _pygl_coord.matrix_GetEvecsAndEvalsFromEvals(self, *args)
    def GetAsDoubleVectors(self): return _pygl_coord.matrix_GetAsDoubleVectors(self)
    def __getitem__(self, *args): return _pygl_coord.matrix___getitem__(self, *args)
    def __mul__(self, *args): return _pygl_coord.matrix___mul__(self, *args)
    def __div__(self, *args): return _pygl_coord.matrix___div__(self, *args)
matrix_swigregister = _pygl_coord.matrix_swigregister
matrix_swigregister(matrix)

def pow(*args):
  return _pygl_coord.pow(*args)
pow = _pygl_coord.pow

def matrix_DirSum(*args):
  return _pygl_coord.matrix_DirSum(*args)
matrix_DirSum = _pygl_coord.matrix_DirSum

def matrix_SortEigenvalues(*args):
  return _pygl_coord.matrix_SortEigenvalues(*args)
matrix_SortEigenvalues = _pygl_coord.matrix_SortEigenvalues

def matrix_MinorMatrix(*args):
  return _pygl_coord.matrix_MinorMatrix(*args)
matrix_MinorMatrix = _pygl_coord.matrix_MinorMatrix

def matrix_Minor(*args):
  return _pygl_coord.matrix_Minor(*args)
matrix_Minor = _pygl_coord.matrix_Minor

def matrix_TriangularSolveForward(*args):
  return _pygl_coord.matrix_TriangularSolveForward(*args)
matrix_TriangularSolveForward = _pygl_coord.matrix_TriangularSolveForward

def matrix_TriangularSolveBack(*args):
  return _pygl_coord.matrix_TriangularSolveBack(*args)
matrix_TriangularSolveBack = _pygl_coord.matrix_TriangularSolveBack

def matrix_SolveLinearEquations(*args):
  return _pygl_coord.matrix_SolveLinearEquations(*args)
matrix_SolveLinearEquations = _pygl_coord.matrix_SolveLinearEquations

class Cartesian(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Cartesian, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Cartesian, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _pygl_coord.new_Cartesian(*args)
        try: self.this.append(this)
        except: self.this = this
    def getxyza(self): return _pygl_coord.Cartesian_getxyza(self)
    def setxyza(self, *args): return _pygl_coord.Cartesian_setxyza(self, *args)
    def getxyza_vec(self): return _pygl_coord.Cartesian_getxyza_vec(self)
    def setxyza_vec(self, *args): return _pygl_coord.Cartesian_setxyza_vec(self, *args)
    def get_x(self): return _pygl_coord.Cartesian_get_x(self)
    def get_y(self): return _pygl_coord.Cartesian_get_y(self)
    def get_z(self): return _pygl_coord.Cartesian_get_z(self)
    def get_a(self): return _pygl_coord.Cartesian_get_a(self)
    def set_x(self, *args): return _pygl_coord.Cartesian_set_x(self, *args)
    def set_y(self, *args): return _pygl_coord.Cartesian_set_y(self, *args)
    def set_z(self, *args): return _pygl_coord.Cartesian_set_z(self, *args)
    def set_a(self, *args): return _pygl_coord.Cartesian_set_a(self, *args)
    def set_xyz(self, *args): return _pygl_coord.Cartesian_set_xyz(self, *args)
    def set_xyza(self, *args): return _pygl_coord.Cartesian_set_xyza(self, *args)
    def setMultiplyAndAdd(self, *args): return _pygl_coord.Cartesian_setMultiplyAndAdd(self, *args)
    __swig_getmethods__["CrossProduct"] = lambda x: _pygl_coord.Cartesian_CrossProduct
    if _newclass:CrossProduct = staticmethod(_pygl_coord.Cartesian_CrossProduct)
    __swig_getmethods__["DotProduct"] = lambda x: _pygl_coord.Cartesian_DotProduct
    if _newclass:DotProduct = staticmethod(_pygl_coord.Cartesian_DotProduct)
    __swig_getmethods__["MidPoint"] = lambda x: _pygl_coord.Cartesian_MidPoint
    if _newclass:MidPoint = staticmethod(_pygl_coord.Cartesian_MidPoint)
    __swig_getmethods__["RMSDistance"] = lambda x: _pygl_coord.Cartesian_RMSDistance
    if _newclass:RMSDistance = staticmethod(_pygl_coord.Cartesian_RMSDistance)
    __swig_getmethods__["PrincipalComponentAnalysis"] = lambda x: _pygl_coord.Cartesian_PrincipalComponentAnalysis
    if _newclass:PrincipalComponentAnalysis = staticmethod(_pygl_coord.Cartesian_PrincipalComponentAnalysis)
    def normalize(self, radius=1.0): return _pygl_coord.Cartesian_normalize(self, radius)
    __swig_getmethods__["CheckDistanceRangeMin"] = lambda x: _pygl_coord.Cartesian_CheckDistanceRangeMin
    if _newclass:CheckDistanceRangeMin = staticmethod(_pygl_coord.Cartesian_CheckDistanceRangeMin)
    __swig_getmethods__["CheckDistanceRange"] = lambda x: _pygl_coord.Cartesian_CheckDistanceRange
    if _newclass:CheckDistanceRange = staticmethod(_pygl_coord.Cartesian_CheckDistanceRange)
    def __add__(self, *args): return _pygl_coord.Cartesian___add__(self, *args)
    def __sub__(self, *args): return _pygl_coord.Cartesian___sub__(self, *args)
    def __neg__(self): return _pygl_coord.Cartesian___neg__(self)
    def __iadd__(self, *args): return _pygl_coord.Cartesian___iadd__(self, *args)
    def __isub__(self, *args): return _pygl_coord.Cartesian___isub__(self, *args)
    def __imul__(self, *args): return _pygl_coord.Cartesian___imul__(self, *args)
    def __idiv__(self, *args): return _pygl_coord.Cartesian___idiv__(self, *args)
    def length(self): return _pygl_coord.Cartesian_length(self)
    def to_dp(self): return _pygl_coord.Cartesian_to_dp(self)
    def Scale(self, *args): return _pygl_coord.Cartesian_Scale(self, *args)
    def Print(self): return _pygl_coord.Cartesian_Print(self)
    def __div__(self, *args): return _pygl_coord.Cartesian___div__(self, *args)
    def __mul__(self, *args): return _pygl_coord.Cartesian___mul__(self, *args)
    __swig_destroy__ = _pygl_coord.delete_Cartesian
    __del__ = lambda self : None;
Cartesian_swigregister = _pygl_coord.Cartesian_swigregister
Cartesian_swigregister(Cartesian)

def Cartesian_CrossProduct(*args):
  return _pygl_coord.Cartesian_CrossProduct(*args)
Cartesian_CrossProduct = _pygl_coord.Cartesian_CrossProduct

def Cartesian_DotProduct(*args):
  return _pygl_coord.Cartesian_DotProduct(*args)
Cartesian_DotProduct = _pygl_coord.Cartesian_DotProduct

def Cartesian_MidPoint(*args):
  return _pygl_coord.Cartesian_MidPoint(*args)
Cartesian_MidPoint = _pygl_coord.Cartesian_MidPoint

def Cartesian_RMSDistance(*args):
  return _pygl_coord.Cartesian_RMSDistance(*args)
Cartesian_RMSDistance = _pygl_coord.Cartesian_RMSDistance

def Cartesian_PrincipalComponentAnalysis(*args):
  return _pygl_coord.Cartesian_PrincipalComponentAnalysis(*args)
Cartesian_PrincipalComponentAnalysis = _pygl_coord.Cartesian_PrincipalComponentAnalysis

def Cartesian_CheckDistanceRangeMin(*args):
  return _pygl_coord.Cartesian_CheckDistanceRangeMin(*args)
Cartesian_CheckDistanceRangeMin = _pygl_coord.Cartesian_CheckDistanceRangeMin

def Cartesian_CheckDistanceRange(*args):
  return _pygl_coord.Cartesian_CheckDistanceRange(*args)
Cartesian_CheckDistanceRange = _pygl_coord.Cartesian_CheckDistanceRange


def Angle(*args):
  return _pygl_coord.Angle(*args)
Angle = _pygl_coord.Angle
class bond_pair_cmp(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, bond_pair_cmp, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, bond_pair_cmp, name)
    __repr__ = _swig_repr
    def __call__(self, *args): return _pygl_coord.bond_pair_cmp___call__(self, *args)
    def __init__(self): 
        this = _pygl_coord.new_bond_pair_cmp()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pygl_coord.delete_bond_pair_cmp
    __del__ = lambda self : None;
bond_pair_cmp_swigregister = _pygl_coord.bond_pair_cmp_swigregister
bond_pair_cmp_swigregister(bond_pair_cmp)

class TreeVertex(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, TreeVertex, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, TreeVertex, name)
    __repr__ = _swig_repr
    def __init__(self): 
        this = _pygl_coord.new_TreeVertex()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pygl_coord.delete_TreeVertex
    __del__ = lambda self : None;
    def SetParentID(self, *args): return _pygl_coord.TreeVertex_SetParentID(self, *args)
    def SetID(self, *args): return _pygl_coord.TreeVertex_SetID(self, *args)
    def SetCoord(self, *args): return _pygl_coord.TreeVertex_SetCoord(self, *args)
    def SetDummy(self, *args): return _pygl_coord.TreeVertex_SetDummy(self, *args)
    def SetAngles(self): return _pygl_coord.TreeVertex_SetAngles(self)
    __swig_setmethods__["Dummy"] = _pygl_coord.TreeVertex_Dummy_set
    __swig_getmethods__["Dummy"] = _pygl_coord.TreeVertex_Dummy_get
    if _newclass:Dummy = _swig_property(_pygl_coord.TreeVertex_Dummy_get, _pygl_coord.TreeVertex_Dummy_set)
    __swig_setmethods__["Dummy2"] = _pygl_coord.TreeVertex_Dummy2_set
    __swig_getmethods__["Dummy2"] = _pygl_coord.TreeVertex_Dummy2_get
    if _newclass:Dummy2 = _swig_property(_pygl_coord.TreeVertex_Dummy2_get, _pygl_coord.TreeVertex_Dummy2_set)
    def GetCoord(self): return _pygl_coord.TreeVertex_GetCoord(self)
    def SetParentDistance(self, *args): return _pygl_coord.TreeVertex_SetParentDistance(self, *args)
    def SetParentBondAngle(self, *args): return _pygl_coord.TreeVertex_SetParentBondAngle(self, *args)
    def SetParentDihedralAngle(self, *args): return _pygl_coord.TreeVertex_SetParentDihedralAngle(self, *args)
    def AddParentDistance(self, *args): return _pygl_coord.TreeVertex_AddParentDistance(self, *args)
    def AddParentBondAngle(self, *args): return _pygl_coord.TreeVertex_AddParentBondAngle(self, *args)
    def AddParentDihedralAngle(self, *args): return _pygl_coord.TreeVertex_AddParentDihedralAngle(self, *args)
    def SetParent(self, *args): return _pygl_coord.TreeVertex_SetParent(self, *args)
    def AddChild(self, *args): return _pygl_coord.TreeVertex_AddChild(self, *args)
    def AddExternalChild(self, *args): return _pygl_coord.TreeVertex_AddExternalChild(self, *args)
    def GetParentID(self): return _pygl_coord.TreeVertex_GetParentID(self)
    def GetID(self): return _pygl_coord.TreeVertex_GetID(self)
    def GetParent(self): return _pygl_coord.TreeVertex_GetParent(self)
    def GetChildren(self): return _pygl_coord.TreeVertex_GetChildren(self)
    def GetChild(self, *args): return _pygl_coord.TreeVertex_GetChild(self, *args)
    def GetExternalChild(self, *args): return _pygl_coord.TreeVertex_GetExternalChild(self, *args)
    def GetNumberOfChildren(self): return _pygl_coord.TreeVertex_GetNumberOfChildren(self)
    def GetNumberOfExternalChildren(self): return _pygl_coord.TreeVertex_GetNumberOfExternalChildren(self)
    def PrintTree(self): return _pygl_coord.TreeVertex_PrintTree(self)
    def FindDepth(self): return _pygl_coord.TreeVertex_FindDepth(self)
    def GetParentDistance(self): return _pygl_coord.TreeVertex_GetParentDistance(self)
    def GetParentBondAngle(self): return _pygl_coord.TreeVertex_GetParentBondAngle(self)
    def GetParentDihedralAngle(self): return _pygl_coord.TreeVertex_GetParentDihedralAngle(self)
    def GetBranch(self): return _pygl_coord.TreeVertex_GetBranch(self)
    def GetNumberOfDescendants(self): return _pygl_coord.TreeVertex_GetNumberOfDescendants(self)
    def GetDescendants(self, *args): return _pygl_coord.TreeVertex_GetDescendants(self, *args)
    def GetNonDescendants(self, *args): return _pygl_coord.TreeVertex_GetNonDescendants(self, *args)
TreeVertex_swigregister = _pygl_coord.TreeVertex_swigregister
TreeVertex_swigregister(TreeVertex)

class Tree(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Tree, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Tree, name)
    __repr__ = _swig_repr
    def SetBondsAnglesTorsions(self, *args): return _pygl_coord.Tree_SetBondsAnglesTorsions(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_Tree(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pygl_coord.delete_Tree
    __del__ = lambda self : None;
    def SetCoords(self, *args): return _pygl_coord.Tree_SetCoords(self, *args)
    def Print(self): return _pygl_coord.Tree_Print(self)
    def FindMaxDepth(self): return _pygl_coord.Tree_FindMaxDepth(self)
    __swig_setmethods__["extra_bonded_pairs"] = _pygl_coord.Tree_extra_bonded_pairs_set
    __swig_getmethods__["extra_bonded_pairs"] = _pygl_coord.Tree_extra_bonded_pairs_get
    if _newclass:extra_bonded_pairs = _swig_property(_pygl_coord.Tree_extra_bonded_pairs_get, _pygl_coord.Tree_extra_bonded_pairs_set)
    def PrintZMatrix(self, *args): return _pygl_coord.Tree_PrintZMatrix(self, *args)
    def GetNumberOfVertices(self): return _pygl_coord.Tree_GetNumberOfVertices(self)
    def GetCoord(self, *args): return _pygl_coord.Tree_GetCoord(self, *args)
    def GetCoords(self, permuted=False): return _pygl_coord.Tree_GetCoords(self, permuted)
    def GetCartesian(self, *args): return _pygl_coord.Tree_GetCartesian(self, *args)
    def GetAllCartesians(self, permuted=False): return _pygl_coord.Tree_GetAllCartesians(self, permuted)
    def RotateAboutBond(self, *args): return _pygl_coord.Tree_RotateAboutBond(self, *args)
    def FindLongBranches(self, *args): return _pygl_coord.Tree_FindLongBranches(self, *args)
    def AddVertex(self, *args): return _pygl_coord.Tree_AddVertex(self, *args)
    def SetDihedralAngle(self, *args): return _pygl_coord.Tree_SetDihedralAngle(self, *args)
    def ForceEarlyConnection(self, *args): return _pygl_coord.Tree_ForceEarlyConnection(self, *args)
    def GetAllIDs(self): return _pygl_coord.Tree_GetAllIDs(self)
    def GetAllParentIDs(self): return _pygl_coord.Tree_GetAllParentIDs(self)
Tree_swigregister = _pygl_coord.Tree_swigregister
Tree_swigregister(Tree)

class PlaneVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, PlaneVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, PlaneVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.PlaneVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.PlaneVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.PlaneVector___bool__(self)
    def __len__(self): return _pygl_coord.PlaneVector___len__(self)
    def pop(self): return _pygl_coord.PlaneVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.PlaneVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.PlaneVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.PlaneVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.PlaneVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.PlaneVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.PlaneVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.PlaneVector_append(self, *args)
    def empty(self): return _pygl_coord.PlaneVector_empty(self)
    def size(self): return _pygl_coord.PlaneVector_size(self)
    def clear(self): return _pygl_coord.PlaneVector_clear(self)
    def swap(self, *args): return _pygl_coord.PlaneVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.PlaneVector_get_allocator(self)
    def begin(self): return _pygl_coord.PlaneVector_begin(self)
    def end(self): return _pygl_coord.PlaneVector_end(self)
    def rbegin(self): return _pygl_coord.PlaneVector_rbegin(self)
    def rend(self): return _pygl_coord.PlaneVector_rend(self)
    def pop_back(self): return _pygl_coord.PlaneVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.PlaneVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_PlaneVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.PlaneVector_push_back(self, *args)
    def front(self): return _pygl_coord.PlaneVector_front(self)
    def back(self): return _pygl_coord.PlaneVector_back(self)
    def assign(self, *args): return _pygl_coord.PlaneVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.PlaneVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.PlaneVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.PlaneVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.PlaneVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_PlaneVector
    __del__ = lambda self : None;
PlaneVector_swigregister = _pygl_coord.PlaneVector_swigregister
PlaneVector_swigregister(PlaneVector)

class Plane(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Plane, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Plane, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _pygl_coord.delete_Plane
    __del__ = lambda self : None;
    def __init__(self, *args): 
        this = _pygl_coord.new_Plane(*args)
        try: self.this.append(this)
        except: self.this = this
    def CalculateFromVertices(self, *args): return _pygl_coord.Plane_CalculateFromVertices(self, *args)
    def SetABCD(self, *args): return _pygl_coord.Plane_SetABCD(self, *args)
    def get_A(self): return _pygl_coord.Plane_get_A(self)
    def get_B(self): return _pygl_coord.Plane_get_B(self)
    def get_C(self): return _pygl_coord.Plane_get_C(self)
    def get_D(self): return _pygl_coord.Plane_get_D(self)
    def set_A(self, *args): return _pygl_coord.Plane_set_A(self, *args)
    def set_B(self, *args): return _pygl_coord.Plane_set_B(self, *args)
    def set_C(self, *args): return _pygl_coord.Plane_set_C(self, *args)
    def set_D(self, *args): return _pygl_coord.Plane_set_D(self, *args)
    def Normalize(self): return _pygl_coord.Plane_Normalize(self)
    def find_points_on_plane(self): return _pygl_coord.Plane_find_points_on_plane(self)
    def line_plane_intersection(self, *args): return _pygl_coord.Plane_line_plane_intersection(self, *args)
    def GetProjectionMatrix(self): return _pygl_coord.Plane_GetProjectionMatrix(self)
    def get_normal(self): return _pygl_coord.Plane_get_normal(self)
    def Print(self): return _pygl_coord.Plane_Print(self)
Plane_swigregister = _pygl_coord.Plane_swigregister
Plane_swigregister(Plane)

class Volume(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Volume, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Volume, name)
    __repr__ = _swig_repr
    def __init__(self): 
        this = _pygl_coord.new_Volume()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pygl_coord.delete_Volume
    __del__ = lambda self : None;
    def Print(self): return _pygl_coord.Volume_Print(self)
    def AddPlane(self, *args): return _pygl_coord.Volume_AddPlane(self, *args)
    def PointInVolume(self, *args): return _pygl_coord.Volume_PointInVolume(self, *args)
    def GetNumberOfPlanes(self): return _pygl_coord.Volume_GetNumberOfPlanes(self)
    def GetPlane(self, *args): return _pygl_coord.Volume_GetPlane(self, *args)
Volume_swigregister = _pygl_coord.Volume_swigregister
Volume_swigregister(Volume)

class QuadVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, QuadVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, QuadVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.QuadVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.QuadVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.QuadVector___bool__(self)
    def __len__(self): return _pygl_coord.QuadVector___len__(self)
    def pop(self): return _pygl_coord.QuadVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.QuadVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.QuadVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.QuadVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.QuadVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.QuadVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.QuadVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.QuadVector_append(self, *args)
    def empty(self): return _pygl_coord.QuadVector_empty(self)
    def size(self): return _pygl_coord.QuadVector_size(self)
    def clear(self): return _pygl_coord.QuadVector_clear(self)
    def swap(self, *args): return _pygl_coord.QuadVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.QuadVector_get_allocator(self)
    def begin(self): return _pygl_coord.QuadVector_begin(self)
    def end(self): return _pygl_coord.QuadVector_end(self)
    def rbegin(self): return _pygl_coord.QuadVector_rbegin(self)
    def rend(self): return _pygl_coord.QuadVector_rend(self)
    def pop_back(self): return _pygl_coord.QuadVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.QuadVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_QuadVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.QuadVector_push_back(self, *args)
    def front(self): return _pygl_coord.QuadVector_front(self)
    def back(self): return _pygl_coord.QuadVector_back(self)
    def assign(self, *args): return _pygl_coord.QuadVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.QuadVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.QuadVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.QuadVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.QuadVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_QuadVector
    __del__ = lambda self : None;
QuadVector_swigregister = _pygl_coord.QuadVector_swigregister
QuadVector_swigregister(QuadVector)

class Quat(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Quat, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Quat, name)
    __repr__ = _swig_repr
    def Setdval(self, *args): return _pygl_coord.Quat_Setdval(self, *args)
    def Getdval(self): return _pygl_coord.Quat_Getdval(self)
    def Inverse(self): return _pygl_coord.Quat_Inverse(self)
    __swig_destroy__ = _pygl_coord.delete_Quat
    __del__ = lambda self : None;
    def reset(self): return _pygl_coord.Quat_reset(self)
    def set(self, *args): return _pygl_coord.Quat_set(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_Quat(*args)
        try: self.this.append(this)
        except: self.this = this
    def seta(self, *args): return _pygl_coord.Quat_seta(self, *args)
    def postMult(self, *args): return _pygl_coord.Quat_postMult(self, *args)
    def multAndSet(self, *args): return _pygl_coord.Quat_multAndSet(self, *args)
    def normalize(self): return _pygl_coord.Quat_normalize(self)
    def getInvMatrix(self): return _pygl_coord.Quat_getInvMatrix(self)
    def getMatrix(self): return _pygl_coord.Quat_getMatrix(self)
    def rotate_about_axes(self, *args): return _pygl_coord.Quat_rotate_about_axes(self, *args)
    def Print(self): return _pygl_coord.Quat_Print(self)
    def __add__(self, *args): return _pygl_coord.Quat___add__(self, *args)
    def __sub__(self, *args): return _pygl_coord.Quat___sub__(self, *args)
    def __neg__(self): return _pygl_coord.Quat___neg__(self)
    def __iadd__(self, *args): return _pygl_coord.Quat___iadd__(self, *args)
    def __isub__(self, *args): return _pygl_coord.Quat___isub__(self, *args)
    __swig_getmethods__["Distance"] = lambda x: _pygl_coord.Quat_Distance
    if _newclass:Distance = staticmethod(_pygl_coord.Quat_Distance)
    __swig_getmethods__["Slerp"] = lambda x: _pygl_coord.Quat_Slerp
    if _newclass:Slerp = staticmethod(_pygl_coord.Quat_Slerp)
    __swig_getmethods__["Squad"] = lambda x: _pygl_coord.Quat_Squad
    if _newclass:Squad = staticmethod(_pygl_coord.Quat_Squad)
    def __idiv__(self, *args): return _pygl_coord.Quat___idiv__(self, *args)
    def __imul__(self, *args): return _pygl_coord.Quat___imul__(self, *args)
    def Conjugate(self): return _pygl_coord.Quat_Conjugate(self)
    __swig_getmethods__["DotProduct"] = lambda x: _pygl_coord.Quat_DotProduct
    if _newclass:DotProduct = staticmethod(_pygl_coord.Quat_DotProduct)
    __swig_getmethods__["OuterProduct"] = lambda x: _pygl_coord.Quat_OuterProduct
    if _newclass:OuterProduct = staticmethod(_pygl_coord.Quat_OuterProduct)
    def Log(self): return _pygl_coord.Quat_Log(self)
    def Exp(self): return _pygl_coord.Quat_Exp(self)
    def Power(self, *args): return _pygl_coord.Quat_Power(self, *args)
    def Norm(self): return _pygl_coord.Quat_Norm(self)
    def dvals(self): return _pygl_coord.Quat_dvals(self)
    def GetRotationAxis(self): return _pygl_coord.Quat_GetRotationAxis(self)
    def __mul__(self, *args): return _pygl_coord.Quat___mul__(self, *args)
    def __div__(self, *args): return _pygl_coord.Quat___div__(self, *args)
Quat_swigregister = _pygl_coord.Quat_swigregister
Quat_swigregister(Quat)

def Quat_Distance(*args):
  return _pygl_coord.Quat_Distance(*args)
Quat_Distance = _pygl_coord.Quat_Distance

def Quat_Slerp(*args):
  return _pygl_coord.Quat_Slerp(*args)
Quat_Slerp = _pygl_coord.Quat_Slerp

def Quat_Squad(*args):
  return _pygl_coord.Quat_Squad(*args)
Quat_Squad = _pygl_coord.Quat_Squad

def Quat_DotProduct(*args):
  return _pygl_coord.Quat_DotProduct(*args)
Quat_DotProduct = _pygl_coord.Quat_DotProduct

def Quat_OuterProduct(*args):
  return _pygl_coord.Quat_OuterProduct(*args)
Quat_OuterProduct = _pygl_coord.Quat_OuterProduct


def GetCartFrom3Carts(*args):
  return _pygl_coord.GetCartFrom3Carts(*args)
GetCartFrom3Carts = _pygl_coord.GetCartFrom3Carts

def LineLength(*args):
  return _pygl_coord.LineLength(*args)
LineLength = _pygl_coord.LineLength

def DihedralAngle(*args):
  return _pygl_coord.DihedralAngle(*args)
DihedralAngle = _pygl_coord.DihedralAngle

def DistanceBetweenTwoLines(*args):
  return _pygl_coord.DistanceBetweenTwoLines(*args)
DistanceBetweenTwoLines = _pygl_coord.DistanceBetweenTwoLines

def DistanceBetweenPointAndLine(*args):
  return _pygl_coord.DistanceBetweenPointAndLine(*args)
DistanceBetweenPointAndLine = _pygl_coord.DistanceBetweenPointAndLine

def PointAtWhichTangentToOneLineIntersectsAnotherLine(*args):
  return _pygl_coord.PointAtWhichTangentToOneLineIntersectsAnotherLine(*args)
PointAtWhichTangentToOneLineIntersectsAnotherLine = _pygl_coord.PointAtWhichTangentToOneLineIntersectsAnotherLine

def LeastSquares2D(*args):
  return _pygl_coord.LeastSquares2D(*args)
LeastSquares2D = _pygl_coord.LeastSquares2D

def LeastSquaresOrtho3D(*args):
  return _pygl_coord.LeastSquaresOrtho3D(*args)
LeastSquaresOrtho3D = _pygl_coord.LeastSquaresOrtho3D

def Mean(*args):
  return _pygl_coord.Mean(*args)
Mean = _pygl_coord.Mean

def GetStandardRotation(*args):
  return _pygl_coord.GetStandardRotation(*args)
GetStandardRotation = _pygl_coord.GetStandardRotation

def LeastSquaresPolyFit(*args):
  return _pygl_coord.LeastSquaresPolyFit(*args)
LeastSquaresPolyFit = _pygl_coord.LeastSquaresPolyFit

def LeastSquaresQuadraticFit3D(*args):
  return _pygl_coord.LeastSquaresQuadraticFit3D(*args)
LeastSquaresQuadraticFit3D = _pygl_coord.LeastSquaresQuadraticFit3D

def LeastSquaresCubicFit3D(*args):
  return _pygl_coord.LeastSquaresCubicFit3D(*args)
LeastSquaresCubicFit3D = _pygl_coord.LeastSquaresCubicFit3D

def VectorDoubleMean(*args):
  return _pygl_coord.VectorDoubleMean(*args)
VectorDoubleMean = _pygl_coord.VectorDoubleMean

def VectorDoubleStandardDeviation(*args):
  return _pygl_coord.VectorDoubleStandardDeviation(*args)
VectorDoubleStandardDeviation = _pygl_coord.VectorDoubleStandardDeviation
class GetAxisAndPointFromMatrix(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, GetAxisAndPointFromMatrix, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, GetAxisAndPointFromMatrix, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        this = _pygl_coord.new_GetAxisAndPointFromMatrix(*args)
        try: self.this.append(this)
        except: self.this = this
    def axis(self): return _pygl_coord.GetAxisAndPointFromMatrix_axis(self)
    def point(self): return _pygl_coord.GetAxisAndPointFromMatrix_point(self)
    def projection(self): return _pygl_coord.GetAxisAndPointFromMatrix_projection(self)
    def mat(self): return _pygl_coord.GetAxisAndPointFromMatrix_mat(self)
    def CheckIsValid(self): return _pygl_coord.GetAxisAndPointFromMatrix_CheckIsValid(self)
    __swig_destroy__ = _pygl_coord.delete_GetAxisAndPointFromMatrix
    __del__ = lambda self : None;
GetAxisAndPointFromMatrix_swigregister = _pygl_coord.GetAxisAndPointFromMatrix_swigregister
GetAxisAndPointFromMatrix_swigregister(GetAxisAndPointFromMatrix)

class SimpleConnectionVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, SimpleConnectionVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, SimpleConnectionVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.SimpleConnectionVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.SimpleConnectionVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.SimpleConnectionVector___bool__(self)
    def __len__(self): return _pygl_coord.SimpleConnectionVector___len__(self)
    def pop(self): return _pygl_coord.SimpleConnectionVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.SimpleConnectionVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.SimpleConnectionVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.SimpleConnectionVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.SimpleConnectionVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.SimpleConnectionVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.SimpleConnectionVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.SimpleConnectionVector_append(self, *args)
    def empty(self): return _pygl_coord.SimpleConnectionVector_empty(self)
    def size(self): return _pygl_coord.SimpleConnectionVector_size(self)
    def clear(self): return _pygl_coord.SimpleConnectionVector_clear(self)
    def swap(self, *args): return _pygl_coord.SimpleConnectionVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.SimpleConnectionVector_get_allocator(self)
    def begin(self): return _pygl_coord.SimpleConnectionVector_begin(self)
    def end(self): return _pygl_coord.SimpleConnectionVector_end(self)
    def rbegin(self): return _pygl_coord.SimpleConnectionVector_rbegin(self)
    def rend(self): return _pygl_coord.SimpleConnectionVector_rend(self)
    def pop_back(self): return _pygl_coord.SimpleConnectionVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.SimpleConnectionVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_SimpleConnectionVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.SimpleConnectionVector_push_back(self, *args)
    def front(self): return _pygl_coord.SimpleConnectionVector_front(self)
    def back(self): return _pygl_coord.SimpleConnectionVector_back(self)
    def assign(self, *args): return _pygl_coord.SimpleConnectionVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.SimpleConnectionVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.SimpleConnectionVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.SimpleConnectionVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.SimpleConnectionVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_SimpleConnectionVector
    __del__ = lambda self : None;
SimpleConnectionVector_swigregister = _pygl_coord.SimpleConnectionVector_swigregister
SimpleConnectionVector_swigregister(SimpleConnectionVector)

class SimpleConnectionSimpleConnectionVector(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, SimpleConnectionSimpleConnectionVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, SimpleConnectionSimpleConnectionVector, name)
    __repr__ = _swig_repr
    def iterator(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector_iterator(self)
    def __iter__(self): return self.iterator()
    def __nonzero__(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector___nonzero__(self)
    def __bool__(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector___bool__(self)
    def __len__(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector___len__(self)
    def pop(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector_pop(self)
    def __getslice__(self, *args): return _pygl_coord.SimpleConnectionSimpleConnectionVector___getslice__(self, *args)
    def __setslice__(self, *args): return _pygl_coord.SimpleConnectionSimpleConnectionVector___setslice__(self, *args)
    def __delslice__(self, *args): return _pygl_coord.SimpleConnectionSimpleConnectionVector___delslice__(self, *args)
    def __delitem__(self, *args): return _pygl_coord.SimpleConnectionSimpleConnectionVector___delitem__(self, *args)
    def __getitem__(self, *args): return _pygl_coord.SimpleConnectionSimpleConnectionVector___getitem__(self, *args)
    def __setitem__(self, *args): return _pygl_coord.SimpleConnectionSimpleConnectionVector___setitem__(self, *args)
    def append(self, *args): return _pygl_coord.SimpleConnectionSimpleConnectionVector_append(self, *args)
    def empty(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector_empty(self)
    def size(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector_size(self)
    def clear(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector_clear(self)
    def swap(self, *args): return _pygl_coord.SimpleConnectionSimpleConnectionVector_swap(self, *args)
    def get_allocator(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector_get_allocator(self)
    def begin(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector_begin(self)
    def end(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector_end(self)
    def rbegin(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector_rbegin(self)
    def rend(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector_rend(self)
    def pop_back(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector_pop_back(self)
    def erase(self, *args): return _pygl_coord.SimpleConnectionSimpleConnectionVector_erase(self, *args)
    def __init__(self, *args): 
        this = _pygl_coord.new_SimpleConnectionSimpleConnectionVector(*args)
        try: self.this.append(this)
        except: self.this = this
    def push_back(self, *args): return _pygl_coord.SimpleConnectionSimpleConnectionVector_push_back(self, *args)
    def front(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector_front(self)
    def back(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector_back(self)
    def assign(self, *args): return _pygl_coord.SimpleConnectionSimpleConnectionVector_assign(self, *args)
    def resize(self, *args): return _pygl_coord.SimpleConnectionSimpleConnectionVector_resize(self, *args)
    def insert(self, *args): return _pygl_coord.SimpleConnectionSimpleConnectionVector_insert(self, *args)
    def reserve(self, *args): return _pygl_coord.SimpleConnectionSimpleConnectionVector_reserve(self, *args)
    def capacity(self): return _pygl_coord.SimpleConnectionSimpleConnectionVector_capacity(self)
    __swig_destroy__ = _pygl_coord.delete_SimpleConnectionSimpleConnectionVector
    __del__ = lambda self : None;
SimpleConnectionSimpleConnectionVector_swigregister = _pygl_coord.SimpleConnectionSimpleConnectionVector_swigregister
SimpleConnectionSimpleConnectionVector_swigregister(SimpleConnectionSimpleConnectionVector)

class SimpleConnection(_object):
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, SimpleConnection, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, SimpleConnection, name)
    __repr__ = _swig_repr
    __swig_setmethods__["first"] = _pygl_coord.SimpleConnection_first_set
    __swig_getmethods__["first"] = _pygl_coord.SimpleConnection_first_get
    if _newclass:first = _swig_property(_pygl_coord.SimpleConnection_first_get, _pygl_coord.SimpleConnection_first_set)
    __swig_setmethods__["second"] = _pygl_coord.SimpleConnection_second_set
    __swig_getmethods__["second"] = _pygl_coord.SimpleConnection_second_get
    if _newclass:second = _swig_property(_pygl_coord.SimpleConnection_second_get, _pygl_coord.SimpleConnection_second_set)
    __swig_setmethods__["label"] = _pygl_coord.SimpleConnection_label_set
    __swig_getmethods__["label"] = _pygl_coord.SimpleConnection_label_get
    if _newclass:label = _swig_property(_pygl_coord.SimpleConnection_label_get, _pygl_coord.SimpleConnection_label_set)
    def __init__(self, *args): 
        this = _pygl_coord.new_SimpleConnection(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _pygl_coord.delete_SimpleConnection
    __del__ = lambda self : None;
SimpleConnection_swigregister = _pygl_coord.SimpleConnection_swigregister
SimpleConnection_swigregister(SimpleConnection)

# This file is compatible with both classic and new-style classes.


