# This file was automatically generated by SWIG (https://www.swig.org).
# Version 4.3.1
#
# 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 as _swig_python_version_info
# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _saga_api
else:
    import _saga_api

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

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


def _swig_setattr_nondynamic_instance_variable(set):
    def set_instance_attr(self, name, value):
        if name == "this":
            set(self, name, value)
        elif name == "thisown":
            self.this.own(value)
        elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
            set(self, name, value)
        else:
            raise AttributeError("You cannot add instance attributes to %s" % self)
    return set_instance_attr


def _swig_setattr_nondynamic_class_variable(set):
    def set_class_attr(cls, name, value):
        if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
            set(cls, name, value)
        else:
            raise AttributeError("You cannot add class attributes to %s" % cls)
    return set_class_attr


def _swig_add_metaclass(metaclass):
    """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
    def wrapper(cls):
        return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
    return wrapper


class _SwigNonDynamicMeta(type):
    """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
    __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)



def new_intp():
    return _saga_api.new_intp()

def copy_intp(value):
    return _saga_api.copy_intp(value)

def delete_intp(obj):
    return _saga_api.delete_intp(obj)

def intp_assign(obj, value):
    return _saga_api.intp_assign(obj, value)

def intp_value(obj):
    return _saga_api.intp_value(obj)

def new_doublep():
    return _saga_api.new_doublep()

def copy_doublep(value):
    return _saga_api.copy_doublep(value)

def delete_doublep(obj):
    return _saga_api.delete_doublep(obj)

def doublep_assign(obj, value):
    return _saga_api.doublep_assign(obj, value)

def doublep_value(obj):
    return _saga_api.doublep_value(obj)
SIZEOF_LONG = _saga_api.SIZEOF_LONG

def SG_OMP_Set_Max_Num_Threads(iCores):
    return _saga_api.SG_OMP_Set_Max_Num_Threads(iCores)

def SG_OMP_Get_Max_Num_Threads():
    return _saga_api.SG_OMP_Get_Max_Num_Threads()

def SG_OMP_Get_Max_Num_Procs():
    return _saga_api.SG_OMP_Get_Max_Num_Procs()

def SG_OMP_Get_Thread_Num():
    return _saga_api.SG_OMP_Get_Thread_Num()

def SG_Malloc(size):
    return _saga_api.SG_Malloc(size)

def SG_Calloc(num, size):
    return _saga_api.SG_Calloc(num, size)

def SG_Realloc(memblock, size):
    return _saga_api.SG_Realloc(memblock, size)

def SG_Free(memblock):
    return _saga_api.SG_Free(memblock)

def SG_Swap_Bytes(Buffer, nBytes):
    return _saga_api.SG_Swap_Bytes(Buffer, nBytes)

def SG_Mem_Get_Int(Buffer, bSwapBytes):
    return _saga_api.SG_Mem_Get_Int(Buffer, bSwapBytes)

def SG_Mem_Set_Int(Buffer, Value, bSwapBytes):
    return _saga_api.SG_Mem_Set_Int(Buffer, Value, bSwapBytes)

def SG_Mem_Get_Double(Buffer, bSwapBytes):
    return _saga_api.SG_Mem_Get_Double(Buffer, bSwapBytes)

def SG_Mem_Set_Double(Buffer, Value, bSwapBytes):
    return _saga_api.SG_Mem_Set_Double(Buffer, Value, bSwapBytes)
class CSG_Buffer(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Buffer_swiginit(self, _saga_api.new_CSG_Buffer(*args))

    def Create(self, *args):
        return _saga_api.CSG_Buffer_Create(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_Buffer

    def Destroy(self):
        return _saga_api.CSG_Buffer_Destroy(self)

    def Set_Size(self, Size, bShrink=True):
        return _saga_api.CSG_Buffer_Set_Size(self, Size, bShrink)

    def Inc_Size(self, Size):
        return _saga_api.CSG_Buffer_Inc_Size(self, Size)

    def Get_Size(self):
        return _saga_api.CSG_Buffer_Get_Size(self)

    def Set_Data(self, Data, Size, bShrink=True):
        return _saga_api.CSG_Buffer_Set_Data(self, Data, Size, bShrink)

    def Get_Data(self, Offset=0):
        return _saga_api.CSG_Buffer_Get_Data(self, Offset)

    def Add_Value(self, *args):
        return _saga_api.CSG_Buffer_Add_Value(self, *args)

    def __iadd__(self, *args):
        return _saga_api.CSG_Buffer___iadd__(self, *args)

    def Set_Value(self, *args):
        return _saga_api.CSG_Buffer_Set_Value(self, *args)

    def asShort(self, Offset, bBigEndian=False):
        return _saga_api.CSG_Buffer_asShort(self, Offset, bBigEndian)

    def asInt(self, Offset, bBigEndian=False):
        return _saga_api.CSG_Buffer_asInt(self, Offset, bBigEndian)

    def asFloat(self, Offset, bBigEndian=False):
        return _saga_api.CSG_Buffer_asFloat(self, Offset, bBigEndian)

    def asDouble(self, Offset, bBigEndian=False):
        return _saga_api.CSG_Buffer_asDouble(self, Offset, bBigEndian)

# Register CSG_Buffer in _saga_api:
_saga_api.CSG_Buffer_swigregister(CSG_Buffer)
TSG_Array_Growth_SG_ARRAY_GROWTH_0 = _saga_api.TSG_Array_Growth_SG_ARRAY_GROWTH_0
TSG_Array_Growth_SG_ARRAY_GROWTH_1 = _saga_api.TSG_Array_Growth_SG_ARRAY_GROWTH_1
TSG_Array_Growth_SG_ARRAY_GROWTH_2 = _saga_api.TSG_Array_Growth_SG_ARRAY_GROWTH_2
TSG_Array_Growth_SG_ARRAY_GROWTH_3 = _saga_api.TSG_Array_Growth_SG_ARRAY_GROWTH_3
TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_8 = _saga_api.TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_8
TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_16 = _saga_api.TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_16
TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_32 = _saga_api.TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_32
TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_64 = _saga_api.TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_64
TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_128 = _saga_api.TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_128
TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_256 = _saga_api.TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_256
TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_512 = _saga_api.TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_512
TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_1024 = _saga_api.TSG_Array_Growth_SG_ARRAY_GROWTH_FIX_1024
class CSG_Array(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Array

    def __init__(self, *args):
        _saga_api.CSG_Array_swiginit(self, _saga_api.new_CSG_Array(*args))

    def Create(self, *args):
        return _saga_api.CSG_Array_Create(self, *args)

    def Destroy(self):
        return _saga_api.CSG_Array_Destroy(self)

    def Set_Growth(self, Growth):
        return _saga_api.CSG_Array_Set_Growth(self, Growth)

    def Get_Growth(self):
        return _saga_api.CSG_Array_Get_Growth(self)

    def Get_Value_Size(self):
        return _saga_api.CSG_Array_Get_Value_Size(self)

    def Get_Size(self):
        return _saga_api.CSG_Array_Get_Size(self)

    def Get_uSize(self):
        return _saga_api.CSG_Array_Get_uSize(self)

    def Get_Entry(self, Index):
        return _saga_api.CSG_Array_Get_Entry(self, Index)

    def Del_Entry(self, Index, bShrink=True):
        return _saga_api.CSG_Array_Del_Entry(self, Index, bShrink)

    def Get_Array(self, *args):
        return _saga_api.CSG_Array_Get_Array(self, *args)

    def Set_Array(self, *args):
        return _saga_api.CSG_Array_Set_Array(self, *args)

    def Inc_Array(self, *args):
        return _saga_api.CSG_Array_Inc_Array(self, *args)

    def Dec_Array(self, *args):
        return _saga_api.CSG_Array_Dec_Array(self, *args)

# Register CSG_Array in _saga_api:
_saga_api.CSG_Array_swigregister(CSG_Array)
class CSG_Array_Pointer(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Array_Pointer_swiginit(self, _saga_api.new_CSG_Array_Pointer(*args))

    def Create(self, *args):
        return _saga_api.CSG_Array_Pointer_Create(self, *args)

    def Destroy(self):
        return _saga_api.CSG_Array_Pointer_Destroy(self)

    def Set_Growth(self, Growth):
        return _saga_api.CSG_Array_Pointer_Set_Growth(self, Growth)

    def Get_Growth(self):
        return _saga_api.CSG_Array_Pointer_Get_Growth(self)

    def Get_Size(self):
        return _saga_api.CSG_Array_Pointer_Get_Size(self)

    def Get_uSize(self):
        return _saga_api.CSG_Array_Pointer_Get_uSize(self)

    def Get_Array(self, *args):
        return _saga_api.CSG_Array_Pointer_Get_Array(self, *args)

    def Set_Array(self, nValues, bShrink=True):
        return _saga_api.CSG_Array_Pointer_Set_Array(self, nValues, bShrink)

    def Inc_Array(self, nValues=1):
        return _saga_api.CSG_Array_Pointer_Inc_Array(self, nValues)

    def Dec_Array(self, bShrink=True):
        return _saga_api.CSG_Array_Pointer_Dec_Array(self, bShrink)

    def Add(self, *args):
        return _saga_api.CSG_Array_Pointer_Add(self, *args)

    def Set(self, Index, Value):
        return _saga_api.CSG_Array_Pointer_Set(self, Index, Value)

    def Get(self, Index):
        return _saga_api.CSG_Array_Pointer_Get(self, Index)

    def Del(self, *args):
        return _saga_api.CSG_Array_Pointer_Del(self, *args)

    def __iadd__(self, *args):
        return _saga_api.CSG_Array_Pointer___iadd__(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_Array_Pointer

# Register CSG_Array_Pointer in _saga_api:
_saga_api.CSG_Array_Pointer_swigregister(CSG_Array_Pointer)
class CSG_Array_Int(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Array_Int_swiginit(self, _saga_api.new_CSG_Array_Int(*args))

    def Create(self, *args):
        return _saga_api.CSG_Array_Int_Create(self, *args)

    def Destroy(self):
        return _saga_api.CSG_Array_Int_Destroy(self)

    def Set_Growth(self, Growth):
        return _saga_api.CSG_Array_Int_Set_Growth(self, Growth)

    def Get_Growth(self):
        return _saga_api.CSG_Array_Int_Get_Growth(self)

    def Get_Size(self):
        return _saga_api.CSG_Array_Int_Get_Size(self)

    def Get_uSize(self):
        return _saga_api.CSG_Array_Int_Get_uSize(self)

    def Get_Array(self, *args):
        return _saga_api.CSG_Array_Int_Get_Array(self, *args)

    def Set_Array(self, nValues, bShrink=True):
        return _saga_api.CSG_Array_Int_Set_Array(self, nValues, bShrink)

    def Inc_Array(self, nValues=1):
        return _saga_api.CSG_Array_Int_Inc_Array(self, nValues)

    def Dec_Array(self, bShrink=True):
        return _saga_api.CSG_Array_Int_Dec_Array(self, bShrink)

    def Add(self, *args):
        return _saga_api.CSG_Array_Int_Add(self, *args)

    def Set(self, Index, Value):
        return _saga_api.CSG_Array_Int_Set(self, Index, Value)

    def Get(self, Index):
        return _saga_api.CSG_Array_Int_Get(self, Index)

    def Assign(self, Value):
        return _saga_api.CSG_Array_Int_Assign(self, Value)

    def __iadd__(self, *args):
        return _saga_api.CSG_Array_Int___iadd__(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_Array_Int

# Register CSG_Array_Int in _saga_api:
_saga_api.CSG_Array_Int_swigregister(CSG_Array_Int)
class CSG_Array_sLong(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Array_sLong_swiginit(self, _saga_api.new_CSG_Array_sLong(*args))

    def Create(self, *args):
        return _saga_api.CSG_Array_sLong_Create(self, *args)

    def Destroy(self):
        return _saga_api.CSG_Array_sLong_Destroy(self)

    def Set_Growth(self, Growth):
        return _saga_api.CSG_Array_sLong_Set_Growth(self, Growth)

    def Get_Growth(self):
        return _saga_api.CSG_Array_sLong_Get_Growth(self)

    def Get_Size(self):
        return _saga_api.CSG_Array_sLong_Get_Size(self)

    def Get_uSize(self):
        return _saga_api.CSG_Array_sLong_Get_uSize(self)

    def Get_Array(self, *args):
        return _saga_api.CSG_Array_sLong_Get_Array(self, *args)

    def Set_Array(self, nValues, bShrink=True):
        return _saga_api.CSG_Array_sLong_Set_Array(self, nValues, bShrink)

    def Inc_Array(self, nValues=1):
        return _saga_api.CSG_Array_sLong_Inc_Array(self, nValues)

    def Dec_Array(self, bShrink=True):
        return _saga_api.CSG_Array_sLong_Dec_Array(self, bShrink)

    def Add(self, *args):
        return _saga_api.CSG_Array_sLong_Add(self, *args)

    def Set(self, Index, Value):
        return _saga_api.CSG_Array_sLong_Set(self, Index, Value)

    def Get(self, Index):
        return _saga_api.CSG_Array_sLong_Get(self, Index)

    def Assign(self, Value):
        return _saga_api.CSG_Array_sLong_Assign(self, Value)

    def __iadd__(self, *args):
        return _saga_api.CSG_Array_sLong___iadd__(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_Array_sLong

# Register CSG_Array_sLong in _saga_api:
_saga_api.CSG_Array_sLong_swigregister(CSG_Array_sLong)
SG_FILE_ENCODING_ANSI = _saga_api.SG_FILE_ENCODING_ANSI
SG_FILE_ENCODING_UTF7 = _saga_api.SG_FILE_ENCODING_UTF7
SG_FILE_ENCODING_UTF8 = _saga_api.SG_FILE_ENCODING_UTF8
SG_FILE_ENCODING_UTF16LE = _saga_api.SG_FILE_ENCODING_UTF16LE
SG_FILE_ENCODING_UTF16BE = _saga_api.SG_FILE_ENCODING_UTF16BE
SG_FILE_ENCODING_UTF32LE = _saga_api.SG_FILE_ENCODING_UTF32LE
SG_FILE_ENCODING_UTF32BE = _saga_api.SG_FILE_ENCODING_UTF32BE
SG_FILE_ENCODING_UNDEFINED = _saga_api.SG_FILE_ENCODING_UNDEFINED
class CSG_String(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_String_swiginit(self, _saga_api.new_CSG_String(*args))

    def Create(self, pString):
        return _saga_api.CSG_String_Create(self, pString)
    __swig_destroy__ = _saga_api.delete_CSG_String

    def Length(self):
        return _saga_api.CSG_String_Length(self)

    def is_Empty(self):
        return _saga_api.CSG_String_is_Empty(self)

    def Get_Char(self, i):
        return _saga_api.CSG_String_Get_Char(self, i)

    def Set_Char(self, *args):
        return _saga_api.CSG_String_Set_Char(self, *args)

    def b_str(self):
        return _saga_api.CSG_String_b_str(self)

    def w_str(self):
        return _saga_api.CSG_String_w_str(self)

    def c_str(self):
        return _saga_api.CSG_String_c_str(self)

    def Prepend(self, String):
        return _saga_api.CSG_String_Prepend(self, String)

    def Append(self, *args):
        return _saga_api.CSG_String_Append(self, *args)

    def __iadd__(self, *args):
        return _saga_api.CSG_String___iadd__(self, *args)

    def __add__(self, *args):
        return _saga_api.CSG_String___add__(self, *args)

    def Cmp(self, String):
        return _saga_api.CSG_String_Cmp(self, String)

    def CmpNoCase(self, String):
        return _saga_api.CSG_String_CmpNoCase(self, String)

    def is_Same_As(self, *args):
        return _saga_api.CSG_String_is_Same_As(self, *args)

    def Make_Lower(self):
        return _saga_api.CSG_String_Make_Lower(self)

    def Make_Upper(self):
        return _saga_api.CSG_String_Make_Upper(self)

    def Clear(self):
        return _saga_api.CSG_String_Clear(self)

    @staticmethod
    def Format(*args):
        return _saga_api.CSG_String_Format(*args)

    def Printf(self, *args):
        return _saga_api.CSG_String_Printf(self, *args)

    def Replace(self, Old, New, bReplaceAll=True):
        return _saga_api.CSG_String_Replace(self, Old, New, bReplaceAll)

    def Replace_Single_Char(self, *args):
        return _saga_api.CSG_String_Replace_Single_Char(self, *args)

    def Remove(self, *args):
        return _saga_api.CSG_String_Remove(self, *args)

    def Trim(self, fromRight=False):
        return _saga_api.CSG_String_Trim(self, fromRight)

    def Trim_Both(self):
        return _saga_api.CSG_String_Trim_Both(self)

    def Find(self, *args):
        return _saga_api.CSG_String_Find(self, *args)

    def Contains(self, String):
        return _saga_api.CSG_String_Contains(self, String)

    def AfterFirst(self, *args):
        return _saga_api.CSG_String_AfterFirst(self, *args)

    def AfterLast(self, *args):
        return _saga_api.CSG_String_AfterLast(self, *args)

    def BeforeFirst(self, *args):
        return _saga_api.CSG_String_BeforeFirst(self, *args)

    def BeforeLast(self, *args):
        return _saga_api.CSG_String_BeforeLast(self, *args)

    def Right(self, count):
        return _saga_api.CSG_String_Right(self, count)

    def Mid(self, first, count=0):
        return _saga_api.CSG_String_Mid(self, first, count)

    def Left(self, count):
        return _saga_api.CSG_String_Left(self, count)

    def is_Number(self):
        return _saga_api.CSG_String_is_Number(self)

    def asInt(self, *args):
        return _saga_api.CSG_String_asInt(self, *args)

    def asLongLong(self, *args):
        return _saga_api.CSG_String_asLongLong(self, *args)

    def asDouble(self, *args):
        return _saga_api.CSG_String_asDouble(self, *args)

    @staticmethod
    def from_UTF8(String, Length=0):
        return _saga_api.CSG_String_from_UTF8(String, Length)

    def to_UTF8(self, *args):
        return _saga_api.CSG_String_to_UTF8(self, *args)

    def to_MBChar(self, *args):
        return _saga_api.CSG_String_to_MBChar(self, *args)

    def to_ASCII(self, *args):
        return _saga_api.CSG_String_to_ASCII(self, *args)

    def to_StdString(self):
        return _saga_api.CSG_String_to_StdString(self)

    def to_StdWstring(self):
        return _saga_api.CSG_String_to_StdWstring(self)

# Register CSG_String in _saga_api:
_saga_api.CSG_String_swigregister(CSG_String)
class CSG_Strings(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Strings_swiginit(self, _saga_api.new_CSG_Strings(*args))
    __swig_destroy__ = _saga_api.delete_CSG_Strings

    def Create(self, Strings):
        return _saga_api.CSG_Strings_Create(self, Strings)

    def Destroy(self):
        return _saga_api.CSG_Strings_Destroy(self)

    def Set_Count(self, *args):
        return _saga_api.CSG_Strings_Set_Count(self, *args)

    def Get_Count(self):
        return _saga_api.CSG_Strings_Get_Count(self)

    def Get_Size(self):
        return _saga_api.CSG_Strings_Get_Size(self)

    def Add(self, *args):
        return _saga_api.CSG_Strings_Add(self, *args)

    def Ins(self, *args):
        return _saga_api.CSG_Strings_Ins(self, *args)

    def Del(self, *args):
        return _saga_api.CSG_Strings_Del(self, *args)

    def Get_String(self, *args):
        return _saga_api.CSG_Strings_Get_String(self, *args)

    def __iadd__(self, *args):
        return _saga_api.CSG_Strings___iadd__(self, *args)

    def Sort(self, Ascending=True):
        return _saga_api.CSG_Strings_Sort(self, Ascending)

    def Clear(self):
        return _saga_api.CSG_Strings_Clear(self)

    def Assign(self, Strings):
        return _saga_api.CSG_Strings_Assign(self, Strings)

# Register CSG_Strings in _saga_api:
_saga_api.CSG_Strings_swigregister(CSG_Strings)
SG_DEFAULT_DELIMITERS = _saga_api.SG_DEFAULT_DELIMITERS
SG_TOKEN_INVALID = _saga_api.SG_TOKEN_INVALID
SG_TOKEN_DEFAULT = _saga_api.SG_TOKEN_DEFAULT
SG_TOKEN_RET_EMPTY = _saga_api.SG_TOKEN_RET_EMPTY
SG_TOKEN_RET_EMPTY_ALL = _saga_api.SG_TOKEN_RET_EMPTY_ALL
SG_TOKEN_RET_DELIMS = _saga_api.SG_TOKEN_RET_DELIMS
SG_TOKEN_STRTOK = _saga_api.SG_TOKEN_STRTOK
class CSG_String_Tokenizer(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_String_Tokenizer_swiginit(self, _saga_api.new_CSG_String_Tokenizer(*args))
    __swig_destroy__ = _saga_api.delete_CSG_String_Tokenizer

    def Get_Tokens_Count(self):
        return _saga_api.CSG_String_Tokenizer_Get_Tokens_Count(self)

    def Get_Last_Delimiter(self):
        return _saga_api.CSG_String_Tokenizer_Get_Last_Delimiter(self)

    def Get_Next_Token(self):
        return _saga_api.CSG_String_Tokenizer_Get_Next_Token(self)

    def Get_Position(self):
        return _saga_api.CSG_String_Tokenizer_Get_Position(self)

    def Get_String(self):
        return _saga_api.CSG_String_Tokenizer_Get_String(self)

    def Has_More_Tokens(self):
        return _saga_api.CSG_String_Tokenizer_Has_More_Tokens(self)

    def Set_String(self, *args):
        return _saga_api.CSG_String_Tokenizer_Set_String(self, *args)

# Register CSG_String_Tokenizer in _saga_api:
_saga_api.CSG_String_Tokenizer_swigregister(CSG_String_Tokenizer)

def SG_String_Tokenize(*args):
    return _saga_api.SG_String_Tokenize(*args)

def SG_is_Character_Numeric(Character):
    return _saga_api.SG_is_Character_Numeric(Character)

def SG_Get_CurrentTimeStr(bWithDate=True):
    return _saga_api.SG_Get_CurrentTimeStr(bWithDate)

def SG_Degree_To_Double(String):
    return _saga_api.SG_Degree_To_Double(String)

def SG_Double_To_Degree(Value):
    return _saga_api.SG_Double_To_Degree(Value)

def SG_Get_Significant_Decimals(Value, maxDecimals=6):
    return _saga_api.SG_Get_Significant_Decimals(Value, maxDecimals)

def SG_Flip_Decimal_Separators(String):
    return _saga_api.SG_Flip_Decimal_Separators(String)

def SG_Get_String(*args):
    return _saga_api.SG_Get_String(*args)

def SG_HTML_Tag_Replacer(Text):
    return _saga_api.SG_HTML_Tag_Replacer(Text)
class CSG_Bytes(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Bytes_swiginit(self, _saga_api.new_CSG_Bytes(*args))

    def Create(self, *args):
        return _saga_api.CSG_Bytes_Create(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_Bytes

    def Destroy(self):
        return _saga_api.CSG_Bytes_Destroy(self)

    def Clear(self):
        return _saga_api.CSG_Bytes_Clear(self)

    def Rewind(self):
        return _saga_api.CSG_Bytes_Rewind(self)

    def is_EOF(self):
        return _saga_api.CSG_Bytes_is_EOF(self)

    def Get_Count(self):
        return _saga_api.CSG_Bytes_Get_Count(self)

    def Get_Bytes(self, *args):
        return _saga_api.CSG_Bytes_Get_Bytes(self, *args)

    def __add__(self, i):
        return _saga_api.CSG_Bytes___add__(self, i)

    def Get_Byte(self, i):
        return _saga_api.CSG_Bytes_Get_Byte(self, i)

    def Assign(self, Bytes):
        return _saga_api.CSG_Bytes_Assign(self, Bytes)

    def Add(self, *args):
        return _saga_api.CSG_Bytes_Add(self, *args)

    def __iadd__(self, *args):
        return _saga_api.CSG_Bytes___iadd__(self, *args)

    def asByte(self, i):
        return _saga_api.CSG_Bytes_asByte(self, i)

    def asChar(self, i):
        return _saga_api.CSG_Bytes_asChar(self, i)

    def asShort(self, i, bSwapBytes=False):
        return _saga_api.CSG_Bytes_asShort(self, i, bSwapBytes)

    def asWord(self, i, bSwapBytes=False):
        return _saga_api.CSG_Bytes_asWord(self, i, bSwapBytes)

    def asInt(self, i, bSwapBytes=False):
        return _saga_api.CSG_Bytes_asInt(self, i, bSwapBytes)

    def asDWord(self, i, bSwapBytes=False):
        return _saga_api.CSG_Bytes_asDWord(self, i, bSwapBytes)

    def asFloat(self, i, bSwapBytes=False):
        return _saga_api.CSG_Bytes_asFloat(self, i, bSwapBytes)

    def asDouble(self, i, bSwapBytes=False):
        return _saga_api.CSG_Bytes_asDouble(self, i, bSwapBytes)

    def Read_Byte(self):
        return _saga_api.CSG_Bytes_Read_Byte(self)

    def Read_Char(self):
        return _saga_api.CSG_Bytes_Read_Char(self)

    def Read_Short(self, bSwapBytes=False):
        return _saga_api.CSG_Bytes_Read_Short(self, bSwapBytes)

    def Read_Word(self, bSwapBytes=False):
        return _saga_api.CSG_Bytes_Read_Word(self, bSwapBytes)

    def Read_Int(self, bSwapBytes=False):
        return _saga_api.CSG_Bytes_Read_Int(self, bSwapBytes)

    def Read_DWord(self, bSwapBytes=False):
        return _saga_api.CSG_Bytes_Read_DWord(self, bSwapBytes)

    def Read_Float(self, bSwapBytes=False):
        return _saga_api.CSG_Bytes_Read_Float(self, bSwapBytes)

    def Read_Double(self, bSwapBytes=False):
        return _saga_api.CSG_Bytes_Read_Double(self, bSwapBytes)

    def toHexString(self):
        return _saga_api.CSG_Bytes_toHexString(self)

    def fromHexString(self, HexString):
        return _saga_api.CSG_Bytes_fromHexString(self, HexString)

# Register CSG_Bytes in _saga_api:
_saga_api.CSG_Bytes_swigregister(CSG_Bytes)
class CSG_Bytes_Array(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Bytes_Array_swiginit(self, _saga_api.new_CSG_Bytes_Array())
    __swig_destroy__ = _saga_api.delete_CSG_Bytes_Array

    def Destroy(self):
        return _saga_api.CSG_Bytes_Array_Destroy(self)

    def Get_Count(self):
        return _saga_api.CSG_Bytes_Array_Get_Count(self)

    def Get_Bytes(self, i):
        return _saga_api.CSG_Bytes_Array_Get_Bytes(self, i)

    def Add(self):
        return _saga_api.CSG_Bytes_Array_Add(self)

# Register CSG_Bytes_Array in _saga_api:
_saga_api.CSG_Bytes_Array_swigregister(CSG_Bytes_Array)
class CSG_Stack(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, RecordSize):
        _saga_api.CSG_Stack_swiginit(self, _saga_api.new_CSG_Stack(RecordSize))
    __swig_destroy__ = _saga_api.delete_CSG_Stack

    def Destroy(self):
        return _saga_api.CSG_Stack_Destroy(self)

    def Get_RecordSize(self):
        return _saga_api.CSG_Stack_Get_RecordSize(self)

    def Get_Size(self):
        return _saga_api.CSG_Stack_Get_Size(self)

    def Clear(self, bFreeMemory=False):
        return _saga_api.CSG_Stack_Clear(self, bFreeMemory)

# Register CSG_Stack in _saga_api:
_saga_api.CSG_Stack_swigregister(CSG_Stack)
SG_DATATYPE_Bit = _saga_api.SG_DATATYPE_Bit
SG_DATATYPE_Byte = _saga_api.SG_DATATYPE_Byte
SG_DATATYPE_Char = _saga_api.SG_DATATYPE_Char
SG_DATATYPE_Word = _saga_api.SG_DATATYPE_Word
SG_DATATYPE_Short = _saga_api.SG_DATATYPE_Short
SG_DATATYPE_DWord = _saga_api.SG_DATATYPE_DWord
SG_DATATYPE_Int = _saga_api.SG_DATATYPE_Int
SG_DATATYPE_ULong = _saga_api.SG_DATATYPE_ULong
SG_DATATYPE_Long = _saga_api.SG_DATATYPE_Long
SG_DATATYPE_Float = _saga_api.SG_DATATYPE_Float
SG_DATATYPE_Double = _saga_api.SG_DATATYPE_Double
SG_DATATYPE_String = _saga_api.SG_DATATYPE_String
SG_DATATYPE_Date = _saga_api.SG_DATATYPE_Date
SG_DATATYPE_Color = _saga_api.SG_DATATYPE_Color
SG_DATATYPE_Binary = _saga_api.SG_DATATYPE_Binary
SG_DATATYPE_Undefined = _saga_api.SG_DATATYPE_Undefined
SG_DATATYPES_Undefined = _saga_api.SG_DATATYPES_Undefined
SG_DATATYPES_Bit = _saga_api.SG_DATATYPES_Bit
SG_DATATYPES_Byte = _saga_api.SG_DATATYPES_Byte
SG_DATATYPES_Char = _saga_api.SG_DATATYPES_Char
SG_DATATYPES_Word = _saga_api.SG_DATATYPES_Word
SG_DATATYPES_Short = _saga_api.SG_DATATYPES_Short
SG_DATATYPES_DWord = _saga_api.SG_DATATYPES_DWord
SG_DATATYPES_Int = _saga_api.SG_DATATYPES_Int
SG_DATATYPES_ULong = _saga_api.SG_DATATYPES_ULong
SG_DATATYPES_Long = _saga_api.SG_DATATYPES_Long
SG_DATATYPES_Float = _saga_api.SG_DATATYPES_Float
SG_DATATYPES_Double = _saga_api.SG_DATATYPES_Double
SG_DATATYPES_String = _saga_api.SG_DATATYPES_String
SG_DATATYPES_Date = _saga_api.SG_DATATYPES_Date
SG_DATATYPES_Color = _saga_api.SG_DATATYPES_Color
SG_DATATYPES_Binary = _saga_api.SG_DATATYPES_Binary
SG_DATATYPES_Standard = _saga_api.SG_DATATYPES_Standard
SG_DATATYPES_SInteger = _saga_api.SG_DATATYPES_SInteger
SG_DATATYPES_UInteger = _saga_api.SG_DATATYPES_UInteger
SG_DATATYPES_Integer = _saga_api.SG_DATATYPES_Integer
SG_DATATYPES_Real = _saga_api.SG_DATATYPES_Real
SG_DATATYPES_Numeric = _saga_api.SG_DATATYPES_Numeric
SG_DATATYPES_Table = _saga_api.SG_DATATYPES_Table

def SG_Data_Type_Get_Size(Type):
    return _saga_api.SG_Data_Type_Get_Size(Type)

def SG_Data_Type_Get_Name(Type, bShort=False):
    return _saga_api.SG_Data_Type_Get_Name(Type, bShort)

def SG_Data_Type_Get_Identifier(Type):
    return _saga_api.SG_Data_Type_Get_Identifier(Type)

def SG_Data_Type_Get_Type(Identifier):
    return _saga_api.SG_Data_Type_Get_Type(Identifier)

def SG_Data_Type_Get_Flag(Type):
    return _saga_api.SG_Data_Type_Get_Flag(Type)

def SG_Data_Type_is_Numeric(Type):
    return _saga_api.SG_Data_Type_is_Numeric(Type)

def SG_Data_Type_Range_Check(Type, Value):
    return _saga_api.SG_Data_Type_Range_Check(Type, Value)
SG_FILE_TYPE_NORMAL = _saga_api.SG_FILE_TYPE_NORMAL
SG_FILE_TYPE_ZIP = _saga_api.SG_FILE_TYPE_ZIP
SG_FILE_TYPE_TAR = _saga_api.SG_FILE_TYPE_TAR
SG_FILE_R = _saga_api.SG_FILE_R
SG_FILE_W = _saga_api.SG_FILE_W
SG_FILE_RW = _saga_api.SG_FILE_RW
SG_FILE_START = _saga_api.SG_FILE_START
SG_FILE_CURRENT = _saga_api.SG_FILE_CURRENT
SG_FILE_END = _saga_api.SG_FILE_END
class CSG_File(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_File

    def __init__(self, *args):
        _saga_api.CSG_File_swiginit(self, _saga_api.new_CSG_File(*args))

    def Open(self, FileName, Mode=SG_FILE_R, bBinary=True, Encoding=SG_FILE_ENCODING_ANSI):
        return _saga_api.CSG_File_Open(self, FileName, Mode, bBinary, Encoding)

    def Close(self):
        return _saga_api.CSG_File_Close(self)

    def Get_File_Name(self, *args):
        return _saga_api.CSG_File_Get_File_Name(self, *args)

    def Get_File_Type(self):
        return _saga_api.CSG_File_Get_File_Type(self)

    def Get_Stream(self):
        return _saga_api.CSG_File_Get_Stream(self)

    def Set_Encoding(self, Encoding):
        return _saga_api.CSG_File_Set_Encoding(self, Encoding)

    def Get_Encoding(self):
        return _saga_api.CSG_File_Get_Encoding(self)

    def is_Open(self):
        return _saga_api.CSG_File_is_Open(self)

    def is_Reading(self):
        return _saga_api.CSG_File_is_Reading(self)

    def is_Writing(self):
        return _saga_api.CSG_File_is_Writing(self)

    def is_EOF(self):
        return _saga_api.CSG_File_is_EOF(self)

    def Length(self):
        return _saga_api.CSG_File_Length(self)

    def Seek(self, Offset, Origin=SG_FILE_START):
        return _saga_api.CSG_File_Seek(self, Offset, Origin)

    def Seek_Start(self):
        return _saga_api.CSG_File_Seek_Start(self)

    def Seek_End(self):
        return _saga_api.CSG_File_Seek_End(self)

    def Tell(self):
        return _saga_api.CSG_File_Tell(self)

    def Flush(self):
        return _saga_api.CSG_File_Flush(self)

    def Printf(self, *args):
        return _saga_api.CSG_File_Printf(self, *args)

    def Read(self, *args):
        return _saga_api.CSG_File_Read(self, *args)

    def Write(self, *args):
        return _saga_api.CSG_File_Write(self, *args)

    def Read_Line(self, Line):
        return _saga_api.CSG_File_Read_Line(self, Line)

    def Read_Char(self):
        return _saga_api.CSG_File_Read_Char(self)

    def Read_Int(self, bBigEndian=False):
        return _saga_api.CSG_File_Read_Int(self, bBigEndian)

    def Write_Int(self, Value, bBigEndian=False):
        return _saga_api.CSG_File_Write_Int(self, Value, bBigEndian)

    def Read_Double(self, bBigEndian=False):
        return _saga_api.CSG_File_Read_Double(self, bBigEndian)

    def Write_Double(self, Value, bBigEndian=False):
        return _saga_api.CSG_File_Write_Double(self, Value, bBigEndian)

    def Scan(self, *args):
        return _saga_api.CSG_File_Scan(self, *args)

    def Scan_Int(self):
        return _saga_api.CSG_File_Scan_Int(self)

    def Scan_Double(self):
        return _saga_api.CSG_File_Scan_Double(self)

    def Scan_String(self, Separator):
        return _saga_api.CSG_File_Scan_String(self, Separator)

# Register CSG_File in _saga_api:
_saga_api.CSG_File_swigregister(CSG_File)
cvar = _saga_api.cvar
gSG_Data_Type_Identifier = cvar.gSG_Data_Type_Identifier

class CSG_Archive(CSG_File):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Archive

    def __init__(self, *args):
        _saga_api.CSG_Archive_swiginit(self, _saga_api.new_CSG_Archive(*args))

    def Open(self, *args):
        return _saga_api.CSG_Archive_Open(self, *args)

    def Close(self):
        return _saga_api.CSG_Archive_Close(self)

    def Get_Archive(self):
        return _saga_api.CSG_Archive_Get_Archive(self)

    def Get_File_Type(self):
        return _saga_api.CSG_Archive_Get_File_Type(self)

    def is_Zip(self):
        return _saga_api.CSG_Archive_is_Zip(self)

    def is_Tar(self):
        return _saga_api.CSG_Archive_is_Tar(self)

    def Add_Directory(self, Name):
        return _saga_api.CSG_Archive_Add_Directory(self, Name)

    def Add_File(self, Name, bBinary=True):
        return _saga_api.CSG_Archive_Add_File(self, Name, bBinary)

    def Get_File_Count(self):
        return _saga_api.CSG_Archive_Get_File_Count(self)

    def Get_File(self, *args):
        return _saga_api.CSG_Archive_Get_File(self, *args)

    def Get_File_Name(self, Index):
        return _saga_api.CSG_Archive_Get_File_Name(self, Index)

    def is_Directory(self, Index):
        return _saga_api.CSG_Archive_is_Directory(self, Index)

    def Extract_All(self, toDirectory=None):
        return _saga_api.CSG_Archive_Extract_All(self, toDirectory)

    def Extract(self, File, toFile=None):
        return _saga_api.CSG_Archive_Extract(self, File, toFile)

# Register CSG_Archive in _saga_api:
_saga_api.CSG_Archive_swigregister(CSG_Archive)
class CSG_ZLib(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_ZLib_swiginit(self, _saga_api.new_CSG_ZLib())

    @staticmethod
    def is_GZip_Supported():
        return _saga_api.CSG_ZLib_is_GZip_Supported()

    @staticmethod
    def Compress(*args):
        return _saga_api.CSG_ZLib_Compress(*args)

    @staticmethod
    def Uncompress(*args):
        return _saga_api.CSG_ZLib_Uncompress(*args)
    __swig_destroy__ = _saga_api.delete_CSG_ZLib

# Register CSG_ZLib in _saga_api:
_saga_api.CSG_ZLib_swigregister(CSG_ZLib)

def SG_Dir_Exists(Directory):
    return _saga_api.SG_Dir_Exists(Directory)

def SG_Dir_Create(Directory, bFullPath=False):
    return _saga_api.SG_Dir_Create(Directory, bFullPath)

def SG_Dir_Delete(Directory, bRecursive=False):
    return _saga_api.SG_Dir_Delete(Directory, bRecursive)

def SG_Dir_Get_Current():
    return _saga_api.SG_Dir_Get_Current()

def SG_Dir_Get_Temp():
    return _saga_api.SG_Dir_Get_Temp()

def SG_Dir_List_Subdirectories(List, Directory, bRecursive=False):
    return _saga_api.SG_Dir_List_Subdirectories(List, Directory, bRecursive)

def SG_Dir_List_Files(*args):
    return _saga_api.SG_Dir_List_Files(*args)

def SG_File_Exists(FileName):
    return _saga_api.SG_File_Exists(FileName)

def SG_File_Delete(FileName):
    return _saga_api.SG_File_Delete(FileName)

def SG_File_Get_Name_Temp(*args):
    return _saga_api.SG_File_Get_Name_Temp(*args)

def SG_File_Get_Name(full_Path, bExtension):
    return _saga_api.SG_File_Get_Name(full_Path, bExtension)

def SG_File_Get_Path(full_Path):
    return _saga_api.SG_File_Get_Path(full_Path)

def SG_File_Get_Path_Absolute(full_Path):
    return _saga_api.SG_File_Get_Path_Absolute(full_Path)

def SG_File_Get_Path_Relative(Directory, full_Path):
    return _saga_api.SG_File_Get_Path_Relative(Directory, full_Path)

def SG_File_Make_Path(*args):
    return _saga_api.SG_File_Make_Path(*args)

def SG_File_Cmp_Path(Path1, Path2):
    return _saga_api.SG_File_Cmp_Path(Path1, Path2)

def SG_File_Cmp_Extension(File, Extension):
    return _saga_api.SG_File_Cmp_Extension(File, Extension)

def SG_File_Get_Extension(File):
    return _saga_api.SG_File_Get_Extension(File)

def SG_File_Set_Extension(File, Extension):
    return _saga_api.SG_File_Set_Extension(File, Extension)

def SG_Get_Environment(Variable, Value=None):
    return _saga_api.SG_Get_Environment(Variable, Value)

def SG_Set_Environment(Variable, Value):
    return _saga_api.SG_Set_Environment(Variable, Value)
SG_COLOR_NONE = _saga_api.SG_COLOR_NONE
SG_COLOR_RANDOM = _saga_api.SG_COLOR_RANDOM
SG_COLORS_DEFAULT = _saga_api.SG_COLORS_DEFAULT
SG_COLORS_DEFAULT_BRIGHT = _saga_api.SG_COLORS_DEFAULT_BRIGHT
SG_COLORS_RAINBOW = _saga_api.SG_COLORS_RAINBOW
SG_COLORS_RAINBOW_2 = _saga_api.SG_COLORS_RAINBOW_2
SG_COLORS_BLACK_WHITE = _saga_api.SG_COLORS_BLACK_WHITE
SG_COLORS_BLACK_RED = _saga_api.SG_COLORS_BLACK_RED
SG_COLORS_BLACK_GREEN = _saga_api.SG_COLORS_BLACK_GREEN
SG_COLORS_BLACK_BLUE = _saga_api.SG_COLORS_BLACK_BLUE
SG_COLORS_WHITE_RED = _saga_api.SG_COLORS_WHITE_RED
SG_COLORS_WHITE_GREEN = _saga_api.SG_COLORS_WHITE_GREEN
SG_COLORS_WHITE_BLUE = _saga_api.SG_COLORS_WHITE_BLUE
SG_COLORS_CYAN_WHITE = _saga_api.SG_COLORS_CYAN_WHITE
SG_COLORS_MAGENTA_WHITE = _saga_api.SG_COLORS_MAGENTA_WHITE
SG_COLORS_YELLOW_WHITE = _saga_api.SG_COLORS_YELLOW_WHITE
SG_COLORS_YELLOW_RED = _saga_api.SG_COLORS_YELLOW_RED
SG_COLORS_YELLOW_GREEN = _saga_api.SG_COLORS_YELLOW_GREEN
SG_COLORS_YELLOW_BLUE = _saga_api.SG_COLORS_YELLOW_BLUE
SG_COLORS_BLUE_RED = _saga_api.SG_COLORS_BLUE_RED
SG_COLORS_GREEN_RED = _saga_api.SG_COLORS_GREEN_RED
SG_COLORS_GREEN_BLUE = _saga_api.SG_COLORS_GREEN_BLUE
SG_COLORS_BLUE_WHITE_RED = _saga_api.SG_COLORS_BLUE_WHITE_RED
SG_COLORS_GREEN_WHITE_RED = _saga_api.SG_COLORS_GREEN_WHITE_RED
SG_COLORS_GREEN_WHITE_BLUE = _saga_api.SG_COLORS_GREEN_WHITE_BLUE
SG_COLORS_BLUE_GREY_RED = _saga_api.SG_COLORS_BLUE_GREY_RED
SG_COLORS_RED_GREY_BLUE = _saga_api.SG_COLORS_RED_GREY_BLUE
SG_COLORS_GREEN_GREY_RED = _saga_api.SG_COLORS_GREEN_GREY_RED
SG_COLORS_RED_GREY_GREEN = _saga_api.SG_COLORS_RED_GREY_GREEN
SG_COLORS_GREEN_GREY_BLUE = _saga_api.SG_COLORS_GREEN_GREY_BLUE
SG_COLORS_BLUE_YELLOW_RED = _saga_api.SG_COLORS_BLUE_YELLOW_RED
SG_COLORS_GREEN_YELLOW_RED = _saga_api.SG_COLORS_GREEN_YELLOW_RED
SG_COLORS_RED_YELLOW_GREEN = _saga_api.SG_COLORS_RED_YELLOW_GREEN
SG_COLORS_GREEN_YELLOW_BLUE = _saga_api.SG_COLORS_GREEN_YELLOW_BLUE
SG_COLORS_RED_GREEN_BLUE = _saga_api.SG_COLORS_RED_GREEN_BLUE
SG_COLORS_RED_BLUE_GREEN = _saga_api.SG_COLORS_RED_BLUE_GREEN
SG_COLORS_GREEN_RED_BLUE = _saga_api.SG_COLORS_GREEN_RED_BLUE
SG_COLORS_NEON = _saga_api.SG_COLORS_NEON
SG_COLORS_TOPOGRAPHY = _saga_api.SG_COLORS_TOPOGRAPHY
SG_COLORS_TOPOGRAPHY_2 = _saga_api.SG_COLORS_TOPOGRAPHY_2
SG_COLORS_TOPOGRAPHY_3 = _saga_api.SG_COLORS_TOPOGRAPHY_3
SG_COLORS_TOPOGRAPHY_4 = _saga_api.SG_COLORS_TOPOGRAPHY_4
SG_COLORS_ASPECT_1 = _saga_api.SG_COLORS_ASPECT_1
SG_COLORS_ASPECT_2 = _saga_api.SG_COLORS_ASPECT_2
SG_COLORS_ASPECT_3 = _saga_api.SG_COLORS_ASPECT_3
SG_COLORS_THERMAL_1 = _saga_api.SG_COLORS_THERMAL_1
SG_COLORS_THERMAL_2 = _saga_api.SG_COLORS_THERMAL_2
SG_COLORS_PRECIPITATION_1 = _saga_api.SG_COLORS_PRECIPITATION_1
SG_COLORS_PRECIPITATION_2 = _saga_api.SG_COLORS_PRECIPITATION_2
SG_COLORS_PRECIPITATION_3 = _saga_api.SG_COLORS_PRECIPITATION_3
SG_COLORS_PRECIPITATION_4 = _saga_api.SG_COLORS_PRECIPITATION_4
SG_COLORS_PRECIPITATION_5 = _saga_api.SG_COLORS_PRECIPITATION_5
SG_COLORS_VEGETATION = _saga_api.SG_COLORS_VEGETATION
SG_COLORS_SPECTRUM_1 = _saga_api.SG_COLORS_SPECTRUM_1
SG_COLORS_SPECTRUM_2 = _saga_api.SG_COLORS_SPECTRUM_2
SG_COLORS_SPECTRUM_3 = _saga_api.SG_COLORS_SPECTRUM_3
SG_COLORS_COUNT = _saga_api.SG_COLORS_COUNT

def SG_Colors_Get_Name(Index):
    return _saga_api.SG_Colors_Get_Name(Index)

def SG_Color_Get_Random():
    return _saga_api.SG_Color_Get_Random()

def SG_Color_From_RGB(Red, Green, Blue, Alpha=0):
    return _saga_api.SG_Color_From_RGB(Red, Green, Blue, Alpha)

def SG_Color_From_Text(Text, Color):
    return _saga_api.SG_Color_From_Text(Text, Color)

def SG_Color_To_Text(Color, bHexadecimal=True):
    return _saga_api.SG_Color_To_Text(Color, bHexadecimal)
class CSG_Colors(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Colors_swiginit(self, _saga_api.new_CSG_Colors(*args))

    def Create(self, *args):
        return _saga_api.CSG_Colors_Create(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_Colors

    def Destroy(self):
        return _saga_api.CSG_Colors_Destroy(self)

    def Set_Count(self, nColors):
        return _saga_api.CSG_Colors_Set_Count(self, nColors)

    def Get_Count(self):
        return _saga_api.CSG_Colors_Get_Count(self)

    def Set_Color(self, *args):
        return _saga_api.CSG_Colors_Set_Color(self, *args)

    def Set_Red(self, Index, Value):
        return _saga_api.CSG_Colors_Set_Red(self, Index, Value)

    def Set_Green(self, Index, Value):
        return _saga_api.CSG_Colors_Set_Green(self, Index, Value)

    def Set_Blue(self, Index, Value):
        return _saga_api.CSG_Colors_Set_Blue(self, Index, Value)

    def Set_Brightness(self, Index, Value):
        return _saga_api.CSG_Colors_Set_Brightness(self, Index, Value)

    def Get_Color(self, Index):
        return _saga_api.CSG_Colors_Get_Color(self, Index)

    def Get_Red(self, Index):
        return _saga_api.CSG_Colors_Get_Red(self, Index)

    def Get_Green(self, Index):
        return _saga_api.CSG_Colors_Get_Green(self, Index)

    def Get_Blue(self, Index):
        return _saga_api.CSG_Colors_Get_Blue(self, Index)

    def Get_Brightness(self, Index):
        return _saga_api.CSG_Colors_Get_Brightness(self, Index)

    def Get_Interpolated(self, Index):
        return _saga_api.CSG_Colors_Get_Interpolated(self, Index)

    @staticmethod
    def Get_Predefined_Count():
        return _saga_api.CSG_Colors_Get_Predefined_Count()

    @staticmethod
    def Get_Predefined_Name(Index, bWithIndex=True):
        return _saga_api.CSG_Colors_Get_Predefined_Name(Index, bWithIndex)

    def Set_Predefined(self, *args):
        return _saga_api.CSG_Colors_Set_Predefined(self, *args)

    def Set_Palette(self, *args):
        return _saga_api.CSG_Colors_Set_Palette(self, *args)

    def Set_Default(self, nColors=11):
        return _saga_api.CSG_Colors_Set_Default(self, nColors)

    def Set_Ramp(self, *args):
        return _saga_api.CSG_Colors_Set_Ramp(self, *args)

    def Set_Ramp_Brighness(self, *args):
        return _saga_api.CSG_Colors_Set_Ramp_Brighness(self, *args)

    def Random(self):
        return _saga_api.CSG_Colors_Random(self)

    def Invert(self):
        return _saga_api.CSG_Colors_Invert(self)

    def Revert(self):
        return _saga_api.CSG_Colors_Revert(self)

    def Greyscale(self):
        return _saga_api.CSG_Colors_Greyscale(self)

    def Assign(self, *args):
        return _saga_api.CSG_Colors_Assign(self, *args)

    def Load(self, File_Name):
        return _saga_api.CSG_Colors_Load(self, File_Name)

    def Save(self, File_Name, bBinary):
        return _saga_api.CSG_Colors_Save(self, File_Name, bBinary)

    def Serialize(self, Stream, bSave, bBinary):
        return _saga_api.CSG_Colors_Serialize(self, Stream, bSave, bBinary)

    def to_Text(self, String):
        return _saga_api.CSG_Colors_to_Text(self, String)

    def from_Text(self, String):
        return _saga_api.CSG_Colors_from_Text(self, String)

# Register CSG_Colors in _saga_api:
_saga_api.CSG_Colors_swigregister(CSG_Colors)
class CSG_Translator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Translator

    def __init__(self, *args):
        _saga_api.CSG_Translator_swiginit(self, _saga_api.new_CSG_Translator(*args))

    def Create(self, *args):
        return _saga_api.CSG_Translator_Create(self, *args)

    def Destroy(self):
        return _saga_api.CSG_Translator_Destroy(self)

    def is_CaseSensitive(self):
        return _saga_api.CSG_Translator_is_CaseSensitive(self)

    def Get_Count(self):
        return _saga_api.CSG_Translator_Get_Count(self)

    def Get_Text(self, i):
        return _saga_api.CSG_Translator_Get_Text(self, i)

    def Get_Translation(self, *args):
        return _saga_api.CSG_Translator_Get_Translation(self, *args)

# Register CSG_Translator in _saga_api:
_saga_api.CSG_Translator_swigregister(CSG_Translator)

def SG_Get_Translator():
    return _saga_api.SG_Get_Translator()

def SG_Translate(Text):
    return _saga_api.SG_Translate(Text)
SG_UI_MSG_STYLE_NORMAL = _saga_api.SG_UI_MSG_STYLE_NORMAL
SG_UI_MSG_STYLE_BOLD = _saga_api.SG_UI_MSG_STYLE_BOLD
SG_UI_MSG_STYLE_ITALIC = _saga_api.SG_UI_MSG_STYLE_ITALIC
SG_UI_MSG_STYLE_SUCCESS = _saga_api.SG_UI_MSG_STYLE_SUCCESS
SG_UI_MSG_STYLE_FAILURE = _saga_api.SG_UI_MSG_STYLE_FAILURE
SG_UI_MSG_STYLE_BIG = _saga_api.SG_UI_MSG_STYLE_BIG
SG_UI_MSG_STYLE_SMALL = _saga_api.SG_UI_MSG_STYLE_SMALL
SG_UI_MSG_STYLE_01 = _saga_api.SG_UI_MSG_STYLE_01
SG_UI_MSG_STYLE_02 = _saga_api.SG_UI_MSG_STYLE_02
SG_UI_MSG_STYLE_03 = _saga_api.SG_UI_MSG_STYLE_03
SG_UI_DATAOBJECT_UPDATE = _saga_api.SG_UI_DATAOBJECT_UPDATE
SG_UI_DATAOBJECT_SHOW_MAP = _saga_api.SG_UI_DATAOBJECT_SHOW_MAP
SG_UI_DATAOBJECT_SHOW_MAP_ACTIVE = _saga_api.SG_UI_DATAOBJECT_SHOW_MAP_ACTIVE
SG_UI_DATAOBJECT_SHOW_MAP_NEW = _saga_api.SG_UI_DATAOBJECT_SHOW_MAP_NEW
SG_UI_DATAOBJECT_SHOW_MAP_LAST = _saga_api.SG_UI_DATAOBJECT_SHOW_MAP_LAST
SG_UI_MAP_ACTIVE = _saga_api.SG_UI_MAP_ACTIVE
SG_UI_MAP_LAST = _saga_api.SG_UI_MAP_LAST
SG_UI_MAP_ALL = _saga_api.SG_UI_MAP_ALL
SG_UI_WINDOW_ARRANGE_MDI_CASCADE = _saga_api.SG_UI_WINDOW_ARRANGE_MDI_CASCADE
SG_UI_WINDOW_ARRANGE_MDI_TILE_VER = _saga_api.SG_UI_WINDOW_ARRANGE_MDI_TILE_VER
SG_UI_WINDOW_ARRANGE_MDI_TILE_HOR = _saga_api.SG_UI_WINDOW_ARRANGE_MDI_TILE_HOR
SG_UI_WINDOW_ARRANGE_TDI_TILE_VER = _saga_api.SG_UI_WINDOW_ARRANGE_TDI_TILE_VER
SG_UI_WINDOW_ARRANGE_TDI_TILE_HOR = _saga_api.SG_UI_WINDOW_ARRANGE_TDI_TILE_HOR
SG_UI_WINDOW_ARRANGE_TDI_SPLIT_LEFT = _saga_api.SG_UI_WINDOW_ARRANGE_TDI_SPLIT_LEFT
SG_UI_WINDOW_ARRANGE_TDI_SPLIT_RIGHT = _saga_api.SG_UI_WINDOW_ARRANGE_TDI_SPLIT_RIGHT
SG_UI_WINDOW_ARRANGE_TDI_SPLIT_TOP = _saga_api.SG_UI_WINDOW_ARRANGE_TDI_SPLIT_TOP
SG_UI_WINDOW_ARRANGE_TDI_SPLIT_BOTTOM = _saga_api.SG_UI_WINDOW_ARRANGE_TDI_SPLIT_BOTTOM
CALLBACK_PROCESS_GET_OKAY = _saga_api.CALLBACK_PROCESS_GET_OKAY
CALLBACK_PROCESS_SET_OKAY = _saga_api.CALLBACK_PROCESS_SET_OKAY
CALLBACK_PROCESS_SET_BUSY = _saga_api.CALLBACK_PROCESS_SET_BUSY
CALLBACK_PROCESS_SET_PROGRESS = _saga_api.CALLBACK_PROCESS_SET_PROGRESS
CALLBACK_PROCESS_SET_READY = _saga_api.CALLBACK_PROCESS_SET_READY
CALLBACK_PROCESS_SET_TEXT = _saga_api.CALLBACK_PROCESS_SET_TEXT
CALLBACK_STOP_EXECUTION = _saga_api.CALLBACK_STOP_EXECUTION
CALLBACK_DLG_MESSAGE = _saga_api.CALLBACK_DLG_MESSAGE
CALLBACK_DLG_CONTINUE = _saga_api.CALLBACK_DLG_CONTINUE
CALLBACK_DLG_ERROR = _saga_api.CALLBACK_DLG_ERROR
CALLBACK_DLG_INFO = _saga_api.CALLBACK_DLG_INFO
CALLBACK_DLG_PARAMETERS = _saga_api.CALLBACK_DLG_PARAMETERS
CALLBACK_MESSAGE_ADD = _saga_api.CALLBACK_MESSAGE_ADD
CALLBACK_MESSAGE_ADD_ERROR = _saga_api.CALLBACK_MESSAGE_ADD_ERROR
CALLBACK_MESSAGE_ADD_EXECUTION = _saga_api.CALLBACK_MESSAGE_ADD_EXECUTION
CALLBACK_DATAOBJECT_ADD = _saga_api.CALLBACK_DATAOBJECT_ADD
CALLBACK_DATAOBJECT_DEL = _saga_api.CALLBACK_DATAOBJECT_DEL
CALLBACK_DATAOBJECT_UPDATE = _saga_api.CALLBACK_DATAOBJECT_UPDATE
CALLBACK_DATAOBJECT_SHOW = _saga_api.CALLBACK_DATAOBJECT_SHOW
CALLBACK_DATAOBJECT_ASIMAGE = _saga_api.CALLBACK_DATAOBJECT_ASIMAGE
CALLBACK_DATAOBJECT_COLORS_GET = _saga_api.CALLBACK_DATAOBJECT_COLORS_GET
CALLBACK_DATAOBJECT_COLORS_SET = _saga_api.CALLBACK_DATAOBJECT_COLORS_SET
CALLBACK_DATAOBJECT_CLASSIFY = _saga_api.CALLBACK_DATAOBJECT_CLASSIFY
CALLBACK_DATAOBJECT_PARAMS_GET = _saga_api.CALLBACK_DATAOBJECT_PARAMS_GET
CALLBACK_DATAOBJECT_PARAMS_SET = _saga_api.CALLBACK_DATAOBJECT_PARAMS_SET
CALLBACK_SET_MAP_EXTENT = _saga_api.CALLBACK_SET_MAP_EXTENT
CALLBACK_DIAGRAM_SHOW = _saga_api.CALLBACK_DIAGRAM_SHOW
CALLBACK_DATABASE_UPDATE = _saga_api.CALLBACK_DATABASE_UPDATE
CALLBACK_WINDOW_ARRANGE = _saga_api.CALLBACK_WINDOW_ARRANGE
CALLBACK_GET_APP_WINDOW = _saga_api.CALLBACK_GET_APP_WINDOW
CALLBACK_GET_APP_PATH = _saga_api.CALLBACK_GET_APP_PATH
class CSG_UI_Parameter(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_UI_Parameter_swiginit(self, _saga_api.new_CSG_UI_Parameter(*args))
    Boolean = property(_saga_api.CSG_UI_Parameter_Boolean_get, _saga_api.CSG_UI_Parameter_Boolean_set)
    Number = property(_saga_api.CSG_UI_Parameter_Number_get, _saga_api.CSG_UI_Parameter_Number_set)
    Pointer = property(_saga_api.CSG_UI_Parameter_Pointer_get, _saga_api.CSG_UI_Parameter_Pointer_set)
    String = property(_saga_api.CSG_UI_Parameter_String_get, _saga_api.CSG_UI_Parameter_String_set)
    __swig_destroy__ = _saga_api.delete_CSG_UI_Parameter

# Register CSG_UI_Parameter in _saga_api:
_saga_api.CSG_UI_Parameter_swigregister(CSG_UI_Parameter)

def SG_Set_UI_Callback(Function):
    return _saga_api.SG_Set_UI_Callback(Function)

def SG_Get_UI_Callback():
    return _saga_api.SG_Get_UI_Callback()

def SG_UI_Console_Set_UTF8(bOn):
    return _saga_api.SG_UI_Console_Set_UTF8(bOn)

def SG_UI_Console_Get_UTF8():
    return _saga_api.SG_UI_Console_Get_UTF8()

def SG_UI_Console_Print_StdOut(*args):
    return _saga_api.SG_UI_Console_Print_StdOut(*args)

def SG_UI_Console_Print_StdErr(*args):
    return _saga_api.SG_UI_Console_Print_StdErr(*args)

def SG_UI_Progress_Lock(bOn):
    return _saga_api.SG_UI_Progress_Lock(bOn)

def SG_UI_Progress_is_Locked():
    return _saga_api.SG_UI_Progress_is_Locked()

def SG_UI_Progress_Reset():
    return _saga_api.SG_UI_Progress_Reset()

def SG_UI_Process_Get_Okay(bBlink=False):
    return _saga_api.SG_UI_Process_Get_Okay(bBlink)

def SG_UI_Process_Set_Okay(bOkay=True):
    return _saga_api.SG_UI_Process_Set_Okay(bOkay)

def SG_UI_Process_Set_Busy(*args):
    return _saga_api.SG_UI_Process_Set_Busy(*args)

def SG_UI_Process_Set_Progress(*args):
    return _saga_api.SG_UI_Process_Set_Progress(*args)

def SG_UI_Process_Set_Ready():
    return _saga_api.SG_UI_Process_Set_Ready()

def SG_UI_Process_Set_Text(Text):
    return _saga_api.SG_UI_Process_Set_Text(Text)

def SG_UI_Stop_Execution(bDialog):
    return _saga_api.SG_UI_Stop_Execution(bDialog)

def SG_UI_Dlg_Message(Message, Caption):
    return _saga_api.SG_UI_Dlg_Message(Message, Caption)

def SG_UI_Dlg_Continue(Message, Caption):
    return _saga_api.SG_UI_Dlg_Continue(Message, Caption)

def SG_UI_Dlg_Error(Message, Caption):
    return _saga_api.SG_UI_Dlg_Error(Message, Caption)

def SG_UI_Dlg_Info(Message, Caption):
    return _saga_api.SG_UI_Dlg_Info(Message, Caption)

def SG_UI_Dlg_Parameters(pParameters, Caption):
    return _saga_api.SG_UI_Dlg_Parameters(pParameters, Caption)

def SG_UI_Msg_Lock(bOn):
    return _saga_api.SG_UI_Msg_Lock(bOn)

def SG_UI_Msg_is_Locked():
    return _saga_api.SG_UI_Msg_is_Locked()

def SG_UI_Msg_Reset():
    return _saga_api.SG_UI_Msg_Reset()

def SG_UI_Msg_Add(*args):
    return _saga_api.SG_UI_Msg_Add(*args)

def SG_UI_Msg_Add_Execution(*args):
    return _saga_api.SG_UI_Msg_Add_Execution(*args)

def SG_UI_Msg_Add_Error(*args):
    return _saga_api.SG_UI_Msg_Add_Error(*args)

def SG_UI_Msg_Flush():
    return _saga_api.SG_UI_Msg_Flush()

def SG_UI_ProgressAndMsg_Lock(bOn):
    return _saga_api.SG_UI_ProgressAndMsg_Lock(bOn)

def SG_UI_ProgressAndMsg_Reset():
    return _saga_api.SG_UI_ProgressAndMsg_Reset()

def SG_UI_DataObject_Add(pDataObject, Show):
    return _saga_api.SG_UI_DataObject_Add(pDataObject, Show)

def SG_UI_DataObject_Del(pDataObject, bConfirm):
    return _saga_api.SG_UI_DataObject_Del(pDataObject, bConfirm)

def SG_UI_DataObject_Update(pDataObject, Show, pParameters):
    return _saga_api.SG_UI_DataObject_Update(pDataObject, Show, pParameters)

def SG_UI_DataObject_Show(pDataObject, Show):
    return _saga_api.SG_UI_DataObject_Show(pDataObject, Show)

def SG_UI_DataObject_asImage(pDataObject, pGrid):
    return _saga_api.SG_UI_DataObject_asImage(pDataObject, pGrid)

def SG_UI_DataObject_Colors_Get(pDataObject, pColors):
    return _saga_api.SG_UI_DataObject_Colors_Get(pDataObject, pColors)

def SG_UI_DataObject_Colors_Set(pDataObject, pColors):
    return _saga_api.SG_UI_DataObject_Colors_Set(pDataObject, pColors)

def SG_UI_DataObject_Classify(pDataObject, Options):
    return _saga_api.SG_UI_DataObject_Classify(pDataObject, Options)

def SG_UI_DataObject_Params_Get(pDataObject, pParameters):
    return _saga_api.SG_UI_DataObject_Params_Get(pDataObject, pParameters)

def SG_UI_DataObject_Params_Set(pDataObject, pParameters):
    return _saga_api.SG_UI_DataObject_Params_Set(pDataObject, pParameters)

def SG_UI_Set_Map_Extent(xMin, yMin, xMax, yMax, Maps=SG_UI_MAP_ACTIVE):
    return _saga_api.SG_UI_Set_Map_Extent(xMin, yMin, xMax, yMax, Maps)

def SG_UI_Diagram_Show(pTable, pParameters):
    return _saga_api.SG_UI_Diagram_Show(pTable, pParameters)

def SG_UI_ODBC_Update(Server):
    return _saga_api.SG_UI_ODBC_Update(Server)

def SG_UI_Window_Arrange(Arrange):
    return _saga_api.SG_UI_Window_Arrange(Arrange)

def SG_UI_Get_Window_Main():
    return _saga_api.SG_UI_Get_Window_Main()

def SG_UI_Get_Application_Path(bPathOnly=False):
    return _saga_api.SG_UI_Get_Application_Path(bPathOnly)

def SG_UI_Get_Application_Name():
    return _saga_api.SG_UI_Get_Application_Name()

def SG_UI_Set_Application_Name(*args):
    return _saga_api.SG_UI_Set_Application_Name(*args)

def SG_UI_Get_API_Path():
    return _saga_api.SG_UI_Get_API_Path()

def SG_Initialize_Environment(bLibraries=True, bProjections=True, SAGA_Path=None, bInitializeWX=True):
    return _saga_api.SG_Initialize_Environment(bLibraries, bProjections, SAGA_Path, bInitializeWX)

def SG_Uninitialize_Environment():
    return _saga_api.SG_Uninitialize_Environment()
class CSG_MetaData(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_MetaData_swiginit(self, _saga_api.new_CSG_MetaData(*args))

    def Create(self, *args):
        return _saga_api.CSG_MetaData_Create(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_MetaData

    def Destroy(self):
        return _saga_api.CSG_MetaData_Destroy(self)

    def Load(self, *args):
        return _saga_api.CSG_MetaData_Load(self, *args)

    def Save(self, *args):
        return _saga_api.CSG_MetaData_Save(self, *args)

    def Load_HTTP(self, Server, Path, Username=None, Password=None):
        return _saga_api.CSG_MetaData_Load_HTTP(self, Server, Path, Username, Password)

    def from_XML(self, *args):
        return _saga_api.CSG_MetaData_from_XML(self, *args)

    def to_XML(self, XML):
        return _saga_api.CSG_MetaData_to_XML(self, XML)

    def Load_JSON(self, File):
        return _saga_api.CSG_MetaData_Load_JSON(self, File)

    def Save_JSON(self, File):
        return _saga_api.CSG_MetaData_Save_JSON(self, File)

    def from_JSON(self, JSON):
        return _saga_api.CSG_MetaData_from_JSON(self, JSON)

    def to_JSON(self, JSON):
        return _saga_api.CSG_MetaData_to_JSON(self, JSON)

    def Assign(self, MetaData, bAddChildren=True):
        return _saga_api.CSG_MetaData_Assign(self, MetaData, bAddChildren)

    def __iadd__(self, MetaData):
        return _saga_api.CSG_MetaData___iadd__(self, MetaData)

    def Set_Name(self, Name):
        return _saga_api.CSG_MetaData_Set_Name(self, Name)

    def Cmp_Name(self, String, bNoCase=True):
        return _saga_api.CSG_MetaData_Cmp_Name(self, String, bNoCase)

    def Get_Name(self):
        return _saga_api.CSG_MetaData_Get_Name(self)

    def Get_Content(self, *args):
        return _saga_api.CSG_MetaData_Get_Content(self, *args)

    def Set_Content(self, Content):
        return _saga_api.CSG_MetaData_Set_Content(self, Content)

    def Fmt_Content(self, *args):
        return _saga_api.CSG_MetaData_Fmt_Content(self, *args)

    def Cmp_Content(self, String, bNoCase=False):
        return _saga_api.CSG_MetaData_Cmp_Content(self, String, bNoCase)

    def Get_Parent(self):
        return _saga_api.CSG_MetaData_Get_Parent(self)

    def Get_Count(self):
        return _saga_api.CSG_MetaData_Get_Count(self)

    def Get_Children_Count(self):
        return _saga_api.CSG_MetaData_Get_Children_Count(self)

    def Get_Child(self, *args):
        return _saga_api.CSG_MetaData_Get_Child(self, *args)

    def Add_Child(self, *args):
        return _saga_api.CSG_MetaData_Add_Child(self, *args)

    def Ins_Child(self, *args):
        return _saga_api.CSG_MetaData_Ins_Child(self, *args)

    def Mov_Child(self, from_Index, to_Index):
        return _saga_api.CSG_MetaData_Mov_Child(self, from_Index, to_Index)

    def Del_Child(self, *args):
        return _saga_api.CSG_MetaData_Del_Child(self, *args)

    def Add_Children(self, MetaData):
        return _saga_api.CSG_MetaData_Add_Children(self, MetaData)

    def Del_Children(self, Depth=0, Name=None):
        return _saga_api.CSG_MetaData_Del_Children(self, Depth, Name)

    def __call__(self, *args):
        return _saga_api.CSG_MetaData___call__(self, *args)

    def Get_Property_Count(self):
        return _saga_api.CSG_MetaData_Get_Property_Count(self)

    def Get_Property_Name(self, Index):
        return _saga_api.CSG_MetaData_Get_Property_Name(self, Index)

    def Get_Property(self, *args):
        return _saga_api.CSG_MetaData_Get_Property(self, *args)

    def Add_Property(self, *args):
        return _saga_api.CSG_MetaData_Add_Property(self, *args)

    def Set_Property(self, *args):
        return _saga_api.CSG_MetaData_Set_Property(self, *args)

    def Cmp_Property(self, Name, String, bNoCase=False):
        return _saga_api.CSG_MetaData_Cmp_Property(self, Name, String, bNoCase)

    def Del_Property(self, *args):
        return _saga_api.CSG_MetaData_Del_Property(self, *args)

    def asText(self, Flags=0):
        return _saga_api.CSG_MetaData_asText(self, Flags)

    def Get_Table(self, Flags=0):
        return _saga_api.CSG_MetaData_Get_Table(self, Flags)

# Register CSG_MetaData in _saga_api:
_saga_api.CSG_MetaData_swigregister(CSG_MetaData)
class CSG_HTTP(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_HTTP_swiginit(self, _saga_api.new_CSG_HTTP(*args))

    def Create(self, *args):
        return _saga_api.CSG_HTTP_Create(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_HTTP

    def Destroy(self):
        return _saga_api.CSG_HTTP_Destroy(self)

    def is_Connected(self):
        return _saga_api.CSG_HTTP_is_Connected(self)

    def Request(self, *args):
        return _saga_api.CSG_HTTP_Request(self, *args)

# Register CSG_HTTP in _saga_api:
_saga_api.CSG_HTTP_swigregister(CSG_HTTP)

def SG_FTP_Download(Target_Directory, Source, Username=None, Password=None, Port=21, bBinary=True, bVerbose=False):
    return _saga_api.SG_FTP_Download(Target_Directory, Source, Username, Password, Port, bBinary, bVerbose)
INTERSECTION_None = _saga_api.INTERSECTION_None
INTERSECTION_Identical = _saga_api.INTERSECTION_Identical
INTERSECTION_Overlaps = _saga_api.INTERSECTION_Overlaps
INTERSECTION_Contained = _saga_api.INTERSECTION_Contained
INTERSECTION_Contains = _saga_api.INTERSECTION_Contains
TSG_Point_Type_SG_POINT_TYPE_2D = _saga_api.TSG_Point_Type_SG_POINT_TYPE_2D
TSG_Point_Type_SG_POINT_TYPE_3D = _saga_api.TSG_Point_Type_SG_POINT_TYPE_3D
TSG_Point_Type_SG_POINT_TYPE_4D = _saga_api.TSG_Point_Type_SG_POINT_TYPE_4D
TSG_Point_Type_SG_POINT_TYPE_2D_Int = _saga_api.TSG_Point_Type_SG_POINT_TYPE_2D_Int
class TSG_Point(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    x = property(_saga_api.TSG_Point_x_get, _saga_api.TSG_Point_x_set)
    y = property(_saga_api.TSG_Point_y_get, _saga_api.TSG_Point_y_set)

    def __init__(self):
        _saga_api.TSG_Point_swiginit(self, _saga_api.new_TSG_Point())
    __swig_destroy__ = _saga_api.delete_TSG_Point

# Register TSG_Point in _saga_api:
_saga_api.TSG_Point_swigregister(TSG_Point)
class CSG_Point(TSG_Point):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Point_swiginit(self, _saga_api.new_CSG_Point(*args))
    __swig_destroy__ = _saga_api.delete_CSG_Point

    def Get_Type(self):
        return _saga_api.CSG_Point_Get_Type(self)

    def __eq__(self, Point):
        return _saga_api.CSG_Point___eq__(self, Point)

    def __ne__(self, Point):
        return _saga_api.CSG_Point___ne__(self, Point)

    def __add__(self, Point):
        return _saga_api.CSG_Point___add__(self, Point)

    def __sub__(self, Point):
        return _saga_api.CSG_Point___sub__(self, Point)

    def __iadd__(self, Point):
        return _saga_api.CSG_Point___iadd__(self, Point)

    def __isub__(self, Point):
        return _saga_api.CSG_Point___isub__(self, Point)

    def __mul__(self, Value):
        return _saga_api.CSG_Point___mul__(self, Value)

    def __truediv__(self, *args):
        return _saga_api.CSG_Point___truediv__(self, *args)
    __div__ = __truediv__



    def __imul__(self, *args):
        return _saga_api.CSG_Point___imul__(self, *args)

    def __itruediv__(self, *args):
        return _saga_api.CSG_Point___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def Assign(self, *args):
        return _saga_api.CSG_Point_Assign(self, *args)

    def Add(self, Point):
        return _saga_api.CSG_Point_Add(self, Point)

    def Subtract(self, Point):
        return _saga_api.CSG_Point_Subtract(self, Point)

    def Multiply(self, *args):
        return _saga_api.CSG_Point_Multiply(self, *args)

    def Divide(self, Value):
        return _saga_api.CSG_Point_Divide(self, Value)

    def Get_Length(self):
        return _saga_api.CSG_Point_Get_Length(self)

    def Get_Distance(self, Point):
        return _saga_api.CSG_Point_Get_Distance(self, Point)

    def is_Equal(self, *args):
        return _saga_api.CSG_Point_is_Equal(self, *args)

# Register CSG_Point in _saga_api:
_saga_api.CSG_Point_swigregister(CSG_Point)
class CSG_Points(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Points_swiginit(self, _saga_api.new_CSG_Points(*args))

    def Clear(self):
        return _saga_api.CSG_Points_Clear(self)

    def Assign(self, Points):
        return _saga_api.CSG_Points_Assign(self, Points)

    def Add(self, *args):
        return _saga_api.CSG_Points_Add(self, *args)

    def Del(self, Index):
        return _saga_api.CSG_Points_Del(self, Index)

    def Set_Count(self, nPoints):
        return _saga_api.CSG_Points_Set_Count(self, nPoints)

    def Get_Count(self):
        return _saga_api.CSG_Points_Get_Count(self)

    def Get_Points(self):
        return _saga_api.CSG_Points_Get_Points(self)
    __swig_destroy__ = _saga_api.delete_CSG_Points

# Register CSG_Points in _saga_api:
_saga_api.CSG_Points_swigregister(CSG_Points)
class CSG_Lines(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Lines

    def __init__(self, *args):
        _saga_api.CSG_Lines_swiginit(self, _saga_api.new_CSG_Lines(*args))

    def Create(self, *args):
        return _saga_api.CSG_Lines_Create(self, *args)

    def Destroy(self):
        return _saga_api.CSG_Lines_Destroy(self)

    def Clear(self):
        return _saga_api.CSG_Lines_Clear(self)

    def Assign(self, Lines):
        return _saga_api.CSG_Lines_Assign(self, Lines)

    def Add(self, *args):
        return _saga_api.CSG_Lines_Add(self, *args)

    def Del(self, Index):
        return _saga_api.CSG_Lines_Del(self, Index)

    def Set_Count(self, nLines):
        return _saga_api.CSG_Lines_Set_Count(self, nLines)

    def Get_Count(self):
        return _saga_api.CSG_Lines_Get_Count(self)

    def Get_Line(self, *args):
        return _saga_api.CSG_Lines_Get_Line(self, *args)

    def Get_Length(self, *args):
        return _saga_api.CSG_Lines_Get_Length(self, *args)

# Register CSG_Lines in _saga_api:
_saga_api.CSG_Lines_swigregister(CSG_Lines)
class TSG_Point_3D(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    x = property(_saga_api.TSG_Point_3D_x_get, _saga_api.TSG_Point_3D_x_set)
    y = property(_saga_api.TSG_Point_3D_y_get, _saga_api.TSG_Point_3D_y_set)
    z = property(_saga_api.TSG_Point_3D_z_get, _saga_api.TSG_Point_3D_z_set)

    def __init__(self):
        _saga_api.TSG_Point_3D_swiginit(self, _saga_api.new_TSG_Point_3D())
    __swig_destroy__ = _saga_api.delete_TSG_Point_3D

# Register TSG_Point_3D in _saga_api:
_saga_api.TSG_Point_3D_swigregister(TSG_Point_3D)
class CSG_Point_3D(TSG_Point_3D):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Point_3D_swiginit(self, _saga_api.new_CSG_Point_3D(*args))
    __swig_destroy__ = _saga_api.delete_CSG_Point_3D

    def Get_Type(self):
        return _saga_api.CSG_Point_3D_Get_Type(self)

    def __eq__(self, Point):
        return _saga_api.CSG_Point_3D___eq__(self, Point)

    def __ne__(self, Point):
        return _saga_api.CSG_Point_3D___ne__(self, Point)

    def __add__(self, Point):
        return _saga_api.CSG_Point_3D___add__(self, Point)

    def __sub__(self, Point):
        return _saga_api.CSG_Point_3D___sub__(self, Point)

    def __iadd__(self, Point):
        return _saga_api.CSG_Point_3D___iadd__(self, Point)

    def __isub__(self, Point):
        return _saga_api.CSG_Point_3D___isub__(self, Point)

    def __mul__(self, Value):
        return _saga_api.CSG_Point_3D___mul__(self, Value)

    def __truediv__(self, *args):
        return _saga_api.CSG_Point_3D___truediv__(self, *args)
    __div__ = __truediv__



    def __imul__(self, *args):
        return _saga_api.CSG_Point_3D___imul__(self, *args)

    def __itruediv__(self, *args):
        return _saga_api.CSG_Point_3D___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def Assign(self, *args):
        return _saga_api.CSG_Point_3D_Assign(self, *args)

    def Add(self, Point):
        return _saga_api.CSG_Point_3D_Add(self, Point)

    def Subtract(self, Point):
        return _saga_api.CSG_Point_3D_Subtract(self, Point)

    def Multiply(self, *args):
        return _saga_api.CSG_Point_3D_Multiply(self, *args)

    def Divide(self, Value):
        return _saga_api.CSG_Point_3D_Divide(self, Value)

    def Get_Length(self):
        return _saga_api.CSG_Point_3D_Get_Length(self)

    def Get_Distance(self, Point):
        return _saga_api.CSG_Point_3D_Get_Distance(self, Point)

    def is_Equal(self, *args):
        return _saga_api.CSG_Point_3D_is_Equal(self, *args)

# Register CSG_Point_3D in _saga_api:
_saga_api.CSG_Point_3D_swigregister(CSG_Point_3D)
class CSG_Points_3D(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Points_3D_swiginit(self, _saga_api.new_CSG_Points_3D(*args))

    def Clear(self):
        return _saga_api.CSG_Points_3D_Clear(self)

    def Assign(self, Points):
        return _saga_api.CSG_Points_3D_Assign(self, Points)

    def Add(self, *args):
        return _saga_api.CSG_Points_3D_Add(self, *args)

    def Del(self, Index):
        return _saga_api.CSG_Points_3D_Del(self, Index)

    def Set_Count(self, nPoints):
        return _saga_api.CSG_Points_3D_Set_Count(self, nPoints)

    def Get_Count(self):
        return _saga_api.CSG_Points_3D_Get_Count(self)

    def Get_Points(self):
        return _saga_api.CSG_Points_3D_Get_Points(self)
    __swig_destroy__ = _saga_api.delete_CSG_Points_3D

# Register CSG_Points_3D in _saga_api:
_saga_api.CSG_Points_3D_swigregister(CSG_Points_3D)
class TSG_Point_4D(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    x = property(_saga_api.TSG_Point_4D_x_get, _saga_api.TSG_Point_4D_x_set)
    y = property(_saga_api.TSG_Point_4D_y_get, _saga_api.TSG_Point_4D_y_set)
    z = property(_saga_api.TSG_Point_4D_z_get, _saga_api.TSG_Point_4D_z_set)
    m = property(_saga_api.TSG_Point_4D_m_get, _saga_api.TSG_Point_4D_m_set)

    def __init__(self):
        _saga_api.TSG_Point_4D_swiginit(self, _saga_api.new_TSG_Point_4D())
    __swig_destroy__ = _saga_api.delete_TSG_Point_4D

# Register TSG_Point_4D in _saga_api:
_saga_api.TSG_Point_4D_swigregister(TSG_Point_4D)
class CSG_Point_4D(TSG_Point_4D):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Point_4D_swiginit(self, _saga_api.new_CSG_Point_4D(*args))
    __swig_destroy__ = _saga_api.delete_CSG_Point_4D

    def Get_Type(self):
        return _saga_api.CSG_Point_4D_Get_Type(self)

    def __eq__(self, Point):
        return _saga_api.CSG_Point_4D___eq__(self, Point)

    def __ne__(self, Point):
        return _saga_api.CSG_Point_4D___ne__(self, Point)

    def __add__(self, Point):
        return _saga_api.CSG_Point_4D___add__(self, Point)

    def __sub__(self, Point):
        return _saga_api.CSG_Point_4D___sub__(self, Point)

    def __mul__(self, Value):
        return _saga_api.CSG_Point_4D___mul__(self, Value)

    def __truediv__(self, *args):
        return _saga_api.CSG_Point_4D___truediv__(self, *args)
    __div__ = __truediv__



    def __itruediv__(self, *args):
        return _saga_api.CSG_Point_4D___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def __iadd__(self, Point):
        return _saga_api.CSG_Point_4D___iadd__(self, Point)

    def __isub__(self, Point):
        return _saga_api.CSG_Point_4D___isub__(self, Point)

    def __imul__(self, *args):
        return _saga_api.CSG_Point_4D___imul__(self, *args)

    def Assign(self, *args):
        return _saga_api.CSG_Point_4D_Assign(self, *args)

    def Add(self, Point):
        return _saga_api.CSG_Point_4D_Add(self, Point)

    def Subtract(self, Point):
        return _saga_api.CSG_Point_4D_Subtract(self, Point)

    def Multiply(self, *args):
        return _saga_api.CSG_Point_4D_Multiply(self, *args)

    def Divide(self, Value):
        return _saga_api.CSG_Point_4D_Divide(self, Value)

    def Get_Length(self):
        return _saga_api.CSG_Point_4D_Get_Length(self)

    def Get_Distance(self, Point):
        return _saga_api.CSG_Point_4D_Get_Distance(self, Point)

    def is_Equal(self, *args):
        return _saga_api.CSG_Point_4D_is_Equal(self, *args)

# Register CSG_Point_4D in _saga_api:
_saga_api.CSG_Point_4D_swigregister(CSG_Point_4D)
class TSG_Point_Int(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    x = property(_saga_api.TSG_Point_Int_x_get, _saga_api.TSG_Point_Int_x_set)
    y = property(_saga_api.TSG_Point_Int_y_get, _saga_api.TSG_Point_Int_y_set)

    def __init__(self):
        _saga_api.TSG_Point_Int_swiginit(self, _saga_api.new_TSG_Point_Int())
    __swig_destroy__ = _saga_api.delete_TSG_Point_Int

# Register TSG_Point_Int in _saga_api:
_saga_api.TSG_Point_Int_swigregister(TSG_Point_Int)
class CSG_Points_Int(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Points_Int_swiginit(self, _saga_api.new_CSG_Points_Int(*args))

    def Clear(self):
        return _saga_api.CSG_Points_Int_Clear(self)

    def Assign(self, Points):
        return _saga_api.CSG_Points_Int_Assign(self, Points)

    def Add(self, *args):
        return _saga_api.CSG_Points_Int_Add(self, *args)

    def Del(self, Index):
        return _saga_api.CSG_Points_Int_Del(self, Index)

    def Set_Count(self, nPoints):
        return _saga_api.CSG_Points_Int_Set_Count(self, nPoints)

    def Get_Count(self):
        return _saga_api.CSG_Points_Int_Get_Count(self)

    def Get_Points(self):
        return _saga_api.CSG_Points_Int_Get_Points(self)
    __swig_destroy__ = _saga_api.delete_CSG_Points_Int

# Register CSG_Points_Int in _saga_api:
_saga_api.CSG_Points_Int_swigregister(CSG_Points_Int)
class TSG_Rect(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    xMin = property(_saga_api.TSG_Rect_xMin_get, _saga_api.TSG_Rect_xMin_set)
    yMin = property(_saga_api.TSG_Rect_yMin_get, _saga_api.TSG_Rect_yMin_set)
    xMax = property(_saga_api.TSG_Rect_xMax_get, _saga_api.TSG_Rect_xMax_set)
    yMax = property(_saga_api.TSG_Rect_yMax_get, _saga_api.TSG_Rect_yMax_set)

    def __init__(self):
        _saga_api.TSG_Rect_swiginit(self, _saga_api.new_TSG_Rect())
    __swig_destroy__ = _saga_api.delete_TSG_Rect

# Register TSG_Rect in _saga_api:
_saga_api.TSG_Rect_swigregister(TSG_Rect)
class CSG_Rect(TSG_Rect):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Rect_swiginit(self, _saga_api.new_CSG_Rect(*args))
    __swig_destroy__ = _saga_api.delete_CSG_Rect

    def Create(self, *args):
        return _saga_api.CSG_Rect_Create(self, *args)

    def __eq__(self, Rect):
        return _saga_api.CSG_Rect___eq__(self, Rect)

    def __ne__(self, Rect):
        return _saga_api.CSG_Rect___ne__(self, Rect)

    def __iadd__(self, Point):
        return _saga_api.CSG_Rect___iadd__(self, Point)

    def __isub__(self, Point):
        return _saga_api.CSG_Rect___isub__(self, Point)

    def Assign(self, *args):
        return _saga_api.CSG_Rect_Assign(self, *args)

    def Set_BottomLeft(self, *args):
        return _saga_api.CSG_Rect_Set_BottomLeft(self, *args)

    def Set_TopRight(self, *args):
        return _saga_api.CSG_Rect_Set_TopRight(self, *args)

    def Get_XMin(self):
        return _saga_api.CSG_Rect_Get_XMin(self)

    def Get_XMax(self):
        return _saga_api.CSG_Rect_Get_XMax(self)

    def Get_YMin(self):
        return _saga_api.CSG_Rect_Get_YMin(self)

    def Get_YMax(self):
        return _saga_api.CSG_Rect_Get_YMax(self)

    def Get_XRange(self):
        return _saga_api.CSG_Rect_Get_XRange(self)

    def Get_YRange(self):
        return _saga_api.CSG_Rect_Get_YRange(self)

    def Get_Area(self):
        return _saga_api.CSG_Rect_Get_Area(self)

    def Get_Diameter(self):
        return _saga_api.CSG_Rect_Get_Diameter(self)

    def Get_TopLeft(self):
        return _saga_api.CSG_Rect_Get_TopLeft(self)

    def Get_BottomRight(self):
        return _saga_api.CSG_Rect_Get_BottomRight(self)

    def Get_Center(self):
        return _saga_api.CSG_Rect_Get_Center(self)

    def Get_XCenter(self):
        return _saga_api.CSG_Rect_Get_XCenter(self)

    def Get_YCenter(self):
        return _saga_api.CSG_Rect_Get_YCenter(self)

    def Move(self, *args):
        return _saga_api.CSG_Rect_Move(self, *args)

    def Inflate(self, *args):
        return _saga_api.CSG_Rect_Inflate(self, *args)

    def Deflate(self, *args):
        return _saga_api.CSG_Rect_Deflate(self, *args)

    def Union(self, *args):
        return _saga_api.CSG_Rect_Union(self, *args)

    def Intersect(self, Rect):
        return _saga_api.CSG_Rect_Intersect(self, Rect)

    def is_Equal(self, *args):
        return _saga_api.CSG_Rect_is_Equal(self, *args)

    def Contains(self, *args):
        return _saga_api.CSG_Rect_Contains(self, *args)

    def Intersects(self, Rect):
        return _saga_api.CSG_Rect_Intersects(self, Rect)

# Register CSG_Rect in _saga_api:
_saga_api.CSG_Rect_swigregister(CSG_Rect)
class CSG_Rects(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Rects_swiginit(self, _saga_api.new_CSG_Rects(*args))
    __swig_destroy__ = _saga_api.delete_CSG_Rects

    def Clear(self):
        return _saga_api.CSG_Rects_Clear(self)

    def Assign(self, Rects):
        return _saga_api.CSG_Rects_Assign(self, Rects)

    def Add(self, *args):
        return _saga_api.CSG_Rects_Add(self, *args)

    def Get_Count(self):
        return _saga_api.CSG_Rects_Get_Count(self)

    def Get_Rect(self, Index):
        return _saga_api.CSG_Rects_Get_Rect(self, Index)

# Register CSG_Rects in _saga_api:
_saga_api.CSG_Rects_swigregister(CSG_Rects)
class TSG_Rect_Int(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    xMin = property(_saga_api.TSG_Rect_Int_xMin_get, _saga_api.TSG_Rect_Int_xMin_set)
    yMin = property(_saga_api.TSG_Rect_Int_yMin_get, _saga_api.TSG_Rect_Int_yMin_set)
    xMax = property(_saga_api.TSG_Rect_Int_xMax_get, _saga_api.TSG_Rect_Int_xMax_set)
    yMax = property(_saga_api.TSG_Rect_Int_yMax_get, _saga_api.TSG_Rect_Int_yMax_set)

    def __init__(self):
        _saga_api.TSG_Rect_Int_swiginit(self, _saga_api.new_TSG_Rect_Int())
    __swig_destroy__ = _saga_api.delete_TSG_Rect_Int

# Register TSG_Rect_Int in _saga_api:
_saga_api.TSG_Rect_Int_swigregister(TSG_Rect_Int)
class CSG_Rect_Int(TSG_Rect_Int):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Rect_Int_swiginit(self, _saga_api.new_CSG_Rect_Int(*args))
    __swig_destroy__ = _saga_api.delete_CSG_Rect_Int

    def Create(self, *args):
        return _saga_api.CSG_Rect_Int_Create(self, *args)

    def __eq__(self, Rect):
        return _saga_api.CSG_Rect_Int___eq__(self, Rect)

    def __ne__(self, Rect):
        return _saga_api.CSG_Rect_Int___ne__(self, Rect)

    def __iadd__(self, Point):
        return _saga_api.CSG_Rect_Int___iadd__(self, Point)

    def __isub__(self, Point):
        return _saga_api.CSG_Rect_Int___isub__(self, Point)

    def Assign(self, *args):
        return _saga_api.CSG_Rect_Int_Assign(self, *args)

    def Set_BottomLeft(self, *args):
        return _saga_api.CSG_Rect_Int_Set_BottomLeft(self, *args)

    def Set_TopRight(self, *args):
        return _saga_api.CSG_Rect_Int_Set_TopRight(self, *args)

    def Get_XMin(self):
        return _saga_api.CSG_Rect_Int_Get_XMin(self)

    def Get_XMax(self):
        return _saga_api.CSG_Rect_Int_Get_XMax(self)

    def Get_YMin(self):
        return _saga_api.CSG_Rect_Int_Get_YMin(self)

    def Get_YMax(self):
        return _saga_api.CSG_Rect_Int_Get_YMax(self)

    def Get_XRange(self):
        return _saga_api.CSG_Rect_Int_Get_XRange(self)

    def Get_YRange(self):
        return _saga_api.CSG_Rect_Int_Get_YRange(self)

    def Get_Area(self):
        return _saga_api.CSG_Rect_Int_Get_Area(self)

    def Get_Diameter(self):
        return _saga_api.CSG_Rect_Int_Get_Diameter(self)

    def Get_TopLeft(self):
        return _saga_api.CSG_Rect_Int_Get_TopLeft(self)

    def Get_BottomRight(self):
        return _saga_api.CSG_Rect_Int_Get_BottomRight(self)

    def Move(self, *args):
        return _saga_api.CSG_Rect_Int_Move(self, *args)

    def Inflate(self, *args):
        return _saga_api.CSG_Rect_Int_Inflate(self, *args)

    def Deflate(self, *args):
        return _saga_api.CSG_Rect_Int_Deflate(self, *args)

    def Union(self, *args):
        return _saga_api.CSG_Rect_Int_Union(self, *args)

    def Intersect(self, Rect):
        return _saga_api.CSG_Rect_Int_Intersect(self, Rect)

    def is_Equal(self, *args):
        return _saga_api.CSG_Rect_Int_is_Equal(self, *args)

    def Contains(self, *args):
        return _saga_api.CSG_Rect_Int_Contains(self, *args)

    def Intersects(self, Rect):
        return _saga_api.CSG_Rect_Int_Intersects(self, Rect)

# Register CSG_Rect_Int in _saga_api:
_saga_api.CSG_Rect_Int_swigregister(CSG_Rect_Int)
class CSG_Rects_Int(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Rects_Int_swiginit(self, _saga_api.new_CSG_Rects_Int())
    __swig_destroy__ = _saga_api.delete_CSG_Rects_Int

    def Clear(self):
        return _saga_api.CSG_Rects_Int_Clear(self)

    def Assign(self, Rects):
        return _saga_api.CSG_Rects_Int_Assign(self, Rects)

    def Add(self, *args):
        return _saga_api.CSG_Rects_Int_Add(self, *args)

    def Get_Count(self):
        return _saga_api.CSG_Rects_Int_Get_Count(self)

    def Get_Rect(self, Index):
        return _saga_api.CSG_Rects_Int_Get_Rect(self, Index)

# Register CSG_Rects_Int in _saga_api:
_saga_api.CSG_Rects_Int_swigregister(CSG_Rects_Int)
SG_DISTWGHT_None = _saga_api.SG_DISTWGHT_None
SG_DISTWGHT_IDW = _saga_api.SG_DISTWGHT_IDW
SG_DISTWGHT_EXP = _saga_api.SG_DISTWGHT_EXP
SG_DISTWGHT_GAUSS = _saga_api.SG_DISTWGHT_GAUSS
class CSG_Distance_Weighting(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Distance_Weighting_swiginit(self, _saga_api.new_CSG_Distance_Weighting())
    __swig_destroy__ = _saga_api.delete_CSG_Distance_Weighting

    @staticmethod
    def Enable_Parameters(Parameters):
        return _saga_api.CSG_Distance_Weighting_Enable_Parameters(Parameters)

    def Create_Parameters(self, *args):
        return _saga_api.CSG_Distance_Weighting_Create_Parameters(self, *args)

    @staticmethod
    def Add_Parameters(*args):
        return _saga_api.CSG_Distance_Weighting_Add_Parameters(*args)

    def Set_Parameters(self, Parameters):
        return _saga_api.CSG_Distance_Weighting_Set_Parameters(self, Parameters)

    def Get_Weighting(self):
        return _saga_api.CSG_Distance_Weighting_Get_Weighting(self)

    def Set_Weighting(self, Weighting):
        return _saga_api.CSG_Distance_Weighting_Set_Weighting(self, Weighting)

    def Get_IDW_Power(self):
        return _saga_api.CSG_Distance_Weighting_Get_IDW_Power(self)

    def Set_IDW_Power(self, Value):
        return _saga_api.CSG_Distance_Weighting_Set_IDW_Power(self, Value)

    def Get_IDW_Offset(self):
        return _saga_api.CSG_Distance_Weighting_Get_IDW_Offset(self)

    def Set_IDW_Offset(self, bOn=True):
        return _saga_api.CSG_Distance_Weighting_Set_IDW_Offset(self, bOn)

    def Get_BandWidth(self):
        return _saga_api.CSG_Distance_Weighting_Get_BandWidth(self)

    def Set_BandWidth(self, Value):
        return _saga_api.CSG_Distance_Weighting_Set_BandWidth(self, Value)

    def Get_Weight(self, Distance):
        return _saga_api.CSG_Distance_Weighting_Get_Weight(self, Distance)

# Register CSG_Distance_Weighting in _saga_api:
_saga_api.CSG_Distance_Weighting_swigregister(CSG_Distance_Weighting)
ESG_CRS_Format_WKT1 = _saga_api.ESG_CRS_Format_WKT1
ESG_CRS_Format_WKT2 = _saga_api.ESG_CRS_Format_WKT2
ESG_CRS_Format_PROJ = _saga_api.ESG_CRS_Format_PROJ
ESG_CRS_Format_JSON = _saga_api.ESG_CRS_Format_JSON
ESG_CRS_Format_ESRI = _saga_api.ESG_CRS_Format_ESRI
ESG_CRS_Format_CODE = _saga_api.ESG_CRS_Format_CODE
ESG_CRS_Format_Undefined = _saga_api.ESG_CRS_Format_Undefined
ESG_CRS_Format_WKT = _saga_api.ESG_CRS_Format_WKT
ESG_CRS_Type_Geographic = _saga_api.ESG_CRS_Type_Geographic
ESG_CRS_Type_Geodetic = _saga_api.ESG_CRS_Type_Geodetic
ESG_CRS_Type_Geocentric = _saga_api.ESG_CRS_Type_Geocentric
ESG_CRS_Type_Projection = _saga_api.ESG_CRS_Type_Projection
ESG_CRS_Type_Undefined = _saga_api.ESG_CRS_Type_Undefined
ESG_Projection_Unit_Kilometer = _saga_api.ESG_Projection_Unit_Kilometer
ESG_Projection_Unit_Meter = _saga_api.ESG_Projection_Unit_Meter
ESG_Projection_Unit_Decimeter = _saga_api.ESG_Projection_Unit_Decimeter
ESG_Projection_Unit_Centimeter = _saga_api.ESG_Projection_Unit_Centimeter
ESG_Projection_Unit_Millimeter = _saga_api.ESG_Projection_Unit_Millimeter
ESG_Projection_Unit_Int_Nautical_Mile = _saga_api.ESG_Projection_Unit_Int_Nautical_Mile
ESG_Projection_Unit_Int_Inch = _saga_api.ESG_Projection_Unit_Int_Inch
ESG_Projection_Unit_Int_Foot = _saga_api.ESG_Projection_Unit_Int_Foot
ESG_Projection_Unit_Int_Yard = _saga_api.ESG_Projection_Unit_Int_Yard
ESG_Projection_Unit_Int_Statute_Mile = _saga_api.ESG_Projection_Unit_Int_Statute_Mile
ESG_Projection_Unit_Int_Fathom = _saga_api.ESG_Projection_Unit_Int_Fathom
ESG_Projection_Unit_Int_Chain = _saga_api.ESG_Projection_Unit_Int_Chain
ESG_Projection_Unit_Int_Link = _saga_api.ESG_Projection_Unit_Int_Link
ESG_Projection_Unit_US_Inch = _saga_api.ESG_Projection_Unit_US_Inch
ESG_Projection_Unit_US_Foot = _saga_api.ESG_Projection_Unit_US_Foot
ESG_Projection_Unit_US_Yard = _saga_api.ESG_Projection_Unit_US_Yard
ESG_Projection_Unit_US_Chain = _saga_api.ESG_Projection_Unit_US_Chain
ESG_Projection_Unit_US_Statute_Mile = _saga_api.ESG_Projection_Unit_US_Statute_Mile
ESG_Projection_Unit_Indian_Yard = _saga_api.ESG_Projection_Unit_Indian_Yard
ESG_Projection_Unit_Indian_Foot = _saga_api.ESG_Projection_Unit_Indian_Foot
ESG_Projection_Unit_Indian_Chain = _saga_api.ESG_Projection_Unit_Indian_Chain
ESG_Projection_Unit_Undefined = _saga_api.ESG_Projection_Unit_Undefined
ESG_Projection_Unit_First = _saga_api.ESG_Projection_Unit_First
class CSG_Projection(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Projection

    def Destroy(self):
        return _saga_api.CSG_Projection_Destroy(self)

    def __init__(self, *args):
        _saga_api.CSG_Projection_swiginit(self, _saga_api.new_CSG_Projection(*args))

    def Create(self, *args):
        return _saga_api.CSG_Projection_Create(self, *args)

    def Assign(self, *args):
        return _saga_api.CSG_Projection_Assign(self, *args)

    def is_Okay(self):
        return _saga_api.CSG_Projection_is_Okay(self)

    def is_Equal(self, Projection):
        return _saga_api.CSG_Projection_is_Equal(self, Projection)

    def __eq__(self, Projection):
        return _saga_api.CSG_Projection___eq__(self, Projection)

    def __ne__(self, Projection):
        return _saga_api.CSG_Projection___ne__(self, Projection)

    @staticmethod
    def Get_GCS_WGS84():
        return _saga_api.CSG_Projection_Get_GCS_WGS84()

    def Set_GCS_WGS84(self):
        return _saga_api.CSG_Projection_Set_GCS_WGS84(self)

    @staticmethod
    def Get_UTM_WGS84(Zone, bSouth=False):
        return _saga_api.CSG_Projection_Get_UTM_WGS84(Zone, bSouth)

    def Set_UTM_WGS84(self, Zone, bSouth=False):
        return _saga_api.CSG_Projection_Set_UTM_WGS84(self, Zone, bSouth)

    def Load(self, *args):
        return _saga_api.CSG_Projection_Load(self, *args)

    def Save(self, *args):
        return _saga_api.CSG_Projection_Save(self, *args)

    def Get_Description(self, bDetails=False):
        return _saga_api.CSG_Projection_Get_Description(self, bDetails)

    def Get_Name(self):
        return _saga_api.CSG_Projection_Get_Name(self)

    def Get_WKT(self):
        return _saga_api.CSG_Projection_Get_WKT(self)

    def Get_WKT1(self):
        return _saga_api.CSG_Projection_Get_WKT1(self)

    def Get_WKT2(self):
        return _saga_api.CSG_Projection_Get_WKT2(self)

    def Get_PROJ(self):
        return _saga_api.CSG_Projection_Get_PROJ(self)

    def Get_JSON(self):
        return _saga_api.CSG_Projection_Get_JSON(self)

    def Get_ESRI(self):
        return _saga_api.CSG_Projection_Get_ESRI(self)

    def Get_XML(self):
        return _saga_api.CSG_Projection_Get_XML(self)

    def Get_Authority(self):
        return _saga_api.CSG_Projection_Get_Authority(self)

    def Get_Code(self):
        return _saga_api.CSG_Projection_Get_Code(self)

    def Get_Proj4(self):
        return _saga_api.CSG_Projection_Get_Proj4(self)

    def Get_Authority_ID(self):
        return _saga_api.CSG_Projection_Get_Authority_ID(self)

    def Get_EPSG(self):
        return _saga_api.CSG_Projection_Get_EPSG(self)

    def is_Geographic(self):
        return _saga_api.CSG_Projection_is_Geographic(self)

    def is_Geodetic(self):
        return _saga_api.CSG_Projection_is_Geodetic(self)

    def is_Geocentric(self):
        return _saga_api.CSG_Projection_is_Geocentric(self)

    def is_Projection(self):
        return _saga_api.CSG_Projection_is_Projection(self)

    def Get_Type(self):
        return _saga_api.CSG_Projection_Get_Type(self)

    def Get_Type_Identifier(self):
        return _saga_api.CSG_Projection_Get_Type_Identifier(self)

    def Get_Type_Name(self):
        return _saga_api.CSG_Projection_Get_Type_Name(self)

    def Get_Unit(self):
        return _saga_api.CSG_Projection_Get_Unit(self)

    def Get_Unit_Identifier(self):
        return _saga_api.CSG_Projection_Get_Unit_Identifier(self)

    def Get_Unit_Name(self):
        return _saga_api.CSG_Projection_Get_Unit_Name(self)

    def Get_Unit_To_Meter(self):
        return _saga_api.CSG_Projection_Get_Unit_To_Meter(self)

# Register CSG_Projection in _saga_api:
_saga_api.CSG_Projection_swigregister(CSG_Projection)
class CSG_Projections(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Projections

    def __init__(self, *args):
        _saga_api.CSG_Projections_swiginit(self, _saga_api.new_CSG_Projections(*args))

    def Create(self, LoadCodeList=True):
        return _saga_api.CSG_Projections_Create(self, LoadCodeList)

    def Destroy(self):
        return _saga_api.CSG_Projections_Destroy(self)

    @staticmethod
    def Parse(*args):
        return _saga_api.CSG_Projections_Parse(*args)

    def Load(self, File, bAppend=False):
        return _saga_api.CSG_Projections_Load(self, File, bAppend)

    def Save(self, File):
        return _saga_api.CSG_Projections_Save(self, File)

    def Add(self, *args):
        return _saga_api.CSG_Projections_Add(self, *args)

    def Get_Count(self):
        return _saga_api.CSG_Projections_Get_Count(self)

    def Get_Projection(self, *args):
        return _saga_api.CSG_Projections_Get_Projection(self, *args)

    def Get_Preference(self, *args):
        return _saga_api.CSG_Projections_Get_Preference(self, *args)

    def Get_Names_List(self, *args):
        return _saga_api.CSG_Projections_Get_Names_List(self, *args)

    @staticmethod
    def Get_CRS_Type(Identifier):
        return _saga_api.CSG_Projections_Get_CRS_Type(Identifier)

    @staticmethod
    def Get_CRS_Type_Identifier(Type):
        return _saga_api.CSG_Projections_Get_CRS_Type_Identifier(Type)

    @staticmethod
    def Get_CRS_Type_Name(Type):
        return _saga_api.CSG_Projections_Get_CRS_Type_Name(Type)

    @staticmethod
    def Get_Unit(Identifier):
        return _saga_api.CSG_Projections_Get_Unit(Identifier)

    @staticmethod
    def Get_Unit_Identifier(Unit):
        return _saga_api.CSG_Projections_Get_Unit_Identifier(Unit)

    @staticmethod
    def Get_Unit_Name(Unit, bSimple=True):
        return _saga_api.CSG_Projections_Get_Unit_Name(Unit, bSimple)

    @staticmethod
    def Get_Unit_To_Meter(Unit):
        return _saga_api.CSG_Projections_Get_Unit_To_Meter(Unit)

    @staticmethod
    def Convert_WKT2_to_XML(WKT):
        return _saga_api.CSG_Projections_Convert_WKT2_to_XML(WKT)

    def Set_UseInternalDB(self, bUse=True):
        return _saga_api.CSG_Projections_Set_UseInternalDB(self, bUse)

    def Get_UseInternalDB(self):
        return _saga_api.CSG_Projections_Get_UseInternalDB(self)

# Register CSG_Projections in _saga_api:
_saga_api.CSG_Projections_swigregister(CSG_Projections)

def SG_Get_Projections():
    return _saga_api.SG_Get_Projections()

def SG_Get_Projected(*args):
    return _saga_api.SG_Get_Projected(*args)

def SG_Grid_Get_Geographic_Coordinates(pGrid, pLon, pLat):
    return _saga_api.SG_Grid_Get_Geographic_Coordinates(pGrid, pLon, pLat)

def SG_Is_Equal(*args):
    return _saga_api.SG_Is_Equal(*args)

def SG_Is_Between(*args):
    return _saga_api.SG_Is_Between(*args)

def SG_Get_Length(dx, dy):
    return _saga_api.SG_Get_Length(dx, dy)

def SG_Get_Distance(*args):
    return _saga_api.SG_Get_Distance(*args)

def SG_Get_Distance_Polar(*args):
    return _saga_api.SG_Get_Distance_Polar(*args)

def SG_Get_Angle_Of_Direction(*args):
    return _saga_api.SG_Get_Angle_Of_Direction(*args)

def SG_Get_Angle_Difference(a, b):
    return _saga_api.SG_Get_Angle_Difference(a, b)

def SG_is_Angle_Between(Angle, Angle_Min, Angle_Max, bCheckRange=True):
    return _saga_api.SG_is_Angle_Between(Angle, Angle_Min, Angle_Max, bCheckRange)

def SG_Get_Crossing(Crossing, a1, a2, b1, b2, bExactMatch=True):
    return _saga_api.SG_Get_Crossing(Crossing, a1, a2, b1, b2, bExactMatch)

def SG_Get_Crossing_InRegion(Crossing, a, b, Region):
    return _saga_api.SG_Get_Crossing_InRegion(Crossing, a, b, Region)

def SG_Is_Point_On_Line(Point, Line_A, Line_B, bExactMatch=False, Epsilon=0.):
    return _saga_api.SG_Is_Point_On_Line(Point, Line_A, Line_B, bExactMatch, Epsilon)

def SG_Get_Distance_To_Line(Point, Line_A, Line_B, bExactMatch=True):
    return _saga_api.SG_Get_Distance_To_Line(Point, Line_A, Line_B, bExactMatch)

def SG_Get_Nearest_Point_On_Line(Point, Line_A, Line_B, Line_Point, bExactMatch=True):
    return _saga_api.SG_Get_Nearest_Point_On_Line(Point, Line_A, Line_B, Line_Point, bExactMatch)

def SG_Get_Triangle_CircumCircle(Triangle, Point, Radius):
    return _saga_api.SG_Get_Triangle_CircumCircle(Triangle, Point, Radius)

def SG_Get_Polygon_Area(*args):
    return _saga_api.SG_Get_Polygon_Area(*args)
M_PI = _saga_api.M_PI
M_PI_045 = _saga_api.M_PI_045
M_PI_090 = _saga_api.M_PI_090
M_PI_135 = _saga_api.M_PI_135
M_PI_180 = _saga_api.M_PI_180
M_PI_225 = _saga_api.M_PI_225
M_PI_270 = _saga_api.M_PI_270
M_PI_315 = _saga_api.M_PI_315
M_PI_360 = _saga_api.M_PI_360
M_RAD_TO_DEG = _saga_api.M_RAD_TO_DEG
M_DEG_TO_RAD = _saga_api.M_DEG_TO_RAD
M_EULER = _saga_api.M_EULER
N_MEGABYTE_BYTES = _saga_api.N_MEGABYTE_BYTES
M_FLT_EPSILON = _saga_api.M_FLT_EPSILON
M_DBL_EPSILON = _saga_api.M_DBL_EPSILON
M_ALMOST_ZERO = _saga_api.M_ALMOST_ZERO
M_TINY = _saga_api.M_TINY

def SG_Get_Square(Value):
    return _saga_api.SG_Get_Square(Value)

def SG_Get_Rounded(Value, Decimals=0):
    return _saga_api.SG_Get_Rounded(Value, Decimals)

def SG_Get_Rounded_To_SignificantFigures(Value, Decimals):
    return _saga_api.SG_Get_Rounded_To_SignificantFigures(Value, Decimals)

def SG_Get_Digit_Count(Number):
    return _saga_api.SG_Get_Digit_Count(Number)

def SG_Get_Double_asString(Number, Width=-1, Precision=-1, bScientific=False):
    return _saga_api.SG_Get_Double_asString(Number, Width, Precision, bScientific)

def SG_Compare_Int(a, b):
    return _saga_api.SG_Compare_Int(a, b)

def SG_Compare_Double(a, b):
    return _saga_api.SG_Compare_Double(a, b)

def SG_Compare_Char_Ptr(a, b):
    return _saga_api.SG_Compare_Char_Ptr(a, b)

def SG_Degree_To_Decimal(Deg, Min, Sec):
    return _saga_api.SG_Degree_To_Decimal(Deg, Min, Sec)

def SG_Decimal_To_Degree(Value, Deg, Min, Sec):
    return _saga_api.SG_Decimal_To_Degree(Value, Deg, Min, Sec)
class CSG_Index(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Index

    def __init__(self, *args):
        _saga_api.CSG_Index_swiginit(self, _saga_api.new_CSG_Index(*args))

    def Create(self, *args):
        return _saga_api.CSG_Index_Create(self, *args)

    def Destroy(self):
        return _saga_api.CSG_Index_Destroy(self)

    def Invert(self):
        return _saga_api.CSG_Index_Invert(self)

    def Show_Progress(self, bProgress=True):
        return _saga_api.CSG_Index_Show_Progress(self, bProgress)

    def Add_Entry(self, Position=-1):
        return _saga_api.CSG_Index_Add_Entry(self, Position)

    def Del_Entry(self, Position=-1):
        return _saga_api.CSG_Index_Del_Entry(self, Position)

    def is_Okay(self):
        return _saga_api.CSG_Index_is_Okay(self)

    def Get_Count(self):
        return _saga_api.CSG_Index_Get_Count(self)

    def Get_Index(self, Position, Ascending=True):
        return _saga_api.CSG_Index_Get_Index(self, Position, Ascending)

# Register CSG_Index in _saga_api:
_saga_api.CSG_Index_swigregister(CSG_Index)
class CSG_PriorityQueue(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, maxSize=256):
        _saga_api.CSG_PriorityQueue_swiginit(self, _saga_api.new_CSG_PriorityQueue(maxSize))
    __swig_destroy__ = _saga_api.delete_CSG_PriorityQueue

    def Create(self, maxSize=256):
        return _saga_api.CSG_PriorityQueue_Create(self, maxSize)

    def Destroy(self):
        return _saga_api.CSG_PriorityQueue_Destroy(self)

    def is_Empty(self):
        return _saga_api.CSG_PriorityQueue_is_Empty(self)

    def Get_Size(self):
        return _saga_api.CSG_PriorityQueue_Get_Size(self)

    def Get_Item(self, i):
        return _saga_api.CSG_PriorityQueue_Get_Item(self, i)

    def Add(self, pItem):
        return _saga_api.CSG_PriorityQueue_Add(self, pItem)

    def Peek(self):
        return _saga_api.CSG_PriorityQueue_Peek(self)

    def Poll(self):
        return _saga_api.CSG_PriorityQueue_Poll(self)

    def Minimum(self):
        return _saga_api.CSG_PriorityQueue_Minimum(self)

    def Maximum(self):
        return _saga_api.CSG_PriorityQueue_Maximum(self)

# Register CSG_PriorityQueue in _saga_api:
_saga_api.CSG_PriorityQueue_swigregister(CSG_PriorityQueue)
class CSG_Vector(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Vector

    def __init__(self, *args):
        _saga_api.CSG_Vector_swiginit(self, _saga_api.new_CSG_Vector(*args))

    def Create(self, *args):
        return _saga_api.CSG_Vector_Create(self, *args)

    def Destroy(self):
        return _saga_api.CSG_Vector_Destroy(self)

    def Set_Rows(self, nRows):
        return _saga_api.CSG_Vector_Set_Rows(self, nRows)

    def Add_Rows(self, nRows):
        return _saga_api.CSG_Vector_Add_Rows(self, nRows)

    def Del_Rows(self, nRows):
        return _saga_api.CSG_Vector_Del_Rows(self, nRows)

    def Add_Row(self, Value=0.):
        return _saga_api.CSG_Vector_Add_Row(self, Value)

    def Del_Row(self, Row=-1):
        return _saga_api.CSG_Vector_Del_Row(self, Row)

    def Get_Row_Count(self):
        return _saga_api.CSG_Vector_Get_Row_Count(self)

    def Get_Size(self):
        return _saga_api.CSG_Vector_Get_Size(self)

    def Get_uSize(self):
        return _saga_api.CSG_Vector_Get_uSize(self)

    def Get_N(self):
        return _saga_api.CSG_Vector_Get_N(self)

    def Get_Data(self, *args):
        return _saga_api.CSG_Vector_Get_Data(self, *args)

    def __call__(self, x):
        return _saga_api.CSG_Vector___call__(self, x)

    def to_String(self, Width=-1, Precision=-1, bScientific=False, Separator=None):
        return _saga_api.CSG_Vector_to_String(self, Width, Precision, bScientific, Separator)

    def from_String(self, String):
        return _saga_api.CSG_Vector_from_String(self, String)

    def is_Null(self):
        return _saga_api.CSG_Vector_is_Null(self)

    def is_Equal(self, Vector):
        return _saga_api.CSG_Vector_is_Equal(self, Vector)

    def is_Collinear(self, Vector):
        return _saga_api.CSG_Vector_is_Collinear(self, Vector)

    def Assign(self, *args):
        return _saga_api.CSG_Vector_Assign(self, *args)

    def Add(self, *args):
        return _saga_api.CSG_Vector_Add(self, *args)

    def Subtract(self, Vector):
        return _saga_api.CSG_Vector_Subtract(self, Vector)

    def Multiply_Cross(self, Vector):
        return _saga_api.CSG_Vector_Multiply_Cross(self, Vector)

    def Multiply_Scalar(self, Vector):
        return _saga_api.CSG_Vector_Multiply_Scalar(self, Vector)

    def Multiply(self, *args):
        return _saga_api.CSG_Vector_Multiply(self, *args)

    def __eq__(self, Vector):
        return _saga_api.CSG_Vector___eq__(self, Vector)

    def __ne__(self, Vector):
        return _saga_api.CSG_Vector___ne__(self, Vector)

    def __iadd__(self, *args):
        return _saga_api.CSG_Vector___iadd__(self, *args)

    def __isub__(self, *args):
        return _saga_api.CSG_Vector___isub__(self, *args)

    def __imul__(self, *args):
        return _saga_api.CSG_Vector___imul__(self, *args)

    def __add__(self, *args):
        return _saga_api.CSG_Vector___add__(self, *args)

    def __sub__(self, *args):
        return _saga_api.CSG_Vector___sub__(self, *args)

    def __mul__(self, *args):
        return _saga_api.CSG_Vector___mul__(self, *args)

    def Set_Zero(self):
        return _saga_api.CSG_Vector_Set_Zero(self)

    def Set_Unity(self):
        return _saga_api.CSG_Vector_Set_Unity(self)

    def Flip_Values(self):
        return _saga_api.CSG_Vector_Flip_Values(self)

    def Sort(self, bAscending=True):
        return _saga_api.CSG_Vector_Sort(self, bAscending)

    def Get_Length(self):
        return _saga_api.CSG_Vector_Get_Length(self)

    def Get_Scalar_Product(self, Vector):
        return _saga_api.CSG_Vector_Get_Scalar_Product(self, Vector)

    def Get_Cross_Product(self, Vector):
        return _saga_api.CSG_Vector_Get_Cross_Product(self, Vector)

    def Get_Angle(self, Vector):
        return _saga_api.CSG_Vector_Get_Angle(self, Vector)

    def Get_Unity(self):
        return _saga_api.CSG_Vector_Get_Unity(self)

    def begin(self):
        return _saga_api.CSG_Vector_begin(self)

    def end(self):
        return _saga_api.CSG_Vector_end(self)

    def cbegin(self):
        return _saga_api.CSG_Vector_cbegin(self)

    def cend(self):
        return _saga_api.CSG_Vector_cend(self)

# Register CSG_Vector in _saga_api:
_saga_api.CSG_Vector_swigregister(CSG_Vector)

def SG_VectorR2_Rotate(*args):
    return _saga_api.SG_VectorR2_Rotate(*args)

def SG_VectorR3_Rotate(*args):
    return _saga_api.SG_VectorR3_Rotate(*args)
class CSG_Matrix(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Matrix

    def __init__(self, *args):
        _saga_api.CSG_Matrix_swiginit(self, _saga_api.new_CSG_Matrix(*args))

    def Create(self, *args):
        return _saga_api.CSG_Matrix_Create(self, *args)

    def Destroy(self):
        return _saga_api.CSG_Matrix_Destroy(self)

    def Set_Size(self, nRows, nCols):
        return _saga_api.CSG_Matrix_Set_Size(self, nRows, nCols)

    def Set_Cols(self, nCols):
        return _saga_api.CSG_Matrix_Set_Cols(self, nCols)

    def Set_Rows(self, nRows):
        return _saga_api.CSG_Matrix_Set_Rows(self, nRows)

    def Add_Cols(self, nCols):
        return _saga_api.CSG_Matrix_Add_Cols(self, nCols)

    def Add_Rows(self, nRows):
        return _saga_api.CSG_Matrix_Add_Rows(self, nRows)

    def Del_Cols(self, nCols):
        return _saga_api.CSG_Matrix_Del_Cols(self, nCols)

    def Del_Rows(self, nRows):
        return _saga_api.CSG_Matrix_Del_Rows(self, nRows)

    def Add_Col(self, *args):
        return _saga_api.CSG_Matrix_Add_Col(self, *args)

    def Add_Row(self, *args):
        return _saga_api.CSG_Matrix_Add_Row(self, *args)

    def Ins_Col(self, *args):
        return _saga_api.CSG_Matrix_Ins_Col(self, *args)

    def Ins_Row(self, *args):
        return _saga_api.CSG_Matrix_Ins_Row(self, *args)

    def Set_Col(self, *args):
        return _saga_api.CSG_Matrix_Set_Col(self, *args)

    def Set_Row(self, *args):
        return _saga_api.CSG_Matrix_Set_Row(self, *args)

    def Del_Col(self, Col):
        return _saga_api.CSG_Matrix_Del_Col(self, Col)

    def Del_Row(self, Row):
        return _saga_api.CSG_Matrix_Del_Row(self, Row)

    def Get_Col(self, Col):
        return _saga_api.CSG_Matrix_Get_Col(self, Col)

    def Get_Row(self, Row):
        return _saga_api.CSG_Matrix_Get_Row(self, Row)

    def Get_NX(self):
        return _saga_api.CSG_Matrix_Get_NX(self)

    def Get_NY(self):
        return _saga_api.CSG_Matrix_Get_NY(self)

    def Get_NCols(self):
        return _saga_api.CSG_Matrix_Get_NCols(self)

    def Get_NRows(self):
        return _saga_api.CSG_Matrix_Get_NRows(self)

    def Get_Data(self):
        return _saga_api.CSG_Matrix_Get_Data(self)

    def __call__(self, Row, Col):
        return _saga_api.CSG_Matrix___call__(self, Row, Col)

    def to_String(self, Width=-1, Precision=-1, bScientific=False, Separator=None):
        return _saga_api.CSG_Matrix_to_String(self, Width, Precision, bScientific, Separator)

    def from_String(self, String):
        return _saga_api.CSG_Matrix_from_String(self, String)

    def is_Square(self):
        return _saga_api.CSG_Matrix_is_Square(self)

    def is_Equal(self, Matrix):
        return _saga_api.CSG_Matrix_is_Equal(self, Matrix)

    def Assign(self, *args):
        return _saga_api.CSG_Matrix_Assign(self, *args)

    def Add(self, *args):
        return _saga_api.CSG_Matrix_Add(self, *args)

    def Subtract(self, Matrix):
        return _saga_api.CSG_Matrix_Subtract(self, Matrix)

    def Multiply(self, *args):
        return _saga_api.CSG_Matrix_Multiply(self, *args)

    def __eq__(self, Matrix):
        return _saga_api.CSG_Matrix___eq__(self, Matrix)

    def __iadd__(self, *args):
        return _saga_api.CSG_Matrix___iadd__(self, *args)

    def __isub__(self, *args):
        return _saga_api.CSG_Matrix___isub__(self, *args)

    def __imul__(self, *args):
        return _saga_api.CSG_Matrix___imul__(self, *args)

    def __add__(self, *args):
        return _saga_api.CSG_Matrix___add__(self, *args)

    def __sub__(self, *args):
        return _saga_api.CSG_Matrix___sub__(self, *args)

    def __mul__(self, *args):
        return _saga_api.CSG_Matrix___mul__(self, *args)

    def Set_Zero(self):
        return _saga_api.CSG_Matrix_Set_Zero(self)

    def Set_Identity(self):
        return _saga_api.CSG_Matrix_Set_Identity(self)

    def Set_Transpose(self):
        return _saga_api.CSG_Matrix_Set_Transpose(self)

    def Set_Inverse(self, bSilent=True, nSubSquare=0):
        return _saga_api.CSG_Matrix_Set_Inverse(self, bSilent, nSubSquare)

    def Get_Determinant(self):
        return _saga_api.CSG_Matrix_Get_Determinant(self)

    def Get_Transpose(self):
        return _saga_api.CSG_Matrix_Get_Transpose(self)

    def Get_Inverse(self, bSilent=True, nSubSquare=0):
        return _saga_api.CSG_Matrix_Get_Inverse(self, bSilent, nSubSquare)

# Register CSG_Matrix in _saga_api:
_saga_api.CSG_Matrix_swigregister(CSG_Matrix)

def SG_Matrix_Get_Rotation(*args):
    return _saga_api.SG_Matrix_Get_Rotation(*args)

def SG_Matrix_LU_Decomposition(n, Permutation, Matrix, bSilent=True, nRowChanges=None):
    return _saga_api.SG_Matrix_LU_Decomposition(n, Permutation, Matrix, bSilent, nRowChanges)

def SG_Matrix_LU_Solve(n, Permutation, Matrix, Vector, bSilent=True):
    return _saga_api.SG_Matrix_LU_Solve(n, Permutation, Matrix, Vector, bSilent)

def SG_Matrix_Solve(Matrix, Vector, bSilent=True):
    return _saga_api.SG_Matrix_Solve(Matrix, Vector, bSilent)

def SG_Matrix_Eigen_Reduction(Matrix, Eigen_Vectors, Eigen_Values, bSilent=True):
    return _saga_api.SG_Matrix_Eigen_Reduction(Matrix, Eigen_Vectors, Eigen_Values, bSilent)
class CSG_Grid_Radius(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, maxRadius=0):
        _saga_api.CSG_Grid_Radius_swiginit(self, _saga_api.new_CSG_Grid_Radius(maxRadius))
    __swig_destroy__ = _saga_api.delete_CSG_Grid_Radius

    def Create(self, maxRadius):
        return _saga_api.CSG_Grid_Radius_Create(self, maxRadius)

    def Destroy(self):
        return _saga_api.CSG_Grid_Radius_Destroy(self)

    def Get_Maximum(self):
        return _saga_api.CSG_Grid_Radius_Get_Maximum(self)

    def Get_nPoints(self, *args):
        return _saga_api.CSG_Grid_Radius_Get_nPoints(self, *args)

    def Get_Point(self, *args):
        return _saga_api.CSG_Grid_Radius_Get_Point(self, *args)

# Register CSG_Grid_Radius in _saga_api:
_saga_api.CSG_Grid_Radius_swigregister(CSG_Grid_Radius)
class CSG_Random(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Random_swiginit(self, _saga_api.new_CSG_Random())

    @staticmethod
    def Initialize(*args):
        return _saga_api.CSG_Random_Initialize(*args)

    @staticmethod
    def Get_Uniform(*args):
        return _saga_api.CSG_Random_Get_Uniform(*args)

    @staticmethod
    def Get_Gaussian(mean, stddev):
        return _saga_api.CSG_Random_Get_Gaussian(mean, stddev)
    __swig_destroy__ = _saga_api.delete_CSG_Random

# Register CSG_Random in _saga_api:
_saga_api.CSG_Random_swigregister(CSG_Random)
class CSG_Simple_Statistics(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Simple_Statistics_swiginit(self, _saga_api.new_CSG_Simple_Statistics(*args))

    def Create(self, *args):
        return _saga_api.CSG_Simple_Statistics_Create(self, *args)

    def Invalidate(self):
        return _saga_api.CSG_Simple_Statistics_Invalidate(self)

    def Evaluate(self):
        return _saga_api.CSG_Simple_Statistics_Evaluate(self)

    def is_Evaluated(self):
        return _saga_api.CSG_Simple_Statistics_is_Evaluated(self)

    def Set_Count(self, Count):
        return _saga_api.CSG_Simple_Statistics_Set_Count(self, Count)

    def Get_Count(self):
        return _saga_api.CSG_Simple_Statistics_Get_Count(self)

    def Get_Weights(self):
        return _saga_api.CSG_Simple_Statistics_Get_Weights(self)

    def Get_Minimum(self):
        return _saga_api.CSG_Simple_Statistics_Get_Minimum(self)

    def Get_Maximum(self):
        return _saga_api.CSG_Simple_Statistics_Get_Maximum(self)

    def Get_Range(self):
        return _saga_api.CSG_Simple_Statistics_Get_Range(self)

    def Get_Sum(self):
        return _saga_api.CSG_Simple_Statistics_Get_Sum(self)

    def Get_Sum_Of_Squares(self):
        return _saga_api.CSG_Simple_Statistics_Get_Sum_Of_Squares(self)

    def Get_Mean(self):
        return _saga_api.CSG_Simple_Statistics_Get_Mean(self)

    def Get_Variance(self):
        return _saga_api.CSG_Simple_Statistics_Get_Variance(self)

    def Get_StdDev(self):
        return _saga_api.CSG_Simple_Statistics_Get_StdDev(self)

    def Get_Kurtosis(self):
        return _saga_api.CSG_Simple_Statistics_Get_Kurtosis(self)

    def Get_Skewness(self):
        return _saga_api.CSG_Simple_Statistics_Get_Skewness(self)

    def Get_SkewnessPearson(self):
        return _saga_api.CSG_Simple_Statistics_Get_SkewnessPearson(self)

    def Get_Quantile(self, Quantile):
        return _saga_api.CSG_Simple_Statistics_Get_Quantile(self, Quantile)

    def Get_Percentile(self, Percentile):
        return _saga_api.CSG_Simple_Statistics_Get_Percentile(self, Percentile)

    def Get_Median(self):
        return _saga_api.CSG_Simple_Statistics_Get_Median(self)

    def Get_Gini(self):
        return _saga_api.CSG_Simple_Statistics_Get_Gini(self)

    def Get_IndexOfMinimum(self):
        return _saga_api.CSG_Simple_Statistics_Get_IndexOfMinimum(self)

    def Get_IndexOfMaximum(self):
        return _saga_api.CSG_Simple_Statistics_Get_IndexOfMaximum(self)

    def Get_nValues_Above(self, Threshold, bEquals=False):
        return _saga_api.CSG_Simple_Statistics_Get_nValues_Above(self, Threshold, bEquals)

    def Get_nValues_Below(self, Threshold, bEquals=False):
        return _saga_api.CSG_Simple_Statistics_Get_nValues_Below(self, Threshold, bEquals)

    def Add(self, Statistics):
        return _saga_api.CSG_Simple_Statistics_Add(self, Statistics)

    def Add_Value(self, Value, Weight=1.):
        return _saga_api.CSG_Simple_Statistics_Add_Value(self, Value, Weight)

    def Get_Values(self):
        return _saga_api.CSG_Simple_Statistics_Get_Values(self)

    def Get_Value(self, i):
        return _saga_api.CSG_Simple_Statistics_Get_Value(self, i)

    def __iadd__(self, *args):
        return _saga_api.CSG_Simple_Statistics___iadd__(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_Simple_Statistics

# Register CSG_Simple_Statistics in _saga_api:
_saga_api.CSG_Simple_Statistics_swigregister(CSG_Simple_Statistics)
class CSG_Unique_Value_Statistics(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Unique_Value_Statistics_swiginit(self, _saga_api.new_CSG_Unique_Value_Statistics())
    __swig_destroy__ = _saga_api.delete_CSG_Unique_Value_Statistics

    def Create(self, bWeights=False):
        return _saga_api.CSG_Unique_Value_Statistics_Create(self, bWeights)

    def Get_Count(self, *args):
        return _saga_api.CSG_Unique_Value_Statistics_Get_Count(self, *args)

    def Get_Weight(self, i):
        return _saga_api.CSG_Unique_Value_Statistics_Get_Weight(self, i)

    def Get_Majority(self, *args):
        return _saga_api.CSG_Unique_Value_Statistics_Get_Majority(self, *args)

    def Get_Minority(self, *args):
        return _saga_api.CSG_Unique_Value_Statistics_Get_Minority(self, *args)

# Register CSG_Unique_Value_Statistics in _saga_api:
_saga_api.CSG_Unique_Value_Statistics_swigregister(CSG_Unique_Value_Statistics)
class CSG_Unique_Number_Statistics(CSG_Unique_Value_Statistics):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, bWeights=False):
        _saga_api.CSG_Unique_Number_Statistics_swiginit(self, _saga_api.new_CSG_Unique_Number_Statistics(bWeights))
    __swig_destroy__ = _saga_api.delete_CSG_Unique_Number_Statistics

    def Create(self, bWeights=False):
        return _saga_api.CSG_Unique_Number_Statistics_Create(self, bWeights)

    def __iadd__(self, Value):
        return _saga_api.CSG_Unique_Number_Statistics___iadd__(self, Value)

    def Add_Value(self, Value, Weight=1.):
        return _saga_api.CSG_Unique_Number_Statistics_Add_Value(self, Value, Weight)

    def Get_Value(self, Index):
        return _saga_api.CSG_Unique_Number_Statistics_Get_Value(self, Index)

    def Get_Class_Index(self, Value):
        return _saga_api.CSG_Unique_Number_Statistics_Get_Class_Index(self, Value)

    def Get_Class(self, Index, Value, Count):
        return _saga_api.CSG_Unique_Number_Statistics_Get_Class(self, Index, Value, Count)

    def Get_Majority(self, *args):
        return _saga_api.CSG_Unique_Number_Statistics_Get_Majority(self, *args)

    def Get_Minority(self, *args):
        return _saga_api.CSG_Unique_Number_Statistics_Get_Minority(self, *args)

# Register CSG_Unique_Number_Statistics in _saga_api:
_saga_api.CSG_Unique_Number_Statistics_swigregister(CSG_Unique_Number_Statistics)
class CSG_Unique_String_Statistics(CSG_Unique_Value_Statistics):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, bWeights=False):
        _saga_api.CSG_Unique_String_Statistics_swiginit(self, _saga_api.new_CSG_Unique_String_Statistics(bWeights))
    __swig_destroy__ = _saga_api.delete_CSG_Unique_String_Statistics

    def Create(self, bWeights=False):
        return _saga_api.CSG_Unique_String_Statistics_Create(self, bWeights)

    def __iadd__(self, Value):
        return _saga_api.CSG_Unique_String_Statistics___iadd__(self, Value)

    def Add_Value(self, Value, Weight=1.):
        return _saga_api.CSG_Unique_String_Statistics_Add_Value(self, Value, Weight)

    def Get_Value(self, Index):
        return _saga_api.CSG_Unique_String_Statistics_Get_Value(self, Index)

    def Get_Class_Index(self, Value):
        return _saga_api.CSG_Unique_String_Statistics_Get_Class_Index(self, Value)

    def Get_Class(self, Index, Value, Count):
        return _saga_api.CSG_Unique_String_Statistics_Get_Class(self, Index, Value, Count)

    def Get_Majority(self, *args):
        return _saga_api.CSG_Unique_String_Statistics_Get_Majority(self, *args)

    def Get_Minority(self, *args):
        return _saga_api.CSG_Unique_String_Statistics_Get_Minority(self, *args)

# Register CSG_Unique_String_Statistics in _saga_api:
_saga_api.CSG_Unique_String_Statistics_swigregister(CSG_Unique_String_Statistics)
class CSG_Category_Statistics(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, Type=SG_DATATYPE_String):
        _saga_api.CSG_Category_Statistics_swiginit(self, _saga_api.new_CSG_Category_Statistics(Type))
    __swig_destroy__ = _saga_api.delete_CSG_Category_Statistics

    def Create(self, Type=SG_DATATYPE_String):
        return _saga_api.CSG_Category_Statistics_Create(self, Type)

    def Destroy(self):
        return _saga_api.CSG_Category_Statistics_Destroy(self)

    def Get_Category_Type(self):
        return _saga_api.CSG_Category_Statistics_Get_Category_Type(self)

    def Add_Value(self, *args):
        return _saga_api.CSG_Category_Statistics_Add_Value(self, *args)

    def __iadd__(self, *args):
        return _saga_api.CSG_Category_Statistics___iadd__(self, *args)

    def Sort(self):
        return _saga_api.CSG_Category_Statistics_Sort(self)

    def Get_Count(self, *args):
        return _saga_api.CSG_Category_Statistics_Get_Count(self, *args)

    def asInt(self, iCategory):
        return _saga_api.CSG_Category_Statistics_asInt(self, iCategory)

    def asDouble(self, iCategory):
        return _saga_api.CSG_Category_Statistics_asDouble(self, iCategory)

    def asString(self, iCategory):
        return _saga_api.CSG_Category_Statistics_asString(self, iCategory)

    def Get_Category(self, *args):
        return _saga_api.CSG_Category_Statistics_Get_Category(self, *args)

    def Get_Majority(self, *args):
        return _saga_api.CSG_Category_Statistics_Get_Majority(self, *args)

    def Get_Minority(self, *args):
        return _saga_api.CSG_Category_Statistics_Get_Minority(self, *args)

# Register CSG_Category_Statistics in _saga_api:
_saga_api.CSG_Category_Statistics_swigregister(CSG_Category_Statistics)
class CSG_Histogram(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Histogram

    def Destroy(self):
        return _saga_api.CSG_Histogram_Destroy(self)

    def __init__(self, *args):
        _saga_api.CSG_Histogram_swiginit(self, _saga_api.new_CSG_Histogram(*args))

    def Create(self, *args):
        return _saga_api.CSG_Histogram_Create(self, *args)

    def Add_Value(self, Value):
        return _saga_api.CSG_Histogram_Add_Value(self, Value)

    def Add_Histogram(self, Histogram):
        return _saga_api.CSG_Histogram_Add_Histogram(self, Histogram)

    def Scale_Element_Count(self, Scale):
        return _saga_api.CSG_Histogram_Scale_Element_Count(self, Scale)

    def Update(self):
        return _saga_api.CSG_Histogram_Update(self)

    def is_Okay(self):
        return _saga_api.CSG_Histogram_is_Okay(self)

    def Get_Class_Count(self):
        return _saga_api.CSG_Histogram_Get_Class_Count(self)

    def Get_Element_Count(self):
        return _saga_api.CSG_Histogram_Get_Element_Count(self)

    def Get_Element_Maximum(self):
        return _saga_api.CSG_Histogram_Get_Element_Maximum(self)

    def Get_Elements(self, *args):
        return _saga_api.CSG_Histogram_Get_Elements(self, *args)

    def Get_Cumulative(self, *args):
        return _saga_api.CSG_Histogram_Get_Cumulative(self, *args)

    def Get_Value(self, i):
        return _saga_api.CSG_Histogram_Get_Value(self, i)

    def Get_Break(self, *args):
        return _saga_api.CSG_Histogram_Get_Break(self, *args)

    def Get_Center(self, *args):
        return _saga_api.CSG_Histogram_Get_Center(self, *args)

    def __iadd__(self, Value):
        return _saga_api.CSG_Histogram___iadd__(self, Value)

    def Get_Quantile(self, Quantile):
        return _saga_api.CSG_Histogram_Get_Quantile(self, Quantile)

    def Get_Quantile_Value(self, Value):
        return _saga_api.CSG_Histogram_Get_Quantile_Value(self, Value)

    def Get_Percentile(self, Percentile):
        return _saga_api.CSG_Histogram_Get_Percentile(self, Percentile)

    def Get_Percentile_Value(self, Value):
        return _saga_api.CSG_Histogram_Get_Percentile_Value(self, Value)

    def Get_Statistics(self):
        return _saga_api.CSG_Histogram_Get_Statistics(self)

# Register CSG_Histogram in _saga_api:
_saga_api.CSG_Histogram_swigregister(CSG_Histogram)
class CSG_Natural_Breaks(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Natural_Breaks

    def __init__(self, *args):
        _saga_api.CSG_Natural_Breaks_swiginit(self, _saga_api.new_CSG_Natural_Breaks(*args))

    def Create(self, *args):
        return _saga_api.CSG_Natural_Breaks_Create(self, *args)

    def Get_Count(self):
        return _saga_api.CSG_Natural_Breaks_Get_Count(self)

    def Get_Break(self, i):
        return _saga_api.CSG_Natural_Breaks_Get_Break(self, i)

# Register CSG_Natural_Breaks in _saga_api:
_saga_api.CSG_Natural_Breaks_swigregister(CSG_Natural_Breaks)
SG_CLUSTERANALYSIS_Minimum_Distance = _saga_api.SG_CLUSTERANALYSIS_Minimum_Distance
SG_CLUSTERANALYSIS_Hill_Climbing = _saga_api.SG_CLUSTERANALYSIS_Hill_Climbing
SG_CLUSTERANALYSIS_Combined = _saga_api.SG_CLUSTERANALYSIS_Combined
class CSG_Cluster_Analysis(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Cluster_Analysis_swiginit(self, _saga_api.new_CSG_Cluster_Analysis())
    __swig_destroy__ = _saga_api.delete_CSG_Cluster_Analysis

    def Create(self, nFeatures):
        return _saga_api.CSG_Cluster_Analysis_Create(self, nFeatures)

    def Destroy(self):
        return _saga_api.CSG_Cluster_Analysis_Destroy(self)

    def Add_Element(self):
        return _saga_api.CSG_Cluster_Analysis_Add_Element(self)

    def Set_Feature(self, iElement, iFeature, Value):
        return _saga_api.CSG_Cluster_Analysis_Set_Feature(self, iElement, iFeature, Value)

    def Get_Cluster(self, iElement):
        return _saga_api.CSG_Cluster_Analysis_Get_Cluster(self, iElement)

    def Execute(self, Method, nClusters, nMaxIterations=0, Initialization=0):
        return _saga_api.CSG_Cluster_Analysis_Execute(self, Method, nClusters, nMaxIterations, Initialization)

    def Get_nElements(self):
        return _saga_api.CSG_Cluster_Analysis_Get_nElements(self)

    def Get_nFeatures(self):
        return _saga_api.CSG_Cluster_Analysis_Get_nFeatures(self)

    def Get_nClusters(self):
        return _saga_api.CSG_Cluster_Analysis_Get_nClusters(self)

    def Get_Iteration(self):
        return _saga_api.CSG_Cluster_Analysis_Get_Iteration(self)

    def Get_SP(self):
        return _saga_api.CSG_Cluster_Analysis_Get_SP(self)

    def Get_nMembers(self, iCluster):
        return _saga_api.CSG_Cluster_Analysis_Get_nMembers(self, iCluster)

    def Get_Variance(self, iCluster):
        return _saga_api.CSG_Cluster_Analysis_Get_Variance(self, iCluster)

    def Get_Centroid(self, iCluster, iFeature):
        return _saga_api.CSG_Cluster_Analysis_Get_Centroid(self, iCluster, iFeature)

# Register CSG_Cluster_Analysis in _saga_api:
_saga_api.CSG_Cluster_Analysis_swigregister(CSG_Cluster_Analysis)
SG_CLASSIFY_SUPERVISED_BinaryEncoding = _saga_api.SG_CLASSIFY_SUPERVISED_BinaryEncoding
SG_CLASSIFY_SUPERVISED_ParallelEpiped = _saga_api.SG_CLASSIFY_SUPERVISED_ParallelEpiped
SG_CLASSIFY_SUPERVISED_MinimumDistance = _saga_api.SG_CLASSIFY_SUPERVISED_MinimumDistance
SG_CLASSIFY_SUPERVISED_Mahalonobis = _saga_api.SG_CLASSIFY_SUPERVISED_Mahalonobis
SG_CLASSIFY_SUPERVISED_MaximumLikelihood = _saga_api.SG_CLASSIFY_SUPERVISED_MaximumLikelihood
SG_CLASSIFY_SUPERVISED_SAM = _saga_api.SG_CLASSIFY_SUPERVISED_SAM
SG_CLASSIFY_SUPERVISED_WTA = _saga_api.SG_CLASSIFY_SUPERVISED_WTA
SG_CLASSIFY_SUPERVISED_SID = _saga_api.SG_CLASSIFY_SUPERVISED_SID
SG_CLASSIFY_SUPERVISED_SVM = _saga_api.SG_CLASSIFY_SUPERVISED_SVM
class CSG_Classifier_Supervised(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Classifier_Supervised_swiginit(self, _saga_api.new_CSG_Classifier_Supervised())
    __swig_destroy__ = _saga_api.delete_CSG_Classifier_Supervised

    def Create(self, nFeatures):
        return _saga_api.CSG_Classifier_Supervised_Create(self, nFeatures)

    def Destroy(self):
        return _saga_api.CSG_Classifier_Supervised_Destroy(self)

    def Load(self, File):
        return _saga_api.CSG_Classifier_Supervised_Load(self, File)

    def Save(self, File, Feature_Info=None):
        return _saga_api.CSG_Classifier_Supervised_Save(self, File, Feature_Info)

    def Train_Clr_Samples(self):
        return _saga_api.CSG_Classifier_Supervised_Train_Clr_Samples(self)

    def Train_Add_Sample(self, Class_ID, Features):
        return _saga_api.CSG_Classifier_Supervised_Train_Add_Sample(self, Class_ID, Features)

    def Train(self, bClr_Samples=False):
        return _saga_api.CSG_Classifier_Supervised_Train(self, bClr_Samples)

    def Add_Class(self, Class_ID, Mean, Min, Max, Cov):
        return _saga_api.CSG_Classifier_Supervised_Add_Class(self, Class_ID, Mean, Min, Max, Cov)

    def Print(self):
        return _saga_api.CSG_Classifier_Supervised_Print(self)

    def Get_Feature_Count(self):
        return _saga_api.CSG_Classifier_Supervised_Get_Feature_Count(self)

    def Get_Class_Count(self):
        return _saga_api.CSG_Classifier_Supervised_Get_Class_Count(self)

    def Get_Class_ID(self, iClass):
        return _saga_api.CSG_Classifier_Supervised_Get_Class_ID(self, iClass)

    def Get_Class_Mean(self, iClass, iFeature):
        return _saga_api.CSG_Classifier_Supervised_Get_Class_Mean(self, iClass, iFeature)

    def Get_Class_Minimum(self, iClass, iFeature):
        return _saga_api.CSG_Classifier_Supervised_Get_Class_Minimum(self, iClass, iFeature)

    def Get_Class_Maximum(self, iClass, iFeature):
        return _saga_api.CSG_Classifier_Supervised_Get_Class_Maximum(self, iClass, iFeature)

    def Get_Class(self, *args):
        return _saga_api.CSG_Classifier_Supervised_Get_Class(self, *args)

    def Set_Threshold_Distance(self, Value):
        return _saga_api.CSG_Classifier_Supervised_Set_Threshold_Distance(self, Value)

    def Get_Threshold_Distance(self):
        return _saga_api.CSG_Classifier_Supervised_Get_Threshold_Distance(self)

    def Set_Threshold_Angle(self, Value):
        return _saga_api.CSG_Classifier_Supervised_Set_Threshold_Angle(self, Value)

    def Get_Threshold_Angle(self):
        return _saga_api.CSG_Classifier_Supervised_Get_Threshold_Angle(self)

    def Set_Threshold_Probability(self, Value):
        return _saga_api.CSG_Classifier_Supervised_Set_Threshold_Probability(self, Value)

    def Get_Threshold_Probability(self):
        return _saga_api.CSG_Classifier_Supervised_Get_Threshold_Probability(self)

    def Set_Probability_Relative(self, Value):
        return _saga_api.CSG_Classifier_Supervised_Set_Probability_Relative(self, Value)

    def Get_Probability_Relative(self):
        return _saga_api.CSG_Classifier_Supervised_Get_Probability_Relative(self)

    def Set_WTA(self, Method, bOn):
        return _saga_api.CSG_Classifier_Supervised_Set_WTA(self, Method, bOn)

    def Get_WTA(self, Method):
        return _saga_api.CSG_Classifier_Supervised_Get_WTA(self, Method)

    @staticmethod
    def Get_Name_of_Method(Method):
        return _saga_api.CSG_Classifier_Supervised_Get_Name_of_Method(Method)

    @staticmethod
    def Get_Name_of_Quality(Method):
        return _saga_api.CSG_Classifier_Supervised_Get_Name_of_Quality(Method)

# Register CSG_Classifier_Supervised in _saga_api:
_saga_api.CSG_Classifier_Supervised_swigregister(CSG_Classifier_Supervised)
class CSG_Spline(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Spline_swiginit(self, _saga_api.new_CSG_Spline())
    __swig_destroy__ = _saga_api.delete_CSG_Spline

    def Destroy(self):
        return _saga_api.CSG_Spline_Destroy(self)

    def Create(self, *args):
        return _saga_api.CSG_Spline_Create(self, *args)

    def Add(self, x, y):
        return _saga_api.CSG_Spline_Add(self, x, y)

    def Get_Count(self):
        return _saga_api.CSG_Spline_Get_Count(self)

    def Get_xMin(self):
        return _saga_api.CSG_Spline_Get_xMin(self)

    def Get_xMax(self):
        return _saga_api.CSG_Spline_Get_xMax(self)

    def Get_x(self, i):
        return _saga_api.CSG_Spline_Get_x(self, i)

    def Get_y(self, i):
        return _saga_api.CSG_Spline_Get_y(self, i)

    def Get_Value(self, *args):
        return _saga_api.CSG_Spline_Get_Value(self, *args)

# Register CSG_Spline in _saga_api:
_saga_api.CSG_Spline_swigregister(CSG_Spline)
class CSG_Thin_Plate_Spline(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Thin_Plate_Spline_swiginit(self, _saga_api.new_CSG_Thin_Plate_Spline())
    __swig_destroy__ = _saga_api.delete_CSG_Thin_Plate_Spline

    def Destroy(self):
        return _saga_api.CSG_Thin_Plate_Spline_Destroy(self)

    def Set_Point_Count(self, Count):
        return _saga_api.CSG_Thin_Plate_Spline_Set_Point_Count(self, Count)

    def Get_Point_Count(self):
        return _saga_api.CSG_Thin_Plate_Spline_Get_Point_Count(self)

    def Get_Points(self):
        return _saga_api.CSG_Thin_Plate_Spline_Get_Points(self)

    def Add_Point(self, *args):
        return _saga_api.CSG_Thin_Plate_Spline_Add_Point(self, *args)

    def Set_Point(self, *args):
        return _saga_api.CSG_Thin_Plate_Spline_Set_Point(self, *args)

    def Create(self, Regularization=0., bSilent=True):
        return _saga_api.CSG_Thin_Plate_Spline_Create(self, Regularization, bSilent)

    def is_Okay(self):
        return _saga_api.CSG_Thin_Plate_Spline_is_Okay(self)

    def Get_Value(self, x, y):
        return _saga_api.CSG_Thin_Plate_Spline_Get_Value(self, x, y)

# Register CSG_Thin_Plate_Spline in _saga_api:
_saga_api.CSG_Thin_Plate_Spline_swigregister(CSG_Thin_Plate_Spline)
TESTDIST_TYPE_Left = _saga_api.TESTDIST_TYPE_Left
TESTDIST_TYPE_Right = _saga_api.TESTDIST_TYPE_Right
TESTDIST_TYPE_Middle = _saga_api.TESTDIST_TYPE_Middle
TESTDIST_TYPE_TwoTail = _saga_api.TESTDIST_TYPE_TwoTail
class CSG_Test_Distribution(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Get_F_Tail_from_R2(R2, nPredictors, nSamples, Type=TESTDIST_TYPE_Right):
        return _saga_api.CSG_Test_Distribution_Get_F_Tail_from_R2(R2, nPredictors, nSamples, Type)

    @staticmethod
    def Get_F_Tail(F, dfn, dfd, Type=TESTDIST_TYPE_Right):
        return _saga_api.CSG_Test_Distribution_Get_F_Tail(F, dfn, dfd, Type)

    @staticmethod
    def Get_F_Inverse(alpha, dfn, dfd, Type=TESTDIST_TYPE_Right):
        return _saga_api.CSG_Test_Distribution_Get_F_Inverse(alpha, dfn, dfd, Type)

    @staticmethod
    def Get_T_Tail(T, df, Type=TESTDIST_TYPE_Right):
        return _saga_api.CSG_Test_Distribution_Get_T_Tail(T, df, Type)

    @staticmethod
    def Get_T_Inverse(alpha, df, Type=TESTDIST_TYPE_Right):
        return _saga_api.CSG_Test_Distribution_Get_T_Inverse(alpha, df, Type)

    @staticmethod
    def Get_Norm_P(Z):
        return _saga_api.CSG_Test_Distribution_Get_Norm_P(Z)

    @staticmethod
    def Get_Norm_Z(P):
        return _saga_api.CSG_Test_Distribution_Get_Norm_Z(P)

    def __init__(self):
        _saga_api.CSG_Test_Distribution_swiginit(self, _saga_api.new_CSG_Test_Distribution())
    __swig_destroy__ = _saga_api.delete_CSG_Test_Distribution

# Register CSG_Test_Distribution in _saga_api:
_saga_api.CSG_Test_Distribution_swigregister(CSG_Test_Distribution)

def SG_Get_Correlation_Matrix(Values, bCovariances=False):
    return _saga_api.SG_Get_Correlation_Matrix(Values, bCovariances)
REGRESSION_CORR_None = _saga_api.REGRESSION_CORR_None
REGRESSION_CORR_Smith = _saga_api.REGRESSION_CORR_Smith
REGRESSION_CORR_Wherry_1 = _saga_api.REGRESSION_CORR_Wherry_1
REGRESSION_CORR_Wherry_2 = _saga_api.REGRESSION_CORR_Wherry_2
REGRESSION_CORR_Olkin_Pratt = _saga_api.REGRESSION_CORR_Olkin_Pratt
REGRESSION_CORR_Pratt = _saga_api.REGRESSION_CORR_Pratt
REGRESSION_CORR_Claudy_3 = _saga_api.REGRESSION_CORR_Claudy_3

def SG_Regression_Get_Adjusted_R2(R2, nSamples, nPredictors, Correction=REGRESSION_CORR_Wherry_1):
    return _saga_api.SG_Regression_Get_Adjusted_R2(R2, nSamples, nPredictors, Correction)
REGRESSION_Linear = _saga_api.REGRESSION_Linear
REGRESSION_Rez_X = _saga_api.REGRESSION_Rez_X
REGRESSION_Rez_Y = _saga_api.REGRESSION_Rez_Y
REGRESSION_Pow = _saga_api.REGRESSION_Pow
REGRESSION_Exp = _saga_api.REGRESSION_Exp
REGRESSION_Log = _saga_api.REGRESSION_Log
class CSG_Regression(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Regression_swiginit(self, _saga_api.new_CSG_Regression())
    __swig_destroy__ = _saga_api.delete_CSG_Regression

    def Destroy(self):
        return _saga_api.CSG_Regression_Destroy(self)

    def Set_Values(self, nValues, x, y):
        return _saga_api.CSG_Regression_Set_Values(self, nValues, x, y)

    def Add_Values(self, x, y):
        return _saga_api.CSG_Regression_Add_Values(self, x, y)

    def Get_Count(self):
        return _saga_api.CSG_Regression_Get_Count(self)

    def Get_xValue(self, i):
        return _saga_api.CSG_Regression_Get_xValue(self, i)

    def Get_yValue(self, i):
        return _saga_api.CSG_Regression_Get_yValue(self, i)

    def Get_Values(self, i, x, y):
        return _saga_api.CSG_Regression_Get_Values(self, i, x, y)

    def Get_xMin(self):
        return _saga_api.CSG_Regression_Get_xMin(self)

    def Get_xMax(self):
        return _saga_api.CSG_Regression_Get_xMax(self)

    def Get_xMean(self):
        return _saga_api.CSG_Regression_Get_xMean(self)

    def Get_xVariance(self):
        return _saga_api.CSG_Regression_Get_xVariance(self)

    def Get_x(self, y):
        return _saga_api.CSG_Regression_Get_x(self, y)

    def Get_yMin(self):
        return _saga_api.CSG_Regression_Get_yMin(self)

    def Get_yMax(self):
        return _saga_api.CSG_Regression_Get_yMax(self)

    def Get_yMean(self):
        return _saga_api.CSG_Regression_Get_yMean(self)

    def Get_yVariance(self):
        return _saga_api.CSG_Regression_Get_yVariance(self)

    def Get_y(self, x):
        return _saga_api.CSG_Regression_Get_y(self, x)

    def Get_Constant(self):
        return _saga_api.CSG_Regression_Get_Constant(self)

    def Get_Coefficient(self):
        return _saga_api.CSG_Regression_Get_Coefficient(self)

    def Get_R(self):
        return _saga_api.CSG_Regression_Get_R(self)

    def Get_R2(self):
        return _saga_api.CSG_Regression_Get_R2(self)

    def Get_R2_Adj(self):
        return _saga_api.CSG_Regression_Get_R2_Adj(self)

    def Get_P(self):
        return _saga_api.CSG_Regression_Get_P(self)

    def Get_StdError(self):
        return _saga_api.CSG_Regression_Get_StdError(self)

    def asString(self):
        return _saga_api.CSG_Regression_asString(self)

    def Get_Type(self):
        return _saga_api.CSG_Regression_Get_Type(self)

    def Calculate(self, *args):
        return _saga_api.CSG_Regression_Calculate(self, *args)

# Register CSG_Regression in _saga_api:
_saga_api.CSG_Regression_swigregister(CSG_Regression)
MLR_VAR_ID = _saga_api.MLR_VAR_ID
MLR_VAR_NAME = _saga_api.MLR_VAR_NAME
MLR_VAR_RCOEFF = _saga_api.MLR_VAR_RCOEFF
MLR_VAR_R = _saga_api.MLR_VAR_R
MLR_VAR_R2 = _saga_api.MLR_VAR_R2
MLR_VAR_R2_ADJ = _saga_api.MLR_VAR_R2_ADJ
MLR_VAR_SE = _saga_api.MLR_VAR_SE
MLR_VAR_T = _saga_api.MLR_VAR_T
MLR_VAR_SIG = _saga_api.MLR_VAR_SIG
MLR_VAR_P = _saga_api.MLR_VAR_P
class CSG_Regression_Multiple(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, bIntercept=True):
        _saga_api.CSG_Regression_Multiple_swiginit(self, _saga_api.new_CSG_Regression_Multiple(bIntercept))
    __swig_destroy__ = _saga_api.delete_CSG_Regression_Multiple

    def Destroy(self):
        return _saga_api.CSG_Regression_Multiple_Destroy(self)

    def Set_Data(self, Samples, pNames=None):
        return _saga_api.CSG_Regression_Multiple_Set_Data(self, Samples, pNames)

    def Set_With_Intercept(self, bOn=True):
        return _saga_api.CSG_Regression_Multiple_Set_With_Intercept(self, bOn)

    def Get_With_Intercept(self):
        return _saga_api.CSG_Regression_Multiple_Get_With_Intercept(self)

    def Get_Model(self, *args):
        return _saga_api.CSG_Regression_Multiple_Get_Model(self, *args)

    def Get_Model_Forward(self, *args):
        return _saga_api.CSG_Regression_Multiple_Get_Model_Forward(self, *args)

    def Get_Model_Backward(self, *args):
        return _saga_api.CSG_Regression_Multiple_Get_Model_Backward(self, *args)

    def Get_Model_Stepwise(self, *args):
        return _saga_api.CSG_Regression_Multiple_Get_Model_Stepwise(self, *args)

    def Get_CrossValidation(self, nSubSamples=0):
        return _saga_api.CSG_Regression_Multiple_Get_CrossValidation(self, nSubSamples)

    def Get_Info(self):
        return _saga_api.CSG_Regression_Multiple_Get_Info(self)

    def Get_Info_Regression(self):
        return _saga_api.CSG_Regression_Multiple_Get_Info_Regression(self)

    def Get_Info_Model(self):
        return _saga_api.CSG_Regression_Multiple_Get_Info_Model(self)

    def Get_Info_Steps(self):
        return _saga_api.CSG_Regression_Multiple_Get_Info_Steps(self)

    def Get_R2(self):
        return _saga_api.CSG_Regression_Multiple_Get_R2(self)

    def Get_R2_Adj(self):
        return _saga_api.CSG_Regression_Multiple_Get_R2_Adj(self)

    def Get_F(self):
        return _saga_api.CSG_Regression_Multiple_Get_F(self)

    def Get_CV_RMSE(self):
        return _saga_api.CSG_Regression_Multiple_Get_CV_RMSE(self)

    def Get_CV_NRMSE(self):
        return _saga_api.CSG_Regression_Multiple_Get_CV_NRMSE(self)

    def Get_CV_R2(self):
        return _saga_api.CSG_Regression_Multiple_Get_CV_R2(self)

    def Get_CV_nSamples(self):
        return _saga_api.CSG_Regression_Multiple_Get_CV_nSamples(self)

    def Get_DegFreedom(self):
        return _saga_api.CSG_Regression_Multiple_Get_DegFreedom(self)

    def Get_nSamples(self):
        return _saga_api.CSG_Regression_Multiple_Get_nSamples(self)

    def Get_nPredictors(self):
        return _saga_api.CSG_Regression_Multiple_Get_nPredictors(self)

    def Get_Predictor(self, i):
        return _saga_api.CSG_Regression_Multiple_Get_Predictor(self, i)

    def Get_RConst(self):
        return _saga_api.CSG_Regression_Multiple_Get_RConst(self)

    def Get_Name(self, iVariable):
        return _saga_api.CSG_Regression_Multiple_Get_Name(self, iVariable)

    def Get_ID(self, iVariable):
        return _saga_api.CSG_Regression_Multiple_Get_ID(self, iVariable)

    def Get_RCoeff(self, iVariable):
        return _saga_api.CSG_Regression_Multiple_Get_RCoeff(self, iVariable)

    def Get_R2_Partial(self, iVariable):
        return _saga_api.CSG_Regression_Multiple_Get_R2_Partial(self, iVariable)

    def Get_R2_Partial_Adj(self, iVariable):
        return _saga_api.CSG_Regression_Multiple_Get_R2_Partial_Adj(self, iVariable)

    def Get_StdError(self, *args):
        return _saga_api.CSG_Regression_Multiple_Get_StdError(self, *args)

    def Get_T(self, iVariable):
        return _saga_api.CSG_Regression_Multiple_Get_T(self, iVariable)

    def Get_P(self, *args):
        return _saga_api.CSG_Regression_Multiple_Get_P(self, *args)

    def Get_Parameter(self, iVariable, Parameter):
        return _saga_api.CSG_Regression_Multiple_Get_Parameter(self, iVariable, Parameter)

    def Get_Value(self, *args):
        return _saga_api.CSG_Regression_Multiple_Get_Value(self, *args)

    def Get_Residual(self, *args):
        return _saga_api.CSG_Regression_Multiple_Get_Residual(self, *args)

    def Get_Residuals(self, Residuals):
        return _saga_api.CSG_Regression_Multiple_Get_Residuals(self, Residuals)

# Register CSG_Regression_Multiple in _saga_api:
_saga_api.CSG_Regression_Multiple_swigregister(CSG_Regression_Multiple)
class CSG_Regression_Weighted(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Regression_Weighted_swiginit(self, _saga_api.new_CSG_Regression_Weighted())
    __swig_destroy__ = _saga_api.delete_CSG_Regression_Weighted

    def Destroy(self):
        return _saga_api.CSG_Regression_Weighted_Destroy(self)

    def Add_Sample(self, Weight, Dependent, Predictors):
        return _saga_api.CSG_Regression_Weighted_Add_Sample(self, Weight, Dependent, Predictors)

    def Get_Sample_Count(self):
        return _saga_api.CSG_Regression_Weighted_Get_Sample_Count(self)

    def Get_Predictor_Count(self):
        return _saga_api.CSG_Regression_Weighted_Get_Predictor_Count(self)

    def Calculate(self, *args):
        return _saga_api.CSG_Regression_Weighted_Calculate(self, *args)

    def Get_R2(self):
        return _saga_api.CSG_Regression_Weighted_Get_R2(self)

    def Get_RCoeff(self, *args):
        return _saga_api.CSG_Regression_Weighted_Get_RCoeff(self, *args)

    def Get_Log_maxIter(self):
        return _saga_api.CSG_Regression_Weighted_Get_Log_maxIter(self)

    def Get_Log_Epsilon(self):
        return _saga_api.CSG_Regression_Weighted_Get_Log_Epsilon(self)

    def Get_Log_Difference(self):
        return _saga_api.CSG_Regression_Weighted_Get_Log_Difference(self)

    def Set_Log_maxIter(self, maxIter):
        return _saga_api.CSG_Regression_Weighted_Set_Log_maxIter(self, maxIter)

    def Set_Log_Epsilon(self, Epsilon):
        return _saga_api.CSG_Regression_Weighted_Set_Log_Epsilon(self, Epsilon)

    def Set_Log_Difference(self, Difference):
        return _saga_api.CSG_Regression_Weighted_Set_Log_Difference(self, Difference)

    def Get_CrossValidation(self, nSubSamples=0):
        return _saga_api.CSG_Regression_Weighted_Get_CrossValidation(self, nSubSamples)

    def Get_CV_nSamples(self):
        return _saga_api.CSG_Regression_Weighted_Get_CV_nSamples(self)

    def Get_CV_RMSE(self):
        return _saga_api.CSG_Regression_Weighted_Get_CV_RMSE(self)

    def Get_CV_NRMSE(self):
        return _saga_api.CSG_Regression_Weighted_Get_CV_NRMSE(self)

    def Get_CV_R2(self):
        return _saga_api.CSG_Regression_Weighted_Get_CV_R2(self)

# Register CSG_Regression_Weighted in _saga_api:
_saga_api.CSG_Regression_Weighted_swigregister(CSG_Regression_Weighted)
class CSG_Formula(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Formula_swiginit(self, _saga_api.new_CSG_Formula())
    __swig_destroy__ = _saga_api.delete_CSG_Formula

    def Destroy(self):
        return _saga_api.CSG_Formula_Destroy(self)

    @staticmethod
    def Get_Help_Operators(bHTML=True, Additional=0):
        return _saga_api.CSG_Formula_Get_Help_Operators(bHTML, Additional)

    def Get_Error(self, Message):
        return _saga_api.CSG_Formula_Get_Error(self, Message)

    def Add_Function(self, Name, Function, nParameters, bVarying=False):
        return _saga_api.CSG_Formula_Add_Function(self, Name, Function, nParameters, bVarying)

    def Set_Formula(self, Formula):
        return _saga_api.CSG_Formula_Set_Formula(self, Formula)

    def Get_Formula(self):
        return _saga_api.CSG_Formula_Get_Formula(self)

    def Set_Variable(self, Variable, Value):
        return _saga_api.CSG_Formula_Set_Variable(self, Variable, Value)

    def Get_Value(self, *args):
        return _saga_api.CSG_Formula_Get_Value(self, *args)

    def Get_Used_Variables(self):
        return _saga_api.CSG_Formula_Get_Used_Variables(self)

# Register CSG_Formula in _saga_api:
_saga_api.CSG_Formula_swigregister(CSG_Formula)
SG_TREND_STRING_Formula = _saga_api.SG_TREND_STRING_Formula
SG_TREND_STRING_Function = _saga_api.SG_TREND_STRING_Function
SG_TREND_STRING_Formula_Parameters = _saga_api.SG_TREND_STRING_Formula_Parameters
SG_TREND_STRING_Complete = _saga_api.SG_TREND_STRING_Complete
SG_TREND_STRING_Compact = _saga_api.SG_TREND_STRING_Compact
class CSG_Trend(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Trend_swiginit(self, _saga_api.new_CSG_Trend())

    def Set_Formula(self, Formula):
        return _saga_api.CSG_Trend_Set_Formula(self, Formula)

    def Get_Formula(self, Type=SG_TREND_STRING_Complete):
        return _saga_api.CSG_Trend_Get_Formula(self, Type)

    def Get_Parameter_Count(self):
        return _saga_api.CSG_Trend_Get_Parameter_Count(self)

    def Get_Parameters(self):
        return _saga_api.CSG_Trend_Get_Parameters(self)

    def Init_Parameter(self, Variable, Value):
        return _saga_api.CSG_Trend_Init_Parameter(self, Variable, Value)

    def Clr_Data(self):
        return _saga_api.CSG_Trend_Clr_Data(self)

    def Add_Data(self, x, y):
        return _saga_api.CSG_Trend_Add_Data(self, x, y)

    def Set_Data(self, *args):
        return _saga_api.CSG_Trend_Set_Data(self, *args)

    def Get_Data_Count(self):
        return _saga_api.CSG_Trend_Get_Data_Count(self)

    def Get_Data_X(self, i):
        return _saga_api.CSG_Trend_Get_Data_X(self, i)

    def Get_Data_XMin(self):
        return _saga_api.CSG_Trend_Get_Data_XMin(self)

    def Get_Data_XMax(self):
        return _saga_api.CSG_Trend_Get_Data_XMax(self)

    def Get_Data_XStats(self):
        return _saga_api.CSG_Trend_Get_Data_XStats(self)

    def Get_Data_Y(self, i):
        return _saga_api.CSG_Trend_Get_Data_Y(self, i)

    def Get_Data_YMin(self):
        return _saga_api.CSG_Trend_Get_Data_YMin(self)

    def Get_Data_YMax(self):
        return _saga_api.CSG_Trend_Get_Data_YMax(self)

    def Get_Data_YStats(self):
        return _saga_api.CSG_Trend_Get_Data_YStats(self)

    def Set_Max_Iterations(self, Iterations):
        return _saga_api.CSG_Trend_Set_Max_Iterations(self, Iterations)

    def Get_Max_Iterations(self):
        return _saga_api.CSG_Trend_Get_Max_Iterations(self)

    def Set_Max_Lambda(self, Lambda):
        return _saga_api.CSG_Trend_Set_Max_Lambda(self, Lambda)

    def Get_Max_Lambda(self):
        return _saga_api.CSG_Trend_Get_Max_Lambda(self)

    def Get_Trend(self, *args):
        return _saga_api.CSG_Trend_Get_Trend(self, *args)

    def is_Okay(self):
        return _saga_api.CSG_Trend_is_Okay(self)

    def Get_Error(self):
        return _saga_api.CSG_Trend_Get_Error(self)

    def Get_ChiSquare(self):
        return _saga_api.CSG_Trend_Get_ChiSquare(self)

    def Get_R2(self):
        return _saga_api.CSG_Trend_Get_R2(self)

    def Get_Value(self, x):
        return _saga_api.CSG_Trend_Get_Value(self, x)
    __swig_destroy__ = _saga_api.delete_CSG_Trend

# Register CSG_Trend in _saga_api:
_saga_api.CSG_Trend_swigregister(CSG_Trend)
class CSG_Trend_Polynom(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Trend_Polynom_swiginit(self, _saga_api.new_CSG_Trend_Polynom())

    def Destroy(self):
        return _saga_api.CSG_Trend_Polynom_Destroy(self)

    def Set_Order(self, Order=1):
        return _saga_api.CSG_Trend_Polynom_Set_Order(self, Order)

    def Clr_Data(self):
        return _saga_api.CSG_Trend_Polynom_Clr_Data(self)

    def Set_Data(self, x, y, n, bAdd=False):
        return _saga_api.CSG_Trend_Polynom_Set_Data(self, x, y, n, bAdd)

    def Add_Data(self, x, y):
        return _saga_api.CSG_Trend_Polynom_Add_Data(self, x, y)

    def Get_Data_Count(self):
        return _saga_api.CSG_Trend_Polynom_Get_Data_Count(self)

    def Get_Data_X(self, i):
        return _saga_api.CSG_Trend_Polynom_Get_Data_X(self, i)

    def Get_Data_Y(self, i):
        return _saga_api.CSG_Trend_Polynom_Get_Data_Y(self, i)

    def Get_Trend(self):
        return _saga_api.CSG_Trend_Polynom_Get_Trend(self)

    def Get_Order(self):
        return _saga_api.CSG_Trend_Polynom_Get_Order(self)

    def Get_nCoefficients(self):
        return _saga_api.CSG_Trend_Polynom_Get_nCoefficients(self)

    def Get_Coefficient(self, i):
        return _saga_api.CSG_Trend_Polynom_Get_Coefficient(self, i)

    def Get_R2(self):
        return _saga_api.CSG_Trend_Polynom_Get_R2(self)

    def Get_Value(self, x):
        return _saga_api.CSG_Trend_Polynom_Get_Value(self, x)
    __swig_destroy__ = _saga_api.delete_CSG_Trend_Polynom

# Register CSG_Trend_Polynom in _saga_api:
_saga_api.CSG_Trend_Polynom_swigregister(CSG_Trend_Polynom)
SG_META_SOURCE = _saga_api.SG_META_SOURCE
SG_META_FILEPATH = _saga_api.SG_META_FILEPATH
SG_META_DATABASE = _saga_api.SG_META_DATABASE
SG_META_PROJECTION = _saga_api.SG_META_PROJECTION
SG_META_HISTORY = _saga_api.SG_META_HISTORY
SG_DATAOBJECT_TYPE_Grid = _saga_api.SG_DATAOBJECT_TYPE_Grid
SG_DATAOBJECT_TYPE_Grids = _saga_api.SG_DATAOBJECT_TYPE_Grids
SG_DATAOBJECT_TYPE_Table = _saga_api.SG_DATAOBJECT_TYPE_Table
SG_DATAOBJECT_TYPE_Shapes = _saga_api.SG_DATAOBJECT_TYPE_Shapes
SG_DATAOBJECT_TYPE_TIN = _saga_api.SG_DATAOBJECT_TYPE_TIN
SG_DATAOBJECT_TYPE_PointCloud = _saga_api.SG_DATAOBJECT_TYPE_PointCloud
SG_DATAOBJECT_TYPE_Undefined = _saga_api.SG_DATAOBJECT_TYPE_Undefined

def SG_Get_Create_Pointer():
    return _saga_api.SG_Get_Create_Pointer()

def SG_Get_DataObject_Identifier(Type):
    return _saga_api.SG_Get_DataObject_Identifier(Type)

def SG_Get_DataObject_Name(Type):
    return _saga_api.SG_Get_DataObject_Name(Type)

def SG_Get_DataObject_Class_Name(Type):
    return _saga_api.SG_Get_DataObject_Class_Name(Type)

def SG_DataObject_Set_Max_Samples(Max_Samples):
    return _saga_api.SG_DataObject_Set_Max_Samples(Max_Samples)

def SG_DataObject_Get_Max_Samples():
    return _saga_api.SG_DataObject_Get_Max_Samples()

def SG_Set_History_Depth(Depth):
    return _saga_api.SG_Set_History_Depth(Depth)

def SG_Get_History_Depth():
    return _saga_api.SG_Get_History_Depth()

def SG_Set_History_Ignore_Lists(Ignore):
    return _saga_api.SG_Set_History_Ignore_Lists(Ignore)

def SG_Get_History_Ignore_Lists():
    return _saga_api.SG_Get_History_Ignore_Lists()
class CSG_Data_Object(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Data_Object

    def Destroy(self):
        return _saga_api.CSG_Data_Object_Destroy(self)

    def Get_RefID(self):
        return _saga_api.CSG_Data_Object_Get_RefID(self)

    def Get_Managed(self):
        return _saga_api.CSG_Data_Object_Get_Managed(self)

    def Get_ObjectType(self):
        return _saga_api.CSG_Data_Object_Get_ObjectType(self)

    def is_Valid(self):
        return _saga_api.CSG_Data_Object_is_Valid(self)

    def Save(self, *args):
        return _saga_api.CSG_Data_Object_Save(self, *args)

    def Reload(self):
        return _saga_api.CSG_Data_Object_Reload(self)

    def Delete(self):
        return _saga_api.CSG_Data_Object_Delete(self)

    def Set_File_Name(self, FileName):
        return _saga_api.CSG_Data_Object_Set_File_Name(self, FileName)

    def Get_File_Name(self, bNative=True):
        return _saga_api.CSG_Data_Object_Get_File_Name(self, bNative)

    def Get_File_Type(self):
        return _saga_api.CSG_Data_Object_Get_File_Type(self)

    def is_File_Native(self):
        return _saga_api.CSG_Data_Object_is_File_Native(self)

    def Assign(self, pObject, bProgress=False):
        return _saga_api.CSG_Data_Object_Assign(self, pObject, bProgress)

    def Set_Name(self, *args):
        return _saga_api.CSG_Data_Object_Set_Name(self, *args)

    def Fmt_Name(self, *args):
        return _saga_api.CSG_Data_Object_Fmt_Name(self, *args)

    def Get_Name(self):
        return _saga_api.CSG_Data_Object_Get_Name(self)

    def Set_Description(self, Description):
        return _saga_api.CSG_Data_Object_Set_Description(self, Description)

    def Get_Description(self):
        return _saga_api.CSG_Data_Object_Get_Description(self)

    def Set_Modified(self, bOn=True):
        return _saga_api.CSG_Data_Object_Set_Modified(self, bOn)

    def is_Modified(self):
        return _saga_api.CSG_Data_Object_is_Modified(self)

    def Update(self, bForce=False):
        return _saga_api.CSG_Data_Object_Update(self, bForce)

    def Get_Owner(self):
        return _saga_api.CSG_Data_Object_Get_Owner(self)

    def Set_Owner(self, pOwner):
        return _saga_api.CSG_Data_Object_Set_Owner(self, pOwner)

    def Get_MetaData(self):
        return _saga_api.CSG_Data_Object_Get_MetaData(self)

    def Get_MetaData_DB(self):
        return _saga_api.CSG_Data_Object_Get_MetaData_DB(self)

    def Get_History(self, *args):
        return _saga_api.CSG_Data_Object_Get_History(self, *args)

    def Get_Extent(self):
        return _saga_api.CSG_Data_Object_Get_Extent(self)

    def Get_Projection(self, *args):
        return _saga_api.CSG_Data_Object_Get_Projection(self, *args)

    def asTable(self, bPolymorph=False):
        return _saga_api.CSG_Data_Object_asTable(self, bPolymorph)

    def asShapes(self, bPolymorph=False):
        return _saga_api.CSG_Data_Object_asShapes(self, bPolymorph)

    def asTIN(self, bPolymorph=False):
        return _saga_api.CSG_Data_Object_asTIN(self, bPolymorph)

    def asPointCloud(self, bPolymorph=False):
        return _saga_api.CSG_Data_Object_asPointCloud(self, bPolymorph)

    def asGrid(self, bPolymorph=False):
        return _saga_api.CSG_Data_Object_asGrid(self, bPolymorph)

    def asGrids(self, bPolymorph=False):
        return _saga_api.CSG_Data_Object_asGrids(self, bPolymorph)

    def Set_NoData_Value(self, Value):
        return _saga_api.CSG_Data_Object_Set_NoData_Value(self, Value)

    def Set_NoData_Value_Range(self, Lower, Upper):
        return _saga_api.CSG_Data_Object_Set_NoData_Value_Range(self, Lower, Upper)

    def Get_NoData_Value(self, bUpper=False):
        return _saga_api.CSG_Data_Object_Get_NoData_Value(self, bUpper)

    def is_NoData_Value(self, Value):
        return _saga_api.CSG_Data_Object_is_NoData_Value(self, Value)

    def Save_History_to_Model(self, File):
        return _saga_api.CSG_Data_Object_Save_History_to_Model(self, File)

    def Set_Max_Samples(self, Max_Samples):
        return _saga_api.CSG_Data_Object_Set_Max_Samples(self, Max_Samples)

    def Get_Max_Samples(self):
        return _saga_api.CSG_Data_Object_Get_Max_Samples(self)

    @staticmethod
    def Track(Track=True, Offset=False):
        return _saga_api.CSG_Data_Object_Track(Track, Offset)

# Register CSG_Data_Object in _saga_api:
_saga_api.CSG_Data_Object_swigregister(CSG_Data_Object)

def SG_Data_Object_Delete(pObject):
    return _saga_api.SG_Data_Object_Delete(pObject)
class CSG_TimeSpan(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_TimeSpan_swiginit(self, _saga_api.new_CSG_TimeSpan(*args))

    @staticmethod
    def Milliseconds(ms):
        return _saga_api.CSG_TimeSpan_Milliseconds(ms)

    @staticmethod
    def Seconds(sec):
        return _saga_api.CSG_TimeSpan_Seconds(sec)

    @staticmethod
    def Minutes(min):
        return _saga_api.CSG_TimeSpan_Minutes(min)

    @staticmethod
    def Hours(hours):
        return _saga_api.CSG_TimeSpan_Hours(hours)

    @staticmethod
    def Days(days):
        return _saga_api.CSG_TimeSpan_Days(days)

    @staticmethod
    def Weeks(days):
        return _saga_api.CSG_TimeSpan_Weeks(days)

    @staticmethod
    def Millisecond():
        return _saga_api.CSG_TimeSpan_Millisecond()

    @staticmethod
    def Second():
        return _saga_api.CSG_TimeSpan_Second()

    @staticmethod
    def Minute():
        return _saga_api.CSG_TimeSpan_Minute()

    @staticmethod
    def Hour():
        return _saga_api.CSG_TimeSpan_Hour()

    @staticmethod
    def Day():
        return _saga_api.CSG_TimeSpan_Day()

    @staticmethod
    def Week():
        return _saga_api.CSG_TimeSpan_Week()

    def __iadd__(self, ts):
        return _saga_api.CSG_TimeSpan___iadd__(self, ts)

    def __isub__(self, ts):
        return _saga_api.CSG_TimeSpan___isub__(self, ts)

    def __imul__(self, n):
        return _saga_api.CSG_TimeSpan___imul__(self, n)

    def Add(self, *args):
        return _saga_api.CSG_TimeSpan_Add(self, *args)

    def Subtract(self, *args):
        return _saga_api.CSG_TimeSpan_Subtract(self, *args)

    def Multiply(self, *args):
        return _saga_api.CSG_TimeSpan_Multiply(self, *args)

    def __add__(self, ts):
        return _saga_api.CSG_TimeSpan___add__(self, ts)

    def __sub__(self, ts):
        return _saga_api.CSG_TimeSpan___sub__(self, ts)

    def __mul__(self, n):
        return _saga_api.CSG_TimeSpan___mul__(self, n)

    def Abs(self):
        return _saga_api.CSG_TimeSpan_Abs(self)

    def Negate(self):
        return _saga_api.CSG_TimeSpan_Negate(self)

    def Neg(self):
        return _saga_api.CSG_TimeSpan_Neg(self)

    def __neg__(self):
        return _saga_api.CSG_TimeSpan___neg__(self)

    def is_Null(self):
        return _saga_api.CSG_TimeSpan_is_Null(self)

    def is_Positive(self):
        return _saga_api.CSG_TimeSpan_is_Positive(self)

    def is_Negative(self):
        return _saga_api.CSG_TimeSpan_is_Negative(self)

    def is_EqualTo(self, ts):
        return _saga_api.CSG_TimeSpan_is_EqualTo(self, ts)

    def is_LongerThan(self, ts):
        return _saga_api.CSG_TimeSpan_is_LongerThan(self, ts)

    def is_ShorterThan(self, ts):
        return _saga_api.CSG_TimeSpan_is_ShorterThan(self, ts)

    def __lt__(self, ts):
        return _saga_api.CSG_TimeSpan___lt__(self, ts)

    def __le__(self, ts):
        return _saga_api.CSG_TimeSpan___le__(self, ts)

    def __eq__(self, ts):
        return _saga_api.CSG_TimeSpan___eq__(self, ts)

    def __ne__(self, ts):
        return _saga_api.CSG_TimeSpan___ne__(self, ts)

    def __ge__(self, ts):
        return _saga_api.CSG_TimeSpan___ge__(self, ts)

    def __gt__(self, ts):
        return _saga_api.CSG_TimeSpan___gt__(self, ts)

    def Get_Weeks(self):
        return _saga_api.CSG_TimeSpan_Get_Weeks(self)

    def Get_Days(self):
        return _saga_api.CSG_TimeSpan_Get_Days(self)

    def Get_Hours(self):
        return _saga_api.CSG_TimeSpan_Get_Hours(self)

    def Get_Minutes(self):
        return _saga_api.CSG_TimeSpan_Get_Minutes(self)

    def Get_Seconds(self):
        return _saga_api.CSG_TimeSpan_Get_Seconds(self)

    def Get_Milliseconds(self):
        return _saga_api.CSG_TimeSpan_Get_Milliseconds(self)

    def Get_Value(self):
        return _saga_api.CSG_TimeSpan_Get_Value(self)

    def Format(self, *args):
        return _saga_api.CSG_TimeSpan_Format(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_TimeSpan

# Register CSG_TimeSpan in _saga_api:
_saga_api.CSG_TimeSpan_swigregister(CSG_TimeSpan)
class CSG_DateTime(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Jan = _saga_api.CSG_DateTime_Jan
    Feb = _saga_api.CSG_DateTime_Feb
    Mar = _saga_api.CSG_DateTime_Mar
    Apr = _saga_api.CSG_DateTime_Apr
    May = _saga_api.CSG_DateTime_May
    Jun = _saga_api.CSG_DateTime_Jun
    Jul = _saga_api.CSG_DateTime_Jul
    Aug = _saga_api.CSG_DateTime_Aug
    Sep = _saga_api.CSG_DateTime_Sep
    Oct = _saga_api.CSG_DateTime_Oct
    Nov = _saga_api.CSG_DateTime_Nov
    Dec = _saga_api.CSG_DateTime_Dec
    Inv_Month = _saga_api.CSG_DateTime_Inv_Month
    Sun = _saga_api.CSG_DateTime_Sun
    Mon = _saga_api.CSG_DateTime_Mon
    Tue = _saga_api.CSG_DateTime_Tue
    Wed = _saga_api.CSG_DateTime_Wed
    Thu = _saga_api.CSG_DateTime_Thu
    Fri = _saga_api.CSG_DateTime_Fri
    Sat = _saga_api.CSG_DateTime_Sat
    Inv_WeekDay = _saga_api.CSG_DateTime_Inv_WeekDay
    Inv_Year = _saga_api.CSG_DateTime_Inv_Year
    Name_Full = _saga_api.CSG_DateTime_Name_Full
    Name_Abbr = _saga_api.CSG_DateTime_Name_Abbr

    def __init__(self, *args):
        _saga_api.CSG_DateTime_swiginit(self, _saga_api.new_CSG_DateTime(*args))
    __swig_destroy__ = _saga_api.delete_CSG_DateTime

    def Set(self, *args):
        return _saga_api.CSG_DateTime_Set(self, *args)

    def Set_Millisecond(self, Value):
        return _saga_api.CSG_DateTime_Set_Millisecond(self, Value)

    def Set_Second(self, Value):
        return _saga_api.CSG_DateTime_Set_Second(self, Value)

    def Set_Minute(self, Value):
        return _saga_api.CSG_DateTime_Set_Minute(self, Value)

    def Set_Hour(self, *args):
        return _saga_api.CSG_DateTime_Set_Hour(self, *args)

    def Set_Day(self, Value):
        return _saga_api.CSG_DateTime_Set_Day(self, Value)

    def Set_Month(self, Value):
        return _saga_api.CSG_DateTime_Set_Month(self, Value)

    def Set_Year(self, Value):
        return _saga_api.CSG_DateTime_Set_Year(self, Value)

    def Set_DayOfYear(self, Value):
        return _saga_api.CSG_DateTime_Set_DayOfYear(self, Value)

    def Set_To_Current(self):
        return _saga_api.CSG_DateTime_Set_To_Current(self)

    def Set_Unix_Time(self, Seconds):
        return _saga_api.CSG_DateTime_Set_Unix_Time(self, Seconds)

    def Set_Hours_AD(self, Hours):
        return _saga_api.CSG_DateTime_Set_Hours_AD(self, Hours)

    def Reset_Time(self):
        return _saga_api.CSG_DateTime_Reset_Time(self)

    def From_UTC(self, noDST=False):
        return _saga_api.CSG_DateTime_From_UTC(self, noDST)

    def To_UTC(self, noDST=False):
        return _saga_api.CSG_DateTime_To_UTC(self, noDST)

    def Make_UTC(self, noDST=False):
        return _saga_api.CSG_DateTime_Make_UTC(self, noDST)

    def is_DST(self):
        return _saga_api.CSG_DateTime_is_DST(self)

    def Add(self, *args):
        return _saga_api.CSG_DateTime_Add(self, *args)

    def Subtract(self, *args):
        return _saga_api.CSG_DateTime_Subtract(self, *args)

    def is_Valid(self):
        return _saga_api.CSG_DateTime_is_Valid(self)

    def Get_Value(self):
        return _saga_api.CSG_DateTime_Get_Value(self)

    def Get_Millisecond(self):
        return _saga_api.CSG_DateTime_Get_Millisecond(self)

    def Get_Second(self):
        return _saga_api.CSG_DateTime_Get_Second(self)

    def Get_Minute(self):
        return _saga_api.CSG_DateTime_Get_Minute(self)

    def Get_Hour(self):
        return _saga_api.CSG_DateTime_Get_Hour(self)

    def Get_Day(self):
        return _saga_api.CSG_DateTime_Get_Day(self)

    def Get_Month(self):
        return _saga_api.CSG_DateTime_Get_Month(self)

    def Get_Year(self):
        return _saga_api.CSG_DateTime_Get_Year(self)

    def Get_DayOfYear(self):
        return _saga_api.CSG_DateTime_Get_DayOfYear(self)

    def Get_WeekDay(self):
        return _saga_api.CSG_DateTime_Get_WeekDay(self)

    def Get_WeekOfMonth(self):
        return _saga_api.CSG_DateTime_Get_WeekOfMonth(self)

    def Get_WeekOfYear(self):
        return _saga_api.CSG_DateTime_Get_WeekOfYear(self)

    def Get_JDN(self):
        return _saga_api.CSG_DateTime_Get_JDN(self)

    def Get_MJD(self):
        return _saga_api.CSG_DateTime_Get_MJD(self)

    def Get_Unix_Time(self):
        return _saga_api.CSG_DateTime_Get_Unix_Time(self)

    def is_EarlierThan(self, DateTime):
        return _saga_api.CSG_DateTime_is_EarlierThan(self, DateTime)

    def is_EqualTo(self, DateTime):
        return _saga_api.CSG_DateTime_is_EqualTo(self, DateTime)

    def is_LaterThan(self, DateTime):
        return _saga_api.CSG_DateTime_is_LaterThan(self, DateTime)

    def is_SameDate(self, DateTime):
        return _saga_api.CSG_DateTime_is_SameDate(self, DateTime)

    def is_SameTime(self, DateTime):
        return _saga_api.CSG_DateTime_is_SameTime(self, DateTime)

    def is_Between(self, t1, t2):
        return _saga_api.CSG_DateTime_is_Between(self, t1, t2)

    def is_StrictlyBetween(self, t1, t2):
        return _saga_api.CSG_DateTime_is_StrictlyBetween(self, t1, t2)

    def __iadd__(self, TimeSpan):
        return _saga_api.CSG_DateTime___iadd__(self, TimeSpan)

    def __isub__(self, TimeSpan):
        return _saga_api.CSG_DateTime___isub__(self, TimeSpan)

    def __add__(self, TimeSpan):
        return _saga_api.CSG_DateTime___add__(self, TimeSpan)

    def __sub__(self, *args):
        return _saga_api.CSG_DateTime___sub__(self, *args)

    def __lt__(self, DateTime):
        return _saga_api.CSG_DateTime___lt__(self, DateTime)

    def __le__(self, DateTime):
        return _saga_api.CSG_DateTime___le__(self, DateTime)

    def __eq__(self, DateTime):
        return _saga_api.CSG_DateTime___eq__(self, DateTime)

    def __ge__(self, DateTime):
        return _saga_api.CSG_DateTime___ge__(self, DateTime)

    def __gt__(self, DateTime):
        return _saga_api.CSG_DateTime___gt__(self, DateTime)

    def Format(self, *args):
        return _saga_api.CSG_DateTime_Format(self, *args)

    def Format_Date(self):
        return _saga_api.CSG_DateTime_Format_Date(self)

    def Format_Time(self):
        return _saga_api.CSG_DateTime_Format_Time(self)

    def Format_ISODate(self):
        return _saga_api.CSG_DateTime_Format_ISODate(self)

    def Format_ISOTime(self):
        return _saga_api.CSG_DateTime_Format_ISOTime(self)

    def Format_ISOCombined(self, *args):
        return _saga_api.CSG_DateTime_Format_ISOCombined(self, *args)

    def Parse_Date(self, date):
        return _saga_api.CSG_DateTime_Parse_Date(self, date)

    def Parse_DateTime(self, datetime):
        return _saga_api.CSG_DateTime_Parse_DateTime(self, datetime)

    def Parse_Format(self, *args):
        return _saga_api.CSG_DateTime_Parse_Format(self, *args)

    def Parse_ISOCombined(self, *args):
        return _saga_api.CSG_DateTime_Parse_ISOCombined(self, *args)

    def Parse_ISODate(self, date):
        return _saga_api.CSG_DateTime_Parse_ISODate(self, date)

    def Parse_ISOTime(self, date):
        return _saga_api.CSG_DateTime_Parse_ISOTime(self, date)

    @staticmethod
    def Get_Current_Day():
        return _saga_api.CSG_DateTime_Get_Current_Day()

    @staticmethod
    def Get_Current_Month():
        return _saga_api.CSG_DateTime_Get_Current_Month()

    @staticmethod
    def Get_Current_Year():
        return _saga_api.CSG_DateTime_Get_Current_Year()

    @staticmethod
    def Get_MonthName(*args):
        return _saga_api.CSG_DateTime_Get_MonthName(*args)

    @staticmethod
    def Get_EnglishMonthName(*args):
        return _saga_api.CSG_DateTime_Get_EnglishMonthName(*args)

    @staticmethod
    def Get_WeekDayName(*args):
        return _saga_api.CSG_DateTime_Get_WeekDayName(*args)

    @staticmethod
    def Get_EnglishWeekDayName(*args):
        return _saga_api.CSG_DateTime_Get_EnglishWeekDayName(*args)

    @staticmethod
    def Get_NumberOfDays(*args):
        return _saga_api.CSG_DateTime_Get_NumberOfDays(*args)

    @staticmethod
    def is_LeapYear(*args):
        return _saga_api.CSG_DateTime_is_LeapYear(*args)

    @staticmethod
    def Now():
        return _saga_api.CSG_DateTime_Now()

    @staticmethod
    def Get_Month_Choices():
        return _saga_api.CSG_DateTime_Get_Month_Choices()

# Register CSG_DateTime in _saga_api:
_saga_api.CSG_DateTime_swigregister(CSG_DateTime)

def SG_JulianDayNumber_To_Date(*args):
    return _saga_api.SG_JulianDayNumber_To_Date(*args)

def SG_Date_To_JulianDayNumber(*args):
    return _saga_api.SG_Date_To_JulianDayNumber(*args)

def SG_Get_Day_MidOfMonth(Month, bLeapYear=False):
    return _saga_api.SG_Get_Day_MidOfMonth(Month, bLeapYear)

def SG_Get_Sun_Position(*args):
    return _saga_api.SG_Get_Sun_Position(*args)

def SG_Get_Sun_Refraction(Height, bRadians):
    return _saga_api.SG_Get_Sun_Refraction(Height, bRadians)

def SG_Get_Day_Length(*args):
    return _saga_api.SG_Get_Day_Length(*args)
SG_TABLE_VALUE_TYPE_Binary = _saga_api.SG_TABLE_VALUE_TYPE_Binary
SG_TABLE_VALUE_TYPE_String = _saga_api.SG_TABLE_VALUE_TYPE_String
SG_TABLE_VALUE_TYPE_Date = _saga_api.SG_TABLE_VALUE_TYPE_Date
SG_TABLE_VALUE_TYPE_Int = _saga_api.SG_TABLE_VALUE_TYPE_Int
SG_TABLE_VALUE_TYPE_Long = _saga_api.SG_TABLE_VALUE_TYPE_Long
SG_TABLE_VALUE_TYPE_Double = _saga_api.SG_TABLE_VALUE_TYPE_Double
class CSG_Table_Value(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Table_Value

    def Get_Type(self):
        return _saga_api.CSG_Table_Value_Get_Type(self)

    def Set_Value(self, *args):
        return _saga_api.CSG_Table_Value_Set_Value(self, *args)

    def asBinary(self):
        return _saga_api.CSG_Table_Value_asBinary(self)

    def asString(self, Decimals=-99):
        return _saga_api.CSG_Table_Value_asString(self, Decimals)

    def asInt(self):
        return _saga_api.CSG_Table_Value_asInt(self)

    def asLong(self):
        return _saga_api.CSG_Table_Value_asLong(self)

    def asDouble(self):
        return _saga_api.CSG_Table_Value_asDouble(self)

    def is_Equal(self, Value):
        return _saga_api.CSG_Table_Value_is_Equal(self, Value)

    def __eq__(self, Value):
        return _saga_api.CSG_Table_Value___eq__(self, Value)

# Register CSG_Table_Value in _saga_api:
_saga_api.CSG_Table_Value_swigregister(CSG_Table_Value)
class CSG_Table_Value_Binary(CSG_Table_Value):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Table_Value_Binary_swiginit(self, _saga_api.new_CSG_Table_Value_Binary())
    __swig_destroy__ = _saga_api.delete_CSG_Table_Value_Binary

    def Get_Type(self):
        return _saga_api.CSG_Table_Value_Binary_Get_Type(self)

    def Set_Value(self, *args):
        return _saga_api.CSG_Table_Value_Binary_Set_Value(self, *args)

    def Set_NoData(self):
        return _saga_api.CSG_Table_Value_Binary_Set_NoData(self)

    def is_NoData(self):
        return _saga_api.CSG_Table_Value_Binary_is_NoData(self)

    def asBinary(self):
        return _saga_api.CSG_Table_Value_Binary_asBinary(self)

    def asString(self, Decimals=-99):
        return _saga_api.CSG_Table_Value_Binary_asString(self, Decimals)

    def asInt(self):
        return _saga_api.CSG_Table_Value_Binary_asInt(self)

    def asLong(self):
        return _saga_api.CSG_Table_Value_Binary_asLong(self)

    def asDouble(self):
        return _saga_api.CSG_Table_Value_Binary_asDouble(self)

    def is_Equal(self, Value):
        return _saga_api.CSG_Table_Value_Binary_is_Equal(self, Value)

    def Get_Binary(self):
        return _saga_api.CSG_Table_Value_Binary_Get_Binary(self)

# Register CSG_Table_Value_Binary in _saga_api:
_saga_api.CSG_Table_Value_Binary_swigregister(CSG_Table_Value_Binary)
class CSG_Table_Value_String(CSG_Table_Value):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Table_Value_String_swiginit(self, _saga_api.new_CSG_Table_Value_String())
    __swig_destroy__ = _saga_api.delete_CSG_Table_Value_String

    def Get_Type(self):
        return _saga_api.CSG_Table_Value_String_Get_Type(self)

    def Set_Value(self, *args):
        return _saga_api.CSG_Table_Value_String_Set_Value(self, *args)

    def asString(self, Decimals=-99):
        return _saga_api.CSG_Table_Value_String_asString(self, Decimals)

    def asInt(self):
        return _saga_api.CSG_Table_Value_String_asInt(self)

    def asLong(self):
        return _saga_api.CSG_Table_Value_String_asLong(self)

    def asDouble(self):
        return _saga_api.CSG_Table_Value_String_asDouble(self)

    def is_Equal(self, Value):
        return _saga_api.CSG_Table_Value_String_is_Equal(self, Value)

# Register CSG_Table_Value_String in _saga_api:
_saga_api.CSG_Table_Value_String_swigregister(CSG_Table_Value_String)
class CSG_Table_Value_Date(CSG_Table_Value):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Table_Value_Date_swiginit(self, _saga_api.new_CSG_Table_Value_Date())
    __swig_destroy__ = _saga_api.delete_CSG_Table_Value_Date

    def Get_Type(self):
        return _saga_api.CSG_Table_Value_Date_Get_Type(self)

    def Set_Value(self, *args):
        return _saga_api.CSG_Table_Value_Date_Set_Value(self, *args)

    def asString(self, Decimals=-99):
        return _saga_api.CSG_Table_Value_Date_asString(self, Decimals)

    def asInt(self):
        return _saga_api.CSG_Table_Value_Date_asInt(self)

    def asLong(self):
        return _saga_api.CSG_Table_Value_Date_asLong(self)

    def asDouble(self):
        return _saga_api.CSG_Table_Value_Date_asDouble(self)

    def is_Equal(self, Value):
        return _saga_api.CSG_Table_Value_Date_is_Equal(self, Value)

# Register CSG_Table_Value_Date in _saga_api:
_saga_api.CSG_Table_Value_Date_swigregister(CSG_Table_Value_Date)
class CSG_Table_Value_Int(CSG_Table_Value):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Table_Value_Int_swiginit(self, _saga_api.new_CSG_Table_Value_Int())
    __swig_destroy__ = _saga_api.delete_CSG_Table_Value_Int

    def Get_Type(self):
        return _saga_api.CSG_Table_Value_Int_Get_Type(self)

    def Set_Value(self, *args):
        return _saga_api.CSG_Table_Value_Int_Set_Value(self, *args)

    def asString(self, Decimals=-99):
        return _saga_api.CSG_Table_Value_Int_asString(self, Decimals)

    def asInt(self):
        return _saga_api.CSG_Table_Value_Int_asInt(self)

    def asLong(self):
        return _saga_api.CSG_Table_Value_Int_asLong(self)

    def asDouble(self):
        return _saga_api.CSG_Table_Value_Int_asDouble(self)

    def is_Equal(self, Value):
        return _saga_api.CSG_Table_Value_Int_is_Equal(self, Value)

# Register CSG_Table_Value_Int in _saga_api:
_saga_api.CSG_Table_Value_Int_swigregister(CSG_Table_Value_Int)
class CSG_Table_Value_Long(CSG_Table_Value):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Table_Value_Long_swiginit(self, _saga_api.new_CSG_Table_Value_Long())
    __swig_destroy__ = _saga_api.delete_CSG_Table_Value_Long

    def Get_Type(self):
        return _saga_api.CSG_Table_Value_Long_Get_Type(self)

    def Set_Value(self, *args):
        return _saga_api.CSG_Table_Value_Long_Set_Value(self, *args)

    def asString(self, Decimals=-99):
        return _saga_api.CSG_Table_Value_Long_asString(self, Decimals)

    def asInt(self):
        return _saga_api.CSG_Table_Value_Long_asInt(self)

    def asLong(self):
        return _saga_api.CSG_Table_Value_Long_asLong(self)

    def asDouble(self):
        return _saga_api.CSG_Table_Value_Long_asDouble(self)

    def is_Equal(self, Value):
        return _saga_api.CSG_Table_Value_Long_is_Equal(self, Value)

# Register CSG_Table_Value_Long in _saga_api:
_saga_api.CSG_Table_Value_Long_swigregister(CSG_Table_Value_Long)
class CSG_Table_Value_Double(CSG_Table_Value):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Table_Value_Double_swiginit(self, _saga_api.new_CSG_Table_Value_Double())
    __swig_destroy__ = _saga_api.delete_CSG_Table_Value_Double

    def Get_Type(self):
        return _saga_api.CSG_Table_Value_Double_Get_Type(self)

    def Set_Value(self, *args):
        return _saga_api.CSG_Table_Value_Double_Set_Value(self, *args)

    def asString(self, Decimals=-99):
        return _saga_api.CSG_Table_Value_Double_asString(self, Decimals)

    def asInt(self):
        return _saga_api.CSG_Table_Value_Double_asInt(self)

    def asLong(self):
        return _saga_api.CSG_Table_Value_Double_asLong(self)

    def asDouble(self):
        return _saga_api.CSG_Table_Value_Double_asDouble(self)

    def is_Equal(self, Value):
        return _saga_api.CSG_Table_Value_Double_is_Equal(self, Value)

# Register CSG_Table_Value_Double in _saga_api:
_saga_api.CSG_Table_Value_Double_swigregister(CSG_Table_Value_Double)
TABLE_FILETYPE_Undefined = _saga_api.TABLE_FILETYPE_Undefined
TABLE_FILETYPE_Text = _saga_api.TABLE_FILETYPE_Text
TABLE_FILETYPE_Text_NoHeadLine = _saga_api.TABLE_FILETYPE_Text_NoHeadLine
TABLE_FILETYPE_DBase = _saga_api.TABLE_FILETYPE_DBase
TABLE_INDEX_None = _saga_api.TABLE_INDEX_None
TABLE_INDEX_Ascending = _saga_api.TABLE_INDEX_Ascending
TABLE_INDEX_Descending = _saga_api.TABLE_INDEX_Descending
SG_TABLE_REC_FLAG_Modified = _saga_api.SG_TABLE_REC_FLAG_Modified
SG_TABLE_REC_FLAG_Selected = _saga_api.SG_TABLE_REC_FLAG_Selected
class CSG_Table_Record(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Table(self):
        return _saga_api.CSG_Table_Record_Get_Table(self)

    def Get_Index(self):
        return _saga_api.CSG_Table_Record_Get_Index(self)

    def is_Valid(self):
        return _saga_api.CSG_Table_Record_is_Valid(self)

    def Set_Value(self, *args):
        return _saga_api.CSG_Table_Record_Set_Value(self, *args)

    def Add_Value(self, *args):
        return _saga_api.CSG_Table_Record_Add_Value(self, *args)

    def Mul_Value(self, *args):
        return _saga_api.CSG_Table_Record_Mul_Value(self, *args)

    def Set_NoData(self, *args):
        return _saga_api.CSG_Table_Record_Set_NoData(self, *args)

    def is_NoData(self, *args):
        return _saga_api.CSG_Table_Record_is_NoData(self, *args)

    def asString(self, *args):
        return _saga_api.CSG_Table_Record_asString(self, *args)

    def asChar(self, *args):
        return _saga_api.CSG_Table_Record_asChar(self, *args)

    def asShort(self, *args):
        return _saga_api.CSG_Table_Record_asShort(self, *args)

    def asInt(self, *args):
        return _saga_api.CSG_Table_Record_asInt(self, *args)

    def asLong(self, *args):
        return _saga_api.CSG_Table_Record_asLong(self, *args)

    def asFloat(self, *args):
        return _saga_api.CSG_Table_Record_asFloat(self, *args)

    def asDouble(self, *args):
        return _saga_api.CSG_Table_Record_asDouble(self, *args)

    def Get_Value(self, Field):
        return _saga_api.CSG_Table_Record_Get_Value(self, Field)

    def Assign(self, pRecord):
        return _saga_api.CSG_Table_Record_Assign(self, pRecord)

    def is_Selected(self):
        return _saga_api.CSG_Table_Record_is_Selected(self)

    def is_Modified(self):
        return _saga_api.CSG_Table_Record_is_Modified(self)

# Register CSG_Table_Record in _saga_api:
_saga_api.CSG_Table_Record_swigregister(CSG_Table_Record)
class CSG_Table(CSG_Data_Object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Table_swiginit(self, _saga_api.new_CSG_Table(*args))

    def Create(self, *args):
        return _saga_api.CSG_Table_Create(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_Table

    def Destroy(self):
        return _saga_api.CSG_Table_Destroy(self)

    def Get_ObjectType(self):
        return _saga_api.CSG_Table_Get_ObjectType(self)

    def Assign(self, pTable, bProgress=False):
        return _saga_api.CSG_Table_Assign(self, pTable, bProgress)

    def Assign_Values(self, *args):
        return _saga_api.CSG_Table_Assign_Values(self, *args)

    def Load(self, File, Format, Separator, Encoding=SG_FILE_ENCODING_UNDEFINED):
        return _saga_api.CSG_Table_Load(self, File, Format, Separator, Encoding)

    def Save(self, *args):
        return _saga_api.CSG_Table_Save(self, *args)

    def Set_File_Encoding(self, Encoding):
        return _saga_api.CSG_Table_Set_File_Encoding(self, Encoding)

    def Get_File_Encoding(self):
        return _saga_api.CSG_Table_Get_File_Encoding(self)

    def from_Text(self, Text):
        return _saga_api.CSG_Table_from_Text(self, Text)

    def to_Text(self, Selection=False, Header=True):
        return _saga_api.CSG_Table_to_Text(self, Selection, Header)

    def Serialize(self, Stream, bSave):
        return _saga_api.CSG_Table_Serialize(self, Stream, bSave)

    def is_Valid(self):
        return _saga_api.CSG_Table_is_Valid(self)

    def is_Compatible(self, *args):
        return _saga_api.CSG_Table_is_Compatible(self, *args)

    def Get_Extent(self):
        return _saga_api.CSG_Table_Get_Extent(self)

    def Add_Field(self, *args):
        return _saga_api.CSG_Table_Add_Field(self, *args)

    def Del_Field(self, Field):
        return _saga_api.CSG_Table_Del_Field(self, Field)

    def Mov_Field(self, Field, Position):
        return _saga_api.CSG_Table_Mov_Field(self, Field, Position)

    def Get_Field_Count(self):
        return _saga_api.CSG_Table_Get_Field_Count(self)

    def Get_Field_Name(self, Field):
        return _saga_api.CSG_Table_Get_Field_Name(self, Field)

    def Get_Field_Type(self, Field):
        return _saga_api.CSG_Table_Get_Field_Type(self, Field)

    def is_Field_Numeric(self, Field):
        return _saga_api.CSG_Table_is_Field_Numeric(self, Field)

    def Get_Field_Length(self, Field, Encoding=SG_FILE_ENCODING_UNDEFINED):
        return _saga_api.CSG_Table_Get_Field_Length(self, Field, Encoding)

    def Get_Field(self, *args):
        return _saga_api.CSG_Table_Get_Field(self, *args)

    def Set_Field_Name(self, Field, Name):
        return _saga_api.CSG_Table_Set_Field_Name(self, Field, Name)

    def Set_Field_Type(self, Field, Type):
        return _saga_api.CSG_Table_Set_Field_Type(self, Field, Type)

    def Find_Field(self, *args):
        return _saga_api.CSG_Table_Find_Field(self, *args)

    def Get_N(self, Field):
        return _saga_api.CSG_Table_Get_N(self, Field)

    def Get_Minimum(self, Field):
        return _saga_api.CSG_Table_Get_Minimum(self, Field)

    def Get_Maximum(self, Field):
        return _saga_api.CSG_Table_Get_Maximum(self, Field)

    def Get_Range(self, Field):
        return _saga_api.CSG_Table_Get_Range(self, Field)

    def Get_Sum(self, Field):
        return _saga_api.CSG_Table_Get_Sum(self, Field)

    def Get_Mean(self, Field):
        return _saga_api.CSG_Table_Get_Mean(self, Field)

    def Get_StdDev(self, Field):
        return _saga_api.CSG_Table_Get_StdDev(self, Field)

    def Get_Variance(self, Field):
        return _saga_api.CSG_Table_Get_Variance(self, Field)

    def Get_Statistics(self, Field):
        return _saga_api.CSG_Table_Get_Statistics(self, Field)

    def Get_Histogram(self, Field, nClasses=0):
        return _saga_api.CSG_Table_Get_Histogram(self, Field, nClasses)

    def Add_Record(self, pCopy=None):
        return _saga_api.CSG_Table_Add_Record(self, pCopy)

    def Ins_Record(self, Index, pCopy=None):
        return _saga_api.CSG_Table_Ins_Record(self, Index, pCopy)

    def Set_Record(self, Index, pCopy):
        return _saga_api.CSG_Table_Set_Record(self, Index, pCopy)

    def Del_Record(self, Index):
        return _saga_api.CSG_Table_Del_Record(self, Index)

    def Del_Records(self):
        return _saga_api.CSG_Table_Del_Records(self)

    def Set_Count(self, nRecords):
        return _saga_api.CSG_Table_Set_Count(self, nRecords)

    def Get_Count(self):
        return _saga_api.CSG_Table_Get_Count(self)

    def Get_Record(self, Index):
        return _saga_api.CSG_Table_Get_Record(self, Index)

    def Get_Index(self, Index):
        return _saga_api.CSG_Table_Get_Index(self, Index)

    def Get_Record_byIndex(self, Index):
        return _saga_api.CSG_Table_Get_Record_byIndex(self, Index)

    def Find_Record(self, *args):
        return _saga_api.CSG_Table_Find_Record(self, *args)

    def Set_Value(self, *args):
        return _saga_api.CSG_Table_Set_Value(self, *args)

    def Get_Value(self, *args):
        return _saga_api.CSG_Table_Get_Value(self, *args)

    def Set_Modified(self, bModified=True):
        return _saga_api.CSG_Table_Set_Modified(self, bModified)

    def Get_Selection_Count(self):
        return _saga_api.CSG_Table_Get_Selection_Count(self)

    def Get_Selection_Index(self, Index=0):
        return _saga_api.CSG_Table_Get_Selection_Index(self, Index)

    def Get_Selection(self, Index=0):
        return _saga_api.CSG_Table_Get_Selection(self, Index)

    def is_Selected(self, Index):
        return _saga_api.CSG_Table_is_Selected(self, Index)

    def Select(self, *args):
        return _saga_api.CSG_Table_Select(self, *args)

    def Del_Selection(self):
        return _saga_api.CSG_Table_Del_Selection(self)

    def Inv_Selection(self):
        return _saga_api.CSG_Table_Inv_Selection(self)

    def Sort(self, *args):
        return _saga_api.CSG_Table_Sort(self, *args)

    def Set_Index(self, *args):
        return _saga_api.CSG_Table_Set_Index(self, *args)

    def Del_Index(self):
        return _saga_api.CSG_Table_Del_Index(self)

    def Toggle_Index(self, Field):
        return _saga_api.CSG_Table_Toggle_Index(self, Field)

    def is_Indexed(self):
        return _saga_api.CSG_Table_is_Indexed(self)

    def Get_Index_Field(self, *args):
        return _saga_api.CSG_Table_Get_Index_Field(self, *args)

    def Get_Index_Order(self, *args):
        return _saga_api.CSG_Table_Get_Index_Order(self, *args)

# Register CSG_Table in _saga_api:
_saga_api.CSG_Table_swigregister(CSG_Table)

def SG_Create_Table(*args):
    return _saga_api.SG_Create_Table(*args)
GRID_PYRAMID_Mean = _saga_api.GRID_PYRAMID_Mean
GRID_PYRAMID_Max = _saga_api.GRID_PYRAMID_Max
GRID_PYRAMID_Min = _saga_api.GRID_PYRAMID_Min
GRID_PYRAMID_MaxCount = _saga_api.GRID_PYRAMID_MaxCount
GRID_PYRAMID_Arithmetic = _saga_api.GRID_PYRAMID_Arithmetic
GRID_PYRAMID_Geometric = _saga_api.GRID_PYRAMID_Geometric
class CSG_Grid_Pyramid(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Grid_Pyramid_swiginit(self, _saga_api.new_CSG_Grid_Pyramid(*args))

    def Create(self, *args):
        return _saga_api.CSG_Grid_Pyramid_Create(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_Grid_Pyramid

    def Destroy(self):
        return _saga_api.CSG_Grid_Pyramid_Destroy(self)

    def Get_Count(self):
        return _saga_api.CSG_Grid_Pyramid_Get_Count(self)

    def Get_Grid(self, iLevel):
        return _saga_api.CSG_Grid_Pyramid_Get_Grid(self, iLevel)

# Register CSG_Grid_Pyramid in _saga_api:
_saga_api.CSG_Grid_Pyramid_swigregister(CSG_Grid_Pyramid)
GRID_FILE_FORMAT_Undefined = _saga_api.GRID_FILE_FORMAT_Undefined
GRID_FILE_FORMAT_Binary_old = _saga_api.GRID_FILE_FORMAT_Binary_old
GRID_FILE_FORMAT_Binary = _saga_api.GRID_FILE_FORMAT_Binary
GRID_FILE_FORMAT_ASCII = _saga_api.GRID_FILE_FORMAT_ASCII
GRID_FILE_FORMAT_Compressed = _saga_api.GRID_FILE_FORMAT_Compressed
GRID_FILE_FORMAT_GeoTIFF = _saga_api.GRID_FILE_FORMAT_GeoTIFF
GRID_FILE_KEY_NAME = _saga_api.GRID_FILE_KEY_NAME
GRID_FILE_KEY_DESCRIPTION = _saga_api.GRID_FILE_KEY_DESCRIPTION
GRID_FILE_KEY_UNITNAME = _saga_api.GRID_FILE_KEY_UNITNAME
GRID_FILE_KEY_DATAFILE_NAME = _saga_api.GRID_FILE_KEY_DATAFILE_NAME
GRID_FILE_KEY_DATAFILE_OFFSET = _saga_api.GRID_FILE_KEY_DATAFILE_OFFSET
GRID_FILE_KEY_DATAFORMAT = _saga_api.GRID_FILE_KEY_DATAFORMAT
GRID_FILE_KEY_BYTEORDER_BIG = _saga_api.GRID_FILE_KEY_BYTEORDER_BIG
GRID_FILE_KEY_POSITION_XMIN = _saga_api.GRID_FILE_KEY_POSITION_XMIN
GRID_FILE_KEY_POSITION_YMIN = _saga_api.GRID_FILE_KEY_POSITION_YMIN
GRID_FILE_KEY_CELLCOUNT_X = _saga_api.GRID_FILE_KEY_CELLCOUNT_X
GRID_FILE_KEY_CELLCOUNT_Y = _saga_api.GRID_FILE_KEY_CELLCOUNT_Y
GRID_FILE_KEY_CELLSIZE = _saga_api.GRID_FILE_KEY_CELLSIZE
GRID_FILE_KEY_Z_FACTOR = _saga_api.GRID_FILE_KEY_Z_FACTOR
GRID_FILE_KEY_Z_OFFSET = _saga_api.GRID_FILE_KEY_Z_OFFSET
GRID_FILE_KEY_NODATA_VALUE = _saga_api.GRID_FILE_KEY_NODATA_VALUE
GRID_FILE_KEY_TOPTOBOTTOM = _saga_api.GRID_FILE_KEY_TOPTOBOTTOM
GRID_FILE_KEY_Count = _saga_api.GRID_FILE_KEY_Count
GRID_FILE_KEY_TRUE = _saga_api.GRID_FILE_KEY_TRUE
GRID_FILE_KEY_FALSE = _saga_api.GRID_FILE_KEY_FALSE
CSG_Grid_Resampling_NearestNeighbour = _saga_api.CSG_Grid_Resampling_NearestNeighbour
CSG_Grid_Resampling_Bilinear = _saga_api.CSG_Grid_Resampling_Bilinear
CSG_Grid_Resampling_Bicubic_1 = _saga_api.CSG_Grid_Resampling_Bicubic_1
CSG_Grid_Resampling_Bicubic_2 = _saga_api.CSG_Grid_Resampling_Bicubic_2
CSG_Grid_Resampling_Mean_Nodes = _saga_api.CSG_Grid_Resampling_Mean_Nodes
CSG_Grid_Resampling_Mean_Cells = _saga_api.CSG_Grid_Resampling_Mean_Cells
CSG_Grid_Resampling_Minimum = _saga_api.CSG_Grid_Resampling_Minimum
CSG_Grid_Resampling_Maximum = _saga_api.CSG_Grid_Resampling_Maximum
CSG_Grid_Resampling_Majority = _saga_api.CSG_Grid_Resampling_Majority
CSG_Grid_Resampling_Interpolations = _saga_api.CSG_Grid_Resampling_Interpolations
CSG_Grid_Resampling_Means = _saga_api.CSG_Grid_Resampling_Means
CSG_Grid_Resampling_Extremes = _saga_api.CSG_Grid_Resampling_Extremes
CSG_Grid_Resampling_Aggregations = _saga_api.CSG_Grid_Resampling_Aggregations
CSG_Grid_Resampling_All = _saga_api.CSG_Grid_Resampling_All
CSG_Grid_Resampling_Undefined = _saga_api.CSG_Grid_Resampling_Undefined
GRID_OPERATION_Addition = _saga_api.GRID_OPERATION_Addition
GRID_OPERATION_Subtraction = _saga_api.GRID_OPERATION_Subtraction
GRID_OPERATION_Multiplication = _saga_api.GRID_OPERATION_Multiplication
GRID_OPERATION_Division = _saga_api.GRID_OPERATION_Division
class CSG_Grid_System(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Grid_System_swiginit(self, _saga_api.new_CSG_Grid_System(*args))

    def Create(self, *args):
        return _saga_api.CSG_Grid_System_Create(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_Grid_System

    def Destroy(self):
        return _saga_api.CSG_Grid_System_Destroy(self)

    def Assign(self, *args):
        return _saga_api.CSG_Grid_System_Assign(self, *args)

    def is_Valid(self):
        return _saga_api.CSG_Grid_System_is_Valid(self)

    def Get_Name(self, bShort=True):
        return _saga_api.CSG_Grid_System_Get_Name(self, bShort)

    def asString(self):
        return _saga_api.CSG_Grid_System_asString(self)

    def Get_Cellsize(self):
        return _saga_api.CSG_Grid_System_Get_Cellsize(self)

    def Get_Cellarea(self):
        return _saga_api.CSG_Grid_System_Get_Cellarea(self)

    def Get_NX(self):
        return _saga_api.CSG_Grid_System_Get_NX(self)

    def Get_NY(self):
        return _saga_api.CSG_Grid_System_Get_NY(self)

    def Get_NCells(self):
        return _saga_api.CSG_Grid_System_Get_NCells(self)

    def Get_Extent(self, bCells=False):
        return _saga_api.CSG_Grid_System_Get_Extent(self, bCells)

    def Get_XMin(self, bCells=False):
        return _saga_api.CSG_Grid_System_Get_XMin(self, bCells)

    def Get_XMax(self, bCells=False):
        return _saga_api.CSG_Grid_System_Get_XMax(self, bCells)

    def Get_XRange(self, bCells=False):
        return _saga_api.CSG_Grid_System_Get_XRange(self, bCells)

    def Get_YMin(self, bCells=False):
        return _saga_api.CSG_Grid_System_Get_YMin(self, bCells)

    def Get_YMax(self, bCells=False):
        return _saga_api.CSG_Grid_System_Get_YMax(self, bCells)

    def Get_YRange(self, bCells=False):
        return _saga_api.CSG_Grid_System_Get_YRange(self, bCells)

    def __eq__(self, *args):
        return _saga_api.CSG_Grid_System___eq__(self, *args)

    def __ne__(self, *args):
        return _saga_api.CSG_Grid_System___ne__(self, *args)

    def is_Equal(self, *args):
        return _saga_api.CSG_Grid_System_is_Equal(self, *args)

    def Fit_xto_Grid_System(self, x):
        return _saga_api.CSG_Grid_System_Fit_xto_Grid_System(self, x)

    def Fit_yto_Grid_System(self, y):
        return _saga_api.CSG_Grid_System_Fit_yto_Grid_System(self, y)

    def Fit_to_Grid_System(self, ptWorld):
        return _saga_api.CSG_Grid_System_Fit_to_Grid_System(self, ptWorld)

    def Get_xGrid_to_World(self, xGrid):
        return _saga_api.CSG_Grid_System_Get_xGrid_to_World(self, xGrid)

    def Get_yGrid_to_World(self, yGrid):
        return _saga_api.CSG_Grid_System_Get_yGrid_to_World(self, yGrid)

    def Get_Grid_to_World(self, xGrid, yGrid):
        return _saga_api.CSG_Grid_System_Get_Grid_to_World(self, xGrid, yGrid)

    def Get_xWorld_to_Grid(self, xWorld):
        return _saga_api.CSG_Grid_System_Get_xWorld_to_Grid(self, xWorld)

    def Get_yWorld_to_Grid(self, yWorld):
        return _saga_api.CSG_Grid_System_Get_yWorld_to_Grid(self, yWorld)

    def Get_World_to_Grid(self, *args):
        return _saga_api.CSG_Grid_System_Get_World_to_Grid(self, *args)

    def Get_Neighbor_Pos(self, Direction, x, y, xPos, yPos):
        return _saga_api.CSG_Grid_System_Get_Neighbor_Pos(self, Direction, x, y, xPos, yPos)

    @staticmethod
    def Get_xTo(Direction, x=0):
        return _saga_api.CSG_Grid_System_Get_xTo(Direction, x)

    @staticmethod
    def Get_yTo(Direction, y=0):
        return _saga_api.CSG_Grid_System_Get_yTo(Direction, y)

    @staticmethod
    def Get_xFrom(Direction, x=0):
        return _saga_api.CSG_Grid_System_Get_xFrom(Direction, x)

    @staticmethod
    def Get_yFrom(Direction, y=0):
        return _saga_api.CSG_Grid_System_Get_yFrom(Direction, y)

    def Get_xToSave(self, Direction, x):
        return _saga_api.CSG_Grid_System_Get_xToSave(self, Direction, x)

    def Get_yToSave(self, Direction, y):
        return _saga_api.CSG_Grid_System_Get_yToSave(self, Direction, y)

    def Get_xFromSave(self, Direction, x):
        return _saga_api.CSG_Grid_System_Get_xFromSave(self, Direction, x)

    def Get_yFromSave(self, Direction, y):
        return _saga_api.CSG_Grid_System_Get_yFromSave(self, Direction, y)

    def is_InGrid(self, *args):
        return _saga_api.CSG_Grid_System_is_InGrid(self, *args)

    def Get_Length(self, Direction):
        return _saga_api.CSG_Grid_System_Get_Length(self, Direction)

    @staticmethod
    def Get_UnitLength(Direction):
        return _saga_api.CSG_Grid_System_Get_UnitLength(Direction)

    @staticmethod
    def Set_Precision(Decimals):
        return _saga_api.CSG_Grid_System_Set_Precision(Decimals)

    @staticmethod
    def Get_Precision():
        return _saga_api.CSG_Grid_System_Get_Precision()

    def Get_IndexFromRowCol(self, x, y):
        return _saga_api.CSG_Grid_System_Get_IndexFromRowCol(self, x, y)

    def Get_RowColFromIndex(self, x, y, i):
        return _saga_api.CSG_Grid_System_Get_RowColFromIndex(self, x, y, i)

# Register CSG_Grid_System in _saga_api:
_saga_api.CSG_Grid_System_swigregister(CSG_Grid_System)
gSG_Grid_File_Key_Names = cvar.gSG_Grid_File_Key_Names

class CSG_Grid_File_Info(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Grid_File_Info_swiginit(self, _saga_api.new_CSG_Grid_File_Info(*args))

    def Create(self, *args):
        return _saga_api.CSG_Grid_File_Info_Create(self, *args)

    @staticmethod
    def Save(*args):
        return _saga_api.CSG_Grid_File_Info_Save(*args)

    def Save_AUX_XML(self, *args):
        return _saga_api.CSG_Grid_File_Info_Save_AUX_XML(self, *args)
    m_bFlip = property(_saga_api.CSG_Grid_File_Info_m_bFlip_get, _saga_api.CSG_Grid_File_Info_m_bFlip_set)
    m_bSwapBytes = property(_saga_api.CSG_Grid_File_Info_m_bSwapBytes_get, _saga_api.CSG_Grid_File_Info_m_bSwapBytes_set)
    m_Offset = property(_saga_api.CSG_Grid_File_Info_m_Offset_get, _saga_api.CSG_Grid_File_Info_m_Offset_set)
    m_zScale = property(_saga_api.CSG_Grid_File_Info_m_zScale_get, _saga_api.CSG_Grid_File_Info_m_zScale_set)
    m_zOffset = property(_saga_api.CSG_Grid_File_Info_m_zOffset_get, _saga_api.CSG_Grid_File_Info_m_zOffset_set)
    m_NoData = property(_saga_api.CSG_Grid_File_Info_m_NoData_get, _saga_api.CSG_Grid_File_Info_m_NoData_set)
    m_Type = property(_saga_api.CSG_Grid_File_Info_m_Type_get, _saga_api.CSG_Grid_File_Info_m_Type_set)
    m_Name = property(_saga_api.CSG_Grid_File_Info_m_Name_get, _saga_api.CSG_Grid_File_Info_m_Name_set)
    m_Description = property(_saga_api.CSG_Grid_File_Info_m_Description_get, _saga_api.CSG_Grid_File_Info_m_Description_set)
    m_Unit = property(_saga_api.CSG_Grid_File_Info_m_Unit_get, _saga_api.CSG_Grid_File_Info_m_Unit_set)
    m_Data_File = property(_saga_api.CSG_Grid_File_Info_m_Data_File_get, _saga_api.CSG_Grid_File_Info_m_Data_File_set)
    m_System = property(_saga_api.CSG_Grid_File_Info_m_System_get, _saga_api.CSG_Grid_File_Info_m_System_set)
    m_Projection = property(_saga_api.CSG_Grid_File_Info_m_Projection_get, _saga_api.CSG_Grid_File_Info_m_Projection_set)
    __swig_destroy__ = _saga_api.delete_CSG_Grid_File_Info

# Register CSG_Grid_File_Info in _saga_api:
_saga_api.CSG_Grid_File_Info_swigregister(CSG_Grid_File_Info)
class CSG_Grid(CSG_Data_Object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Grid_swiginit(self, _saga_api.new_CSG_Grid(*args))

    def Create(self, *args):
        return _saga_api.CSG_Grid_Create(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_Grid

    def Destroy(self):
        return _saga_api.CSG_Grid_Destroy(self)

    def Save(self, *args):
        return _saga_api.CSG_Grid_Save(self, *args)

    def Get_ObjectType(self):
        return _saga_api.CSG_Grid_Get_ObjectType(self)

    def Get_Type(self):
        return _saga_api.CSG_Grid_Get_Type(self)

    def Get_nValueBytes(self):
        return _saga_api.CSG_Grid_Get_nValueBytes(self)

    def Get_nLineBytes(self):
        return _saga_api.CSG_Grid_Get_nLineBytes(self)

    def Set_Unit(self, Unit):
        return _saga_api.CSG_Grid_Set_Unit(self, Unit)

    def Get_Unit(self):
        return _saga_api.CSG_Grid_Get_Unit(self)

    def Get_System(self):
        return _saga_api.CSG_Grid_Get_System(self)

    def Get_NX(self):
        return _saga_api.CSG_Grid_Get_NX(self)

    def Get_NY(self):
        return _saga_api.CSG_Grid_Get_NY(self)

    def Get_NCells(self):
        return _saga_api.CSG_Grid_Get_NCells(self)

    def Get_Cellsize(self):
        return _saga_api.CSG_Grid_Get_Cellsize(self)

    def Get_Cellarea(self):
        return _saga_api.CSG_Grid_Get_Cellarea(self)

    def Get_Extent(self, *args):
        return _saga_api.CSG_Grid_Get_Extent(self, *args)

    def Get_XMin(self, bCells=False):
        return _saga_api.CSG_Grid_Get_XMin(self, bCells)

    def Get_XMax(self, bCells=False):
        return _saga_api.CSG_Grid_Get_XMax(self, bCells)

    def Get_XRange(self, bCells=False):
        return _saga_api.CSG_Grid_Get_XRange(self, bCells)

    def Get_YMin(self, bCells=False):
        return _saga_api.CSG_Grid_Get_YMin(self, bCells)

    def Get_YMax(self, bCells=False):
        return _saga_api.CSG_Grid_Get_YMax(self, bCells)

    def Get_YRange(self, bCells=False):
        return _saga_api.CSG_Grid_Get_YRange(self, bCells)

    def Set_Scaling(self, Scale=1., Offset=0.):
        return _saga_api.CSG_Grid_Set_Scaling(self, Scale, Offset)

    def Get_Scaling(self):
        return _saga_api.CSG_Grid_Get_Scaling(self)

    def Get_Offset(self):
        return _saga_api.CSG_Grid_Get_Offset(self)

    def is_Scaled(self):
        return _saga_api.CSG_Grid_is_Scaled(self)

    def Get_Mean(self):
        return _saga_api.CSG_Grid_Get_Mean(self)

    def Get_Min(self):
        return _saga_api.CSG_Grid_Get_Min(self)

    def Get_Max(self):
        return _saga_api.CSG_Grid_Get_Max(self)

    def Get_Range(self):
        return _saga_api.CSG_Grid_Get_Range(self)

    def Get_StdDev(self):
        return _saga_api.CSG_Grid_Get_StdDev(self)

    def Get_Variance(self):
        return _saga_api.CSG_Grid_Get_Variance(self)

    def Get_Quantile(self, Quantile, bFromHistogram=True):
        return _saga_api.CSG_Grid_Get_Quantile(self, Quantile, bFromHistogram)

    def Get_Percentile(self, Percentile, bFromHistogram=True):
        return _saga_api.CSG_Grid_Get_Percentile(self, Percentile, bFromHistogram)

    def Get_Statistics(self, *args):
        return _saga_api.CSG_Grid_Get_Statistics(self, *args)

    def Get_Histogram(self, *args):
        return _saga_api.CSG_Grid_Get_Histogram(self, *args)

    def Get_Data_Count(self):
        return _saga_api.CSG_Grid_Get_Data_Count(self)

    def Get_NoData_Count(self):
        return _saga_api.CSG_Grid_Get_NoData_Count(self)

    def is_Valid(self):
        return _saga_api.CSG_Grid_is_Valid(self)

    def is_Intersecting(self, *args):
        return _saga_api.CSG_Grid_is_Intersecting(self, *args)

    def is_Compatible(self, *args):
        return _saga_api.CSG_Grid_is_Compatible(self, *args)

    def is_InGrid(self, x, y, bCheckNoData=True):
        return _saga_api.CSG_Grid_is_InGrid(self, x, y, bCheckNoData)

    def is_InGrid_byPos(self, *args):
        return _saga_api.CSG_Grid_is_InGrid_byPos(self, *args)

    def Get_Memory_Size(self):
        return _saga_api.CSG_Grid_Get_Memory_Size(self)

    def Get_Memory_Size_MB(self):
        return _saga_api.CSG_Grid_Get_Memory_Size_MB(self)

    def Set_Cache(self, bOn):
        return _saga_api.CSG_Grid_Set_Cache(self, bOn)

    def is_Cached(self):
        return _saga_api.CSG_Grid_is_Cached(self)

    def Assign_NoData(self):
        return _saga_api.CSG_Grid_Assign_NoData(self)

    def Assign(self, *args):
        return _saga_api.CSG_Grid_Assign(self, *args)

    def Flip(self):
        return _saga_api.CSG_Grid_Flip(self)

    def Mirror(self):
        return _saga_api.CSG_Grid_Mirror(self)

    def Invert(self):
        return _saga_api.CSG_Grid_Invert(self)

    def Normalise(self):
        return _saga_api.CSG_Grid_Normalise(self)

    def DeNormalise(self, Minimum, Maximum):
        return _saga_api.CSG_Grid_DeNormalise(self, Minimum, Maximum)

    def Standardise(self):
        return _saga_api.CSG_Grid_Standardise(self)

    def DeStandardise(self, Mean, StdDev):
        return _saga_api.CSG_Grid_DeStandardise(self, Mean, StdDev)

    def Get_Gradient_NeighborDir(self, x, y, bDown=True, bNoEdges=True):
        return _saga_api.CSG_Grid_Get_Gradient_NeighborDir(self, x, y, bDown, bNoEdges)

    def Get_Gradient(self, *args):
        return _saga_api.CSG_Grid_Get_Gradient(self, *args)

    def Set_Modified(self, bModified=True):
        return _saga_api.CSG_Grid_Set_Modified(self, bModified)

    def Set_Index(self, bOn=True):
        return _saga_api.CSG_Grid_Set_Index(self, bOn)

    def Get_Sorted(self, *args):
        return _saga_api.CSG_Grid_Get_Sorted(self, *args)

    def is_NoData(self, *args):
        return _saga_api.CSG_Grid_is_NoData(self, *args)

    def Set_NoData(self, *args):
        return _saga_api.CSG_Grid_Set_NoData(self, *args)

    def __add__(self, *args):
        return _saga_api.CSG_Grid___add__(self, *args)

    def __iadd__(self, *args):
        return _saga_api.CSG_Grid___iadd__(self, *args)

    def Add(self, *args):
        return _saga_api.CSG_Grid_Add(self, *args)

    def __sub__(self, *args):
        return _saga_api.CSG_Grid___sub__(self, *args)

    def __isub__(self, *args):
        return _saga_api.CSG_Grid___isub__(self, *args)

    def Subtract(self, *args):
        return _saga_api.CSG_Grid_Subtract(self, *args)

    def __mul__(self, *args):
        return _saga_api.CSG_Grid___mul__(self, *args)

    def __imul__(self, *args):
        return _saga_api.CSG_Grid___imul__(self, *args)

    def Multiply(self, *args):
        return _saga_api.CSG_Grid_Multiply(self, *args)

    def __truediv__(self, *args):
        return _saga_api.CSG_Grid___truediv__(self, *args)
    __div__ = __truediv__



    def __itruediv__(self, *args):
        return _saga_api.CSG_Grid___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def Divide(self, *args):
        return _saga_api.CSG_Grid_Divide(self, *args)

    def __call__(self, x, y):
        return _saga_api.CSG_Grid___call__(self, x, y)

    def Get_Value(self, *args):
        return _saga_api.CSG_Grid_Get_Value(self, *args)

    def asByte(self, *args):
        return _saga_api.CSG_Grid_asByte(self, *args)

    def asChar(self, *args):
        return _saga_api.CSG_Grid_asChar(self, *args)

    def asShort(self, *args):
        return _saga_api.CSG_Grid_asShort(self, *args)

    def asInt(self, *args):
        return _saga_api.CSG_Grid_asInt(self, *args)

    def asLong(self, *args):
        return _saga_api.CSG_Grid_asLong(self, *args)

    def asFloat(self, *args):
        return _saga_api.CSG_Grid_asFloat(self, *args)

    def asDouble(self, *args):
        return _saga_api.CSG_Grid_asDouble(self, *args)

    def Add_Value(self, *args):
        return _saga_api.CSG_Grid_Add_Value(self, *args)

    def Mul_Value(self, *args):
        return _saga_api.CSG_Grid_Mul_Value(self, *args)

    def Set_Value(self, *args):
        return _saga_api.CSG_Grid_Set_Value(self, *args)

    def Get_Row(self, y):
        return _saga_api.CSG_Grid_Get_Row(self, y)

    def Set_Row(self, y, Values):
        return _saga_api.CSG_Grid_Set_Row(self, y, Values)

# Register CSG_Grid in _saga_api:
_saga_api.CSG_Grid_swigregister(CSG_Grid)

def SG_Create_Grid(*args):
    return _saga_api.SG_Create_Grid(*args)

def SG_Grid_Cache_Get_Directory():
    return _saga_api.SG_Grid_Cache_Get_Directory()

def SG_Grid_Cache_Set_Directory(Directory):
    return _saga_api.SG_Grid_Cache_Set_Directory(Directory)

def SG_Grid_Cache_Set_Mode(Mode):
    return _saga_api.SG_Grid_Cache_Set_Mode(Mode)

def SG_Grid_Cache_Get_Mode():
    return _saga_api.SG_Grid_Cache_Get_Mode()

def SG_Grid_Cache_Set_Threshold(nBytes):
    return _saga_api.SG_Grid_Cache_Set_Threshold(nBytes)

def SG_Grid_Cache_Set_Threshold_MB(nMegabytes):
    return _saga_api.SG_Grid_Cache_Set_Threshold_MB(nMegabytes)

def SG_Grid_Cache_Get_Threshold():
    return _saga_api.SG_Grid_Cache_Get_Threshold()

def SG_Grid_Cache_Get_Threshold_MB():
    return _saga_api.SG_Grid_Cache_Get_Threshold_MB()

def SG_Grid_Set_File_Format_Default(Format):
    return _saga_api.SG_Grid_Set_File_Format_Default(Format)

def SG_Grid_Get_File_Format_Default():
    return _saga_api.SG_Grid_Get_File_Format_Default()

def SG_Grid_Get_File_Extension_Default():
    return _saga_api.SG_Grid_Get_File_Extension_Default()
class CSG_Grid_Stack(CSG_Stack):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Grid_Stack_swiginit(self, _saga_api.new_CSG_Grid_Stack())

    def Push(self, x, y):
        return _saga_api.CSG_Grid_Stack_Push(self, x, y)

    def Pop(self, x, y):
        return _saga_api.CSG_Grid_Stack_Pop(self, x, y)
    __swig_destroy__ = _saga_api.delete_CSG_Grid_Stack

# Register CSG_Grid_Stack in _saga_api:
_saga_api.CSG_Grid_Stack_swigregister(CSG_Grid_Stack)
SG_GRIDCELLADDR_PARM_SQUARE = _saga_api.SG_GRIDCELLADDR_PARM_SQUARE
SG_GRIDCELLADDR_PARM_CIRCLE = _saga_api.SG_GRIDCELLADDR_PARM_CIRCLE
SG_GRIDCELLADDR_PARM_ANNULUS = _saga_api.SG_GRIDCELLADDR_PARM_ANNULUS
SG_GRIDCELLADDR_PARM_SECTOR = _saga_api.SG_GRIDCELLADDR_PARM_SECTOR
SG_GRIDCELLADDR_PARM_SIZEDBL = _saga_api.SG_GRIDCELLADDR_PARM_SIZEDBL
SG_GRIDCELLADDR_PARM_MAPUNIT = _saga_api.SG_GRIDCELLADDR_PARM_MAPUNIT
SG_GRIDCELLADDR_PARM_WEIGHTING = _saga_api.SG_GRIDCELLADDR_PARM_WEIGHTING
SG_GRIDCELLADDR_PARM_DEFAULT = _saga_api.SG_GRIDCELLADDR_PARM_DEFAULT
class CSG_Grid_Cell_Addressor(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Grid_Cell_Addressor_swiginit(self, _saga_api.new_CSG_Grid_Cell_Addressor())

    def Destroy(self):
        return _saga_api.CSG_Grid_Cell_Addressor_Destroy(self)

    @staticmethod
    def Enable_Parameters(Parameters):
        return _saga_api.CSG_Grid_Cell_Addressor_Enable_Parameters(Parameters)

    @staticmethod
    def Add_Parameters(*args):
        return _saga_api.CSG_Grid_Cell_Addressor_Add_Parameters(*args)

    def Set_Parameters(self, Parameters, Type=0):
        return _saga_api.CSG_Grid_Cell_Addressor_Set_Parameters(self, Parameters, Type)

    def Get_Weighting(self):
        return _saga_api.CSG_Grid_Cell_Addressor_Get_Weighting(self)

    def is_Square(self):
        return _saga_api.CSG_Grid_Cell_Addressor_is_Square(self)

    def is_Circle(self):
        return _saga_api.CSG_Grid_Cell_Addressor_is_Circle(self)

    def is_Annulus(self):
        return _saga_api.CSG_Grid_Cell_Addressor_is_Annulus(self)

    def is_Sector(self):
        return _saga_api.CSG_Grid_Cell_Addressor_is_Sector(self)

    def Set_Radius(self, Radius, bSquare=False):
        return _saga_api.CSG_Grid_Cell_Addressor_Set_Radius(self, Radius, bSquare)

    def Set_Square(self, *args):
        return _saga_api.CSG_Grid_Cell_Addressor_Set_Square(self, *args)

    def Set_Circle(self, *args):
        return _saga_api.CSG_Grid_Cell_Addressor_Set_Circle(self, *args)

    def Set_Annulus(self, *args):
        return _saga_api.CSG_Grid_Cell_Addressor_Set_Annulus(self, *args)

    def Set_Sector(self, *args):
        return _saga_api.CSG_Grid_Cell_Addressor_Set_Sector(self, *args)

    def Get_Radius(self, bOuter=True):
        return _saga_api.CSG_Grid_Cell_Addressor_Get_Radius(self, bOuter)

    def Get_Radius_Inner(self):
        return _saga_api.CSG_Grid_Cell_Addressor_Get_Radius_Inner(self)

    def Get_Radius_Outer(self):
        return _saga_api.CSG_Grid_Cell_Addressor_Get_Radius_Outer(self)

    def Get_Direction(self):
        return _saga_api.CSG_Grid_Cell_Addressor_Get_Direction(self)

    def Get_Tolerance(self):
        return _saga_api.CSG_Grid_Cell_Addressor_Get_Tolerance(self)

    def Get_Count(self):
        return _saga_api.CSG_Grid_Cell_Addressor_Get_Count(self)

    def Get_X(self, Index, Offset=0):
        return _saga_api.CSG_Grid_Cell_Addressor_Get_X(self, Index, Offset)

    def Get_Y(self, Index, Offset=0):
        return _saga_api.CSG_Grid_Cell_Addressor_Get_Y(self, Index, Offset)

    def Get_Distance(self, Index):
        return _saga_api.CSG_Grid_Cell_Addressor_Get_Distance(self, Index)

    def Get_Weight(self, Index):
        return _saga_api.CSG_Grid_Cell_Addressor_Get_Weight(self, Index)

    def Get_Values(self, Index, x, y, Distance, Weight, bOffset=False):
        return _saga_api.CSG_Grid_Cell_Addressor_Get_Values(self, Index, x, y, Distance, Weight, bOffset)
    __swig_destroy__ = _saga_api.delete_CSG_Grid_Cell_Addressor

# Register CSG_Grid_Cell_Addressor in _saga_api:
_saga_api.CSG_Grid_Cell_Addressor_swigregister(CSG_Grid_Cell_Addressor)
GRIDS_FILE_FORMAT_Undefined = _saga_api.GRIDS_FILE_FORMAT_Undefined
GRIDS_FILE_FORMAT_Normal = _saga_api.GRIDS_FILE_FORMAT_Normal
GRIDS_FILE_FORMAT_Compressed = _saga_api.GRIDS_FILE_FORMAT_Compressed
GRIDS_FILE_FORMAT_GeoTIFF = _saga_api.GRIDS_FILE_FORMAT_GeoTIFF
SG_GRIDS_NAME_OWNER = _saga_api.SG_GRIDS_NAME_OWNER
SG_GRIDS_NAME_INDEX = _saga_api.SG_GRIDS_NAME_INDEX
SG_GRIDS_NAME_VALUE = _saga_api.SG_GRIDS_NAME_VALUE
SG_GRIDS_NAME_GRID = _saga_api.SG_GRIDS_NAME_GRID
class CSG_Grids(CSG_Data_Object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Grids

    def __init__(self, *args):
        _saga_api.CSG_Grids_swiginit(self, _saga_api.new_CSG_Grids(*args))

    def Create(self, *args):
        return _saga_api.CSG_Grids_Create(self, *args)

    def Destroy(self):
        return _saga_api.CSG_Grids_Destroy(self)

    def Load(self, File, bLoadData=True):
        return _saga_api.CSG_Grids_Load(self, File, bLoadData)

    def Save(self, *args):
        return _saga_api.CSG_Grids_Save(self, *args)

    def Get_ObjectType(self):
        return _saga_api.CSG_Grids_Get_ObjectType(self)

    def Get_Type(self):
        return _saga_api.CSG_Grids_Get_Type(self)

    def Get_nValueBytes(self):
        return _saga_api.CSG_Grids_Get_nValueBytes(self)

    def Get_nLineBytes(self):
        return _saga_api.CSG_Grids_Get_nLineBytes(self)

    def Set_Unit(self, Unit):
        return _saga_api.CSG_Grids_Set_Unit(self, Unit)

    def Get_Unit(self):
        return _saga_api.CSG_Grids_Get_Unit(self)

    def Get_System(self):
        return _saga_api.CSG_Grids_Get_System(self)

    def Get_NX(self):
        return _saga_api.CSG_Grids_Get_NX(self)

    def Get_NY(self):
        return _saga_api.CSG_Grids_Get_NY(self)

    def Get_NZ(self):
        return _saga_api.CSG_Grids_Get_NZ(self)

    def Get_NCells(self):
        return _saga_api.CSG_Grids_Get_NCells(self)

    def Get_Data_Count(self):
        return _saga_api.CSG_Grids_Get_Data_Count(self)

    def Get_NoData_Count(self):
        return _saga_api.CSG_Grids_Get_NoData_Count(self)

    def Get_Cellsize(self):
        return _saga_api.CSG_Grids_Get_Cellsize(self)

    def Get_Cellarea(self):
        return _saga_api.CSG_Grids_Get_Cellarea(self)

    def Get_Extent(self, *args):
        return _saga_api.CSG_Grids_Get_Extent(self, *args)

    def Get_XMin(self, bCells=False):
        return _saga_api.CSG_Grids_Get_XMin(self, bCells)

    def Get_XMax(self, bCells=False):
        return _saga_api.CSG_Grids_Get_XMax(self, bCells)

    def Get_XRange(self, bCells=False):
        return _saga_api.CSG_Grids_Get_XRange(self, bCells)

    def Get_YMin(self, bCells=False):
        return _saga_api.CSG_Grids_Get_YMin(self, bCells)

    def Get_YMax(self, bCells=False):
        return _saga_api.CSG_Grids_Get_YMax(self, bCells)

    def Get_YRange(self, bCells=False):
        return _saga_api.CSG_Grids_Get_YRange(self, bCells)

    def Get_ZMin(self, bCells=False):
        return _saga_api.CSG_Grids_Get_ZMin(self, bCells)

    def Get_ZMax(self, bCells=False):
        return _saga_api.CSG_Grids_Get_ZMax(self, bCells)

    def Get_ZRange(self, bCells=False):
        return _saga_api.CSG_Grids_Get_ZRange(self, bCells)

    def Set_Z_Attribute(self, Field, bSetNameField=False):
        return _saga_api.CSG_Grids_Set_Z_Attribute(self, Field, bSetNameField)

    def Get_Z_Attribute(self):
        return _saga_api.CSG_Grids_Get_Z_Attribute(self)

    def Set_Z_Name_Field(self, Field):
        return _saga_api.CSG_Grids_Set_Z_Name_Field(self, Field)

    def Get_Z_Name_Field(self):
        return _saga_api.CSG_Grids_Get_Z_Name_Field(self)

    def Add_Attribute(self, *args):
        return _saga_api.CSG_Grids_Add_Attribute(self, *args)

    def Del_Attribute(self, Field):
        return _saga_api.CSG_Grids_Del_Attribute(self, Field)

    def Get_Attributes_Ptr(self):
        return _saga_api.CSG_Grids_Get_Attributes_Ptr(self)

    def Get_Attributes(self, *args):
        return _saga_api.CSG_Grids_Get_Attributes(self, *args)

    def Set_Attribute(self, *args):
        return _saga_api.CSG_Grids_Set_Attribute(self, *args)

    def Set_Z(self, i, Value):
        return _saga_api.CSG_Grids_Set_Z(self, i, Value)

    def Get_Z(self, i):
        return _saga_api.CSG_Grids_Get_Z(self, i)

    def Update_Z_Order(self):
        return _saga_api.CSG_Grids_Update_Z_Order(self)

    def Set_Grid_Count(self, Count):
        return _saga_api.CSG_Grids_Set_Grid_Count(self, Count)

    def Get_Grid_Count(self):
        return _saga_api.CSG_Grids_Get_Grid_Count(self)

    def Add_Grid(self, *args):
        return _saga_api.CSG_Grids_Add_Grid(self, *args)

    def Del_Grid(self, i, bDetach=False):
        return _saga_api.CSG_Grids_Del_Grid(self, i, bDetach)

    def Del_Grids(self, bDetach=False):
        return _saga_api.CSG_Grids_Del_Grids(self, bDetach)

    def Get_Grid(self, i):
        return _saga_api.CSG_Grids_Get_Grid(self, i)

    def Get_Grid_Ptr(self, i):
        return _saga_api.CSG_Grids_Get_Grid_Ptr(self, i)

    def Get_Grid_Name(self, i, Style=0):
        return _saga_api.CSG_Grids_Get_Grid_Name(self, i, Style)

    def Get_Memory_Size(self):
        return _saga_api.CSG_Grids_Get_Memory_Size(self)

    def Set_Scaling(self, Scale=1., Offset=0.):
        return _saga_api.CSG_Grids_Set_Scaling(self, Scale, Offset)

    def Get_Scaling(self):
        return _saga_api.CSG_Grids_Get_Scaling(self)

    def Get_Offset(self):
        return _saga_api.CSG_Grids_Get_Offset(self)

    def is_Scaled(self):
        return _saga_api.CSG_Grids_is_Scaled(self)

    def Get_Mean(self):
        return _saga_api.CSG_Grids_Get_Mean(self)

    def Get_Min(self):
        return _saga_api.CSG_Grids_Get_Min(self)

    def Get_Max(self):
        return _saga_api.CSG_Grids_Get_Max(self)

    def Get_Range(self):
        return _saga_api.CSG_Grids_Get_Range(self)

    def Get_StdDev(self):
        return _saga_api.CSG_Grids_Get_StdDev(self)

    def Get_Variance(self):
        return _saga_api.CSG_Grids_Get_Variance(self)

    def Get_Quantile(self, Quantile, bFromHistogram=True):
        return _saga_api.CSG_Grids_Get_Quantile(self, Quantile, bFromHistogram)

    def Get_Percentile(self, Percentile, bFromHistogram=True):
        return _saga_api.CSG_Grids_Get_Percentile(self, Percentile, bFromHistogram)

    def Get_Statistics(self, *args):
        return _saga_api.CSG_Grids_Get_Statistics(self, *args)

    def Get_Histogram(self, *args):
        return _saga_api.CSG_Grids_Get_Histogram(self, *args)

    def Set_Max_Samples(self, Max_Samples):
        return _saga_api.CSG_Grids_Set_Max_Samples(self, Max_Samples)

    def is_Valid(self):
        return _saga_api.CSG_Grids_is_Valid(self)

    def is_Intersecting(self, *args):
        return _saga_api.CSG_Grids_is_Intersecting(self, *args)

    def is_Compatible(self, *args):
        return _saga_api.CSG_Grids_is_Compatible(self, *args)

    def is_InGrid(self, x, y, z, bCheckNoData=True):
        return _saga_api.CSG_Grids_is_InGrid(self, x, y, z, bCheckNoData)

    def is_InGrid_byPos(self, *args):
        return _saga_api.CSG_Grids_is_InGrid_byPos(self, *args)

    def Set_Modified(self, bModified=True):
        return _saga_api.CSG_Grids_Set_Modified(self, bModified)

    def is_Modified(self):
        return _saga_api.CSG_Grids_is_Modified(self)

    def Assign_NoData(self):
        return _saga_api.CSG_Grids_Assign_NoData(self)

    def Assign(self, *args):
        return _saga_api.CSG_Grids_Assign(self, *args)

    def __iadd__(self, Value):
        return _saga_api.CSG_Grids___iadd__(self, Value)

    def Add(self, Value):
        return _saga_api.CSG_Grids_Add(self, Value)

    def __isub__(self, Value):
        return _saga_api.CSG_Grids___isub__(self, Value)

    def Subtract(self, Value):
        return _saga_api.CSG_Grids_Subtract(self, Value)

    def __imul__(self, Value):
        return _saga_api.CSG_Grids___imul__(self, Value)

    def Multiply(self, Value):
        return _saga_api.CSG_Grids_Multiply(self, Value)

    def __itruediv__(self, *args):
        return _saga_api.CSG_Grids___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def Divide(self, Value):
        return _saga_api.CSG_Grids_Divide(self, Value)

    def __call__(self, x, y, z):
        return _saga_api.CSG_Grids___call__(self, x, y, z)

    def Set_NoData_Value_Range(self, loValue, hiValue):
        return _saga_api.CSG_Grids_Set_NoData_Value_Range(self, loValue, hiValue)

    def is_NoData(self, *args):
        return _saga_api.CSG_Grids_is_NoData(self, *args)

    def Set_NoData(self, *args):
        return _saga_api.CSG_Grids_Set_NoData(self, *args)

    def Get_Value(self, *args):
        return _saga_api.CSG_Grids_Get_Value(self, *args)

    def asByte(self, *args):
        return _saga_api.CSG_Grids_asByte(self, *args)

    def asChar(self, *args):
        return _saga_api.CSG_Grids_asChar(self, *args)

    def asShort(self, *args):
        return _saga_api.CSG_Grids_asShort(self, *args)

    def asInt(self, *args):
        return _saga_api.CSG_Grids_asInt(self, *args)

    def asLong(self, *args):
        return _saga_api.CSG_Grids_asLong(self, *args)

    def asFloat(self, *args):
        return _saga_api.CSG_Grids_asFloat(self, *args)

    def asDouble(self, *args):
        return _saga_api.CSG_Grids_asDouble(self, *args)

    def Add_Value(self, *args):
        return _saga_api.CSG_Grids_Add_Value(self, *args)

    def Mul_Value(self, *args):
        return _saga_api.CSG_Grids_Mul_Value(self, *args)

    def Set_Value(self, *args):
        return _saga_api.CSG_Grids_Set_Value(self, *args)

    def Set_Index(self, bOn=True):
        return _saga_api.CSG_Grids_Set_Index(self, bOn)

    def Get_Sorted(self, *args):
        return _saga_api.CSG_Grids_Get_Sorted(self, *args)

# Register CSG_Grids in _saga_api:
_saga_api.CSG_Grids_swigregister(CSG_Grids)

def SG_Create_Grids(*args):
    return _saga_api.SG_Create_Grids(*args)
SG_VERTEX_TYPE_XY = _saga_api.SG_VERTEX_TYPE_XY
SG_VERTEX_TYPE_XYZ = _saga_api.SG_VERTEX_TYPE_XYZ
SG_VERTEX_TYPE_XYZM = _saga_api.SG_VERTEX_TYPE_XYZM
SHAPE_TYPE_Undefined = _saga_api.SHAPE_TYPE_Undefined
SHAPE_TYPE_Point = _saga_api.SHAPE_TYPE_Point
SHAPE_TYPE_Points = _saga_api.SHAPE_TYPE_Points
SHAPE_TYPE_Line = _saga_api.SHAPE_TYPE_Line
SHAPE_TYPE_Polygon = _saga_api.SHAPE_TYPE_Polygon

def SG_Get_ShapeType_Name(Type):
    return _saga_api.SG_Get_ShapeType_Name(Type)
SHAPE_FILE_FORMAT_Undefined = _saga_api.SHAPE_FILE_FORMAT_Undefined
SHAPE_FILE_FORMAT_ESRI = _saga_api.SHAPE_FILE_FORMAT_ESRI
SHAPE_FILE_FORMAT_GeoPackage = _saga_api.SHAPE_FILE_FORMAT_GeoPackage
SHAPE_FILE_FORMAT_GeoJSON = _saga_api.SHAPE_FILE_FORMAT_GeoJSON
SHAPE_NO_COPY = _saga_api.SHAPE_NO_COPY
SHAPE_COPY_GEOM = _saga_api.SHAPE_COPY_GEOM
SHAPE_COPY_ATTR = _saga_api.SHAPE_COPY_ATTR
SHAPE_COPY = _saga_api.SHAPE_COPY
class CSG_Shape(CSG_Table_Record):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def Destroy(self):
        return _saga_api.CSG_Shape_Destroy(self)

    def Assign(self, *args):
        return _saga_api.CSG_Shape_Assign(self, *args)

    def Get_Type(self):
        return _saga_api.CSG_Shape_Get_Type(self)

    def Get_Vertex_Type(self):
        return _saga_api.CSG_Shape_Get_Vertex_Type(self)

    def asPoint(self):
        return _saga_api.CSG_Shape_asPoint(self)

    def asPoints(self):
        return _saga_api.CSG_Shape_asPoints(self)

    def asLine(self):
        return _saga_api.CSG_Shape_asLine(self)

    def asPolygon(self):
        return _saga_api.CSG_Shape_asPolygon(self)

    def Get_Point_Count(self, *args):
        return _saga_api.CSG_Shape_Get_Point_Count(self, *args)

    def Get_Part_Count(self):
        return _saga_api.CSG_Shape_Get_Part_Count(self)

    def Add_Part(self, pPart, bRevert=False):
        return _saga_api.CSG_Shape_Add_Part(self, pPart, bRevert)

    def Get_Part(self, iPart):
        return _saga_api.CSG_Shape_Get_Part(self, iPart)

    def Del_Part(self, iPart):
        return _saga_api.CSG_Shape_Del_Part(self, iPart)

    def Del_Parts(self):
        return _saga_api.CSG_Shape_Del_Parts(self)

    def Add_Point(self, *args):
        return _saga_api.CSG_Shape_Add_Point(self, *args)

    def Ins_Point(self, *args):
        return _saga_api.CSG_Shape_Ins_Point(self, *args)

    def Set_Point(self, *args):
        return _saga_api.CSG_Shape_Set_Point(self, *args)

    def Del_Point(self, iPoint, iPart=0):
        return _saga_api.CSG_Shape_Del_Point(self, iPoint, iPart)

    def Get_Point(self, *args):
        return _saga_api.CSG_Shape_Get_Point(self, *args)

    def Set_Z(self, z, iPoint=0, iPart=0):
        return _saga_api.CSG_Shape_Set_Z(self, z, iPoint, iPart)

    def Get_Z(self, iPoint=0, iPart=0, bAscending=True):
        return _saga_api.CSG_Shape_Get_Z(self, iPoint, iPart, bAscending)

    def Get_ZMin(self):
        return _saga_api.CSG_Shape_Get_ZMin(self)

    def Get_ZMax(self):
        return _saga_api.CSG_Shape_Get_ZMax(self)

    def Get_Point_Z(self, iPoint=0, iPart=0, bAscending=True):
        return _saga_api.CSG_Shape_Get_Point_Z(self, iPoint, iPart, bAscending)

    def Set_M(self, m, iPoint=0, iPart=0):
        return _saga_api.CSG_Shape_Set_M(self, m, iPoint, iPart)

    def Get_M(self, iPoint=0, iPart=0, bAscending=True):
        return _saga_api.CSG_Shape_Get_M(self, iPoint, iPart, bAscending)

    def Get_MMin(self):
        return _saga_api.CSG_Shape_Get_MMin(self)

    def Get_MMax(self):
        return _saga_api.CSG_Shape_Get_MMax(self)

    def Get_Point_ZM(self, iPoint=0, iPart=0, bAscending=True):
        return _saga_api.CSG_Shape_Get_Point_ZM(self, iPoint, iPart, bAscending)

    def Get_Extent(self, *args):
        return _saga_api.CSG_Shape_Get_Extent(self, *args)

    def Get_Centroid(self):
        return _saga_api.CSG_Shape_Get_Centroid(self)

    def Intersects(self, *args):
        return _saga_api.CSG_Shape_Intersects(self, *args)

    def Get_Distance(self, *args):
        return _saga_api.CSG_Shape_Get_Distance(self, *args)

    def Revert_Points(self, iPart):
        return _saga_api.CSG_Shape_Revert_Points(self, iPart)

# Register CSG_Shape in _saga_api:
_saga_api.CSG_Shape_swigregister(CSG_Shape)
class CSG_Shape_Point(CSG_Shape):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def is_Valid(self):
        return _saga_api.CSG_Shape_Point_is_Valid(self)

    def Get_Point_Count(self, *args):
        return _saga_api.CSG_Shape_Point_Get_Point_Count(self, *args)

    def Get_Part_Count(self):
        return _saga_api.CSG_Shape_Point_Get_Part_Count(self)

    def Add_Point(self, *args):
        return _saga_api.CSG_Shape_Point_Add_Point(self, *args)

    def Ins_Point(self, *args):
        return _saga_api.CSG_Shape_Point_Ins_Point(self, *args)

    def Set_Point(self, *args):
        return _saga_api.CSG_Shape_Point_Set_Point(self, *args)

    def Del_Point(self, iPoint, iPart=0):
        return _saga_api.CSG_Shape_Point_Del_Point(self, iPoint, iPart)

    def Get_Point(self, *args):
        return _saga_api.CSG_Shape_Point_Get_Point(self, *args)

    def Get_Centroid(self):
        return _saga_api.CSG_Shape_Point_Get_Centroid(self)

    def Get_Extent(self):
        return _saga_api.CSG_Shape_Point_Get_Extent(self)

    def Get_Distance(self, *args):
        return _saga_api.CSG_Shape_Point_Get_Distance(self, *args)

# Register CSG_Shape_Point in _saga_api:
_saga_api.CSG_Shape_Point_swigregister(CSG_Shape_Point)
class CSG_Shape_Point_Z(CSG_Shape_Point):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, pOwner, Index):
        _saga_api.CSG_Shape_Point_Z_swiginit(self, _saga_api.new_CSG_Shape_Point_Z(pOwner, Index))

    def Set_Z(self, z, iPoint=0, iPart=0):
        return _saga_api.CSG_Shape_Point_Z_Set_Z(self, z, iPoint, iPart)

    def Get_Z(self, iPoint=0, iPart=0, bAscending=True):
        return _saga_api.CSG_Shape_Point_Z_Get_Z(self, iPoint, iPart, bAscending)

    def Get_ZMin(self):
        return _saga_api.CSG_Shape_Point_Z_Get_ZMin(self)

    def Get_ZMax(self):
        return _saga_api.CSG_Shape_Point_Z_Get_ZMax(self)
    __swig_destroy__ = _saga_api.delete_CSG_Shape_Point_Z

# Register CSG_Shape_Point_Z in _saga_api:
_saga_api.CSG_Shape_Point_Z_swigregister(CSG_Shape_Point_Z)
class CSG_Shape_Point_ZM(CSG_Shape_Point_Z):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, pOwner, Index):
        _saga_api.CSG_Shape_Point_ZM_swiginit(self, _saga_api.new_CSG_Shape_Point_ZM(pOwner, Index))

    def Set_M(self, m, iPoint=0, iPart=0):
        return _saga_api.CSG_Shape_Point_ZM_Set_M(self, m, iPoint, iPart)

    def Get_M(self, iPoint=0, iPart=0, bAscending=True):
        return _saga_api.CSG_Shape_Point_ZM_Get_M(self, iPoint, iPart, bAscending)

    def Get_MMin(self):
        return _saga_api.CSG_Shape_Point_ZM_Get_MMin(self)

    def Get_MMax(self):
        return _saga_api.CSG_Shape_Point_ZM_Get_MMax(self)
    __swig_destroy__ = _saga_api.delete_CSG_Shape_Point_ZM

# Register CSG_Shape_Point_ZM in _saga_api:
_saga_api.CSG_Shape_Point_ZM_swigregister(CSG_Shape_Point_ZM)
class CSG_Shape_Part(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Owner(self):
        return _saga_api.CSG_Shape_Part_Get_Owner(self)

    def Destroy(self):
        return _saga_api.CSG_Shape_Part_Destroy(self)

    def Assign(self, pPart):
        return _saga_api.CSG_Shape_Part_Assign(self, pPart)

    def Get_Extent(self):
        return _saga_api.CSG_Shape_Part_Get_Extent(self)

    def Get_Count(self):
        return _saga_api.CSG_Shape_Part_Get_Count(self)

    def Get_Point(self, iPoint, bAscending=True):
        return _saga_api.CSG_Shape_Part_Get_Point(self, iPoint, bAscending)

    def Add_Point(self, *args):
        return _saga_api.CSG_Shape_Part_Add_Point(self, *args)

    def Ins_Point(self, *args):
        return _saga_api.CSG_Shape_Part_Ins_Point(self, *args)

    def Set_Point(self, *args):
        return _saga_api.CSG_Shape_Part_Set_Point(self, *args)

    def Del_Point(self, iPoint):
        return _saga_api.CSG_Shape_Part_Del_Point(self, iPoint)

    def Set_Z(self, z, iPoint):
        return _saga_api.CSG_Shape_Part_Set_Z(self, z, iPoint)

    def Get_Z(self, iPoint, bAscending=True):
        return _saga_api.CSG_Shape_Part_Get_Z(self, iPoint, bAscending)

    def Get_ZMin(self):
        return _saga_api.CSG_Shape_Part_Get_ZMin(self)

    def Get_ZMax(self):
        return _saga_api.CSG_Shape_Part_Get_ZMax(self)

    def Get_Point_Z(self, iPoint, bAscending=True):
        return _saga_api.CSG_Shape_Part_Get_Point_Z(self, iPoint, bAscending)

    def Set_M(self, m, iPoint):
        return _saga_api.CSG_Shape_Part_Set_M(self, m, iPoint)

    def Get_M(self, iPoint, bAscending=True):
        return _saga_api.CSG_Shape_Part_Get_M(self, iPoint, bAscending)

    def Get_MMin(self):
        return _saga_api.CSG_Shape_Part_Get_MMin(self)

    def Get_MMax(self):
        return _saga_api.CSG_Shape_Part_Get_MMax(self)

    def Get_Point_ZM(self, iPoint, bAscending=True):
        return _saga_api.CSG_Shape_Part_Get_Point_ZM(self, iPoint, bAscending)

    def Add_Points(self, pPoints, bAscending=True):
        return _saga_api.CSG_Shape_Part_Add_Points(self, pPoints, bAscending)

    def Revert_Points(self):
        return _saga_api.CSG_Shape_Part_Revert_Points(self)

# Register CSG_Shape_Part in _saga_api:
_saga_api.CSG_Shape_Part_swigregister(CSG_Shape_Part)
class CSG_Shape_Points(CSG_Shape):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Destroy(self):
        return _saga_api.CSG_Shape_Points_Destroy(self)

    def is_Valid(self):
        return _saga_api.CSG_Shape_Points_is_Valid(self)

    def Get_Point_Count(self, *args):
        return _saga_api.CSG_Shape_Points_Get_Point_Count(self, *args)

    def Get_Part_Count(self):
        return _saga_api.CSG_Shape_Points_Get_Part_Count(self)

    def Add_Part(self, pPart, bRevert=False):
        return _saga_api.CSG_Shape_Points_Add_Part(self, pPart, bRevert)

    def Get_Part(self, iPart):
        return _saga_api.CSG_Shape_Points_Get_Part(self, iPart)

    def Del_Part(self, iPart):
        return _saga_api.CSG_Shape_Points_Del_Part(self, iPart)

    def Del_Parts(self):
        return _saga_api.CSG_Shape_Points_Del_Parts(self)

    def Add_Point(self, *args):
        return _saga_api.CSG_Shape_Points_Add_Point(self, *args)

    def Ins_Point(self, *args):
        return _saga_api.CSG_Shape_Points_Ins_Point(self, *args)

    def Set_Point(self, *args):
        return _saga_api.CSG_Shape_Points_Set_Point(self, *args)

    def Del_Point(self, iPoint, iPart=0):
        return _saga_api.CSG_Shape_Points_Del_Point(self, iPoint, iPart)

    def Get_Point(self, *args):
        return _saga_api.CSG_Shape_Points_Get_Point(self, *args)

    def Set_Z(self, z, iPoint=0, iPart=0):
        return _saga_api.CSG_Shape_Points_Set_Z(self, z, iPoint, iPart)

    def Get_Z(self, iPoint=0, iPart=0, bAscending=True):
        return _saga_api.CSG_Shape_Points_Get_Z(self, iPoint, iPart, bAscending)

    def Get_ZMin(self):
        return _saga_api.CSG_Shape_Points_Get_ZMin(self)

    def Get_ZMax(self):
        return _saga_api.CSG_Shape_Points_Get_ZMax(self)

    def Set_M(self, m, iPoint=0, iPart=0):
        return _saga_api.CSG_Shape_Points_Set_M(self, m, iPoint, iPart)

    def Get_M(self, iPoint=0, iPart=0, bAscending=True):
        return _saga_api.CSG_Shape_Points_Get_M(self, iPoint, iPart, bAscending)

    def Get_MMin(self):
        return _saga_api.CSG_Shape_Points_Get_MMin(self)

    def Get_MMax(self):
        return _saga_api.CSG_Shape_Points_Get_MMax(self)

    def Get_Extent(self):
        return _saga_api.CSG_Shape_Points_Get_Extent(self)

    def Get_Centroid(self):
        return _saga_api.CSG_Shape_Points_Get_Centroid(self)

    def Get_Distance(self, *args):
        return _saga_api.CSG_Shape_Points_Get_Distance(self, *args)

    def Revert_Points(self, iPart):
        return _saga_api.CSG_Shape_Points_Revert_Points(self, iPart)

# Register CSG_Shape_Points in _saga_api:
_saga_api.CSG_Shape_Points_swigregister(CSG_Shape_Points)
class CSG_Shape_Line(CSG_Shape_Points):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def is_Valid(self):
        return _saga_api.CSG_Shape_Line_is_Valid(self)

    def Get_Centroid(self):
        return _saga_api.CSG_Shape_Line_Get_Centroid(self)

    def Get_Length(self, *args):
        return _saga_api.CSG_Shape_Line_Get_Length(self, *args)

    def Get_Distance(self, Point, Next, iPart):
        return _saga_api.CSG_Shape_Line_Get_Distance(self, Point, Next, iPart)

# Register CSG_Shape_Line in _saga_api:
_saga_api.CSG_Shape_Line_swigregister(CSG_Shape_Line)
SG_POLYGON_POINT_Outside = _saga_api.SG_POLYGON_POINT_Outside
SG_POLYGON_POINT_Vertex = _saga_api.SG_POLYGON_POINT_Vertex
SG_POLYGON_POINT_Edge = _saga_api.SG_POLYGON_POINT_Edge
SG_POLYGON_POINT_Interior = _saga_api.SG_POLYGON_POINT_Interior
class CSG_Shape_Polygon_Part(CSG_Shape_Part):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def is_Clockwise(self):
        return _saga_api.CSG_Shape_Polygon_Part_is_Clockwise(self)

    def Get_Perimeter(self):
        return _saga_api.CSG_Shape_Polygon_Part_Get_Perimeter(self)

    def Get_Area(self):
        return _saga_api.CSG_Shape_Polygon_Part_Get_Area(self)

    def Get_Centroid(self):
        return _saga_api.CSG_Shape_Polygon_Part_Get_Centroid(self)

    def Get_Point_Relation(self, *args):
        return _saga_api.CSG_Shape_Polygon_Part_Get_Point_Relation(self, *args)

    def is_OnEdge(self, *args):
        return _saga_api.CSG_Shape_Polygon_Part_is_OnEdge(self, *args)

    def Contains(self, *args):
        return _saga_api.CSG_Shape_Polygon_Part_Contains(self, *args)

    def is_Neighbour(self, pPart, bSimpleCheck=True):
        return _saga_api.CSG_Shape_Polygon_Part_is_Neighbour(self, pPart, bSimpleCheck)

    def Get_Shared_Edges(self, pPart, bVertexCheck, Epsilon=0.):
        return _saga_api.CSG_Shape_Polygon_Part_Get_Shared_Edges(self, pPart, bVertexCheck, Epsilon)

    def Get_Shared_Length(self, pPart, bVertexCheck, Epsilon=0.):
        return _saga_api.CSG_Shape_Polygon_Part_Get_Shared_Length(self, pPart, bVertexCheck, Epsilon)

    def Get_Distance(self, Point, Next):
        return _saga_api.CSG_Shape_Polygon_Part_Get_Distance(self, Point, Next)

# Register CSG_Shape_Polygon_Part in _saga_api:
_saga_api.CSG_Shape_Polygon_Part_swigregister(CSG_Shape_Polygon_Part)
class CSG_Shape_Polygon(CSG_Shape_Points):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def is_Valid(self):
        return _saga_api.CSG_Shape_Polygon_is_Valid(self)

    def Get_Polygon_Part(self, iPart):
        return _saga_api.CSG_Shape_Polygon_Get_Polygon_Part(self, iPart)

    def is_Lake(self, iPart):
        return _saga_api.CSG_Shape_Polygon_is_Lake(self, iPart)

    def is_Clockwise(self, iPart):
        return _saga_api.CSG_Shape_Polygon_is_Clockwise(self, iPart)

    def Get_Perimeter(self, *args):
        return _saga_api.CSG_Shape_Polygon_Get_Perimeter(self, *args)

    def Get_Area(self, *args):
        return _saga_api.CSG_Shape_Polygon_Get_Area(self, *args)

    def Get_Centroid(self, *args):
        return _saga_api.CSG_Shape_Polygon_Get_Centroid(self, *args)

    def Get_Point_Relation(self, *args):
        return _saga_api.CSG_Shape_Polygon_Get_Point_Relation(self, *args)

    def is_OnEdge(self, *args):
        return _saga_api.CSG_Shape_Polygon_is_OnEdge(self, *args)

    def Contains(self, *args):
        return _saga_api.CSG_Shape_Polygon_Contains(self, *args)

    def is_Neighbour(self, pPolygon, bSimpleCheck=True):
        return _saga_api.CSG_Shape_Polygon_is_Neighbour(self, pPolygon, bSimpleCheck)

    def Get_Shared_Edges(self, pPolygon, bVertexCheck, Epsilon=0.):
        return _saga_api.CSG_Shape_Polygon_Get_Shared_Edges(self, pPolygon, bVertexCheck, Epsilon)

    def Get_Shared_Length(self, pPolygon, bVertexCheck, Epsilon=0.):
        return _saga_api.CSG_Shape_Polygon_Get_Shared_Length(self, pPolygon, bVertexCheck, Epsilon)

    def Get_Distance(self, Point, Next, iPart):
        return _saga_api.CSG_Shape_Polygon_Get_Distance(self, Point, Next, iPart)

# Register CSG_Shape_Polygon in _saga_api:
_saga_api.CSG_Shape_Polygon_swigregister(CSG_Shape_Polygon)
class CSG_Shapes(CSG_Table):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_Shapes_swiginit(self, _saga_api.new_CSG_Shapes(*args))

    def Create(self, *args):
        return _saga_api.CSG_Shapes_Create(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_Shapes

    def Destroy(self):
        return _saga_api.CSG_Shapes_Destroy(self)

    def Get_ObjectType(self):
        return _saga_api.CSG_Shapes_Get_ObjectType(self)

    def Assign(self, pObject, bProgress=False):
        return _saga_api.CSG_Shapes_Assign(self, pObject, bProgress)

    def Save(self, *args):
        return _saga_api.CSG_Shapes_Save(self, *args)

    def is_Valid(self):
        return _saga_api.CSG_Shapes_is_Valid(self)

    def Get_Type(self):
        return _saga_api.CSG_Shapes_Get_Type(self)

    def Get_Vertex_Type(self):
        return _saga_api.CSG_Shapes_Get_Vertex_Type(self)

    def Get_Extent(self):
        return _saga_api.CSG_Shapes_Get_Extent(self)

    def Get_ZMin(self):
        return _saga_api.CSG_Shapes_Get_ZMin(self)

    def Get_ZMax(self):
        return _saga_api.CSG_Shapes_Get_ZMax(self)

    def Get_MMin(self):
        return _saga_api.CSG_Shapes_Get_MMin(self)

    def Get_MMax(self):
        return _saga_api.CSG_Shapes_Get_MMax(self)

    def Add_Shape(self, pCopy=None, mCopy=SHAPE_COPY):
        return _saga_api.CSG_Shapes_Add_Shape(self, pCopy, mCopy)

    def Del_Shape(self, *args):
        return _saga_api.CSG_Shapes_Del_Shape(self, *args)

    def Del_Shapes(self):
        return _saga_api.CSG_Shapes_Del_Shapes(self)

    def Get_Shape(self, *args):
        return _saga_api.CSG_Shapes_Get_Shape(self, *args)

    def Get_Shape_byIndex(self, Index):
        return _saga_api.CSG_Shapes_Get_Shape_byIndex(self, Index)

    def Make_Clean(self):
        return _saga_api.CSG_Shapes_Make_Clean(self)

    def Get_Selection_Extent(self):
        return _saga_api.CSG_Shapes_Get_Selection_Extent(self)

    def Select(self, *args):
        return _saga_api.CSG_Shapes_Select(self, *args)

# Register CSG_Shapes in _saga_api:
_saga_api.CSG_Shapes_swigregister(CSG_Shapes)

def SG_Create_Shapes(*args):
    return _saga_api.SG_Create_Shapes(*args)

def SG_Shapes_Set_File_Format_Default(Format):
    return _saga_api.SG_Shapes_Set_File_Format_Default(Format)

def SG_Shapes_Get_File_Format_Default():
    return _saga_api.SG_Shapes_Get_File_Format_Default()

def SG_Shapes_Get_File_Extension_Default():
    return _saga_api.SG_Shapes_Get_File_Extension_Default()
class CSG_PRQuadTree_Item(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def is_Leaf(self):
        return _saga_api.CSG_PRQuadTree_Item_is_Leaf(self)

    def is_Node(self):
        return _saga_api.CSG_PRQuadTree_Item_is_Node(self)

    def has_Statistics(self):
        return _saga_api.CSG_PRQuadTree_Item_has_Statistics(self)

    def Get_Extent(self):
        return _saga_api.CSG_PRQuadTree_Item_Get_Extent(self)

    def Get_xMin(self):
        return _saga_api.CSG_PRQuadTree_Item_Get_xMin(self)

    def Get_xCenter(self):
        return _saga_api.CSG_PRQuadTree_Item_Get_xCenter(self)

    def Get_xMax(self):
        return _saga_api.CSG_PRQuadTree_Item_Get_xMax(self)

    def Get_yMin(self):
        return _saga_api.CSG_PRQuadTree_Item_Get_yMin(self)

    def Get_yCenter(self):
        return _saga_api.CSG_PRQuadTree_Item_Get_yCenter(self)

    def Get_yMax(self):
        return _saga_api.CSG_PRQuadTree_Item_Get_yMax(self)

    def Get_Size(self):
        return _saga_api.CSG_PRQuadTree_Item_Get_Size(self)

    def Contains(self, *args):
        return _saga_api.CSG_PRQuadTree_Item_Contains(self, *args)

    def asLeaf(self):
        return _saga_api.CSG_PRQuadTree_Item_asLeaf(self)

    def asNode(self):
        return _saga_api.CSG_PRQuadTree_Item_asNode(self)

# Register CSG_PRQuadTree_Item in _saga_api:
_saga_api.CSG_PRQuadTree_Item_swigregister(CSG_PRQuadTree_Item)
class CSG_PRQuadTree_Leaf(CSG_PRQuadTree_Item):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def is_Leaf(self):
        return _saga_api.CSG_PRQuadTree_Leaf_is_Leaf(self)

    def Get_Point(self):
        return _saga_api.CSG_PRQuadTree_Leaf_Get_Point(self)

    def Get_X(self):
        return _saga_api.CSG_PRQuadTree_Leaf_Get_X(self)

    def Get_Y(self):
        return _saga_api.CSG_PRQuadTree_Leaf_Get_Y(self)

    def Get_Z(self):
        return _saga_api.CSG_PRQuadTree_Leaf_Get_Z(self)

# Register CSG_PRQuadTree_Leaf in _saga_api:
_saga_api.CSG_PRQuadTree_Leaf_swigregister(CSG_PRQuadTree_Leaf)
class CSG_PRQuadTree_Leaf_List(CSG_PRQuadTree_Leaf):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def has_Statistics(self):
        return _saga_api.CSG_PRQuadTree_Leaf_List_has_Statistics(self)

    def Get_Count(self):
        return _saga_api.CSG_PRQuadTree_Leaf_List_Get_Count(self)

    def Get_Value(self, i):
        return _saga_api.CSG_PRQuadTree_Leaf_List_Get_Value(self, i)

    def Get_Minimum(self):
        return _saga_api.CSG_PRQuadTree_Leaf_List_Get_Minimum(self)

    def Get_Maximum(self):
        return _saga_api.CSG_PRQuadTree_Leaf_List_Get_Maximum(self)

    def Get_Range(self):
        return _saga_api.CSG_PRQuadTree_Leaf_List_Get_Range(self)

    def Get_Sum(self):
        return _saga_api.CSG_PRQuadTree_Leaf_List_Get_Sum(self)

    def Get_Mean(self):
        return _saga_api.CSG_PRQuadTree_Leaf_List_Get_Mean(self)

    def Get_Variance(self):
        return _saga_api.CSG_PRQuadTree_Leaf_List_Get_Variance(self)

    def Get_StdDev(self):
        return _saga_api.CSG_PRQuadTree_Leaf_List_Get_StdDev(self)

# Register CSG_PRQuadTree_Leaf_List in _saga_api:
_saga_api.CSG_PRQuadTree_Leaf_List_swigregister(CSG_PRQuadTree_Leaf_List)
class CSG_PRQuadTree_Node(CSG_PRQuadTree_Item):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def is_Node(self):
        return _saga_api.CSG_PRQuadTree_Node_is_Node(self)

    def Get_Child(self, *args):
        return _saga_api.CSG_PRQuadTree_Node_Get_Child(self, *args)

    def Add_Point(self, x, y, z):
        return _saga_api.CSG_PRQuadTree_Node_Add_Point(self, x, y, z)

    def Get_X(self):
        return _saga_api.CSG_PRQuadTree_Node_Get_X(self)

    def Get_Y(self):
        return _saga_api.CSG_PRQuadTree_Node_Get_Y(self)

    def Get_Z(self):
        return _saga_api.CSG_PRQuadTree_Node_Get_Z(self)

# Register CSG_PRQuadTree_Node in _saga_api:
_saga_api.CSG_PRQuadTree_Node_swigregister(CSG_PRQuadTree_Node)
class CSG_PRQuadTree_Node_Statistics(CSG_PRQuadTree_Node):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def has_Statistics(self):
        return _saga_api.CSG_PRQuadTree_Node_Statistics_has_Statistics(self)

    def Get_X(self):
        return _saga_api.CSG_PRQuadTree_Node_Statistics_Get_X(self)

    def Get_Y(self):
        return _saga_api.CSG_PRQuadTree_Node_Statistics_Get_Y(self)

    def Get_Z(self):
        return _saga_api.CSG_PRQuadTree_Node_Statistics_Get_Z(self)

# Register CSG_PRQuadTree_Node_Statistics in _saga_api:
_saga_api.CSG_PRQuadTree_Node_Statistics_swigregister(CSG_PRQuadTree_Node_Statistics)
class CSG_PRQuadTree(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_PRQuadTree

    def __init__(self, *args):
        _saga_api.CSG_PRQuadTree_swiginit(self, _saga_api.new_CSG_PRQuadTree(*args))

    def Create(self, *args):
        return _saga_api.CSG_PRQuadTree_Create(self, *args)

    def Destroy(self):
        return _saga_api.CSG_PRQuadTree_Destroy(self)

    def Add_Point(self, *args):
        return _saga_api.CSG_PRQuadTree_Add_Point(self, *args)

    def Get_Point_Count(self):
        return _saga_api.CSG_PRQuadTree_Get_Point_Count(self)

    def Get_Root(self):
        return _saga_api.CSG_PRQuadTree_Get_Root(self)

    def Get_Root_Pointer(self):
        return _saga_api.CSG_PRQuadTree_Get_Root_Pointer(self)

    def is_Okay(self):
        return _saga_api.CSG_PRQuadTree_is_Okay(self)

    def is_Polar(self):
        return _saga_api.CSG_PRQuadTree_is_Polar(self)

    def Set_Polar_Search(self, bOn):
        return _saga_api.CSG_PRQuadTree_Set_Polar_Search(self, bOn)

    def Get_Nearest_Leaf(self, *args):
        return _saga_api.CSG_PRQuadTree_Get_Nearest_Leaf(self, *args)

    def Get_Nearest_Point(self, *args):
        return _saga_api.CSG_PRQuadTree_Get_Nearest_Point(self, *args)

    def Get_Nearest_Points(self, *args):
        return _saga_api.CSG_PRQuadTree_Get_Nearest_Points(self, *args)

    def Select_Nearest_Points(self, *args):
        return _saga_api.CSG_PRQuadTree_Select_Nearest_Points(self, *args)

    def Get_Selected_Count(self):
        return _saga_api.CSG_PRQuadTree_Get_Selected_Count(self)

    def Get_Selected_Leaf(self, i):
        return _saga_api.CSG_PRQuadTree_Get_Selected_Leaf(self, i)

    def Get_Selected_Z(self, i):
        return _saga_api.CSG_PRQuadTree_Get_Selected_Z(self, i)

    def Get_Selected_Distance(self, i):
        return _saga_api.CSG_PRQuadTree_Get_Selected_Distance(self, i)

    def Get_Selected_Point(self, i, x, y, z):
        return _saga_api.CSG_PRQuadTree_Get_Selected_Point(self, i, x, y, z)

# Register CSG_PRQuadTree in _saga_api:
_saga_api.CSG_PRQuadTree_swigregister(CSG_PRQuadTree)
class CSG_KDTree(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_KDTree

    @staticmethod
    def Get_Version():
        return _saga_api.CSG_KDTree_Get_Version()

    def Destroy(self):
        return _saga_api.CSG_KDTree_Destroy(self)

    def is_Okay(self):
        return _saga_api.CSG_KDTree_is_Okay(self)

    def Get_Match_Count(self):
        return _saga_api.CSG_KDTree_Get_Match_Count(self)

    def Get_Match_Index(self, i):
        return _saga_api.CSG_KDTree_Get_Match_Index(self, i)

    def Get_Match_Distance(self, i):
        return _saga_api.CSG_KDTree_Get_Match_Distance(self, i)

    def Get_Match_Shape(self, i):
        return _saga_api.CSG_KDTree_Get_Match_Shape(self, i)

    def Get_Point_Count(self):
        return _saga_api.CSG_KDTree_Get_Point_Count(self)

    def Get_Point(self, *args):
        return _saga_api.CSG_KDTree_Get_Point(self, *args)

    def Get_Point_Value(self, *args):
        return _saga_api.CSG_KDTree_Get_Point_Value(self, *args)

# Register CSG_KDTree in _saga_api:
_saga_api.CSG_KDTree_swigregister(CSG_KDTree)
class CSG_KDTree_2D(CSG_KDTree):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_KDTree_2D

    def __init__(self, *args):
        _saga_api.CSG_KDTree_2D_swiginit(self, _saga_api.new_CSG_KDTree_2D(*args))

    def Create(self, *args):
        return _saga_api.CSG_KDTree_2D_Create(self, *args)

    def Destroy(self):
        return _saga_api.CSG_KDTree_2D_Destroy(self)

    def Get_Point_Value(self, i):
        return _saga_api.CSG_KDTree_2D_Get_Point_Value(self, i)

    def Get_Nearest_Points(self, *args):
        return _saga_api.CSG_KDTree_2D_Get_Nearest_Points(self, *args)

    def Get_Nearest_Point(self, *args):
        return _saga_api.CSG_KDTree_2D_Get_Nearest_Point(self, *args)

    def Get_Nearest_Value(self, *args):
        return _saga_api.CSG_KDTree_2D_Get_Nearest_Value(self, *args)

    def Get_Nearest_Shape(self, *args):
        return _saga_api.CSG_KDTree_2D_Get_Nearest_Shape(self, *args)

    def Get_Duplicates(self, *args):
        return _saga_api.CSG_KDTree_2D_Get_Duplicates(self, *args)

# Register CSG_KDTree_2D in _saga_api:
_saga_api.CSG_KDTree_2D_swigregister(CSG_KDTree_2D)
class CSG_KDTree_3D(CSG_KDTree):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_KDTree_3D

    def __init__(self, *args):
        _saga_api.CSG_KDTree_3D_swiginit(self, _saga_api.new_CSG_KDTree_3D(*args))

    def Create(self, *args):
        return _saga_api.CSG_KDTree_3D_Create(self, *args)

    def Destroy(self):
        return _saga_api.CSG_KDTree_3D_Destroy(self)

    def Get_Point_Value(self, i):
        return _saga_api.CSG_KDTree_3D_Get_Point_Value(self, i)

    def Get_Nearest_Points(self, *args):
        return _saga_api.CSG_KDTree_3D_Get_Nearest_Points(self, *args)

    def Get_Nearest_Point(self, *args):
        return _saga_api.CSG_KDTree_3D_Get_Nearest_Point(self, *args)

    def Get_Nearest_Value(self, *args):
        return _saga_api.CSG_KDTree_3D_Get_Nearest_Value(self, *args)

    def Get_Nearest_Shape(self, *args):
        return _saga_api.CSG_KDTree_3D_Get_Nearest_Shape(self, *args)

    def Get_Duplicates(self, *args):
        return _saga_api.CSG_KDTree_3D_Get_Duplicates(self, *args)

# Register CSG_KDTree_3D in _saga_api:
_saga_api.CSG_KDTree_3D_swigregister(CSG_KDTree_3D)
class CSG_Parameters_Point_Search(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Parameters_Point_Search_swiginit(self, _saga_api.new_CSG_Parameters_Point_Search())
    __swig_destroy__ = _saga_api.delete_CSG_Parameters_Point_Search

    def Create(self, *args):
        return _saga_api.CSG_Parameters_Point_Search_Create(self, *args)

    def On_Parameter_Changed(self, pParameters, pParameter):
        return _saga_api.CSG_Parameters_Point_Search_On_Parameter_Changed(self, pParameters, pParameter)

    def On_Parameters_Enable(self, pParameters, pParameter):
        return _saga_api.CSG_Parameters_Point_Search_On_Parameters_Enable(self, pParameters, pParameter)

    def Do_Use_All(self, *args):
        return _saga_api.CSG_Parameters_Point_Search_Do_Use_All(self, *args)

    def Get_Min_Points(self):
        return _saga_api.CSG_Parameters_Point_Search_Get_Min_Points(self)

    def Get_Max_Points(self):
        return _saga_api.CSG_Parameters_Point_Search_Get_Max_Points(self)

    def Get_Radius(self):
        return _saga_api.CSG_Parameters_Point_Search_Get_Radius(self)

# Register CSG_Parameters_Point_Search in _saga_api:
_saga_api.CSG_Parameters_Point_Search_swigregister(CSG_Parameters_Point_Search)
class CSG_Parameters_Point_Search_KDTree_2D(CSG_Parameters_Point_Search):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Parameters_Point_Search_KDTree_2D_swiginit(self, _saga_api.new_CSG_Parameters_Point_Search_KDTree_2D())
    __swig_destroy__ = _saga_api.delete_CSG_Parameters_Point_Search_KDTree_2D

    def Initialize(self, pPoints, zField=-1):
        return _saga_api.CSG_Parameters_Point_Search_KDTree_2D_Initialize(self, pPoints, zField)

    def Finalize(self):
        return _saga_api.CSG_Parameters_Point_Search_KDTree_2D_Finalize(self)

    def Set_Location(self, *args):
        return _saga_api.CSG_Parameters_Point_Search_KDTree_2D_Set_Location(self, *args)

    def Get_Count(self):
        return _saga_api.CSG_Parameters_Point_Search_KDTree_2D_Get_Count(self)

    def Get_Point(self, Index, x, y, z):
        return _saga_api.CSG_Parameters_Point_Search_KDTree_2D_Get_Point(self, Index, x, y, z)

    def Get_Points(self, *args):
        return _saga_api.CSG_Parameters_Point_Search_KDTree_2D_Get_Points(self, *args)

# Register CSG_Parameters_Point_Search_KDTree_2D in _saga_api:
_saga_api.CSG_Parameters_Point_Search_KDTree_2D_swigregister(CSG_Parameters_Point_Search_KDTree_2D)

def SG_Shape_Get_Intersection(pSubject, pClip, pSolution=None):
    return _saga_api.SG_Shape_Get_Intersection(pSubject, pClip, pSolution)

def SG_Shape_Get_Difference(pSubject, pClip, pSolution=None):
    return _saga_api.SG_Shape_Get_Difference(pSubject, pClip, pSolution)

def SG_Shape_Get_ExclusiveOr(pSubject, pClip, pSolution=None):
    return _saga_api.SG_Shape_Get_ExclusiveOr(pSubject, pClip, pSolution)

def SG_Shape_Get_Union(pSubject, pClip, pSolution=None):
    return _saga_api.SG_Shape_Get_Union(pSubject, pClip, pSolution)

def SG_Shape_Get_Dissolve(pSubject, pSolution=None):
    return _saga_api.SG_Shape_Get_Dissolve(pSubject, pSolution)
SG_LINE_JOINTYPE_Square = _saga_api.SG_LINE_JOINTYPE_Square
SG_LINE_JOINTYPE_Bevel = _saga_api.SG_LINE_JOINTYPE_Bevel
SG_LINE_JOINTYPE_Round = _saga_api.SG_LINE_JOINTYPE_Round
SG_LINE_JOINTYPE_Miter = _saga_api.SG_LINE_JOINTYPE_Miter
SG_LINE_ENDTYPE_Polygon = _saga_api.SG_LINE_ENDTYPE_Polygon
SG_LINE_ENDTYPE_Joined = _saga_api.SG_LINE_ENDTYPE_Joined
SG_LINE_ENDTYPE_Butt = _saga_api.SG_LINE_ENDTYPE_Butt
SG_LINE_ENDTYPE_Square = _saga_api.SG_LINE_ENDTYPE_Square
SG_LINE_ENDTYPE_Round = _saga_api.SG_LINE_ENDTYPE_Round

def SG_Shape_Get_Offset(*args):
    return _saga_api.SG_Shape_Get_Offset(*args)

def SG_Clipper_Get_Version():
    return _saga_api.SG_Clipper_Get_Version()
SG_OGIS_BYTEORDER_XDR = _saga_api.SG_OGIS_BYTEORDER_XDR
SG_OGIS_BYTEORDER_NDR = _saga_api.SG_OGIS_BYTEORDER_NDR
SG_OGIS_TYPE_Undefined = _saga_api.SG_OGIS_TYPE_Undefined
SG_OGIS_TYPE_Point = _saga_api.SG_OGIS_TYPE_Point
SG_OGIS_TYPE_LineString = _saga_api.SG_OGIS_TYPE_LineString
SG_OGIS_TYPE_Polygon = _saga_api.SG_OGIS_TYPE_Polygon
SG_OGIS_TYPE_MultiPoint = _saga_api.SG_OGIS_TYPE_MultiPoint
SG_OGIS_TYPE_MultiLineString = _saga_api.SG_OGIS_TYPE_MultiLineString
SG_OGIS_TYPE_MultiPolygon = _saga_api.SG_OGIS_TYPE_MultiPolygon
SG_OGIS_TYPE_GeometryCollection = _saga_api.SG_OGIS_TYPE_GeometryCollection
SG_OGIS_TYPE_PolyhedralSurface = _saga_api.SG_OGIS_TYPE_PolyhedralSurface
SG_OGIS_TYPE_TIN = _saga_api.SG_OGIS_TYPE_TIN
SG_OGIS_TYPE_Triangle = _saga_api.SG_OGIS_TYPE_Triangle
SG_OGIS_TYPE_PointZ = _saga_api.SG_OGIS_TYPE_PointZ
SG_OGIS_TYPE_LineStringZ = _saga_api.SG_OGIS_TYPE_LineStringZ
SG_OGIS_TYPE_PolygonZ = _saga_api.SG_OGIS_TYPE_PolygonZ
SG_OGIS_TYPE_MultiPointZ = _saga_api.SG_OGIS_TYPE_MultiPointZ
SG_OGIS_TYPE_MultiLineStringZ = _saga_api.SG_OGIS_TYPE_MultiLineStringZ
SG_OGIS_TYPE_MultiPolygonZ = _saga_api.SG_OGIS_TYPE_MultiPolygonZ
SG_OGIS_TYPE_GeometryCollectionZ = _saga_api.SG_OGIS_TYPE_GeometryCollectionZ
SG_OGIS_TYPE_PolyhedralSurfaceZ = _saga_api.SG_OGIS_TYPE_PolyhedralSurfaceZ
SG_OGIS_TYPE_TINZ = _saga_api.SG_OGIS_TYPE_TINZ
SG_OGIS_TYPE_TriangleZ = _saga_api.SG_OGIS_TYPE_TriangleZ
SG_OGIS_TYPE_PointM = _saga_api.SG_OGIS_TYPE_PointM
SG_OGIS_TYPE_LineStringM = _saga_api.SG_OGIS_TYPE_LineStringM
SG_OGIS_TYPE_PolygonM = _saga_api.SG_OGIS_TYPE_PolygonM
SG_OGIS_TYPE_MultiPointM = _saga_api.SG_OGIS_TYPE_MultiPointM
SG_OGIS_TYPE_MultiLineStringM = _saga_api.SG_OGIS_TYPE_MultiLineStringM
SG_OGIS_TYPE_MultiPolygonM = _saga_api.SG_OGIS_TYPE_MultiPolygonM
SG_OGIS_TYPE_GeometryCollectionM = _saga_api.SG_OGIS_TYPE_GeometryCollectionM
SG_OGIS_TYPE_PolyhedralSurfaceM = _saga_api.SG_OGIS_TYPE_PolyhedralSurfaceM
SG_OGIS_TYPE_TINM = _saga_api.SG_OGIS_TYPE_TINM
SG_OGIS_TYPE_TriangleM = _saga_api.SG_OGIS_TYPE_TriangleM
SG_OGIS_TYPE_PointZM = _saga_api.SG_OGIS_TYPE_PointZM
SG_OGIS_TYPE_LineStringZM = _saga_api.SG_OGIS_TYPE_LineStringZM
SG_OGIS_TYPE_PolygonZM = _saga_api.SG_OGIS_TYPE_PolygonZM
SG_OGIS_TYPE_MultiPointZM = _saga_api.SG_OGIS_TYPE_MultiPointZM
SG_OGIS_TYPE_MultiLineStringZM = _saga_api.SG_OGIS_TYPE_MultiLineStringZM
SG_OGIS_TYPE_MultiPolygonZM = _saga_api.SG_OGIS_TYPE_MultiPolygonZM
SG_OGIS_TYPE_GeometryCollectionZM = _saga_api.SG_OGIS_TYPE_GeometryCollectionZM
SG_OGIS_TYPE_PolyhedralSurfaceZM = _saga_api.SG_OGIS_TYPE_PolyhedralSurfaceZM
SG_OGIS_TYPE_TINZM = _saga_api.SG_OGIS_TYPE_TINZM
SG_OGIS_TYPE_TriangleZM = _saga_api.SG_OGIS_TYPE_TriangleZM
class CSG_Shapes_OGIS_Converter(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Shapes_OGIS_Converter_swiginit(self, _saga_api.new_CSG_Shapes_OGIS_Converter())

    @staticmethod
    def from_WKText(Text, pShape):
        return _saga_api.CSG_Shapes_OGIS_Converter_from_WKText(Text, pShape)

    @staticmethod
    def to_WKText(pShape, Text):
        return _saga_api.CSG_Shapes_OGIS_Converter_to_WKText(pShape, Text)

    @staticmethod
    def from_WKBinary(Bytes, pShape):
        return _saga_api.CSG_Shapes_OGIS_Converter_from_WKBinary(Bytes, pShape)

    @staticmethod
    def to_WKBinary(pShape, Bytes):
        return _saga_api.CSG_Shapes_OGIS_Converter_to_WKBinary(pShape, Bytes)

    @staticmethod
    def from_ShapeType(*args):
        return _saga_api.CSG_Shapes_OGIS_Converter_from_ShapeType(*args)

    @staticmethod
    def to_ShapeType(*args):
        return _saga_api.CSG_Shapes_OGIS_Converter_to_ShapeType(*args)

    @staticmethod
    def to_VertexType(*args):
        return _saga_api.CSG_Shapes_OGIS_Converter_to_VertexType(*args)

    @staticmethod
    def Type_asWKText(Type):
        return _saga_api.CSG_Shapes_OGIS_Converter_Type_asWKText(Type)

    @staticmethod
    def Type_asWKBinary(Type):
        return _saga_api.CSG_Shapes_OGIS_Converter_Type_asWKBinary(Type)
    __swig_destroy__ = _saga_api.delete_CSG_Shapes_OGIS_Converter

# Register CSG_Shapes_OGIS_Converter in _saga_api:
_saga_api.CSG_Shapes_OGIS_Converter_swigregister(CSG_Shapes_OGIS_Converter)
class CSG_Grid_OGIS_Converter(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Grid_OGIS_Converter_swiginit(self, _saga_api.new_CSG_Grid_OGIS_Converter())

    @staticmethod
    def from_WKBinary(Bytes, pGrid):
        return _saga_api.CSG_Grid_OGIS_Converter_from_WKBinary(Bytes, pGrid)

    @staticmethod
    def to_WKBinary(Bytes, pGrid, SRID=-1):
        return _saga_api.CSG_Grid_OGIS_Converter_to_WKBinary(Bytes, pGrid, SRID)
    __swig_destroy__ = _saga_api.delete_CSG_Grid_OGIS_Converter

# Register CSG_Grid_OGIS_Converter in _saga_api:
_saga_api.CSG_Grid_OGIS_Converter_swigregister(CSG_Grid_OGIS_Converter)
class CSG_TIN_Node(CSG_Table_Record):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_ID(self):
        return _saga_api.CSG_TIN_Node_Get_ID(self)

    def Get_Point(self):
        return _saga_api.CSG_TIN_Node_Get_Point(self)

    def Get_X(self):
        return _saga_api.CSG_TIN_Node_Get_X(self)

    def Get_Y(self):
        return _saga_api.CSG_TIN_Node_Get_Y(self)

    def Get_Neighbor_Count(self):
        return _saga_api.CSG_TIN_Node_Get_Neighbor_Count(self)

    def Get_Neighbor(self, iNeighbor):
        return _saga_api.CSG_TIN_Node_Get_Neighbor(self, iNeighbor)

    def Get_Gradient(self, iNeighbor, iField):
        return _saga_api.CSG_TIN_Node_Get_Gradient(self, iNeighbor, iField)

    def Get_Triangle_Count(self):
        return _saga_api.CSG_TIN_Node_Get_Triangle_Count(self)

    def Get_Triangle(self, iTriangle):
        return _saga_api.CSG_TIN_Node_Get_Triangle(self, iTriangle)

    def Get_Polygon(self, Points):
        return _saga_api.CSG_TIN_Node_Get_Polygon(self, Points)

    def Get_Polygon_Area(self):
        return _saga_api.CSG_TIN_Node_Get_Polygon_Area(self)

# Register CSG_TIN_Node in _saga_api:
_saga_api.CSG_TIN_Node_swigregister(CSG_TIN_Node)
class CSG_TIN_Edge(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Node(self, iNode):
        return _saga_api.CSG_TIN_Edge_Get_Node(self, iNode)

# Register CSG_TIN_Edge in _saga_api:
_saga_api.CSG_TIN_Edge_swigregister(CSG_TIN_Edge)
class CSG_TIN_Triangle(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Node(self, iNode):
        return _saga_api.CSG_TIN_Triangle_Get_Node(self, iNode)

    def Get_Extent(self):
        return _saga_api.CSG_TIN_Triangle_Get_Extent(self)

    def Get_Area(self):
        return _saga_api.CSG_TIN_Triangle_Get_Area(self)

    def is_Containing(self, *args):
        return _saga_api.CSG_TIN_Triangle_is_Containing(self, *args)

    def Get_Value(self, *args):
        return _saga_api.CSG_TIN_Triangle_Get_Value(self, *args)

    def Get_Gradient(self, zField, Decline, Azimuth):
        return _saga_api.CSG_TIN_Triangle_Get_Gradient(self, zField, Decline, Azimuth)

    def Get_CircumCircle(self, Point, Radius):
        return _saga_api.CSG_TIN_Triangle_Get_CircumCircle(self, Point, Radius)

    def Get_CircumCircle_Radius(self):
        return _saga_api.CSG_TIN_Triangle_Get_CircumCircle_Radius(self)

    def Get_CircumCircle_Point(self):
        return _saga_api.CSG_TIN_Triangle_Get_CircumCircle_Point(self)

# Register CSG_TIN_Triangle in _saga_api:
_saga_api.CSG_TIN_Triangle_swigregister(CSG_TIN_Triangle)
class CSG_TIN(CSG_Table):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_TIN_swiginit(self, _saga_api.new_CSG_TIN(*args))

    def Create(self, *args):
        return _saga_api.CSG_TIN_Create(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_TIN

    def Destroy(self):
        return _saga_api.CSG_TIN_Destroy(self)

    def Get_ObjectType(self):
        return _saga_api.CSG_TIN_Get_ObjectType(self)

    def Save(self, *args):
        return _saga_api.CSG_TIN_Save(self, *args)

    def Assign(self, pObject, bProgress=False):
        return _saga_api.CSG_TIN_Assign(self, pObject, bProgress)

    def is_Valid(self):
        return _saga_api.CSG_TIN_is_Valid(self)

    def Get_Extent(self):
        return _saga_api.CSG_TIN_Get_Extent(self)

    def Triangulate(self, bOn=True, bUpdate=False):
        return _saga_api.CSG_TIN_Triangulate(self, bOn, bUpdate)

    def Add_Node(self, Point, pRecord=None, bUpdateNow=False):
        return _saga_api.CSG_TIN_Add_Node(self, Point, pRecord, bUpdateNow)

    def Del_Node(self, Index, bUpdateNow):
        return _saga_api.CSG_TIN_Del_Node(self, Index, bUpdateNow)

    def Get_Node_Count(self):
        return _saga_api.CSG_TIN_Get_Node_Count(self)

    def Get_Node(self, Index):
        return _saga_api.CSG_TIN_Get_Node(self, Index)

    def Get_Edge_Count(self):
        return _saga_api.CSG_TIN_Get_Edge_Count(self)

    def Get_Edge(self, Index):
        return _saga_api.CSG_TIN_Get_Edge(self, Index)

    def Get_Triangle_Count(self):
        return _saga_api.CSG_TIN_Get_Triangle_Count(self)

    def Get_Triangle(self, Index):
        return _saga_api.CSG_TIN_Get_Triangle(self, Index)

    def Add_Triangle(self, *args):
        return _saga_api.CSG_TIN_Add_Triangle(self, *args)

# Register CSG_TIN in _saga_api:
_saga_api.CSG_TIN_swigregister(CSG_TIN)

def SG_Create_TIN(*args):
    return _saga_api.SG_Create_TIN(*args)
POINTCLOUD_FILE_FORMAT_Undefined = _saga_api.POINTCLOUD_FILE_FORMAT_Undefined
POINTCLOUD_FILE_FORMAT_Normal = _saga_api.POINTCLOUD_FILE_FORMAT_Normal
POINTCLOUD_FILE_FORMAT_Compressed = _saga_api.POINTCLOUD_FILE_FORMAT_Compressed
class CSG_PointCloud(CSG_Shapes):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _saga_api.CSG_PointCloud_swiginit(self, _saga_api.new_CSG_PointCloud(*args))

    def Create(self, *args):
        return _saga_api.CSG_PointCloud_Create(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_PointCloud

    def Destroy(self):
        return _saga_api.CSG_PointCloud_Destroy(self)

    def Get_ObjectType(self):
        return _saga_api.CSG_PointCloud_Get_ObjectType(self)

    def Assign(self, pSource, bProgress=False):
        return _saga_api.CSG_PointCloud_Assign(self, pSource, bProgress)

    def Save(self, *args):
        return _saga_api.CSG_PointCloud_Save(self, *args)

    def Set_XYZ_Precision(self, bDouble):
        return _saga_api.CSG_PointCloud_Set_XYZ_Precision(self, bDouble)

    @staticmethod
    def Get_Header_Content(FileName, Header):
        return _saga_api.CSG_PointCloud_Get_Header_Content(FileName, Header)

    def is_Valid(self):
        return _saga_api.CSG_PointCloud_is_Valid(self)

    def is_Compatible(self, pPointCloud):
        return _saga_api.CSG_PointCloud_is_Compatible(self, pPointCloud)

    def Add_Field(self, Name, Type, Field=-1):
        return _saga_api.CSG_PointCloud_Add_Field(self, Name, Type, Field)

    def Del_Field(self, Field):
        return _saga_api.CSG_PointCloud_Del_Field(self, Field)

    def Mov_Field(self, Field, Position):
        return _saga_api.CSG_PointCloud_Mov_Field(self, Field, Position)

    def Get_Field_Length(self, Field, Encoding=SG_FILE_ENCODING_UNDEFINED):
        return _saga_api.CSG_PointCloud_Get_Field_Length(self, Field, Encoding)

    def Set_Field_Type(self, Field, Type):
        return _saga_api.CSG_PointCloud_Set_Field_Type(self, Field, Type)

    def Get_Attribute_Count(self):
        return _saga_api.CSG_PointCloud_Get_Attribute_Count(self)

    def Get_Attribute_Name(self, Field):
        return _saga_api.CSG_PointCloud_Get_Attribute_Name(self, Field)

    def Get_Attribute_Type(self, Field):
        return _saga_api.CSG_PointCloud_Get_Attribute_Type(self, Field)

    def Get_Attribute_Length(self, Field, Encoding=SG_FILE_ENCODING_UNDEFINED):
        return _saga_api.CSG_PointCloud_Get_Attribute_Length(self, Field, Encoding)

    def Add_Point(self, *args):
        return _saga_api.CSG_PointCloud_Add_Point(self, *args)

    def Del_Point(self, Index):
        return _saga_api.CSG_PointCloud_Del_Point(self, Index)

    def Del_Points(self):
        return _saga_api.CSG_PointCloud_Del_Points(self)

    def Set_Cursor(self, Index):
        return _saga_api.CSG_PointCloud_Set_Cursor(self, Index)

    def Get_X(self, *args):
        return _saga_api.CSG_PointCloud_Get_X(self, *args)

    def Get_Y(self, *args):
        return _saga_api.CSG_PointCloud_Get_Y(self, *args)

    def Get_Z(self, *args):
        return _saga_api.CSG_PointCloud_Get_Z(self, *args)

    def Set_NoData(self, *args):
        return _saga_api.CSG_PointCloud_Set_NoData(self, *args)

    def is_NoData(self, *args):
        return _saga_api.CSG_PointCloud_is_NoData(self, *args)

    def Set_Value(self, *args):
        return _saga_api.CSG_PointCloud_Set_Value(self, *args)

    def Get_Value(self, *args):
        return _saga_api.CSG_PointCloud_Get_Value(self, *args)

    def Set_Attribute(self, *args):
        return _saga_api.CSG_PointCloud_Set_Attribute(self, *args)

    def Get_Attribute(self, *args):
        return _saga_api.CSG_PointCloud_Get_Attribute(self, *args)

    def Get_Point(self, *args):
        return _saga_api.CSG_PointCloud_Get_Point(self, *args)

    def Set_Point(self, *args):
        return _saga_api.CSG_PointCloud_Set_Point(self, *args)

    def Set_Modified(self, bModified=True):
        return _saga_api.CSG_PointCloud_Set_Modified(self, bModified)

    def Get_Record(self, Index):
        return _saga_api.CSG_PointCloud_Get_Record(self, Index)

    def Get_Shape(self, Point, Epsilon=0.):
        return _saga_api.CSG_PointCloud_Get_Shape(self, Point, Epsilon)

    def Del_Record(self, Index):
        return _saga_api.CSG_PointCloud_Del_Record(self, Index)

    def Del_Records(self):
        return _saga_api.CSG_PointCloud_Del_Records(self)

    def Del_Shapes(self):
        return _saga_api.CSG_PointCloud_Del_Shapes(self)

    def Ins_Record(self, Index, pCopy=None):
        return _saga_api.CSG_PointCloud_Ins_Record(self, Index, pCopy)

    def Add_Record(self, pCopy=None):
        return _saga_api.CSG_PointCloud_Add_Record(self, pCopy)

    def Add_Shape(self, pCopy=None, mCopy=SHAPE_COPY):
        return _saga_api.CSG_PointCloud_Add_Shape(self, pCopy, mCopy)

    def Del_Shape(self, *args):
        return _saga_api.CSG_PointCloud_Del_Shape(self, *args)

    def Select(self, *args):
        return _saga_api.CSG_PointCloud_Select(self, *args)

    def is_Selected(self, Index):
        return _saga_api.CSG_PointCloud_is_Selected(self, Index)

    def Del_Selection(self):
        return _saga_api.CSG_PointCloud_Del_Selection(self)

    def Inv_Selection(self):
        return _saga_api.CSG_PointCloud_Inv_Selection(self)

    def Get_Selection(self, Index=0):
        return _saga_api.CSG_PointCloud_Get_Selection(self, Index)

    def Get_Selection_Extent(self):
        return _saga_api.CSG_PointCloud_Get_Selection_Extent(self)

    def Sort(self, Index):
        return _saga_api.CSG_PointCloud_Sort(self, Index)

# Register CSG_PointCloud in _saga_api:
_saga_api.CSG_PointCloud_swigregister(CSG_PointCloud)

def SG_Create_PointCloud(*args):
    return _saga_api.SG_Create_PointCloud(*args)
PARAMETER_INPUT = _saga_api.PARAMETER_INPUT
PARAMETER_OUTPUT = _saga_api.PARAMETER_OUTPUT
PARAMETER_OPTIONAL = _saga_api.PARAMETER_OPTIONAL
PARAMETER_INFORMATION = _saga_api.PARAMETER_INFORMATION
PARAMETER_IGNORE_PROJECTION = _saga_api.PARAMETER_IGNORE_PROJECTION
PARAMETER_NOT_FOR_GUI = _saga_api.PARAMETER_NOT_FOR_GUI
PARAMETER_NOT_FOR_CMD = _saga_api.PARAMETER_NOT_FOR_CMD
PARAMETER_GUI_COLLAPSED = _saga_api.PARAMETER_GUI_COLLAPSED
PARAMETER_INPUT_OPTIONAL = _saga_api.PARAMETER_INPUT_OPTIONAL
PARAMETER_OUTPUT_OPTIONAL = _saga_api.PARAMETER_OUTPUT_OPTIONAL
PARAMETER_DESCRIPTION_NAME = _saga_api.PARAMETER_DESCRIPTION_NAME
PARAMETER_DESCRIPTION_TYPE = _saga_api.PARAMETER_DESCRIPTION_TYPE
PARAMETER_DESCRIPTION_OPTIONAL = _saga_api.PARAMETER_DESCRIPTION_OPTIONAL
PARAMETER_DESCRIPTION_PROPERTIES = _saga_api.PARAMETER_DESCRIPTION_PROPERTIES
PARAMETER_DESCRIPTION_TEXT = _saga_api.PARAMETER_DESCRIPTION_TEXT
PARAMETER_DESCRIPTION_ALL = _saga_api.PARAMETER_DESCRIPTION_ALL
PARAMETER_TYPE_Node = _saga_api.PARAMETER_TYPE_Node
PARAMETER_TYPE_Bool = _saga_api.PARAMETER_TYPE_Bool
PARAMETER_TYPE_Int = _saga_api.PARAMETER_TYPE_Int
PARAMETER_TYPE_Double = _saga_api.PARAMETER_TYPE_Double
PARAMETER_TYPE_Degree = _saga_api.PARAMETER_TYPE_Degree
PARAMETER_TYPE_Date = _saga_api.PARAMETER_TYPE_Date
PARAMETER_TYPE_Range = _saga_api.PARAMETER_TYPE_Range
PARAMETER_TYPE_Data_Type = _saga_api.PARAMETER_TYPE_Data_Type
PARAMETER_TYPE_Choice = _saga_api.PARAMETER_TYPE_Choice
PARAMETER_TYPE_Choices = _saga_api.PARAMETER_TYPE_Choices
PARAMETER_TYPE_String = _saga_api.PARAMETER_TYPE_String
PARAMETER_TYPE_Text = _saga_api.PARAMETER_TYPE_Text
PARAMETER_TYPE_FilePath = _saga_api.PARAMETER_TYPE_FilePath
PARAMETER_TYPE_Font = _saga_api.PARAMETER_TYPE_Font
PARAMETER_TYPE_Color = _saga_api.PARAMETER_TYPE_Color
PARAMETER_TYPE_Colors = _saga_api.PARAMETER_TYPE_Colors
PARAMETER_TYPE_FixedTable = _saga_api.PARAMETER_TYPE_FixedTable
PARAMETER_TYPE_Grid_System = _saga_api.PARAMETER_TYPE_Grid_System
PARAMETER_TYPE_Table_Field = _saga_api.PARAMETER_TYPE_Table_Field
PARAMETER_TYPE_Table_Fields = _saga_api.PARAMETER_TYPE_Table_Fields
PARAMETER_TYPE_PointCloud = _saga_api.PARAMETER_TYPE_PointCloud
PARAMETER_TYPE_Grid = _saga_api.PARAMETER_TYPE_Grid
PARAMETER_TYPE_Grids = _saga_api.PARAMETER_TYPE_Grids
PARAMETER_TYPE_Table = _saga_api.PARAMETER_TYPE_Table
PARAMETER_TYPE_Shapes = _saga_api.PARAMETER_TYPE_Shapes
PARAMETER_TYPE_TIN = _saga_api.PARAMETER_TYPE_TIN
PARAMETER_TYPE_Grid_List = _saga_api.PARAMETER_TYPE_Grid_List
PARAMETER_TYPE_Grids_List = _saga_api.PARAMETER_TYPE_Grids_List
PARAMETER_TYPE_Table_List = _saga_api.PARAMETER_TYPE_Table_List
PARAMETER_TYPE_Shapes_List = _saga_api.PARAMETER_TYPE_Shapes_List
PARAMETER_TYPE_TIN_List = _saga_api.PARAMETER_TYPE_TIN_List
PARAMETER_TYPE_PointCloud_List = _saga_api.PARAMETER_TYPE_PointCloud_List
PARAMETER_TYPE_DataObject_Output = _saga_api.PARAMETER_TYPE_DataObject_Output
PARAMETER_TYPE_Parameters = _saga_api.PARAMETER_TYPE_Parameters
PARAMETER_TYPE_Undefined = _saga_api.PARAMETER_TYPE_Undefined

def SG_Parameter_Type_Get_Name(Type):
    return _saga_api.SG_Parameter_Type_Get_Name(Type)

def SG_Parameter_Type_Get_Identifier(Type):
    return _saga_api.SG_Parameter_Type_Get_Identifier(Type)

def SG_Parameter_Type_Get_Type(Identifier):
    return _saga_api.SG_Parameter_Type_Get_Type(Identifier)
PARAMETER_CHECK_VALUES = _saga_api.PARAMETER_CHECK_VALUES
PARAMETER_CHECK_ENABLE = _saga_api.PARAMETER_CHECK_ENABLE
PARAMETER_CHECK_ALL = _saga_api.PARAMETER_CHECK_ALL
SG_PARAMETER_DATA_SET_FALSE = _saga_api.SG_PARAMETER_DATA_SET_FALSE
SG_PARAMETER_DATA_SET_TRUE = _saga_api.SG_PARAMETER_DATA_SET_TRUE
SG_PARAMETER_DATA_SET_CHANGED = _saga_api.SG_PARAMETER_DATA_SET_CHANGED
class CSG_Parameter(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def Get_Parameters(self):
        return _saga_api.CSG_Parameter_Get_Parameters(self)

    def Get_Parent(self):
        return _saga_api.CSG_Parameter_Get_Parent(self)

    def Get_Manager(self):
        return _saga_api.CSG_Parameter_Get_Manager(self)

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Get_Type(self)

    def Get_Type_Identifier(self):
        return _saga_api.CSG_Parameter_Get_Type_Identifier(self)

    def Get_Type_Name(self):
        return _saga_api.CSG_Parameter_Get_Type_Name(self)

    def Get_Identifier(self):
        return _saga_api.CSG_Parameter_Get_Identifier(self)

    def Cmp_Identifier(self, Identifier):
        return _saga_api.CSG_Parameter_Cmp_Identifier(self, Identifier)

    def Get_CmdID(self):
        return _saga_api.CSG_Parameter_Get_CmdID(self)

    def Set_Name(self, Name):
        return _saga_api.CSG_Parameter_Set_Name(self, Name)

    def Get_Name(self):
        return _saga_api.CSG_Parameter_Get_Name(self)

    def Set_Description(self, Description):
        return _saga_api.CSG_Parameter_Set_Description(self, Description)

    def Get_Description(self, *args):
        return _saga_api.CSG_Parameter_Get_Description(self, *args)

    def Set_Enabled(self, bEnabled=True):
        return _saga_api.CSG_Parameter_Set_Enabled(self, bEnabled)

    def is_Enabled(self, bCheckEnv=True):
        return _saga_api.CSG_Parameter_is_Enabled(self, bCheckEnv)

    def Set_Collapsed(self, bOn=True):
        return _saga_api.CSG_Parameter_Set_Collapsed(self, bOn)

    def is_Collapsed(self):
        return _saga_api.CSG_Parameter_is_Collapsed(self)

    def is_Valid(self):
        return _saga_api.CSG_Parameter_is_Valid(self)

    def is_Input(self):
        return _saga_api.CSG_Parameter_is_Input(self)

    def is_Output(self):
        return _saga_api.CSG_Parameter_is_Output(self)

    def is_Optional(self):
        return _saga_api.CSG_Parameter_is_Optional(self)

    def is_Information(self):
        return _saga_api.CSG_Parameter_is_Information(self)

    def is_Option(self):
        return _saga_api.CSG_Parameter_is_Option(self)

    def is_DataObject(self):
        return _saga_api.CSG_Parameter_is_DataObject(self)

    def is_DataObject_List(self):
        return _saga_api.CSG_Parameter_is_DataObject_List(self)

    def is_Parameters(self):
        return _saga_api.CSG_Parameter_is_Parameters(self)

    def is_Serializable(self):
        return _saga_api.CSG_Parameter_is_Serializable(self)

    def is_Compatible(self, pParameter):
        return _saga_api.CSG_Parameter_is_Compatible(self, pParameter)

    def is_Value_Equal(self, pParameter):
        return _saga_api.CSG_Parameter_is_Value_Equal(self, pParameter)

    def Set_UseInGUI(self, bOn=False):
        return _saga_api.CSG_Parameter_Set_UseInGUI(self, bOn)

    def Set_UseInCMD(self, bOn=False):
        return _saga_api.CSG_Parameter_Set_UseInCMD(self, bOn)

    def do_UseInGUI(self):
        return _saga_api.CSG_Parameter_do_UseInGUI(self)

    def do_UseInCMD(self):
        return _saga_api.CSG_Parameter_do_UseInCMD(self)

    def ignore_Projection(self, *args):
        return _saga_api.CSG_Parameter_ignore_Projection(self, *args)

    def Get_DataObject_Type(self):
        return _saga_api.CSG_Parameter_Get_DataObject_Type(self)

    def Get_Children_Count(self):
        return _saga_api.CSG_Parameter_Get_Children_Count(self)

    def Get_Child(self, iChild):
        return _saga_api.CSG_Parameter_Get_Child(self, iChild)

    def Set_Children_Enabled(self, bEnabled=True):
        return _saga_api.CSG_Parameter_Set_Children_Enabled(self, bEnabled)

    def Set_Value(self, *args):
        return _saga_api.CSG_Parameter_Set_Value(self, *args)

    def Toggle_Value(self):
        return _saga_api.CSG_Parameter_Toggle_Value(self)

    def Set_Default(self, *args):
        return _saga_api.CSG_Parameter_Set_Default(self, *args)

    def Get_Default(self):
        return _saga_api.CSG_Parameter_Get_Default(self)

    def is_Default(self):
        return _saga_api.CSG_Parameter_is_Default(self)

    def Restore_Default(self):
        return _saga_api.CSG_Parameter_Restore_Default(self)

    def Check(self, bSilent=True):
        return _saga_api.CSG_Parameter_Check(self, bSilent)

    def has_Changed(self, *args):
        return _saga_api.CSG_Parameter_has_Changed(self, *args)

    def asBool(self):
        return _saga_api.CSG_Parameter_asBool(self)

    def asInt(self):
        return _saga_api.CSG_Parameter_asInt(self)

    def asColor(self):
        return _saga_api.CSG_Parameter_asColor(self)

    def asDouble(self):
        return _saga_api.CSG_Parameter_asDouble(self)

    def asString(self):
        return _saga_api.CSG_Parameter_asString(self)

    def asPointer(self):
        return _saga_api.CSG_Parameter_asPointer(self)

    def asColors(self):
        return _saga_api.CSG_Parameter_asColors(self)

    def asFont(self):
        return _saga_api.CSG_Parameter_asFont(self)

    def asGrid_System(self):
        return _saga_api.CSG_Parameter_asGrid_System(self)

    def asGrid_Resampling(self):
        return _saga_api.CSG_Parameter_asGrid_Resampling(self)

    def asDataObject(self):
        return _saga_api.CSG_Parameter_asDataObject(self)

    def asGrid(self):
        return _saga_api.CSG_Parameter_asGrid(self)

    def asGrids(self):
        return _saga_api.CSG_Parameter_asGrids(self)

    def asTable(self):
        return _saga_api.CSG_Parameter_asTable(self)

    def asShapes(self):
        return _saga_api.CSG_Parameter_asShapes(self)

    def asTIN(self):
        return _saga_api.CSG_Parameter_asTIN(self)

    def asPointCloud(self):
        return _saga_api.CSG_Parameter_asPointCloud(self)

    def asValue(self):
        return _saga_api.CSG_Parameter_asValue(self)

    def asDate(self):
        return _saga_api.CSG_Parameter_asDate(self)

    def asDataType(self):
        return _saga_api.CSG_Parameter_asDataType(self)

    def asChoice(self):
        return _saga_api.CSG_Parameter_asChoice(self)

    def asChoices(self):
        return _saga_api.CSG_Parameter_asChoices(self)

    def asRange(self):
        return _saga_api.CSG_Parameter_asRange(self)

    def asFilePath(self):
        return _saga_api.CSG_Parameter_asFilePath(self)

    def asTableFields(self):
        return _saga_api.CSG_Parameter_asTableFields(self)

    def asParameters(self):
        return _saga_api.CSG_Parameter_asParameters(self)

    def asList(self):
        return _saga_api.CSG_Parameter_asList(self)

    def asGridList(self):
        return _saga_api.CSG_Parameter_asGridList(self)

    def asGridsList(self):
        return _saga_api.CSG_Parameter_asGridsList(self)

    def asTableList(self):
        return _saga_api.CSG_Parameter_asTableList(self)

    def asShapesList(self):
        return _saga_api.CSG_Parameter_asShapesList(self)

    def asTINList(self):
        return _saga_api.CSG_Parameter_asTINList(self)

    def asPointCloudList(self):
        return _saga_api.CSG_Parameter_asPointCloudList(self)

    def Assign(self, pSource):
        return _saga_api.CSG_Parameter_Assign(self, pSource)

    def Serialize(self, MetaData, bSave):
        return _saga_api.CSG_Parameter_Serialize(self, MetaData, bSave)

# Register CSG_Parameter in _saga_api:
_saga_api.CSG_Parameter_swigregister(CSG_Parameter)
class CSG_Parameter_Node(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Node_Get_Type(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Node

# Register CSG_Parameter_Node in _saga_api:
_saga_api.CSG_Parameter_Node_swigregister(CSG_Parameter_Node)
class CSG_Parameter_Bool(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Bool_Get_Type(self)

    def is_Default(self):
        return _saga_api.CSG_Parameter_Bool_is_Default(self)

    def Toggle_Value(self):
        return _saga_api.CSG_Parameter_Bool_Toggle_Value(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Bool

# Register CSG_Parameter_Bool in _saga_api:
_saga_api.CSG_Parameter_Bool_swigregister(CSG_Parameter_Bool)
class CSG_Parameter_Value(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def Set_Valid_Range(self, Minimum, Maximum):
        return _saga_api.CSG_Parameter_Value_Set_Valid_Range(self, Minimum, Maximum)

    def Set_Minimum(self, Minimum, bOn=True):
        return _saga_api.CSG_Parameter_Value_Set_Minimum(self, Minimum, bOn)

    def Get_Minimum(self):
        return _saga_api.CSG_Parameter_Value_Get_Minimum(self)

    def has_Minimum(self):
        return _saga_api.CSG_Parameter_Value_has_Minimum(self)

    def Set_Maximum(self, Maximum, bOn=True):
        return _saga_api.CSG_Parameter_Value_Set_Maximum(self, Maximum, bOn)

    def Get_Maximum(self):
        return _saga_api.CSG_Parameter_Value_Get_Maximum(self)

    def has_Maximum(self):
        return _saga_api.CSG_Parameter_Value_has_Maximum(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Value

# Register CSG_Parameter_Value in _saga_api:
_saga_api.CSG_Parameter_Value_swigregister(CSG_Parameter_Value)
class CSG_Parameter_Int(CSG_Parameter_Value):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Int_Get_Type(self)

    def is_Default(self):
        return _saga_api.CSG_Parameter_Int_is_Default(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Int

# Register CSG_Parameter_Int in _saga_api:
_saga_api.CSG_Parameter_Int_swigregister(CSG_Parameter_Int)
class CSG_Parameter_Double(CSG_Parameter_Value):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Double_Get_Type(self)

    def is_Default(self):
        return _saga_api.CSG_Parameter_Double_is_Default(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Double

# Register CSG_Parameter_Double in _saga_api:
_saga_api.CSG_Parameter_Double_swigregister(CSG_Parameter_Double)
class CSG_Parameter_Degree(CSG_Parameter_Double):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Degree_Get_Type(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Degree

# Register CSG_Parameter_Degree in _saga_api:
_saga_api.CSG_Parameter_Degree_swigregister(CSG_Parameter_Degree)
class CSG_Parameter_Date(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Date_Get_Type(self)

    def Set_Date(self, Date):
        return _saga_api.CSG_Parameter_Date_Set_Date(self, Date)

    def Get_Date(self):
        return _saga_api.CSG_Parameter_Date_Get_Date(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Date

# Register CSG_Parameter_Date in _saga_api:
_saga_api.CSG_Parameter_Date_swigregister(CSG_Parameter_Date)
class CSG_Parameter_Range(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Range_Get_Type(self)

    def Set_Range(self, Min, Max):
        return _saga_api.CSG_Parameter_Range_Set_Range(self, Min, Max)

    def Get_Range(self):
        return _saga_api.CSG_Parameter_Range_Get_Range(self)

    def Set_Min(self, Min):
        return _saga_api.CSG_Parameter_Range_Set_Min(self, Min)

    def Get_Min(self):
        return _saga_api.CSG_Parameter_Range_Get_Min(self)

    def Get_Min_Parameter(self):
        return _saga_api.CSG_Parameter_Range_Get_Min_Parameter(self)

    def Set_Max(self, Max):
        return _saga_api.CSG_Parameter_Range_Set_Max(self, Max)

    def Get_Max(self):
        return _saga_api.CSG_Parameter_Range_Get_Max(self)

    def Get_Max_Parameter(self):
        return _saga_api.CSG_Parameter_Range_Get_Max_Parameter(self)

    def is_Default(self):
        return _saga_api.CSG_Parameter_Range_is_Default(self)

    def Restore_Default(self):
        return _saga_api.CSG_Parameter_Range_Restore_Default(self)

# Register CSG_Parameter_Range in _saga_api:
_saga_api.CSG_Parameter_Range_swigregister(CSG_Parameter_Range)
class CSG_Parameter_Choice(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Choice_Get_Type(self)

    def is_Default(self):
        return _saga_api.CSG_Parameter_Choice_is_Default(self)

    def Toggle_Value(self):
        return _saga_api.CSG_Parameter_Choice_Toggle_Value(self)

    def Del_Items(self):
        return _saga_api.CSG_Parameter_Choice_Del_Items(self)

    def Add_Item(self, *args):
        return _saga_api.CSG_Parameter_Choice_Add_Item(self, *args)

    def Set_Items(self, String):
        return _saga_api.CSG_Parameter_Choice_Set_Items(self, String)

    def Get_Items(self, bIncludeData=False):
        return _saga_api.CSG_Parameter_Choice_Get_Items(self, bIncludeData)

    def Get_Item(self, Index):
        return _saga_api.CSG_Parameter_Choice_Get_Item(self, Index)

    def Get_Item_Data(self, Index):
        return _saga_api.CSG_Parameter_Choice_Get_Item_Data(self, Index)

    def Get_Data(self, *args):
        return _saga_api.CSG_Parameter_Choice_Get_Data(self, *args)

    def Get_Count(self):
        return _saga_api.CSG_Parameter_Choice_Get_Count(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Choice

# Register CSG_Parameter_Choice in _saga_api:
_saga_api.CSG_Parameter_Choice_swigregister(CSG_Parameter_Choice)
class CSG_Parameter_Data_Type(CSG_Parameter_Choice):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Data_Type_Get_Type(self)

    def Set_Data_Types(self, *args):
        return _saga_api.CSG_Parameter_Data_Type_Set_Data_Types(self, *args)

    def Set_Data_Type(self, Value):
        return _saga_api.CSG_Parameter_Data_Type_Set_Data_Type(self, Value)

    def Get_Data_Type(self, Default=SG_DATATYPE_Undefined):
        return _saga_api.CSG_Parameter_Data_Type_Get_Data_Type(self, Default)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Data_Type

# Register CSG_Parameter_Data_Type in _saga_api:
_saga_api.CSG_Parameter_Data_Type_swigregister(CSG_Parameter_Data_Type)
class CSG_Parameter_Choices(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Choices_Get_Type(self)

    def Set_Items(self, *args):
        return _saga_api.CSG_Parameter_Choices_Set_Items(self, *args)

    def Get_Items(self):
        return _saga_api.CSG_Parameter_Choices_Get_Items(self)

    def Del_Items(self):
        return _saga_api.CSG_Parameter_Choices_Del_Items(self)

    def Add_Item(self, *args):
        return _saga_api.CSG_Parameter_Choices_Add_Item(self, *args)

    def Get_Item_Count(self):
        return _saga_api.CSG_Parameter_Choices_Get_Item_Count(self)

    def Get_Item(self, i):
        return _saga_api.CSG_Parameter_Choices_Get_Item(self, i)

    def Get_Item_Data(self, i):
        return _saga_api.CSG_Parameter_Choices_Get_Item_Data(self, i)

    def Get_Selection_Count(self):
        return _saga_api.CSG_Parameter_Choices_Get_Selection_Count(self)

    def Get_Selection(self, i):
        return _saga_api.CSG_Parameter_Choices_Get_Selection(self, i)

    def Get_Selection_Data(self, i):
        return _saga_api.CSG_Parameter_Choices_Get_Selection_Data(self, i)

    def Get_Selection_Index(self, i):
        return _saga_api.CSG_Parameter_Choices_Get_Selection_Index(self, i)

    def is_Selected(self, Index):
        return _saga_api.CSG_Parameter_Choices_is_Selected(self, Index)

    def Select(self, Index, bSelect=True):
        return _saga_api.CSG_Parameter_Choices_Select(self, Index, bSelect)

    def Clr_Selection(self):
        return _saga_api.CSG_Parameter_Choices_Clr_Selection(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Choices

# Register CSG_Parameter_Choices in _saga_api:
_saga_api.CSG_Parameter_Choices_swigregister(CSG_Parameter_Choices)
class CSG_Parameter_String(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_String_Get_Type(self)

    def is_Valid(self):
        return _saga_api.CSG_Parameter_String_is_Valid(self)

    def Set_Password(self, bOn):
        return _saga_api.CSG_Parameter_String_Set_Password(self, bOn)

    def is_Password(self):
        return _saga_api.CSG_Parameter_String_is_Password(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_String

# Register CSG_Parameter_String in _saga_api:
_saga_api.CSG_Parameter_String_swigregister(CSG_Parameter_String)
class CSG_Parameter_Text(CSG_Parameter_String):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Text_Get_Type(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Text

# Register CSG_Parameter_Text in _saga_api:
_saga_api.CSG_Parameter_Text_swigregister(CSG_Parameter_Text)
class CSG_Parameter_File_Name(CSG_Parameter_String):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_File_Name_Get_Type(self)

    def Set_Filter(self, Filter):
        return _saga_api.CSG_Parameter_File_Name_Set_Filter(self, Filter)

    def Get_Filter(self):
        return _saga_api.CSG_Parameter_File_Name_Get_Filter(self)

    def Set_Flag_Save(self, bFlag):
        return _saga_api.CSG_Parameter_File_Name_Set_Flag_Save(self, bFlag)

    def is_Save(self):
        return _saga_api.CSG_Parameter_File_Name_is_Save(self)

    def Set_Flag_Multiple(self, bFlag):
        return _saga_api.CSG_Parameter_File_Name_Set_Flag_Multiple(self, bFlag)

    def is_Multiple(self):
        return _saga_api.CSG_Parameter_File_Name_is_Multiple(self)

    def Set_Flag_Directory(self, bFlag):
        return _saga_api.CSG_Parameter_File_Name_Set_Flag_Directory(self, bFlag)

    def is_Directory(self):
        return _saga_api.CSG_Parameter_File_Name_is_Directory(self)

    def Get_FilePaths(self, FilePaths):
        return _saga_api.CSG_Parameter_File_Name_Get_FilePaths(self, FilePaths)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_File_Name

# Register CSG_Parameter_File_Name in _saga_api:
_saga_api.CSG_Parameter_File_Name_swigregister(CSG_Parameter_File_Name)
class CSG_Parameter_Font(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Font_Get_Type(self)

    def Restore_Default(self):
        return _saga_api.CSG_Parameter_Font_Restore_Default(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Font

# Register CSG_Parameter_Font in _saga_api:
_saga_api.CSG_Parameter_Font_swigregister(CSG_Parameter_Font)
class CSG_Parameter_Color(CSG_Parameter_Int):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Color_Get_Type(self)

    def _Set_Value(self, Value):
        return _saga_api.CSG_Parameter_Color__Set_Value(self, Value)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Color

# Register CSG_Parameter_Color in _saga_api:
_saga_api.CSG_Parameter_Color_swigregister(CSG_Parameter_Color)
class CSG_Parameter_Colors(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Colors_Get_Type(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Colors

# Register CSG_Parameter_Colors in _saga_api:
_saga_api.CSG_Parameter_Colors_swigregister(CSG_Parameter_Colors)
class CSG_Parameter_Fixed_Table(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Fixed_Table_Get_Type(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Fixed_Table

# Register CSG_Parameter_Fixed_Table in _saga_api:
_saga_api.CSG_Parameter_Fixed_Table_swigregister(CSG_Parameter_Fixed_Table)
class CSG_Parameter_Grid_System(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Grid_System_Get_Type(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Grid_System

# Register CSG_Parameter_Grid_System in _saga_api:
_saga_api.CSG_Parameter_Grid_System_swigregister(CSG_Parameter_Grid_System)
class CSG_Parameter_Table_Field(CSG_Parameter_Int):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Table_Field_Get_Type(self)

    def Add_Default(self, Value, Minimum, bMinimum, Maximum, bMaximum):
        return _saga_api.CSG_Parameter_Table_Field_Add_Default(self, Value, Minimum, bMinimum, Maximum, bMaximum)

    def Get_Table(self):
        return _saga_api.CSG_Parameter_Table_Field_Get_Table(self)

    @staticmethod
    def Get_Choices(Table, bAllowNone=False):
        return _saga_api.CSG_Parameter_Table_Field_Get_Choices(Table, bAllowNone)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Table_Field

# Register CSG_Parameter_Table_Field in _saga_api:
_saga_api.CSG_Parameter_Table_Field_swigregister(CSG_Parameter_Table_Field)
class CSG_Parameter_Table_Fields(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Table_Fields_Get_Type(self)

    def Get_Count(self):
        return _saga_api.CSG_Parameter_Table_Fields_Get_Count(self)

    def Get_Index(self, i):
        return _saga_api.CSG_Parameter_Table_Fields_Get_Index(self, i)

    def Get_Table(self):
        return _saga_api.CSG_Parameter_Table_Fields_Get_Table(self)

# Register CSG_Parameter_Table_Fields in _saga_api:
_saga_api.CSG_Parameter_Table_Fields_swigregister(CSG_Parameter_Table_Fields)
class CSG_Parameter_Data_Object(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def is_Valid(self):
        return _saga_api.CSG_Parameter_Data_Object_is_Valid(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Data_Object

# Register CSG_Parameter_Data_Object in _saga_api:
_saga_api.CSG_Parameter_Data_Object_swigregister(CSG_Parameter_Data_Object)
class CSG_Parameter_Data_Object_Output(CSG_Parameter_Data_Object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Data_Object_Output_Get_Type(self)

    def Set_DataObject_Type(self, Type):
        return _saga_api.CSG_Parameter_Data_Object_Output_Set_DataObject_Type(self, Type)

    def Get_DataObject_Type(self):
        return _saga_api.CSG_Parameter_Data_Object_Output_Get_DataObject_Type(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Data_Object_Output

# Register CSG_Parameter_Data_Object_Output in _saga_api:
_saga_api.CSG_Parameter_Data_Object_Output_swigregister(CSG_Parameter_Data_Object_Output)
class CSG_Parameter_Grid(CSG_Parameter_Data_Object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Grid_Get_Type(self)

    def Set_Preferred_Type(self, Type):
        return _saga_api.CSG_Parameter_Grid_Set_Preferred_Type(self, Type)

    def Get_Preferred_Type(self):
        return _saga_api.CSG_Parameter_Grid_Get_Preferred_Type(self)

    def Get_System(self):
        return _saga_api.CSG_Parameter_Grid_Get_System(self)

    def Add_Default(self, Value, Minimum, bMinimum, Maximum, bMaximum):
        return _saga_api.CSG_Parameter_Grid_Add_Default(self, Value, Minimum, bMinimum, Maximum, bMaximum)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Grid

# Register CSG_Parameter_Grid in _saga_api:
_saga_api.CSG_Parameter_Grid_swigregister(CSG_Parameter_Grid)
class CSG_Parameter_Grids(CSG_Parameter_Grid):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Grids_Get_Type(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Grids

# Register CSG_Parameter_Grids in _saga_api:
_saga_api.CSG_Parameter_Grids_swigregister(CSG_Parameter_Grids)
class CSG_Parameter_Table(CSG_Parameter_Data_Object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Table_Get_Type(self)

    def __init__(self, pOwner, pParent, ID, Name, Description, Constraint):
        _saga_api.CSG_Parameter_Table_swiginit(self, _saga_api.new_CSG_Parameter_Table(pOwner, pParent, ID, Name, Description, Constraint))
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Table

# Register CSG_Parameter_Table in _saga_api:
_saga_api.CSG_Parameter_Table_swigregister(CSG_Parameter_Table)
class CSG_Parameter_Shapes(CSG_Parameter_Data_Object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Shapes_Get_Type(self)

    def Set_Shape_Type(self, Type):
        return _saga_api.CSG_Parameter_Shapes_Set_Shape_Type(self, Type)

    def Get_Shape_Type(self):
        return _saga_api.CSG_Parameter_Shapes_Get_Shape_Type(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Shapes

# Register CSG_Parameter_Shapes in _saga_api:
_saga_api.CSG_Parameter_Shapes_swigregister(CSG_Parameter_Shapes)
class CSG_Parameter_TIN(CSG_Parameter_Data_Object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_TIN_Get_Type(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_TIN

# Register CSG_Parameter_TIN in _saga_api:
_saga_api.CSG_Parameter_TIN_swigregister(CSG_Parameter_TIN)
class CSG_Parameter_PointCloud(CSG_Parameter_Data_Object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_PointCloud_Get_Type(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_PointCloud

# Register CSG_Parameter_PointCloud in _saga_api:
_saga_api.CSG_Parameter_PointCloud_swigregister(CSG_Parameter_PointCloud)
class CSG_Parameter_List(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def Add_Item(self, pItem):
        return _saga_api.CSG_Parameter_List_Add_Item(self, pItem)

    def Del_Item(self, *args):
        return _saga_api.CSG_Parameter_List_Del_Item(self, *args)

    def Del_Items(self):
        return _saga_api.CSG_Parameter_List_Del_Items(self)

    def Get_Item_Count(self):
        return _saga_api.CSG_Parameter_List_Get_Item_Count(self)

    def Get_Item(self, Index):
        return _saga_api.CSG_Parameter_List_Get_Item(self, Index)

    def Update_Data(self):
        return _saga_api.CSG_Parameter_List_Update_Data(self)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_List

# Register CSG_Parameter_List in _saga_api:
_saga_api.CSG_Parameter_List_swigregister(CSG_Parameter_List)
class CSG_Parameter_Grid_List(CSG_Parameter_List):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Grid_List_Get_Type(self)

    def Get_System(self):
        return _saga_api.CSG_Parameter_Grid_List_Get_System(self)

    def Add_Item(self, pItem):
        return _saga_api.CSG_Parameter_Grid_List_Add_Item(self, pItem)

    def Del_Item(self, *args):
        return _saga_api.CSG_Parameter_Grid_List_Del_Item(self, *args)

    def Del_Items(self):
        return _saga_api.CSG_Parameter_Grid_List_Del_Items(self)

    def Update_Data(self):
        return _saga_api.CSG_Parameter_Grid_List_Update_Data(self)

    def Get_Grid_Count(self):
        return _saga_api.CSG_Parameter_Grid_List_Get_Grid_Count(self)

    def Get_Grid(self, Index):
        return _saga_api.CSG_Parameter_Grid_List_Get_Grid(self, Index)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Grid_List

# Register CSG_Parameter_Grid_List in _saga_api:
_saga_api.CSG_Parameter_Grid_List_swigregister(CSG_Parameter_Grid_List)
class CSG_Parameter_Grids_List(CSG_Parameter_List):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Grids_List_Get_Type(self)

    def Get_System(self):
        return _saga_api.CSG_Parameter_Grids_List_Get_System(self)

    def Add_Item(self, pItem):
        return _saga_api.CSG_Parameter_Grids_List_Add_Item(self, pItem)

    def Get_Grids(self, Index):
        return _saga_api.CSG_Parameter_Grids_List_Get_Grids(self, Index)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Grids_List

# Register CSG_Parameter_Grids_List in _saga_api:
_saga_api.CSG_Parameter_Grids_List_swigregister(CSG_Parameter_Grids_List)
class CSG_Parameter_Table_List(CSG_Parameter_List):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Table_List_Get_Type(self)

    def Get_Table(self, Index):
        return _saga_api.CSG_Parameter_Table_List_Get_Table(self, Index)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Table_List

# Register CSG_Parameter_Table_List in _saga_api:
_saga_api.CSG_Parameter_Table_List_swigregister(CSG_Parameter_Table_List)
class CSG_Parameter_Shapes_List(CSG_Parameter_List):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Shapes_List_Get_Type(self)

    def Set_Shape_Type(self, Type):
        return _saga_api.CSG_Parameter_Shapes_List_Set_Shape_Type(self, Type)

    def Get_Shape_Type(self):
        return _saga_api.CSG_Parameter_Shapes_List_Get_Shape_Type(self)

    def Get_Shapes(self, Index):
        return _saga_api.CSG_Parameter_Shapes_List_Get_Shapes(self, Index)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_Shapes_List

# Register CSG_Parameter_Shapes_List in _saga_api:
_saga_api.CSG_Parameter_Shapes_List_swigregister(CSG_Parameter_Shapes_List)
class CSG_Parameter_TIN_List(CSG_Parameter_List):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_TIN_List_Get_Type(self)

    def asTIN(self, Index):
        return _saga_api.CSG_Parameter_TIN_List_asTIN(self, Index)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_TIN_List

# Register CSG_Parameter_TIN_List in _saga_api:
_saga_api.CSG_Parameter_TIN_List_swigregister(CSG_Parameter_TIN_List)
class CSG_Parameter_PointCloud_List(CSG_Parameter_List):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_PointCloud_List_Get_Type(self)

    def Get_PointCloud(self, Index):
        return _saga_api.CSG_Parameter_PointCloud_List_Get_PointCloud(self, Index)
    __swig_destroy__ = _saga_api.delete_CSG_Parameter_PointCloud_List

# Register CSG_Parameter_PointCloud_List in _saga_api:
_saga_api.CSG_Parameter_PointCloud_List_swigregister(CSG_Parameter_PointCloud_List)
class CSG_Parameter_Parameters(CSG_Parameter):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Parameter_Parameters_Get_Type(self)

    def Restore_Default(self):
        return _saga_api.CSG_Parameter_Parameters_Restore_Default(self)

# Register CSG_Parameter_Parameters in _saga_api:
_saga_api.CSG_Parameter_Parameters_swigregister(CSG_Parameter_Parameters)
class CSG_Parameters_CRSPicker(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Parameters_CRSPicker_swiginit(self, _saga_api.new_CSG_Parameters_CRSPicker())

    def Create(self, *args):
        return _saga_api.CSG_Parameters_CRSPicker_Create(self, *args)

    def Activate_GUI(self, bReset=False):
        return _saga_api.CSG_Parameters_CRSPicker_Activate_GUI(self, bReset)

    def Deactivate_GUI(self):
        return _saga_api.CSG_Parameters_CRSPicker_Deactivate_GUI(self)

    @staticmethod
    def On_Parameter_Changed(pParameters, pParameter):
        return _saga_api.CSG_Parameters_CRSPicker_On_Parameter_Changed(pParameters, pParameter)

    @staticmethod
    def On_Parameters_Enable(pParameters, pParameter):
        return _saga_api.CSG_Parameters_CRSPicker_On_Parameters_Enable(pParameters, pParameter)

    def Get_CRS(self, Projection, bMessage=False):
        return _saga_api.CSG_Parameters_CRSPicker_Get_CRS(self, Projection, bMessage)
    __swig_destroy__ = _saga_api.delete_CSG_Parameters_CRSPicker

# Register CSG_Parameters_CRSPicker in _saga_api:
_saga_api.CSG_Parameters_CRSPicker_swigregister(CSG_Parameters_CRSPicker)
class CSG_Parameters_Grid_Target(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Parameters_Grid_Target_swiginit(self, _saga_api.new_CSG_Parameters_Grid_Target())

    def Create(self, *args):
        return _saga_api.CSG_Parameters_Grid_Target_Create(self, *args)

    def Add_Grid(self, ID, Name, bOptional):
        return _saga_api.CSG_Parameters_Grid_Target_Add_Grid(self, ID, Name, bOptional)

    def Add_Grids(self, ID, Name, bOptional, bZLevels=False):
        return _saga_api.CSG_Parameters_Grid_Target_Add_Grids(self, ID, Name, bOptional, bZLevels)

    @staticmethod
    def On_Parameter_Changed(*args):
        return _saga_api.CSG_Parameters_Grid_Target_On_Parameter_Changed(*args)

    @staticmethod
    def On_Parameters_Enable(*args):
        return _saga_api.CSG_Parameters_Grid_Target_On_Parameters_Enable(*args)

    def Set_User_Defined(self, *args):
        return _saga_api.CSG_Parameters_Grid_Target_Set_User_Defined(self, *args)

    def Set_User_Defined_ZLevels(self, pParameters, zMin, zMax, nLevels, Rounding=2):
        return _saga_api.CSG_Parameters_Grid_Target_Set_User_Defined_ZLevels(self, pParameters, zMin, zMax, nLevels, Rounding)

    def Get_System(self, *args):
        return _saga_api.CSG_Parameters_Grid_Target_Get_System(self, *args)

    def Get_Grid(self, *args):
        return _saga_api.CSG_Parameters_Grid_Target_Get_Grid(self, *args)

    def Get_Grids(self, *args):
        return _saga_api.CSG_Parameters_Grid_Target_Get_Grids(self, *args)
    __swig_destroy__ = _saga_api.delete_CSG_Parameters_Grid_Target

# Register CSG_Parameters_Grid_Target in _saga_api:
_saga_api.CSG_Parameters_Grid_Target_swigregister(CSG_Parameters_Grid_Target)
class CSG_Parameters(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Parameters

    def __init__(self, *args):
        _saga_api.CSG_Parameters_swiginit(self, _saga_api.new_CSG_Parameters(*args))

    def Create(self, *args):
        return _saga_api.CSG_Parameters_Create(self, *args)

    def Destroy(self):
        return _saga_api.CSG_Parameters_Destroy(self)

    def Get_Owner(self):
        return _saga_api.CSG_Parameters_Get_Owner(self)

    def Get_Tool(self):
        return _saga_api.CSG_Parameters_Get_Tool(self)

    def Set_Tool(self, pTool):
        return _saga_api.CSG_Parameters_Set_Tool(self, pTool)

    def Get_Manager(self):
        return _saga_api.CSG_Parameters_Get_Manager(self)

    def Set_Manager(self, pManager):
        return _saga_api.CSG_Parameters_Set_Manager(self, pManager)

    def Push(self, pManager=None, bRestoreDefaults=True):
        return _saga_api.CSG_Parameters_Push(self, pManager, bRestoreDefaults)

    def Pop(self):
        return _saga_api.CSG_Parameters_Pop(self)

    def Use_Grid_System(self):
        return _saga_api.CSG_Parameters_Use_Grid_System(self)

    def has_GUI(self):
        return _saga_api.CSG_Parameters_has_GUI(self)

    def Get_Count(self):
        return _saga_api.CSG_Parameters_Get_Count(self)

    def Set_Identifier(self, Identifier):
        return _saga_api.CSG_Parameters_Set_Identifier(self, Identifier)

    def Cmp_Identifier(self, Identifier):
        return _saga_api.CSG_Parameters_Cmp_Identifier(self, Identifier)

    def Get_Identifier(self):
        return _saga_api.CSG_Parameters_Get_Identifier(self)

    def Set_Name(self, Name):
        return _saga_api.CSG_Parameters_Set_Name(self, Name)

    def Get_Name(self):
        return _saga_api.CSG_Parameters_Get_Name(self)

    def Set_Description(self, Description):
        return _saga_api.CSG_Parameters_Set_Description(self, Description)

    def Get_Description(self):
        return _saga_api.CSG_Parameters_Get_Description(self)

    def Add_Reference(self, *args):
        return _saga_api.CSG_Parameters_Add_Reference(self, *args)

    def Del_References(self):
        return _saga_api.CSG_Parameters_Del_References(self)

    def Get_References(self):
        return _saga_api.CSG_Parameters_Get_References(self)

    def Set_Enabled(self, *args):
        return _saga_api.CSG_Parameters_Set_Enabled(self, *args)

    def Set_Callback_On_Parameter_Changed(self, pCallback):
        return _saga_api.CSG_Parameters_Set_Callback_On_Parameter_Changed(self, pCallback)

    def Set_Callback(self, bActive=True):
        return _saga_api.CSG_Parameters_Set_Callback(self, bActive)

    def Get_Parameter(self, *args):
        return _saga_api.CSG_Parameters_Get_Parameter(self, *args)

    def __call__(self, *args):
        return _saga_api.CSG_Parameters___call__(self, *args)

    def Del_Parameter(self, *args):
        return _saga_api.CSG_Parameters_Del_Parameter(self, *args)

    def Del_Parameters(self):
        return _saga_api.CSG_Parameters_Del_Parameters(self)

    def Add_Parameter(self, pParameter):
        return _saga_api.CSG_Parameters_Add_Parameter(self, pParameter)

    def Add_Data_Type(self, *args):
        return _saga_api.CSG_Parameters_Add_Data_Type(self, *args)

    def Add_Choices(self, ParentID, ID, Name, Description, Items):
        return _saga_api.CSG_Parameters_Add_Choices(self, ParentID, ID, Name, Description, Items)

    def Add_Grid_Resampling(self, *args):
        return _saga_api.CSG_Parameters_Add_Grid_Resampling(self, *args)

    def Add_Grids(self, ParentID, ID, Name, Description, Constraint, bSystem_Dependent=True, Preferred_Type=SG_DATATYPE_Undefined):
        return _saga_api.CSG_Parameters_Add_Grids(self, ParentID, ID, Name, Description, Constraint, bSystem_Dependent, Preferred_Type)

    def Add_Grids_Output(self, ParentID, ID, Name, Description):
        return _saga_api.CSG_Parameters_Add_Grids_Output(self, ParentID, ID, Name, Description)

    def Add_Grids_List(self, ParentID, ID, Name, Description, Constraint, bSystem_Dependent=True):
        return _saga_api.CSG_Parameters_Add_Grids_List(self, ParentID, ID, Name, Description, Constraint, bSystem_Dependent)

    def Set_Parameter(self, *args):
        return _saga_api.CSG_Parameters_Set_Parameter(self, *args)

    def Restore_Defaults(self, bClearData=False):
        return _saga_api.CSG_Parameters_Restore_Defaults(self, bClearData)

    def Assign(self, pSource):
        return _saga_api.CSG_Parameters_Assign(self, pSource)

    def Assign_Values(self, pSource):
        return _saga_api.CSG_Parameters_Assign_Values(self, pSource)

    def Assign_Parameters(self, pSource):
        return _saga_api.CSG_Parameters_Assign_Parameters(self, pSource)

    def Load(self, *args):
        return _saga_api.CSG_Parameters_Load(self, *args)

    def Save(self, *args):
        return _saga_api.CSG_Parameters_Save(self, *args)

    def Serialize(self, *args):
        return _saga_api.CSG_Parameters_Serialize(self, *args)

    def Serialize_Compatibility(self, Stream):
        return _saga_api.CSG_Parameters_Serialize_Compatibility(self, Stream)

    def DataObjects_Check(self, bSilent=False):
        return _saga_api.CSG_Parameters_DataObjects_Check(self, bSilent)

    def Get_String(self, String, bOptionsOnly):
        return _saga_api.CSG_Parameters_Get_String(self, String, bOptionsOnly)

    def Msg_String(self, bOptionsOnly):
        return _saga_api.CSG_Parameters_Msg_String(self, bOptionsOnly)

    def Set_History(self, History, bOptions=True, bDataObjects=True):
        return _saga_api.CSG_Parameters_Set_History(self, History, bOptions, bDataObjects)

    def is_Managed(self):
        return _saga_api.CSG_Parameters_is_Managed(self)

    def Get_Grid_System_Parameter(self):
        return _saga_api.CSG_Parameters_Get_Grid_System_Parameter(self)

    def Get_Grid_System(self):
        return _saga_api.CSG_Parameters_Get_Grid_System(self)

    def Set_Grid_System(self, System):
        return _saga_api.CSG_Parameters_Set_Grid_System(self, System)

    def Reset_Grid_System(self):
        return _saga_api.CSG_Parameters_Reset_Grid_System(self)

    def Add_Node(self, *args):
        return _saga_api.CSG_Parameters_Add_Node(self, *args)

    def Add_Value(self, *args):
        return _saga_api.CSG_Parameters_Add_Value(self, *args)

    def Add_Info_Value(self, *args):
        return _saga_api.CSG_Parameters_Add_Info_Value(self, *args)

    def Add_Bool(self, *args):
        return _saga_api.CSG_Parameters_Add_Bool(self, *args)

    def Add_Int(self, *args):
        return _saga_api.CSG_Parameters_Add_Int(self, *args)

    def Add_Double(self, *args):
        return _saga_api.CSG_Parameters_Add_Double(self, *args)

    def Add_Degree(self, *args):
        return _saga_api.CSG_Parameters_Add_Degree(self, *args)

    def Add_Date(self, *args):
        return _saga_api.CSG_Parameters_Add_Date(self, *args)

    def Add_Color(self, *args):
        return _saga_api.CSG_Parameters_Add_Color(self, *args)

    def Add_Range(self, *args):
        return _saga_api.CSG_Parameters_Add_Range(self, *args)

    def Add_Info_Range(self, *args):
        return _saga_api.CSG_Parameters_Add_Info_Range(self, *args)

    def Add_Choice(self, *args):
        return _saga_api.CSG_Parameters_Add_Choice(self, *args)

    def Add_String(self, *args):
        return _saga_api.CSG_Parameters_Add_String(self, *args)

    def Add_Info_String(self, *args):
        return _saga_api.CSG_Parameters_Add_Info_String(self, *args)

    def Add_FilePath(self, *args):
        return _saga_api.CSG_Parameters_Add_FilePath(self, *args)

    def Add_Font(self, *args):
        return _saga_api.CSG_Parameters_Add_Font(self, *args)

    def Add_Colors(self, *args):
        return _saga_api.CSG_Parameters_Add_Colors(self, *args)

    def Add_FixedTable(self, *args):
        return _saga_api.CSG_Parameters_Add_FixedTable(self, *args)

    def Add_Grid_System(self, *args):
        return _saga_api.CSG_Parameters_Add_Grid_System(self, *args)

    def Add_Grid(self, *args):
        return _saga_api.CSG_Parameters_Add_Grid(self, *args)

    def Add_Grid_or_Const(self, *args):
        return _saga_api.CSG_Parameters_Add_Grid_or_Const(self, *args)

    def Add_Grid_Output(self, *args):
        return _saga_api.CSG_Parameters_Add_Grid_Output(self, *args)

    def Add_Grid_List(self, *args):
        return _saga_api.CSG_Parameters_Add_Grid_List(self, *args)

    def Add_Table_Field(self, *args):
        return _saga_api.CSG_Parameters_Add_Table_Field(self, *args)

    def Add_Table_Field_or_Const(self, *args):
        return _saga_api.CSG_Parameters_Add_Table_Field_or_Const(self, *args)

    def Add_Table_Fields(self, *args):
        return _saga_api.CSG_Parameters_Add_Table_Fields(self, *args)

    def Add_Table(self, *args):
        return _saga_api.CSG_Parameters_Add_Table(self, *args)

    def Add_Table_Output(self, *args):
        return _saga_api.CSG_Parameters_Add_Table_Output(self, *args)

    def Add_Table_List(self, *args):
        return _saga_api.CSG_Parameters_Add_Table_List(self, *args)

    def Add_Shapes(self, *args):
        return _saga_api.CSG_Parameters_Add_Shapes(self, *args)

    def Add_Shapes_Output(self, *args):
        return _saga_api.CSG_Parameters_Add_Shapes_Output(self, *args)

    def Add_Shapes_List(self, *args):
        return _saga_api.CSG_Parameters_Add_Shapes_List(self, *args)

    def Add_TIN(self, *args):
        return _saga_api.CSG_Parameters_Add_TIN(self, *args)

    def Add_TIN_Output(self, *args):
        return _saga_api.CSG_Parameters_Add_TIN_Output(self, *args)

    def Add_TIN_List(self, *args):
        return _saga_api.CSG_Parameters_Add_TIN_List(self, *args)

    def Add_PointCloud(self, *args):
        return _saga_api.CSG_Parameters_Add_PointCloud(self, *args)

    def Add_PointCloud_Output(self, *args):
        return _saga_api.CSG_Parameters_Add_PointCloud_Output(self, *args)

    def Add_PointCloud_List(self, *args):
        return _saga_api.CSG_Parameters_Add_PointCloud_List(self, *args)

    def Add_Parameters(self, *args):
        return _saga_api.CSG_Parameters_Add_Parameters(self, *args)

# Register CSG_Parameters in _saga_api:
_saga_api.CSG_Parameters_swigregister(CSG_Parameters)
SG_SUMMARY_FMT_FLAT = _saga_api.SG_SUMMARY_FMT_FLAT
SG_SUMMARY_FMT_HTML = _saga_api.SG_SUMMARY_FMT_HTML
SG_SUMMARY_FMT_XML = _saga_api.SG_SUMMARY_FMT_XML
TOOL_TYPE_Base = _saga_api.TOOL_TYPE_Base
TOOL_TYPE_Interactive = _saga_api.TOOL_TYPE_Interactive
TOOL_TYPE_Grid = _saga_api.TOOL_TYPE_Grid
TOOL_TYPE_Grid_Interactive = _saga_api.TOOL_TYPE_Grid_Interactive
TOOL_TYPE_Chain = _saga_api.TOOL_TYPE_Chain
TOOL_ERROR_Unknown = _saga_api.TOOL_ERROR_Unknown
TOOL_ERROR_Calculation = _saga_api.TOOL_ERROR_Calculation
class CSG_Tool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Tool

    def Destroy(self):
        return _saga_api.CSG_Tool_Destroy(self)

    def Get_Type(self):
        return _saga_api.CSG_Tool_Get_Type(self)

    def Get_ID(self):
        return _saga_api.CSG_Tool_Get_ID(self)

    def Get_Library(self):
        return _saga_api.CSG_Tool_Get_Library(self)

    def Get_File_Name(self):
        return _saga_api.CSG_Tool_Get_File_Name(self)

    def Get_Name(self):
        return _saga_api.CSG_Tool_Get_Name(self)

    def Get_Author(self):
        return _saga_api.CSG_Tool_Get_Author(self)

    def Get_Version(self):
        return _saga_api.CSG_Tool_Get_Version(self)

    def Get_Description(self):
        return _saga_api.CSG_Tool_Get_Description(self)

    def Get_References(self):
        return _saga_api.CSG_Tool_Get_References(self)

    def Get_Icon(self):
        return _saga_api.CSG_Tool_Get_Icon(self)

    def Get_Summary(self, *args):
        return _saga_api.CSG_Tool_Get_Summary(self, *args)

    def Get_MenuPath(self, *args):
        return _saga_api.CSG_Tool_Get_MenuPath(self, *args)

    def Get_Parameters_Count(self):
        return _saga_api.CSG_Tool_Get_Parameters_Count(self)

    def Get_Parameters(self, *args):
        return _saga_api.CSG_Tool_Get_Parameters(self, *args)

    def Get_Parameter(self, *args):
        return _saga_api.CSG_Tool_Get_Parameter(self, *args)

    def Set_Parameter(self, *args):
        return _saga_api.CSG_Tool_Set_Parameter(self, *args)

    def Reset(self, bManager=True):
        return _saga_api.CSG_Tool_Reset(self, bManager)

    def Reset_Manager(self):
        return _saga_api.CSG_Tool_Reset_Manager(self)

    def Reset_Grid_System(self):
        return _saga_api.CSG_Tool_Reset_Grid_System(self)

    def Update_Parameter_States(self):
        return _saga_api.CSG_Tool_Update_Parameter_States(self)

    def Set_Callback(self, bActive=True):
        return _saga_api.CSG_Tool_Set_Callback(self, bActive)

    def Set_Manager(self, pManager):
        return _saga_api.CSG_Tool_Set_Manager(self, pManager)

    def Get_Manager(self):
        return _saga_api.CSG_Tool_Get_Manager(self)

    def Create_Manager(self):
        return _saga_api.CSG_Tool_Create_Manager(self)

    def Delete_Manager(self, bDetachData=False, bReset=True):
        return _saga_api.CSG_Tool_Delete_Manager(self, bDetachData, bReset)

    def Set_Grid_System(self, System):
        return _saga_api.CSG_Tool_Set_Grid_System(self, System)

    def Get_Grid_System(self):
        return _saga_api.CSG_Tool_Get_Grid_System(self)

    def Settings_Push(self, pManager=None):
        return _saga_api.CSG_Tool_Settings_Push(self, pManager)

    def Settings_Pop(self):
        return _saga_api.CSG_Tool_Settings_Pop(self)

    def do_Sync_Projections(self):
        return _saga_api.CSG_Tool_do_Sync_Projections(self)

    def needs_GUI(self):
        return _saga_api.CSG_Tool_needs_GUI(self)

    def has_GUI(self):
        return _saga_api.CSG_Tool_has_GUI(self)

    def has_CMD(self):
        return _saga_api.CSG_Tool_has_CMD(self)

    def is_Grid(self):
        return _saga_api.CSG_Tool_is_Grid(self)

    def is_Interactive(self):
        return _saga_api.CSG_Tool_is_Interactive(self)

    def is_Progress(self):
        return _saga_api.CSG_Tool_is_Progress(self)

    def is_Executing(self):
        return _saga_api.CSG_Tool_is_Executing(self)

    def Set_Show_Progress(self, bOn=True):
        return _saga_api.CSG_Tool_Set_Show_Progress(self, bOn)

    def On_Before_Execution(self):
        return _saga_api.CSG_Tool_On_Before_Execution(self)

    def On_After_Execution(self):
        return _saga_api.CSG_Tool_On_After_Execution(self)

    def Execute(self, bAddHistory=False):
        return _saga_api.CSG_Tool_Execute(self, bAddHistory)

    def Get_Execution_Info(self):
        return _saga_api.CSG_Tool_Get_Execution_Info(self)

    def Get_History(self, Depth=-1):
        return _saga_api.CSG_Tool_Get_History(self, Depth)

    def Set_History(self, pDataObject, Depth=-1):
        return _saga_api.CSG_Tool_Set_History(self, pDataObject, Depth)
    Script_Format_CMD_Shell = _saga_api.CSG_Tool_Script_Format_CMD_Shell
    Script_Format_CMD_Batch = _saga_api.CSG_Tool_Script_Format_CMD_Batch
    Script_Format_CMD_Usage = _saga_api.CSG_Tool_Script_Format_CMD_Usage
    Script_Format_Toolchain = _saga_api.CSG_Tool_Script_Format_Toolchain
    Script_Format_Python = _saga_api.CSG_Tool_Script_Format_Python
    Script_Format_Python_Wrapper_Func_Name = _saga_api.CSG_Tool_Script_Format_Python_Wrapper_Func_Name
    Script_Format_Python_Wrapper_Func_ID = _saga_api.CSG_Tool_Script_Format_Python_Wrapper_Func_ID
    Script_Format_Python_Wrapper_Call_Name = _saga_api.CSG_Tool_Script_Format_Python_Wrapper_Call_Name
    Script_Format_Python_Wrapper_Call_ID = _saga_api.CSG_Tool_Script_Format_Python_Wrapper_Call_ID
    Script_Format_Markdown_Table = _saga_api.CSG_Tool_Script_Format_Markdown_Table

    def Get_Script(self, Format, bHeader=True, Arguments=0, bWrapArgs=True):
        return _saga_api.CSG_Tool_Get_Script(self, Format, bHeader, Arguments, bWrapArgs)

# Register CSG_Tool in _saga_api:
_saga_api.CSG_Tool_swigregister(CSG_Tool)
class CSG_Tool_Grid(CSG_Tool):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Tool_Grid

    def Get_Type(self):
        return _saga_api.CSG_Tool_Grid_Get_Type(self)

    def Get_System(self):
        return _saga_api.CSG_Tool_Grid_Get_System(self)

    def Set_System(self, System):
        return _saga_api.CSG_Tool_Grid_Set_System(self, System)

    def is_Grid(self):
        return _saga_api.CSG_Tool_Grid_is_Grid(self)

# Register CSG_Tool_Grid in _saga_api:
_saga_api.CSG_Tool_Grid_swigregister(CSG_Tool_Grid)
TOOL_INTERACTIVE_UNDEFINED = _saga_api.TOOL_INTERACTIVE_UNDEFINED
TOOL_INTERACTIVE_LDOWN = _saga_api.TOOL_INTERACTIVE_LDOWN
TOOL_INTERACTIVE_LUP = _saga_api.TOOL_INTERACTIVE_LUP
TOOL_INTERACTIVE_LDCLICK = _saga_api.TOOL_INTERACTIVE_LDCLICK
TOOL_INTERACTIVE_MDOWN = _saga_api.TOOL_INTERACTIVE_MDOWN
TOOL_INTERACTIVE_MUP = _saga_api.TOOL_INTERACTIVE_MUP
TOOL_INTERACTIVE_MDCLICK = _saga_api.TOOL_INTERACTIVE_MDCLICK
TOOL_INTERACTIVE_RDOWN = _saga_api.TOOL_INTERACTIVE_RDOWN
TOOL_INTERACTIVE_RUP = _saga_api.TOOL_INTERACTIVE_RUP
TOOL_INTERACTIVE_RDCLICK = _saga_api.TOOL_INTERACTIVE_RDCLICK
TOOL_INTERACTIVE_MOVE = _saga_api.TOOL_INTERACTIVE_MOVE
TOOL_INTERACTIVE_MOVE_LDOWN = _saga_api.TOOL_INTERACTIVE_MOVE_LDOWN
TOOL_INTERACTIVE_MOVE_MDOWN = _saga_api.TOOL_INTERACTIVE_MOVE_MDOWN
TOOL_INTERACTIVE_MOVE_RDOWN = _saga_api.TOOL_INTERACTIVE_MOVE_RDOWN
TOOL_INTERACTIVE_DRAG_NONE = _saga_api.TOOL_INTERACTIVE_DRAG_NONE
TOOL_INTERACTIVE_DRAG_LINE = _saga_api.TOOL_INTERACTIVE_DRAG_LINE
TOOL_INTERACTIVE_DRAG_BOX = _saga_api.TOOL_INTERACTIVE_DRAG_BOX
TOOL_INTERACTIVE_DRAG_CIRCLE = _saga_api.TOOL_INTERACTIVE_DRAG_CIRCLE
TOOL_INTERACTIVE_KEY_LEFT = _saga_api.TOOL_INTERACTIVE_KEY_LEFT
TOOL_INTERACTIVE_KEY_MIDDLE = _saga_api.TOOL_INTERACTIVE_KEY_MIDDLE
TOOL_INTERACTIVE_KEY_RIGHT = _saga_api.TOOL_INTERACTIVE_KEY_RIGHT
TOOL_INTERACTIVE_KEY_SHIFT = _saga_api.TOOL_INTERACTIVE_KEY_SHIFT
TOOL_INTERACTIVE_KEY_ALT = _saga_api.TOOL_INTERACTIVE_KEY_ALT
TOOL_INTERACTIVE_KEY_CTRL = _saga_api.TOOL_INTERACTIVE_KEY_CTRL
class CSG_Tool_Interactive_Base(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Tool_Interactive_Base_swiginit(self, _saga_api.new_CSG_Tool_Interactive_Base())
    __swig_destroy__ = _saga_api.delete_CSG_Tool_Interactive_Base

    def Set_Projection(self, Projection):
        return _saga_api.CSG_Tool_Interactive_Base_Set_Projection(self, Projection)

    def Execute_Position(self, ptWorld, Mode, Keys):
        return _saga_api.CSG_Tool_Interactive_Base_Execute_Position(self, ptWorld, Mode, Keys)

    def Execute_Keyboard(self, Character, Keys):
        return _saga_api.CSG_Tool_Interactive_Base_Execute_Keyboard(self, Character, Keys)

    def Execute_Finish(self):
        return _saga_api.CSG_Tool_Interactive_Base_Execute_Finish(self)

    def Get_Drag_Mode(self):
        return _saga_api.CSG_Tool_Interactive_Base_Get_Drag_Mode(self)

# Register CSG_Tool_Interactive_Base in _saga_api:
_saga_api.CSG_Tool_Interactive_Base_swigregister(CSG_Tool_Interactive_Base)
class CSG_Tool_Interactive(CSG_Tool_Interactive_Base, CSG_Tool):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Tool_Interactive

    def Get_Type(self):
        return _saga_api.CSG_Tool_Interactive_Get_Type(self)

    def needs_GUI(self):
        return _saga_api.CSG_Tool_Interactive_needs_GUI(self)

    def is_Interactive(self):
        return _saga_api.CSG_Tool_Interactive_is_Interactive(self)

# Register CSG_Tool_Interactive in _saga_api:
_saga_api.CSG_Tool_Interactive_swigregister(CSG_Tool_Interactive)
class CSG_Tool_Grid_Interactive(CSG_Tool_Interactive_Base, CSG_Tool_Grid):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _saga_api.delete_CSG_Tool_Grid_Interactive

    def Get_Type(self):
        return _saga_api.CSG_Tool_Grid_Interactive_Get_Type(self)

    def needs_GUI(self):
        return _saga_api.CSG_Tool_Grid_Interactive_needs_GUI(self)

    def is_Interactive(self):
        return _saga_api.CSG_Tool_Grid_Interactive_is_Interactive(self)

# Register CSG_Tool_Grid_Interactive in _saga_api:
_saga_api.CSG_Tool_Grid_Interactive_swigregister(CSG_Tool_Grid_Interactive)
TLB_INFO_Name = _saga_api.TLB_INFO_Name
TLB_INFO_Description = _saga_api.TLB_INFO_Description
TLB_INFO_Author = _saga_api.TLB_INFO_Author
TLB_INFO_Version = _saga_api.TLB_INFO_Version
TLB_INFO_Menu_Path = _saga_api.TLB_INFO_Menu_Path
TLB_INFO_Category = _saga_api.TLB_INFO_Category
TLB_INFO_User = _saga_api.TLB_INFO_User
TLB_INFO_File = _saga_api.TLB_INFO_File
TLB_INFO_Library = _saga_api.TLB_INFO_Library
TLB_INFO_SAGA_Version = _saga_api.TLB_INFO_SAGA_Version
TLB_INFO_Count = _saga_api.TLB_INFO_Count
class CSG_Tool_Library_Interface(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Tool_Library_Interface_swiginit(self, _saga_api.new_CSG_Tool_Library_Interface())
    __swig_destroy__ = _saga_api.delete_CSG_Tool_Library_Interface

    def Create(self, Version, TLB_Path, Fnc_Info, Fnc_Create_Tool):
        return _saga_api.CSG_Tool_Library_Interface_Create(self, Version, TLB_Path, Fnc_Info, Fnc_Create_Tool)

    def Destroy(self):
        return _saga_api.CSG_Tool_Library_Interface_Destroy(self)

    def Get_Info(self, ID):
        return _saga_api.CSG_Tool_Library_Interface_Get_Info(self, ID)

    def Get_Count(self):
        return _saga_api.CSG_Tool_Library_Interface_Get_Count(self)

    def Get_Tool(self, i):
        return _saga_api.CSG_Tool_Library_Interface_Get_Tool(self, i)

    def Create_Tool(self, i, bWithGUI=False, bWithCMD=True):
        return _saga_api.CSG_Tool_Library_Interface_Create_Tool(self, i, bWithGUI, bWithCMD)

    def Delete_Tool(self, pTool):
        return _saga_api.CSG_Tool_Library_Interface_Delete_Tool(self, pTool)

    def Delete_Tools(self):
        return _saga_api.CSG_Tool_Library_Interface_Delete_Tools(self)

# Register CSG_Tool_Library_Interface in _saga_api:
_saga_api.CSG_Tool_Library_Interface_swigregister(CSG_Tool_Library_Interface)
SYMBOL_TLB_Initialize = _saga_api.SYMBOL_TLB_Initialize
SYMBOL_TLB_Finalize = _saga_api.SYMBOL_TLB_Finalize
SYMBOL_TLB_Get_Interface = _saga_api.SYMBOL_TLB_Get_Interface
ESG_Library_Type_Library = _saga_api.ESG_Library_Type_Library
ESG_Library_Type_Chain = _saga_api.ESG_Library_Type_Chain
ESG_Library_Type_Undefined = _saga_api.ESG_Library_Type_Undefined
class CSG_Tool_Library(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Get_Type(self):
        return _saga_api.CSG_Tool_Library_Get_Type(self)

    def is_Valid(self):
        return _saga_api.CSG_Tool_Library_is_Valid(self)

    def Get_Library_Name(self):
        return _saga_api.CSG_Tool_Library_Get_Library_Name(self)

    def Get_Info(self, Type):
        return _saga_api.CSG_Tool_Library_Get_Info(self, Type)

    def Get_Name(self):
        return _saga_api.CSG_Tool_Library_Get_Name(self)

    def Get_Description(self):
        return _saga_api.CSG_Tool_Library_Get_Description(self)

    def Get_Author(self):
        return _saga_api.CSG_Tool_Library_Get_Author(self)

    def Get_Version(self):
        return _saga_api.CSG_Tool_Library_Get_Version(self)

    def Get_Category(self):
        return _saga_api.CSG_Tool_Library_Get_Category(self)

    def Get_Summary(self, *args):
        return _saga_api.CSG_Tool_Library_Get_Summary(self, *args)

    def Get_Count(self):
        return _saga_api.CSG_Tool_Library_Get_Count(self)

    def Get_Tool(self, *args):
        return _saga_api.CSG_Tool_Library_Get_Tool(self, *args)

    def Create_Tool(self, *args):
        return _saga_api.CSG_Tool_Library_Create_Tool(self, *args)

    def Delete_Tool(self, pTool):
        return _saga_api.CSG_Tool_Library_Delete_Tool(self, pTool)

    def Delete_Tools(self):
        return _saga_api.CSG_Tool_Library_Delete_Tools(self)

    def Get_File_Name(self, *args):
        return _saga_api.CSG_Tool_Library_Get_File_Name(self, *args)

    def Get_Menu(self, *args):
        return _saga_api.CSG_Tool_Library_Get_Menu(self, *args)

    def Add_Reference(self, *args):
        return _saga_api.CSG_Tool_Library_Add_Reference(self, *args)

    def Del_References(self):
        return _saga_api.CSG_Tool_Library_Del_References(self)

    def Get_References(self):
        return _saga_api.CSG_Tool_Library_Get_References(self)

# Register CSG_Tool_Library in _saga_api:
_saga_api.CSG_Tool_Library_swigregister(CSG_Tool_Library)
class CSG_Tool_Library_Manager(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Tool_Library_Manager_swiginit(self, _saga_api.new_CSG_Tool_Library_Manager())
    __swig_destroy__ = _saga_api.delete_CSG_Tool_Library_Manager

    def Destroy(self):
        return _saga_api.CSG_Tool_Library_Manager_Destroy(self)

    def Get_Count(self):
        return _saga_api.CSG_Tool_Library_Manager_Get_Count(self)

    def Get_Tool_Count(self):
        return _saga_api.CSG_Tool_Library_Manager_Get_Tool_Count(self)

    def Add_Default_Libraries(self, bVerbose=False):
        return _saga_api.CSG_Tool_Library_Manager_Add_Default_Libraries(self, bVerbose)

    def Add_Library(self, *args):
        return _saga_api.CSG_Tool_Library_Manager_Add_Library(self, *args)

    def Add_Directory(self, *args):
        return _saga_api.CSG_Tool_Library_Manager_Add_Directory(self, *args)

    def Del_Library(self, *args):
        return _saga_api.CSG_Tool_Library_Manager_Del_Library(self, *args)

    def Get_Library(self, *args):
        return _saga_api.CSG_Tool_Library_Manager_Get_Library(self, *args)

    def is_Loaded(self, pLibrary):
        return _saga_api.CSG_Tool_Library_Manager_is_Loaded(self, pLibrary)

    def Get_Tool(self, *args):
        return _saga_api.CSG_Tool_Library_Manager_Get_Tool(self, *args)

    def Create_Tool(self, *args):
        return _saga_api.CSG_Tool_Library_Manager_Create_Tool(self, *args)

    def Delete_Tool(self, pTool):
        return _saga_api.CSG_Tool_Library_Manager_Delete_Tool(self, pTool)

    def Get_Summary(self, *args):
        return _saga_api.CSG_Tool_Library_Manager_Get_Summary(self, *args)

    def Create_Python_ToolBox(self, Destination, bClean=True, bName=True, bSingleFile=False):
        return _saga_api.CSG_Tool_Library_Manager_Create_Python_ToolBox(self, Destination, bClean, bName, bSingleFile)

# Register CSG_Tool_Library_Manager in _saga_api:
_saga_api.CSG_Tool_Library_Manager_swigregister(CSG_Tool_Library_Manager)

def SG_Get_Tool_Library_Manager():
    return _saga_api.SG_Get_Tool_Library_Manager()
class CSG_Data_Collection(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr

    def Count(self):
        return _saga_api.CSG_Data_Collection_Count(self)

    def Get(self, i):
        return _saga_api.CSG_Data_Collection_Get(self, i)

    def Delete(self, *args):
        return _saga_api.CSG_Data_Collection_Delete(self, *args)

    def Find(self, File, bNative=True):
        return _saga_api.CSG_Data_Collection_Find(self, File, bNative)

    def Exists(self, pObject):
        return _saga_api.CSG_Data_Collection_Exists(self, pObject)

# Register CSG_Data_Collection in _saga_api:
_saga_api.CSG_Data_Collection_swigregister(CSG_Data_Collection)
class CSG_Data_Manager(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _saga_api.CSG_Data_Manager_swiginit(self, _saga_api.new_CSG_Data_Manager())
    __swig_destroy__ = _saga_api.delete_CSG_Data_Manager

    def Table(self, *args):
        return _saga_api.CSG_Data_Manager_Table(self, *args)

    def TIN(self, *args):
        return _saga_api.CSG_Data_Manager_TIN(self, *args)

    def PointCloud(self, *args):
        return _saga_api.CSG_Data_Manager_PointCloud(self, *args)

    def Shapes(self, *args):
        return _saga_api.CSG_Data_Manager_Shapes(self, *args)

    def Grid(self, *args):
        return _saga_api.CSG_Data_Manager_Grid(self, *args)

    def Grids(self, *args):
        return _saga_api.CSG_Data_Manager_Grids(self, *args)

    def Add(self, *args):
        return _saga_api.CSG_Data_Manager_Add(self, *args)

    def Add_Table(self, *args):
        return _saga_api.CSG_Data_Manager_Add_Table(self, *args)

    def Add_Shapes(self, *args):
        return _saga_api.CSG_Data_Manager_Add_Shapes(self, *args)

    def Add_PointCloud(self, *args):
        return _saga_api.CSG_Data_Manager_Add_PointCloud(self, *args)

    def Add_TIN(self, *args):
        return _saga_api.CSG_Data_Manager_Add_TIN(self, *args)

    def Add_Grid(self, *args):
        return _saga_api.CSG_Data_Manager_Add_Grid(self, *args)

    def Add_Grids(self, *args):
        return _saga_api.CSG_Data_Manager_Add_Grids(self, *args)

    def Delete(self, *args):
        return _saga_api.CSG_Data_Manager_Delete(self, *args)

    def Find(self, File, bNative=True):
        return _saga_api.CSG_Data_Manager_Find(self, File, bNative)

    def Exists(self, pObject):
        return _saga_api.CSG_Data_Manager_Exists(self, pObject)

    def Get_Summary(self):
        return _saga_api.CSG_Data_Manager_Get_Summary(self)

# Register CSG_Data_Manager in _saga_api:
_saga_api.CSG_Data_Manager_swigregister(CSG_Data_Manager)

def SG_Get_Data_Manager():
    return _saga_api.SG_Get_Data_Manager()
SAGA_MAJOR_VERSION = _saga_api.SAGA_MAJOR_VERSION
SAGA_MINOR_VERSION = _saga_api.SAGA_MINOR_VERSION
SAGA_RELEASE_NUMBER = _saga_api.SAGA_RELEASE_NUMBER
SAGA_VERSION = _saga_api.SAGA_VERSION

def SAGA_API_Get_Version():
    return _saga_api.SAGA_API_Get_Version()

def SG_Compare_Version(*args):
    return _saga_api.SG_Compare_Version(*args)

def SG_Compare_SAGA_Version(*args):
    return _saga_api.SG_Compare_SAGA_Version(*args)

