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



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

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

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

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

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


try:
    import weakref
    weakref_proxy = weakref.proxy
except:
    weakref_proxy = lambda x: x


class SwigPyIterator(_object):
    """Proxy of C++ swig::SwigPyIterator class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, SwigPyIterator, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, SwigPyIterator, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_SwigPyIterator
    __del__ = lambda self : None;
    def value(self):
        """
        value(SwigPyIterator self) -> PyObject *

        Parameters:
            self: swig::SwigPyIterator const *

        """
        return _opensim.SwigPyIterator_value(self)

    def incr(self, n=1):
        """
        incr(SwigPyIterator self, size_t n=1) -> SwigPyIterator

        Parameters:
            n: size_t

        incr(SwigPyIterator self) -> SwigPyIterator

        Parameters:
            self: swig::SwigPyIterator *

        """
        return _opensim.SwigPyIterator_incr(self, n)

    def decr(self, n=1):
        """
        decr(SwigPyIterator self, size_t n=1) -> SwigPyIterator

        Parameters:
            n: size_t

        decr(SwigPyIterator self) -> SwigPyIterator

        Parameters:
            self: swig::SwigPyIterator *

        """
        return _opensim.SwigPyIterator_decr(self, n)

    def distance(self, *args):
        """
        distance(SwigPyIterator self, SwigPyIterator x) -> ptrdiff_t

        Parameters:
            x: swig::SwigPyIterator const &

        """
        return _opensim.SwigPyIterator_distance(self, *args)

    def equal(self, *args):
        """
        equal(SwigPyIterator self, SwigPyIterator x) -> bool

        Parameters:
            x: swig::SwigPyIterator const &

        """
        return _opensim.SwigPyIterator_equal(self, *args)

    def copy(self):
        """
        copy(SwigPyIterator self) -> SwigPyIterator

        Parameters:
            self: swig::SwigPyIterator const *

        """
        return _opensim.SwigPyIterator_copy(self)

    def next(self):
        """
        next(SwigPyIterator self) -> PyObject *

        Parameters:
            self: swig::SwigPyIterator *

        """
        return _opensim.SwigPyIterator_next(self)

    def __next__(self):
        """
        __next__(SwigPyIterator self) -> PyObject *

        Parameters:
            self: swig::SwigPyIterator *

        """
        return _opensim.SwigPyIterator___next__(self)

    def previous(self):
        """
        previous(SwigPyIterator self) -> PyObject *

        Parameters:
            self: swig::SwigPyIterator *

        """
        return _opensim.SwigPyIterator_previous(self)

    def advance(self, *args):
        """
        advance(SwigPyIterator self, ptrdiff_t n) -> SwigPyIterator

        Parameters:
            n: ptrdiff_t

        """
        return _opensim.SwigPyIterator_advance(self, *args)

    def __eq__(self, *args):
        """
        __eq__(SwigPyIterator self, SwigPyIterator x) -> bool

        Parameters:
            x: swig::SwigPyIterator const &

        """
        return _opensim.SwigPyIterator___eq__(self, *args)

    def __ne__(self, *args):
        """
        __ne__(SwigPyIterator self, SwigPyIterator x) -> bool

        Parameters:
            x: swig::SwigPyIterator const &

        """
        return _opensim.SwigPyIterator___ne__(self, *args)

    def __iadd__(self, *args):
        """
        __iadd__(SwigPyIterator self, ptrdiff_t n) -> SwigPyIterator

        Parameters:
            n: ptrdiff_t

        """
        return _opensim.SwigPyIterator___iadd__(self, *args)

    def __isub__(self, *args):
        """
        __isub__(SwigPyIterator self, ptrdiff_t n) -> SwigPyIterator

        Parameters:
            n: ptrdiff_t

        """
        return _opensim.SwigPyIterator___isub__(self, *args)

    def __add__(self, *args):
        """
        __add__(SwigPyIterator self, ptrdiff_t n) -> SwigPyIterator

        Parameters:
            n: ptrdiff_t

        """
        return _opensim.SwigPyIterator___add__(self, *args)

    def __sub__(self, *args):
        """
        __sub__(SwigPyIterator self, ptrdiff_t n) -> SwigPyIterator

        Parameters:
            n: ptrdiff_t

        __sub__(SwigPyIterator self, SwigPyIterator x) -> ptrdiff_t

        Parameters:
            x: swig::SwigPyIterator const &

        """
        return _opensim.SwigPyIterator___sub__(self, *args)

    def __iter__(self): return self
SwigPyIterator_swigregister = _opensim.SwigPyIterator_swigregister
SwigPyIterator_swigregister(SwigPyIterator)

GET_SYSTEM_INFO = _opensim.GET_SYSTEM_INFO
GET_COMPILER_INFO = _opensim.GET_COMPILER_INFO
GET_OS_NAME = _opensim.GET_OS_NAME

def GetVersionAndDate():
  """GetVersionAndDate() -> std::string"""
  return _opensim.GetVersionAndDate()

def GetVersion():
  """GetVersion() -> std::string"""
  return _opensim.GetVersion()

def GetOSInfoVerbose():
  """GetOSInfoVerbose() -> std::string"""
  return _opensim.GetOSInfoVerbose()

def GetOSInfo():
  """GetOSInfo() -> std::string"""
  return _opensim.GetOSInfo()

def GetCompilerVersion():
  """GetCompilerVersion() -> std::string"""
  return _opensim.GetCompilerVersion()
SimTK_PI = _opensim.SimTK_PI
SimTK_E = _opensim.SimTK_E
SimTK_LN2 = _opensim.SimTK_LN2
SimTK_LN10 = _opensim.SimTK_LN10
SimTK_LOG2E = _opensim.SimTK_LOG2E
SimTK_LOG10E = _opensim.SimTK_LOG10E
SimTK_SQRT2 = _opensim.SimTK_SQRT2
SimTK_OOSQRT2 = _opensim.SimTK_OOSQRT2
SimTK_CBRT2 = _opensim.SimTK_CBRT2
SimTK_OOCBRT2 = _opensim.SimTK_OOCBRT2
SimTK_SIXRT2 = _opensim.SimTK_SIXRT2
SimTK_OOSIXRT2 = _opensim.SimTK_OOSIXRT2
SimTK_SQRT3 = _opensim.SimTK_SQRT3
SimTK_CBRT3 = _opensim.SimTK_CBRT3
SimTK_AVOGADROS_NUMBER = _opensim.SimTK_AVOGADROS_NUMBER
SimTK_MASS_OF_PROTON_IN_MD = _opensim.SimTK_MASS_OF_PROTON_IN_MD
SimTK_MASS_OF_NEUTRON_IN_MD = _opensim.SimTK_MASS_OF_NEUTRON_IN_MD
SimTK_MASS_OF_ELECTRON_IN_MD = _opensim.SimTK_MASS_OF_ELECTRON_IN_MD
SimTK_CHARGE_OF_PROTON_IN_SI = _opensim.SimTK_CHARGE_OF_PROTON_IN_SI
SimTK_CHARGE_OF_PROTON_IN_MD = _opensim.SimTK_CHARGE_OF_PROTON_IN_MD
SimTK_MOLAR_CHARGE_IN_SI = _opensim.SimTK_MOLAR_CHARGE_IN_SI
SimTK_MOLAR_CHARGE_IN_MD = _opensim.SimTK_MOLAR_CHARGE_IN_MD
SimTK_LIGHTSPEED_IN_SI = _opensim.SimTK_LIGHTSPEED_IN_SI
SimTK_LIGHTSPEED_IN_MD = _opensim.SimTK_LIGHTSPEED_IN_MD
SimTK_GRAVITATIONAL_CONSTANT_IN_SI = _opensim.SimTK_GRAVITATIONAL_CONSTANT_IN_SI
SimTK_GRAVITATIONAL_CONSTANT_IN_MD = _opensim.SimTK_GRAVITATIONAL_CONSTANT_IN_MD
SimTK_MAGNETIC_PERMEABILITY_IN_SI = _opensim.SimTK_MAGNETIC_PERMEABILITY_IN_SI
SimTK_MAGNETIC_PERMEABILITY_IN_MD = _opensim.SimTK_MAGNETIC_PERMEABILITY_IN_MD
SimTK_ELECTRIC_PERMITTIVITY_IN_SI = _opensim.SimTK_ELECTRIC_PERMITTIVITY_IN_SI
SimTK_ELECTRIC_PERMITTIVITY_IN_MD = _opensim.SimTK_ELECTRIC_PERMITTIVITY_IN_MD
SimTK_COULOMB_CONSTANT_IN_SI = _opensim.SimTK_COULOMB_CONSTANT_IN_SI
SimTK_COULOMB_CONSTANT_IN_MD = _opensim.SimTK_COULOMB_CONSTANT_IN_MD
SimTK_COULOMB_CONSTANT_IN_KCAL_ANGSTROM = _opensim.SimTK_COULOMB_CONSTANT_IN_KCAL_ANGSTROM
SimTK_MOLAR_GAS_CONSTANT_SI = _opensim.SimTK_MOLAR_GAS_CONSTANT_SI
SimTK_MOLAR_GAS_CONSTANT_MD = _opensim.SimTK_MOLAR_GAS_CONSTANT_MD
SimTK_MOLAR_GAS_CONSTANT_KCAL_ANGSTROM = _opensim.SimTK_MOLAR_GAS_CONSTANT_KCAL_ANGSTROM
SimTK_BOLTZMANN_CONSTANT_SI = _opensim.SimTK_BOLTZMANN_CONSTANT_SI
SimTK_BOLTZMANN_CONSTANT_MD = _opensim.SimTK_BOLTZMANN_CONSTANT_MD
SimTK_BOLTZMANN_CONSTANT_KCAL_ANGSTROM = _opensim.SimTK_BOLTZMANN_CONSTANT_KCAL_ANGSTROM
SimTK_RADIAN_TO_DEGREE = _opensim.SimTK_RADIAN_TO_DEGREE
SimTK_DEGREE_TO_RADIAN = _opensim.SimTK_DEGREE_TO_RADIAN
SimTK_NS_TO_S = _opensim.SimTK_NS_TO_S
SimTK_S_TO_NS = _opensim.SimTK_S_TO_NS
SimTK_KCAL_TO_KJOULE = _opensim.SimTK_KCAL_TO_KJOULE
SimTK_KJOULE_TO_KCAL = _opensim.SimTK_KJOULE_TO_KCAL
SimTK_DALTON_TO_GRAM = _opensim.SimTK_DALTON_TO_GRAM
SimTK_E_TO_COULOMB = _opensim.SimTK_E_TO_COULOMB
SimTK_EV_TO_JOULE = _opensim.SimTK_EV_TO_JOULE
class Vec2(_object):
    """Proxy of C++ SimTK::Vec<(2)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Vec2, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Vec2, name)
    __repr__ = _swig_repr
    def size():
        """size() -> int"""
        return _opensim.Vec2_size()

    if _newclass:size = staticmethod(size)
    __swig_getmethods__["size"] = lambda x: size
    def nrow():
        """nrow() -> int"""
        return _opensim.Vec2_nrow()

    if _newclass:nrow = staticmethod(nrow)
    __swig_getmethods__["nrow"] = lambda x: nrow
    def ncol():
        """ncol() -> int"""
        return _opensim.Vec2_ncol()

    if _newclass:ncol = staticmethod(ncol)
    __swig_getmethods__["ncol"] = lambda x: ncol
    def __init__(self, *args): 
        """
        __init__(SimTK::Vec<(2)> self) -> Vec2
        __init__(SimTK::Vec<(2)> self, Vec2 src) -> Vec2

        Parameters:
            src: SimTK::Vec< 2 > const &

        __init__(SimTK::Vec<(2)> self, double const & e) -> Vec2

        Parameters:
            e: double const &

        __init__(SimTK::Vec<(2)> self, int i) -> Vec2

        Parameters:
            i: int

        __init__(SimTK::Vec<(2)> self, SimTK::Vec< 2 >::E const & e0, SimTK::Vec< 2 >::E const & e1) -> Vec2

        Parameters:
            e0: SimTK::Vec< 2 >::E const &
            e1: SimTK::Vec< 2 >::E const &

        __init__(SimTK::Vec<(2)> self, SimTK::Vec< 2 >::E const & e0, SimTK::Vec< 2 >::E const & e1, SimTK::Vec< 2 >::E const & e2) -> Vec2

        Parameters:
            e0: SimTK::Vec< 2 >::E const &
            e1: SimTK::Vec< 2 >::E const &
            e2: SimTK::Vec< 2 >::E const &

        __init__(SimTK::Vec<(2)> self, SimTK::Vec< 2 >::E const & e0, SimTK::Vec< 2 >::E const & e1, SimTK::Vec< 2 >::E const & e2, 
            SimTK::Vec< 2 >::E const & e3) -> Vec2

        Parameters:
            e0: SimTK::Vec< 2 >::E const &
            e1: SimTK::Vec< 2 >::E const &
            e2: SimTK::Vec< 2 >::E const &
            e3: SimTK::Vec< 2 >::E const &

        __init__(SimTK::Vec<(2)> self, SimTK::Vec< 2 >::E const & e0, SimTK::Vec< 2 >::E const & e1, SimTK::Vec< 2 >::E const & e2, 
            SimTK::Vec< 2 >::E const & e3, SimTK::Vec< 2 >::E const & e4) -> Vec2

        Parameters:
            e0: SimTK::Vec< 2 >::E const &
            e1: SimTK::Vec< 2 >::E const &
            e2: SimTK::Vec< 2 >::E const &
            e3: SimTK::Vec< 2 >::E const &
            e4: SimTK::Vec< 2 >::E const &

        __init__(SimTK::Vec<(2)> self, SimTK::Vec< 2 >::E const & e0, SimTK::Vec< 2 >::E const & e1, SimTK::Vec< 2 >::E const & e2, 
            SimTK::Vec< 2 >::E const & e3, SimTK::Vec< 2 >::E const & e4, SimTK::Vec< 2 >::E const & e5) -> Vec2

        Parameters:
            e0: SimTK::Vec< 2 >::E const &
            e1: SimTK::Vec< 2 >::E const &
            e2: SimTK::Vec< 2 >::E const &
            e3: SimTK::Vec< 2 >::E const &
            e4: SimTK::Vec< 2 >::E const &
            e5: SimTK::Vec< 2 >::E const &

        __init__(SimTK::Vec<(2)> self, SimTK::Vec< 2 >::E const & e0, SimTK::Vec< 2 >::E const & e1, SimTK::Vec< 2 >::E const & e2, 
            SimTK::Vec< 2 >::E const & e3, SimTK::Vec< 2 >::E const & e4, SimTK::Vec< 2 >::E const & e5, 
            SimTK::Vec< 2 >::E const & e6) -> Vec2

        Parameters:
            e0: SimTK::Vec< 2 >::E const &
            e1: SimTK::Vec< 2 >::E const &
            e2: SimTK::Vec< 2 >::E const &
            e3: SimTK::Vec< 2 >::E const &
            e4: SimTK::Vec< 2 >::E const &
            e5: SimTK::Vec< 2 >::E const &
            e6: SimTK::Vec< 2 >::E const &

        __init__(SimTK::Vec<(2)> self, SimTK::Vec< 2 >::E const & e0, SimTK::Vec< 2 >::E const & e1, SimTK::Vec< 2 >::E const & e2, 
            SimTK::Vec< 2 >::E const & e3, SimTK::Vec< 2 >::E const & e4, SimTK::Vec< 2 >::E const & e5, 
            SimTK::Vec< 2 >::E const & e6, SimTK::Vec< 2 >::E const & e7) -> Vec2

        Parameters:
            e0: SimTK::Vec< 2 >::E const &
            e1: SimTK::Vec< 2 >::E const &
            e2: SimTK::Vec< 2 >::E const &
            e3: SimTK::Vec< 2 >::E const &
            e4: SimTK::Vec< 2 >::E const &
            e5: SimTK::Vec< 2 >::E const &
            e6: SimTK::Vec< 2 >::E const &
            e7: SimTK::Vec< 2 >::E const &

        __init__(SimTK::Vec<(2)> self, SimTK::Vec< 2 >::E const & e0, SimTK::Vec< 2 >::E const & e1, SimTK::Vec< 2 >::E const & e2, 
            SimTK::Vec< 2 >::E const & e3, SimTK::Vec< 2 >::E const & e4, SimTK::Vec< 2 >::E const & e5, 
            SimTK::Vec< 2 >::E const & e6, SimTK::Vec< 2 >::E const & e7, 
            SimTK::Vec< 2 >::E const & e8) -> Vec2

        Parameters:
            e0: SimTK::Vec< 2 >::E const &
            e1: SimTK::Vec< 2 >::E const &
            e2: SimTK::Vec< 2 >::E const &
            e3: SimTK::Vec< 2 >::E const &
            e4: SimTK::Vec< 2 >::E const &
            e5: SimTK::Vec< 2 >::E const &
            e6: SimTK::Vec< 2 >::E const &
            e7: SimTK::Vec< 2 >::E const &
            e8: SimTK::Vec< 2 >::E const &

        """
        this = _opensim.new_Vec2(*args)
        try: self.this.append(this)
        except: self.this = this
    def setToNaN(self):
        """
        setToNaN(Vec2 self)

        Parameters:
            self: SimTK::Vec< 2 > *

        """
        return _opensim.Vec2_setToNaN(self)

    def setToZero(self):
        """
        setToZero(Vec2 self)

        Parameters:
            self: SimTK::Vec< 2 > *

        """
        return _opensim.Vec2_setToZero(self)

    def isNaN(self):
        """
        isNaN(Vec2 self) -> bool

        Parameters:
            self: SimTK::Vec< 2 > const *

        """
        return _opensim.Vec2_isNaN(self)

    def isInf(self):
        """
        isInf(Vec2 self) -> bool

        Parameters:
            self: SimTK::Vec< 2 > const *

        """
        return _opensim.Vec2_isInf(self)

    def isFinite(self):
        """
        isFinite(Vec2 self) -> bool

        Parameters:
            self: SimTK::Vec< 2 > const *

        """
        return _opensim.Vec2_isFinite(self)

    def getDefaultTolerance():
        """getDefaultTolerance() -> double"""
        return _opensim.Vec2_getDefaultTolerance()

    if _newclass:getDefaultTolerance = staticmethod(getDefaultTolerance)
    __swig_getmethods__["getDefaultTolerance"] = lambda x: getDefaultTolerance
    def isNumericallyEqual(self, *args):
        """
        isNumericallyEqual(Vec2 self, double const & e, double tol=SimTK::Vec< 2 >::getDefaultTolerance()) -> bool

        Parameters:
            e: double const &
            tol: double

        isNumericallyEqual(Vec2 self, double const & e) -> bool

        Parameters:
            e: double const &

        """
        return _opensim.Vec2_isNumericallyEqual(self, *args)

    def toString(self):
        """
        toString(Vec2 self) -> std::string

        Parameters:
            self: SimTK::Vec< 2 > const *

        """
        return _opensim.Vec2_toString(self)

    def set(self, *args):
        """
        set(Vec2 self, int i, SimTK::Vec< 2 >::E const & value)

        Parameters:
            i: int
            value: SimTK::Vec< 2 >::E const &

        """
        return _opensim.Vec2_set(self, *args)

    def get(self, *args):
        """
        get(Vec2 self, int i) -> SimTK::Vec< 2 >::E const &

        Parameters:
            i: int

        """
        return _opensim.Vec2_get(self, *args)

    __swig_destroy__ = _opensim.delete_Vec2
    __del__ = lambda self : None;
Vec2_swigregister = _opensim.Vec2_swigregister
Vec2_swigregister(Vec2)
cvar = _opensim.cvar

def Vec2_size():
  """Vec2_size() -> int"""
  return _opensim.Vec2_size()

def Vec2_nrow():
  """Vec2_nrow() -> int"""
  return _opensim.Vec2_nrow()

def Vec2_ncol():
  """Vec2_ncol() -> int"""
  return _opensim.Vec2_ncol()

def Vec2_getDefaultTolerance():
  """Vec2_getDefaultTolerance() -> double"""
  return _opensim.Vec2_getDefaultTolerance()

class Vec3(_object):
    """Proxy of C++ SimTK::Vec<(3)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Vec3, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Vec3, name)
    __repr__ = _swig_repr
    def size():
        """size() -> int"""
        return _opensim.Vec3_size()

    if _newclass:size = staticmethod(size)
    __swig_getmethods__["size"] = lambda x: size
    def nrow():
        """nrow() -> int"""
        return _opensim.Vec3_nrow()

    if _newclass:nrow = staticmethod(nrow)
    __swig_getmethods__["nrow"] = lambda x: nrow
    def ncol():
        """ncol() -> int"""
        return _opensim.Vec3_ncol()

    if _newclass:ncol = staticmethod(ncol)
    __swig_getmethods__["ncol"] = lambda x: ncol
    def __init__(self, *args): 
        """
        __init__(SimTK::Vec<(3)> self) -> Vec3
        __init__(SimTK::Vec<(3)> self, Vec3 src) -> Vec3

        Parameters:
            src: SimTK::Vec< 3 > const &

        __init__(SimTK::Vec<(3)> self, double const & e) -> Vec3

        Parameters:
            e: double const &

        __init__(SimTK::Vec<(3)> self, int i) -> Vec3

        Parameters:
            i: int

        __init__(SimTK::Vec<(3)> self, SimTK::Vec< 3 >::E const & e0, SimTK::Vec< 3 >::E const & e1) -> Vec3

        Parameters:
            e0: SimTK::Vec< 3 >::E const &
            e1: SimTK::Vec< 3 >::E const &

        __init__(SimTK::Vec<(3)> self, SimTK::Vec< 3 >::E const & e0, SimTK::Vec< 3 >::E const & e1, SimTK::Vec< 3 >::E const & e2) -> Vec3

        Parameters:
            e0: SimTK::Vec< 3 >::E const &
            e1: SimTK::Vec< 3 >::E const &
            e2: SimTK::Vec< 3 >::E const &

        __init__(SimTK::Vec<(3)> self, SimTK::Vec< 3 >::E const & e0, SimTK::Vec< 3 >::E const & e1, SimTK::Vec< 3 >::E const & e2, 
            SimTK::Vec< 3 >::E const & e3) -> Vec3

        Parameters:
            e0: SimTK::Vec< 3 >::E const &
            e1: SimTK::Vec< 3 >::E const &
            e2: SimTK::Vec< 3 >::E const &
            e3: SimTK::Vec< 3 >::E const &

        __init__(SimTK::Vec<(3)> self, SimTK::Vec< 3 >::E const & e0, SimTK::Vec< 3 >::E const & e1, SimTK::Vec< 3 >::E const & e2, 
            SimTK::Vec< 3 >::E const & e3, SimTK::Vec< 3 >::E const & e4) -> Vec3

        Parameters:
            e0: SimTK::Vec< 3 >::E const &
            e1: SimTK::Vec< 3 >::E const &
            e2: SimTK::Vec< 3 >::E const &
            e3: SimTK::Vec< 3 >::E const &
            e4: SimTK::Vec< 3 >::E const &

        __init__(SimTK::Vec<(3)> self, SimTK::Vec< 3 >::E const & e0, SimTK::Vec< 3 >::E const & e1, SimTK::Vec< 3 >::E const & e2, 
            SimTK::Vec< 3 >::E const & e3, SimTK::Vec< 3 >::E const & e4, SimTK::Vec< 3 >::E const & e5) -> Vec3

        Parameters:
            e0: SimTK::Vec< 3 >::E const &
            e1: SimTK::Vec< 3 >::E const &
            e2: SimTK::Vec< 3 >::E const &
            e3: SimTK::Vec< 3 >::E const &
            e4: SimTK::Vec< 3 >::E const &
            e5: SimTK::Vec< 3 >::E const &

        __init__(SimTK::Vec<(3)> self, SimTK::Vec< 3 >::E const & e0, SimTK::Vec< 3 >::E const & e1, SimTK::Vec< 3 >::E const & e2, 
            SimTK::Vec< 3 >::E const & e3, SimTK::Vec< 3 >::E const & e4, SimTK::Vec< 3 >::E const & e5, 
            SimTK::Vec< 3 >::E const & e6) -> Vec3

        Parameters:
            e0: SimTK::Vec< 3 >::E const &
            e1: SimTK::Vec< 3 >::E const &
            e2: SimTK::Vec< 3 >::E const &
            e3: SimTK::Vec< 3 >::E const &
            e4: SimTK::Vec< 3 >::E const &
            e5: SimTK::Vec< 3 >::E const &
            e6: SimTK::Vec< 3 >::E const &

        __init__(SimTK::Vec<(3)> self, SimTK::Vec< 3 >::E const & e0, SimTK::Vec< 3 >::E const & e1, SimTK::Vec< 3 >::E const & e2, 
            SimTK::Vec< 3 >::E const & e3, SimTK::Vec< 3 >::E const & e4, SimTK::Vec< 3 >::E const & e5, 
            SimTK::Vec< 3 >::E const & e6, SimTK::Vec< 3 >::E const & e7) -> Vec3

        Parameters:
            e0: SimTK::Vec< 3 >::E const &
            e1: SimTK::Vec< 3 >::E const &
            e2: SimTK::Vec< 3 >::E const &
            e3: SimTK::Vec< 3 >::E const &
            e4: SimTK::Vec< 3 >::E const &
            e5: SimTK::Vec< 3 >::E const &
            e6: SimTK::Vec< 3 >::E const &
            e7: SimTK::Vec< 3 >::E const &

        __init__(SimTK::Vec<(3)> self, SimTK::Vec< 3 >::E const & e0, SimTK::Vec< 3 >::E const & e1, SimTK::Vec< 3 >::E const & e2, 
            SimTK::Vec< 3 >::E const & e3, SimTK::Vec< 3 >::E const & e4, SimTK::Vec< 3 >::E const & e5, 
            SimTK::Vec< 3 >::E const & e6, SimTK::Vec< 3 >::E const & e7, 
            SimTK::Vec< 3 >::E const & e8) -> Vec3

        Parameters:
            e0: SimTK::Vec< 3 >::E const &
            e1: SimTK::Vec< 3 >::E const &
            e2: SimTK::Vec< 3 >::E const &
            e3: SimTK::Vec< 3 >::E const &
            e4: SimTK::Vec< 3 >::E const &
            e5: SimTK::Vec< 3 >::E const &
            e6: SimTK::Vec< 3 >::E const &
            e7: SimTK::Vec< 3 >::E const &
            e8: SimTK::Vec< 3 >::E const &

        """
        this = _opensim.new_Vec3(*args)
        try: self.this.append(this)
        except: self.this = this
    def setToNaN(self):
        """
        setToNaN(Vec3 self)

        Parameters:
            self: SimTK::Vec< 3 > *

        """
        return _opensim.Vec3_setToNaN(self)

    def setToZero(self):
        """
        setToZero(Vec3 self)

        Parameters:
            self: SimTK::Vec< 3 > *

        """
        return _opensim.Vec3_setToZero(self)

    def isNaN(self):
        """
        isNaN(Vec3 self) -> bool

        Parameters:
            self: SimTK::Vec< 3 > const *

        """
        return _opensim.Vec3_isNaN(self)

    def isInf(self):
        """
        isInf(Vec3 self) -> bool

        Parameters:
            self: SimTK::Vec< 3 > const *

        """
        return _opensim.Vec3_isInf(self)

    def isFinite(self):
        """
        isFinite(Vec3 self) -> bool

        Parameters:
            self: SimTK::Vec< 3 > const *

        """
        return _opensim.Vec3_isFinite(self)

    def getDefaultTolerance():
        """getDefaultTolerance() -> double"""
        return _opensim.Vec3_getDefaultTolerance()

    if _newclass:getDefaultTolerance = staticmethod(getDefaultTolerance)
    __swig_getmethods__["getDefaultTolerance"] = lambda x: getDefaultTolerance
    def isNumericallyEqual(self, *args):
        """
        isNumericallyEqual(Vec3 self, double const & e, double tol=SimTK::Vec< 3 >::getDefaultTolerance()) -> bool

        Parameters:
            e: double const &
            tol: double

        isNumericallyEqual(Vec3 self, double const & e) -> bool

        Parameters:
            e: double const &

        """
        return _opensim.Vec3_isNumericallyEqual(self, *args)

    def toString(self):
        """
        toString(Vec3 self) -> std::string

        Parameters:
            self: SimTK::Vec< 3 > const *

        """
        return _opensim.Vec3_toString(self)

    def set(self, *args):
        """
        set(Vec3 self, int i, SimTK::Vec< 3 >::E const & value)

        Parameters:
            i: int
            value: SimTK::Vec< 3 >::E const &

        """
        return _opensim.Vec3_set(self, *args)

    def get(self, *args):
        """
        get(Vec3 self, int i) -> SimTK::Vec< 3 >::E const &

        Parameters:
            i: int

        """
        return _opensim.Vec3_get(self, *args)

    __swig_destroy__ = _opensim.delete_Vec3
    __del__ = lambda self : None;
Vec3_swigregister = _opensim.Vec3_swigregister
Vec3_swigregister(Vec3)

def Vec3_size():
  """Vec3_size() -> int"""
  return _opensim.Vec3_size()

def Vec3_nrow():
  """Vec3_nrow() -> int"""
  return _opensim.Vec3_nrow()

def Vec3_ncol():
  """Vec3_ncol() -> int"""
  return _opensim.Vec3_ncol()

def Vec3_getDefaultTolerance():
  """Vec3_getDefaultTolerance() -> double"""
  return _opensim.Vec3_getDefaultTolerance()

class Vec4(_object):
    """Proxy of C++ SimTK::Vec<(4)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Vec4, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Vec4, name)
    __repr__ = _swig_repr
    def size():
        """size() -> int"""
        return _opensim.Vec4_size()

    if _newclass:size = staticmethod(size)
    __swig_getmethods__["size"] = lambda x: size
    def nrow():
        """nrow() -> int"""
        return _opensim.Vec4_nrow()

    if _newclass:nrow = staticmethod(nrow)
    __swig_getmethods__["nrow"] = lambda x: nrow
    def ncol():
        """ncol() -> int"""
        return _opensim.Vec4_ncol()

    if _newclass:ncol = staticmethod(ncol)
    __swig_getmethods__["ncol"] = lambda x: ncol
    def __init__(self, *args): 
        """
        __init__(SimTK::Vec<(4)> self) -> Vec4
        __init__(SimTK::Vec<(4)> self, Vec4 src) -> Vec4

        Parameters:
            src: SimTK::Vec< 4 > const &

        __init__(SimTK::Vec<(4)> self, double const & e) -> Vec4

        Parameters:
            e: double const &

        __init__(SimTK::Vec<(4)> self, int i) -> Vec4

        Parameters:
            i: int

        __init__(SimTK::Vec<(4)> self, SimTK::Vec< 4 >::E const & e0, SimTK::Vec< 4 >::E const & e1) -> Vec4

        Parameters:
            e0: SimTK::Vec< 4 >::E const &
            e1: SimTK::Vec< 4 >::E const &

        __init__(SimTK::Vec<(4)> self, SimTK::Vec< 4 >::E const & e0, SimTK::Vec< 4 >::E const & e1, SimTK::Vec< 4 >::E const & e2) -> Vec4

        Parameters:
            e0: SimTK::Vec< 4 >::E const &
            e1: SimTK::Vec< 4 >::E const &
            e2: SimTK::Vec< 4 >::E const &

        __init__(SimTK::Vec<(4)> self, SimTK::Vec< 4 >::E const & e0, SimTK::Vec< 4 >::E const & e1, SimTK::Vec< 4 >::E const & e2, 
            SimTK::Vec< 4 >::E const & e3) -> Vec4

        Parameters:
            e0: SimTK::Vec< 4 >::E const &
            e1: SimTK::Vec< 4 >::E const &
            e2: SimTK::Vec< 4 >::E const &
            e3: SimTK::Vec< 4 >::E const &

        __init__(SimTK::Vec<(4)> self, SimTK::Vec< 4 >::E const & e0, SimTK::Vec< 4 >::E const & e1, SimTK::Vec< 4 >::E const & e2, 
            SimTK::Vec< 4 >::E const & e3, SimTK::Vec< 4 >::E const & e4) -> Vec4

        Parameters:
            e0: SimTK::Vec< 4 >::E const &
            e1: SimTK::Vec< 4 >::E const &
            e2: SimTK::Vec< 4 >::E const &
            e3: SimTK::Vec< 4 >::E const &
            e4: SimTK::Vec< 4 >::E const &

        __init__(SimTK::Vec<(4)> self, SimTK::Vec< 4 >::E const & e0, SimTK::Vec< 4 >::E const & e1, SimTK::Vec< 4 >::E const & e2, 
            SimTK::Vec< 4 >::E const & e3, SimTK::Vec< 4 >::E const & e4, SimTK::Vec< 4 >::E const & e5) -> Vec4

        Parameters:
            e0: SimTK::Vec< 4 >::E const &
            e1: SimTK::Vec< 4 >::E const &
            e2: SimTK::Vec< 4 >::E const &
            e3: SimTK::Vec< 4 >::E const &
            e4: SimTK::Vec< 4 >::E const &
            e5: SimTK::Vec< 4 >::E const &

        __init__(SimTK::Vec<(4)> self, SimTK::Vec< 4 >::E const & e0, SimTK::Vec< 4 >::E const & e1, SimTK::Vec< 4 >::E const & e2, 
            SimTK::Vec< 4 >::E const & e3, SimTK::Vec< 4 >::E const & e4, SimTK::Vec< 4 >::E const & e5, 
            SimTK::Vec< 4 >::E const & e6) -> Vec4

        Parameters:
            e0: SimTK::Vec< 4 >::E const &
            e1: SimTK::Vec< 4 >::E const &
            e2: SimTK::Vec< 4 >::E const &
            e3: SimTK::Vec< 4 >::E const &
            e4: SimTK::Vec< 4 >::E const &
            e5: SimTK::Vec< 4 >::E const &
            e6: SimTK::Vec< 4 >::E const &

        __init__(SimTK::Vec<(4)> self, SimTK::Vec< 4 >::E const & e0, SimTK::Vec< 4 >::E const & e1, SimTK::Vec< 4 >::E const & e2, 
            SimTK::Vec< 4 >::E const & e3, SimTK::Vec< 4 >::E const & e4, SimTK::Vec< 4 >::E const & e5, 
            SimTK::Vec< 4 >::E const & e6, SimTK::Vec< 4 >::E const & e7) -> Vec4

        Parameters:
            e0: SimTK::Vec< 4 >::E const &
            e1: SimTK::Vec< 4 >::E const &
            e2: SimTK::Vec< 4 >::E const &
            e3: SimTK::Vec< 4 >::E const &
            e4: SimTK::Vec< 4 >::E const &
            e5: SimTK::Vec< 4 >::E const &
            e6: SimTK::Vec< 4 >::E const &
            e7: SimTK::Vec< 4 >::E const &

        __init__(SimTK::Vec<(4)> self, SimTK::Vec< 4 >::E const & e0, SimTK::Vec< 4 >::E const & e1, SimTK::Vec< 4 >::E const & e2, 
            SimTK::Vec< 4 >::E const & e3, SimTK::Vec< 4 >::E const & e4, SimTK::Vec< 4 >::E const & e5, 
            SimTK::Vec< 4 >::E const & e6, SimTK::Vec< 4 >::E const & e7, 
            SimTK::Vec< 4 >::E const & e8) -> Vec4

        Parameters:
            e0: SimTK::Vec< 4 >::E const &
            e1: SimTK::Vec< 4 >::E const &
            e2: SimTK::Vec< 4 >::E const &
            e3: SimTK::Vec< 4 >::E const &
            e4: SimTK::Vec< 4 >::E const &
            e5: SimTK::Vec< 4 >::E const &
            e6: SimTK::Vec< 4 >::E const &
            e7: SimTK::Vec< 4 >::E const &
            e8: SimTK::Vec< 4 >::E const &

        """
        this = _opensim.new_Vec4(*args)
        try: self.this.append(this)
        except: self.this = this
    def setToNaN(self):
        """
        setToNaN(Vec4 self)

        Parameters:
            self: SimTK::Vec< 4 > *

        """
        return _opensim.Vec4_setToNaN(self)

    def setToZero(self):
        """
        setToZero(Vec4 self)

        Parameters:
            self: SimTK::Vec< 4 > *

        """
        return _opensim.Vec4_setToZero(self)

    def isNaN(self):
        """
        isNaN(Vec4 self) -> bool

        Parameters:
            self: SimTK::Vec< 4 > const *

        """
        return _opensim.Vec4_isNaN(self)

    def isInf(self):
        """
        isInf(Vec4 self) -> bool

        Parameters:
            self: SimTK::Vec< 4 > const *

        """
        return _opensim.Vec4_isInf(self)

    def isFinite(self):
        """
        isFinite(Vec4 self) -> bool

        Parameters:
            self: SimTK::Vec< 4 > const *

        """
        return _opensim.Vec4_isFinite(self)

    def getDefaultTolerance():
        """getDefaultTolerance() -> double"""
        return _opensim.Vec4_getDefaultTolerance()

    if _newclass:getDefaultTolerance = staticmethod(getDefaultTolerance)
    __swig_getmethods__["getDefaultTolerance"] = lambda x: getDefaultTolerance
    def isNumericallyEqual(self, *args):
        """
        isNumericallyEqual(Vec4 self, double const & e, double tol=SimTK::Vec< 4 >::getDefaultTolerance()) -> bool

        Parameters:
            e: double const &
            tol: double

        isNumericallyEqual(Vec4 self, double const & e) -> bool

        Parameters:
            e: double const &

        """
        return _opensim.Vec4_isNumericallyEqual(self, *args)

    def toString(self):
        """
        toString(Vec4 self) -> std::string

        Parameters:
            self: SimTK::Vec< 4 > const *

        """
        return _opensim.Vec4_toString(self)

    def set(self, *args):
        """
        set(Vec4 self, int i, SimTK::Vec< 4 >::E const & value)

        Parameters:
            i: int
            value: SimTK::Vec< 4 >::E const &

        """
        return _opensim.Vec4_set(self, *args)

    def get(self, *args):
        """
        get(Vec4 self, int i) -> SimTK::Vec< 4 >::E const &

        Parameters:
            i: int

        """
        return _opensim.Vec4_get(self, *args)

    __swig_destroy__ = _opensim.delete_Vec4
    __del__ = lambda self : None;
Vec4_swigregister = _opensim.Vec4_swigregister
Vec4_swigregister(Vec4)

def Vec4_size():
  """Vec4_size() -> int"""
  return _opensim.Vec4_size()

def Vec4_nrow():
  """Vec4_nrow() -> int"""
  return _opensim.Vec4_nrow()

def Vec4_ncol():
  """Vec4_ncol() -> int"""
  return _opensim.Vec4_ncol()

def Vec4_getDefaultTolerance():
  """Vec4_getDefaultTolerance() -> double"""
  return _opensim.Vec4_getDefaultTolerance()

class Vec6(_object):
    """Proxy of C++ SimTK::Vec<(6)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Vec6, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Vec6, name)
    __repr__ = _swig_repr
    def size():
        """size() -> int"""
        return _opensim.Vec6_size()

    if _newclass:size = staticmethod(size)
    __swig_getmethods__["size"] = lambda x: size
    def nrow():
        """nrow() -> int"""
        return _opensim.Vec6_nrow()

    if _newclass:nrow = staticmethod(nrow)
    __swig_getmethods__["nrow"] = lambda x: nrow
    def ncol():
        """ncol() -> int"""
        return _opensim.Vec6_ncol()

    if _newclass:ncol = staticmethod(ncol)
    __swig_getmethods__["ncol"] = lambda x: ncol
    def __init__(self, *args): 
        """
        __init__(SimTK::Vec<(6)> self) -> Vec6
        __init__(SimTK::Vec<(6)> self, Vec6 src) -> Vec6

        Parameters:
            src: SimTK::Vec< 6 > const &

        __init__(SimTK::Vec<(6)> self, double const & e) -> Vec6

        Parameters:
            e: double const &

        __init__(SimTK::Vec<(6)> self, int i) -> Vec6

        Parameters:
            i: int

        __init__(SimTK::Vec<(6)> self, SimTK::Vec< 6 >::E const & e0, SimTK::Vec< 6 >::E const & e1) -> Vec6

        Parameters:
            e0: SimTK::Vec< 6 >::E const &
            e1: SimTK::Vec< 6 >::E const &

        __init__(SimTK::Vec<(6)> self, SimTK::Vec< 6 >::E const & e0, SimTK::Vec< 6 >::E const & e1, SimTK::Vec< 6 >::E const & e2) -> Vec6

        Parameters:
            e0: SimTK::Vec< 6 >::E const &
            e1: SimTK::Vec< 6 >::E const &
            e2: SimTK::Vec< 6 >::E const &

        __init__(SimTK::Vec<(6)> self, SimTK::Vec< 6 >::E const & e0, SimTK::Vec< 6 >::E const & e1, SimTK::Vec< 6 >::E const & e2, 
            SimTK::Vec< 6 >::E const & e3) -> Vec6

        Parameters:
            e0: SimTK::Vec< 6 >::E const &
            e1: SimTK::Vec< 6 >::E const &
            e2: SimTK::Vec< 6 >::E const &
            e3: SimTK::Vec< 6 >::E const &

        __init__(SimTK::Vec<(6)> self, SimTK::Vec< 6 >::E const & e0, SimTK::Vec< 6 >::E const & e1, SimTK::Vec< 6 >::E const & e2, 
            SimTK::Vec< 6 >::E const & e3, SimTK::Vec< 6 >::E const & e4) -> Vec6

        Parameters:
            e0: SimTK::Vec< 6 >::E const &
            e1: SimTK::Vec< 6 >::E const &
            e2: SimTK::Vec< 6 >::E const &
            e3: SimTK::Vec< 6 >::E const &
            e4: SimTK::Vec< 6 >::E const &

        __init__(SimTK::Vec<(6)> self, SimTK::Vec< 6 >::E const & e0, SimTK::Vec< 6 >::E const & e1, SimTK::Vec< 6 >::E const & e2, 
            SimTK::Vec< 6 >::E const & e3, SimTK::Vec< 6 >::E const & e4, SimTK::Vec< 6 >::E const & e5) -> Vec6

        Parameters:
            e0: SimTK::Vec< 6 >::E const &
            e1: SimTK::Vec< 6 >::E const &
            e2: SimTK::Vec< 6 >::E const &
            e3: SimTK::Vec< 6 >::E const &
            e4: SimTK::Vec< 6 >::E const &
            e5: SimTK::Vec< 6 >::E const &

        __init__(SimTK::Vec<(6)> self, SimTK::Vec< 6 >::E const & e0, SimTK::Vec< 6 >::E const & e1, SimTK::Vec< 6 >::E const & e2, 
            SimTK::Vec< 6 >::E const & e3, SimTK::Vec< 6 >::E const & e4, SimTK::Vec< 6 >::E const & e5, 
            SimTK::Vec< 6 >::E const & e6) -> Vec6

        Parameters:
            e0: SimTK::Vec< 6 >::E const &
            e1: SimTK::Vec< 6 >::E const &
            e2: SimTK::Vec< 6 >::E const &
            e3: SimTK::Vec< 6 >::E const &
            e4: SimTK::Vec< 6 >::E const &
            e5: SimTK::Vec< 6 >::E const &
            e6: SimTK::Vec< 6 >::E const &

        __init__(SimTK::Vec<(6)> self, SimTK::Vec< 6 >::E const & e0, SimTK::Vec< 6 >::E const & e1, SimTK::Vec< 6 >::E const & e2, 
            SimTK::Vec< 6 >::E const & e3, SimTK::Vec< 6 >::E const & e4, SimTK::Vec< 6 >::E const & e5, 
            SimTK::Vec< 6 >::E const & e6, SimTK::Vec< 6 >::E const & e7) -> Vec6

        Parameters:
            e0: SimTK::Vec< 6 >::E const &
            e1: SimTK::Vec< 6 >::E const &
            e2: SimTK::Vec< 6 >::E const &
            e3: SimTK::Vec< 6 >::E const &
            e4: SimTK::Vec< 6 >::E const &
            e5: SimTK::Vec< 6 >::E const &
            e6: SimTK::Vec< 6 >::E const &
            e7: SimTK::Vec< 6 >::E const &

        __init__(SimTK::Vec<(6)> self, SimTK::Vec< 6 >::E const & e0, SimTK::Vec< 6 >::E const & e1, SimTK::Vec< 6 >::E const & e2, 
            SimTK::Vec< 6 >::E const & e3, SimTK::Vec< 6 >::E const & e4, SimTK::Vec< 6 >::E const & e5, 
            SimTK::Vec< 6 >::E const & e6, SimTK::Vec< 6 >::E const & e7, 
            SimTK::Vec< 6 >::E const & e8) -> Vec6

        Parameters:
            e0: SimTK::Vec< 6 >::E const &
            e1: SimTK::Vec< 6 >::E const &
            e2: SimTK::Vec< 6 >::E const &
            e3: SimTK::Vec< 6 >::E const &
            e4: SimTK::Vec< 6 >::E const &
            e5: SimTK::Vec< 6 >::E const &
            e6: SimTK::Vec< 6 >::E const &
            e7: SimTK::Vec< 6 >::E const &
            e8: SimTK::Vec< 6 >::E const &

        """
        this = _opensim.new_Vec6(*args)
        try: self.this.append(this)
        except: self.this = this
    def setToNaN(self):
        """
        setToNaN(Vec6 self)

        Parameters:
            self: SimTK::Vec< 6 > *

        """
        return _opensim.Vec6_setToNaN(self)

    def setToZero(self):
        """
        setToZero(Vec6 self)

        Parameters:
            self: SimTK::Vec< 6 > *

        """
        return _opensim.Vec6_setToZero(self)

    def isNaN(self):
        """
        isNaN(Vec6 self) -> bool

        Parameters:
            self: SimTK::Vec< 6 > const *

        """
        return _opensim.Vec6_isNaN(self)

    def isInf(self):
        """
        isInf(Vec6 self) -> bool

        Parameters:
            self: SimTK::Vec< 6 > const *

        """
        return _opensim.Vec6_isInf(self)

    def isFinite(self):
        """
        isFinite(Vec6 self) -> bool

        Parameters:
            self: SimTK::Vec< 6 > const *

        """
        return _opensim.Vec6_isFinite(self)

    def getDefaultTolerance():
        """getDefaultTolerance() -> double"""
        return _opensim.Vec6_getDefaultTolerance()

    if _newclass:getDefaultTolerance = staticmethod(getDefaultTolerance)
    __swig_getmethods__["getDefaultTolerance"] = lambda x: getDefaultTolerance
    def isNumericallyEqual(self, *args):
        """
        isNumericallyEqual(Vec6 self, double const & e, double tol=SimTK::Vec< 6 >::getDefaultTolerance()) -> bool

        Parameters:
            e: double const &
            tol: double

        isNumericallyEqual(Vec6 self, double const & e) -> bool

        Parameters:
            e: double const &

        """
        return _opensim.Vec6_isNumericallyEqual(self, *args)

    def toString(self):
        """
        toString(Vec6 self) -> std::string

        Parameters:
            self: SimTK::Vec< 6 > const *

        """
        return _opensim.Vec6_toString(self)

    def set(self, *args):
        """
        set(Vec6 self, int i, SimTK::Vec< 6 >::E const & value)

        Parameters:
            i: int
            value: SimTK::Vec< 6 >::E const &

        """
        return _opensim.Vec6_set(self, *args)

    def get(self, *args):
        """
        get(Vec6 self, int i) -> SimTK::Vec< 6 >::E const &

        Parameters:
            i: int

        """
        return _opensim.Vec6_get(self, *args)

    __swig_destroy__ = _opensim.delete_Vec6
    __del__ = lambda self : None;
Vec6_swigregister = _opensim.Vec6_swigregister
Vec6_swigregister(Vec6)

def Vec6_size():
  """Vec6_size() -> int"""
  return _opensim.Vec6_size()

def Vec6_nrow():
  """Vec6_nrow() -> int"""
  return _opensim.Vec6_nrow()

def Vec6_ncol():
  """Vec6_ncol() -> int"""
  return _opensim.Vec6_ncol()

def Vec6_getDefaultTolerance():
  """Vec6_getDefaultTolerance() -> double"""
  return _opensim.Vec6_getDefaultTolerance()

class Mat33(_object):
    """Proxy of C++ SimTK::Mat<(3,3)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Mat33, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Mat33, name)
    __repr__ = _swig_repr
    def size():
        """size() -> int"""
        return _opensim.Mat33_size()

    if _newclass:size = staticmethod(size)
    __swig_getmethods__["size"] = lambda x: size
    def nrow():
        """nrow() -> int"""
        return _opensim.Mat33_nrow()

    if _newclass:nrow = staticmethod(nrow)
    __swig_getmethods__["nrow"] = lambda x: nrow
    def ncol():
        """ncol() -> int"""
        return _opensim.Mat33_ncol()

    if _newclass:ncol = staticmethod(ncol)
    __swig_getmethods__["ncol"] = lambda x: ncol
    def __init__(self, *args): 
        """
        __init__(SimTK::Mat<(3,3)> self) -> Mat33
        __init__(SimTK::Mat<(3,3)> self, Mat33 src) -> Mat33

        Parameters:
            src: SimTK::Mat< 3,3 > const &

        __init__(SimTK::Mat<(3,3)> self, double const & e) -> Mat33

        Parameters:
            e: double const &

        __init__(SimTK::Mat<(3,3)> self, int i) -> Mat33

        Parameters:
            i: int

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1, double const & e2) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &
            e2: double const &

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1, double const & e2, double const & e3) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &
            e2: double const &
            e3: double const &

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1, double const & e2, double const & e3, double const & e4) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &
            e2: double const &
            e3: double const &
            e4: double const &

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1, double const & e2, double const & e3, double const & e4, 
            double const & e5) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &
            e2: double const &
            e3: double const &
            e4: double const &
            e5: double const &

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1, double const & e2, double const & e3, double const & e4, 
            double const & e5, double const & e6) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &
            e2: double const &
            e3: double const &
            e4: double const &
            e5: double const &
            e6: double const &

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1, double const & e2, double const & e3, double const & e4, 
            double const & e5, double const & e6, double const & e7) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &
            e2: double const &
            e3: double const &
            e4: double const &
            e5: double const &
            e6: double const &
            e7: double const &

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1, double const & e2, double const & e3, double const & e4, 
            double const & e5, double const & e6, double const & e7, double const & e8) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &
            e2: double const &
            e3: double const &
            e4: double const &
            e5: double const &
            e6: double const &
            e7: double const &
            e8: double const &

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1, double const & e2, double const & e3, double const & e4, 
            double const & e5, double const & e6, double const & e7, double const & e8, 
            double const & e9) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &
            e2: double const &
            e3: double const &
            e4: double const &
            e5: double const &
            e6: double const &
            e7: double const &
            e8: double const &
            e9: double const &

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1, double const & e2, double const & e3, double const & e4, 
            double const & e5, double const & e6, double const & e7, double const & e8, 
            double const & e9, double const & e10) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &
            e2: double const &
            e3: double const &
            e4: double const &
            e5: double const &
            e6: double const &
            e7: double const &
            e8: double const &
            e9: double const &
            e10: double const &

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1, double const & e2, double const & e3, double const & e4, 
            double const & e5, double const & e6, double const & e7, double const & e8, 
            double const & e9, double const & e10, double const & e11) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &
            e2: double const &
            e3: double const &
            e4: double const &
            e5: double const &
            e6: double const &
            e7: double const &
            e8: double const &
            e9: double const &
            e10: double const &
            e11: double const &

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1, double const & e2, double const & e3, double const & e4, 
            double const & e5, double const & e6, double const & e7, double const & e8, 
            double const & e9, double const & e10, double const & e11, double const & e12) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &
            e2: double const &
            e3: double const &
            e4: double const &
            e5: double const &
            e6: double const &
            e7: double const &
            e8: double const &
            e9: double const &
            e10: double const &
            e11: double const &
            e12: double const &

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1, double const & e2, double const & e3, double const & e4, 
            double const & e5, double const & e6, double const & e7, double const & e8, 
            double const & e9, double const & e10, double const & e11, double const & e12, 
            double const & e13) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &
            e2: double const &
            e3: double const &
            e4: double const &
            e5: double const &
            e6: double const &
            e7: double const &
            e8: double const &
            e9: double const &
            e10: double const &
            e11: double const &
            e12: double const &
            e13: double const &

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1, double const & e2, double const & e3, double const & e4, 
            double const & e5, double const & e6, double const & e7, double const & e8, 
            double const & e9, double const & e10, double const & e11, double const & e12, 
            double const & e13, double const & e14) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &
            e2: double const &
            e3: double const &
            e4: double const &
            e5: double const &
            e6: double const &
            e7: double const &
            e8: double const &
            e9: double const &
            e10: double const &
            e11: double const &
            e12: double const &
            e13: double const &
            e14: double const &

        __init__(SimTK::Mat<(3,3)> self, double const & e0, double const & e1, double const & e2, double const & e3, double const & e4, 
            double const & e5, double const & e6, double const & e7, double const & e8, 
            double const & e9, double const & e10, double const & e11, double const & e12, 
            double const & e13, double const & e14, double const & e15) -> Mat33

        Parameters:
            e0: double const &
            e1: double const &
            e2: double const &
            e3: double const &
            e4: double const &
            e5: double const &
            e6: double const &
            e7: double const &
            e8: double const &
            e9: double const &
            e10: double const &
            e11: double const &
            e12: double const &
            e13: double const &
            e14: double const &
            e15: double const &

        """
        this = _opensim.new_Mat33(*args)
        try: self.this.append(this)
        except: self.this = this
    def setToNaN(self):
        """
        setToNaN(Mat33 self)

        Parameters:
            self: SimTK::Mat< 3,3 > *

        """
        return _opensim.Mat33_setToNaN(self)

    def setToZero(self):
        """
        setToZero(Mat33 self)

        Parameters:
            self: SimTK::Mat< 3,3 > *

        """
        return _opensim.Mat33_setToZero(self)

    def isNaN(self):
        """
        isNaN(Mat33 self) -> bool

        Parameters:
            self: SimTK::Mat< 3,3 > const *

        """
        return _opensim.Mat33_isNaN(self)

    def isInf(self):
        """
        isInf(Mat33 self) -> bool

        Parameters:
            self: SimTK::Mat< 3,3 > const *

        """
        return _opensim.Mat33_isInf(self)

    def isFinite(self):
        """
        isFinite(Mat33 self) -> bool

        Parameters:
            self: SimTK::Mat< 3,3 > const *

        """
        return _opensim.Mat33_isFinite(self)

    def getDefaultTolerance():
        """getDefaultTolerance() -> double"""
        return _opensim.Mat33_getDefaultTolerance()

    if _newclass:getDefaultTolerance = staticmethod(getDefaultTolerance)
    __swig_getmethods__["getDefaultTolerance"] = lambda x: getDefaultTolerance
    def isNumericallyEqual(self, *args):
        """
        isNumericallyEqual(Mat33 self, double const & e, double tol=SimTK::Mat< 3,3 >::getDefaultTolerance()) -> bool

        Parameters:
            e: double const &
            tol: double

        isNumericallyEqual(Mat33 self, double const & e) -> bool

        Parameters:
            e: double const &

        """
        return _opensim.Mat33_isNumericallyEqual(self, *args)

    def isNumericallySymmetric(self, *args):
        """
        isNumericallySymmetric(Mat33 self, double tol=SimTK::Mat< 3,3 >::getDefaultTolerance()) -> bool

        Parameters:
            tol: double

        isNumericallySymmetric(Mat33 self) -> bool

        Parameters:
            self: SimTK::Mat< 3,3 > const *

        """
        return _opensim.Mat33_isNumericallySymmetric(self, *args)

    def isExactlySymmetric(self):
        """
        isExactlySymmetric(Mat33 self) -> bool

        Parameters:
            self: SimTK::Mat< 3,3 > const *

        """
        return _opensim.Mat33_isExactlySymmetric(self)

    def toString(self):
        """
        toString(Mat33 self) -> std::string

        Parameters:
            self: SimTK::Mat< 3,3 > const *

        """
        return _opensim.Mat33_toString(self)

    def get(self, *args):
        """
        get(Mat33 self, int i, int j) -> double const &

        Parameters:
            i: int
            j: int

        """
        return _opensim.Mat33_get(self, *args)

    def set(self, *args):
        """
        set(Mat33 self, int i, int j, double const & value)

        Parameters:
            i: int
            j: int
            value: double const &

        """
        return _opensim.Mat33_set(self, *args)

    __swig_destroy__ = _opensim.delete_Mat33
    __del__ = lambda self : None;
Mat33_swigregister = _opensim.Mat33_swigregister
Mat33_swigregister(Mat33)

def Mat33_size():
  """Mat33_size() -> int"""
  return _opensim.Mat33_size()

def Mat33_nrow():
  """Mat33_nrow() -> int"""
  return _opensim.Mat33_nrow()

def Mat33_ncol():
  """Mat33_ncol() -> int"""
  return _opensim.Mat33_ncol()

def Mat33_getDefaultTolerance():
  """Mat33_getDefaultTolerance() -> double"""
  return _opensim.Mat33_getDefaultTolerance()

class MatrixBaseDouble(_object):
    """Proxy of C++ SimTK::MatrixBase<(double)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, MatrixBaseDouble, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, MatrixBaseDouble, name)
    __repr__ = _swig_repr
    def nrow(self):
        """
        nrow(MatrixBaseDouble self) -> int

        Parameters:
            self: SimTK::MatrixBase< double > const *

        """
        return _opensim.MatrixBaseDouble_nrow(self)

    def ncol(self):
        """
        ncol(MatrixBaseDouble self) -> int

        Parameters:
            self: SimTK::MatrixBase< double > const *

        """
        return _opensim.MatrixBaseDouble_ncol(self)

    def isResizeable(self):
        """
        isResizeable(MatrixBaseDouble self) -> bool

        Parameters:
            self: SimTK::MatrixBase< double > const *

        """
        return _opensim.MatrixBaseDouble_isResizeable(self)

    NScalarsPerElement = _opensim.MatrixBaseDouble_NScalarsPerElement
    CppNScalarsPerElement = _opensim.MatrixBaseDouble_CppNScalarsPerElement
    def __init__(self, *args): 
        """
        __init__(SimTK::MatrixBase<(double)> self) -> MatrixBaseDouble
        __init__(SimTK::MatrixBase<(double)> self, int m, int n) -> MatrixBaseDouble

        Parameters:
            m: int
            n: int

        """
        this = _opensim.new_MatrixBaseDouble(*args)
        try: self.this.append(this)
        except: self.this = this
    def clear(self):
        """
        clear(MatrixBaseDouble self)

        Parameters:
            self: SimTK::MatrixBase< double > *

        """
        return _opensim.MatrixBaseDouble_clear(self)

    def elementwiseAssign(self, *args):
        """
        elementwiseAssign(MatrixBaseDouble self, int s) -> MatrixBaseDouble

        Parameters:
            s: int

        """
        return _opensim.MatrixBaseDouble_elementwiseAssign(self, *args)

    def elementwiseInvertInPlace(self):
        """
        elementwiseInvertInPlace(MatrixBaseDouble self) -> MatrixBaseDouble

        Parameters:
            self: SimTK::MatrixBase< double > *

        """
        return _opensim.MatrixBaseDouble_elementwiseInvertInPlace(self)

    def setTo(self, *args):
        """
        setTo(MatrixBaseDouble self, double const & t) -> MatrixBaseDouble

        Parameters:
            t: double const &

        """
        return _opensim.MatrixBaseDouble_setTo(self, *args)

    def setToNaN(self):
        """
        setToNaN(MatrixBaseDouble self) -> MatrixBaseDouble

        Parameters:
            self: SimTK::MatrixBase< double > *

        """
        return _opensim.MatrixBaseDouble_setToNaN(self)

    def setToZero(self):
        """
        setToZero(MatrixBaseDouble self) -> MatrixBaseDouble

        Parameters:
            self: SimTK::MatrixBase< double > *

        """
        return _opensim.MatrixBaseDouble_setToZero(self)

    def getElt(self, *args):
        """
        getElt(MatrixBaseDouble self, int i, int j) -> double const &

        Parameters:
            i: int
            j: int

        """
        return _opensim.MatrixBaseDouble_getElt(self, *args)

    def negateInPlace(self):
        """
        negateInPlace(MatrixBaseDouble self) -> MatrixBaseDouble

        Parameters:
            self: SimTK::MatrixBase< double > *

        """
        return _opensim.MatrixBaseDouble_negateInPlace(self)

    def resize(self, *args):
        """
        resize(MatrixBaseDouble self, int m, int n) -> MatrixBaseDouble

        Parameters:
            m: int
            n: int

        """
        return _opensim.MatrixBaseDouble_resize(self, *args)

    def resizeKeep(self, *args):
        """
        resizeKeep(MatrixBaseDouble self, int m, int n) -> MatrixBaseDouble

        Parameters:
            m: int
            n: int

        """
        return _opensim.MatrixBaseDouble_resizeKeep(self, *args)

    def lockShape(self):
        """
        lockShape(MatrixBaseDouble self)

        Parameters:
            self: SimTK::MatrixBase< double > *

        """
        return _opensim.MatrixBaseDouble_lockShape(self)

    def unlockShape(self):
        """
        unlockShape(MatrixBaseDouble self)

        Parameters:
            self: SimTK::MatrixBase< double > *

        """
        return _opensim.MatrixBaseDouble_unlockShape(self)

    __swig_destroy__ = _opensim.delete_MatrixBaseDouble
    __del__ = lambda self : None;
MatrixBaseDouble_swigregister = _opensim.MatrixBaseDouble_swigregister
MatrixBaseDouble_swigregister(MatrixBaseDouble)

class VectorBaseDouble(MatrixBaseDouble):
    """Proxy of C++ SimTK::VectorBase<(double)> class"""
    __swig_setmethods__ = {}
    for _s in [MatrixBaseDouble]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, VectorBaseDouble, name, value)
    __swig_getmethods__ = {}
    for _s in [MatrixBaseDouble]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, VectorBaseDouble, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::VectorBase<(double)> self, int m=0) -> VectorBaseDouble

        Parameters:
            m: int

        __init__(SimTK::VectorBase<(double)> self) -> VectorBaseDouble
        __init__(SimTK::VectorBase<(double)> self, VectorBaseDouble source) -> VectorBaseDouble

        Parameters:
            source: SimTK::VectorBase< double > const &

        """
        this = _opensim.new_VectorBaseDouble(*args)
        try: self.this.append(this)
        except: self.this = this
    def size(self):
        """
        size(VectorBaseDouble self) -> int

        Parameters:
            self: SimTK::VectorBase< double > const *

        """
        return _opensim.VectorBaseDouble_size(self)

    def nrow(self):
        """
        nrow(VectorBaseDouble self) -> int

        Parameters:
            self: SimTK::VectorBase< double > const *

        """
        return _opensim.VectorBaseDouble_nrow(self)

    def ncol(self):
        """
        ncol(VectorBaseDouble self) -> int

        Parameters:
            self: SimTK::VectorBase< double > const *

        """
        return _opensim.VectorBaseDouble_ncol(self)

    def resize(self, *args):
        """
        resize(VectorBaseDouble self, int m) -> VectorBaseDouble

        Parameters:
            m: int

        """
        return _opensim.VectorBaseDouble_resize(self, *args)

    def resizeKeep(self, *args):
        """
        resizeKeep(VectorBaseDouble self, int m) -> VectorBaseDouble

        Parameters:
            m: int

        """
        return _opensim.VectorBaseDouble_resizeKeep(self, *args)

    def clear(self):
        """
        clear(VectorBaseDouble self)

        Parameters:
            self: SimTK::VectorBase< double > *

        """
        return _opensim.VectorBaseDouble_clear(self)

    def sum(self):
        """
        sum(VectorBaseDouble self) -> double

        Parameters:
            self: SimTK::VectorBase< double > const *

        """
        return _opensim.VectorBaseDouble_sum(self)

    __swig_destroy__ = _opensim.delete_VectorBaseDouble
    __del__ = lambda self : None;
VectorBaseDouble_swigregister = _opensim.VectorBaseDouble_swigregister
VectorBaseDouble_swigregister(VectorBaseDouble)

class Vector(VectorBaseDouble):
    """Proxy of C++ SimTK::Vector_<(double)> class"""
    __swig_setmethods__ = {}
    for _s in [VectorBaseDouble]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Vector, name, value)
    __swig_getmethods__ = {}
    for _s in [VectorBaseDouble]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Vector, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::Vector_<(double)> self) -> Vector
        __init__(SimTK::Vector_<(double)> self, Vector src) -> Vector

        Parameters:
            src: SimTK::Vector_< double > const &

        __init__(SimTK::Vector_<(double)> self, int m, double const & initialValue) -> Vector

        Parameters:
            m: int
            initialValue: double const &

        """
        this = _opensim.new_Vector(*args)
        try: self.this.append(this)
        except: self.this = this
    def toString(self):
        """
        toString(Vector self) -> std::string

        Parameters:
            self: SimTK::Vector_< double > const *

        """
        return _opensim.Vector_toString(self)

    def get(self, *args):
        """
        get(Vector self, int i) -> double const &

        Parameters:
            i: int

        """
        return _opensim.Vector_get(self, *args)

    def set(self, *args):
        """
        set(Vector self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        """
        return _opensim.Vector_set(self, *args)

    __swig_destroy__ = _opensim.delete_Vector
    __del__ = lambda self : None;
Vector_swigregister = _opensim.Vector_swigregister
Vector_swigregister(Vector)

class Matrix(MatrixBaseDouble):
    """Proxy of C++ SimTK::Matrix_<(double)> class"""
    __swig_setmethods__ = {}
    for _s in [MatrixBaseDouble]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Matrix, name, value)
    __swig_getmethods__ = {}
    for _s in [MatrixBaseDouble]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Matrix, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::Matrix_<(double)> self) -> Matrix
        __init__(SimTK::Matrix_<(double)> self, Matrix src) -> Matrix

        Parameters:
            src: SimTK::Matrix_< double > const &

        __init__(SimTK::Matrix_<(double)> self, int m, int n) -> Matrix

        Parameters:
            m: int
            n: int

        __init__(SimTK::Matrix_<(double)> self, int m, int n, double const & initialValue) -> Matrix

        Parameters:
            m: int
            n: int
            initialValue: double const &

        """
        this = _opensim.new_Matrix(*args)
        try: self.this.append(this)
        except: self.this = this
    def toString(self):
        """
        toString(Matrix self) -> std::string

        Parameters:
            self: SimTK::Matrix_< double > const *

        """
        return _opensim.Matrix_toString(self)

    def get(self, *args):
        """
        get(Matrix self, int i, int j) -> double const &

        Parameters:
            i: int
            j: int

        """
        return _opensim.Matrix_get(self, *args)

    def set(self, *args):
        """
        set(Matrix self, int i, int j, double const & value)

        Parameters:
            i: int
            j: int
            value: double const &

        """
        return _opensim.Matrix_set(self, *args)

    __swig_destroy__ = _opensim.delete_Matrix
    __del__ = lambda self : None;
Matrix_swigregister = _opensim.Matrix_swigregister
Matrix_swigregister(Matrix)


def findRelativeVelocity(*args):
  """
    findRelativeVelocity(Transform const & X_FA, SpatialVec V_FA, Transform const & X_FB, SpatialVec V_FB) -> SpatialVec

    Parameters:
        X_FA: Transform const &
        V_FA: SimTK::SpatialVec const &
        X_FB: Transform const &
        V_FB: SimTK::SpatialVec const &

    """
  return _opensim.findRelativeVelocity(*args)

def findRelativeVelocityInF(*args):
  """
    findRelativeVelocityInF(Vec3 p_AB_F, SpatialVec V_FA, SpatialVec V_FB) -> SpatialVec

    Parameters:
        p_AB_F: SimTK::Vec3 const &
        V_FA: SimTK::SpatialVec const &
        V_FB: SimTK::SpatialVec const &

    """
  return _opensim.findRelativeVelocityInF(*args)

def findRelativeAcceleration(*args):
  """
    findRelativeAcceleration(Transform const & X_FA, SpatialVec V_FA, SpatialVec A_FA, Transform const & X_FB, 
        SpatialVec V_FB, SpatialVec A_FB) -> SpatialVec

    Parameters:
        X_FA: Transform const &
        V_FA: SimTK::SpatialVec const &
        A_FA: SimTK::SpatialVec const &
        X_FB: Transform const &
        V_FB: SimTK::SpatialVec const &
        A_FB: SimTK::SpatialVec const &

    """
  return _opensim.findRelativeAcceleration(*args)

def findRelativeAccelerationInF(*args):
  """
    findRelativeAccelerationInF(Vec3 p_AB_F, SpatialVec V_FA, SpatialVec A_FA, SpatialVec V_FB, SpatialVec A_FB) -> SpatialVec

    Parameters:
        p_AB_F: SimTK::Vec3 const &
        V_FA: SimTK::SpatialVec const &
        A_FA: SimTK::SpatialVec const &
        V_FB: SimTK::SpatialVec const &
        A_FB: SimTK::SpatialVec const &

    """
  return _opensim.findRelativeAccelerationInF(*args)

def reverseRelativeVelocity(*args):
  """
    reverseRelativeVelocity(Transform const & X_AB, SpatialVec V_AB) -> SpatialVec

    Parameters:
        X_AB: Transform const &
        V_AB: SimTK::SpatialVec const &

    """
  return _opensim.reverseRelativeVelocity(*args)

def reverseRelativeVelocityInA(*args):
  """
    reverseRelativeVelocityInA(Transform const & X_AB, SpatialVec V_AB) -> SpatialVec

    Parameters:
        X_AB: Transform const &
        V_AB: SimTK::SpatialVec const &

    """
  return _opensim.reverseRelativeVelocityInA(*args)

def shiftVelocityBy(*args):
  """
    shiftVelocityBy(SpatialVec V_AB, Vec3 r_A) -> SpatialVec

    Parameters:
        V_AB: SimTK::SpatialVec const &
        r_A: SimTK::Vec3 const &

    """
  return _opensim.shiftVelocityBy(*args)

def shiftVelocityFromTo(*args):
  """
    shiftVelocityFromTo(SpatialVec V_A_BP, Vec3 fromP_A, Vec3 toQ_A) -> SpatialVec

    Parameters:
        V_A_BP: SimTK::SpatialVec const &
        fromP_A: SimTK::Vec3 const &
        toQ_A: SimTK::Vec3 const &

    """
  return _opensim.shiftVelocityFromTo(*args)

def shiftForceBy(*args):
  """
    shiftForceBy(SpatialVec F_AP, Vec3 r_A) -> SpatialVec

    Parameters:
        F_AP: SimTK::SpatialVec const &
        r_A: SimTK::Vec3 const &

    """
  return _opensim.shiftForceBy(*args)

def shiftForceFromTo(*args):
  """
    shiftForceFromTo(SpatialVec F_AP, Vec3 fromP_A, Vec3 toQ_A) -> SpatialVec

    Parameters:
        F_AP: SimTK::SpatialVec const &
        fromP_A: SimTK::Vec3 const &
        toQ_A: SimTK::Vec3 const &

    """
  return _opensim.shiftForceFromTo(*args)

def shiftAccelerationBy(*args):
  """
    shiftAccelerationBy(SpatialVec A_AB, Vec3 w_AB, Vec3 r_A) -> SpatialVec

    Parameters:
        A_AB: SimTK::SpatialVec const &
        w_AB: SimTK::Vec3 const &
        r_A: SimTK::Vec3 const &

    """
  return _opensim.shiftAccelerationBy(*args)

def shiftAccelerationFromTo(*args):
  """
    shiftAccelerationFromTo(SpatialVec A_A_BP, Vec3 w_AB, Vec3 fromP_A, Vec3 toQ_A) -> SpatialVec

    Parameters:
        A_A_BP: SimTK::SpatialVec const &
        w_AB: SimTK::Vec3 const &
        fromP_A: SimTK::Vec3 const &
        toQ_A: SimTK::Vec3 const &

    """
  return _opensim.shiftAccelerationFromTo(*args)
class SpatialVec(_object):
    """Proxy of C++ SimTK::Vec<(2,SimTK::Vec3)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, SpatialVec, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, SpatialVec, name)
    __repr__ = _swig_repr
    def size():
        """size() -> int"""
        return _opensim.SpatialVec_size()

    if _newclass:size = staticmethod(size)
    __swig_getmethods__["size"] = lambda x: size
    def nrow():
        """nrow() -> int"""
        return _opensim.SpatialVec_nrow()

    if _newclass:nrow = staticmethod(nrow)
    __swig_getmethods__["nrow"] = lambda x: nrow
    def ncol():
        """ncol() -> int"""
        return _opensim.SpatialVec_ncol()

    if _newclass:ncol = staticmethod(ncol)
    __swig_getmethods__["ncol"] = lambda x: ncol
    def __init__(self, *args): 
        """
        __init__(SimTK::Vec<(2,SimTK::Vec3)> self) -> SpatialVec
        __init__(SimTK::Vec<(2,SimTK::Vec3)> self, SpatialVec src) -> SpatialVec

        Parameters:
            src: SimTK::Vec< 2,SimTK::Vec3 > const &

        __init__(SimTK::Vec<(2,SimTK::Vec3)> self, Vec3 e) -> SpatialVec

        Parameters:
            e: SimTK::Vec< 3,double,1 > const &

        __init__(SimTK::Vec<(2,SimTK::Vec3)> self, int i) -> SpatialVec

        Parameters:
            i: int

        __init__(SimTK::Vec<(2,SimTK::Vec3)> self, Vec3 e0, Vec3 e1) -> SpatialVec

        Parameters:
            e0: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e1: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &

        __init__(SimTK::Vec<(2,SimTK::Vec3)> self, Vec3 e0, Vec3 e1, Vec3 e2) -> SpatialVec

        Parameters:
            e0: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e1: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e2: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &

        __init__(SimTK::Vec<(2,SimTK::Vec3)> self, Vec3 e0, Vec3 e1, Vec3 e2, Vec3 e3) -> SpatialVec

        Parameters:
            e0: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e1: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e2: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e3: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &

        __init__(SimTK::Vec<(2,SimTK::Vec3)> self, Vec3 e0, Vec3 e1, Vec3 e2, Vec3 e3, Vec3 e4) -> SpatialVec

        Parameters:
            e0: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e1: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e2: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e3: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e4: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &

        __init__(SimTK::Vec<(2,SimTK::Vec3)> self, Vec3 e0, Vec3 e1, Vec3 e2, Vec3 e3, Vec3 e4, Vec3 e5) -> SpatialVec

        Parameters:
            e0: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e1: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e2: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e3: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e4: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e5: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &

        __init__(SimTK::Vec<(2,SimTK::Vec3)> self, Vec3 e0, Vec3 e1, Vec3 e2, Vec3 e3, Vec3 e4, Vec3 e5, Vec3 e6) -> SpatialVec

        Parameters:
            e0: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e1: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e2: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e3: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e4: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e5: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e6: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &

        __init__(SimTK::Vec<(2,SimTK::Vec3)> self, Vec3 e0, Vec3 e1, Vec3 e2, Vec3 e3, Vec3 e4, Vec3 e5, Vec3 e6, Vec3 e7) -> SpatialVec

        Parameters:
            e0: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e1: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e2: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e3: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e4: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e5: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e6: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e7: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &

        __init__(SimTK::Vec<(2,SimTK::Vec3)> self, Vec3 e0, Vec3 e1, Vec3 e2, Vec3 e3, Vec3 e4, Vec3 e5, Vec3 e6, Vec3 e7, Vec3 e8) -> SpatialVec

        Parameters:
            e0: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e1: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e2: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e3: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e4: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e5: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e6: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e7: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &
            e8: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &

        """
        this = _opensim.new_SpatialVec(*args)
        try: self.this.append(this)
        except: self.this = this
    def setToNaN(self):
        """
        setToNaN(SpatialVec self)

        Parameters:
            self: SimTK::Vec< 2,SimTK::Vec3 > *

        """
        return _opensim.SpatialVec_setToNaN(self)

    def setToZero(self):
        """
        setToZero(SpatialVec self)

        Parameters:
            self: SimTK::Vec< 2,SimTK::Vec3 > *

        """
        return _opensim.SpatialVec_setToZero(self)

    def isNaN(self):
        """
        isNaN(SpatialVec self) -> bool

        Parameters:
            self: SimTK::Vec< 2,SimTK::Vec3 > const *

        """
        return _opensim.SpatialVec_isNaN(self)

    def isInf(self):
        """
        isInf(SpatialVec self) -> bool

        Parameters:
            self: SimTK::Vec< 2,SimTK::Vec3 > const *

        """
        return _opensim.SpatialVec_isInf(self)

    def isFinite(self):
        """
        isFinite(SpatialVec self) -> bool

        Parameters:
            self: SimTK::Vec< 2,SimTK::Vec3 > const *

        """
        return _opensim.SpatialVec_isFinite(self)

    def getDefaultTolerance():
        """getDefaultTolerance() -> double"""
        return _opensim.SpatialVec_getDefaultTolerance()

    if _newclass:getDefaultTolerance = staticmethod(getDefaultTolerance)
    __swig_getmethods__["getDefaultTolerance"] = lambda x: getDefaultTolerance
    def isNumericallyEqual(self, *args):
        """
        isNumericallyEqual(SpatialVec self, Vec3 e, double tol=SimTK::Vec< 2,SimTK::Vec3 >::getDefaultTolerance()) -> bool

        Parameters:
            e: SimTK::Vec< 3,double,1 > const &
            tol: double

        isNumericallyEqual(SpatialVec self, Vec3 e) -> bool

        Parameters:
            e: SimTK::Vec< 3,double,1 > const &

        """
        return _opensim.SpatialVec_isNumericallyEqual(self, *args)

    def toString(self):
        """
        toString(SpatialVec self) -> std::string

        Parameters:
            self: SimTK::Vec< 2,SimTK::Vec3 > const *

        """
        return _opensim.SpatialVec_toString(self)

    def set(self, *args):
        """
        set(SpatialVec self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec< 2,SimTK::Vec< 3,double,1 > >::E const &

        """
        return _opensim.SpatialVec_set(self, *args)

    def get(self, *args):
        """
        get(SpatialVec self, int i) -> Vec3

        Parameters:
            i: int

        """
        return _opensim.SpatialVec_get(self, *args)

    __swig_destroy__ = _opensim.delete_SpatialVec
    __del__ = lambda self : None;
SpatialVec_swigregister = _opensim.SpatialVec_swigregister
SpatialVec_swigregister(SpatialVec)

def SpatialVec_size():
  """SpatialVec_size() -> int"""
  return _opensim.SpatialVec_size()

def SpatialVec_nrow():
  """SpatialVec_nrow() -> int"""
  return _opensim.SpatialVec_nrow()

def SpatialVec_ncol():
  """SpatialVec_ncol() -> int"""
  return _opensim.SpatialVec_ncol()

def SpatialVec_getDefaultTolerance():
  """SpatialVec_getDefaultTolerance() -> double"""
  return _opensim.SpatialVec_getDefaultTolerance()

class VectorOfSpatialVec(_object):
    """Proxy of C++ SimTK::Vector_<(SimTK::SpatialVec)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, VectorOfSpatialVec, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, VectorOfSpatialVec, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::Vector_<(SimTK::SpatialVec)> self) -> VectorOfSpatialVec
        __init__(SimTK::Vector_<(SimTK::SpatialVec)> self, VectorOfSpatialVec src) -> VectorOfSpatialVec

        Parameters:
            src: SimTK::Vector_< SimTK::SpatialVec > const &

        __init__(SimTK::Vector_<(SimTK::SpatialVec)> self, int m, SpatialVec initialValue) -> VectorOfSpatialVec

        Parameters:
            m: int
            initialValue: SimTK::Vec< 2,SimTK::Vec< 3,double,1 >,1 > const &

        """
        this = _opensim.new_VectorOfSpatialVec(*args)
        try: self.this.append(this)
        except: self.this = this
    def toString(self):
        """
        toString(VectorOfSpatialVec self) -> std::string

        Parameters:
            self: SimTK::Vector_< SimTK::SpatialVec > const *

        """
        return _opensim.VectorOfSpatialVec_toString(self)

    def get(self, *args):
        """
        get(VectorOfSpatialVec self, int i) -> SpatialVec

        Parameters:
            i: int

        """
        return _opensim.VectorOfSpatialVec_get(self, *args)

    def set(self, *args):
        """
        set(VectorOfSpatialVec self, int i, SpatialVec value)

        Parameters:
            i: int
            value: SimTK::Vec< 2,SimTK::Vec< 3,double,1 >,1 > const &

        """
        return _opensim.VectorOfSpatialVec_set(self, *args)

    __swig_destroy__ = _opensim.delete_VectorOfSpatialVec
    __del__ = lambda self : None;
VectorOfSpatialVec_swigregister = _opensim.VectorOfSpatialVec_swigregister
VectorOfSpatialVec_swigregister(VectorOfSpatialVec)

class VectorOfVec3(_object):
    """Proxy of C++ SimTK::Vector_<(SimTK::Vec3)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, VectorOfVec3, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, VectorOfVec3, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::Vector_<(SimTK::Vec3)> self) -> VectorOfVec3
        __init__(SimTK::Vector_<(SimTK::Vec3)> self, VectorOfVec3 src) -> VectorOfVec3

        Parameters:
            src: SimTK::Vector_< SimTK::Vec3 > const &

        __init__(SimTK::Vector_<(SimTK::Vec3)> self, int m, Vec3 initialValue) -> VectorOfVec3

        Parameters:
            m: int
            initialValue: SimTK::Vec< 3,double,1 > const &

        """
        this = _opensim.new_VectorOfVec3(*args)
        try: self.this.append(this)
        except: self.this = this
    def toString(self):
        """
        toString(VectorOfVec3 self) -> std::string

        Parameters:
            self: SimTK::Vector_< SimTK::Vec3 > const *

        """
        return _opensim.VectorOfVec3_toString(self)

    def get(self, *args):
        """
        get(VectorOfVec3 self, int i) -> Vec3

        Parameters:
            i: int

        """
        return _opensim.VectorOfVec3_get(self, *args)

    def set(self, *args):
        """
        set(VectorOfVec3 self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec< 3,double,1 > const &

        """
        return _opensim.VectorOfVec3_set(self, *args)

    __swig_destroy__ = _opensim.delete_VectorOfVec3
    __del__ = lambda self : None;
VectorOfVec3_swigregister = _opensim.VectorOfVec3_swigregister
VectorOfVec3_swigregister(VectorOfVec3)

class CoordinateAxis(_object):
    """Proxy of C++ SimTK::CoordinateAxis class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, CoordinateAxis, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, CoordinateAxis, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::CoordinateAxis self, int i) -> CoordinateAxis

        Parameters:
            i: int

        """
        this = _opensim.new_CoordinateAxis(*args)
        try: self.this.append(this)
        except: self.this = this
    def getNextAxis(self):
        """
        getNextAxis(CoordinateAxis self) -> CoordinateAxis

        Parameters:
            self: SimTK::CoordinateAxis const *

        """
        return _opensim.CoordinateAxis_getNextAxis(self)

    def getPreviousAxis(self):
        """
        getPreviousAxis(CoordinateAxis self) -> CoordinateAxis

        Parameters:
            self: SimTK::CoordinateAxis const *

        """
        return _opensim.CoordinateAxis_getPreviousAxis(self)

    def getThirdAxis(self, *args):
        """
        getThirdAxis(CoordinateAxis self, CoordinateAxis axis2) -> CoordinateAxis

        Parameters:
            axis2: SimTK::CoordinateAxis const &

        """
        return _opensim.CoordinateAxis_getThirdAxis(self, *args)

    def isXAxis(self):
        """
        isXAxis(CoordinateAxis self) -> bool

        Parameters:
            self: SimTK::CoordinateAxis const *

        """
        return _opensim.CoordinateAxis_isXAxis(self)

    def isYAxis(self):
        """
        isYAxis(CoordinateAxis self) -> bool

        Parameters:
            self: SimTK::CoordinateAxis const *

        """
        return _opensim.CoordinateAxis_isYAxis(self)

    def isZAxis(self):
        """
        isZAxis(CoordinateAxis self) -> bool

        Parameters:
            self: SimTK::CoordinateAxis const *

        """
        return _opensim.CoordinateAxis_isZAxis(self)

    def isNextAxis(self, *args):
        """
        isNextAxis(CoordinateAxis self, CoordinateAxis axis2) -> bool

        Parameters:
            axis2: SimTK::CoordinateAxis const &

        """
        return _opensim.CoordinateAxis_isNextAxis(self, *args)

    def isPreviousAxis(self, *args):
        """
        isPreviousAxis(CoordinateAxis self, CoordinateAxis axis2) -> bool

        Parameters:
            axis2: SimTK::CoordinateAxis const &

        """
        return _opensim.CoordinateAxis_isPreviousAxis(self, *args)

    def isSameAxis(self, *args):
        """
        isSameAxis(CoordinateAxis self, CoordinateAxis axis2) -> bool

        Parameters:
            axis2: SimTK::CoordinateAxis const &

        """
        return _opensim.CoordinateAxis_isSameAxis(self, *args)

    def areAllSameAxes(self, *args):
        """
        areAllSameAxes(CoordinateAxis self, CoordinateAxis axis2, CoordinateAxis axis3) -> bool

        Parameters:
            axis2: SimTK::CoordinateAxis const &
            axis3: SimTK::CoordinateAxis const &

        """
        return _opensim.CoordinateAxis_areAllSameAxes(self, *args)

    def isDifferentAxis(self, *args):
        """
        isDifferentAxis(CoordinateAxis self, CoordinateAxis axis2) -> bool

        Parameters:
            axis2: SimTK::CoordinateAxis const &

        """
        return _opensim.CoordinateAxis_isDifferentAxis(self, *args)

    def areAllDifferentAxes(self, *args):
        """
        areAllDifferentAxes(CoordinateAxis self, CoordinateAxis axis2, CoordinateAxis axis3) -> bool

        Parameters:
            axis2: SimTK::CoordinateAxis const &
            axis3: SimTK::CoordinateAxis const &

        """
        return _opensim.CoordinateAxis_areAllDifferentAxes(self, *args)

    def isForwardCyclical(self, *args):
        """
        isForwardCyclical(CoordinateAxis self, CoordinateAxis axis2) -> bool

        Parameters:
            axis2: SimTK::CoordinateAxis const &

        """
        return _opensim.CoordinateAxis_isForwardCyclical(self, *args)

    def isReverseCyclical(self, *args):
        """
        isReverseCyclical(CoordinateAxis self, CoordinateAxis axis2) -> bool

        Parameters:
            axis2: SimTK::CoordinateAxis const &

        """
        return _opensim.CoordinateAxis_isReverseCyclical(self, *args)

    def dotProduct(self, *args):
        """
        dotProduct(CoordinateAxis self, CoordinateAxis axis2) -> int

        Parameters:
            axis2: SimTK::CoordinateAxis const &

        """
        return _opensim.CoordinateAxis_dotProduct(self, *args)

    def crossProductSign(self, *args):
        """
        crossProductSign(CoordinateAxis self, CoordinateAxis axis2) -> int

        Parameters:
            axis2: SimTK::CoordinateAxis const &

        """
        return _opensim.CoordinateAxis_crossProductSign(self, *args)

    def crossProductAxis(self, *args):
        """
        crossProductAxis(CoordinateAxis self, CoordinateAxis axis2) -> CoordinateAxis

        Parameters:
            axis2: SimTK::CoordinateAxis const &

        """
        return _opensim.CoordinateAxis_crossProductAxis(self, *args)

    def crossProduct(self, *args):
        """
        crossProduct(CoordinateAxis self, CoordinateAxis axis2, int & sign) -> CoordinateAxis

        Parameters:
            axis2: SimTK::CoordinateAxis const &
            sign: int &

        """
        return _opensim.CoordinateAxis_crossProduct(self, *args)

    def getCoordinateAxis(*args):
        """
        getCoordinateAxis(int i) -> CoordinateAxis

        Parameters:
            i: int

        """
        return _opensim.CoordinateAxis_getCoordinateAxis(*args)

    if _newclass:getCoordinateAxis = staticmethod(getCoordinateAxis)
    __swig_getmethods__["getCoordinateAxis"] = lambda x: getCoordinateAxis
    def isIndexInRange(*args):
        """
        isIndexInRange(int i) -> bool

        Parameters:
            i: int

        """
        return _opensim.CoordinateAxis_isIndexInRange(*args)

    if _newclass:isIndexInRange = staticmethod(isIndexInRange)
    __swig_getmethods__["isIndexInRange"] = lambda x: isIndexInRange
    __swig_destroy__ = _opensim.delete_CoordinateAxis
    __del__ = lambda self : None;
CoordinateAxis_swigregister = _opensim.CoordinateAxis_swigregister
CoordinateAxis_swigregister(CoordinateAxis)

def CoordinateAxis_getCoordinateAxis(*args):
  """
    CoordinateAxis_getCoordinateAxis(int i) -> CoordinateAxis

    Parameters:
        i: int

    """
  return _opensim.CoordinateAxis_getCoordinateAxis(*args)

def CoordinateAxis_isIndexInRange(*args):
  """
    CoordinateAxis_isIndexInRange(int i) -> bool

    Parameters:
        i: int

    """
  return _opensim.CoordinateAxis_isIndexInRange(*args)


def __eq__(*args):
  """
    __eq__(CoordinateAxis a1, CoordinateAxis a2) -> bool

    Parameters:
        a1: SimTK::CoordinateAxis const &
        a2: SimTK::CoordinateAxis const &

    """
  return _opensim.__eq__(*args)

def __ne__(*args):
  """
    __ne__(CoordinateAxis a1, CoordinateAxis a2) -> bool

    Parameters:
        a1: SimTK::CoordinateAxis const &
        a2: SimTK::CoordinateAxis const &

    """
  return _opensim.__ne__(*args)
class CoordinateDirection(_object):
    """Proxy of C++ SimTK::CoordinateDirection class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, CoordinateDirection, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, CoordinateDirection, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::CoordinateDirection self, CoordinateAxis axis) -> CoordinateDirection

        Parameters:
            axis: SimTK::CoordinateAxis const &

        __init__(SimTK::CoordinateDirection self, CoordinateAxis axis, int direction) -> CoordinateDirection

        Parameters:
            axis: SimTK::CoordinateAxis const &
            direction: int

        """
        this = _opensim.new_CoordinateDirection(*args)
        try: self.this.append(this)
        except: self.this = this
    def getAxis(self):
        """
        getAxis(CoordinateDirection self) -> CoordinateAxis

        Parameters:
            self: SimTK::CoordinateDirection const *

        """
        return _opensim.CoordinateDirection_getAxis(self)

    def getDirection(self):
        """
        getDirection(CoordinateDirection self) -> int

        Parameters:
            self: SimTK::CoordinateDirection const *

        """
        return _opensim.CoordinateDirection_getDirection(self)

    def hasSameAxis(self, *args):
        """
        hasSameAxis(CoordinateDirection self, CoordinateDirection dir2) -> bool

        Parameters:
            dir2: SimTK::CoordinateDirection const &

        """
        return _opensim.CoordinateDirection_hasSameAxis(self, *args)

    def isSameAxisAndDirection(self, *args):
        """
        isSameAxisAndDirection(CoordinateDirection self, CoordinateDirection dir2) -> bool

        Parameters:
            dir2: SimTK::CoordinateDirection const &

        """
        return _opensim.CoordinateDirection_isSameAxisAndDirection(self, *args)

    def dotProduct(self, *args):
        """
        dotProduct(CoordinateDirection self, CoordinateDirection dir2) -> int

        Parameters:
            dir2: SimTK::CoordinateDirection const &

        """
        return _opensim.CoordinateDirection_dotProduct(self, *args)

    def crossProductSign(self, *args):
        """
        crossProductSign(CoordinateDirection self, CoordinateDirection dir2) -> int

        Parameters:
            dir2: SimTK::CoordinateDirection const &

        """
        return _opensim.CoordinateDirection_crossProductSign(self, *args)

    def crossProductAxis(self, *args):
        """
        crossProductAxis(CoordinateDirection self, CoordinateDirection dir2) -> CoordinateAxis

        Parameters:
            dir2: SimTK::CoordinateDirection const &

        """
        return _opensim.CoordinateDirection_crossProductAxis(self, *args)

    def crossProduct(self, *args):
        """
        crossProduct(CoordinateDirection self, CoordinateDirection dir2, int & sign) -> CoordinateAxis

        Parameters:
            dir2: SimTK::CoordinateDirection const &
            sign: int &

        """
        return _opensim.CoordinateDirection_crossProduct(self, *args)

    __swig_destroy__ = _opensim.delete_CoordinateDirection
    __del__ = lambda self : None;
CoordinateDirection_swigregister = _opensim.CoordinateDirection_swigregister
CoordinateDirection_swigregister(CoordinateDirection)

BodyRotationSequence = _opensim.BodyRotationSequence
SpaceRotationSequence = _opensim.SpaceRotationSequence
class Rotation(Mat33):
    """Proxy of C++ SimTK::Rotation_<(double)> class"""
    __swig_setmethods__ = {}
    for _s in [Mat33]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Rotation, name, value)
    __swig_getmethods__ = {}
    for _s in [Mat33]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Rotation, name)
    __repr__ = _swig_repr
    def setRotationToIdentityMatrix(self):
        """
        setRotationToIdentityMatrix(Rotation self) -> Rotation

        Parameters:
            self: SimTK::Rotation_< double > *

        """
        return _opensim.Rotation_setRotationToIdentityMatrix(self)

    def setRotationToNaN(self):
        """
        setRotationToNaN(Rotation self) -> Rotation

        Parameters:
            self: SimTK::Rotation_< double > *

        """
        return _opensim.Rotation_setRotationToNaN(self)

    def setRotationFromAngleAboutAxis(self, *args):
        """
        setRotationFromAngleAboutAxis(Rotation self, double angle, CoordinateAxis axis) -> Rotation

        Parameters:
            angle: double
            axis: SimTK::CoordinateAxis const &

        """
        return _opensim.Rotation_setRotationFromAngleAboutAxis(self, *args)

    def setRotationFromAngleAboutX(self, *args):
        """
        setRotationFromAngleAboutX(Rotation self, double angle) -> Rotation

        Parameters:
            angle: double

        setRotationFromAngleAboutX(Rotation self, double cosAngle, double sinAngle) -> Rotation

        Parameters:
            cosAngle: double
            sinAngle: double

        """
        return _opensim.Rotation_setRotationFromAngleAboutX(self, *args)

    def setRotationFromAngleAboutY(self, *args):
        """
        setRotationFromAngleAboutY(Rotation self, double angle) -> Rotation

        Parameters:
            angle: double

        setRotationFromAngleAboutY(Rotation self, double cosAngle, double sinAngle) -> Rotation

        Parameters:
            cosAngle: double
            sinAngle: double

        """
        return _opensim.Rotation_setRotationFromAngleAboutY(self, *args)

    def setRotationFromAngleAboutZ(self, *args):
        """
        setRotationFromAngleAboutZ(Rotation self, double angle) -> Rotation

        Parameters:
            angle: double

        setRotationFromAngleAboutZ(Rotation self, double cosAngle, double sinAngle) -> Rotation

        Parameters:
            cosAngle: double
            sinAngle: double

        """
        return _opensim.Rotation_setRotationFromAngleAboutZ(self, *args)

    def setRotationFromAngleAboutNonUnitVector(self, *args):
        """
        setRotationFromAngleAboutNonUnitVector(Rotation self, double angle, Vec3 nonUnitVector) -> Rotation

        Parameters:
            angle: double
            nonUnitVector: SimTK::Vec3 const &

        """
        return _opensim.Rotation_setRotationFromAngleAboutNonUnitVector(self, *args)

    def setRotationFromTwoAnglesTwoAxes(self, *args):
        """
        setRotationFromTwoAnglesTwoAxes(Rotation self, SimTK::BodyOrSpaceType bodyOrSpace, double angle1, CoordinateAxis axis1, double angle2, 
            CoordinateAxis axis2) -> Rotation

        Parameters:
            bodyOrSpace: enum SimTK::BodyOrSpaceType
            angle1: double
            axis1: SimTK::CoordinateAxis const &
            angle2: double
            axis2: SimTK::CoordinateAxis const &

        """
        return _opensim.Rotation_setRotationFromTwoAnglesTwoAxes(self, *args)

    def setRotationFromThreeAnglesThreeAxes(self, *args):
        """
        setRotationFromThreeAnglesThreeAxes(Rotation self, SimTK::BodyOrSpaceType bodyOrSpace, double angle1, CoordinateAxis axis1, double angle2, 
            CoordinateAxis axis2, double angle3, CoordinateAxis axis3) -> Rotation

        Parameters:
            bodyOrSpace: enum SimTK::BodyOrSpaceType
            angle1: double
            axis1: SimTK::CoordinateAxis const &
            angle2: double
            axis2: SimTK::CoordinateAxis const &
            angle3: double
            axis3: SimTK::CoordinateAxis const &

        """
        return _opensim.Rotation_setRotationFromThreeAnglesThreeAxes(self, *args)

    def setRotationToBodyFixedXY(self, *args):
        """
        setRotationToBodyFixedXY(Rotation self, Vec2 v)

        Parameters:
            v: SimTK::Vec2 const &

        """
        return _opensim.Rotation_setRotationToBodyFixedXY(self, *args)

    def setRotationFromApproximateMat33(self, *args):
        """
        setRotationFromApproximateMat33(Rotation self, Mat33 m) -> Rotation

        Parameters:
            m: SimTK::Mat33 const &

        """
        return _opensim.Rotation_setRotationFromApproximateMat33(self, *args)

    def convertOneAxisRotationToOneAngle(self, *args):
        """
        convertOneAxisRotationToOneAngle(Rotation self, CoordinateAxis axis1) -> double

        Parameters:
            axis1: SimTK::CoordinateAxis const &

        """
        return _opensim.Rotation_convertOneAxisRotationToOneAngle(self, *args)

    def convertTwoAxesRotationToTwoAngles(self, *args):
        """
        convertTwoAxesRotationToTwoAngles(Rotation self, SimTK::BodyOrSpaceType bodyOrSpace, CoordinateAxis axis1, CoordinateAxis axis2) -> Vec2

        Parameters:
            bodyOrSpace: enum SimTK::BodyOrSpaceType
            axis1: SimTK::CoordinateAxis const &
            axis2: SimTK::CoordinateAxis const &

        """
        return _opensim.Rotation_convertTwoAxesRotationToTwoAngles(self, *args)

    def convertThreeAxesRotationToThreeAngles(self, *args):
        """
        convertThreeAxesRotationToThreeAngles(Rotation self, SimTK::BodyOrSpaceType bodyOrSpace, CoordinateAxis axis1, CoordinateAxis axis2, CoordinateAxis axis3) -> Vec3

        Parameters:
            bodyOrSpace: enum SimTK::BodyOrSpaceType
            axis1: SimTK::CoordinateAxis const &
            axis2: SimTK::CoordinateAxis const &
            axis3: SimTK::CoordinateAxis const &

        """
        return _opensim.Rotation_convertThreeAxesRotationToThreeAngles(self, *args)

    def convertRotationToAngleAxis(self):
        """
        convertRotationToAngleAxis(Rotation self) -> Vec4

        Parameters:
            self: SimTK::Rotation_< double > const *

        """
        return _opensim.Rotation_convertRotationToAngleAxis(self)

    def convertRotationToBodyFixedXY(self):
        """
        convertRotationToBodyFixedXY(Rotation self) -> Vec2

        Parameters:
            self: SimTK::Rotation_< double > const *

        """
        return _opensim.Rotation_convertRotationToBodyFixedXY(self)

    def convertRotationToBodyFixedXYZ(self):
        """
        convertRotationToBodyFixedXYZ(Rotation self) -> Vec3

        Parameters:
            self: SimTK::Rotation_< double > const *

        """
        return _opensim.Rotation_convertRotationToBodyFixedXYZ(self)

    def isSameRotationToWithinAngle(self, *args):
        """
        isSameRotationToWithinAngle(Rotation self, Rotation R, double okPointingAngleErrorRads) -> bool

        Parameters:
            R: SimTK::Rotation_< double > const &
            okPointingAngleErrorRads: double

        """
        return _opensim.Rotation_isSameRotationToWithinAngle(self, *args)

    def isSameRotationToWithinAngleOfMachinePrecision(self, *args):
        """
        isSameRotationToWithinAngleOfMachinePrecision(Rotation self, Rotation R) -> bool

        Parameters:
            R: SimTK::Rotation_< double > const &

        """
        return _opensim.Rotation_isSameRotationToWithinAngleOfMachinePrecision(self, *args)

    def getMaxAbsDifferenceInRotationElements(self, *args):
        """
        getMaxAbsDifferenceInRotationElements(Rotation self, Rotation R) -> double

        Parameters:
            R: SimTK::Rotation_< double > const &

        """
        return _opensim.Rotation_getMaxAbsDifferenceInRotationElements(self, *args)

    def areAllRotationElementsSameToEpsilon(self, *args):
        """
        areAllRotationElementsSameToEpsilon(Rotation self, Rotation R, double epsilon) -> bool

        Parameters:
            R: SimTK::Rotation_< double > const &
            epsilon: double

        """
        return _opensim.Rotation_areAllRotationElementsSameToEpsilon(self, *args)

    def areAllRotationElementsSameToMachinePrecision(self, *args):
        """
        areAllRotationElementsSameToMachinePrecision(Rotation self, Rotation R) -> bool

        Parameters:
            R: SimTK::Rotation_< double > const &

        """
        return _opensim.Rotation_areAllRotationElementsSameToMachinePrecision(self, *args)

    def __init__(self, *args): 
        """
        __init__(SimTK::Rotation_<(double)> self) -> Rotation
        __init__(SimTK::Rotation_<(double)> self, Rotation R) -> Rotation

        Parameters:
            R: SimTK::Rotation_< double > const &

        __init__(SimTK::Rotation_<(double)> self, double angle, CoordinateAxis axis) -> Rotation

        Parameters:
            angle: double
            axis: SimTK::CoordinateAxis const &

        __init__(SimTK::Rotation_<(double)> self, double angle, Vec3 nonUnitVector) -> Rotation

        Parameters:
            angle: double
            nonUnitVector: SimTK::Vec3 const &

        __init__(SimTK::Rotation_<(double)> self, SimTK::BodyOrSpaceType bodyOrSpace, double angle1, CoordinateAxis axis1, double angle2, 
            CoordinateAxis axis2) -> Rotation

        Parameters:
            bodyOrSpace: enum SimTK::BodyOrSpaceType
            angle1: double
            axis1: SimTK::CoordinateAxis const &
            angle2: double
            axis2: SimTK::CoordinateAxis const &

        __init__(SimTK::Rotation_<(double)> self, SimTK::BodyOrSpaceType bodyOrSpace, double angle1, CoordinateAxis axis1, double angle2, 
            CoordinateAxis axis2, double angle3, CoordinateAxis axis3) -> Rotation

        Parameters:
            bodyOrSpace: enum SimTK::BodyOrSpaceType
            angle1: double
            axis1: SimTK::CoordinateAxis const &
            angle2: double
            axis2: SimTK::CoordinateAxis const &
            angle3: double
            axis3: SimTK::CoordinateAxis const &

        __init__(SimTK::Rotation_<(double)> self, Mat33 m, bool arg3) -> Rotation

        Parameters:
            m: SimTK::Mat33 const &
            arg3: bool

        __init__(SimTK::Rotation_<(double)> self, Mat33 m) -> Rotation

        Parameters:
            m: SimTK::Mat33 const &

        __init__(SimTK::Rotation_<(double)> self, InverseRotation arg2) -> Rotation

        Parameters:
            arg2: SimTK::InverseRotation_< double > const &

        """
        this = _opensim.new_Rotation(*args)
        try: self.this.append(this)
        except: self.this = this
    def invert(self):
        """
        invert(Rotation self) -> InverseRotation

        Parameters:
            self: SimTK::Rotation_< double > const *

        """
        return _opensim.Rotation_invert(self)

    def transpose(self):
        """
        transpose(Rotation self) -> InverseRotation

        Parameters:
            self: SimTK::Rotation_< double > const *

        """
        return _opensim.Rotation_transpose(self)

    def __invert__(self, *args):
        """
        __invert__(Rotation self) -> InverseRotation
        __invert__(Rotation self) -> InverseRotation

        Parameters:
            self: SimTK::Rotation_< double > *

        """
        return _opensim.Rotation___invert__(self, *args)

    def __imul__(self, *args):
        """
        __imul__(Rotation self, Rotation R) -> Rotation

        Parameters:
            R: SimTK::Rotation_< double > const &

        __imul__(Rotation self, InverseRotation arg2) -> Rotation

        Parameters:
            arg2: SimTK::InverseRotation_< double > const &

        """
        return _opensim.Rotation___imul__(self, *args)

    def __idiv__(self, *args):
        """
        __idiv__(Rotation self, Rotation R) -> Rotation

        Parameters:
            R: SimTK::Rotation_< double > const &

        __idiv__(Rotation self, InverseRotation arg2) -> Rotation

        Parameters:
            arg2: SimTK::InverseRotation_< double > const &

        """
        return _opensim.Rotation___idiv__(self, *args)

    def asMat33(self):
        """
        asMat33(Rotation self) -> Mat33

        Parameters:
            self: SimTK::Rotation_< double > const *

        """
        return _opensim.Rotation_asMat33(self)

    def toMat33(self):
        """
        toMat33(Rotation self) -> Mat33

        Parameters:
            self: SimTK::Rotation_< double > const *

        """
        return _opensim.Rotation_toMat33(self)

    def setRotationToBodyFixedXYZ(self, *args):
        """
        setRotationToBodyFixedXYZ(Rotation self, Vec3 v)

        Parameters:
            v: SimTK::Vec3 const &

        setRotationToBodyFixedXYZ(Rotation self, Vec3 c, Vec3 s)

        Parameters:
            c: SimTK::Vec3 const &
            s: SimTK::Vec3 const &

        """
        return _opensim.Rotation_setRotationToBodyFixedXYZ(self, *args)

    def convertAngVelToBodyFixed321Dot(*args):
        """
        convertAngVelToBodyFixed321Dot(Vec3 q, Vec3 w_PB_B) -> Vec3

        Parameters:
            q: SimTK::Vec3 const &
            w_PB_B: SimTK::Vec3 const &

        """
        return _opensim.Rotation_convertAngVelToBodyFixed321Dot(*args)

    if _newclass:convertAngVelToBodyFixed321Dot = staticmethod(convertAngVelToBodyFixed321Dot)
    __swig_getmethods__["convertAngVelToBodyFixed321Dot"] = lambda x: convertAngVelToBodyFixed321Dot
    def convertBodyFixed321DotToAngVel(*args):
        """
        convertBodyFixed321DotToAngVel(Vec3 q, Vec3 qd) -> Vec3

        Parameters:
            q: SimTK::Vec3 const &
            qd: SimTK::Vec3 const &

        """
        return _opensim.Rotation_convertBodyFixed321DotToAngVel(*args)

    if _newclass:convertBodyFixed321DotToAngVel = staticmethod(convertBodyFixed321DotToAngVel)
    __swig_getmethods__["convertBodyFixed321DotToAngVel"] = lambda x: convertBodyFixed321DotToAngVel
    def convertAngVelDotToBodyFixed321DotDot(*args):
        """
        convertAngVelDotToBodyFixed321DotDot(Vec3 q, Vec3 w_PB_B, Vec3 wdot_PB_B) -> Vec3

        Parameters:
            q: SimTK::Vec3 const &
            w_PB_B: SimTK::Vec3 const &
            wdot_PB_B: SimTK::Vec3 const &

        """
        return _opensim.Rotation_convertAngVelDotToBodyFixed321DotDot(*args)

    if _newclass:convertAngVelDotToBodyFixed321DotDot = staticmethod(convertAngVelDotToBodyFixed321DotDot)
    __swig_getmethods__["convertAngVelDotToBodyFixed321DotDot"] = lambda x: convertAngVelDotToBodyFixed321DotDot
    def calcNForBodyXYZInBodyFrame(*args):
        """
        calcNForBodyXYZInBodyFrame(Vec3 q) -> Mat33

        Parameters:
            q: SimTK::Vec3 const &

        calcNForBodyXYZInBodyFrame(Vec3 cq, Vec3 sq) -> Mat33

        Parameters:
            cq: SimTK::Vec3 const &
            sq: SimTK::Vec3 const &

        """
        return _opensim.Rotation_calcNForBodyXYZInBodyFrame(*args)

    if _newclass:calcNForBodyXYZInBodyFrame = staticmethod(calcNForBodyXYZInBodyFrame)
    __swig_getmethods__["calcNForBodyXYZInBodyFrame"] = lambda x: calcNForBodyXYZInBodyFrame
    def calcNForBodyXYZInParentFrame(*args):
        """
        calcNForBodyXYZInParentFrame(Vec3 q) -> Mat33

        Parameters:
            q: SimTK::Vec3 const &

        calcNForBodyXYZInParentFrame(Vec3 cq, Vec3 sq) -> Mat33

        Parameters:
            cq: SimTK::Vec3 const &
            sq: SimTK::Vec3 const &

        """
        return _opensim.Rotation_calcNForBodyXYZInParentFrame(*args)

    if _newclass:calcNForBodyXYZInParentFrame = staticmethod(calcNForBodyXYZInParentFrame)
    __swig_getmethods__["calcNForBodyXYZInParentFrame"] = lambda x: calcNForBodyXYZInParentFrame
    def multiplyByBodyXYZ_N_P(*args):
        """
        multiplyByBodyXYZ_N_P(Vec2 cosxy, Vec2 sinxy, double oocosy, Vec3 w_PB) -> Vec3

        Parameters:
            cosxy: SimTK::Vec2 const &
            sinxy: SimTK::Vec2 const &
            oocosy: double
            w_PB: SimTK::Vec3 const &

        """
        return _opensim.Rotation_multiplyByBodyXYZ_N_P(*args)

    if _newclass:multiplyByBodyXYZ_N_P = staticmethod(multiplyByBodyXYZ_N_P)
    __swig_getmethods__["multiplyByBodyXYZ_N_P"] = lambda x: multiplyByBodyXYZ_N_P
    def multiplyByBodyXYZ_NT_P(*args):
        """
        multiplyByBodyXYZ_NT_P(Vec2 cosxy, Vec2 sinxy, double oocosy, Vec3 q) -> Vec3

        Parameters:
            cosxy: SimTK::Vec2 const &
            sinxy: SimTK::Vec2 const &
            oocosy: double
            q: SimTK::Vec3 const &

        """
        return _opensim.Rotation_multiplyByBodyXYZ_NT_P(*args)

    if _newclass:multiplyByBodyXYZ_NT_P = staticmethod(multiplyByBodyXYZ_NT_P)
    __swig_getmethods__["multiplyByBodyXYZ_NT_P"] = lambda x: multiplyByBodyXYZ_NT_P
    def convertAngVelInParentToBodyXYZDot(*args):
        """
        convertAngVelInParentToBodyXYZDot(Vec2 cosxy, Vec2 sinxy, double oocosy, Vec3 w_PB) -> Vec3

        Parameters:
            cosxy: SimTK::Vec2 const &
            sinxy: SimTK::Vec2 const &
            oocosy: double
            w_PB: SimTK::Vec3 const &

        """
        return _opensim.Rotation_convertAngVelInParentToBodyXYZDot(*args)

    if _newclass:convertAngVelInParentToBodyXYZDot = staticmethod(convertAngVelInParentToBodyXYZDot)
    __swig_getmethods__["convertAngVelInParentToBodyXYZDot"] = lambda x: convertAngVelInParentToBodyXYZDot
    def convertAngAccInParentToBodyXYZDotDot(*args):
        """
        convertAngAccInParentToBodyXYZDotDot(Vec2 cosxy, Vec2 sinxy, double oocosy, Vec3 qdot, Vec3 b_PB) -> Vec3

        Parameters:
            cosxy: SimTK::Vec2 const &
            sinxy: SimTK::Vec2 const &
            oocosy: double
            qdot: SimTK::Vec3 const &
            b_PB: SimTK::Vec3 const &

        """
        return _opensim.Rotation_convertAngAccInParentToBodyXYZDotDot(*args)

    if _newclass:convertAngAccInParentToBodyXYZDotDot = staticmethod(convertAngAccInParentToBodyXYZDotDot)
    __swig_getmethods__["convertAngAccInParentToBodyXYZDotDot"] = lambda x: convertAngAccInParentToBodyXYZDotDot
    def multiplyByBodyXYZ_NInv_P(*args):
        """
        multiplyByBodyXYZ_NInv_P(Vec2 cosxy, Vec2 sinxy, Vec3 qdot) -> Vec3

        Parameters:
            cosxy: SimTK::Vec2 const &
            sinxy: SimTK::Vec2 const &
            qdot: SimTK::Vec3 const &

        """
        return _opensim.Rotation_multiplyByBodyXYZ_NInv_P(*args)

    if _newclass:multiplyByBodyXYZ_NInv_P = staticmethod(multiplyByBodyXYZ_NInv_P)
    __swig_getmethods__["multiplyByBodyXYZ_NInv_P"] = lambda x: multiplyByBodyXYZ_NInv_P
    def multiplyByBodyXYZ_NInvT_P(*args):
        """
        multiplyByBodyXYZ_NInvT_P(Vec2 cosxy, Vec2 sinxy, Vec3 v_P) -> Vec3

        Parameters:
            cosxy: SimTK::Vec2 const &
            sinxy: SimTK::Vec2 const &
            v_P: SimTK::Vec3 const &

        """
        return _opensim.Rotation_multiplyByBodyXYZ_NInvT_P(*args)

    if _newclass:multiplyByBodyXYZ_NInvT_P = staticmethod(multiplyByBodyXYZ_NInvT_P)
    __swig_getmethods__["multiplyByBodyXYZ_NInvT_P"] = lambda x: multiplyByBodyXYZ_NInvT_P
    def calcNDotForBodyXYZInBodyFrame(*args):
        """
        calcNDotForBodyXYZInBodyFrame(Vec3 q, Vec3 qdot) -> Mat33

        Parameters:
            q: SimTK::Vec3 const &
            qdot: SimTK::Vec3 const &

        calcNDotForBodyXYZInBodyFrame(Vec3 cq, Vec3 sq, Vec3 qdot) -> Mat33

        Parameters:
            cq: SimTK::Vec3 const &
            sq: SimTK::Vec3 const &
            qdot: SimTK::Vec3 const &

        """
        return _opensim.Rotation_calcNDotForBodyXYZInBodyFrame(*args)

    if _newclass:calcNDotForBodyXYZInBodyFrame = staticmethod(calcNDotForBodyXYZInBodyFrame)
    __swig_getmethods__["calcNDotForBodyXYZInBodyFrame"] = lambda x: calcNDotForBodyXYZInBodyFrame
    def calcNDotForBodyXYZInParentFrame(*args):
        """
        calcNDotForBodyXYZInParentFrame(Vec3 q, Vec3 qdot) -> Mat33

        Parameters:
            q: SimTK::Vec3 const &
            qdot: SimTK::Vec3 const &

        calcNDotForBodyXYZInParentFrame(Vec2 cq, Vec2 sq, double ooc1, Vec3 qdot) -> Mat33

        Parameters:
            cq: SimTK::Vec2 const &
            sq: SimTK::Vec2 const &
            ooc1: double
            qdot: SimTK::Vec3 const &

        """
        return _opensim.Rotation_calcNDotForBodyXYZInParentFrame(*args)

    if _newclass:calcNDotForBodyXYZInParentFrame = staticmethod(calcNDotForBodyXYZInParentFrame)
    __swig_getmethods__["calcNDotForBodyXYZInParentFrame"] = lambda x: calcNDotForBodyXYZInParentFrame
    def calcNInvForBodyXYZInBodyFrame(*args):
        """
        calcNInvForBodyXYZInBodyFrame(Vec3 q) -> Mat33

        Parameters:
            q: SimTK::Vec3 const &

        calcNInvForBodyXYZInBodyFrame(Vec3 cq, Vec3 sq) -> Mat33

        Parameters:
            cq: SimTK::Vec3 const &
            sq: SimTK::Vec3 const &

        """
        return _opensim.Rotation_calcNInvForBodyXYZInBodyFrame(*args)

    if _newclass:calcNInvForBodyXYZInBodyFrame = staticmethod(calcNInvForBodyXYZInBodyFrame)
    __swig_getmethods__["calcNInvForBodyXYZInBodyFrame"] = lambda x: calcNInvForBodyXYZInBodyFrame
    def calcNInvForBodyXYZInParentFrame(*args):
        """
        calcNInvForBodyXYZInParentFrame(Vec3 q) -> Mat33

        Parameters:
            q: SimTK::Vec3 const &

        calcNInvForBodyXYZInParentFrame(Vec3 cq, Vec3 sq) -> Mat33

        Parameters:
            cq: SimTK::Vec3 const &
            sq: SimTK::Vec3 const &

        """
        return _opensim.Rotation_calcNInvForBodyXYZInParentFrame(*args)

    if _newclass:calcNInvForBodyXYZInParentFrame = staticmethod(calcNInvForBodyXYZInParentFrame)
    __swig_getmethods__["calcNInvForBodyXYZInParentFrame"] = lambda x: calcNInvForBodyXYZInParentFrame
    def convertAngVelInBodyFrameToBodyXYZDot(*args):
        """
        convertAngVelInBodyFrameToBodyXYZDot(Vec3 q, Vec3 w_PB_B) -> Vec3

        Parameters:
            q: SimTK::Vec3 const &
            w_PB_B: SimTK::Vec3 const &

        convertAngVelInBodyFrameToBodyXYZDot(Vec3 cq, Vec3 sq, Vec3 w_PB_B) -> Vec3

        Parameters:
            cq: SimTK::Vec3 const &
            sq: SimTK::Vec3 const &
            w_PB_B: SimTK::Vec3 const &

        """
        return _opensim.Rotation_convertAngVelInBodyFrameToBodyXYZDot(*args)

    if _newclass:convertAngVelInBodyFrameToBodyXYZDot = staticmethod(convertAngVelInBodyFrameToBodyXYZDot)
    __swig_getmethods__["convertAngVelInBodyFrameToBodyXYZDot"] = lambda x: convertAngVelInBodyFrameToBodyXYZDot
    def convertBodyXYZDotToAngVelInBodyFrame(*args):
        """
        convertBodyXYZDotToAngVelInBodyFrame(Vec3 q, Vec3 qdot) -> Vec3

        Parameters:
            q: SimTK::Vec3 const &
            qdot: SimTK::Vec3 const &

        convertBodyXYZDotToAngVelInBodyFrame(Vec3 cq, Vec3 sq, Vec3 qdot) -> Vec3

        Parameters:
            cq: SimTK::Vec3 const &
            sq: SimTK::Vec3 const &
            qdot: SimTK::Vec3 const &

        """
        return _opensim.Rotation_convertBodyXYZDotToAngVelInBodyFrame(*args)

    if _newclass:convertBodyXYZDotToAngVelInBodyFrame = staticmethod(convertBodyXYZDotToAngVelInBodyFrame)
    __swig_getmethods__["convertBodyXYZDotToAngVelInBodyFrame"] = lambda x: convertBodyXYZDotToAngVelInBodyFrame
    def convertAngVelDotInBodyFrameToBodyXYZDotDot(*args):
        """
        convertAngVelDotInBodyFrameToBodyXYZDotDot(Vec3 q, Vec3 w_PB_B, Vec3 wdot_PB_B) -> Vec3

        Parameters:
            q: SimTK::Vec3 const &
            w_PB_B: SimTK::Vec3 const &
            wdot_PB_B: SimTK::Vec3 const &

        convertAngVelDotInBodyFrameToBodyXYZDotDot(Vec3 cq, Vec3 sq, Vec3 w_PB_B, Vec3 wdot_PB_B) -> Vec3

        Parameters:
            cq: SimTK::Vec3 const &
            sq: SimTK::Vec3 const &
            w_PB_B: SimTK::Vec3 const &
            wdot_PB_B: SimTK::Vec3 const &

        """
        return _opensim.Rotation_convertAngVelDotInBodyFrameToBodyXYZDotDot(*args)

    if _newclass:convertAngVelDotInBodyFrameToBodyXYZDotDot = staticmethod(convertAngVelDotInBodyFrameToBodyXYZDotDot)
    __swig_getmethods__["convertAngVelDotInBodyFrameToBodyXYZDotDot"] = lambda x: convertAngVelDotInBodyFrameToBodyXYZDotDot
    def convertAngVelToQuaternionDot(*args):
        """
        convertAngVelToQuaternionDot(Vec4 q, Vec3 w_PB_P) -> Vec4

        Parameters:
            q: SimTK::Vec4 const &
            w_PB_P: SimTK::Vec3 const &

        """
        return _opensim.Rotation_convertAngVelToQuaternionDot(*args)

    if _newclass:convertAngVelToQuaternionDot = staticmethod(convertAngVelToQuaternionDot)
    __swig_getmethods__["convertAngVelToQuaternionDot"] = lambda x: convertAngVelToQuaternionDot
    def convertQuaternionDotToAngVel(*args):
        """
        convertQuaternionDotToAngVel(Vec4 q, Vec4 qdot) -> Vec3

        Parameters:
            q: SimTK::Vec4 const &
            qdot: SimTK::Vec4 const &

        """
        return _opensim.Rotation_convertQuaternionDotToAngVel(*args)

    if _newclass:convertQuaternionDotToAngVel = staticmethod(convertQuaternionDotToAngVel)
    __swig_getmethods__["convertQuaternionDotToAngVel"] = lambda x: convertQuaternionDotToAngVel
    def convertAngVelDotToQuaternionDotDot(*args):
        """
        convertAngVelDotToQuaternionDotDot(Vec4 q, Vec3 w_PB, Vec3 b_PB) -> Vec4

        Parameters:
            q: SimTK::Vec4 const &
            w_PB: SimTK::Vec3 const &
            b_PB: SimTK::Vec3 const &

        """
        return _opensim.Rotation_convertAngVelDotToQuaternionDotDot(*args)

    if _newclass:convertAngVelDotToQuaternionDotDot = staticmethod(convertAngVelDotToQuaternionDotDot)
    __swig_getmethods__["convertAngVelDotToQuaternionDotDot"] = lambda x: convertAngVelDotToQuaternionDotDot
    __swig_destroy__ = _opensim.delete_Rotation
    __del__ = lambda self : None;
Rotation_swigregister = _opensim.Rotation_swigregister
Rotation_swigregister(Rotation)

def Rotation_convertAngVelToBodyFixed321Dot(*args):
  """
    Rotation_convertAngVelToBodyFixed321Dot(Vec3 q, Vec3 w_PB_B) -> Vec3

    Parameters:
        q: SimTK::Vec3 const &
        w_PB_B: SimTK::Vec3 const &

    """
  return _opensim.Rotation_convertAngVelToBodyFixed321Dot(*args)

def Rotation_convertBodyFixed321DotToAngVel(*args):
  """
    Rotation_convertBodyFixed321DotToAngVel(Vec3 q, Vec3 qd) -> Vec3

    Parameters:
        q: SimTK::Vec3 const &
        qd: SimTK::Vec3 const &

    """
  return _opensim.Rotation_convertBodyFixed321DotToAngVel(*args)

def Rotation_convertAngVelDotToBodyFixed321DotDot(*args):
  """
    Rotation_convertAngVelDotToBodyFixed321DotDot(Vec3 q, Vec3 w_PB_B, Vec3 wdot_PB_B) -> Vec3

    Parameters:
        q: SimTK::Vec3 const &
        w_PB_B: SimTK::Vec3 const &
        wdot_PB_B: SimTK::Vec3 const &

    """
  return _opensim.Rotation_convertAngVelDotToBodyFixed321DotDot(*args)

def Rotation_calcNForBodyXYZInBodyFrame(*args):
  """
    calcNForBodyXYZInBodyFrame(Vec3 q) -> Mat33

    Parameters:
        q: SimTK::Vec3 const &

    Rotation_calcNForBodyXYZInBodyFrame(Vec3 cq, Vec3 sq) -> Mat33

    Parameters:
        cq: SimTK::Vec3 const &
        sq: SimTK::Vec3 const &

    """
  return _opensim.Rotation_calcNForBodyXYZInBodyFrame(*args)

def Rotation_calcNForBodyXYZInParentFrame(*args):
  """
    calcNForBodyXYZInParentFrame(Vec3 q) -> Mat33

    Parameters:
        q: SimTK::Vec3 const &

    Rotation_calcNForBodyXYZInParentFrame(Vec3 cq, Vec3 sq) -> Mat33

    Parameters:
        cq: SimTK::Vec3 const &
        sq: SimTK::Vec3 const &

    """
  return _opensim.Rotation_calcNForBodyXYZInParentFrame(*args)

def Rotation_multiplyByBodyXYZ_N_P(*args):
  """
    Rotation_multiplyByBodyXYZ_N_P(Vec2 cosxy, Vec2 sinxy, double oocosy, Vec3 w_PB) -> Vec3

    Parameters:
        cosxy: SimTK::Vec2 const &
        sinxy: SimTK::Vec2 const &
        oocosy: double
        w_PB: SimTK::Vec3 const &

    """
  return _opensim.Rotation_multiplyByBodyXYZ_N_P(*args)

def Rotation_multiplyByBodyXYZ_NT_P(*args):
  """
    Rotation_multiplyByBodyXYZ_NT_P(Vec2 cosxy, Vec2 sinxy, double oocosy, Vec3 q) -> Vec3

    Parameters:
        cosxy: SimTK::Vec2 const &
        sinxy: SimTK::Vec2 const &
        oocosy: double
        q: SimTK::Vec3 const &

    """
  return _opensim.Rotation_multiplyByBodyXYZ_NT_P(*args)

def Rotation_convertAngVelInParentToBodyXYZDot(*args):
  """
    Rotation_convertAngVelInParentToBodyXYZDot(Vec2 cosxy, Vec2 sinxy, double oocosy, Vec3 w_PB) -> Vec3

    Parameters:
        cosxy: SimTK::Vec2 const &
        sinxy: SimTK::Vec2 const &
        oocosy: double
        w_PB: SimTK::Vec3 const &

    """
  return _opensim.Rotation_convertAngVelInParentToBodyXYZDot(*args)

def Rotation_convertAngAccInParentToBodyXYZDotDot(*args):
  """
    Rotation_convertAngAccInParentToBodyXYZDotDot(Vec2 cosxy, Vec2 sinxy, double oocosy, Vec3 qdot, Vec3 b_PB) -> Vec3

    Parameters:
        cosxy: SimTK::Vec2 const &
        sinxy: SimTK::Vec2 const &
        oocosy: double
        qdot: SimTK::Vec3 const &
        b_PB: SimTK::Vec3 const &

    """
  return _opensim.Rotation_convertAngAccInParentToBodyXYZDotDot(*args)

def Rotation_multiplyByBodyXYZ_NInv_P(*args):
  """
    Rotation_multiplyByBodyXYZ_NInv_P(Vec2 cosxy, Vec2 sinxy, Vec3 qdot) -> Vec3

    Parameters:
        cosxy: SimTK::Vec2 const &
        sinxy: SimTK::Vec2 const &
        qdot: SimTK::Vec3 const &

    """
  return _opensim.Rotation_multiplyByBodyXYZ_NInv_P(*args)

def Rotation_multiplyByBodyXYZ_NInvT_P(*args):
  """
    Rotation_multiplyByBodyXYZ_NInvT_P(Vec2 cosxy, Vec2 sinxy, Vec3 v_P) -> Vec3

    Parameters:
        cosxy: SimTK::Vec2 const &
        sinxy: SimTK::Vec2 const &
        v_P: SimTK::Vec3 const &

    """
  return _opensim.Rotation_multiplyByBodyXYZ_NInvT_P(*args)

def Rotation_calcNDotForBodyXYZInBodyFrame(*args):
  """
    calcNDotForBodyXYZInBodyFrame(Vec3 q, Vec3 qdot) -> Mat33

    Parameters:
        q: SimTK::Vec3 const &
        qdot: SimTK::Vec3 const &

    Rotation_calcNDotForBodyXYZInBodyFrame(Vec3 cq, Vec3 sq, Vec3 qdot) -> Mat33

    Parameters:
        cq: SimTK::Vec3 const &
        sq: SimTK::Vec3 const &
        qdot: SimTK::Vec3 const &

    """
  return _opensim.Rotation_calcNDotForBodyXYZInBodyFrame(*args)

def Rotation_calcNDotForBodyXYZInParentFrame(*args):
  """
    calcNDotForBodyXYZInParentFrame(Vec3 q, Vec3 qdot) -> Mat33

    Parameters:
        q: SimTK::Vec3 const &
        qdot: SimTK::Vec3 const &

    Rotation_calcNDotForBodyXYZInParentFrame(Vec2 cq, Vec2 sq, double ooc1, Vec3 qdot) -> Mat33

    Parameters:
        cq: SimTK::Vec2 const &
        sq: SimTK::Vec2 const &
        ooc1: double
        qdot: SimTK::Vec3 const &

    """
  return _opensim.Rotation_calcNDotForBodyXYZInParentFrame(*args)

def Rotation_calcNInvForBodyXYZInBodyFrame(*args):
  """
    calcNInvForBodyXYZInBodyFrame(Vec3 q) -> Mat33

    Parameters:
        q: SimTK::Vec3 const &

    Rotation_calcNInvForBodyXYZInBodyFrame(Vec3 cq, Vec3 sq) -> Mat33

    Parameters:
        cq: SimTK::Vec3 const &
        sq: SimTK::Vec3 const &

    """
  return _opensim.Rotation_calcNInvForBodyXYZInBodyFrame(*args)

def Rotation_calcNInvForBodyXYZInParentFrame(*args):
  """
    calcNInvForBodyXYZInParentFrame(Vec3 q) -> Mat33

    Parameters:
        q: SimTK::Vec3 const &

    Rotation_calcNInvForBodyXYZInParentFrame(Vec3 cq, Vec3 sq) -> Mat33

    Parameters:
        cq: SimTK::Vec3 const &
        sq: SimTK::Vec3 const &

    """
  return _opensim.Rotation_calcNInvForBodyXYZInParentFrame(*args)

def Rotation_convertAngVelInBodyFrameToBodyXYZDot(*args):
  """
    convertAngVelInBodyFrameToBodyXYZDot(Vec3 q, Vec3 w_PB_B) -> Vec3

    Parameters:
        q: SimTK::Vec3 const &
        w_PB_B: SimTK::Vec3 const &

    Rotation_convertAngVelInBodyFrameToBodyXYZDot(Vec3 cq, Vec3 sq, Vec3 w_PB_B) -> Vec3

    Parameters:
        cq: SimTK::Vec3 const &
        sq: SimTK::Vec3 const &
        w_PB_B: SimTK::Vec3 const &

    """
  return _opensim.Rotation_convertAngVelInBodyFrameToBodyXYZDot(*args)

def Rotation_convertBodyXYZDotToAngVelInBodyFrame(*args):
  """
    convertBodyXYZDotToAngVelInBodyFrame(Vec3 q, Vec3 qdot) -> Vec3

    Parameters:
        q: SimTK::Vec3 const &
        qdot: SimTK::Vec3 const &

    Rotation_convertBodyXYZDotToAngVelInBodyFrame(Vec3 cq, Vec3 sq, Vec3 qdot) -> Vec3

    Parameters:
        cq: SimTK::Vec3 const &
        sq: SimTK::Vec3 const &
        qdot: SimTK::Vec3 const &

    """
  return _opensim.Rotation_convertBodyXYZDotToAngVelInBodyFrame(*args)

def Rotation_convertAngVelDotInBodyFrameToBodyXYZDotDot(*args):
  """
    convertAngVelDotInBodyFrameToBodyXYZDotDot(Vec3 q, Vec3 w_PB_B, Vec3 wdot_PB_B) -> Vec3

    Parameters:
        q: SimTK::Vec3 const &
        w_PB_B: SimTK::Vec3 const &
        wdot_PB_B: SimTK::Vec3 const &

    Rotation_convertAngVelDotInBodyFrameToBodyXYZDotDot(Vec3 cq, Vec3 sq, Vec3 w_PB_B, Vec3 wdot_PB_B) -> Vec3

    Parameters:
        cq: SimTK::Vec3 const &
        sq: SimTK::Vec3 const &
        w_PB_B: SimTK::Vec3 const &
        wdot_PB_B: SimTK::Vec3 const &

    """
  return _opensim.Rotation_convertAngVelDotInBodyFrameToBodyXYZDotDot(*args)

def Rotation_convertAngVelToQuaternionDot(*args):
  """
    Rotation_convertAngVelToQuaternionDot(Vec4 q, Vec3 w_PB_P) -> Vec4

    Parameters:
        q: SimTK::Vec4 const &
        w_PB_P: SimTK::Vec3 const &

    """
  return _opensim.Rotation_convertAngVelToQuaternionDot(*args)

def Rotation_convertQuaternionDotToAngVel(*args):
  """
    Rotation_convertQuaternionDotToAngVel(Vec4 q, Vec4 qdot) -> Vec3

    Parameters:
        q: SimTK::Vec4 const &
        qdot: SimTK::Vec4 const &

    """
  return _opensim.Rotation_convertQuaternionDotToAngVel(*args)

def Rotation_convertAngVelDotToQuaternionDotDot(*args):
  """
    Rotation_convertAngVelDotToQuaternionDotDot(Vec4 q, Vec3 w_PB, Vec3 b_PB) -> Vec4

    Parameters:
        q: SimTK::Vec4 const &
        w_PB: SimTK::Vec3 const &
        b_PB: SimTK::Vec3 const &

    """
  return _opensim.Rotation_convertAngVelDotToQuaternionDotDot(*args)

class InverseRotation(_object):
    """Proxy of C++ SimTK::InverseRotation_<(double)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, InverseRotation, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, InverseRotation, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::InverseRotation_<(double)> self) -> InverseRotation
        __init__(SimTK::InverseRotation_<(double)> self, InverseRotation R) -> InverseRotation

        Parameters:
            R: SimTK::InverseRotation_< double > const &

        """
        this = _opensim.new_InverseRotation(*args)
        try: self.this.append(this)
        except: self.this = this
    def invert(self):
        """
        invert(InverseRotation self) -> Rotation

        Parameters:
            self: SimTK::InverseRotation_< double > const *

        """
        return _opensim.InverseRotation_invert(self)

    def transpose(self):
        """
        transpose(InverseRotation self) -> Rotation

        Parameters:
            self: SimTK::InverseRotation_< double > const *

        """
        return _opensim.InverseRotation_transpose(self)

    def __invert__(self, *args):
        """
        __invert__(InverseRotation self) -> Rotation
        __invert__(InverseRotation self) -> Rotation

        Parameters:
            self: SimTK::InverseRotation_< double > *

        """
        return _opensim.InverseRotation___invert__(self, *args)

    __swig_destroy__ = _opensim.delete_InverseRotation
    __del__ = lambda self : None;
InverseRotation_swigregister = _opensim.InverseRotation_swigregister
InverseRotation_swigregister(InverseRotation)

class Transform(_object):
    """Proxy of C++ SimTK::Transform_<(double)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Transform, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Transform, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::Transform_<(double)> self) -> Transform
        __init__(SimTK::Transform_<(double)> self, Rotation R, Vec3 p) -> Transform

        Parameters:
            R: SimTK::Rotation_< double > const &
            p: SimTK::Vec< 3,double > const &

        __init__(SimTK::Transform_<(double)> self, Rotation R) -> Transform

        Parameters:
            R: SimTK::Rotation_< double > const &

        __init__(SimTK::Transform_<(double)> self, Vec3 p) -> Transform

        Parameters:
            p: SimTK::Vec< 3,double > const &

        """
        this = _opensim.new_Transform(*args)
        try: self.this.append(this)
        except: self.this = this
    def set(self, *args):
        """
        set(Transform self, Rotation R, Vec3 p) -> Transform

        Parameters:
            R: SimTK::Rotation_< double > const &
            p: SimTK::Vec< 3,double > const &

        """
        return _opensim.Transform_set(self, *args)

    def setToZero(self):
        """
        setToZero(Transform self) -> Transform

        Parameters:
            self: SimTK::Transform_< double > *

        """
        return _opensim.Transform_setToZero(self)

    def setToNaN(self):
        """
        setToNaN(Transform self) -> Transform

        Parameters:
            self: SimTK::Transform_< double > *

        """
        return _opensim.Transform_setToNaN(self)

    def invert(self):
        """
        invert(Transform self) -> SimTK::InverseTransform_< double > const &

        Parameters:
            self: SimTK::Transform_< double > const *

        """
        return _opensim.Transform_invert(self)

    def updInvert(self):
        """
        updInvert(Transform self) -> SimTK::InverseTransform_< double > &

        Parameters:
            self: SimTK::Transform_< double > *

        """
        return _opensim.Transform_updInvert(self)

    def __invert__(self, *args):
        """
        __invert__(Transform self) -> SimTK::InverseTransform_< double > const
        __invert__(Transform self) -> SimTK::InverseTransform_< double > &

        Parameters:
            self: SimTK::Transform_< double > *

        """
        return _opensim.Transform___invert__(self, *args)

    def compose(self, *args):
        """
        compose(Transform self, Transform X_FY) -> Transform

        Parameters:
            X_FY: SimTK::Transform_< double > const &

        compose(Transform self, SimTK::InverseTransform_< double > const & X_FY) -> Transform

        Parameters:
            X_FY: SimTK::InverseTransform_< double > const &

        """
        return _opensim.Transform_compose(self, *args)

    def xformFrameVecToBase(self, *args):
        """
        xformFrameVecToBase(Transform self, Vec3 vF) -> Vec3

        Parameters:
            vF: SimTK::Vec< 3,double > const &

        """
        return _opensim.Transform_xformFrameVecToBase(self, *args)

    def xformBaseVecToFrame(self, *args):
        """
        xformBaseVecToFrame(Transform self, Vec3 vB) -> Vec3

        Parameters:
            vB: SimTK::Vec< 3,double > const &

        """
        return _opensim.Transform_xformBaseVecToFrame(self, *args)

    def shiftFrameStationToBase(self, *args):
        """
        shiftFrameStationToBase(Transform self, Vec3 sF) -> Vec3

        Parameters:
            sF: SimTK::Vec< 3,double > const &

        """
        return _opensim.Transform_shiftFrameStationToBase(self, *args)

    def shiftBaseStationToFrame(self, *args):
        """
        shiftBaseStationToFrame(Transform self, Vec3 sB) -> Vec3

        Parameters:
            sB: SimTK::Vec< 3,double > const &

        """
        return _opensim.Transform_shiftBaseStationToFrame(self, *args)

    def R(self):
        """
        R(Transform self) -> Rotation

        Parameters:
            self: SimTK::Transform_< double > const *

        """
        return _opensim.Transform_R(self)

    def RInv(self):
        """
        RInv(Transform self) -> InverseRotation

        Parameters:
            self: SimTK::Transform_< double > const *

        """
        return _opensim.Transform_RInv(self)

    def p(self):
        """
        p(Transform self) -> Vec3

        Parameters:
            self: SimTK::Transform_< double > const *

        """
        return _opensim.Transform_p(self)

    def setP(self, *args):
        """
        setP(Transform self, Vec3 p) -> Transform

        Parameters:
            p: SimTK::Vec< 3,double > const &

        """
        return _opensim.Transform_setP(self, *args)

    def pInv(self):
        """
        pInv(Transform self) -> Vec3

        Parameters:
            self: SimTK::Transform_< double > const *

        """
        return _opensim.Transform_pInv(self)

    def setPInv(self, *args):
        """
        setPInv(Transform self, Vec3 p_FB) -> Transform

        Parameters:
            p_FB: SimTK::Vec< 3,double > const &

        """
        return _opensim.Transform_setPInv(self, *args)

    def asMat34(self):
        """
        asMat34(Transform self) -> SimTK::Mat< 3,4,double > const &

        Parameters:
            self: SimTK::Transform_< double > const *

        """
        return _opensim.Transform_asMat34(self)

    def toMat34(self):
        """
        toMat34(Transform self) -> SimTK::Mat< 3,4,double >

        Parameters:
            self: SimTK::Transform_< double > const *

        """
        return _opensim.Transform_toMat34(self)

    def toMat44(self):
        """
        toMat44(Transform self) -> SimTK::Mat< 4,4,double >

        Parameters:
            self: SimTK::Transform_< double > const *

        """
        return _opensim.Transform_toMat44(self)

    def T(self):
        """
        T(Transform self) -> Vec3

        Parameters:
            self: SimTK::Transform_< double > const *

        """
        return _opensim.Transform_T(self)

    __swig_destroy__ = _opensim.delete_Transform
    __del__ = lambda self : None;
Transform_swigregister = _opensim.Transform_swigregister
Transform_swigregister(Transform)

class Inertia(_object):
    """Proxy of C++ SimTK::Inertia_<(double)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Inertia, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Inertia, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::Inertia_<(double)> self) -> Inertia
        __init__(SimTK::Inertia_<(double)> self, double const & moment) -> Inertia

        Parameters:
            moment: double const &

        __init__(SimTK::Inertia_<(double)> self, Vec3 p, double const & mass) -> Inertia

        Parameters:
            p: SimTK::Vec3 const &
            mass: double const &

        __init__(SimTK::Inertia_<(double)> self, Vec3 moments, Vec3 products=SimTK::Vec3(0)) -> Inertia

        Parameters:
            moments: SimTK::Vec3 const &
            products: SimTK::Vec3 const &

        __init__(SimTK::Inertia_<(double)> self, Vec3 moments) -> Inertia

        Parameters:
            moments: SimTK::Vec3 const &

        __init__(SimTK::Inertia_<(double)> self, double const & xx, double const & yy, double const & zz) -> Inertia

        Parameters:
            xx: double const &
            yy: double const &
            zz: double const &

        __init__(SimTK::Inertia_<(double)> self, double const & xx, double const & yy, double const & zz, double const & xy, double const & xz, 
            double const & yz) -> Inertia

        Parameters:
            xx: double const &
            yy: double const &
            zz: double const &
            xy: double const &
            xz: double const &
            yz: double const &

        """
        this = _opensim.new_Inertia(*args)
        try: self.this.append(this)
        except: self.this = this
    def getMoments(self):
        """
        getMoments(Inertia self) -> Vec3

        Parameters:
            self: SimTK::Inertia_< double > const *

        """
        return _opensim.Inertia_getMoments(self)

    def getProducts(self):
        """
        getProducts(Inertia self) -> Vec3

        Parameters:
            self: SimTK::Inertia_< double > const *

        """
        return _opensim.Inertia_getProducts(self)

    def isNaN(self):
        """
        isNaN(Inertia self) -> bool

        Parameters:
            self: SimTK::Inertia_< double > const *

        """
        return _opensim.Inertia_isNaN(self)

    def isInf(self):
        """
        isInf(Inertia self) -> bool

        Parameters:
            self: SimTK::Inertia_< double > const *

        """
        return _opensim.Inertia_isInf(self)

    def isFinite(self):
        """
        isFinite(Inertia self) -> bool

        Parameters:
            self: SimTK::Inertia_< double > const *

        """
        return _opensim.Inertia_isFinite(self)

    __swig_destroy__ = _opensim.delete_Inertia
    __del__ = lambda self : None;
Inertia_swigregister = _opensim.Inertia_swigregister
Inertia_swigregister(Inertia)

class MassProperties(_object):
    """Proxy of C++ SimTK::MassProperties_<(double)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, MassProperties, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, MassProperties, name)
    __repr__ = _swig_repr
    def __init__(self): 
        """__init__(SimTK::MassProperties_<(double)> self) -> MassProperties"""
        this = _opensim.new_MassProperties()
        try: self.this.append(this)
        except: self.this = this
    def isExactlyMassless(self):
        """
        isExactlyMassless(MassProperties self) -> bool

        Parameters:
            self: SimTK::MassProperties_< double > const *

        """
        return _opensim.MassProperties_isExactlyMassless(self)

    def isNearlyMassless(self, *args):
        """
        isNearlyMassless(MassProperties self, double const & tol=SignificantReal) -> bool

        Parameters:
            tol: double const &

        isNearlyMassless(MassProperties self) -> bool

        Parameters:
            self: SimTK::MassProperties_< double > const *

        """
        return _opensim.MassProperties_isNearlyMassless(self, *args)

    def isExactlyCentral(self):
        """
        isExactlyCentral(MassProperties self) -> bool

        Parameters:
            self: SimTK::MassProperties_< double > const *

        """
        return _opensim.MassProperties_isExactlyCentral(self)

    def isNearlyCentral(self, *args):
        """
        isNearlyCentral(MassProperties self, double const & tol=SignificantReal) -> bool

        Parameters:
            tol: double const &

        isNearlyCentral(MassProperties self) -> bool

        Parameters:
            self: SimTK::MassProperties_< double > const *

        """
        return _opensim.MassProperties_isNearlyCentral(self, *args)

    def isNaN(self):
        """
        isNaN(MassProperties self) -> bool

        Parameters:
            self: SimTK::MassProperties_< double > const *

        """
        return _opensim.MassProperties_isNaN(self)

    def isInf(self):
        """
        isInf(MassProperties self) -> bool

        Parameters:
            self: SimTK::MassProperties_< double > const *

        """
        return _opensim.MassProperties_isInf(self)

    def isFinite(self):
        """
        isFinite(MassProperties self) -> bool

        Parameters:
            self: SimTK::MassProperties_< double > const *

        """
        return _opensim.MassProperties_isFinite(self)

    __swig_destroy__ = _opensim.delete_MassProperties
    __del__ = lambda self : None;
MassProperties_swigregister = _opensim.MassProperties_swigregister
MassProperties_swigregister(MassProperties)

SimTK_DEFAULT_PRECISION = _opensim.SimTK_DEFAULT_PRECISION

def SimTK_version_SimTKcommon(*args):
  """
    SimTK_version_SimTKcommon(int * major, int * minor, int * build)

    Parameters:
        major: int *
        minor: int *
        build: int *

    """
  return _opensim.SimTK_version_SimTKcommon(*args)

def SimTK_about_SimTKcommon(*args):
  """
    SimTK_about_SimTKcommon(char const * key, int maxlen, char * value)

    Parameters:
        key: char const *
        maxlen: int
        value: char *

    """
  return _opensim.SimTK_about_SimTKcommon(*args)

def canStoreInNonnegativeInt(*args):
  """
    canStoreInNonnegativeInt(bool arg1) -> bool

    Parameters:
        arg1: bool

    canStoreInNonnegativeInt(char c) -> bool

    Parameters:
        c: char

    canStoreInNonnegativeInt(unsigned char arg1) -> bool

    Parameters:
        arg1: unsigned char

    canStoreInNonnegativeInt(signed char c) -> bool

    Parameters:
        c: signed char

    canStoreInNonnegativeInt(short s) -> bool

    Parameters:
        s: short

    canStoreInNonnegativeInt(unsigned short arg1) -> bool

    Parameters:
        arg1: unsigned short

    canStoreInNonnegativeInt(int i) -> bool

    Parameters:
        i: int

    canStoreInNonnegativeInt(long l) -> bool

    Parameters:
        l: long

    canStoreInNonnegativeInt(long long l) -> bool

    Parameters:
        l: long long

    canStoreInNonnegativeInt(unsigned int u) -> bool

    Parameters:
        u: unsigned int

    canStoreInNonnegativeInt(unsigned long u) -> bool

    Parameters:
        u: unsigned long

    canStoreInNonnegativeInt(unsigned long long u) -> bool

    Parameters:
        u: unsigned long long

    """
  return _opensim.canStoreInNonnegativeInt(*args)

def isSizeInRange(*args):
  """
    isSizeInRange(char sz, char mx) -> bool

    Parameters:
        sz: char
        mx: char

    isSizeInRange(signed char sz, signed char mx) -> bool

    Parameters:
        sz: signed char
        mx: signed char

    isSizeInRange(short sz, short mx) -> bool

    Parameters:
        sz: short
        mx: short

    isSizeInRange(int sz, int mx) -> bool

    Parameters:
        sz: int
        mx: int

    isSizeInRange(long sz, long mx) -> bool

    Parameters:
        sz: long
        mx: long

    isSizeInRange(long long sz, long long mx) -> bool

    Parameters:
        sz: long long
        mx: long long

    isSizeInRange(unsigned char sz, unsigned char mx) -> bool

    Parameters:
        sz: unsigned char
        mx: unsigned char

    isSizeInRange(unsigned short sz, unsigned short mx) -> bool

    Parameters:
        sz: unsigned short
        mx: unsigned short

    isSizeInRange(unsigned int sz, unsigned int mx) -> bool

    Parameters:
        sz: unsigned int
        mx: unsigned int

    isSizeInRange(unsigned long sz, unsigned long mx) -> bool

    Parameters:
        sz: unsigned long
        mx: unsigned long

    isSizeInRange(unsigned long long sz, unsigned long long mx) -> bool

    Parameters:
        sz: unsigned long long
        mx: unsigned long long

    """
  return _opensim.isSizeInRange(*args)

def isIndexInRange(*args):
  """
    isIndexInRange(char ix, char sz) -> bool

    Parameters:
        ix: char
        sz: char

    isIndexInRange(signed char ix, signed char sz) -> bool

    Parameters:
        ix: signed char
        sz: signed char

    isIndexInRange(short ix, short sz) -> bool

    Parameters:
        ix: short
        sz: short

    isIndexInRange(int ix, int sz) -> bool

    Parameters:
        ix: int
        sz: int

    isIndexInRange(long ix, long sz) -> bool

    Parameters:
        ix: long
        sz: long

    isIndexInRange(long long ix, long long sz) -> bool

    Parameters:
        ix: long long
        sz: long long

    isIndexInRange(unsigned char ix, unsigned char sz) -> bool

    Parameters:
        ix: unsigned char
        sz: unsigned char

    isIndexInRange(unsigned short ix, unsigned short sz) -> bool

    Parameters:
        ix: unsigned short
        sz: unsigned short

    isIndexInRange(unsigned int ix, unsigned int sz) -> bool

    Parameters:
        ix: unsigned int
        sz: unsigned int

    isIndexInRange(unsigned long ix, unsigned long sz) -> bool

    Parameters:
        ix: unsigned long
        sz: unsigned long

    isIndexInRange(unsigned long long ix, unsigned long long sz) -> bool

    Parameters:
        ix: unsigned long long
        sz: unsigned long long

    """
  return _opensim.isIndexInRange(*args)

def isNonnegative(*args):
  """
    isNonnegative(bool arg1) -> bool

    Parameters:
        arg1: bool

    isNonnegative(char n) -> bool

    Parameters:
        n: char

    isNonnegative(signed char n) -> bool

    Parameters:
        n: signed char

    isNonnegative(short n) -> bool

    Parameters:
        n: short

    isNonnegative(int n) -> bool

    Parameters:
        n: int

    isNonnegative(long n) -> bool

    Parameters:
        n: long

    isNonnegative(long long n) -> bool

    Parameters:
        n: long long

    isNonnegative(unsigned char arg1) -> bool

    Parameters:
        arg1: unsigned char

    isNonnegative(unsigned short arg1) -> bool

    Parameters:
        arg1: unsigned short

    isNonnegative(unsigned int arg1) -> bool

    Parameters:
        arg1: unsigned int

    isNonnegative(unsigned long arg1) -> bool

    Parameters:
        arg1: unsigned long

    isNonnegative(unsigned long long arg1) -> bool

    Parameters:
        arg1: unsigned long long

    """
  return _opensim.isNonnegative(*args)
class Segment(_object):
    """Proxy of C++ SimTK::Segment class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Segment, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Segment, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::Segment self) -> Segment
        __init__(SimTK::Segment self, int l, int ofs=0) -> Segment

        Parameters:
            l: int
            ofs: int

        __init__(SimTK::Segment self, int l) -> Segment

        Parameters:
            l: int

        """
        this = _opensim.new_Segment(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_setmethods__["length"] = _opensim.Segment_length_set
    __swig_getmethods__["length"] = _opensim.Segment_length_get
    if _newclass:length = _swig_property(_opensim.Segment_length_get, _opensim.Segment_length_set)
    __swig_setmethods__["offset"] = _opensim.Segment_offset_set
    __swig_getmethods__["offset"] = _opensim.Segment_offset_get
    if _newclass:offset = _swig_property(_opensim.Segment_offset_get, _opensim.Segment_offset_set)
    __swig_destroy__ = _opensim.delete_Segment
    __del__ = lambda self : None;
Segment_swigregister = _opensim.Segment_swigregister
Segment_swigregister(Segment)
InvalidIndex = cvar.InvalidIndex

class DontCopy(_object):
    """Proxy of C++ SimTK::DontCopy class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, DontCopy, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, DontCopy, name)
    __repr__ = _swig_repr
    def __init__(self): 
        """__init__(SimTK::DontCopy self) -> DontCopy"""
        this = _opensim.new_DontCopy()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_DontCopy
    __del__ = lambda self : None;
DontCopy_swigregister = _opensim.DontCopy_swigregister
DontCopy_swigregister(DontCopy)

class TrustMe(_object):
    """Proxy of C++ SimTK::TrustMe class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, TrustMe, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, TrustMe, name)
    __repr__ = _swig_repr
    def __init__(self): 
        """__init__(SimTK::TrustMe self) -> TrustMe"""
        this = _opensim.new_TrustMe()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_TrustMe
    __del__ = lambda self : None;
TrustMe_swigregister = _opensim.TrustMe_swigregister
TrustMe_swigregister(TrustMe)

class FalseType(_object):
    """Proxy of C++ SimTK::FalseType class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, FalseType, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, FalseType, name)
    __repr__ = _swig_repr
    def __init__(self): 
        """__init__(SimTK::FalseType self) -> FalseType"""
        this = _opensim.new_FalseType()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_FalseType
    __del__ = lambda self : None;
FalseType_swigregister = _opensim.FalseType_swigregister
FalseType_swigregister(FalseType)

class TrueType(_object):
    """Proxy of C++ SimTK::TrueType class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, TrueType, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, TrueType, name)
    __repr__ = _swig_repr
    def __init__(self): 
        """__init__(SimTK::TrueType self) -> TrueType"""
        this = _opensim.new_TrueType()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_TrueType
    __del__ = lambda self : None;
TrueType_swigregister = _opensim.TrueType_swigregister
TrueType_swigregister(TrueType)

class ArrayIndexUnsigned(_object):
    """Proxy of C++ SimTK::ArrayIndexTraits<(unsigned int)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayIndexUnsigned, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayIndexUnsigned, name)
    __repr__ = _swig_repr
    def max_size():
        """max_size() -> SimTK::ArrayIndexTraits< unsigned int >::size_type"""
        return _opensim.ArrayIndexUnsigned_max_size()

    if _newclass:max_size = staticmethod(max_size)
    __swig_getmethods__["max_size"] = lambda x: max_size
    def __init__(self): 
        """__init__(SimTK::ArrayIndexTraits<(unsigned int)> self) -> ArrayIndexUnsigned"""
        this = _opensim.new_ArrayIndexUnsigned()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ArrayIndexUnsigned
    __del__ = lambda self : None;
ArrayIndexUnsigned_swigregister = _opensim.ArrayIndexUnsigned_swigregister
ArrayIndexUnsigned_swigregister(ArrayIndexUnsigned)

def ArrayIndexUnsigned_max_size():
  """ArrayIndexUnsigned_max_size() -> SimTK::ArrayIndexTraits< unsigned int >::size_type"""
  return _opensim.ArrayIndexUnsigned_max_size()

class ArrayIndexInt(_object):
    """Proxy of C++ SimTK::ArrayIndexTraits<(int)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayIndexInt, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayIndexInt, name)
    __repr__ = _swig_repr
    def max_size():
        """max_size() -> SimTK::ArrayIndexTraits< int >::size_type"""
        return _opensim.ArrayIndexInt_max_size()

    if _newclass:max_size = staticmethod(max_size)
    __swig_getmethods__["max_size"] = lambda x: max_size
    def __init__(self): 
        """__init__(SimTK::ArrayIndexTraits<(int)> self) -> ArrayIndexInt"""
        this = _opensim.new_ArrayIndexInt()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ArrayIndexInt
    __del__ = lambda self : None;
ArrayIndexInt_swigregister = _opensim.ArrayIndexInt_swigregister
ArrayIndexInt_swigregister(ArrayIndexInt)

def ArrayIndexInt_max_size():
  """ArrayIndexInt_max_size() -> SimTK::ArrayIndexTraits< int >::size_type"""
  return _opensim.ArrayIndexInt_max_size()

class DecorativeGeometry(_object):
    """Proxy of C++ SimTK::DecorativeGeometry class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, DecorativeGeometry, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, DecorativeGeometry, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_DecorativeGeometry
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(SimTK::DecorativeGeometry self) -> DecorativeGeometry
        __init__(SimTK::DecorativeGeometry self, DecorativeGeometry source) -> DecorativeGeometry

        Parameters:
            source: SimTK::DecorativeGeometry const &

        """
        this = _opensim.new_DecorativeGeometry(*args)
        try: self.this.append(this)
        except: self.this = this
    DrawPoints = _opensim.DecorativeGeometry_DrawPoints
    DrawWireframe = _opensim.DecorativeGeometry_DrawWireframe
    DrawSurface = _opensim.DecorativeGeometry_DrawSurface
    DrawDefault = _opensim.DecorativeGeometry_DrawDefault
    def setBodyId(self, *args):
        """
        setBodyId(DecorativeGeometry self, int bodyId) -> DecorativeGeometry

        Parameters:
            bodyId: int

        """
        return _opensim.DecorativeGeometry_setBodyId(self, *args)

    def setTransform(self, *args):
        """
        setTransform(DecorativeGeometry self, Transform X_BG) -> DecorativeGeometry

        Parameters:
            X_BG: SimTK::Transform const &

        """
        return _opensim.DecorativeGeometry_setTransform(self, *args)

    def setResolution(self, *args):
        """
        setResolution(DecorativeGeometry self, SimTK::Real arg2) -> DecorativeGeometry

        Parameters:
            arg2: SimTK::Real

        """
        return _opensim.DecorativeGeometry_setResolution(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(DecorativeGeometry self, Vec3 scale) -> DecorativeGeometry

        Parameters:
            scale: SimTK::Vec3 const &

        """
        return _opensim.DecorativeGeometry_setScaleFactors(self, *args)

    def setScale(self, *args):
        """
        setScale(DecorativeGeometry self, SimTK::Real scale) -> DecorativeGeometry

        Parameters:
            scale: SimTK::Real

        """
        return _opensim.DecorativeGeometry_setScale(self, *args)

    def getBodyId(self):
        """
        getBodyId(DecorativeGeometry self) -> int

        Parameters:
            self: SimTK::DecorativeGeometry const *

        """
        return _opensim.DecorativeGeometry_getBodyId(self)

    def getResolution(self):
        """
        getResolution(DecorativeGeometry self) -> SimTK::Real

        Parameters:
            self: SimTK::DecorativeGeometry const *

        """
        return _opensim.DecorativeGeometry_getResolution(self)

    def getTransform(self):
        """
        getTransform(DecorativeGeometry self) -> Transform

        Parameters:
            self: SimTK::DecorativeGeometry const *

        """
        return _opensim.DecorativeGeometry_getTransform(self)

    def getScaleFactors(self):
        """
        getScaleFactors(DecorativeGeometry self) -> Vec3

        Parameters:
            self: SimTK::DecorativeGeometry const *

        """
        return _opensim.DecorativeGeometry_getScaleFactors(self)

    def setColor(self, *args):
        """
        setColor(DecorativeGeometry self, Vec3 rgb) -> DecorativeGeometry

        Parameters:
            rgb: SimTK::Vec3 const &

        """
        return _opensim.DecorativeGeometry_setColor(self, *args)

    def setOpacity(self, *args):
        """
        setOpacity(DecorativeGeometry self, SimTK::Real arg2) -> DecorativeGeometry

        Parameters:
            arg2: SimTK::Real

        """
        return _opensim.DecorativeGeometry_setOpacity(self, *args)

    def setLineThickness(self, *args):
        """
        setLineThickness(DecorativeGeometry self, SimTK::Real arg2) -> DecorativeGeometry

        Parameters:
            arg2: SimTK::Real

        """
        return _opensim.DecorativeGeometry_setLineThickness(self, *args)

    def getColor(self):
        """
        getColor(DecorativeGeometry self) -> Vec3

        Parameters:
            self: SimTK::DecorativeGeometry const *

        """
        return _opensim.DecorativeGeometry_getColor(self)

    def getOpacity(self):
        """
        getOpacity(DecorativeGeometry self) -> SimTK::Real

        Parameters:
            self: SimTK::DecorativeGeometry const *

        """
        return _opensim.DecorativeGeometry_getOpacity(self)

    def getLineThickness(self):
        """
        getLineThickness(DecorativeGeometry self) -> SimTK::Real

        Parameters:
            self: SimTK::DecorativeGeometry const *

        """
        return _opensim.DecorativeGeometry_getLineThickness(self)

    def setFaceCamera(self, *args):
        """
        setFaceCamera(DecorativeGeometry self, int shouldFace) -> DecorativeGeometry

        Parameters:
            shouldFace: int

        """
        return _opensim.DecorativeGeometry_setFaceCamera(self, *args)

    def getFaceCamera(self):
        """
        getFaceCamera(DecorativeGeometry self) -> int

        Parameters:
            self: SimTK::DecorativeGeometry const *

        """
        return _opensim.DecorativeGeometry_getFaceCamera(self)

    def setRepresentation(self, *args):
        """
        setRepresentation(DecorativeGeometry self, SimTK::DecorativeGeometry::Representation const & arg2) -> DecorativeGeometry

        Parameters:
            arg2: SimTK::DecorativeGeometry::Representation const &

        """
        return _opensim.DecorativeGeometry_setRepresentation(self, *args)

    def getRepresentation(self):
        """
        getRepresentation(DecorativeGeometry self) -> SimTK::DecorativeGeometry::Representation

        Parameters:
            self: SimTK::DecorativeGeometry const *

        """
        return _opensim.DecorativeGeometry_getRepresentation(self)

    def implementGeometry(self, *args):
        """
        implementGeometry(DecorativeGeometry self, DecorativeGeometryImplementation arg2)

        Parameters:
            arg2: SimTK::DecorativeGeometryImplementation &

        """
        return _opensim.DecorativeGeometry_implementGeometry(self, *args)

DecorativeGeometry_swigregister = _opensim.DecorativeGeometry_swigregister
DecorativeGeometry_swigregister(DecorativeGeometry)
Black = cvar.Black
Gray = cvar.Gray
Red = cvar.Red
Green = cvar.Green
Blue = cvar.Blue
Yellow = cvar.Yellow
Orange = cvar.Orange
Magenta = cvar.Magenta
Purple = cvar.Purple
Cyan = cvar.Cyan
White = cvar.White

class DecorativePoint(DecorativeGeometry):
    """Proxy of C++ SimTK::DecorativePoint class"""
    __swig_setmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, DecorativePoint, name, value)
    __swig_getmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, DecorativePoint, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::DecorativePoint self, Vec3 p=SimTK::Vec3(0)) -> DecorativePoint

        Parameters:
            p: SimTK::Vec3 const &

        __init__(SimTK::DecorativePoint self) -> DecorativePoint
        """
        this = _opensim.new_DecorativePoint(*args)
        try: self.this.append(this)
        except: self.this = this
    def setPoint(self, *args):
        """
        setPoint(DecorativePoint self, Vec3 p) -> DecorativePoint

        Parameters:
            p: SimTK::Vec3 const &

        """
        return _opensim.DecorativePoint_setPoint(self, *args)

    def getPoint(self):
        """
        getPoint(DecorativePoint self) -> Vec3

        Parameters:
            self: SimTK::DecorativePoint const *

        """
        return _opensim.DecorativePoint_getPoint(self)

    def setBodyId(self, *args):
        """
        setBodyId(DecorativePoint self, int b) -> DecorativePoint

        Parameters:
            b: int

        """
        return _opensim.DecorativePoint_setBodyId(self, *args)

    def setTransform(self, *args):
        """
        setTransform(DecorativePoint self, Transform X_BD) -> DecorativePoint

        Parameters:
            X_BD: SimTK::Transform const &

        """
        return _opensim.DecorativePoint_setTransform(self, *args)

    def setResolution(self, *args):
        """
        setResolution(DecorativePoint self, SimTK::Real r) -> DecorativePoint

        Parameters:
            r: SimTK::Real

        """
        return _opensim.DecorativePoint_setResolution(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(DecorativePoint self, Vec3 s) -> DecorativePoint

        Parameters:
            s: SimTK::Vec3 const &

        """
        return _opensim.DecorativePoint_setScaleFactors(self, *args)

    def setColor(self, *args):
        """
        setColor(DecorativePoint self, Vec3 rgb) -> DecorativePoint

        Parameters:
            rgb: SimTK::Vec3 const &

        """
        return _opensim.DecorativePoint_setColor(self, *args)

    def setOpacity(self, *args):
        """
        setOpacity(DecorativePoint self, SimTK::Real o) -> DecorativePoint

        Parameters:
            o: SimTK::Real

        """
        return _opensim.DecorativePoint_setOpacity(self, *args)

    def setLineThickness(self, *args):
        """
        setLineThickness(DecorativePoint self, SimTK::Real t) -> DecorativePoint

        Parameters:
            t: SimTK::Real

        """
        return _opensim.DecorativePoint_setLineThickness(self, *args)

    def setRepresentation(self, *args):
        """
        setRepresentation(DecorativePoint self, SimTK::DecorativeGeometry::Representation const & r) -> DecorativePoint

        Parameters:
            r: SimTK::DecorativeGeometry::Representation const &

        """
        return _opensim.DecorativePoint_setRepresentation(self, *args)

    __swig_destroy__ = _opensim.delete_DecorativePoint
    __del__ = lambda self : None;
DecorativePoint_swigregister = _opensim.DecorativePoint_swigregister
DecorativePoint_swigregister(DecorativePoint)

class DecorativeLine(DecorativeGeometry):
    """Proxy of C++ SimTK::DecorativeLine class"""
    __swig_setmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, DecorativeLine, name, value)
    __swig_getmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, DecorativeLine, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::DecorativeLine self, Vec3 p1=SimTK::Vec3(0), Vec3 p2=SimTK::Vec3(1)) -> DecorativeLine

        Parameters:
            p1: SimTK::Vec3 const &
            p2: SimTK::Vec3 const &

        __init__(SimTK::DecorativeLine self, Vec3 p1=SimTK::Vec3(0)) -> DecorativeLine

        Parameters:
            p1: SimTK::Vec3 const &

        __init__(SimTK::DecorativeLine self) -> DecorativeLine
        """
        this = _opensim.new_DecorativeLine(*args)
        try: self.this.append(this)
        except: self.this = this
    def setPoint1(self, *args):
        """
        setPoint1(DecorativeLine self, Vec3 p1) -> DecorativeLine

        Parameters:
            p1: SimTK::Vec3 const &

        """
        return _opensim.DecorativeLine_setPoint1(self, *args)

    def setPoint2(self, *args):
        """
        setPoint2(DecorativeLine self, Vec3 p2) -> DecorativeLine

        Parameters:
            p2: SimTK::Vec3 const &

        """
        return _opensim.DecorativeLine_setPoint2(self, *args)

    def setEndpoints(self, *args):
        """
        setEndpoints(DecorativeLine self, Vec3 p1, Vec3 p2) -> DecorativeLine

        Parameters:
            p1: SimTK::Vec3 const &
            p2: SimTK::Vec3 const &

        """
        return _opensim.DecorativeLine_setEndpoints(self, *args)

    def setBodyId(self, *args):
        """
        setBodyId(DecorativeLine self, int b) -> DecorativeLine

        Parameters:
            b: int

        """
        return _opensim.DecorativeLine_setBodyId(self, *args)

    def setTransform(self, *args):
        """
        setTransform(DecorativeLine self, Transform X_BD) -> DecorativeLine

        Parameters:
            X_BD: SimTK::Transform const &

        """
        return _opensim.DecorativeLine_setTransform(self, *args)

    def setResolution(self, *args):
        """
        setResolution(DecorativeLine self, SimTK::Real r) -> DecorativeLine

        Parameters:
            r: SimTK::Real

        """
        return _opensim.DecorativeLine_setResolution(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(DecorativeLine self, Vec3 s) -> DecorativeLine

        Parameters:
            s: SimTK::Vec3 const &

        """
        return _opensim.DecorativeLine_setScaleFactors(self, *args)

    def setColor(self, *args):
        """
        setColor(DecorativeLine self, Vec3 rgb) -> DecorativeLine

        Parameters:
            rgb: SimTK::Vec3 const &

        """
        return _opensim.DecorativeLine_setColor(self, *args)

    def setOpacity(self, *args):
        """
        setOpacity(DecorativeLine self, SimTK::Real o) -> DecorativeLine

        Parameters:
            o: SimTK::Real

        """
        return _opensim.DecorativeLine_setOpacity(self, *args)

    def setLineThickness(self, *args):
        """
        setLineThickness(DecorativeLine self, SimTK::Real t) -> DecorativeLine

        Parameters:
            t: SimTK::Real

        """
        return _opensim.DecorativeLine_setLineThickness(self, *args)

    def setRepresentation(self, *args):
        """
        setRepresentation(DecorativeLine self, SimTK::DecorativeGeometry::Representation const & r) -> DecorativeLine

        Parameters:
            r: SimTK::DecorativeGeometry::Representation const &

        """
        return _opensim.DecorativeLine_setRepresentation(self, *args)

    def getPoint1(self):
        """
        getPoint1(DecorativeLine self) -> Vec3

        Parameters:
            self: SimTK::DecorativeLine const *

        """
        return _opensim.DecorativeLine_getPoint1(self)

    def getPoint2(self):
        """
        getPoint2(DecorativeLine self) -> Vec3

        Parameters:
            self: SimTK::DecorativeLine const *

        """
        return _opensim.DecorativeLine_getPoint2(self)

    def isInstanceOf(*args):
        """
        isInstanceOf(DecorativeGeometry arg1) -> bool

        Parameters:
            arg1: SimTK::DecorativeGeometry const &

        """
        return _opensim.DecorativeLine_isInstanceOf(*args)

    if _newclass:isInstanceOf = staticmethod(isInstanceOf)
    __swig_getmethods__["isInstanceOf"] = lambda x: isInstanceOf
    def downcast(*args):
        """
        downcast(DecorativeGeometry arg1) -> DecorativeLine

        Parameters:
            arg1: SimTK::DecorativeGeometry const &

        """
        return _opensim.DecorativeLine_downcast(*args)

    if _newclass:downcast = staticmethod(downcast)
    __swig_getmethods__["downcast"] = lambda x: downcast
    def updDowncast(*args):
        """
        updDowncast(DecorativeGeometry arg1) -> DecorativeLine

        Parameters:
            arg1: SimTK::DecorativeGeometry &

        """
        return _opensim.DecorativeLine_updDowncast(*args)

    if _newclass:updDowncast = staticmethod(updDowncast)
    __swig_getmethods__["updDowncast"] = lambda x: updDowncast
    __swig_destroy__ = _opensim.delete_DecorativeLine
    __del__ = lambda self : None;
DecorativeLine_swigregister = _opensim.DecorativeLine_swigregister
DecorativeLine_swigregister(DecorativeLine)

def DecorativeLine_isInstanceOf(*args):
  """
    DecorativeLine_isInstanceOf(DecorativeGeometry arg1) -> bool

    Parameters:
        arg1: SimTK::DecorativeGeometry const &

    """
  return _opensim.DecorativeLine_isInstanceOf(*args)

def DecorativeLine_downcast(*args):
  """
    DecorativeLine_downcast(DecorativeGeometry arg1) -> DecorativeLine

    Parameters:
        arg1: SimTK::DecorativeGeometry const &

    """
  return _opensim.DecorativeLine_downcast(*args)

def DecorativeLine_updDowncast(*args):
  """
    DecorativeLine_updDowncast(DecorativeGeometry arg1) -> DecorativeLine

    Parameters:
        arg1: SimTK::DecorativeGeometry &

    """
  return _opensim.DecorativeLine_updDowncast(*args)

class DecorativeCircle(DecorativeGeometry):
    """Proxy of C++ SimTK::DecorativeCircle class"""
    __swig_setmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, DecorativeCircle, name, value)
    __swig_getmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, DecorativeCircle, name)
    __repr__ = _swig_repr
    def __init__(self, radius=0.5): 
        """
        __init__(SimTK::DecorativeCircle self, SimTK::Real radius=0.5) -> DecorativeCircle

        Parameters:
            radius: SimTK::Real

        __init__(SimTK::DecorativeCircle self) -> DecorativeCircle
        """
        this = _opensim.new_DecorativeCircle(radius)
        try: self.this.append(this)
        except: self.this = this
    def setRadius(self, *args):
        """
        setRadius(DecorativeCircle self, SimTK::Real arg2) -> DecorativeCircle

        Parameters:
            arg2: SimTK::Real

        """
        return _opensim.DecorativeCircle_setRadius(self, *args)

    def getRadius(self):
        """
        getRadius(DecorativeCircle self) -> SimTK::Real

        Parameters:
            self: SimTK::DecorativeCircle const *

        """
        return _opensim.DecorativeCircle_getRadius(self)

    def setBodyId(self, *args):
        """
        setBodyId(DecorativeCircle self, int b) -> DecorativeCircle

        Parameters:
            b: int

        """
        return _opensim.DecorativeCircle_setBodyId(self, *args)

    def setTransform(self, *args):
        """
        setTransform(DecorativeCircle self, Transform X_BD) -> DecorativeCircle

        Parameters:
            X_BD: SimTK::Transform const &

        """
        return _opensim.DecorativeCircle_setTransform(self, *args)

    def setResolution(self, *args):
        """
        setResolution(DecorativeCircle self, SimTK::Real r) -> DecorativeCircle

        Parameters:
            r: SimTK::Real

        """
        return _opensim.DecorativeCircle_setResolution(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(DecorativeCircle self, Vec3 s) -> DecorativeCircle

        Parameters:
            s: SimTK::Vec3 const &

        """
        return _opensim.DecorativeCircle_setScaleFactors(self, *args)

    def setColor(self, *args):
        """
        setColor(DecorativeCircle self, Vec3 rgb) -> DecorativeCircle

        Parameters:
            rgb: SimTK::Vec3 const &

        """
        return _opensim.DecorativeCircle_setColor(self, *args)

    def setOpacity(self, *args):
        """
        setOpacity(DecorativeCircle self, SimTK::Real o) -> DecorativeCircle

        Parameters:
            o: SimTK::Real

        """
        return _opensim.DecorativeCircle_setOpacity(self, *args)

    def setLineThickness(self, *args):
        """
        setLineThickness(DecorativeCircle self, SimTK::Real t) -> DecorativeCircle

        Parameters:
            t: SimTK::Real

        """
        return _opensim.DecorativeCircle_setLineThickness(self, *args)

    def setRepresentation(self, *args):
        """
        setRepresentation(DecorativeCircle self, SimTK::DecorativeGeometry::Representation const & r) -> DecorativeCircle

        Parameters:
            r: SimTK::DecorativeGeometry::Representation const &

        """
        return _opensim.DecorativeCircle_setRepresentation(self, *args)

    __swig_destroy__ = _opensim.delete_DecorativeCircle
    __del__ = lambda self : None;
DecorativeCircle_swigregister = _opensim.DecorativeCircle_swigregister
DecorativeCircle_swigregister(DecorativeCircle)

class DecorativeSphere(DecorativeGeometry):
    """Proxy of C++ SimTK::DecorativeSphere class"""
    __swig_setmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, DecorativeSphere, name, value)
    __swig_getmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, DecorativeSphere, name)
    __repr__ = _swig_repr
    def __init__(self, radius=0.5): 
        """
        __init__(SimTK::DecorativeSphere self, SimTK::Real radius=0.5) -> DecorativeSphere

        Parameters:
            radius: SimTK::Real

        __init__(SimTK::DecorativeSphere self) -> DecorativeSphere
        """
        this = _opensim.new_DecorativeSphere(radius)
        try: self.this.append(this)
        except: self.this = this
    def setRadius(self, *args):
        """
        setRadius(DecorativeSphere self, SimTK::Real arg2) -> DecorativeSphere

        Parameters:
            arg2: SimTK::Real

        """
        return _opensim.DecorativeSphere_setRadius(self, *args)

    def getRadius(self):
        """
        getRadius(DecorativeSphere self) -> SimTK::Real

        Parameters:
            self: SimTK::DecorativeSphere const *

        """
        return _opensim.DecorativeSphere_getRadius(self)

    def setBodyId(self, *args):
        """
        setBodyId(DecorativeSphere self, int b) -> DecorativeSphere

        Parameters:
            b: int

        """
        return _opensim.DecorativeSphere_setBodyId(self, *args)

    def setTransform(self, *args):
        """
        setTransform(DecorativeSphere self, Transform X_BD) -> DecorativeSphere

        Parameters:
            X_BD: SimTK::Transform const &

        """
        return _opensim.DecorativeSphere_setTransform(self, *args)

    def setResolution(self, *args):
        """
        setResolution(DecorativeSphere self, SimTK::Real r) -> DecorativeSphere

        Parameters:
            r: SimTK::Real

        """
        return _opensim.DecorativeSphere_setResolution(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(DecorativeSphere self, Vec3 s) -> DecorativeSphere

        Parameters:
            s: SimTK::Vec3 const &

        """
        return _opensim.DecorativeSphere_setScaleFactors(self, *args)

    def setColor(self, *args):
        """
        setColor(DecorativeSphere self, Vec3 rgb) -> DecorativeSphere

        Parameters:
            rgb: SimTK::Vec3 const &

        """
        return _opensim.DecorativeSphere_setColor(self, *args)

    def setOpacity(self, *args):
        """
        setOpacity(DecorativeSphere self, SimTK::Real o) -> DecorativeSphere

        Parameters:
            o: SimTK::Real

        """
        return _opensim.DecorativeSphere_setOpacity(self, *args)

    def setLineThickness(self, *args):
        """
        setLineThickness(DecorativeSphere self, SimTK::Real t) -> DecorativeSphere

        Parameters:
            t: SimTK::Real

        """
        return _opensim.DecorativeSphere_setLineThickness(self, *args)

    def setRepresentation(self, *args):
        """
        setRepresentation(DecorativeSphere self, SimTK::DecorativeGeometry::Representation const & r) -> DecorativeSphere

        Parameters:
            r: SimTK::DecorativeGeometry::Representation const &

        """
        return _opensim.DecorativeSphere_setRepresentation(self, *args)

    __swig_destroy__ = _opensim.delete_DecorativeSphere
    __del__ = lambda self : None;
DecorativeSphere_swigregister = _opensim.DecorativeSphere_swigregister
DecorativeSphere_swigregister(DecorativeSphere)

class DecorativeEllipsoid(DecorativeGeometry):
    """Proxy of C++ SimTK::DecorativeEllipsoid class"""
    __swig_setmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, DecorativeEllipsoid, name, value)
    __swig_getmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, DecorativeEllipsoid, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::DecorativeEllipsoid self, Vec3 radii=SimTK::Vec3(Real(0.5),Real(1/3.),Real(0.25))) -> DecorativeEllipsoid

        Parameters:
            radii: SimTK::Vec3 const &

        __init__(SimTK::DecorativeEllipsoid self) -> DecorativeEllipsoid
        """
        this = _opensim.new_DecorativeEllipsoid(*args)
        try: self.this.append(this)
        except: self.this = this
    def setRadii(self, *args):
        """
        setRadii(DecorativeEllipsoid self, Vec3 arg2) -> DecorativeEllipsoid

        Parameters:
            arg2: SimTK::Vec3 const &

        """
        return _opensim.DecorativeEllipsoid_setRadii(self, *args)

    def getRadii(self):
        """
        getRadii(DecorativeEllipsoid self) -> Vec3

        Parameters:
            self: SimTK::DecorativeEllipsoid const *

        """
        return _opensim.DecorativeEllipsoid_getRadii(self)

    def setBodyId(self, *args):
        """
        setBodyId(DecorativeEllipsoid self, int b) -> DecorativeEllipsoid

        Parameters:
            b: int

        """
        return _opensim.DecorativeEllipsoid_setBodyId(self, *args)

    def setTransform(self, *args):
        """
        setTransform(DecorativeEllipsoid self, Transform X_BD) -> DecorativeEllipsoid

        Parameters:
            X_BD: SimTK::Transform const &

        """
        return _opensim.DecorativeEllipsoid_setTransform(self, *args)

    def setResolution(self, *args):
        """
        setResolution(DecorativeEllipsoid self, SimTK::Real r) -> DecorativeEllipsoid

        Parameters:
            r: SimTK::Real

        """
        return _opensim.DecorativeEllipsoid_setResolution(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(DecorativeEllipsoid self, Vec3 s) -> DecorativeEllipsoid

        Parameters:
            s: SimTK::Vec3 const &

        """
        return _opensim.DecorativeEllipsoid_setScaleFactors(self, *args)

    def setColor(self, *args):
        """
        setColor(DecorativeEllipsoid self, Vec3 rgb) -> DecorativeEllipsoid

        Parameters:
            rgb: SimTK::Vec3 const &

        """
        return _opensim.DecorativeEllipsoid_setColor(self, *args)

    def setOpacity(self, *args):
        """
        setOpacity(DecorativeEllipsoid self, SimTK::Real o) -> DecorativeEllipsoid

        Parameters:
            o: SimTK::Real

        """
        return _opensim.DecorativeEllipsoid_setOpacity(self, *args)

    def setLineThickness(self, *args):
        """
        setLineThickness(DecorativeEllipsoid self, SimTK::Real t) -> DecorativeEllipsoid

        Parameters:
            t: SimTK::Real

        """
        return _opensim.DecorativeEllipsoid_setLineThickness(self, *args)

    def setRepresentation(self, *args):
        """
        setRepresentation(DecorativeEllipsoid self, SimTK::DecorativeGeometry::Representation const & r) -> DecorativeEllipsoid

        Parameters:
            r: SimTK::DecorativeGeometry::Representation const &

        """
        return _opensim.DecorativeEllipsoid_setRepresentation(self, *args)

    __swig_destroy__ = _opensim.delete_DecorativeEllipsoid
    __del__ = lambda self : None;
DecorativeEllipsoid_swigregister = _opensim.DecorativeEllipsoid_swigregister
DecorativeEllipsoid_swigregister(DecorativeEllipsoid)

class DecorativeBrick(DecorativeGeometry):
    """Proxy of C++ SimTK::DecorativeBrick class"""
    __swig_setmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, DecorativeBrick, name, value)
    __swig_getmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, DecorativeBrick, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::DecorativeBrick self, Vec3 halfLengths=SimTK::Vec3(Real(0.5))) -> DecorativeBrick

        Parameters:
            halfLengths: SimTK::Vec3 const &

        __init__(SimTK::DecorativeBrick self) -> DecorativeBrick
        """
        this = _opensim.new_DecorativeBrick(*args)
        try: self.this.append(this)
        except: self.this = this
    def setHalfLengths(self, *args):
        """
        setHalfLengths(DecorativeBrick self, Vec3 arg2) -> DecorativeBrick

        Parameters:
            arg2: SimTK::Vec3 const &

        """
        return _opensim.DecorativeBrick_setHalfLengths(self, *args)

    def getHalfLengths(self):
        """
        getHalfLengths(DecorativeBrick self) -> Vec3

        Parameters:
            self: SimTK::DecorativeBrick const *

        """
        return _opensim.DecorativeBrick_getHalfLengths(self)

    def setBodyId(self, *args):
        """
        setBodyId(DecorativeBrick self, int b) -> DecorativeBrick

        Parameters:
            b: int

        """
        return _opensim.DecorativeBrick_setBodyId(self, *args)

    def setTransform(self, *args):
        """
        setTransform(DecorativeBrick self, Transform X_BD) -> DecorativeBrick

        Parameters:
            X_BD: SimTK::Transform const &

        """
        return _opensim.DecorativeBrick_setTransform(self, *args)

    def setResolution(self, *args):
        """
        setResolution(DecorativeBrick self, SimTK::Real r) -> DecorativeBrick

        Parameters:
            r: SimTK::Real

        """
        return _opensim.DecorativeBrick_setResolution(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(DecorativeBrick self, Vec3 s) -> DecorativeBrick

        Parameters:
            s: SimTK::Vec3 const &

        """
        return _opensim.DecorativeBrick_setScaleFactors(self, *args)

    def setColor(self, *args):
        """
        setColor(DecorativeBrick self, Vec3 rgb) -> DecorativeBrick

        Parameters:
            rgb: SimTK::Vec3 const &

        """
        return _opensim.DecorativeBrick_setColor(self, *args)

    def setOpacity(self, *args):
        """
        setOpacity(DecorativeBrick self, SimTK::Real o) -> DecorativeBrick

        Parameters:
            o: SimTK::Real

        """
        return _opensim.DecorativeBrick_setOpacity(self, *args)

    def setLineThickness(self, *args):
        """
        setLineThickness(DecorativeBrick self, SimTK::Real t) -> DecorativeBrick

        Parameters:
            t: SimTK::Real

        """
        return _opensim.DecorativeBrick_setLineThickness(self, *args)

    def setRepresentation(self, *args):
        """
        setRepresentation(DecorativeBrick self, SimTK::DecorativeGeometry::Representation const & r) -> DecorativeBrick

        Parameters:
            r: SimTK::DecorativeGeometry::Representation const &

        """
        return _opensim.DecorativeBrick_setRepresentation(self, *args)

    __swig_destroy__ = _opensim.delete_DecorativeBrick
    __del__ = lambda self : None;
DecorativeBrick_swigregister = _opensim.DecorativeBrick_swigregister
DecorativeBrick_swigregister(DecorativeBrick)

class DecorativeCylinder(DecorativeGeometry):
    """Proxy of C++ SimTK::DecorativeCylinder class"""
    __swig_setmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, DecorativeCylinder, name, value)
    __swig_getmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, DecorativeCylinder, name)
    __repr__ = _swig_repr
    def __init__(self, radius=0.5, halfHeight=0.5): 
        """
        __init__(SimTK::DecorativeCylinder self, SimTK::Real radius=0.5, SimTK::Real halfHeight=0.5) -> DecorativeCylinder

        Parameters:
            radius: SimTK::Real
            halfHeight: SimTK::Real

        __init__(SimTK::DecorativeCylinder self, SimTK::Real radius=0.5) -> DecorativeCylinder

        Parameters:
            radius: SimTK::Real

        __init__(SimTK::DecorativeCylinder self) -> DecorativeCylinder
        """
        this = _opensim.new_DecorativeCylinder(radius, halfHeight)
        try: self.this.append(this)
        except: self.this = this
    def setRadius(self, *args):
        """
        setRadius(DecorativeCylinder self, SimTK::Real arg2) -> DecorativeCylinder

        Parameters:
            arg2: SimTK::Real

        """
        return _opensim.DecorativeCylinder_setRadius(self, *args)

    def setHalfHeight(self, *args):
        """
        setHalfHeight(DecorativeCylinder self, SimTK::Real arg2) -> DecorativeCylinder

        Parameters:
            arg2: SimTK::Real

        """
        return _opensim.DecorativeCylinder_setHalfHeight(self, *args)

    def getRadius(self):
        """
        getRadius(DecorativeCylinder self) -> SimTK::Real

        Parameters:
            self: SimTK::DecorativeCylinder const *

        """
        return _opensim.DecorativeCylinder_getRadius(self)

    def getHalfHeight(self):
        """
        getHalfHeight(DecorativeCylinder self) -> SimTK::Real

        Parameters:
            self: SimTK::DecorativeCylinder const *

        """
        return _opensim.DecorativeCylinder_getHalfHeight(self)

    def setBodyId(self, *args):
        """
        setBodyId(DecorativeCylinder self, int b) -> DecorativeCylinder

        Parameters:
            b: int

        """
        return _opensim.DecorativeCylinder_setBodyId(self, *args)

    def setTransform(self, *args):
        """
        setTransform(DecorativeCylinder self, Transform X_BD) -> DecorativeCylinder

        Parameters:
            X_BD: SimTK::Transform const &

        """
        return _opensim.DecorativeCylinder_setTransform(self, *args)

    def setResolution(self, *args):
        """
        setResolution(DecorativeCylinder self, SimTK::Real r) -> DecorativeCylinder

        Parameters:
            r: SimTK::Real

        """
        return _opensim.DecorativeCylinder_setResolution(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(DecorativeCylinder self, Vec3 s) -> DecorativeCylinder

        Parameters:
            s: SimTK::Vec3 const &

        """
        return _opensim.DecorativeCylinder_setScaleFactors(self, *args)

    def setColor(self, *args):
        """
        setColor(DecorativeCylinder self, Vec3 rgb) -> DecorativeCylinder

        Parameters:
            rgb: SimTK::Vec3 const &

        """
        return _opensim.DecorativeCylinder_setColor(self, *args)

    def setOpacity(self, *args):
        """
        setOpacity(DecorativeCylinder self, SimTK::Real o) -> DecorativeCylinder

        Parameters:
            o: SimTK::Real

        """
        return _opensim.DecorativeCylinder_setOpacity(self, *args)

    def setLineThickness(self, *args):
        """
        setLineThickness(DecorativeCylinder self, SimTK::Real t) -> DecorativeCylinder

        Parameters:
            t: SimTK::Real

        """
        return _opensim.DecorativeCylinder_setLineThickness(self, *args)

    def setRepresentation(self, *args):
        """
        setRepresentation(DecorativeCylinder self, SimTK::DecorativeGeometry::Representation const & r) -> DecorativeCylinder

        Parameters:
            r: SimTK::DecorativeGeometry::Representation const &

        """
        return _opensim.DecorativeCylinder_setRepresentation(self, *args)

    __swig_destroy__ = _opensim.delete_DecorativeCylinder
    __del__ = lambda self : None;
DecorativeCylinder_swigregister = _opensim.DecorativeCylinder_swigregister
DecorativeCylinder_swigregister(DecorativeCylinder)

class DecorativeFrame(DecorativeGeometry):
    """Proxy of C++ SimTK::DecorativeFrame class"""
    __swig_setmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, DecorativeFrame, name, value)
    __swig_getmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, DecorativeFrame, name)
    __repr__ = _swig_repr
    def __init__(self, axisLength=1): 
        """
        __init__(SimTK::DecorativeFrame self, SimTK::Real axisLength=1) -> DecorativeFrame

        Parameters:
            axisLength: SimTK::Real

        __init__(SimTK::DecorativeFrame self) -> DecorativeFrame
        """
        this = _opensim.new_DecorativeFrame(axisLength)
        try: self.this.append(this)
        except: self.this = this
    def setAxisLength(self, *args):
        """
        setAxisLength(DecorativeFrame self, SimTK::Real arg2) -> DecorativeFrame

        Parameters:
            arg2: SimTK::Real

        """
        return _opensim.DecorativeFrame_setAxisLength(self, *args)

    def getAxisLength(self):
        """
        getAxisLength(DecorativeFrame self) -> SimTK::Real

        Parameters:
            self: SimTK::DecorativeFrame const *

        """
        return _opensim.DecorativeFrame_getAxisLength(self)

    def setBodyId(self, *args):
        """
        setBodyId(DecorativeFrame self, int b) -> DecorativeFrame

        Parameters:
            b: int

        """
        return _opensim.DecorativeFrame_setBodyId(self, *args)

    def setTransform(self, *args):
        """
        setTransform(DecorativeFrame self, Transform X_BD) -> DecorativeFrame

        Parameters:
            X_BD: SimTK::Transform const &

        """
        return _opensim.DecorativeFrame_setTransform(self, *args)

    def setResolution(self, *args):
        """
        setResolution(DecorativeFrame self, SimTK::Real r) -> DecorativeFrame

        Parameters:
            r: SimTK::Real

        """
        return _opensim.DecorativeFrame_setResolution(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(DecorativeFrame self, Vec3 s) -> DecorativeFrame

        Parameters:
            s: SimTK::Vec3 const &

        """
        return _opensim.DecorativeFrame_setScaleFactors(self, *args)

    def setColor(self, *args):
        """
        setColor(DecorativeFrame self, Vec3 rgb) -> DecorativeFrame

        Parameters:
            rgb: SimTK::Vec3 const &

        """
        return _opensim.DecorativeFrame_setColor(self, *args)

    def setOpacity(self, *args):
        """
        setOpacity(DecorativeFrame self, SimTK::Real o) -> DecorativeFrame

        Parameters:
            o: SimTK::Real

        """
        return _opensim.DecorativeFrame_setOpacity(self, *args)

    def setLineThickness(self, *args):
        """
        setLineThickness(DecorativeFrame self, SimTK::Real t) -> DecorativeFrame

        Parameters:
            t: SimTK::Real

        """
        return _opensim.DecorativeFrame_setLineThickness(self, *args)

    def setRepresentation(self, *args):
        """
        setRepresentation(DecorativeFrame self, SimTK::DecorativeGeometry::Representation const & r) -> DecorativeFrame

        Parameters:
            r: SimTK::DecorativeGeometry::Representation const &

        """
        return _opensim.DecorativeFrame_setRepresentation(self, *args)

    __swig_destroy__ = _opensim.delete_DecorativeFrame
    __del__ = lambda self : None;
DecorativeFrame_swigregister = _opensim.DecorativeFrame_swigregister
DecorativeFrame_swigregister(DecorativeFrame)

class DecorativeText(DecorativeGeometry):
    """Proxy of C++ SimTK::DecorativeText class"""
    __swig_setmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, DecorativeText, name, value)
    __swig_getmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, DecorativeText, name)
    __repr__ = _swig_repr
    def __init__(self, label=""): 
        """
        __init__(SimTK::DecorativeText self, std::string const & label="") -> DecorativeText

        Parameters:
            label: std::string const &

        __init__(SimTK::DecorativeText self) -> DecorativeText
        """
        this = _opensim.new_DecorativeText(label)
        try: self.this.append(this)
        except: self.this = this
    def setText(self, *args):
        """
        setText(DecorativeText self, std::string const & label) -> DecorativeText

        Parameters:
            label: std::string const &

        """
        return _opensim.DecorativeText_setText(self, *args)

    def getText(self):
        """
        getText(DecorativeText self) -> std::string const &

        Parameters:
            self: SimTK::DecorativeText const *

        """
        return _opensim.DecorativeText_getText(self)

    def setIsScreenText(self, *args):
        """
        setIsScreenText(DecorativeText self, bool isScreen) -> DecorativeText

        Parameters:
            isScreen: bool

        """
        return _opensim.DecorativeText_setIsScreenText(self, *args)

    def getIsScreenText(self):
        """
        getIsScreenText(DecorativeText self) -> bool

        Parameters:
            self: SimTK::DecorativeText const *

        """
        return _opensim.DecorativeText_getIsScreenText(self)

    def setBodyId(self, *args):
        """
        setBodyId(DecorativeText self, int b) -> DecorativeText

        Parameters:
            b: int

        """
        return _opensim.DecorativeText_setBodyId(self, *args)

    def setTransform(self, *args):
        """
        setTransform(DecorativeText self, Transform X_BD) -> DecorativeText

        Parameters:
            X_BD: SimTK::Transform const &

        """
        return _opensim.DecorativeText_setTransform(self, *args)

    def setResolution(self, *args):
        """
        setResolution(DecorativeText self, SimTK::Real r) -> DecorativeText

        Parameters:
            r: SimTK::Real

        """
        return _opensim.DecorativeText_setResolution(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(DecorativeText self, Vec3 s) -> DecorativeText

        Parameters:
            s: SimTK::Vec3 const &

        """
        return _opensim.DecorativeText_setScaleFactors(self, *args)

    def setColor(self, *args):
        """
        setColor(DecorativeText self, Vec3 rgb) -> DecorativeText

        Parameters:
            rgb: SimTK::Vec3 const &

        """
        return _opensim.DecorativeText_setColor(self, *args)

    def setOpacity(self, *args):
        """
        setOpacity(DecorativeText self, SimTK::Real o) -> DecorativeText

        Parameters:
            o: SimTK::Real

        """
        return _opensim.DecorativeText_setOpacity(self, *args)

    def setLineThickness(self, *args):
        """
        setLineThickness(DecorativeText self, SimTK::Real t) -> DecorativeText

        Parameters:
            t: SimTK::Real

        """
        return _opensim.DecorativeText_setLineThickness(self, *args)

    def setRepresentation(self, *args):
        """
        setRepresentation(DecorativeText self, SimTK::DecorativeGeometry::Representation const & r) -> DecorativeText

        Parameters:
            r: SimTK::DecorativeGeometry::Representation const &

        """
        return _opensim.DecorativeText_setRepresentation(self, *args)

    __swig_destroy__ = _opensim.delete_DecorativeText
    __del__ = lambda self : None;
DecorativeText_swigregister = _opensim.DecorativeText_swigregister
DecorativeText_swigregister(DecorativeText)

class DecorativeMesh(DecorativeGeometry):
    """Proxy of C++ SimTK::DecorativeMesh class"""
    __swig_setmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, DecorativeMesh, name, value)
    __swig_getmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, DecorativeMesh, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::DecorativeMesh self, PolygonalMesh const & mesh) -> DecorativeMesh

        Parameters:
            mesh: PolygonalMesh const &

        """
        this = _opensim.new_DecorativeMesh(*args)
        try: self.this.append(this)
        except: self.this = this
    def getMesh(self):
        """
        getMesh(DecorativeMesh self) -> PolygonalMesh const &

        Parameters:
            self: SimTK::DecorativeMesh const *

        """
        return _opensim.DecorativeMesh_getMesh(self)

    def setBodyId(self, *args):
        """
        setBodyId(DecorativeMesh self, int b) -> DecorativeMesh

        Parameters:
            b: int

        """
        return _opensim.DecorativeMesh_setBodyId(self, *args)

    def setTransform(self, *args):
        """
        setTransform(DecorativeMesh self, Transform X_BD) -> DecorativeMesh

        Parameters:
            X_BD: SimTK::Transform const &

        """
        return _opensim.DecorativeMesh_setTransform(self, *args)

    def setResolution(self, *args):
        """
        setResolution(DecorativeMesh self, SimTK::Real r) -> DecorativeMesh

        Parameters:
            r: SimTK::Real

        """
        return _opensim.DecorativeMesh_setResolution(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(DecorativeMesh self, Vec3 s) -> DecorativeMesh

        Parameters:
            s: SimTK::Vec3 const &

        """
        return _opensim.DecorativeMesh_setScaleFactors(self, *args)

    def setColor(self, *args):
        """
        setColor(DecorativeMesh self, Vec3 rgb) -> DecorativeMesh

        Parameters:
            rgb: SimTK::Vec3 const &

        """
        return _opensim.DecorativeMesh_setColor(self, *args)

    def setOpacity(self, *args):
        """
        setOpacity(DecorativeMesh self, SimTK::Real o) -> DecorativeMesh

        Parameters:
            o: SimTK::Real

        """
        return _opensim.DecorativeMesh_setOpacity(self, *args)

    def setLineThickness(self, *args):
        """
        setLineThickness(DecorativeMesh self, SimTK::Real t) -> DecorativeMesh

        Parameters:
            t: SimTK::Real

        """
        return _opensim.DecorativeMesh_setLineThickness(self, *args)

    def setRepresentation(self, *args):
        """
        setRepresentation(DecorativeMesh self, SimTK::DecorativeGeometry::Representation const & r) -> DecorativeMesh

        Parameters:
            r: SimTK::DecorativeGeometry::Representation const &

        """
        return _opensim.DecorativeMesh_setRepresentation(self, *args)

    __swig_destroy__ = _opensim.delete_DecorativeMesh
    __del__ = lambda self : None;
DecorativeMesh_swigregister = _opensim.DecorativeMesh_swigregister
DecorativeMesh_swigregister(DecorativeMesh)

class Decorations(DecorativeGeometry):
    """Proxy of C++ SimTK::Decorations class"""
    __swig_setmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Decorations, name, value)
    __swig_getmethods__ = {}
    for _s in [DecorativeGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Decorations, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::Decorations self) -> Decorations
        __init__(SimTK::Decorations self, DecorativeGeometry decoration) -> Decorations

        Parameters:
            decoration: SimTK::DecorativeGeometry const &

        """
        this = _opensim.new_Decorations(*args)
        try: self.this.append(this)
        except: self.this = this
    def addDecoration(self, *args):
        """
        addDecoration(Decorations self, DecorativeGeometry decoration) -> Decorations

        Parameters:
            decoration: SimTK::DecorativeGeometry const &

        addDecoration(Decorations self, Transform placement, DecorativeGeometry decoration) -> Decorations

        Parameters:
            placement: SimTK::Transform const &
            decoration: SimTK::DecorativeGeometry const &

        """
        return _opensim.Decorations_addDecoration(self, *args)

    def getNumDecorations(self):
        """
        getNumDecorations(Decorations self) -> int

        Parameters:
            self: SimTK::Decorations const *

        """
        return _opensim.Decorations_getNumDecorations(self)

    def getDecoration(self, *args):
        """
        getDecoration(Decorations self, int i) -> DecorativeGeometry

        Parameters:
            i: int

        """
        return _opensim.Decorations_getDecoration(self, *args)

    def setBodyId(self, *args):
        """
        setBodyId(Decorations self, int b) -> Decorations

        Parameters:
            b: int

        """
        return _opensim.Decorations_setBodyId(self, *args)

    def setTransform(self, *args):
        """
        setTransform(Decorations self, Transform X_BD) -> Decorations

        Parameters:
            X_BD: SimTK::Transform const &

        """
        return _opensim.Decorations_setTransform(self, *args)

    def setResolution(self, *args):
        """
        setResolution(Decorations self, SimTK::Real r) -> Decorations

        Parameters:
            r: SimTK::Real

        """
        return _opensim.Decorations_setResolution(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(Decorations self, Vec3 s) -> Decorations

        Parameters:
            s: SimTK::Vec3 const &

        """
        return _opensim.Decorations_setScaleFactors(self, *args)

    def setColor(self, *args):
        """
        setColor(Decorations self, Vec3 rgb) -> Decorations

        Parameters:
            rgb: SimTK::Vec3 const &

        """
        return _opensim.Decorations_setColor(self, *args)

    def setOpacity(self, *args):
        """
        setOpacity(Decorations self, SimTK::Real o) -> Decorations

        Parameters:
            o: SimTK::Real

        """
        return _opensim.Decorations_setOpacity(self, *args)

    def setLineThickness(self, *args):
        """
        setLineThickness(Decorations self, SimTK::Real t) -> Decorations

        Parameters:
            t: SimTK::Real

        """
        return _opensim.Decorations_setLineThickness(self, *args)

    def setRepresentation(self, *args):
        """
        setRepresentation(Decorations self, SimTK::DecorativeGeometry::Representation const & r) -> Decorations

        Parameters:
            r: SimTK::DecorativeGeometry::Representation const &

        """
        return _opensim.Decorations_setRepresentation(self, *args)

    __swig_destroy__ = _opensim.delete_Decorations
    __del__ = lambda self : None;
Decorations_swigregister = _opensim.Decorations_swigregister
Decorations_swigregister(Decorations)

class DecorativeGeometryImplementation(_object):
    """Proxy of C++ SimTK::DecorativeGeometryImplementation class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, DecorativeGeometryImplementation, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, DecorativeGeometryImplementation, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_DecorativeGeometryImplementation
    __del__ = lambda self : None;
    def implementPointGeometry(self, *args):
        """
        implementPointGeometry(DecorativeGeometryImplementation self, DecorativePoint arg2)

        Parameters:
            arg2: SimTK::DecorativePoint const &

        """
        return _opensim.DecorativeGeometryImplementation_implementPointGeometry(self, *args)

    def implementLineGeometry(self, *args):
        """
        implementLineGeometry(DecorativeGeometryImplementation self, DecorativeLine arg2)

        Parameters:
            arg2: SimTK::DecorativeLine const &

        """
        return _opensim.DecorativeGeometryImplementation_implementLineGeometry(self, *args)

    def implementBrickGeometry(self, *args):
        """
        implementBrickGeometry(DecorativeGeometryImplementation self, DecorativeBrick arg2)

        Parameters:
            arg2: SimTK::DecorativeBrick const &

        """
        return _opensim.DecorativeGeometryImplementation_implementBrickGeometry(self, *args)

    def implementCylinderGeometry(self, *args):
        """
        implementCylinderGeometry(DecorativeGeometryImplementation self, DecorativeCylinder arg2)

        Parameters:
            arg2: SimTK::DecorativeCylinder const &

        """
        return _opensim.DecorativeGeometryImplementation_implementCylinderGeometry(self, *args)

    def implementCircleGeometry(self, *args):
        """
        implementCircleGeometry(DecorativeGeometryImplementation self, DecorativeCircle arg2)

        Parameters:
            arg2: SimTK::DecorativeCircle const &

        """
        return _opensim.DecorativeGeometryImplementation_implementCircleGeometry(self, *args)

    def implementSphereGeometry(self, *args):
        """
        implementSphereGeometry(DecorativeGeometryImplementation self, DecorativeSphere arg2)

        Parameters:
            arg2: SimTK::DecorativeSphere const &

        """
        return _opensim.DecorativeGeometryImplementation_implementSphereGeometry(self, *args)

    def implementEllipsoidGeometry(self, *args):
        """
        implementEllipsoidGeometry(DecorativeGeometryImplementation self, DecorativeEllipsoid arg2)

        Parameters:
            arg2: SimTK::DecorativeEllipsoid const &

        """
        return _opensim.DecorativeGeometryImplementation_implementEllipsoidGeometry(self, *args)

    def implementFrameGeometry(self, *args):
        """
        implementFrameGeometry(DecorativeGeometryImplementation self, DecorativeFrame arg2)

        Parameters:
            arg2: SimTK::DecorativeFrame const &

        """
        return _opensim.DecorativeGeometryImplementation_implementFrameGeometry(self, *args)

    def implementTextGeometry(self, *args):
        """
        implementTextGeometry(DecorativeGeometryImplementation self, DecorativeText arg2)

        Parameters:
            arg2: SimTK::DecorativeText const &

        """
        return _opensim.DecorativeGeometryImplementation_implementTextGeometry(self, *args)

    def implementMeshGeometry(self, *args):
        """
        implementMeshGeometry(DecorativeGeometryImplementation self, DecorativeMesh arg2)

        Parameters:
            arg2: SimTK::DecorativeMesh const &

        """
        return _opensim.DecorativeGeometryImplementation_implementMeshGeometry(self, *args)

DecorativeGeometryImplementation_swigregister = _opensim.DecorativeGeometryImplementation_swigregister
DecorativeGeometryImplementation_swigregister(DecorativeGeometryImplementation)

class ArrayDecorativeGeometry(_object):
    """Proxy of C++ SimTK::Array_<(SimTK::DecorativeGeometry)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayDecorativeGeometry, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayDecorativeGeometry, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::Array_<(SimTK::DecorativeGeometry)> self) -> ArrayDecorativeGeometry
        __init__(SimTK::Array_<(SimTK::DecorativeGeometry)> self, SimTK::Array_< SimTK::DecorativeGeometry >::size_type n) -> ArrayDecorativeGeometry

        Parameters:
            n: SimTK::Array_< SimTK::DecorativeGeometry >::size_type

        __init__(SimTK::Array_<(SimTK::DecorativeGeometry)> self, SimTK::Array_< SimTK::DecorativeGeometry >::size_type n, DecorativeGeometry initVal) -> ArrayDecorativeGeometry

        Parameters:
            n: SimTK::Array_< SimTK::DecorativeGeometry >::size_type
            initVal: SimTK::DecorativeGeometry const &

        __init__(SimTK::Array_<(SimTK::DecorativeGeometry)> self, ArrayDecorativeGeometry src) -> ArrayDecorativeGeometry

        Parameters:
            src: SimTK::Array_< SimTK::DecorativeGeometry > const &

        __init__(SimTK::Array_<(SimTK::DecorativeGeometry)> self, DecorativeGeometry first, DecorativeGeometry last1, DontCopy arg4) -> ArrayDecorativeGeometry

        Parameters:
            first: SimTK::DecorativeGeometry *
            last1: SimTK::DecorativeGeometry const *
            arg4: SimTK::DontCopy const &

        """
        this = _opensim.new_ArrayDecorativeGeometry(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ArrayDecorativeGeometry
    __del__ = lambda self : None;
    def deallocate(self):
        """
        deallocate(ArrayDecorativeGeometry self) -> ArrayDecorativeGeometry

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > *

        """
        return _opensim.ArrayDecorativeGeometry_deallocate(self)

    def assign(self, *args):
        """
        assign(ArrayDecorativeGeometry self, SimTK::Array_< SimTK::DecorativeGeometry >::size_type n, DecorativeGeometry fillValue)

        Parameters:
            n: SimTK::Array_< SimTK::DecorativeGeometry >::size_type
            fillValue: SimTK::DecorativeGeometry const &

        """
        return _opensim.ArrayDecorativeGeometry_assign(self, *args)

    def fill(self, *args):
        """
        fill(ArrayDecorativeGeometry self, DecorativeGeometry fillValue)

        Parameters:
            fillValue: SimTK::DecorativeGeometry const &

        """
        return _opensim.ArrayDecorativeGeometry_fill(self, *args)

    def swap(self, *args):
        """
        swap(ArrayDecorativeGeometry self, ArrayDecorativeGeometry other)

        Parameters:
            other: SimTK::Array_< SimTK::DecorativeGeometry > &

        """
        return _opensim.ArrayDecorativeGeometry_swap(self, *args)

    def adoptData(self, *args):
        """
        adoptData(ArrayDecorativeGeometry self, DecorativeGeometry newData, SimTK::Array_< SimTK::DecorativeGeometry >::size_type dataSize, 
            SimTK::Array_< SimTK::DecorativeGeometry >::size_type dataCapacity) -> ArrayDecorativeGeometry

        Parameters:
            newData: SimTK::DecorativeGeometry *
            dataSize: SimTK::Array_< SimTK::DecorativeGeometry >::size_type
            dataCapacity: SimTK::Array_< SimTK::DecorativeGeometry >::size_type

        adoptData(ArrayDecorativeGeometry self, DecorativeGeometry newData, SimTK::Array_< SimTK::DecorativeGeometry >::size_type dataSize) -> ArrayDecorativeGeometry

        Parameters:
            newData: SimTK::DecorativeGeometry *
            dataSize: SimTK::Array_< SimTK::DecorativeGeometry >::size_type

        """
        return _opensim.ArrayDecorativeGeometry_adoptData(self, *args)

    def shareData(self, *args):
        """
        shareData(ArrayDecorativeGeometry self, DecorativeGeometry newData, SimTK::Array_< SimTK::DecorativeGeometry >::size_type dataSize) -> ArrayDecorativeGeometry

        Parameters:
            newData: SimTK::DecorativeGeometry *
            dataSize: SimTK::Array_< SimTK::DecorativeGeometry >::size_type

        shareData(ArrayDecorativeGeometry self, DecorativeGeometry first, DecorativeGeometry last1) -> ArrayDecorativeGeometry

        Parameters:
            first: SimTK::DecorativeGeometry *
            last1: SimTK::DecorativeGeometry const *

        """
        return _opensim.ArrayDecorativeGeometry_shareData(self, *args)

    def size(self):
        """
        size(ArrayDecorativeGeometry self) -> SimTK::Array_< SimTK::DecorativeGeometry >::size_type

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > const *

        """
        return _opensim.ArrayDecorativeGeometry_size(self)

    def max_size(self):
        """
        max_size(ArrayDecorativeGeometry self) -> SimTK::Array_< SimTK::DecorativeGeometry >::size_type

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > const *

        """
        return _opensim.ArrayDecorativeGeometry_max_size(self)

    def empty(self):
        """
        empty(ArrayDecorativeGeometry self) -> bool

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > const *

        """
        return _opensim.ArrayDecorativeGeometry_empty(self)

    def capacity(self):
        """
        capacity(ArrayDecorativeGeometry self) -> SimTK::Array_< SimTK::DecorativeGeometry >::size_type

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > const *

        """
        return _opensim.ArrayDecorativeGeometry_capacity(self)

    def resize(self, *args):
        """
        resize(ArrayDecorativeGeometry self, SimTK::Array_< SimTK::DecorativeGeometry >::size_type n)

        Parameters:
            n: SimTK::Array_< SimTK::DecorativeGeometry >::size_type

        resize(ArrayDecorativeGeometry self, SimTK::Array_< SimTK::DecorativeGeometry >::size_type n, DecorativeGeometry initVal)

        Parameters:
            n: SimTK::Array_< SimTK::DecorativeGeometry >::size_type
            initVal: SimTK::DecorativeGeometry const &

        """
        return _opensim.ArrayDecorativeGeometry_resize(self, *args)

    def reserve(self, *args):
        """
        reserve(ArrayDecorativeGeometry self, SimTK::Array_< SimTK::DecorativeGeometry >::size_type n)

        Parameters:
            n: SimTK::Array_< SimTK::DecorativeGeometry >::size_type

        """
        return _opensim.ArrayDecorativeGeometry_reserve(self, *args)

    def shrink_to_fit(self):
        """
        shrink_to_fit(ArrayDecorativeGeometry self)

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > *

        """
        return _opensim.ArrayDecorativeGeometry_shrink_to_fit(self)

    def allocated(self):
        """
        allocated(ArrayDecorativeGeometry self) -> SimTK::Array_< SimTK::DecorativeGeometry >::size_type

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > const *

        """
        return _opensim.ArrayDecorativeGeometry_allocated(self)

    def isOwner(self):
        """
        isOwner(ArrayDecorativeGeometry self) -> bool

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > const *

        """
        return _opensim.ArrayDecorativeGeometry_isOwner(self)

    def cbegin(self):
        """
        cbegin(ArrayDecorativeGeometry self) -> DecorativeGeometry

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > const *

        """
        return _opensim.ArrayDecorativeGeometry_cbegin(self)

    def begin(self, *args):
        """
        begin(ArrayDecorativeGeometry self) -> DecorativeGeometry
        begin(ArrayDecorativeGeometry self) -> DecorativeGeometry

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > *

        """
        return _opensim.ArrayDecorativeGeometry_begin(self, *args)

    def cend(self):
        """
        cend(ArrayDecorativeGeometry self) -> DecorativeGeometry

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > const *

        """
        return _opensim.ArrayDecorativeGeometry_cend(self)

    def end(self, *args):
        """
        end(ArrayDecorativeGeometry self) -> DecorativeGeometry
        end(ArrayDecorativeGeometry self) -> DecorativeGeometry

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > *

        """
        return _opensim.ArrayDecorativeGeometry_end(self, *args)

    def crbegin(self):
        """
        crbegin(ArrayDecorativeGeometry self) -> SimTK::Array_< SimTK::DecorativeGeometry >::const_reverse_iterator

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > const *

        """
        return _opensim.ArrayDecorativeGeometry_crbegin(self)

    def rbegin(self, *args):
        """
        rbegin(ArrayDecorativeGeometry self) -> SimTK::Array_< SimTK::DecorativeGeometry >::const_reverse_iterator
        rbegin(ArrayDecorativeGeometry self) -> SimTK::Array_< SimTK::DecorativeGeometry >::reverse_iterator

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > *

        """
        return _opensim.ArrayDecorativeGeometry_rbegin(self, *args)

    def crend(self):
        """
        crend(ArrayDecorativeGeometry self) -> SimTK::Array_< SimTK::DecorativeGeometry >::const_reverse_iterator

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > const *

        """
        return _opensim.ArrayDecorativeGeometry_crend(self)

    def rend(self, *args):
        """
        rend(ArrayDecorativeGeometry self) -> SimTK::Array_< SimTK::DecorativeGeometry >::const_reverse_iterator
        rend(ArrayDecorativeGeometry self) -> SimTK::Array_< SimTK::DecorativeGeometry >::reverse_iterator

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > *

        """
        return _opensim.ArrayDecorativeGeometry_rend(self, *args)

    def cdata(self):
        """
        cdata(ArrayDecorativeGeometry self) -> DecorativeGeometry

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > const *

        """
        return _opensim.ArrayDecorativeGeometry_cdata(self)

    def data(self, *args):
        """
        data(ArrayDecorativeGeometry self) -> DecorativeGeometry
        data(ArrayDecorativeGeometry self) -> DecorativeGeometry

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > *

        """
        return _opensim.ArrayDecorativeGeometry_data(self, *args)

    def at(self, *args):
        """
        at(ArrayDecorativeGeometry self, SimTK::Array_< SimTK::DecorativeGeometry >::index_type i) -> DecorativeGeometry

        Parameters:
            i: SimTK::Array_< SimTK::DecorativeGeometry >::index_type

        at(ArrayDecorativeGeometry self, SimTK::Array_< SimTK::DecorativeGeometry >::index_type i) -> DecorativeGeometry

        Parameters:
            i: SimTK::Array_< SimTK::DecorativeGeometry >::index_type

        """
        return _opensim.ArrayDecorativeGeometry_at(self, *args)

    def getElt(self, *args):
        """
        getElt(ArrayDecorativeGeometry self, SimTK::Array_< SimTK::DecorativeGeometry >::index_type i) -> DecorativeGeometry

        Parameters:
            i: SimTK::Array_< SimTK::DecorativeGeometry >::index_type

        """
        return _opensim.ArrayDecorativeGeometry_getElt(self, *args)

    def updElt(self, *args):
        """
        updElt(ArrayDecorativeGeometry self, SimTK::Array_< SimTK::DecorativeGeometry >::index_type i) -> DecorativeGeometry

        Parameters:
            i: SimTK::Array_< SimTK::DecorativeGeometry >::index_type

        """
        return _opensim.ArrayDecorativeGeometry_updElt(self, *args)

    def front(self, *args):
        """
        front(ArrayDecorativeGeometry self) -> DecorativeGeometry
        front(ArrayDecorativeGeometry self) -> DecorativeGeometry

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > *

        """
        return _opensim.ArrayDecorativeGeometry_front(self, *args)

    def back(self, *args):
        """
        back(ArrayDecorativeGeometry self) -> DecorativeGeometry
        back(ArrayDecorativeGeometry self) -> DecorativeGeometry

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > *

        """
        return _opensim.ArrayDecorativeGeometry_back(self, *args)

    def push_back(self, *args):
        """
        push_back(ArrayDecorativeGeometry self, DecorativeGeometry value)

        Parameters:
            value: SimTK::DecorativeGeometry const &

        push_back(ArrayDecorativeGeometry self)

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > *

        """
        return _opensim.ArrayDecorativeGeometry_push_back(self, *args)

    def raw_push_back(self):
        """
        raw_push_back(ArrayDecorativeGeometry self) -> DecorativeGeometry

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > *

        """
        return _opensim.ArrayDecorativeGeometry_raw_push_back(self)

    def pop_back(self):
        """
        pop_back(ArrayDecorativeGeometry self)

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > *

        """
        return _opensim.ArrayDecorativeGeometry_pop_back(self)

    def erase(self, *args):
        """
        erase(ArrayDecorativeGeometry self, DecorativeGeometry first, DecorativeGeometry last1) -> DecorativeGeometry

        Parameters:
            first: SimTK::DecorativeGeometry *
            last1: SimTK::DecorativeGeometry const *

        erase(ArrayDecorativeGeometry self, DecorativeGeometry p) -> DecorativeGeometry

        Parameters:
            p: SimTK::DecorativeGeometry *

        """
        return _opensim.ArrayDecorativeGeometry_erase(self, *args)

    def eraseFast(self, *args):
        """
        eraseFast(ArrayDecorativeGeometry self, DecorativeGeometry p) -> DecorativeGeometry

        Parameters:
            p: SimTK::DecorativeGeometry *

        """
        return _opensim.ArrayDecorativeGeometry_eraseFast(self, *args)

    def clear(self):
        """
        clear(ArrayDecorativeGeometry self)

        Parameters:
            self: SimTK::Array_< SimTK::DecorativeGeometry > *

        """
        return _opensim.ArrayDecorativeGeometry_clear(self)

    def insert(self, *args):
        """
        insert(ArrayDecorativeGeometry self, DecorativeGeometry p, SimTK::Array_< SimTK::DecorativeGeometry >::size_type n, DecorativeGeometry value) -> DecorativeGeometry

        Parameters:
            p: SimTK::DecorativeGeometry *
            n: SimTK::Array_< SimTK::DecorativeGeometry >::size_type
            value: SimTK::DecorativeGeometry const &

        insert(ArrayDecorativeGeometry self, DecorativeGeometry p, DecorativeGeometry value) -> DecorativeGeometry

        Parameters:
            p: SimTK::DecorativeGeometry *
            value: SimTK::DecorativeGeometry const &

        """
        return _opensim.ArrayDecorativeGeometry_insert(self, *args)

ArrayDecorativeGeometry_swigregister = _opensim.ArrayDecorativeGeometry_swigregister
ArrayDecorativeGeometry_swigregister(ArrayDecorativeGeometry)

class Stage(_object):
    """Proxy of C++ SimTK::Stage class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Stage, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Stage, name)
    __repr__ = _swig_repr
    Empty = _opensim.Stage_Empty
    Topology = _opensim.Stage_Topology
    Model = _opensim.Stage_Model
    Instance = _opensim.Stage_Instance
    Time = _opensim.Stage_Time
    Position = _opensim.Stage_Position
    Velocity = _opensim.Stage_Velocity
    Dynamics = _opensim.Stage_Dynamics
    Acceleration = _opensim.Stage_Acceleration
    Report = _opensim.Stage_Report
    Infinity = _opensim.Stage_Infinity
    LowestValid = _opensim.Stage_LowestValid
    HighestValid = _opensim.Stage_HighestValid
    LowestRuntime = _opensim.Stage_LowestRuntime
    HighestRuntime = _opensim.Stage_HighestRuntime
    NValid = _opensim.Stage_NValid
    NRuntime = _opensim.Stage_NRuntime
    def __init__(self, *args): 
        """
        __init__(SimTK::Stage self) -> Stage
        __init__(SimTK::Stage self, int l) -> Stage

        Parameters:
            l: int

        """
        this = _opensim.new_Stage(*args)
        try: self.this.append(this)
        except: self.this = this
    def next(self):
        """
        next(Stage self) -> Stage

        Parameters:
            self: SimTK::Stage const *

        """
        return _opensim.Stage_next(self)

    def prev(self):
        """
        prev(Stage self) -> Stage

        Parameters:
            self: SimTK::Stage const *

        """
        return _opensim.Stage_prev(self)

    def getName(self):
        """
        getName(Stage self) -> String

        Parameters:
            self: SimTK::Stage const *

        """
        return _opensim.Stage_getName(self)

    def invalidate(self, *args):
        """
        invalidate(Stage self, Stage tooHigh)

        Parameters:
            tooHigh: SimTK::Stage

        """
        return _opensim.Stage_invalidate(self, *args)

    def isInRuntimeRange(self):
        """
        isInRuntimeRange(Stage self) -> bool

        Parameters:
            self: SimTK::Stage const *

        """
        return _opensim.Stage_isInRuntimeRange(self)

    __swig_destroy__ = _opensim.delete_Stage
    __del__ = lambda self : None;
Stage_swigregister = _opensim.Stage_swigregister
Stage_swigregister(Stage)

class State(_object):
    """Proxy of C++ SimTK::State class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, State, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, State, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_State
    __del__ = lambda self : None;
    def clear(self):
        """
        clear(State self)

        Parameters:
            self: SimTK::State *

        """
        return _opensim.State_clear(self)

    def setNumSubsystems(self, *args):
        """
        setNumSubsystems(State self, int i)

        Parameters:
            i: int

        """
        return _opensim.State_setNumSubsystems(self, *args)

    def __init__(self, *args): 
        """
        __init__(SimTK::State self) -> State
        __init__(SimTK::State self, State arg2) -> State

        Parameters:
            arg2: SimTK::State const &

        """
        this = _opensim.new_State(*args)
        try: self.this.append(this)
        except: self.this = this
    def getNumSubsystems(self):
        """
        getNumSubsystems(State self) -> int

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getNumSubsystems(self)

    def getSystemStage(self):
        """
        getSystemStage(State self) -> Stage

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getSystemStage(self)

    def invalidateAll(self, *args):
        """
        invalidateAll(State self, Stage arg2)

        Parameters:
            arg2: SimTK::Stage

        """
        return _opensim.State_invalidateAll(self, *args)

    def invalidateAllCacheAtOrAbove(self, *args):
        """
        invalidateAllCacheAtOrAbove(State self, Stage arg2)

        Parameters:
            arg2: SimTK::Stage

        """
        return _opensim.State_invalidateAllCacheAtOrAbove(self, *args)

    def getNY(self):
        """
        getNY(State self) -> int

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getNY(self)

    def getNYErr(self):
        """
        getNYErr(State self) -> int

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getNYErr(self)

    def getNMultipliers(self):
        """
        getNMultipliers(State self) -> int

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getNMultipliers(self)

    def getNEventTriggers(self):
        """
        getNEventTriggers(State self) -> int

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getNEventTriggers(self)

    def getNEventTriggersByStage(self, *args):
        """
        getNEventTriggersByStage(State self, Stage arg2) -> int

        Parameters:
            arg2: SimTK::Stage

        """
        return _opensim.State_getNEventTriggersByStage(self, *args)

    def getEventTriggerStartByStage(self, *args):
        """
        getEventTriggerStartByStage(State self, Stage arg2) -> SystemEventTriggerIndex

        Parameters:
            arg2: SimTK::Stage

        """
        return _opensim.State_getEventTriggerStartByStage(self, *args)

    def getQStart(self, *args):
        """
        getQStart(State self) -> SystemYIndex
        getQStart(State self, SubsystemIndex arg2) -> SystemQIndex

        Parameters:
            arg2: SubsystemIndex

        """
        return _opensim.State_getQStart(self, *args)

    def getNQ(self, *args):
        """
        getNQ(State self) -> int
        getNQ(State self, SubsystemIndex arg2) -> int

        Parameters:
            arg2: SubsystemIndex

        """
        return _opensim.State_getNQ(self, *args)

    def getUStart(self, *args):
        """
        getUStart(State self) -> SystemYIndex
        getUStart(State self, SubsystemIndex arg2) -> SystemUIndex

        Parameters:
            arg2: SubsystemIndex

        """
        return _opensim.State_getUStart(self, *args)

    def getNU(self, *args):
        """
        getNU(State self) -> int
        getNU(State self, SubsystemIndex arg2) -> int

        Parameters:
            arg2: SubsystemIndex

        """
        return _opensim.State_getNU(self, *args)

    def getZStart(self, *args):
        """
        getZStart(State self) -> SystemYIndex
        getZStart(State self, SubsystemIndex arg2) -> SystemZIndex

        Parameters:
            arg2: SubsystemIndex

        """
        return _opensim.State_getZStart(self, *args)

    def getNZ(self, *args):
        """
        getNZ(State self) -> int
        getNZ(State self, SubsystemIndex arg2) -> int

        Parameters:
            arg2: SubsystemIndex

        """
        return _opensim.State_getNZ(self, *args)

    def getQErrStart(self, *args):
        """
        getQErrStart(State self) -> SystemYErrIndex
        getQErrStart(State self, SubsystemIndex arg2) -> SystemQErrIndex

        Parameters:
            arg2: SubsystemIndex

        """
        return _opensim.State_getQErrStart(self, *args)

    def getNQErr(self, *args):
        """
        getNQErr(State self) -> int
        getNQErr(State self, SubsystemIndex arg2) -> int

        Parameters:
            arg2: SubsystemIndex

        """
        return _opensim.State_getNQErr(self, *args)

    def getUErrStart(self, *args):
        """
        getUErrStart(State self) -> SystemYErrIndex
        getUErrStart(State self, SubsystemIndex arg2) -> SystemUErrIndex

        Parameters:
            arg2: SubsystemIndex

        """
        return _opensim.State_getUErrStart(self, *args)

    def getNUErr(self, *args):
        """
        getNUErr(State self) -> int
        getNUErr(State self, SubsystemIndex arg2) -> int

        Parameters:
            arg2: SubsystemIndex

        """
        return _opensim.State_getNUErr(self, *args)

    def getUDotErrStart(self, *args):
        """
        getUDotErrStart(State self, SubsystemIndex arg2) -> SystemUDotErrIndex

        Parameters:
            arg2: SubsystemIndex

        """
        return _opensim.State_getUDotErrStart(self, *args)

    def getNUDotErr(self, *args):
        """
        getNUDotErr(State self) -> int
        getNUDotErr(State self, SubsystemIndex arg2) -> int

        Parameters:
            arg2: SubsystemIndex

        """
        return _opensim.State_getNUDotErr(self, *args)

    def getEventTriggers(self):
        """
        getEventTriggers(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getEventTriggers(self)

    def getEventTriggersByStage(self, *args):
        """
        getEventTriggersByStage(State self, Stage arg2) -> Vector

        Parameters:
            arg2: SimTK::Stage

        getEventTriggersByStage(State self, SubsystemIndex arg2, Stage arg3) -> Vector

        Parameters:
            arg2: SubsystemIndex
            arg3: SimTK::Stage

        """
        return _opensim.State_getEventTriggersByStage(self, *args)

    def updEventTriggers(self):
        """
        updEventTriggers(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_updEventTriggers(self)

    def updEventTriggersByStage(self, *args):
        """
        updEventTriggersByStage(State self, Stage arg2) -> Vector

        Parameters:
            arg2: SimTK::Stage

        updEventTriggersByStage(State self, SubsystemIndex arg2, Stage arg3) -> Vector

        Parameters:
            arg2: SubsystemIndex
            arg3: SimTK::Stage

        """
        return _opensim.State_updEventTriggersByStage(self, *args)

    def getTime(self):
        """
        getTime(State self) -> double const &

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getTime(self)

    def getY(self):
        """
        getY(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getY(self)

    def getQ(self, *args):
        """
        getQ(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getQ(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getQ(self, *args)

    def getU(self, *args):
        """
        getU(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getU(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getU(self, *args)

    def getZ(self, *args):
        """
        getZ(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getZ(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getZ(self, *args)

    def getUWeights(self, *args):
        """
        getUWeights(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getUWeights(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getUWeights(self, *args)

    def getZWeights(self, *args):
        """
        getZWeights(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getZWeights(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getZWeights(self, *args)

    def updUWeights(self, *args):
        """
        updUWeights(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updUWeights(State self) -> Vector

        Parameters:
            self: SimTK::State *

        """
        return _opensim.State_updUWeights(self, *args)

    def updZWeights(self, *args):
        """
        updZWeights(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updZWeights(State self) -> Vector

        Parameters:
            self: SimTK::State *

        """
        return _opensim.State_updZWeights(self, *args)

    def updTime(self):
        """
        updTime(State self) -> double &

        Parameters:
            self: SimTK::State *

        """
        return _opensim.State_updTime(self)

    def updY(self):
        """
        updY(State self) -> Vector

        Parameters:
            self: SimTK::State *

        """
        return _opensim.State_updY(self)

    def setTime(self, *args):
        """
        setTime(State self, double t)

        Parameters:
            t: double

        """
        return _opensim.State_setTime(self, *args)

    def setY(self, *args):
        """
        setY(State self, Vector y)

        Parameters:
            y: SimTK::Vector const &

        """
        return _opensim.State_setY(self, *args)

    def updQ(self, *args):
        """
        updQ(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updQ(State self) -> Vector

        Parameters:
            self: SimTK::State *

        """
        return _opensim.State_updQ(self, *args)

    def updU(self, *args):
        """
        updU(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updU(State self) -> Vector

        Parameters:
            self: SimTK::State *

        """
        return _opensim.State_updU(self, *args)

    def updZ(self, *args):
        """
        updZ(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updZ(State self) -> Vector

        Parameters:
            self: SimTK::State *

        """
        return _opensim.State_updZ(self, *args)

    def setQ(self, *args):
        """
        setQ(State self, Vector q)

        Parameters:
            q: SimTK::Vector const &

        """
        return _opensim.State_setQ(self, *args)

    def setU(self, *args):
        """
        setU(State self, Vector u)

        Parameters:
            u: SimTK::Vector const &

        """
        return _opensim.State_setU(self, *args)

    def setZ(self, *args):
        """
        setZ(State self, Vector z)

        Parameters:
            z: SimTK::Vector const &

        """
        return _opensim.State_setZ(self, *args)

    def getYDot(self):
        """
        getYDot(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getYDot(self)

    def getQDot(self, *args):
        """
        getQDot(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getQDot(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getQDot(self, *args)

    def getZDot(self, *args):
        """
        getZDot(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getZDot(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getZDot(self, *args)

    def getUDot(self, *args):
        """
        getUDot(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getUDot(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getUDot(self, *args)

    def getQDotDot(self, *args):
        """
        getQDotDot(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getQDotDot(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getQDotDot(self, *args)

    def updYDot(self):
        """
        updYDot(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_updYDot(self)

    def updQDot(self, *args):
        """
        updQDot(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updQDot(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_updQDot(self, *args)

    def updZDot(self, *args):
        """
        updZDot(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updZDot(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_updZDot(self, *args)

    def updUDot(self, *args):
        """
        updUDot(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updUDot(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_updUDot(self, *args)

    def updQDotDot(self, *args):
        """
        updQDotDot(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updQDotDot(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_updQDotDot(self, *args)

    def getYErr(self):
        """
        getYErr(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getYErr(self)

    def getQErr(self, *args):
        """
        getQErr(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getQErr(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getQErr(self, *args)

    def getUErr(self, *args):
        """
        getUErr(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getUErr(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getUErr(self, *args)

    def getUDotErr(self, *args):
        """
        getUDotErr(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getUDotErr(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getUDotErr(self, *args)

    def getMultipliers(self, *args):
        """
        getMultipliers(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getMultipliers(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getMultipliers(self, *args)

    def getQErrWeights(self, *args):
        """
        getQErrWeights(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getQErrWeights(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getQErrWeights(self, *args)

    def getUErrWeights(self, *args):
        """
        getUErrWeights(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        getUErrWeights(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_getUErrWeights(self, *args)

    def updQErrWeights(self, *args):
        """
        updQErrWeights(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updQErrWeights(State self) -> Vector

        Parameters:
            self: SimTK::State *

        """
        return _opensim.State_updQErrWeights(self, *args)

    def updUErrWeights(self, *args):
        """
        updUErrWeights(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updUErrWeights(State self) -> Vector

        Parameters:
            self: SimTK::State *

        """
        return _opensim.State_updUErrWeights(self, *args)

    def updYErr(self):
        """
        updYErr(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_updYErr(self)

    def updQErr(self, *args):
        """
        updQErr(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updQErr(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_updQErr(self, *args)

    def updUErr(self, *args):
        """
        updUErr(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updUErr(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_updUErr(self, *args)

    def updUDotErr(self, *args):
        """
        updUDotErr(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updUDotErr(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_updUDotErr(self, *args)

    def updMultipliers(self, *args):
        """
        updMultipliers(State self, SubsystemIndex arg2) -> Vector

        Parameters:
            arg2: SubsystemIndex

        updMultipliers(State self) -> Vector

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_updMultipliers(self, *args)

    def getSystemStageVersions(self, *args):
        """
        getSystemStageVersions(State self, SimTK::Array_< SimTK::StageVersion > & versions)

        Parameters:
            versions: SimTK::Array_< SimTK::StageVersion > &

        """
        return _opensim.State_getSystemStageVersions(self, *args)

    def getLowestSystemStageDifference(self, *args):
        """
        getLowestSystemStageDifference(State self, SimTK::Array_< SimTK::StageVersion > const & prevVersions) -> Stage

        Parameters:
            prevVersions: SimTK::Array_< SimTK::StageVersion > const &

        """
        return _opensim.State_getLowestSystemStageDifference(self, *args)

    def setSystemTopologyStageVersion(self, *args):
        """
        setSystemTopologyStageVersion(State self, SimTK::StageVersion topoVersion)

        Parameters:
            topoVersion: SimTK::StageVersion

        """
        return _opensim.State_setSystemTopologyStageVersion(self, *args)

    def autoUpdateDiscreteVariables(self):
        """
        autoUpdateDiscreteVariables(State self)

        Parameters:
            self: SimTK::State *

        """
        return _opensim.State_autoUpdateDiscreteVariables(self)

    def cacheToString(self):
        """
        cacheToString(State self) -> String

        Parameters:
            self: SimTK::State const *

        """
        return _opensim.State_cacheToString(self)

State_swigregister = _opensim.State_swigregister
State_swigregister(State)


def __lshift__(*args):
  """
    __lshift__(std::ostream & o, Stage g) -> std::ostream

    Parameters:
        o: std::ostream &
        g: SimTK::Stage

    __lshift__(std::ostream & o, State s) -> std::ostream &

    Parameters:
        o: std::ostream &
        s: SimTK::State const &

    """
  return _opensim.__lshift__(*args)
class OpenSimException(Exception):
    """Proxy of C++ OpenSim::Exception class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, OpenSimException, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, OpenSimException, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        Exception(std::string const & aMsg="", std::string const & aFile="", int aLine=-1) -> OpenSimException

        Parameters:
            aMsg: std::string const &
            aFile: std::string const &
            aLine: int

        Exception(std::string const & aMsg="", std::string const & aFile="") -> OpenSimException

        Parameters:
            aMsg: std::string const &
            aFile: std::string const &

        Exception(std::string const & aMsg="") -> OpenSimException

        Parameters:
            aMsg: std::string const &

        __init__(OpenSim::Exception self) -> OpenSimException
        """
        this = _opensim.new_OpenSimException(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_OpenSimException
    __del__ = lambda self : None;
    def setMessage(self, *args):
        """
        setMessage(OpenSimException self, std::string const & aMsg)

        Parameters:
            aMsg: std::string const &

        """
        return _opensim.OpenSimException_setMessage(self, *args)

    def getMessage(self):
        """
        getMessage(OpenSimException self) -> char const *

        Parameters:
            self: OpenSim::Exception const *

        """
        return _opensim.OpenSimException_getMessage(self)

    def what(self):
        """
        what(OpenSimException self) -> char const *

        Parameters:
            self: OpenSim::Exception const *

        """
        return _opensim.OpenSimException_what(self)

OpenSimException_swigregister = _opensim.OpenSimException_swigregister
OpenSimException_swigregister(OpenSimException)

class AbstractProperty(_object):
    """Proxy of C++ OpenSim::AbstractProperty class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, AbstractProperty, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, AbstractProperty, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def setAllowableListSize(self, *args):
        """
        setAllowableListSize(AbstractProperty self, int aMin, int aMax)

        Parameters:
            aMin: int
            aMax: int

        setAllowableListSize(AbstractProperty self, int aNum)

        Parameters:
            aNum: int

        """
        return _opensim.AbstractProperty_setAllowableListSize(self, *args)

    __swig_destroy__ = _opensim.delete_AbstractProperty
    __del__ = lambda self : None;
    def clone(self):
        """
        clone(AbstractProperty self) -> AbstractProperty

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_clone(self)

    def toString(self):
        """
        toString(AbstractProperty self) -> std::string

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_toString(self)

    def getTypeName(self):
        """
        getTypeName(AbstractProperty self) -> std::string

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_getTypeName(self)

    def isObjectProperty(self):
        """
        isObjectProperty(AbstractProperty self) -> bool

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_isObjectProperty(self)

    def isUnnamedProperty(self):
        """
        isUnnamedProperty(AbstractProperty self) -> bool

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_isUnnamedProperty(self)

    def equals(self, *args):
        """
        equals(AbstractProperty self, AbstractProperty other) -> bool

        Parameters:
            other: OpenSim::AbstractProperty const &

        """
        return _opensim.AbstractProperty_equals(self, *args)

    def isSamePropertyClass(self, *args):
        """
        isSamePropertyClass(AbstractProperty self, AbstractProperty other) -> bool

        Parameters:
            other: OpenSim::AbstractProperty const &

        """
        return _opensim.AbstractProperty_isSamePropertyClass(self, *args)

    def size(self):
        """
        size(AbstractProperty self) -> int

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_size(self)

    def empty(self):
        """
        empty(AbstractProperty self) -> bool

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_empty(self)

    def clear(self):
        """
        clear(AbstractProperty self)

        Parameters:
            self: OpenSim::AbstractProperty *

        """
        return _opensim.AbstractProperty_clear(self)

    def getValueAsObject(self, *args):
        """
        getValueAsObject(AbstractProperty self, int index=-1) -> OpenSimObject

        Parameters:
            index: int

        getValueAsObject(AbstractProperty self) -> OpenSimObject

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_getValueAsObject(self, *args)

    def updValueAsObject(self, *args):
        """
        updValueAsObject(AbstractProperty self, int index=-1) -> OpenSimObject

        Parameters:
            index: int

        updValueAsObject(AbstractProperty self) -> OpenSimObject

        Parameters:
            self: OpenSim::AbstractProperty *

        """
        return _opensim.AbstractProperty_updValueAsObject(self, *args)

    def setValueAsObject(self, *args):
        """
        setValueAsObject(AbstractProperty self, OpenSimObject obj, int index=-1)

        Parameters:
            obj: OpenSim::Object const &
            index: int

        setValueAsObject(AbstractProperty self, OpenSimObject obj)

        Parameters:
            obj: OpenSim::Object const &

        """
        return _opensim.AbstractProperty_setValueAsObject(self, *args)

    def setAllPropertiesUseDefault(self, *args):
        """
        setAllPropertiesUseDefault(AbstractProperty self, bool shouldUseDefault)

        Parameters:
            shouldUseDefault: bool

        """
        return _opensim.AbstractProperty_setAllPropertiesUseDefault(self, *args)

    def readFromXMLParentElement(self, *args):
        """
        readFromXMLParentElement(AbstractProperty self, SimTK::Xml::Element & parent, int versionNumber)

        Parameters:
            parent: SimTK::Xml::Element &
            versionNumber: int

        """
        return _opensim.AbstractProperty_readFromXMLParentElement(self, *args)

    def writeToXMLParentElement(self, *args):
        """
        writeToXMLParentElement(AbstractProperty self, SimTK::Xml::Element & parent)

        Parameters:
            parent: SimTK::Xml::Element &

        """
        return _opensim.AbstractProperty_writeToXMLParentElement(self, *args)

    def setName(self, *args):
        """
        setName(AbstractProperty self, std::string const & name)

        Parameters:
            name: std::string const &

        """
        return _opensim.AbstractProperty_setName(self, *args)

    def setComment(self, *args):
        """
        setComment(AbstractProperty self, std::string const & aComment)

        Parameters:
            aComment: std::string const &

        """
        return _opensim.AbstractProperty_setComment(self, *args)

    def setValueIsDefault(self, *args):
        """
        setValueIsDefault(AbstractProperty self, bool isDefault)

        Parameters:
            isDefault: bool

        """
        return _opensim.AbstractProperty_setValueIsDefault(self, *args)

    def getName(self):
        """
        getName(AbstractProperty self) -> std::string const &

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_getName(self)

    def getComment(self):
        """
        getComment(AbstractProperty self) -> std::string const &

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_getComment(self)

    def getValueIsDefault(self):
        """
        getValueIsDefault(AbstractProperty self) -> bool

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_getValueIsDefault(self)

    def getMinListSize(self):
        """
        getMinListSize(AbstractProperty self) -> int

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_getMinListSize(self)

    def getMaxListSize(self):
        """
        getMaxListSize(AbstractProperty self) -> int

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_getMaxListSize(self)

    def isOptionalProperty(self):
        """
        isOptionalProperty(AbstractProperty self) -> bool

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_isOptionalProperty(self)

    def isListProperty(self):
        """
        isListProperty(AbstractProperty self) -> bool

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_isListProperty(self)

    def isOneValueProperty(self):
        """
        isOneValueProperty(AbstractProperty self) -> bool

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_isOneValueProperty(self)

    def isOneObjectProperty(self):
        """
        isOneObjectProperty(AbstractProperty self) -> bool

        Parameters:
            self: OpenSim::AbstractProperty const *

        """
        return _opensim.AbstractProperty_isOneObjectProperty(self)

AbstractProperty_swigregister = _opensim.AbstractProperty_swigregister
AbstractProperty_swigregister(AbstractProperty)
Array_CAPMIN = cvar.Array_CAPMIN

class PropertyGroup(_object):
    """Proxy of C++ OpenSim::PropertyGroup class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, PropertyGroup, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, PropertyGroup, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(OpenSim::PropertyGroup self) -> PropertyGroup
        __init__(OpenSim::PropertyGroup self, std::string & aName) -> PropertyGroup

        Parameters:
            aName: std::string &

        __init__(OpenSim::PropertyGroup self, PropertyGroup aGroup) -> PropertyGroup

        Parameters:
            aGroup: OpenSim::PropertyGroup const &

        """
        this = _opensim.new_PropertyGroup(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_PropertyGroup
    __del__ = lambda self : None;
    def clone(self):
        """
        clone(PropertyGroup self) -> PropertyGroup

        Parameters:
            self: OpenSim::PropertyGroup const *

        """
        return _opensim.PropertyGroup_clone(self)

    def copyData(self, *args):
        """
        copyData(PropertyGroup self, PropertyGroup aGroup)

        Parameters:
            aGroup: OpenSim::PropertyGroup const &

        """
        return _opensim.PropertyGroup_copyData(self, *args)

    def clear(self):
        """
        clear(PropertyGroup self)

        Parameters:
            self: OpenSim::PropertyGroup *

        """
        return _opensim.PropertyGroup_clear(self)

    def contains(self, *args):
        """
        contains(PropertyGroup self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.PropertyGroup_contains(self, *args)

    def add(self, *args):
        """
        add(PropertyGroup self, Property_Deprecated * aProperty)

        Parameters:
            aProperty: Property_Deprecated *

        """
        return _opensim.PropertyGroup_add(self, *args)

    def remove(self, *args):
        """
        remove(PropertyGroup self, Property_Deprecated * aProperty)

        Parameters:
            aProperty: Property_Deprecated *

        """
        return _opensim.PropertyGroup_remove(self, *args)

    def get(self, *args):
        """
        get(PropertyGroup self, int aIndex) -> Property_Deprecated *

        Parameters:
            aIndex: int

        """
        return _opensim.PropertyGroup_get(self, *args)

    def getPropertyIndex(self, *args):
        """
        getPropertyIndex(PropertyGroup self, Property_Deprecated * aProperty) -> int

        Parameters:
            aProperty: Property_Deprecated *

        """
        return _opensim.PropertyGroup_getPropertyIndex(self, *args)

    def setName(self, *args):
        """
        setName(PropertyGroup self, std::string const & aName)

        Parameters:
            aName: std::string const &

        """
        return _opensim.PropertyGroup_setName(self, *args)

    def getName(self):
        """
        getName(PropertyGroup self) -> std::string const &

        Parameters:
            self: OpenSim::PropertyGroup const *

        """
        return _opensim.PropertyGroup_getName(self)

PropertyGroup_swigregister = _opensim.PropertyGroup_swigregister
PropertyGroup_swigregister(PropertyGroup)

class ArrayPtrsPropertyGroup(_object):
    """Proxy of C++ OpenSim::ArrayPtrs<(OpenSim::PropertyGroup)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayPtrsPropertyGroup, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayPtrsPropertyGroup, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_ArrayPtrsPropertyGroup
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::ArrayPtrs<(OpenSim::PropertyGroup)> self, int aCapacity=1) -> ArrayPtrsPropertyGroup

        Parameters:
            aCapacity: int

        __init__(OpenSim::ArrayPtrs<(OpenSim::PropertyGroup)> self) -> ArrayPtrsPropertyGroup
        __init__(OpenSim::ArrayPtrs<(OpenSim::PropertyGroup)> self, ArrayPtrsPropertyGroup aArray) -> ArrayPtrsPropertyGroup

        Parameters:
            aArray: OpenSim::ArrayPtrs< OpenSim::PropertyGroup > const &

        """
        this = _opensim.new_ArrayPtrsPropertyGroup(*args)
        try: self.this.append(this)
        except: self.this = this
    def clearAndDestroy(self):
        """
        clearAndDestroy(ArrayPtrsPropertyGroup self)

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::PropertyGroup > *

        """
        return _opensim.ArrayPtrsPropertyGroup_clearAndDestroy(self)

    def setSize(self, *args):
        """
        setSize(ArrayPtrsPropertyGroup self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.ArrayPtrsPropertyGroup_setSize(self, *args)

    def getSize(self):
        """
        getSize(ArrayPtrsPropertyGroup self) -> int

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::PropertyGroup > const *

        """
        return _opensim.ArrayPtrsPropertyGroup_getSize(self)

    def size(self):
        """
        size(ArrayPtrsPropertyGroup self) -> int

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::PropertyGroup > const *

        """
        return _opensim.ArrayPtrsPropertyGroup_size(self)

    def getIndex(self, *args):
        """
        getIndex(ArrayPtrsPropertyGroup self, PropertyGroup aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::PropertyGroup const *
            aStartIndex: int

        getIndex(ArrayPtrsPropertyGroup self, PropertyGroup aObject) -> int

        Parameters:
            aObject: OpenSim::PropertyGroup const *

        getIndex(ArrayPtrsPropertyGroup self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(ArrayPtrsPropertyGroup self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.ArrayPtrsPropertyGroup_getIndex(self, *args)

    def append(self, *args):
        """
        append(ArrayPtrsPropertyGroup self, PropertyGroup aObject) -> bool

        Parameters:
            aObject: OpenSim::PropertyGroup *

        append(ArrayPtrsPropertyGroup self, ArrayPtrsPropertyGroup aArray) -> bool

        Parameters:
            aArray: OpenSim::ArrayPtrs< OpenSim::PropertyGroup > &

        """
        return _opensim.ArrayPtrsPropertyGroup_append(self, *args)

    def insert(self, *args):
        """
        insert(ArrayPtrsPropertyGroup self, int aIndex, PropertyGroup aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::PropertyGroup *

        """
        return _opensim.ArrayPtrsPropertyGroup_insert(self, *args)

    def remove(self, *args):
        """
        remove(ArrayPtrsPropertyGroup self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(ArrayPtrsPropertyGroup self, PropertyGroup aObject) -> bool

        Parameters:
            aObject: OpenSim::PropertyGroup const *

        """
        return _opensim.ArrayPtrsPropertyGroup_remove(self, *args)

    def set(self, *args):
        """
        set(ArrayPtrsPropertyGroup self, int aIndex, PropertyGroup aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::PropertyGroup *

        """
        return _opensim.ArrayPtrsPropertyGroup_set(self, *args)

    def get(self, *args):
        """
        get(ArrayPtrsPropertyGroup self, int aIndex) -> PropertyGroup

        Parameters:
            aIndex: int

        get(ArrayPtrsPropertyGroup self, std::string const & aName) -> PropertyGroup

        Parameters:
            aName: std::string const &

        """
        return _opensim.ArrayPtrsPropertyGroup_get(self, *args)

    def getLast(self):
        """
        getLast(ArrayPtrsPropertyGroup self) -> PropertyGroup

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::PropertyGroup > const *

        """
        return _opensim.ArrayPtrsPropertyGroup_getLast(self)

    def searchBinary(self, *args):
        """
        searchBinary(ArrayPtrsPropertyGroup self, PropertyGroup aObject, bool aFindFirst=False, int aLo=-1, int aHi=-1) -> int

        Parameters:
            aObject: OpenSim::PropertyGroup const &
            aFindFirst: bool
            aLo: int
            aHi: int

        searchBinary(ArrayPtrsPropertyGroup self, PropertyGroup aObject, bool aFindFirst=False, int aLo=-1) -> int

        Parameters:
            aObject: OpenSim::PropertyGroup const &
            aFindFirst: bool
            aLo: int

        searchBinary(ArrayPtrsPropertyGroup self, PropertyGroup aObject, bool aFindFirst=False) -> int

        Parameters:
            aObject: OpenSim::PropertyGroup const &
            aFindFirst: bool

        searchBinary(ArrayPtrsPropertyGroup self, PropertyGroup aObject) -> int

        Parameters:
            aObject: OpenSim::PropertyGroup const &

        """
        return _opensim.ArrayPtrsPropertyGroup_searchBinary(self, *args)

ArrayPtrsPropertyGroup_swigregister = _opensim.ArrayPtrsPropertyGroup_swigregister
ArrayPtrsPropertyGroup_swigregister(ArrayPtrsPropertyGroup)

class OpenSimObject(_object):
    """Proxy of C++ OpenSim::Object class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, OpenSimObject, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, OpenSimObject, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_OpenSimObject
    __del__ = lambda self : None;
    def clone(self):
        """
        clone(OpenSimObject self) -> OpenSimObject

        Parameters:
            self: OpenSim::Object const *

        """
        return _opensim.OpenSimObject_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(OpenSimObject self) -> std::string const &

        Parameters:
            self: OpenSim::Object const *

        """
        return _opensim.OpenSimObject_getConcreteClassName(self)

    def getDisplayer(self):
        """
        getDisplayer(OpenSimObject self) -> VisibleObject

        Parameters:
            self: OpenSim::Object const *

        """
        return _opensim.OpenSimObject_getDisplayer(self)

    def updDisplayer(self):
        """
        updDisplayer(OpenSimObject self) -> VisibleObject

        Parameters:
            self: OpenSim::Object *

        """
        return _opensim.OpenSimObject_updDisplayer(self)

    def isEqualTo(self, *args):
        """
        isEqualTo(OpenSimObject self, OpenSimObject aObject) -> bool

        Parameters:
            aObject: OpenSim::Object const &

        """
        return _opensim.OpenSimObject_isEqualTo(self, *args)

    def setName(self, *args):
        """
        setName(OpenSimObject self, std::string const & name)

        Parameters:
            name: std::string const &

        """
        return _opensim.OpenSimObject_setName(self, *args)

    def getName(self):
        """
        getName(OpenSimObject self) -> std::string const &

        Parameters:
            self: OpenSim::Object const *

        """
        return _opensim.OpenSimObject_getName(self)

    def setDescription(self, *args):
        """
        setDescription(OpenSimObject self, std::string const & description)

        Parameters:
            description: std::string const &

        """
        return _opensim.OpenSimObject_setDescription(self, *args)

    def getDescription(self):
        """
        getDescription(OpenSimObject self) -> std::string const &

        Parameters:
            self: OpenSim::Object const *

        """
        return _opensim.OpenSimObject_getDescription(self)

    def getAuthors(self):
        """
        getAuthors(OpenSimObject self) -> std::string const &

        Parameters:
            self: OpenSim::Object const *

        """
        return _opensim.OpenSimObject_getAuthors(self)

    def setAuthors(self, *args):
        """
        setAuthors(OpenSimObject self, std::string const & authors)

        Parameters:
            authors: std::string const &

        """
        return _opensim.OpenSimObject_setAuthors(self, *args)

    def getReferences(self):
        """
        getReferences(OpenSimObject self) -> std::string const &

        Parameters:
            self: OpenSim::Object const *

        """
        return _opensim.OpenSimObject_getReferences(self)

    def setReferences(self, *args):
        """
        setReferences(OpenSimObject self, std::string const & references)

        Parameters:
            references: std::string const &

        """
        return _opensim.OpenSimObject_setReferences(self, *args)

    def getNumProperties(self):
        """
        getNumProperties(OpenSimObject self) -> int

        Parameters:
            self: OpenSim::Object const *

        """
        return _opensim.OpenSimObject_getNumProperties(self)

    def getPropertyByIndex(self, *args):
        """
        getPropertyByIndex(OpenSimObject self, int propertyIndex) -> AbstractProperty

        Parameters:
            propertyIndex: int

        """
        return _opensim.OpenSimObject_getPropertyByIndex(self, *args)

    def updPropertyByIndex(self, *args):
        """
        updPropertyByIndex(OpenSimObject self, int propertyIndex) -> AbstractProperty

        Parameters:
            propertyIndex: int

        """
        return _opensim.OpenSimObject_updPropertyByIndex(self, *args)

    def hasProperty(self, *args):
        """
        hasProperty(OpenSimObject self, std::string const & name) -> bool

        Parameters:
            name: std::string const &

        """
        return _opensim.OpenSimObject_hasProperty(self, *args)

    def getPropertyByName(self, *args):
        """
        getPropertyByName(OpenSimObject self, std::string const & name) -> AbstractProperty

        Parameters:
            name: std::string const &

        """
        return _opensim.OpenSimObject_getPropertyByName(self, *args)

    def updPropertyByName(self, *args):
        """
        updPropertyByName(OpenSimObject self, std::string const & name) -> AbstractProperty

        Parameters:
            name: std::string const &

        """
        return _opensim.OpenSimObject_updPropertyByName(self, *args)

    def setObjectIsUpToDateWithProperties(self):
        """
        setObjectIsUpToDateWithProperties(OpenSimObject self)

        Parameters:
            self: OpenSim::Object *

        """
        return _opensim.OpenSimObject_setObjectIsUpToDateWithProperties(self)

    def isObjectUpToDateWithProperties(self):
        """
        isObjectUpToDateWithProperties(OpenSimObject self) -> bool

        Parameters:
            self: OpenSim::Object const *

        """
        return _opensim.OpenSimObject_isObjectUpToDateWithProperties(self)

    def PrintPropertyInfo(*args):
        """
        PrintPropertyInfo(std::ostream & os, std::string const & classNameDotPropertyName)

        Parameters:
            os: std::ostream &
            classNameDotPropertyName: std::string const &

        PrintPropertyInfo(std::ostream & os, std::string const & className, std::string const & propertyName)

        Parameters:
            os: std::ostream &
            className: std::string const &
            propertyName: std::string const &

        """
        return _opensim.OpenSimObject_PrintPropertyInfo(*args)

    if _newclass:PrintPropertyInfo = staticmethod(PrintPropertyInfo)
    __swig_getmethods__["PrintPropertyInfo"] = lambda x: PrintPropertyInfo
    def registerType(*args):
        """
        registerType(OpenSimObject defaultObject)

        Parameters:
            defaultObject: OpenSim::Object const &

        """
        return _opensim.OpenSimObject_registerType(*args)

    if _newclass:registerType = staticmethod(registerType)
    __swig_getmethods__["registerType"] = lambda x: registerType
    def renameType(*args):
        """
        renameType(std::string const & oldTypeName, std::string const & newTypeName)

        Parameters:
            oldTypeName: std::string const &
            newTypeName: std::string const &

        """
        return _opensim.OpenSimObject_renameType(*args)

    if _newclass:renameType = staticmethod(renameType)
    __swig_getmethods__["renameType"] = lambda x: renameType
    def getDefaultInstanceOfType(*args):
        """
        getDefaultInstanceOfType(std::string const & concreteClassName) -> OpenSimObject

        Parameters:
            concreteClassName: std::string const &

        """
        return _opensim.OpenSimObject_getDefaultInstanceOfType(*args)

    if _newclass:getDefaultInstanceOfType = staticmethod(getDefaultInstanceOfType)
    __swig_getmethods__["getDefaultInstanceOfType"] = lambda x: getDefaultInstanceOfType
    def newInstanceOfType(*args):
        """
        newInstanceOfType(std::string const & concreteClassName) -> OpenSimObject

        Parameters:
            concreteClassName: std::string const &

        """
        return _opensim.OpenSimObject_newInstanceOfType(*args)

    if _newclass:newInstanceOfType = staticmethod(newInstanceOfType)
    __swig_getmethods__["newInstanceOfType"] = lambda x: newInstanceOfType
    def getRegisteredTypenames(*args):
        """
        getRegisteredTypenames(ArrayStr typeNames)

        Parameters:
            typeNames: OpenSim::Array< std::string > &

        """
        return _opensim.OpenSimObject_getRegisteredTypenames(*args)

    if _newclass:getRegisteredTypenames = staticmethod(getRegisteredTypenames)
    __swig_getmethods__["getRegisteredTypenames"] = lambda x: getRegisteredTypenames
    def makeObjectFromFile(*args):
        """
        makeObjectFromFile(std::string const & fileName) -> OpenSimObject

        Parameters:
            fileName: std::string const &

        """
        return _opensim.OpenSimObject_makeObjectFromFile(*args)

    if _newclass:makeObjectFromFile = staticmethod(makeObjectFromFile)
    __swig_getmethods__["makeObjectFromFile"] = lambda x: makeObjectFromFile
    def readObjectFromXMLNodeOrFile(self, *args):
        """
        readObjectFromXMLNodeOrFile(OpenSimObject self, SimTK::Xml::Element & objectElement, int versionNumber)

        Parameters:
            objectElement: SimTK::Xml::Element &
            versionNumber: int

        """
        return _opensim.OpenSimObject_readObjectFromXMLNodeOrFile(self, *args)

    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(OpenSimObject self, SimTK::Xml::Element & objectElement, int versionNumber)

        Parameters:
            objectElement: SimTK::Xml::Element &
            versionNumber: int

        """
        return _opensim.OpenSimObject_updateFromXMLNode(self, *args)

    def updateXMLNode(self, *args):
        """
        updateXMLNode(OpenSimObject self, SimTK::Xml::Element & parent)

        Parameters:
            parent: SimTK::Xml::Element &

        """
        return _opensim.OpenSimObject_updateXMLNode(self, *args)

    def getInlined(self):
        """
        getInlined(OpenSimObject self) -> bool

        Parameters:
            self: OpenSim::Object const *

        """
        return _opensim.OpenSimObject_getInlined(self)

    def setInlined(self, *args):
        """
        setInlined(OpenSimObject self, bool aInlined, std::string const & aFileName="")

        Parameters:
            aInlined: bool
            aFileName: std::string const &

        setInlined(OpenSimObject self, bool aInlined)

        Parameters:
            aInlined: bool

        """
        return _opensim.OpenSimObject_setInlined(self, *args)

    def getDocumentFileName(self):
        """
        getDocumentFileName(OpenSimObject self) -> std::string

        Parameters:
            self: OpenSim::Object const *

        """
        return _opensim.OpenSimObject_getDocumentFileName(self)

    def setAllPropertiesUseDefault(self, *args):
        """
        setAllPropertiesUseDefault(OpenSimObject self, bool aUseDefault)

        Parameters:
            aUseDefault: bool

        """
        return _opensim.OpenSimObject_setAllPropertiesUseDefault(self, *args)

    def printToXML(self, *args):
        """
        printToXML(OpenSimObject self, std::string const & fileName) -> bool

        Parameters:
            fileName: std::string const &

        """
        return _opensim.OpenSimObject_printToXML(self, *args)

    def dump(self, dumpName=False):
        """
        dump(OpenSimObject self, bool dumpName=False) -> std::string

        Parameters:
            dumpName: bool

        dump(OpenSimObject self) -> std::string

        Parameters:
            self: OpenSim::Object *

        """
        return _opensim.OpenSimObject_dump(self, dumpName)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.OpenSimObject_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def setSerializeAllDefaults(*args):
        """
        setSerializeAllDefaults(bool shouldSerializeDefaults)

        Parameters:
            shouldSerializeDefaults: bool

        """
        return _opensim.OpenSimObject_setSerializeAllDefaults(*args)

    if _newclass:setSerializeAllDefaults = staticmethod(setSerializeAllDefaults)
    __swig_getmethods__["setSerializeAllDefaults"] = lambda x: setSerializeAllDefaults
    def getSerializeAllDefaults():
        """getSerializeAllDefaults() -> bool"""
        return _opensim.OpenSimObject_getSerializeAllDefaults()

    if _newclass:getSerializeAllDefaults = staticmethod(getSerializeAllDefaults)
    __swig_getmethods__["getSerializeAllDefaults"] = lambda x: getSerializeAllDefaults
    def clearObjectIsUpToDateWithProperties(self):
        """
        clearObjectIsUpToDateWithProperties(OpenSimObject self)

        Parameters:
            self: OpenSim::Object *

        """
        return _opensim.OpenSimObject_clearObjectIsUpToDateWithProperties(self)

    def isKindOf(*args):
        """
        isKindOf(char const * type) -> bool

        Parameters:
            type: char const *

        """
        return _opensim.OpenSimObject_isKindOf(*args)

    if _newclass:isKindOf = staticmethod(isKindOf)
    __swig_getmethods__["isKindOf"] = lambda x: isKindOf
    def isA(self, *args):
        """
        isA(OpenSimObject self, char const * type) -> bool

        Parameters:
            type: char const *

        """
        return _opensim.OpenSimObject_isA(self, *args)

    def setDebugLevel(*args):
        """
        setDebugLevel(int newLevel)

        Parameters:
            newLevel: int

        """
        return _opensim.OpenSimObject_setDebugLevel(*args)

    if _newclass:setDebugLevel = staticmethod(setDebugLevel)
    __swig_getmethods__["setDebugLevel"] = lambda x: setDebugLevel
    def getDebugLevel():
        """getDebugLevel() -> int"""
        return _opensim.OpenSimObject_getDebugLevel()

    if _newclass:getDebugLevel = staticmethod(getDebugLevel)
    __swig_getmethods__["getDebugLevel"] = lambda x: getDebugLevel
    def toString(self):
        """
        toString(OpenSimObject self) -> std::string const &

        Parameters:
            self: OpenSim::Object const *

        """
        return _opensim.OpenSimObject_toString(self)

    def SafeCopy(*args):
        """
        SafeCopy(OpenSimObject aObject) -> OpenSimObject

        Parameters:
            aObject: OpenSim::Object const *

        """
        return _opensim.OpenSimObject_SafeCopy(*args)

    if _newclass:SafeCopy = staticmethod(SafeCopy)
    __swig_getmethods__["SafeCopy"] = lambda x: SafeCopy
    def RegisterType(*args):
        """
        RegisterType(OpenSimObject defaultObject)

        Parameters:
            defaultObject: OpenSim::Object const &

        """
        return _opensim.OpenSimObject_RegisterType(*args)

    if _newclass:RegisterType = staticmethod(RegisterType)
    __swig_getmethods__["RegisterType"] = lambda x: RegisterType
    def RenameType(*args):
        """
        RenameType(std::string const & oldName, std::string const & newName)

        Parameters:
            oldName: std::string const &
            newName: std::string const &

        """
        return _opensim.OpenSimObject_RenameType(*args)

    if _newclass:RenameType = staticmethod(RenameType)
    __swig_getmethods__["RenameType"] = lambda x: RenameType
    def _markAdopted(self):
        if self.this and self.thisown:
            self.thisown = False

OpenSimObject_swigregister = _opensim.OpenSimObject_swigregister
OpenSimObject_swigregister(OpenSimObject)
ObjectDEFAULT_NAME = cvar.ObjectDEFAULT_NAME

def OpenSimObject_PrintPropertyInfo(*args):
  """
    PrintPropertyInfo(std::ostream & os, std::string const & classNameDotPropertyName)

    Parameters:
        os: std::ostream &
        classNameDotPropertyName: std::string const &

    OpenSimObject_PrintPropertyInfo(std::ostream & os, std::string const & className, std::string const & propertyName)

    Parameters:
        os: std::ostream &
        className: std::string const &
        propertyName: std::string const &

    """
  return _opensim.OpenSimObject_PrintPropertyInfo(*args)

def OpenSimObject_registerType(*args):
  """
    OpenSimObject_registerType(OpenSimObject defaultObject)

    Parameters:
        defaultObject: OpenSim::Object const &

    """
  return _opensim.OpenSimObject_registerType(*args)

def OpenSimObject_renameType(*args):
  """
    OpenSimObject_renameType(std::string const & oldTypeName, std::string const & newTypeName)

    Parameters:
        oldTypeName: std::string const &
        newTypeName: std::string const &

    """
  return _opensim.OpenSimObject_renameType(*args)

def OpenSimObject_getDefaultInstanceOfType(*args):
  """
    OpenSimObject_getDefaultInstanceOfType(std::string const & concreteClassName) -> OpenSimObject

    Parameters:
        concreteClassName: std::string const &

    """
  return _opensim.OpenSimObject_getDefaultInstanceOfType(*args)

def OpenSimObject_newInstanceOfType(*args):
  """
    OpenSimObject_newInstanceOfType(std::string const & concreteClassName) -> OpenSimObject

    Parameters:
        concreteClassName: std::string const &

    """
  return _opensim.OpenSimObject_newInstanceOfType(*args)

def OpenSimObject_getRegisteredTypenames(*args):
  """
    OpenSimObject_getRegisteredTypenames(ArrayStr typeNames)

    Parameters:
        typeNames: OpenSim::Array< std::string > &

    """
  return _opensim.OpenSimObject_getRegisteredTypenames(*args)

def OpenSimObject_makeObjectFromFile(*args):
  """
    OpenSimObject_makeObjectFromFile(std::string const & fileName) -> OpenSimObject

    Parameters:
        fileName: std::string const &

    """
  return _opensim.OpenSimObject_makeObjectFromFile(*args)

def OpenSimObject_getClassName():
  """OpenSimObject_getClassName() -> std::string const &"""
  return _opensim.OpenSimObject_getClassName()

def OpenSimObject_setSerializeAllDefaults(*args):
  """
    OpenSimObject_setSerializeAllDefaults(bool shouldSerializeDefaults)

    Parameters:
        shouldSerializeDefaults: bool

    """
  return _opensim.OpenSimObject_setSerializeAllDefaults(*args)

def OpenSimObject_getSerializeAllDefaults():
  """OpenSimObject_getSerializeAllDefaults() -> bool"""
  return _opensim.OpenSimObject_getSerializeAllDefaults()

def OpenSimObject_isKindOf(*args):
  """
    OpenSimObject_isKindOf(char const * type) -> bool

    Parameters:
        type: char const *

    """
  return _opensim.OpenSimObject_isKindOf(*args)

def OpenSimObject_setDebugLevel(*args):
  """
    OpenSimObject_setDebugLevel(int newLevel)

    Parameters:
        newLevel: int

    """
  return _opensim.OpenSimObject_setDebugLevel(*args)

def OpenSimObject_getDebugLevel():
  """OpenSimObject_getDebugLevel() -> int"""
  return _opensim.OpenSimObject_getDebugLevel()

def OpenSimObject_SafeCopy(*args):
  """
    OpenSimObject_SafeCopy(OpenSimObject aObject) -> OpenSimObject

    Parameters:
        aObject: OpenSim::Object const *

    """
  return _opensim.OpenSimObject_SafeCopy(*args)

def OpenSimObject_RegisterType(*args):
  """
    OpenSimObject_RegisterType(OpenSimObject defaultObject)

    Parameters:
        defaultObject: OpenSim::Object const &

    """
  return _opensim.OpenSimObject_RegisterType(*args)

def OpenSimObject_RenameType(*args):
  """
    OpenSimObject_RenameType(std::string const & oldName, std::string const & newName)

    Parameters:
        oldName: std::string const &
        newName: std::string const &

    """
  return _opensim.OpenSimObject_RenameType(*args)

class ObjectGroup(OpenSimObject):
    """Proxy of C++ OpenSim::ObjectGroup class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ObjectGroup, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ObjectGroup, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ObjectGroup

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ObjectGroup_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ObjectGroup self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ObjectGroup_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ObjectGroup_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ObjectGroup self) -> ObjectGroup

        Parameters:
            self: OpenSim::ObjectGroup const *

        """
        return _opensim.ObjectGroup_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ObjectGroup self) -> std::string const &

        Parameters:
            self: OpenSim::ObjectGroup const *

        """
        return _opensim.ObjectGroup_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ObjectGroup self) -> ObjectGroup
        __init__(OpenSim::ObjectGroup self, std::string const & aName) -> ObjectGroup

        Parameters:
            aName: std::string const &

        __init__(OpenSim::ObjectGroup self, ObjectGroup aGroup) -> ObjectGroup

        Parameters:
            aGroup: OpenSim::ObjectGroup const &

        """
        this = _opensim.new_ObjectGroup(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ObjectGroup
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(ObjectGroup self, ObjectGroup aGroup)

        Parameters:
            aGroup: OpenSim::ObjectGroup const &

        """
        return _opensim.ObjectGroup_copyData(self, *args)

    def contains(self, *args):
        """
        contains(ObjectGroup self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.ObjectGroup_contains(self, *args)

    def add(self, *args):
        """
        add(ObjectGroup self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object *

        """
        return _opensim.ObjectGroup_add(self, *args)

    def remove(self, *args):
        """
        remove(ObjectGroup self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object const *

        """
        return _opensim.ObjectGroup_remove(self, *args)

    def replace(self, *args):
        """
        replace(ObjectGroup self, OpenSimObject aOldObject, OpenSimObject aNewObject)

        Parameters:
            aOldObject: OpenSim::Object const *
            aNewObject: OpenSim::Object *

        """
        return _opensim.ObjectGroup_replace(self, *args)

    def setupGroup(self, *args):
        """
        setupGroup(ObjectGroup self, ArrayPtrsObj aObjects)

        Parameters:
            aObjects: OpenSim::ArrayPtrs< OpenSim::Object > &

        """
        return _opensim.ObjectGroup_setupGroup(self, *args)

    def getMembers(self):
        """
        getMembers(ObjectGroup self) -> ArrayObjPtr

        Parameters:
            self: OpenSim::ObjectGroup const *

        """
        return _opensim.ObjectGroup_getMembers(self)

ObjectGroup_swigregister = _opensim.ObjectGroup_swigregister
ObjectGroup_swigregister(ObjectGroup)

def ObjectGroup_safeDownCast(*args):
  """
    ObjectGroup_safeDownCast(OpenSimObject obj) -> ObjectGroup

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ObjectGroup_safeDownCast(*args)

def ObjectGroup_getClassName():
  """ObjectGroup_getClassName() -> std::string const &"""
  return _opensim.ObjectGroup_getClassName()

class Geometry(_object):
    """Proxy of C++ OpenSim::Geometry class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Geometry, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Geometry, name)
    __repr__ = _swig_repr
    _None = _opensim.Geometry__None
    Sphere = _opensim.Geometry_Sphere
    Cylinder = _opensim.Geometry_Cylinder
    Cone = _opensim.Geometry_Cone
    Ellipsoid = _opensim.Geometry_Ellipsoid
    Torus = _opensim.Geometry_Torus
    Line = _opensim.Geometry_Line
    Arrow = _opensim.Geometry_Arrow
    def __init__(self): 
        """__init__(OpenSim::Geometry self) -> Geometry"""
        this = _opensim.new_Geometry()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_Geometry
    __del__ = lambda self : None;
    def getShape(self):
        """
        getShape(Geometry self) -> OpenSim::Geometry::GeometryType const

        Parameters:
            self: OpenSim::Geometry const *

        """
        return _opensim.Geometry_getShape(self)

    def isAnalytic(self):
        """
        isAnalytic(Geometry self) -> bool

        Parameters:
            self: OpenSim::Geometry const *

        """
        return _opensim.Geometry_isAnalytic(self)

    def setFixed(self, *args):
        """
        setFixed(Geometry self, bool aFixed)

        Parameters:
            aFixed: bool

        """
        return _opensim.Geometry_setFixed(self, *args)

    def getFixed(self):
        """
        getFixed(Geometry self) -> bool

        Parameters:
            self: OpenSim::Geometry const *

        """
        return _opensim.Geometry_getFixed(self)

Geometry_swigregister = _opensim.Geometry_swigregister
Geometry_swigregister(Geometry)

class LineGeometry(Geometry):
    """Proxy of C++ OpenSim::LineGeometry class"""
    __swig_setmethods__ = {}
    for _s in [Geometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, LineGeometry, name, value)
    __swig_getmethods__ = {}
    for _s in [Geometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, LineGeometry, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(OpenSim::LineGeometry self, Vec3 aPoint1, Vec3 aPoint2) -> LineGeometry

        Parameters:
            aPoint1: SimTK::Vec3 &
            aPoint2: SimTK::Vec3 &

        __init__(OpenSim::LineGeometry self) -> LineGeometry
        """
        this = _opensim.new_LineGeometry(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_LineGeometry
    __del__ = lambda self : None;
    def getPoints(self, *args):
        """
        getPoints(LineGeometry self, Vec3 rPoint1, Vec3 rPoint2)

        Parameters:
            rPoint1: SimTK::Vec3 &
            rPoint2: SimTK::Vec3 &

        getPoints(LineGeometry self, double [] rPoint1, double [] rPoint2)

        Parameters:
            rPoint1: double []
            rPoint2: double []

        """
        return _opensim.LineGeometry_getPoints(self, *args)

    def setPoints(self, *args):
        """
        setPoints(LineGeometry self, Vec3 aPoint1, Vec3 aPoint2)

        Parameters:
            aPoint1: SimTK::Vec3 &
            aPoint2: SimTK::Vec3 &

        setPoints(LineGeometry self, double [] aPoint1, double [] aPoint2)

        Parameters:
            aPoint1: double []
            aPoint2: double []

        """
        return _opensim.LineGeometry_setPoints(self, *args)

LineGeometry_swigregister = _opensim.LineGeometry_swigregister
LineGeometry_swigregister(LineGeometry)

class ArrowGeometry(LineGeometry):
    """Proxy of C++ OpenSim::ArrowGeometry class"""
    __swig_setmethods__ = {}
    for _s in [LineGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrowGeometry, name, value)
    __swig_getmethods__ = {}
    for _s in [LineGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ArrowGeometry, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(OpenSim::ArrowGeometry self, Vec3 aPoint1, Vec3 aUnitDirTo, double aLength) -> ArrowGeometry

        Parameters:
            aPoint1: SimTK::Vec3 &
            aUnitDirTo: SimTK::Vec3 &
            aLength: double

        """
        this = _opensim.new_ArrowGeometry(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ArrowGeometry
    __del__ = lambda self : None;
ArrowGeometry_swigregister = _opensim.ArrowGeometry_swigregister
ArrowGeometry_swigregister(ArrowGeometry)

class AnalyticGeometry(Geometry):
    """Proxy of C++ OpenSim::AnalyticGeometry class"""
    __swig_setmethods__ = {}
    for _s in [Geometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, AnalyticGeometry, name, value)
    __swig_getmethods__ = {}
    for _s in [Geometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, AnalyticGeometry, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(OpenSim::AnalyticGeometry self, OpenSim::Geometry::GeometryType aGeometricType) -> AnalyticGeometry

        Parameters:
            aGeometricType: enum OpenSim::Geometry::GeometryType

        """
        this = _opensim.new_AnalyticGeometry(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_AnalyticGeometry
    __del__ = lambda self : None;
    def setQuadrants(self, *args):
        """
        setQuadrants(AnalyticGeometry self, bool const [6] quadrants)

        Parameters:
            quadrants: bool const [6]

        """
        return _opensim.AnalyticGeometry_setQuadrants(self, *args)

    def getQuadrants(self, *args):
        """
        getQuadrants(AnalyticGeometry self, bool [6] quadrants)

        Parameters:
            quadrants: bool [6]

        """
        return _opensim.AnalyticGeometry_getQuadrants(self, *args)

    def isPiece(self):
        """
        isPiece(AnalyticGeometry self) -> bool const

        Parameters:
            self: OpenSim::AnalyticGeometry const *

        """
        return _opensim.AnalyticGeometry_isPiece(self)

AnalyticGeometry_swigregister = _opensim.AnalyticGeometry_swigregister
AnalyticGeometry_swigregister(AnalyticGeometry)

class AnalyticSphere(AnalyticGeometry):
    """Proxy of C++ OpenSim::AnalyticSphere class"""
    __swig_setmethods__ = {}
    for _s in [AnalyticGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, AnalyticSphere, name, value)
    __swig_getmethods__ = {}
    for _s in [AnalyticGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, AnalyticSphere, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(OpenSim::AnalyticSphere self) -> AnalyticSphere
        __init__(OpenSim::AnalyticSphere self, double radius) -> AnalyticSphere

        Parameters:
            radius: double

        """
        this = _opensim.new_AnalyticSphere(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_AnalyticSphere
    __del__ = lambda self : None;
    def getRadius(self):
        """
        getRadius(AnalyticSphere self) -> double const &

        Parameters:
            self: OpenSim::AnalyticSphere const *

        """
        return _opensim.AnalyticSphere_getRadius(self)

    def setSphereRadius(self, *args):
        """
        setSphereRadius(AnalyticSphere self, double radius)

        Parameters:
            radius: double

        """
        return _opensim.AnalyticSphere_setSphereRadius(self, *args)

    def createSphere(*args):
        """
        createSphere(double radius) -> AnalyticGeometry

        Parameters:
            radius: double

        """
        return _opensim.AnalyticSphere_createSphere(*args)

    if _newclass:createSphere = staticmethod(createSphere)
    __swig_getmethods__["createSphere"] = lambda x: createSphere
AnalyticSphere_swigregister = _opensim.AnalyticSphere_swigregister
AnalyticSphere_swigregister(AnalyticSphere)

def AnalyticSphere_createSphere(*args):
  """
    AnalyticSphere_createSphere(double radius) -> AnalyticGeometry

    Parameters:
        radius: double

    """
  return _opensim.AnalyticSphere_createSphere(*args)

class AnalyticEllipsoid(AnalyticGeometry):
    """Proxy of C++ OpenSim::AnalyticEllipsoid class"""
    __swig_setmethods__ = {}
    for _s in [AnalyticGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, AnalyticEllipsoid, name, value)
    __swig_getmethods__ = {}
    for _s in [AnalyticGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, AnalyticEllipsoid, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(OpenSim::AnalyticEllipsoid self) -> AnalyticEllipsoid
        __init__(OpenSim::AnalyticEllipsoid self, double radius1, double radius2, double radius3) -> AnalyticEllipsoid

        Parameters:
            radius1: double
            radius2: double
            radius3: double

        """
        this = _opensim.new_AnalyticEllipsoid(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_AnalyticEllipsoid
    __del__ = lambda self : None;
    def setEllipsoidParams(self, *args):
        """
        setEllipsoidParams(AnalyticEllipsoid self, double radius1, double radius2, double radius3)

        Parameters:
            radius1: double
            radius2: double
            radius3: double

        """
        return _opensim.AnalyticEllipsoid_setEllipsoidParams(self, *args)

    def getEllipsoidParams(self, *args):
        """
        getEllipsoidParams(AnalyticEllipsoid self, double [] params)

        Parameters:
            params: double []

        """
        return _opensim.AnalyticEllipsoid_getEllipsoidParams(self, *args)

AnalyticEllipsoid_swigregister = _opensim.AnalyticEllipsoid_swigregister
AnalyticEllipsoid_swigregister(AnalyticEllipsoid)

class AnalyticCylinder(AnalyticGeometry):
    """Proxy of C++ OpenSim::AnalyticCylinder class"""
    __swig_setmethods__ = {}
    for _s in [AnalyticGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, AnalyticCylinder, name, value)
    __swig_getmethods__ = {}
    for _s in [AnalyticGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, AnalyticCylinder, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(OpenSim::AnalyticCylinder self) -> AnalyticCylinder
        __init__(OpenSim::AnalyticCylinder self, double const radius, double const height) -> AnalyticCylinder

        Parameters:
            radius: double const
            height: double const

        """
        this = _opensim.new_AnalyticCylinder(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_AnalyticCylinder
    __del__ = lambda self : None;
    def getCylinderParams(self, *args):
        """
        getCylinderParams(AnalyticCylinder self, double [] params)

        Parameters:
            params: double []

        """
        return _opensim.AnalyticCylinder_getCylinderParams(self, *args)

AnalyticCylinder_swigregister = _opensim.AnalyticCylinder_swigregister
AnalyticCylinder_swigregister(AnalyticCylinder)

class AnalyticTorus(AnalyticGeometry):
    """Proxy of C++ OpenSim::AnalyticTorus class"""
    __swig_setmethods__ = {}
    for _s in [AnalyticGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, AnalyticTorus, name, value)
    __swig_getmethods__ = {}
    for _s in [AnalyticGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, AnalyticTorus, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(OpenSim::AnalyticTorus self) -> AnalyticTorus
        __init__(OpenSim::AnalyticTorus self, double const ringRadius, double const crossSectionRadius) -> AnalyticTorus

        Parameters:
            ringRadius: double const
            crossSectionRadius: double const

        """
        this = _opensim.new_AnalyticTorus(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_AnalyticTorus
    __del__ = lambda self : None;
    def getTorusParams(self, *args):
        """
        getTorusParams(AnalyticTorus self, double [] params)

        Parameters:
            params: double []

        """
        return _opensim.AnalyticTorus_getTorusParams(self, *args)

AnalyticTorus_swigregister = _opensim.AnalyticTorus_swigregister
AnalyticTorus_swigregister(AnalyticTorus)

class PolyhedralGeometry(Geometry):
    """Proxy of C++ OpenSim::PolyhedralGeometry class"""
    __swig_setmethods__ = {}
    for _s in [Geometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PolyhedralGeometry, name, value)
    __swig_getmethods__ = {}
    for _s in [Geometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PolyhedralGeometry, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(OpenSim::PolyhedralGeometry self, std::string const & geomFile) -> PolyhedralGeometry

        Parameters:
            geomFile: std::string const &

        """
        this = _opensim.new_PolyhedralGeometry(*args)
        try: self.this.append(this)
        except: self.this = this
    def getGeometryFilename(self):
        """
        getGeometryFilename(PolyhedralGeometry self) -> std::string const &

        Parameters:
            self: OpenSim::PolyhedralGeometry const *

        """
        return _opensim.PolyhedralGeometry_getGeometryFilename(self)

    __swig_destroy__ = _opensim.delete_PolyhedralGeometry
    __del__ = lambda self : None;
PolyhedralGeometry_swigregister = _opensim.PolyhedralGeometry_swigregister
PolyhedralGeometry_swigregister(PolyhedralGeometry)

class DisplayGeometry(OpenSimObject):
    """Proxy of C++ OpenSim::DisplayGeometry class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, DisplayGeometry, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, DisplayGeometry, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> DisplayGeometry

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.DisplayGeometry_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(DisplayGeometry self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.DisplayGeometry_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.DisplayGeometry_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(DisplayGeometry self) -> DisplayGeometry

        Parameters:
            self: OpenSim::DisplayGeometry const *

        """
        return _opensim.DisplayGeometry_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(DisplayGeometry self) -> std::string const &

        Parameters:
            self: OpenSim::DisplayGeometry const *

        """
        return _opensim.DisplayGeometry_getConcreteClassName(self)

    _None = _opensim.DisplayGeometry__None
    WireFrame = _opensim.DisplayGeometry_WireFrame
    SolidFill = _opensim.DisplayGeometry_SolidFill
    FlatShaded = _opensim.DisplayGeometry_FlatShaded
    GouraudShaded = _opensim.DisplayGeometry_GouraudShaded
    def __init__(self, *args): 
        """
        __init__(OpenSim::DisplayGeometry self) -> DisplayGeometry
        __init__(OpenSim::DisplayGeometry self, std::string const & aFileName) -> DisplayGeometry

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::DisplayGeometry self, DisplayGeometry aDisplayGeometry) -> DisplayGeometry

        Parameters:
            aDisplayGeometry: OpenSim::DisplayGeometry const &

        """
        this = _opensim.new_DisplayGeometry(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_DisplayGeometry
    __del__ = lambda self : None;
    def getGeometryFile(self):
        """
        getGeometryFile(DisplayGeometry self) -> std::string const &

        Parameters:
            self: OpenSim::DisplayGeometry const *

        """
        return _opensim.DisplayGeometry_getGeometryFile(self)

    def setGeometryFile(self, *args):
        """
        setGeometryFile(DisplayGeometry self, std::string const & aGeometryFile)

        Parameters:
            aGeometryFile: std::string const &

        """
        return _opensim.DisplayGeometry_setGeometryFile(self, *args)

    def getColor(self, *args):
        """
        getColor(DisplayGeometry self) -> Vec3
        getColor(DisplayGeometry self, double [3] aColor)

        Parameters:
            aColor: double [3]

        """
        return _opensim.DisplayGeometry_getColor(self, *args)

    def setColor(self, *args):
        """
        setColor(DisplayGeometry self, Vec3 aColor)

        Parameters:
            aColor: SimTK::Vec3 const &

        setColor(DisplayGeometry self, double [3] aColor)

        Parameters:
            aColor: double [3]

        """
        return _opensim.DisplayGeometry_setColor(self, *args)

    def getTextureFile(self):
        """
        getTextureFile(DisplayGeometry self) -> std::string const &

        Parameters:
            self: OpenSim::DisplayGeometry const *

        """
        return _opensim.DisplayGeometry_getTextureFile(self)

    def setTextureFile(self, *args):
        """
        setTextureFile(DisplayGeometry self, std::string const & aTextureFile)

        Parameters:
            aTextureFile: std::string const &

        """
        return _opensim.DisplayGeometry_setTextureFile(self, *args)

    def getTransform(self):
        """
        getTransform(DisplayGeometry self) -> Transform

        Parameters:
            self: OpenSim::DisplayGeometry const *

        """
        return _opensim.DisplayGeometry_getTransform(self)

    def setTransform(self, *args):
        """
        setTransform(DisplayGeometry self, Transform aTransform)

        Parameters:
            aTransform: SimTK::Transform const &

        """
        return _opensim.DisplayGeometry_setTransform(self, *args)

    def setRotationsAndTRanslations(self, *args):
        """
        setRotationsAndTRanslations(DisplayGeometry self, double [] aArray)

        Parameters:
            aArray: double []

        """
        return _opensim.DisplayGeometry_setRotationsAndTRanslations(self, *args)

    def getRotationsAndTranslationsAsArray6(self, *args):
        """
        getRotationsAndTranslationsAsArray6(DisplayGeometry self, double [] aArray)

        Parameters:
            aArray: double []

        """
        return _opensim.DisplayGeometry_getRotationsAndTranslationsAsArray6(self, *args)

    def getScaleFactors(self, *args):
        """
        getScaleFactors(DisplayGeometry self) -> Vec3
        getScaleFactors(DisplayGeometry self, double [] aScaleFactors)

        Parameters:
            aScaleFactors: double []

        """
        return _opensim.DisplayGeometry_getScaleFactors(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(DisplayGeometry self, double const [] aScaleFactors)

        Parameters:
            aScaleFactors: double const []

        setScaleFactors(DisplayGeometry self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &

        """
        return _opensim.DisplayGeometry_setScaleFactors(self, *args)

    def getDisplayPreference(self):
        """
        getDisplayPreference(DisplayGeometry self) -> OpenSim::DisplayGeometry::DisplayPreference

        Parameters:
            self: OpenSim::DisplayGeometry const *

        """
        return _opensim.DisplayGeometry_getDisplayPreference(self)

    def setDisplayPreference(self, *args):
        """
        setDisplayPreference(DisplayGeometry self, OpenSim::DisplayGeometry::DisplayPreference const & aPreference)

        Parameters:
            aPreference: OpenSim::DisplayGeometry::DisplayPreference const &

        """
        return _opensim.DisplayGeometry_setDisplayPreference(self, *args)

    def getOpacity(self):
        """
        getOpacity(DisplayGeometry self) -> double

        Parameters:
            self: OpenSim::DisplayGeometry const *

        """
        return _opensim.DisplayGeometry_getOpacity(self)

    def setOpacity(self, *args):
        """
        setOpacity(DisplayGeometry self, double const & aOpacity)

        Parameters:
            aOpacity: double const &

        """
        return _opensim.DisplayGeometry_setOpacity(self, *args)

DisplayGeometry_swigregister = _opensim.DisplayGeometry_swigregister
DisplayGeometry_swigregister(DisplayGeometry)

def DisplayGeometry_safeDownCast(*args):
  """
    DisplayGeometry_safeDownCast(OpenSimObject obj) -> DisplayGeometry

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.DisplayGeometry_safeDownCast(*args)

def DisplayGeometry_getClassName():
  """DisplayGeometry_getClassName() -> std::string const &"""
  return _opensim.DisplayGeometry_getClassName()

class SetGeometry(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::DisplayGeometry)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetGeometry, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetGeometry, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetGeometry

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetGeometry_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetGeometry self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetGeometry_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetGeometry_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetGeometry self) -> SetGeometry

        Parameters:
            self: OpenSim::Set< OpenSim::DisplayGeometry > const *

        """
        return _opensim.SetGeometry_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetGeometry self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::DisplayGeometry > const *

        """
        return _opensim.SetGeometry_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetGeometry
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::DisplayGeometry)> self) -> SetGeometry
        __init__(OpenSim::Set<(OpenSim::DisplayGeometry)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetGeometry

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::DisplayGeometry)> self, std::string const & aFileName) -> SetGeometry

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::DisplayGeometry)> self, SetGeometry aSet) -> SetGeometry

        Parameters:
            aSet: OpenSim::Set< OpenSim::DisplayGeometry > const &

        """
        this = _opensim.new_SetGeometry(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetGeometry self)

        Parameters:
            self: OpenSim::Set< OpenSim::DisplayGeometry > *

        """
        return _opensim.SetGeometry_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetGeometry self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetGeometry_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetGeometry self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetGeometry_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetGeometry self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::DisplayGeometry > const *

        """
        return _opensim.SetGeometry_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetGeometry self, DisplayGeometry aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::DisplayGeometry const *
            aStartIndex: int

        getIndex(SetGeometry self, DisplayGeometry aObject) -> int

        Parameters:
            aObject: OpenSim::DisplayGeometry const *

        getIndex(SetGeometry self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetGeometry self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetGeometry_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetGeometry self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetGeometry_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetGeometry self, DisplayGeometry aObject) -> bool

        Parameters:
            aObject: OpenSim::DisplayGeometry *

        """
        return _opensim.SetGeometry_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetGeometry self, DisplayGeometry aObject) -> bool

        Parameters:
            aObject: OpenSim::DisplayGeometry const &

        """
        return _opensim.SetGeometry_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetGeometry self, int aIndex, DisplayGeometry aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::DisplayGeometry *

        """
        return _opensim.SetGeometry_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetGeometry self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetGeometry self, DisplayGeometry aObject) -> bool

        Parameters:
            aObject: OpenSim::DisplayGeometry const *

        """
        return _opensim.SetGeometry_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetGeometry self)

        Parameters:
            self: OpenSim::Set< OpenSim::DisplayGeometry > *

        """
        return _opensim.SetGeometry_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetGeometry self, int aIndex, DisplayGeometry aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::DisplayGeometry *
            preserveGroups: bool

        set(SetGeometry self, int aIndex, DisplayGeometry aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::DisplayGeometry *

        """
        return _opensim.SetGeometry_set(self, *args)

    def get(self, *args):
        """
        get(SetGeometry self, int aIndex) -> DisplayGeometry

        Parameters:
            aIndex: int

        get(SetGeometry self, std::string const & aName) -> DisplayGeometry

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetGeometry_get(self, *args)

    def contains(self, *args):
        """
        contains(SetGeometry self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetGeometry_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetGeometry self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetGeometry_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetGeometry self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::DisplayGeometry > const *

        """
        return _opensim.SetGeometry_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetGeometry self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetGeometry_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetGeometry self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetGeometry_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetGeometry self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetGeometry_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetGeometry self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetGeometry_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetGeometry self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetGeometry_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetGeometry self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetGeometry self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetGeometry_getGroup(self, *args)

SetGeometry_swigregister = _opensim.SetGeometry_swigregister
SetGeometry_swigregister(SetGeometry)

def SetGeometry_safeDownCast(*args):
  """
    SetGeometry_safeDownCast(OpenSimObject obj) -> SetGeometry

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetGeometry_safeDownCast(*args)

def SetGeometry_getClassName():
  """SetGeometry_getClassName() -> std::string const &"""
  return _opensim.SetGeometry_getClassName()

class GeometrySet(SetGeometry):
    """Proxy of C++ OpenSim::GeometrySet class"""
    __swig_setmethods__ = {}
    for _s in [SetGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, GeometrySet, name, value)
    __swig_getmethods__ = {}
    for _s in [SetGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, GeometrySet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> GeometrySet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.GeometrySet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(GeometrySet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.GeometrySet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.GeometrySet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(GeometrySet self) -> GeometrySet

        Parameters:
            self: OpenSim::GeometrySet const *

        """
        return _opensim.GeometrySet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(GeometrySet self) -> std::string const &

        Parameters:
            self: OpenSim::GeometrySet const *

        """
        return _opensim.GeometrySet_getConcreteClassName(self)

    def __init__(self): 
        """__init__(OpenSim::GeometrySet self) -> GeometrySet"""
        this = _opensim.new_GeometrySet()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_GeometrySet
    __del__ = lambda self : None;
    def adoptAndAppend(self, aGeometry):
        aGeometry._markAdopted()
        return super(GeometrySet, self).adoptAndAppend(aGeometry)

GeometrySet_swigregister = _opensim.GeometrySet_swigregister
GeometrySet_swigregister(GeometrySet)

def GeometrySet_safeDownCast(*args):
  """
    GeometrySet_safeDownCast(OpenSimObject obj) -> GeometrySet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.GeometrySet_safeDownCast(*args)

def GeometrySet_getClassName():
  """GeometrySet_getClassName() -> std::string const &"""
  return _opensim.GeometrySet_getClassName()

class VisibleObject(OpenSimObject):
    """Proxy of C++ OpenSim::VisibleObject class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, VisibleObject, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, VisibleObject, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> VisibleObject

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.VisibleObject_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(VisibleObject self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.VisibleObject_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.VisibleObject_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(VisibleObject self) -> VisibleObject

        Parameters:
            self: OpenSim::VisibleObject const *

        """
        return _opensim.VisibleObject_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(VisibleObject self) -> std::string const &

        Parameters:
            self: OpenSim::VisibleObject const *

        """
        return _opensim.VisibleObject_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::VisibleObject self) -> VisibleObject
        __init__(OpenSim::VisibleObject self, std::string const & aFileName) -> VisibleObject

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::VisibleObject self, VisibleObject aVisibleObject) -> VisibleObject

        Parameters:
            aVisibleObject: OpenSim::VisibleObject const &

        """
        this = _opensim.new_VisibleObject(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_VisibleObject
    __del__ = lambda self : None;
    def setOwner(self, *args):
        """
        setOwner(VisibleObject self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object *

        """
        return _opensim.VisibleObject_setOwner(self, *args)

    def getOwner(self):
        """
        getOwner(VisibleObject self) -> OpenSimObject

        Parameters:
            self: OpenSim::VisibleObject *

        """
        return _opensim.VisibleObject_getOwner(self)

    def setNumGeometryFiles(self, *args):
        """
        setNumGeometryFiles(VisibleObject self, int n)

        Parameters:
            n: int

        """
        return _opensim.VisibleObject_setNumGeometryFiles(self, *args)

    def setGeometryFileName(self, *args):
        """
        setGeometryFileName(VisibleObject self, int i, std::string const & aGeometryFileName)

        Parameters:
            i: int
            aGeometryFileName: std::string const &

        """
        return _opensim.VisibleObject_setGeometryFileName(self, *args)

    def getNumGeometryFiles(self):
        """
        getNumGeometryFiles(VisibleObject self) -> int const

        Parameters:
            self: OpenSim::VisibleObject const *

        """
        return _opensim.VisibleObject_getNumGeometryFiles(self)

    def getGeometryFileName(self, *args):
        """
        getGeometryFileName(VisibleObject self, int i) -> std::string const &

        Parameters:
            i: int

        """
        return _opensim.VisibleObject_getGeometryFileName(self, *args)

    def getGeometrySet(self):
        """
        getGeometrySet(VisibleObject self) -> GeometrySet

        Parameters:
            self: OpenSim::VisibleObject const *

        """
        return _opensim.VisibleObject_getGeometrySet(self)

    def updGeometrySet(self):
        """
        updGeometrySet(VisibleObject self) -> GeometrySet

        Parameters:
            self: OpenSim::VisibleObject *

        """
        return _opensim.VisibleObject_updGeometrySet(self)

    def getTransform(self):
        """
        getTransform(VisibleObject self) -> Transform

        Parameters:
            self: OpenSim::VisibleObject const *

        """
        return _opensim.VisibleObject_getTransform(self)

    def updTransform(self):
        """
        updTransform(VisibleObject self) -> Transform

        Parameters:
            self: OpenSim::VisibleObject *

        """
        return _opensim.VisibleObject_updTransform(self)

    def getRotationsAndTranslationsAsArray6(self, *args):
        """
        getRotationsAndTranslationsAsArray6(VisibleObject self, double [] aArray)

        Parameters:
            aArray: double []

        """
        return _opensim.VisibleObject_getRotationsAndTranslationsAsArray6(self, *args)

    def getTransformAsDouble16(self, *args):
        """
        getTransformAsDouble16(VisibleObject self, double [] flatList)

        Parameters:
            flatList: double []

        """
        return _opensim.VisibleObject_getTransformAsDouble16(self, *args)

    def setTransform(self, *args):
        """
        setTransform(VisibleObject self, Transform aTransform)

        Parameters:
            aTransform: SimTK::Transform const &

        """
        return _opensim.VisibleObject_setTransform(self, *args)

    def translate(self, *args):
        """
        translate(VisibleObject self, Vec3 t)

        Parameters:
            t: SimTK::Vec3 const &

        """
        return _opensim.VisibleObject_translate(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(VisibleObject self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &

        setScaleFactors(VisibleObject self, double const [] aScaleFactors)

        Parameters:
            aScaleFactors: double const []

        """
        return _opensim.VisibleObject_setScaleFactors(self, *args)

    def getScaleFactors(self, *args):
        """
        getScaleFactors(VisibleObject self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 &

        getScaleFactors(VisibleObject self, double [] aScaleFactors)

        Parameters:
            aScaleFactors: double []

        """
        return _opensim.VisibleObject_getScaleFactors(self, *args)

    def getShowAxes(self):
        """
        getShowAxes(VisibleObject self) -> bool

        Parameters:
            self: OpenSim::VisibleObject const *

        """
        return _opensim.VisibleObject_getShowAxes(self)

    def setShowAxes(self, *args):
        """
        setShowAxes(VisibleObject self, bool const showAxes)

        Parameters:
            showAxes: bool const

        """
        return _opensim.VisibleObject_setShowAxes(self, *args)

    def getDisplayPreference(self):
        """
        getDisplayPreference(VisibleObject self) -> OpenSim::DisplayGeometry::DisplayPreference

        Parameters:
            self: OpenSim::VisibleObject const *

        """
        return _opensim.VisibleObject_getDisplayPreference(self)

    def setDisplayPreference(self, *args):
        """
        setDisplayPreference(VisibleObject self, OpenSim::DisplayGeometry::DisplayPreference const & aPreference)

        Parameters:
            aPreference: OpenSim::DisplayGeometry::DisplayPreference const &

        """
        return _opensim.VisibleObject_setDisplayPreference(self, *args)

    def addDependent(self, *args):
        """
        addDependent(VisibleObject self, VisibleObject aChild)

        Parameters:
            aChild: OpenSim::VisibleObject *

        """
        return _opensim.VisibleObject_addDependent(self, *args)

    def hasDependent(self, *args):
        """
        hasDependent(VisibleObject self, VisibleObject aChild) -> bool

        Parameters:
            aChild: OpenSim::VisibleObject *

        """
        return _opensim.VisibleObject_hasDependent(self, *args)

    def removeDependent(self, *args):
        """
        removeDependent(VisibleObject self, VisibleObject aChild)

        Parameters:
            aChild: OpenSim::VisibleObject *

        """
        return _opensim.VisibleObject_removeDependent(self, *args)

    def countDependents(self):
        """
        countDependents(VisibleObject self) -> int

        Parameters:
            self: OpenSim::VisibleObject *

        """
        return _opensim.VisibleObject_countDependents(self)

    def getDependent(self, *args):
        """
        getDependent(VisibleObject self, int i) -> VisibleObject

        Parameters:
            i: int

        """
        return _opensim.VisibleObject_getDependent(self, *args)

    def addGeometry(self, *args):
        """
        addGeometry(VisibleObject self, Geometry aGeometry)

        Parameters:
            aGeometry: OpenSim::Geometry *

        """
        return _opensim.VisibleObject_addGeometry(self, *args)

    def removeGeometry(self, *args):
        """
        removeGeometry(VisibleObject self, Geometry aGeometry)

        Parameters:
            aGeometry: OpenSim::Geometry *

        """
        return _opensim.VisibleObject_removeGeometry(self, *args)

    def freeGeometry(self):
        """
        freeGeometry(VisibleObject self)

        Parameters:
            self: OpenSim::VisibleObject *

        """
        return _opensim.VisibleObject_freeGeometry(self)

    def getGeometry(self, *args):
        """
        getGeometry(VisibleObject self, int i) -> Geometry

        Parameters:
            i: int

        """
        return _opensim.VisibleObject_getGeometry(self, *args)

    def countGeometry(self):
        """
        countGeometry(VisibleObject self) -> int

        Parameters:
            self: OpenSim::VisibleObject const *

        """
        return _opensim.VisibleObject_countGeometry(self)

    def getDefaultGeometry(self):
        """
        getDefaultGeometry(VisibleObject self) -> Geometry

        Parameters:
            self: OpenSim::VisibleObject *

        """
        return _opensim.VisibleObject_getDefaultGeometry(self)

    def setupProperties(self):
        """
        setupProperties(VisibleObject self)

        Parameters:
            self: OpenSim::VisibleObject *

        """
        return _opensim.VisibleObject_setupProperties(self)

    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(VisibleObject self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(VisibleObject self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.VisibleObject_updateFromXMLNode(self, *args)

VisibleObject_swigregister = _opensim.VisibleObject_swigregister
VisibleObject_swigregister(VisibleObject)

def VisibleObject_safeDownCast(*args):
  """
    VisibleObject_safeDownCast(OpenSimObject obj) -> VisibleObject

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.VisibleObject_safeDownCast(*args)

def VisibleObject_getClassName():
  """VisibleObject_getClassName() -> std::string const &"""
  return _opensim.VisibleObject_getClassName()

class StateVector(_object):
    """Proxy of C++ OpenSim::StateVector class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, StateVector, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, StateVector, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(OpenSim::StateVector self, double aT=0.0, int aN=0, double const * aData=None) -> StateVector

        Parameters:
            aT: double
            aN: int
            aData: double const *

        __init__(OpenSim::StateVector self, double aT=0.0, int aN=0) -> StateVector

        Parameters:
            aT: double
            aN: int

        __init__(OpenSim::StateVector self, double aT=0.0) -> StateVector

        Parameters:
            aT: double

        __init__(OpenSim::StateVector self) -> StateVector
        __init__(OpenSim::StateVector self, StateVector aVector) -> StateVector

        Parameters:
            aVector: OpenSim::StateVector const &

        """
        this = _opensim.new_StateVector(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_StateVector
    __del__ = lambda self : None;
    def setStates(self, *args):
        """
        setStates(StateVector self, double aT, int aN, double const [] aY)

        Parameters:
            aT: double
            aN: int
            aY: double const []

        """
        return _opensim.StateVector_setStates(self, *args)

    def getSize(self):
        """
        getSize(StateVector self) -> int

        Parameters:
            self: OpenSim::StateVector const *

        """
        return _opensim.StateVector_getSize(self)

    def setTime(self, *args):
        """
        setTime(StateVector self, double aT)

        Parameters:
            aT: double

        """
        return _opensim.StateVector_setTime(self, *args)

    def getTime(self):
        """
        getTime(StateVector self) -> double

        Parameters:
            self: OpenSim::StateVector const *

        """
        return _opensim.StateVector_getTime(self)

    def getDataValue(self, *args):
        """
        getDataValue(StateVector self, int aIndex, double & rValue) -> int

        Parameters:
            aIndex: int
            rValue: double &

        """
        return _opensim.StateVector_getDataValue(self, *args)

    def setDataValue(self, *args):
        """
        setDataValue(StateVector self, int aIndex, double & aValue)

        Parameters:
            aIndex: int
            aValue: double &

        """
        return _opensim.StateVector_setDataValue(self, *args)

    def getData(self):
        """
        getData(StateVector self) -> ArrayDouble

        Parameters:
            self: OpenSim::StateVector *

        """
        return _opensim.StateVector_getData(self)

    def shiftTime(self, *args):
        """
        shiftTime(StateVector self, double aValue)

        Parameters:
            aValue: double

        """
        return _opensim.StateVector_shiftTime(self, *args)

    def scaleTime(self, *args):
        """
        scaleTime(StateVector self, double aValue)

        Parameters:
            aValue: double

        """
        return _opensim.StateVector_scaleTime(self, *args)

    def add(self, *args):
        """
        add(StateVector self, double aValue)

        Parameters:
            aValue: double

        add(StateVector self, int aN, double [] aY)

        Parameters:
            aN: int
            aY: double []

        add(StateVector self, int aN, double aValue)

        Parameters:
            aN: int
            aValue: double

        add(StateVector self, StateVector aStateVector)

        Parameters:
            aStateVector: OpenSim::StateVector *

        """
        return _opensim.StateVector_add(self, *args)

    def subtract(self, *args):
        """
        subtract(StateVector self, double aValue)

        Parameters:
            aValue: double

        subtract(StateVector self, int aN, double [] aY)

        Parameters:
            aN: int
            aY: double []

        subtract(StateVector self, StateVector aStateVector)

        Parameters:
            aStateVector: OpenSim::StateVector *

        """
        return _opensim.StateVector_subtract(self, *args)

    def multiply(self, *args):
        """
        multiply(StateVector self, double aValue)

        Parameters:
            aValue: double

        multiply(StateVector self, int aN, double [] aY)

        Parameters:
            aN: int
            aY: double []

        multiply(StateVector self, StateVector aStateVector)

        Parameters:
            aStateVector: OpenSim::StateVector *

        """
        return _opensim.StateVector_multiply(self, *args)

    def divide(self, *args):
        """
        divide(StateVector self, double aValue)

        Parameters:
            aValue: double

        divide(StateVector self, int aN, double [] aY)

        Parameters:
            aN: int
            aY: double []

        divide(StateVector self, StateVector aStateVector)

        Parameters:
            aStateVector: OpenSim::StateVector *

        """
        return _opensim.StateVector_divide(self, *args)

StateVector_swigregister = _opensim.StateVector_swigregister
StateVector_swigregister(StateVector)

class StorageInterface(OpenSimObject):
    """Proxy of C++ OpenSim::StorageInterface class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, StorageInterface, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, StorageInterface, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> StorageInterface

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.StorageInterface_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(StorageInterface self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.StorageInterface_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.StorageInterface_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(StorageInterface self) -> StorageInterface

        Parameters:
            self: OpenSim::StorageInterface const *

        """
        return _opensim.StorageInterface_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(StorageInterface self) -> std::string const &

        Parameters:
            self: OpenSim::StorageInterface const *

        """
        return _opensim.StorageInterface_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_StorageInterface
    __del__ = lambda self : None;
    def getSize(self):
        """
        getSize(StorageInterface self) -> int

        Parameters:
            self: OpenSim::StorageInterface const *

        """
        return _opensim.StorageInterface_getSize(self)

    def getStateVector(self, *args):
        """
        getStateVector(StorageInterface self, int aTimeIndex) -> StateVector

        Parameters:
            aTimeIndex: int

        """
        return _opensim.StorageInterface_getStateVector(self, *args)

    def getLastStateVector(self):
        """
        getLastStateVector(StorageInterface self) -> StateVector

        Parameters:
            self: OpenSim::StorageInterface const *

        """
        return _opensim.StorageInterface_getLastStateVector(self)

    def getFirstTime(self):
        """
        getFirstTime(StorageInterface self) -> double

        Parameters:
            self: OpenSim::StorageInterface const *

        """
        return _opensim.StorageInterface_getFirstTime(self)

    def getLastTime(self):
        """
        getLastTime(StorageInterface self) -> double

        Parameters:
            self: OpenSim::StorageInterface const *

        """
        return _opensim.StorageInterface_getLastTime(self)

    def getTimeColumn(self, *args):
        """
        getTimeColumn(StorageInterface self, ArrayDouble rTimes, int aStateIndex=-1) -> int

        Parameters:
            rTimes: OpenSim::Array< double > &
            aStateIndex: int

        getTimeColumn(StorageInterface self, ArrayDouble rTimes) -> int

        Parameters:
            rTimes: OpenSim::Array< double > &

        """
        return _opensim.StorageInterface_getTimeColumn(self, *args)

    def getTimeColumnWithStartTime(self, *args):
        """
        getTimeColumnWithStartTime(StorageInterface self, ArrayDouble rTimes, double startTime=0.0)

        Parameters:
            rTimes: OpenSim::Array< double > &
            startTime: double

        getTimeColumnWithStartTime(StorageInterface self, ArrayDouble rTimes)

        Parameters:
            rTimes: OpenSim::Array< double > &

        """
        return _opensim.StorageInterface_getTimeColumnWithStartTime(self, *args)

    def getDataAtTime(self, *args):
        """
        getDataAtTime(StorageInterface self, double aTime, int aN, ArrayDouble rData) -> int

        Parameters:
            aTime: double
            aN: int
            rData: OpenSim::Array< double > &

        """
        return _opensim.StorageInterface_getDataAtTime(self, *args)

    def getDataColumn(self, *args):
        """
        getDataColumn(StorageInterface self, std::string const & columnName, ArrayDouble data, double startTime=0.0)

        Parameters:
            columnName: std::string const &
            data: OpenSim::Array< double > &
            startTime: double

        getDataColumn(StorageInterface self, std::string const & columnName, ArrayDouble data)

        Parameters:
            columnName: std::string const &
            data: OpenSim::Array< double > &

        """
        return _opensim.StorageInterface_getDataColumn(self, *args)

    def append(self, *args):
        """
        append(StorageInterface self, StateVector aVec, bool aCheckForDuplicateTime=True) -> int

        Parameters:
            aVec: OpenSim::StateVector const &
            aCheckForDuplicateTime: bool

        append(StorageInterface self, StateVector aVec) -> int

        Parameters:
            aVec: OpenSim::StateVector const &

        append(StorageInterface self, OpenSim::Array< OpenSim::StateVector > const & aArray) -> int

        Parameters:
            aArray: OpenSim::Array< OpenSim::StateVector > const &

        append(StorageInterface self, double aT, int aN, double const * aY, bool aCheckForDuplicateTime=True) -> int

        Parameters:
            aT: double
            aN: int
            aY: double const *
            aCheckForDuplicateTime: bool

        append(StorageInterface self, double aT, int aN, double const * aY) -> int

        Parameters:
            aT: double
            aN: int
            aY: double const *

        append(StorageInterface self, double aT, Vector aY, bool aCheckForDuplicateTime=True) -> int

        Parameters:
            aT: double
            aY: SimTK::Vector const &
            aCheckForDuplicateTime: bool

        append(StorageInterface self, double aT, Vector aY) -> int

        Parameters:
            aT: double
            aY: SimTK::Vector const &

        append(StorageInterface self, double aT, Vec3 aY, bool aCheckForDuplicateTime=True) -> int

        Parameters:
            aT: double
            aY: SimTK::Vec3 const &
            aCheckForDuplicateTime: bool

        append(StorageInterface self, double aT, Vec3 aY) -> int

        Parameters:
            aT: double
            aY: SimTK::Vec3 const &

        """
        return _opensim.StorageInterface_append(self, *args)

    def store(self, *args):
        """
        store(StorageInterface self, int aStep, double aT, int aN, double const * aY) -> int

        Parameters:
            aStep: int
            aT: double
            aN: int
            aY: double const *

        """
        return _opensim.StorageInterface_store(self, *args)

    def findIndex(self, *args):
        """
        findIndex(StorageInterface self, double aT) -> int

        Parameters:
            aT: double

        findIndex(StorageInterface self, int aI, double aT) -> int

        Parameters:
            aI: int
            aT: double

        """
        return _opensim.StorageInterface_findIndex(self, *args)

    def setOutputFileName(self, *args):
        """
        setOutputFileName(StorageInterface self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.StorageInterface_setOutputFileName(self, *args)

StorageInterface_swigregister = _opensim.StorageInterface_swigregister
StorageInterface_swigregister(StorageInterface)

def StorageInterface_safeDownCast(*args):
  """
    StorageInterface_safeDownCast(OpenSimObject obj) -> StorageInterface

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.StorageInterface_safeDownCast(*args)

def StorageInterface_getClassName():
  """StorageInterface_getClassName() -> std::string const &"""
  return _opensim.StorageInterface_getClassName()

class Storage(StorageInterface):
    """Proxy of C++ OpenSim::Storage class"""
    __swig_setmethods__ = {}
    for _s in [StorageInterface]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Storage, name, value)
    __swig_getmethods__ = {}
    for _s in [StorageInterface]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Storage, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Storage

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Storage_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Storage self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Storage_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Storage_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Storage self) -> Storage

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Storage self) -> std::string const &

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getConcreteClassName(self)

    __swig_setmethods__["DEFAULT_HEADER_TOKEN"] = _opensim.Storage_DEFAULT_HEADER_TOKEN_set
    __swig_getmethods__["DEFAULT_HEADER_TOKEN"] = _opensim.Storage_DEFAULT_HEADER_TOKEN_get
    if _newclass:DEFAULT_HEADER_TOKEN = _swig_property(_opensim.Storage_DEFAULT_HEADER_TOKEN_get, _opensim.Storage_DEFAULT_HEADER_TOKEN_set)
    __swig_setmethods__["DEFAULT_HEADER_SEPARATOR"] = _opensim.Storage_DEFAULT_HEADER_SEPARATOR_set
    __swig_getmethods__["DEFAULT_HEADER_SEPARATOR"] = _opensim.Storage_DEFAULT_HEADER_SEPARATOR_get
    if _newclass:DEFAULT_HEADER_SEPARATOR = _swig_property(_opensim.Storage_DEFAULT_HEADER_SEPARATOR_get, _opensim.Storage_DEFAULT_HEADER_SEPARATOR_set)
    def __init__(self, *args): 
        """
        __init__(OpenSim::Storage self, int aCapacity=Storage_DEFAULT_CAPACITY, std::string const & aName="UNKNOWN") -> Storage

        Parameters:
            aCapacity: int
            aName: std::string const &

        __init__(OpenSim::Storage self, int aCapacity=Storage_DEFAULT_CAPACITY) -> Storage

        Parameters:
            aCapacity: int

        __init__(OpenSim::Storage self) -> Storage
        __init__(OpenSim::Storage self, std::string const & aFileName, bool readHeadersOnly=False) -> Storage

        Parameters:
            aFileName: std::string const &
            readHeadersOnly: bool

        __init__(OpenSim::Storage self, std::string const & aFileName) -> Storage

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Storage self, Storage aStorage, bool aCopyData=True) -> Storage

        Parameters:
            aStorage: OpenSim::Storage const &
            aCopyData: bool

        __init__(OpenSim::Storage self, Storage aStorage) -> Storage

        Parameters:
            aStorage: OpenSim::Storage const &

        __init__(OpenSim::Storage self, Storage aStorage, int aStateIndex, int aN, char const * aDelimiter="\t") -> Storage

        Parameters:
            aStorage: OpenSim::Storage const &
            aStateIndex: int
            aN: int
            aDelimiter: char const *

        __init__(OpenSim::Storage self, Storage aStorage, int aStateIndex, int aN) -> Storage

        Parameters:
            aStorage: OpenSim::Storage const &
            aStateIndex: int
            aN: int

        """
        this = _opensim.new_Storage(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_Storage
    __del__ = lambda self : None;
    def getName(self):
        """
        getName(Storage self) -> std::string const &

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getName(self)

    def getDescription(self):
        """
        getDescription(Storage self) -> std::string const &

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getDescription(self)

    def setName(self, *args):
        """
        setName(Storage self, std::string const & aName)

        Parameters:
            aName: std::string const &

        """
        return _opensim.Storage_setName(self, *args)

    def setDescription(self, *args):
        """
        setDescription(Storage self, std::string const & aDescription)

        Parameters:
            aDescription: std::string const &

        """
        return _opensim.Storage_setDescription(self, *args)

    def getLatestVersion():
        """getLatestVersion() -> int const &"""
        return _opensim.Storage_getLatestVersion()

    if _newclass:getLatestVersion = staticmethod(getLatestVersion)
    __swig_getmethods__["getLatestVersion"] = lambda x: getLatestVersion
    def getFileVersion(self):
        """
        getFileVersion(Storage self) -> int const &

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getFileVersion(self)

    def getSize(self):
        """
        getSize(Storage self) -> int

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getSize(self)

    def getSmallestNumberOfStates(self):
        """
        getSmallestNumberOfStates(Storage self) -> int

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getSmallestNumberOfStates(self)

    def getStateVector(self, *args):
        """
        getStateVector(Storage self, int aTimeIndex) -> StateVector

        Parameters:
            aTimeIndex: int

        """
        return _opensim.Storage_getStateVector(self, *args)

    def getLastStateVector(self):
        """
        getLastStateVector(Storage self) -> StateVector

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getLastStateVector(self)

    def getFirstTime(self):
        """
        getFirstTime(Storage self) -> double

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getFirstTime(self)

    def getLastTime(self):
        """
        getLastTime(Storage self) -> double

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getLastTime(self)

    def getMinTimeStep(self):
        """
        getMinTimeStep(Storage self) -> double

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getMinTimeStep(self)

    def getTime(self, *args):
        """
        getTime(Storage self, int aTimeIndex, double & rTime, int aStateIndex=-1) -> bool

        Parameters:
            aTimeIndex: int
            rTime: double &
            aStateIndex: int

        getTime(Storage self, int aTimeIndex, double & rTime) -> bool

        Parameters:
            aTimeIndex: int
            rTime: double &

        """
        return _opensim.Storage_getTime(self, *args)

    def getTimeColumn(self, *args):
        """
        getTimeColumn(Storage self, double *& rTimes, int aStateIndex=-1) -> int

        Parameters:
            rTimes: double *&
            aStateIndex: int

        getTimeColumn(Storage self, double *& rTimes) -> int

        Parameters:
            rTimes: double *&

        getTimeColumn(Storage self, ArrayDouble rTimes, int aStateIndex=-1) -> int

        Parameters:
            rTimes: OpenSim::Array< double > &
            aStateIndex: int

        getTimeColumn(Storage self, ArrayDouble rTimes) -> int

        Parameters:
            rTimes: OpenSim::Array< double > &

        """
        return _opensim.Storage_getTimeColumn(self, *args)

    def getTimeColumnWithStartTime(self, *args):
        """
        getTimeColumnWithStartTime(Storage self, ArrayDouble rTimes, double startTime=0.0)

        Parameters:
            rTimes: OpenSim::Array< double > &
            startTime: double

        getTimeColumnWithStartTime(Storage self, ArrayDouble rTimes)

        Parameters:
            rTimes: OpenSim::Array< double > &

        """
        return _opensim.Storage_getTimeColumnWithStartTime(self, *args)

    def addKeyValuePair(self, *args):
        """
        addKeyValuePair(Storage self, std::string const & aKey, std::string const & aValue)

        Parameters:
            aKey: std::string const &
            aValue: std::string const &

        """
        return _opensim.Storage_addKeyValuePair(self, *args)

    def getValueForKey(self, *args):
        """
        getValueForKey(Storage self, std::string const & aKey, std::string & rValue)

        Parameters:
            aKey: std::string const &
            rValue: std::string &

        """
        return _opensim.Storage_getValueForKey(self, *args)

    def hasKey(self, *args):
        """
        hasKey(Storage self, std::string const & aKey) -> bool

        Parameters:
            aKey: std::string const &

        """
        return _opensim.Storage_hasKey(self, *args)

    def isInDegrees(self):
        """
        isInDegrees(Storage self) -> bool const

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_isInDegrees(self)

    def setInDegrees(self, *args):
        """
        setInDegrees(Storage self, bool const isInDegrees)

        Parameters:
            isInDegrees: bool const

        """
        return _opensim.Storage_setInDegrees(self, *args)

    def getData(self, *args):
        """
        getData(Storage self, int aTimeIndex, int aStateIndex, double & rValue) -> int

        Parameters:
            aTimeIndex: int
            aStateIndex: int
            rValue: double &

        getData(Storage self, int aTimeIndex, int aStateIndex, int aN, double ** rData) -> int

        Parameters:
            aTimeIndex: int
            aStateIndex: int
            aN: int
            rData: double **

        """
        return _opensim.Storage_getData(self, *args)

    def getDataAtTime(self, *args):
        """
        getDataAtTime(Storage self, double aTime, int aN, double ** rData) -> int

        Parameters:
            aTime: double
            aN: int
            rData: double **

        getDataAtTime(Storage self, double aTime, int aN, double * rData) -> int

        Parameters:
            aTime: double
            aN: int
            rData: double *

        getDataAtTime(Storage self, double aTime, int aN, ArrayDouble rData) -> int

        Parameters:
            aTime: double
            aN: int
            rData: OpenSim::Array< double > &

        getDataAtTime(Storage self, double aTime, int aN, Vector v) -> int

        Parameters:
            aTime: double
            aN: int
            v: SimTK::Vector &

        """
        return _opensim.Storage_getDataAtTime(self, *args)

    def setDataColumnToFixedValue(self, *args):
        """
        setDataColumnToFixedValue(Storage self, std::string const & columnName, double newValue)

        Parameters:
            columnName: std::string const &
            newValue: double

        """
        return _opensim.Storage_setDataColumnToFixedValue(self, *args)

    def setDataColumn(self, *args):
        """
        setDataColumn(Storage self, int aStateIndex, ArrayDouble aData)

        Parameters:
            aStateIndex: int
            aData: OpenSim::Array< double > const &

        """
        return _opensim.Storage_setDataColumn(self, *args)

    def getDataColumn(self, *args):
        """
        getDataColumn(Storage self, int aStateIndex, double *& rData) -> int

        Parameters:
            aStateIndex: int
            rData: double *&

        getDataColumn(Storage self, int aStateIndex, ArrayDouble rData) -> int

        Parameters:
            aStateIndex: int
            rData: OpenSim::Array< double > &

        getDataColumn(Storage self, std::string const & columnName, double *& rData) -> int

        Parameters:
            columnName: std::string const &
            rData: double *&

        getDataColumn(Storage self, std::string const & columnName, ArrayDouble data, double startTime=0.0)

        Parameters:
            columnName: std::string const &
            data: OpenSim::Array< double > &
            startTime: double

        getDataColumn(Storage self, std::string const & columnName, ArrayDouble data)

        Parameters:
            columnName: std::string const &
            data: OpenSim::Array< double > &

        """
        return _opensim.Storage_getDataColumn(self, *args)

    def getDataForIdentifier(self, *args):
        """
        getDataForIdentifier(Storage self, std::string const & identifier, OpenSim::Array< OpenSim::Array< double > > & rData, 
            double startTime=0.0)

        Parameters:
            identifier: std::string const &
            rData: OpenSim::Array< OpenSim::Array< double > > &
            startTime: double

        getDataForIdentifier(Storage self, std::string const & identifier, OpenSim::Array< OpenSim::Array< double > > & rData)

        Parameters:
            identifier: std::string const &
            rData: OpenSim::Array< OpenSim::Array< double > > &

        """
        return _opensim.Storage_getDataForIdentifier(self, *args)

    def getColumnIndicesForIdentifier(self, *args):
        """
        getColumnIndicesForIdentifier(Storage self, std::string const & identifier) -> ArrayInt

        Parameters:
            identifier: std::string const &

        """
        return _opensim.Storage_getColumnIndicesForIdentifier(self, *args)

    def setStepInterval(self, *args):
        """
        setStepInterval(Storage self, int aStepInterval)

        Parameters:
            aStepInterval: int

        """
        return _opensim.Storage_setStepInterval(self, *args)

    def getStepInterval(self):
        """
        getStepInterval(Storage self) -> int

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getStepInterval(self)

    def setCapacityIncrement(self, *args):
        """
        setCapacityIncrement(Storage self, int aIncrement)

        Parameters:
            aIncrement: int

        """
        return _opensim.Storage_setCapacityIncrement(self, *args)

    def getCapacityIncrement(self):
        """
        getCapacityIncrement(Storage self) -> int

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getCapacityIncrement(self)

    def setWriteSIMMHeader(self, *args):
        """
        setWriteSIMMHeader(Storage self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.Storage_setWriteSIMMHeader(self, *args)

    def getWriteSIMMHeader(self):
        """
        getWriteSIMMHeader(Storage self) -> bool

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getWriteSIMMHeader(self)

    def setHeaderToken(self, *args):
        """
        setHeaderToken(Storage self, std::string const & aToken)

        Parameters:
            aToken: std::string const &

        """
        return _opensim.Storage_setHeaderToken(self, *args)

    def getHeaderToken(self):
        """
        getHeaderToken(Storage self) -> std::string const &

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getHeaderToken(self)

    def getStateIndex(self, *args):
        """
        getStateIndex(Storage self, std::string const & aColumnName, int startIndex=0) -> int const

        Parameters:
            aColumnName: std::string const &
            startIndex: int

        getStateIndex(Storage self, std::string const & aColumnName) -> int const

        Parameters:
            aColumnName: std::string const &

        """
        return _opensim.Storage_getStateIndex(self, *args)

    def setColumnLabels(self, *args):
        """
        setColumnLabels(Storage self, ArrayStr aColumnLabels)

        Parameters:
            aColumnLabels: OpenSim::Array< std::string > const &

        """
        return _opensim.Storage_setColumnLabels(self, *args)

    def getColumnLabels(self):
        """
        getColumnLabels(Storage self) -> ArrayStr

        Parameters:
            self: OpenSim::Storage const *

        """
        return _opensim.Storage_getColumnLabels(self)

    def reset(self, *args):
        """
        reset(Storage self, int aIndex=0) -> int

        Parameters:
            aIndex: int

        reset(Storage self) -> int
        reset(Storage self, double aTime) -> int

        Parameters:
            aTime: double

        """
        return _opensim.Storage_reset(self, *args)

    def purge(self):
        """
        purge(Storage self)

        Parameters:
            self: OpenSim::Storage *

        """
        return _opensim.Storage_purge(self)

    def crop(self, *args):
        """
        crop(Storage self, double const newStartTime, double const newFinalTime)

        Parameters:
            newStartTime: double const
            newFinalTime: double const

        """
        return _opensim.Storage_crop(self, *args)

    def append(self, *args):
        """
        append(Storage self, StateVector aVec, bool aCheckForDuplicateTime=True) -> int

        Parameters:
            aVec: OpenSim::StateVector const &
            aCheckForDuplicateTime: bool

        append(Storage self, StateVector aVec) -> int

        Parameters:
            aVec: OpenSim::StateVector const &

        append(Storage self, OpenSim::Array< OpenSim::StateVector > const & aArray) -> int

        Parameters:
            aArray: OpenSim::Array< OpenSim::StateVector > const &

        append(Storage self, double aT, int aN, double const * aY, bool aCheckForDuplicateTime=True) -> int

        Parameters:
            aT: double
            aN: int
            aY: double const *
            aCheckForDuplicateTime: bool

        append(Storage self, double aT, int aN, double const * aY) -> int

        Parameters:
            aT: double
            aN: int
            aY: double const *

        append(Storage self, double aT, Vector aY, bool aCheckForDuplicateTime=True) -> int

        Parameters:
            aT: double
            aY: SimTK::Vector const &
            aCheckForDuplicateTime: bool

        append(Storage self, double aT, Vector aY) -> int

        Parameters:
            aT: double
            aY: SimTK::Vector const &

        append(Storage self, double aT, ArrayDouble aY, bool aCheckForDuplicateTime=True) -> int

        Parameters:
            aT: double
            aY: OpenSim::Array< double > const &
            aCheckForDuplicateTime: bool

        append(Storage self, double aT, ArrayDouble aY) -> int

        Parameters:
            aT: double
            aY: OpenSim::Array< double > const &

        append(Storage self, double aT, Vec3 aY, bool aCheckForDuplicateTime=True) -> int

        Parameters:
            aT: double
            aY: SimTK::Vec3 const &
            aCheckForDuplicateTime: bool

        append(Storage self, double aT, Vec3 aY) -> int

        Parameters:
            aT: double
            aY: SimTK::Vec3 const &

        """
        return _opensim.Storage_append(self, *args)

    def store(self, *args):
        """
        store(Storage self, int aStep, double aT, int aN, double const * aY) -> int

        Parameters:
            aStep: int
            aT: double
            aN: int
            aY: double const *

        """
        return _opensim.Storage_store(self, *args)

    def shiftTime(self, *args):
        """
        shiftTime(Storage self, double aValue)

        Parameters:
            aValue: double

        """
        return _opensim.Storage_shiftTime(self, *args)

    def scaleTime(self, *args):
        """
        scaleTime(Storage self, double aValue)

        Parameters:
            aValue: double

        """
        return _opensim.Storage_scaleTime(self, *args)

    def add(self, *args):
        """
        add(Storage self, double aValue)

        Parameters:
            aValue: double

        add(Storage self, int aN, double [] aY)

        Parameters:
            aN: int
            aY: double []

        add(Storage self, int aN, double aValue)

        Parameters:
            aN: int
            aValue: double

        add(Storage self, StateVector aStateVector)

        Parameters:
            aStateVector: OpenSim::StateVector *

        add(Storage self, Storage aStorage)

        Parameters:
            aStorage: OpenSim::Storage *

        """
        return _opensim.Storage_add(self, *args)

    def subtract(self, *args):
        """
        subtract(Storage self, double aValue)

        Parameters:
            aValue: double

        subtract(Storage self, int aN, double [] aY)

        Parameters:
            aN: int
            aY: double []

        subtract(Storage self, StateVector aStateVector)

        Parameters:
            aStateVector: OpenSim::StateVector *

        subtract(Storage self, Storage aStorage)

        Parameters:
            aStorage: OpenSim::Storage *

        """
        return _opensim.Storage_subtract(self, *args)

    def multiplyColumn(self, *args):
        """
        multiplyColumn(Storage self, int aIndex, double aValue)

        Parameters:
            aIndex: int
            aValue: double

        """
        return _opensim.Storage_multiplyColumn(self, *args)

    def multiply(self, *args):
        """
        multiply(Storage self, double aValue)

        Parameters:
            aValue: double

        multiply(Storage self, int aN, double [] aY)

        Parameters:
            aN: int
            aY: double []

        multiply(Storage self, StateVector aStateVector)

        Parameters:
            aStateVector: OpenSim::StateVector *

        multiply(Storage self, Storage aStorage)

        Parameters:
            aStorage: OpenSim::Storage *

        """
        return _opensim.Storage_multiply(self, *args)

    def divide(self, *args):
        """
        divide(Storage self, double aValue)

        Parameters:
            aValue: double

        divide(Storage self, int aN, double [] aY)

        Parameters:
            aN: int
            aY: double []

        divide(Storage self, StateVector aStateVector)

        Parameters:
            aStateVector: OpenSim::StateVector *

        divide(Storage self, Storage aStorage)

        Parameters:
            aStorage: OpenSim::Storage *

        """
        return _opensim.Storage_divide(self, *args)

    def integrate(self, *args):
        """
        integrate(Storage self, int aI1=-2, int aI2=-1) -> Storage

        Parameters:
            aI1: int
            aI2: int

        integrate(Storage self, int aI1=-2) -> Storage

        Parameters:
            aI1: int

        integrate(Storage self) -> Storage
        integrate(Storage self, double aT1, double aT2) -> Storage

        Parameters:
            aT1: double
            aT2: double

        """
        return _opensim.Storage_integrate(self, *args)

    def computeArea(self, *args):
        """
        computeArea(Storage self, int aN, double * aArea) -> int

        Parameters:
            aN: int
            aArea: double *

        computeArea(Storage self, double aTI, double aTF, int aN, double * aArea) -> int

        Parameters:
            aTI: double
            aTF: double
            aN: int
            aArea: double *

        """
        return _opensim.Storage_computeArea(self, *args)

    def computeAverage(self, *args):
        """
        computeAverage(Storage self, int aN, double * aAve) -> int

        Parameters:
            aN: int
            aAve: double *

        computeAverage(Storage self, double aTI, double aTF, int aN, double * aAve) -> int

        Parameters:
            aTI: double
            aTF: double
            aN: int
            aAve: double *

        """
        return _opensim.Storage_computeAverage(self, *args)

    def pad(self, *args):
        """
        pad(Storage self, int aPadSize)

        Parameters:
            aPadSize: int

        """
        return _opensim.Storage_pad(self, *args)

    def smoothSpline(self, *args):
        """
        smoothSpline(Storage self, int aOrder, double aCutoffFrequency)

        Parameters:
            aOrder: int
            aCutoffFrequency: double

        """
        return _opensim.Storage_smoothSpline(self, *args)

    def lowpassIIR(self, *args):
        """
        lowpassIIR(Storage self, double aCutoffFequency)

        Parameters:
            aCutoffFequency: double

        """
        return _opensim.Storage_lowpassIIR(self, *args)

    def lowpassFIR(self, *args):
        """
        lowpassFIR(Storage self, int aOrder, double aCutoffFequency)

        Parameters:
            aOrder: int
            aCutoffFequency: double

        """
        return _opensim.Storage_lowpassFIR(self, *args)

    def addToRdStorage(self, *args):
        """
        addToRdStorage(Storage self, Storage rStorage, double aStartTime, double aEndTime)

        Parameters:
            rStorage: OpenSim::Storage &
            aStartTime: double
            aEndTime: double

        """
        return _opensim.Storage_addToRdStorage(self, *args)

    def findIndex(self, *args):
        """
        findIndex(Storage self, double aT) -> int

        Parameters:
            aT: double

        findIndex(Storage self, int aI, double aT) -> int

        Parameters:
            aI: int
            aT: double

        """
        return _opensim.Storage_findIndex(self, *args)

    def findFrameRange(self, *args):
        """
        findFrameRange(Storage self, double aStartTime, double aEndTime, int & oStartFrame, int & oEndFrame)

        Parameters:
            aStartTime: double
            aEndTime: double
            oStartFrame: int &
            oEndFrame: int &

        """
        return _opensim.Storage_findFrameRange(self, *args)

    def resample(self, *args):
        """
        resample(Storage self, double aDT, int aDegree) -> double

        Parameters:
            aDT: double
            aDegree: int

        """
        return _opensim.Storage_resample(self, *args)

    def resampleLinear(self, *args):
        """
        resampleLinear(Storage self, double aDT) -> double

        Parameters:
            aDT: double

        """
        return _opensim.Storage_resampleLinear(self, *args)

    def compareColumn(self, *args):
        """
        compareColumn(Storage self, Storage aOtherStorage, std::string const & aColumnName, double startTime, double endTime=-1.0) -> double

        Parameters:
            aOtherStorage: OpenSim::Storage &
            aColumnName: std::string const &
            startTime: double
            endTime: double

        compareColumn(Storage self, Storage aOtherStorage, std::string const & aColumnName, double startTime) -> double

        Parameters:
            aOtherStorage: OpenSim::Storage &
            aColumnName: std::string const &
            startTime: double

        """
        return _opensim.Storage_compareColumn(self, *args)

    def compareColumnRMS(self, *args):
        """
        compareColumnRMS(Storage self, Storage aOtherStorage, std::string const & aColumnName, double startTime=SimTK::NaN, 
            double endTime=SimTK::NaN) -> double

        Parameters:
            aOtherStorage: OpenSim::Storage &
            aColumnName: std::string const &
            startTime: double
            endTime: double

        compareColumnRMS(Storage self, Storage aOtherStorage, std::string const & aColumnName, double startTime=SimTK::NaN) -> double

        Parameters:
            aOtherStorage: OpenSim::Storage &
            aColumnName: std::string const &
            startTime: double

        compareColumnRMS(Storage self, Storage aOtherStorage, std::string const & aColumnName) -> double

        Parameters:
            aOtherStorage: OpenSim::Storage &
            aColumnName: std::string const &

        """
        return _opensim.Storage_compareColumnRMS(self, *args)

    def compareWithStandard(self, *args):
        """
        compareWithStandard(Storage self, Storage standard, ArrayStr columnsUsed, ArrayDouble comparisons)

        Parameters:
            standard: OpenSim::Storage &
            columnsUsed: OpenSim::Array< std::string > &
            comparisons: OpenSim::Array< double > &

        """
        return _opensim.Storage_compareWithStandard(self, *args)

    def makeStorageLabelsUnique(self):
        """
        makeStorageLabelsUnique(Storage self) -> bool

        Parameters:
            self: OpenSim::Storage *

        """
        return _opensim.Storage_makeStorageLabelsUnique(self)

    def printToFile(self, *args):
        """
        printToFile(Storage self, std::string const & aFileName, std::string const & aMode="w", std::string const & aComment="") -> bool

        Parameters:
            aFileName: std::string const &
            aMode: std::string const &
            aComment: std::string const &

        printToFile(Storage self, std::string const & aFileName, std::string const & aMode="w") -> bool

        Parameters:
            aFileName: std::string const &
            aMode: std::string const &

        printToFile(Storage self, std::string const & aFileName) -> bool

        Parameters:
            aFileName: std::string const &

        printToFile(Storage self, std::string const & aFileName, double aDT, std::string const & aMode="w") -> int

        Parameters:
            aFileName: std::string const &
            aDT: double
            aMode: std::string const &

        printToFile(Storage self, std::string const & aFileName, double aDT) -> int

        Parameters:
            aFileName: std::string const &
            aDT: double

        """
        return _opensim.Storage_printToFile(self, *args)

    def setOutputFileName(self, *args):
        """
        setOutputFileName(Storage self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.Storage_setOutputFileName(self, *args)

    def printResult(*args):
        """
        printResult(Storage aStorage, std::string const & aName, std::string const & aDir, double aDT, 
            std::string const & aExtension)

        Parameters:
            aStorage: OpenSim::Storage const *
            aName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        """
        return _opensim.Storage_printResult(*args)

    if _newclass:printResult = staticmethod(printResult)
    __swig_getmethods__["printResult"] = lambda x: printResult
    def interpolateAt(self, *args):
        """
        interpolateAt(Storage self, ArrayDouble targetTimes)

        Parameters:
            targetTimes: OpenSim::Array< double > const &

        """
        return _opensim.Storage_interpolateAt(self, *args)

Storage_swigregister = _opensim.Storage_swigregister
Storage_swigregister(Storage)
Storage_DEFAULT_CAPACITY = cvar.Storage_DEFAULT_CAPACITY

def Storage_safeDownCast(*args):
  """
    Storage_safeDownCast(OpenSimObject obj) -> Storage

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Storage_safeDownCast(*args)

def Storage_getClassName():
  """Storage_getClassName() -> std::string const &"""
  return _opensim.Storage_getClassName()
Storage.MAX_RESAMPLE_SIZE = _opensim.cvar.Storage_MAX_RESAMPLE_SIZE

def Storage_getLatestVersion():
  """Storage_getLatestVersion() -> int const &"""
  return _opensim.Storage_getLatestVersion()

def Storage_printResult(*args):
  """
    Storage_printResult(Storage aStorage, std::string const & aName, std::string const & aDir, double aDT, 
        std::string const & aExtension)

    Parameters:
        aStorage: OpenSim::Storage const *
        aName: std::string const &
        aDir: std::string const &
        aDT: double
        aExtension: std::string const &

    """
  return _opensim.Storage_printResult(*args)

class Units(_object):
    """Proxy of C++ OpenSim::Units class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Units, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Units, name)
    __repr__ = _swig_repr
    UnknownUnits = _opensim.Units_UnknownUnits
    Radians = _opensim.Units_Radians
    Degrees = _opensim.Units_Degrees
    Millimeters = _opensim.Units_Millimeters
    Centimeters = _opensim.Units_Centimeters
    Meters = _opensim.Units_Meters
    Seconds = _opensim.Units_Seconds
    Milliseconds = _opensim.Units_Milliseconds
    Newtons = _opensim.Units_Newtons
    def __init__(self, *args): 
        """
        __init__(OpenSim::Units self) -> Units
        __init__(OpenSim::Units self, Units aUnits) -> Units

        Parameters:
            aUnits: OpenSim::Units const &

        __init__(OpenSim::Units self, std::string const aString) -> Units

        Parameters:
            aString: std::string const

        __init__(OpenSim::Units self, OpenSim::Units::UnitType aType) -> Units

        Parameters:
            aType: enum OpenSim::Units::UnitType

        """
        this = _opensim.new_Units(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_Units
    __del__ = lambda self : None;
    def convertTo(self, *args):
        """
        convertTo(Units self, OpenSim::Units::UnitType aType, double aValue) -> double

        Parameters:
            aType: enum OpenSim::Units::UnitType
            aValue: double

        convertTo(Units self, OpenSim::Units::UnitType aType) -> double

        Parameters:
            aType: enum OpenSim::Units::UnitType

        convertTo(Units self, Units aUnit) -> double

        Parameters:
            aUnit: OpenSim::Units const &

        """
        return _opensim.Units_convertTo(self, *args)

    def getType(self):
        """
        getType(Units self) -> OpenSim::Units::UnitType

        Parameters:
            self: OpenSim::Units const *

        """
        return _opensim.Units_getType(self)

    def getLabel(self):
        """
        getLabel(Units self) -> std::string

        Parameters:
            self: OpenSim::Units const *

        """
        return _opensim.Units_getLabel(self)

    def getAbbreviation(self):
        """
        getAbbreviation(Units self) -> std::string

        Parameters:
            self: OpenSim::Units const *

        """
        return _opensim.Units_getAbbreviation(self)

Units_swigregister = _opensim.Units_swigregister
Units_swigregister(Units)

class IO(_object):
    """Proxy of C++ OpenSim::IO class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, IO, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, IO, name)
    __repr__ = _swig_repr
    def ConstructDateAndTimeStamp():
        """ConstructDateAndTimeStamp() -> char *"""
        return _opensim.IO_ConstructDateAndTimeStamp()

    if _newclass:ConstructDateAndTimeStamp = staticmethod(ConstructDateAndTimeStamp)
    __swig_getmethods__["ConstructDateAndTimeStamp"] = lambda x: ConstructDateAndTimeStamp
    def FixSlashesInFilePath(*args):
        """
        FixSlashesInFilePath(std::string const & path) -> std::string

        Parameters:
            path: std::string const &

        """
        return _opensim.IO_FixSlashesInFilePath(*args)

    if _newclass:FixSlashesInFilePath = staticmethod(FixSlashesInFilePath)
    __swig_getmethods__["FixSlashesInFilePath"] = lambda x: FixSlashesInFilePath
    def SetScientific(*args):
        """
        SetScientific(bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.IO_SetScientific(*args)

    if _newclass:SetScientific = staticmethod(SetScientific)
    __swig_getmethods__["SetScientific"] = lambda x: SetScientific
    def GetScientific():
        """GetScientific() -> bool"""
        return _opensim.IO_GetScientific()

    if _newclass:GetScientific = staticmethod(GetScientific)
    __swig_getmethods__["GetScientific"] = lambda x: GetScientific
    def SetGFormatForDoubleOutput(*args):
        """
        SetGFormatForDoubleOutput(bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.IO_SetGFormatForDoubleOutput(*args)

    if _newclass:SetGFormatForDoubleOutput = staticmethod(SetGFormatForDoubleOutput)
    __swig_getmethods__["SetGFormatForDoubleOutput"] = lambda x: SetGFormatForDoubleOutput
    def GetGFormatForDoubleOutput():
        """GetGFormatForDoubleOutput() -> bool"""
        return _opensim.IO_GetGFormatForDoubleOutput()

    if _newclass:GetGFormatForDoubleOutput = staticmethod(GetGFormatForDoubleOutput)
    __swig_getmethods__["GetGFormatForDoubleOutput"] = lambda x: GetGFormatForDoubleOutput
    def SetDigitsPad(*args):
        """
        SetDigitsPad(int aPad)

        Parameters:
            aPad: int

        """
        return _opensim.IO_SetDigitsPad(*args)

    if _newclass:SetDigitsPad = staticmethod(SetDigitsPad)
    __swig_getmethods__["SetDigitsPad"] = lambda x: SetDigitsPad
    def GetDigitsPad():
        """GetDigitsPad() -> int"""
        return _opensim.IO_GetDigitsPad()

    if _newclass:GetDigitsPad = staticmethod(GetDigitsPad)
    __swig_getmethods__["GetDigitsPad"] = lambda x: GetDigitsPad
    def SetPrecision(*args):
        """
        SetPrecision(int aPlaces)

        Parameters:
            aPlaces: int

        """
        return _opensim.IO_SetPrecision(*args)

    if _newclass:SetPrecision = staticmethod(SetPrecision)
    __swig_getmethods__["SetPrecision"] = lambda x: SetPrecision
    def GetPrecision():
        """GetPrecision() -> int"""
        return _opensim.IO_GetPrecision()

    if _newclass:GetPrecision = staticmethod(GetPrecision)
    __swig_getmethods__["GetPrecision"] = lambda x: GetPrecision
    def GetDoubleOutputFormat():
        """GetDoubleOutputFormat() -> char const *"""
        return _opensim.IO_GetDoubleOutputFormat()

    if _newclass:GetDoubleOutputFormat = staticmethod(GetDoubleOutputFormat)
    __swig_getmethods__["GetDoubleOutputFormat"] = lambda x: GetDoubleOutputFormat
    def SetPrintOfflineDocuments(*args):
        """
        SetPrintOfflineDocuments(bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.IO_SetPrintOfflineDocuments(*args)

    if _newclass:SetPrintOfflineDocuments = staticmethod(SetPrintOfflineDocuments)
    __swig_getmethods__["SetPrintOfflineDocuments"] = lambda x: SetPrintOfflineDocuments
    def GetPrintOfflineDocuments():
        """GetPrintOfflineDocuments() -> bool"""
        return _opensim.IO_GetPrintOfflineDocuments()

    if _newclass:GetPrintOfflineDocuments = staticmethod(GetPrintOfflineDocuments)
    __swig_getmethods__["GetPrintOfflineDocuments"] = lambda x: GetPrintOfflineDocuments
    def makeDir(*args):
        """
        makeDir(std::string const & aDirName) -> int

        Parameters:
            aDirName: std::string const &

        """
        return _opensim.IO_makeDir(*args)

    if _newclass:makeDir = staticmethod(makeDir)
    __swig_getmethods__["makeDir"] = lambda x: makeDir
    def chDir(*args):
        """
        chDir(std::string const & aDirName) -> int

        Parameters:
            aDirName: std::string const &

        """
        return _opensim.IO_chDir(*args)

    if _newclass:chDir = staticmethod(chDir)
    __swig_getmethods__["chDir"] = lambda x: chDir
    def getCwd():
        """getCwd() -> std::string"""
        return _opensim.IO_getCwd()

    if _newclass:getCwd = staticmethod(getCwd)
    __swig_getmethods__["getCwd"] = lambda x: getCwd
    def getParentDirectory(*args):
        """
        getParentDirectory(std::string const & fileName) -> std::string

        Parameters:
            fileName: std::string const &

        """
        return _opensim.IO_getParentDirectory(*args)

    if _newclass:getParentDirectory = staticmethod(getParentDirectory)
    __swig_getmethods__["getParentDirectory"] = lambda x: getParentDirectory
    def GetFileNameFromURI(*args):
        """
        GetFileNameFromURI(std::string const & aURI) -> std::string

        Parameters:
            aURI: std::string const &

        """
        return _opensim.IO_GetFileNameFromURI(*args)

    if _newclass:GetFileNameFromURI = staticmethod(GetFileNameFromURI)
    __swig_getmethods__["GetFileNameFromURI"] = lambda x: GetFileNameFromURI
    def formatText(*args):
        """
        formatText(std::string const & aComment, std::string const & leadingWhitespace, int width, std::string const & endlineTokenToInsert="\n") -> std::string

        Parameters:
            aComment: std::string const &
            leadingWhitespace: std::string const &
            width: int
            endlineTokenToInsert: std::string const &

        formatText(std::string const & aComment, std::string const & leadingWhitespace, int width) -> std::string

        Parameters:
            aComment: std::string const &
            leadingWhitespace: std::string const &
            width: int

        """
        return _opensim.IO_formatText(*args)

    if _newclass:formatText = staticmethod(formatText)
    __swig_getmethods__["formatText"] = lambda x: formatText
    def GetSuffix(*args):
        """
        GetSuffix(std::string const & aStr, int aLen) -> std::string

        Parameters:
            aStr: std::string const &
            aLen: int

        """
        return _opensim.IO_GetSuffix(*args)

    if _newclass:GetSuffix = staticmethod(GetSuffix)
    __swig_getmethods__["GetSuffix"] = lambda x: GetSuffix
    def RemoveSuffix(*args):
        """
        RemoveSuffix(std::string & rStr, int aLen)

        Parameters:
            rStr: std::string &
            aLen: int

        """
        return _opensim.IO_RemoveSuffix(*args)

    if _newclass:RemoveSuffix = staticmethod(RemoveSuffix)
    __swig_getmethods__["RemoveSuffix"] = lambda x: RemoveSuffix
    def replaceSubstring(*args):
        """
        replaceSubstring(std::string const & aStr, std::string const & aFrom, std::string const & aTo) -> std::string

        Parameters:
            aStr: std::string const &
            aFrom: std::string const &
            aTo: std::string const &

        """
        return _opensim.IO_replaceSubstring(*args)

    if _newclass:replaceSubstring = staticmethod(replaceSubstring)
    __swig_getmethods__["replaceSubstring"] = lambda x: replaceSubstring
    def TrimLeadingWhitespace(*args):
        """
        TrimLeadingWhitespace(std::string & rStr)

        Parameters:
            rStr: std::string &

        """
        return _opensim.IO_TrimLeadingWhitespace(*args)

    if _newclass:TrimLeadingWhitespace = staticmethod(TrimLeadingWhitespace)
    __swig_getmethods__["TrimLeadingWhitespace"] = lambda x: TrimLeadingWhitespace
    def TrimTrailingWhitespace(*args):
        """
        TrimTrailingWhitespace(std::string & rStr)

        Parameters:
            rStr: std::string &

        """
        return _opensim.IO_TrimTrailingWhitespace(*args)

    if _newclass:TrimTrailingWhitespace = staticmethod(TrimTrailingWhitespace)
    __swig_getmethods__["TrimTrailingWhitespace"] = lambda x: TrimTrailingWhitespace
    def TrimWhitespace(*args):
        """
        TrimWhitespace(std::string & rStr)

        Parameters:
            rStr: std::string &

        """
        return _opensim.IO_TrimWhitespace(*args)

    if _newclass:TrimWhitespace = staticmethod(TrimWhitespace)
    __swig_getmethods__["TrimWhitespace"] = lambda x: TrimWhitespace
    def Lowercase(*args):
        """
        Lowercase(std::string const & aStr) -> std::string

        Parameters:
            aStr: std::string const &

        """
        return _opensim.IO_Lowercase(*args)

    if _newclass:Lowercase = staticmethod(Lowercase)
    __swig_getmethods__["Lowercase"] = lambda x: Lowercase
    def Uppercase(*args):
        """
        Uppercase(std::string const & aStr) -> std::string

        Parameters:
            aStr: std::string const &

        """
        return _opensim.IO_Uppercase(*args)

    if _newclass:Uppercase = staticmethod(Uppercase)
    __swig_getmethods__["Uppercase"] = lambda x: Uppercase
    def __init__(self): 
        """__init__(OpenSim::IO self) -> IO"""
        this = _opensim.new_IO()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_IO
    __del__ = lambda self : None;
IO_swigregister = _opensim.IO_swigregister
IO_swigregister(IO)
IO_STRLEN = cvar.IO_STRLEN

def IO_ConstructDateAndTimeStamp():
  """IO_ConstructDateAndTimeStamp() -> char *"""
  return _opensim.IO_ConstructDateAndTimeStamp()

def IO_FixSlashesInFilePath(*args):
  """
    IO_FixSlashesInFilePath(std::string const & path) -> std::string

    Parameters:
        path: std::string const &

    """
  return _opensim.IO_FixSlashesInFilePath(*args)

def IO_SetScientific(*args):
  """
    IO_SetScientific(bool aTrueFalse)

    Parameters:
        aTrueFalse: bool

    """
  return _opensim.IO_SetScientific(*args)

def IO_GetScientific():
  """IO_GetScientific() -> bool"""
  return _opensim.IO_GetScientific()

def IO_SetGFormatForDoubleOutput(*args):
  """
    IO_SetGFormatForDoubleOutput(bool aTrueFalse)

    Parameters:
        aTrueFalse: bool

    """
  return _opensim.IO_SetGFormatForDoubleOutput(*args)

def IO_GetGFormatForDoubleOutput():
  """IO_GetGFormatForDoubleOutput() -> bool"""
  return _opensim.IO_GetGFormatForDoubleOutput()

def IO_SetDigitsPad(*args):
  """
    IO_SetDigitsPad(int aPad)

    Parameters:
        aPad: int

    """
  return _opensim.IO_SetDigitsPad(*args)

def IO_GetDigitsPad():
  """IO_GetDigitsPad() -> int"""
  return _opensim.IO_GetDigitsPad()

def IO_SetPrecision(*args):
  """
    IO_SetPrecision(int aPlaces)

    Parameters:
        aPlaces: int

    """
  return _opensim.IO_SetPrecision(*args)

def IO_GetPrecision():
  """IO_GetPrecision() -> int"""
  return _opensim.IO_GetPrecision()

def IO_GetDoubleOutputFormat():
  """IO_GetDoubleOutputFormat() -> char const *"""
  return _opensim.IO_GetDoubleOutputFormat()

def IO_SetPrintOfflineDocuments(*args):
  """
    IO_SetPrintOfflineDocuments(bool aTrueFalse)

    Parameters:
        aTrueFalse: bool

    """
  return _opensim.IO_SetPrintOfflineDocuments(*args)

def IO_GetPrintOfflineDocuments():
  """IO_GetPrintOfflineDocuments() -> bool"""
  return _opensim.IO_GetPrintOfflineDocuments()

def IO_makeDir(*args):
  """
    IO_makeDir(std::string const & aDirName) -> int

    Parameters:
        aDirName: std::string const &

    """
  return _opensim.IO_makeDir(*args)

def IO_chDir(*args):
  """
    IO_chDir(std::string const & aDirName) -> int

    Parameters:
        aDirName: std::string const &

    """
  return _opensim.IO_chDir(*args)

def IO_getCwd():
  """IO_getCwd() -> std::string"""
  return _opensim.IO_getCwd()

def IO_getParentDirectory(*args):
  """
    IO_getParentDirectory(std::string const & fileName) -> std::string

    Parameters:
        fileName: std::string const &

    """
  return _opensim.IO_getParentDirectory(*args)

def IO_GetFileNameFromURI(*args):
  """
    IO_GetFileNameFromURI(std::string const & aURI) -> std::string

    Parameters:
        aURI: std::string const &

    """
  return _opensim.IO_GetFileNameFromURI(*args)

def IO_formatText(*args):
  """
    formatText(std::string const & aComment, std::string const & leadingWhitespace, int width, std::string const & endlineTokenToInsert="\n") -> std::string

    Parameters:
        aComment: std::string const &
        leadingWhitespace: std::string const &
        width: int
        endlineTokenToInsert: std::string const &

    IO_formatText(std::string const & aComment, std::string const & leadingWhitespace, int width) -> std::string

    Parameters:
        aComment: std::string const &
        leadingWhitespace: std::string const &
        width: int

    """
  return _opensim.IO_formatText(*args)

def IO_GetSuffix(*args):
  """
    IO_GetSuffix(std::string const & aStr, int aLen) -> std::string

    Parameters:
        aStr: std::string const &
        aLen: int

    """
  return _opensim.IO_GetSuffix(*args)

def IO_RemoveSuffix(*args):
  """
    IO_RemoveSuffix(std::string & rStr, int aLen)

    Parameters:
        rStr: std::string &
        aLen: int

    """
  return _opensim.IO_RemoveSuffix(*args)

def IO_replaceSubstring(*args):
  """
    IO_replaceSubstring(std::string const & aStr, std::string const & aFrom, std::string const & aTo) -> std::string

    Parameters:
        aStr: std::string const &
        aFrom: std::string const &
        aTo: std::string const &

    """
  return _opensim.IO_replaceSubstring(*args)

def IO_TrimLeadingWhitespace(*args):
  """
    IO_TrimLeadingWhitespace(std::string & rStr)

    Parameters:
        rStr: std::string &

    """
  return _opensim.IO_TrimLeadingWhitespace(*args)

def IO_TrimTrailingWhitespace(*args):
  """
    IO_TrimTrailingWhitespace(std::string & rStr)

    Parameters:
        rStr: std::string &

    """
  return _opensim.IO_TrimTrailingWhitespace(*args)

def IO_TrimWhitespace(*args):
  """
    IO_TrimWhitespace(std::string & rStr)

    Parameters:
        rStr: std::string &

    """
  return _opensim.IO_TrimWhitespace(*args)

def IO_Lowercase(*args):
  """
    IO_Lowercase(std::string const & aStr) -> std::string

    Parameters:
        aStr: std::string const &

    """
  return _opensim.IO_Lowercase(*args)

def IO_Uppercase(*args):
  """
    IO_Uppercase(std::string const & aStr) -> std::string

    Parameters:
        aStr: std::string const &

    """
  return _opensim.IO_Uppercase(*args)

class Function(OpenSimObject):
    """Proxy of C++ OpenSim::Function class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Function, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Function, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Function

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Function_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Function self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Function_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Function_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Function self) -> Function

        Parameters:
            self: OpenSim::Function const *

        """
        return _opensim.Function_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Function self) -> std::string const &

        Parameters:
            self: OpenSim::Function const *

        """
        return _opensim.Function_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_Function
    __del__ = lambda self : None;
    def init(self, *args):
        """
        init(Function self, Function aFunction)

        Parameters:
            aFunction: OpenSim::Function *

        """
        return _opensim.Function_init(self, *args)

    def makeFunctionOfType(*args):
        """
        makeFunctionOfType(Function aFunction, std::string const & aNewTypeName) -> Function

        Parameters:
            aFunction: OpenSim::Function *
            aNewTypeName: std::string const &

        """
        return _opensim.Function_makeFunctionOfType(*args)

    if _newclass:makeFunctionOfType = staticmethod(makeFunctionOfType)
    __swig_getmethods__["makeFunctionOfType"] = lambda x: makeFunctionOfType
    def calcValue(self, *args):
        """
        calcValue(Function self, Vector x) -> double

        Parameters:
            x: SimTK::Vector const &

        """
        return _opensim.Function_calcValue(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(Function self, std::vector< int > const & derivComponents, Vector x) -> double

        Parameters:
            derivComponents: std::vector< int > const &
            x: SimTK::Vector const &

        """
        return _opensim.Function_calcDerivative(self, *args)

    def getArgumentSize(self):
        """
        getArgumentSize(Function self) -> int

        Parameters:
            self: OpenSim::Function const *

        """
        return _opensim.Function_getArgumentSize(self)

    def getMaxDerivativeOrder(self):
        """
        getMaxDerivativeOrder(Function self) -> int

        Parameters:
            self: OpenSim::Function const *

        """
        return _opensim.Function_getMaxDerivativeOrder(self)

    def createSimTKFunction(self):
        """
        createSimTKFunction(Function self) -> SimTK::Function *

        Parameters:
            self: OpenSim::Function const *

        """
        return _opensim.Function_createSimTKFunction(self)

Function_swigregister = _opensim.Function_swigregister
Function_swigregister(Function)

def Function_safeDownCast(*args):
  """
    Function_safeDownCast(OpenSimObject obj) -> Function

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Function_safeDownCast(*args)

def Function_getClassName():
  """Function_getClassName() -> std::string const &"""
  return _opensim.Function_getClassName()

def Function_makeFunctionOfType(*args):
  """
    Function_makeFunctionOfType(Function aFunction, std::string const & aNewTypeName) -> Function

    Parameters:
        aFunction: OpenSim::Function *
        aNewTypeName: std::string const &

    """
  return _opensim.Function_makeFunctionOfType(*args)

class SetFunctions(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Function)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetFunctions, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetFunctions, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetFunctions

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetFunctions_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetFunctions self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetFunctions_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetFunctions_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetFunctions self) -> SetFunctions

        Parameters:
            self: OpenSim::Set< OpenSim::Function > const *

        """
        return _opensim.SetFunctions_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetFunctions self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Function > const *

        """
        return _opensim.SetFunctions_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetFunctions
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Function)> self) -> SetFunctions
        __init__(OpenSim::Set<(OpenSim::Function)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetFunctions

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Function)> self, std::string const & aFileName) -> SetFunctions

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Function)> self, SetFunctions aSet) -> SetFunctions

        Parameters:
            aSet: OpenSim::Set< OpenSim::Function > const &

        """
        this = _opensim.new_SetFunctions(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetFunctions self)

        Parameters:
            self: OpenSim::Set< OpenSim::Function > *

        """
        return _opensim.SetFunctions_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetFunctions self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetFunctions_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetFunctions self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetFunctions_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetFunctions self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Function > const *

        """
        return _opensim.SetFunctions_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetFunctions self, Function aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Function const *
            aStartIndex: int

        getIndex(SetFunctions self, Function aObject) -> int

        Parameters:
            aObject: OpenSim::Function const *

        getIndex(SetFunctions self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetFunctions self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetFunctions_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetFunctions self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetFunctions_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetFunctions self, Function aObject) -> bool

        Parameters:
            aObject: OpenSim::Function *

        """
        return _opensim.SetFunctions_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetFunctions self, Function aObject) -> bool

        Parameters:
            aObject: OpenSim::Function const &

        """
        return _opensim.SetFunctions_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetFunctions self, int aIndex, Function aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Function *

        """
        return _opensim.SetFunctions_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetFunctions self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetFunctions self, Function aObject) -> bool

        Parameters:
            aObject: OpenSim::Function const *

        """
        return _opensim.SetFunctions_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetFunctions self)

        Parameters:
            self: OpenSim::Set< OpenSim::Function > *

        """
        return _opensim.SetFunctions_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetFunctions self, int aIndex, Function aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Function *
            preserveGroups: bool

        set(SetFunctions self, int aIndex, Function aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Function *

        """
        return _opensim.SetFunctions_set(self, *args)

    def get(self, *args):
        """
        get(SetFunctions self, int aIndex) -> Function

        Parameters:
            aIndex: int

        get(SetFunctions self, std::string const & aName) -> Function

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetFunctions_get(self, *args)

    def contains(self, *args):
        """
        contains(SetFunctions self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetFunctions_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetFunctions self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetFunctions_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetFunctions self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Function > const *

        """
        return _opensim.SetFunctions_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetFunctions self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetFunctions_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetFunctions self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetFunctions_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetFunctions self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetFunctions_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetFunctions self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetFunctions_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetFunctions self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetFunctions_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetFunctions self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetFunctions self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetFunctions_getGroup(self, *args)

SetFunctions_swigregister = _opensim.SetFunctions_swigregister
SetFunctions_swigregister(SetFunctions)

def SetFunctions_safeDownCast(*args):
  """
    SetFunctions_safeDownCast(OpenSimObject obj) -> SetFunctions

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetFunctions_safeDownCast(*args)

def SetFunctions_getClassName():
  """SetFunctions_getClassName() -> std::string const &"""
  return _opensim.SetFunctions_getClassName()

class FunctionSet(SetFunctions):
    """Proxy of C++ OpenSim::FunctionSet class"""
    __swig_setmethods__ = {}
    for _s in [SetFunctions]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, FunctionSet, name, value)
    __swig_getmethods__ = {}
    for _s in [SetFunctions]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, FunctionSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> FunctionSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.FunctionSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(FunctionSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.FunctionSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.FunctionSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(FunctionSet self) -> FunctionSet

        Parameters:
            self: OpenSim::FunctionSet const *

        """
        return _opensim.FunctionSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(FunctionSet self) -> std::string const &

        Parameters:
            self: OpenSim::FunctionSet const *

        """
        return _opensim.FunctionSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::FunctionSet self) -> FunctionSet
        __init__(OpenSim::FunctionSet self, std::string const & aFileName) -> FunctionSet

        Parameters:
            aFileName: std::string const &

        """
        this = _opensim.new_FunctionSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_FunctionSet
    __del__ = lambda self : None;
    def evaluate(self, *args):
        """
        evaluate(FunctionSet self, int aIndex, int aDerivOrder, double aX=0.0) -> double

        Parameters:
            aIndex: int
            aDerivOrder: int
            aX: double

        evaluate(FunctionSet self, int aIndex, int aDerivOrder) -> double

        Parameters:
            aIndex: int
            aDerivOrder: int

        evaluate(FunctionSet self, ArrayDouble rValues, int aDerivOrder, double aX=0.0)

        Parameters:
            rValues: OpenSim::Array< double > &
            aDerivOrder: int
            aX: double

        evaluate(FunctionSet self, ArrayDouble rValues, int aDerivOrder)

        Parameters:
            rValues: OpenSim::Array< double > &
            aDerivOrder: int

        """
        return _opensim.FunctionSet_evaluate(self, *args)

    def adoptAndAppend(self, aFunction):
        aFunction._markAdopted()
        return super(FunctionSet, self).adoptAndAppend(aFunction)

FunctionSet_swigregister = _opensim.FunctionSet_swigregister
FunctionSet_swigregister(FunctionSet)

def FunctionSet_safeDownCast(*args):
  """
    FunctionSet_safeDownCast(OpenSimObject obj) -> FunctionSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.FunctionSet_safeDownCast(*args)

def FunctionSet_getClassName():
  """FunctionSet_getClassName() -> std::string const &"""
  return _opensim.FunctionSet_getClassName()

class Constant(Function):
    """Proxy of C++ OpenSim::Constant class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Constant, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Constant, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Constant

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Constant_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Constant self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Constant_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Constant_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Constant self) -> Constant

        Parameters:
            self: OpenSim::Constant const *

        """
        return _opensim.Constant_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Constant self) -> std::string const &

        Parameters:
            self: OpenSim::Constant const *

        """
        return _opensim.Constant_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Constant self) -> Constant
        __init__(OpenSim::Constant self, double value) -> Constant

        Parameters:
            value: double

        __init__(OpenSim::Constant self, Constant aSpline) -> Constant

        Parameters:
            aSpline: OpenSim::Constant const &

        """
        this = _opensim.new_Constant(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_Constant
    __del__ = lambda self : None;
    def setValue(self, *args):
        """
        setValue(Constant self, double aValue)

        Parameters:
            aValue: double

        """
        return _opensim.Constant_setValue(self, *args)

    def calcValue(self, *args):
        """
        calcValue(Constant self, Vector xUnused) -> double

        Parameters:
            xUnused: SimTK::Vector const &

        """
        return _opensim.Constant_calcValue(self, *args)

    def getValue(self):
        """
        getValue(Constant self) -> double const

        Parameters:
            self: OpenSim::Constant const *

        """
        return _opensim.Constant_getValue(self)

    def createSimTKFunction(self):
        """
        createSimTKFunction(Constant self) -> SimTK::Function *

        Parameters:
            self: OpenSim::Constant const *

        """
        return _opensim.Constant_createSimTKFunction(self)

Constant_swigregister = _opensim.Constant_swigregister
Constant_swigregister(Constant)

def Constant_safeDownCast(*args):
  """
    Constant_safeDownCast(OpenSimObject obj) -> Constant

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Constant_safeDownCast(*args)

def Constant_getClassName():
  """Constant_getClassName() -> std::string const &"""
  return _opensim.Constant_getClassName()

class SimmSpline(Function):
    """Proxy of C++ OpenSim::SimmSpline class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SimmSpline, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SimmSpline, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SimmSpline

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SimmSpline_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SimmSpline self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SimmSpline_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SimmSpline_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SimmSpline self) -> SimmSpline

        Parameters:
            self: OpenSim::SimmSpline const *

        """
        return _opensim.SimmSpline_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SimmSpline self) -> std::string const &

        Parameters:
            self: OpenSim::SimmSpline const *

        """
        return _opensim.SimmSpline_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::SimmSpline self) -> SimmSpline
        __init__(OpenSim::SimmSpline self, int aN, double const * aTimes, double const * aValues, std::string const & aName="") -> SimmSpline

        Parameters:
            aN: int
            aTimes: double const *
            aValues: double const *
            aName: std::string const &

        __init__(OpenSim::SimmSpline self, int aN, double const * aTimes, double const * aValues) -> SimmSpline

        Parameters:
            aN: int
            aTimes: double const *
            aValues: double const *

        __init__(OpenSim::SimmSpline self, SimmSpline aSpline) -> SimmSpline

        Parameters:
            aSpline: OpenSim::SimmSpline const &

        """
        this = _opensim.new_SimmSpline(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_SimmSpline
    __del__ = lambda self : None;
    def init(self, *args):
        """
        init(SimmSpline self, Function aFunction)

        Parameters:
            aFunction: OpenSim::Function *

        """
        return _opensim.SimmSpline_init(self, *args)

    def getSize(self):
        """
        getSize(SimmSpline self) -> int

        Parameters:
            self: OpenSim::SimmSpline const *

        """
        return _opensim.SimmSpline_getSize(self)

    def getXValues(self):
        """
        getXValues(SimmSpline self) -> double const *

        Parameters:
            self: OpenSim::SimmSpline const *

        """
        return _opensim.SimmSpline_getXValues(self)

    def getYValues(self):
        """
        getYValues(SimmSpline self) -> double const *

        Parameters:
            self: OpenSim::SimmSpline const *

        """
        return _opensim.SimmSpline_getYValues(self)

    def getNumberOfPoints(self):
        """
        getNumberOfPoints(SimmSpline self) -> int

        Parameters:
            self: OpenSim::SimmSpline const *

        """
        return _opensim.SimmSpline_getNumberOfPoints(self)

    def getX(self, *args):
        """
        getX(SimmSpline self) -> ArrayDouble
        getX(SimmSpline self, int aIndex) -> double

        Parameters:
            aIndex: int

        """
        return _opensim.SimmSpline_getX(self, *args)

    def getY(self, *args):
        """
        getY(SimmSpline self) -> ArrayDouble
        getY(SimmSpline self, int aIndex) -> double

        Parameters:
            aIndex: int

        """
        return _opensim.SimmSpline_getY(self, *args)

    def getZ(self, *args):
        """
        getZ(SimmSpline self, int aIndex) -> double

        Parameters:
            aIndex: int

        """
        return _opensim.SimmSpline_getZ(self, *args)

    def setX(self, *args):
        """
        setX(SimmSpline self, int aIndex, double aValue)

        Parameters:
            aIndex: int
            aValue: double

        """
        return _opensim.SimmSpline_setX(self, *args)

    def setY(self, *args):
        """
        setY(SimmSpline self, int aIndex, double aValue)

        Parameters:
            aIndex: int
            aValue: double

        """
        return _opensim.SimmSpline_setY(self, *args)

    def deletePoint(self, *args):
        """
        deletePoint(SimmSpline self, int aIndex) -> bool

        Parameters:
            aIndex: int

        """
        return _opensim.SimmSpline_deletePoint(self, *args)

    def deletePoints(self, *args):
        """
        deletePoints(SimmSpline self, ArrayInt indices) -> bool

        Parameters:
            indices: OpenSim::Array< int > const &

        """
        return _opensim.SimmSpline_deletePoints(self, *args)

    def addPoint(self, *args):
        """
        addPoint(SimmSpline self, double aX, double aY) -> int

        Parameters:
            aX: double
            aY: double

        """
        return _opensim.SimmSpline_addPoint(self, *args)

    def calcValue(self, *args):
        """
        calcValue(SimmSpline self, Vector x) -> double

        Parameters:
            x: SimTK::Vector const &

        """
        return _opensim.SimmSpline_calcValue(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(SimmSpline self, std::vector< int > const & derivComponents, Vector x) -> double

        Parameters:
            derivComponents: std::vector< int > const &
            x: SimTK::Vector const &

        """
        return _opensim.SimmSpline_calcDerivative(self, *args)

    def getArgumentSize(self):
        """
        getArgumentSize(SimmSpline self) -> int

        Parameters:
            self: OpenSim::SimmSpline const *

        """
        return _opensim.SimmSpline_getArgumentSize(self)

    def getMaxDerivativeOrder(self):
        """
        getMaxDerivativeOrder(SimmSpline self) -> int

        Parameters:
            self: OpenSim::SimmSpline const *

        """
        return _opensim.SimmSpline_getMaxDerivativeOrder(self)

    def createSimTKFunction(self):
        """
        createSimTKFunction(SimmSpline self) -> SimTK::Function *

        Parameters:
            self: OpenSim::SimmSpline const *

        """
        return _opensim.SimmSpline_createSimTKFunction(self)

    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(SimmSpline self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(SimmSpline self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.SimmSpline_updateFromXMLNode(self, *args)

SimmSpline_swigregister = _opensim.SimmSpline_swigregister
SimmSpline_swigregister(SimmSpline)

def SimmSpline_safeDownCast(*args):
  """
    SimmSpline_safeDownCast(OpenSimObject obj) -> SimmSpline

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SimmSpline_safeDownCast(*args)

def SimmSpline_getClassName():
  """SimmSpline_getClassName() -> std::string const &"""
  return _opensim.SimmSpline_getClassName()

class StepFunction(Function):
    """Proxy of C++ OpenSim::StepFunction class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, StepFunction, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, StepFunction, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> StepFunction

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.StepFunction_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(StepFunction self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.StepFunction_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.StepFunction_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(StepFunction self) -> StepFunction

        Parameters:
            self: OpenSim::StepFunction const *

        """
        return _opensim.StepFunction_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(StepFunction self) -> std::string const &

        Parameters:
            self: OpenSim::StepFunction const *

        """
        return _opensim.StepFunction_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::StepFunction self) -> StepFunction
        __init__(OpenSim::StepFunction self, double startTime, double endTime, double startValue=0.0, double endValue=1.0) -> StepFunction

        Parameters:
            startTime: double
            endTime: double
            startValue: double
            endValue: double

        __init__(OpenSim::StepFunction self, double startTime, double endTime, double startValue=0.0) -> StepFunction

        Parameters:
            startTime: double
            endTime: double
            startValue: double

        __init__(OpenSim::StepFunction self, double startTime, double endTime) -> StepFunction

        Parameters:
            startTime: double
            endTime: double

        __init__(OpenSim::StepFunction self, StepFunction aSpline) -> StepFunction

        Parameters:
            aSpline: OpenSim::StepFunction const &

        """
        this = _opensim.new_StepFunction(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_StepFunction
    __del__ = lambda self : None;
    def setStartTime(self, *args):
        """
        setStartTime(StepFunction self, double time)

        Parameters:
            time: double

        """
        return _opensim.StepFunction_setStartTime(self, *args)

    def getStartTime(self):
        """
        getStartTime(StepFunction self) -> double

        Parameters:
            self: OpenSim::StepFunction const *

        """
        return _opensim.StepFunction_getStartTime(self)

    def setEndTime(self, *args):
        """
        setEndTime(StepFunction self, double time)

        Parameters:
            time: double

        """
        return _opensim.StepFunction_setEndTime(self, *args)

    def getEndTime(self):
        """
        getEndTime(StepFunction self) -> double

        Parameters:
            self: OpenSim::StepFunction const *

        """
        return _opensim.StepFunction_getEndTime(self)

    def setStartValue(self, *args):
        """
        setStartValue(StepFunction self, double start)

        Parameters:
            start: double

        """
        return _opensim.StepFunction_setStartValue(self, *args)

    def getStartValue(self):
        """
        getStartValue(StepFunction self) -> double

        Parameters:
            self: OpenSim::StepFunction const *

        """
        return _opensim.StepFunction_getStartValue(self)

    def setEndValue(self, *args):
        """
        setEndValue(StepFunction self, double end)

        Parameters:
            end: double

        """
        return _opensim.StepFunction_setEndValue(self, *args)

    def getEndValue(self):
        """
        getEndValue(StepFunction self) -> double

        Parameters:
            self: OpenSim::StepFunction const *

        """
        return _opensim.StepFunction_getEndValue(self)

    def createSimTKFunction(self):
        """
        createSimTKFunction(StepFunction self) -> SimTK::Function *

        Parameters:
            self: OpenSim::StepFunction const *

        """
        return _opensim.StepFunction_createSimTKFunction(self)

StepFunction_swigregister = _opensim.StepFunction_swigregister
StepFunction_swigregister(StepFunction)

def StepFunction_safeDownCast(*args):
  """
    StepFunction_safeDownCast(OpenSimObject obj) -> StepFunction

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.StepFunction_safeDownCast(*args)

def StepFunction_getClassName():
  """StepFunction_getClassName() -> std::string const &"""
  return _opensim.StepFunction_getClassName()

class PiecewiseConstantFunction(Function):
    """Proxy of C++ OpenSim::PiecewiseConstantFunction class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PiecewiseConstantFunction, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PiecewiseConstantFunction, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PiecewiseConstantFunction

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PiecewiseConstantFunction_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PiecewiseConstantFunction self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PiecewiseConstantFunction_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PiecewiseConstantFunction_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PiecewiseConstantFunction self) -> PiecewiseConstantFunction

        Parameters:
            self: OpenSim::PiecewiseConstantFunction const *

        """
        return _opensim.PiecewiseConstantFunction_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PiecewiseConstantFunction self) -> std::string const &

        Parameters:
            self: OpenSim::PiecewiseConstantFunction const *

        """
        return _opensim.PiecewiseConstantFunction_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PiecewiseConstantFunction self) -> PiecewiseConstantFunction
        __init__(OpenSim::PiecewiseConstantFunction self, int aN, double const * aTimes, double const * aValues, std::string const & aName="") -> PiecewiseConstantFunction

        Parameters:
            aN: int
            aTimes: double const *
            aValues: double const *
            aName: std::string const &

        __init__(OpenSim::PiecewiseConstantFunction self, int aN, double const * aTimes, double const * aValues) -> PiecewiseConstantFunction

        Parameters:
            aN: int
            aTimes: double const *
            aValues: double const *

        __init__(OpenSim::PiecewiseConstantFunction self, PiecewiseConstantFunction aFunction) -> PiecewiseConstantFunction

        Parameters:
            aFunction: OpenSim::PiecewiseConstantFunction const &

        """
        this = _opensim.new_PiecewiseConstantFunction(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_PiecewiseConstantFunction
    __del__ = lambda self : None;
    def init(self, *args):
        """
        init(PiecewiseConstantFunction self, Function aFunction)

        Parameters:
            aFunction: OpenSim::Function *

        """
        return _opensim.PiecewiseConstantFunction_init(self, *args)

    def getSize(self):
        """
        getSize(PiecewiseConstantFunction self) -> int

        Parameters:
            self: OpenSim::PiecewiseConstantFunction const *

        """
        return _opensim.PiecewiseConstantFunction_getSize(self)

    def getXValues(self):
        """
        getXValues(PiecewiseConstantFunction self) -> double const *

        Parameters:
            self: OpenSim::PiecewiseConstantFunction const *

        """
        return _opensim.PiecewiseConstantFunction_getXValues(self)

    def getYValues(self):
        """
        getYValues(PiecewiseConstantFunction self) -> double const *

        Parameters:
            self: OpenSim::PiecewiseConstantFunction const *

        """
        return _opensim.PiecewiseConstantFunction_getYValues(self)

    def getNumberOfPoints(self):
        """
        getNumberOfPoints(PiecewiseConstantFunction self) -> int

        Parameters:
            self: OpenSim::PiecewiseConstantFunction const *

        """
        return _opensim.PiecewiseConstantFunction_getNumberOfPoints(self)

    def getX(self, *args):
        """
        getX(PiecewiseConstantFunction self) -> ArrayDouble
        getX(PiecewiseConstantFunction self, int aIndex) -> double

        Parameters:
            aIndex: int

        """
        return _opensim.PiecewiseConstantFunction_getX(self, *args)

    def getY(self, *args):
        """
        getY(PiecewiseConstantFunction self) -> ArrayDouble
        getY(PiecewiseConstantFunction self, int aIndex) -> double

        Parameters:
            aIndex: int

        """
        return _opensim.PiecewiseConstantFunction_getY(self, *args)

    def getZ(self, *args):
        """
        getZ(PiecewiseConstantFunction self, int aIndex) -> double

        Parameters:
            aIndex: int

        """
        return _opensim.PiecewiseConstantFunction_getZ(self, *args)

    def setX(self, *args):
        """
        setX(PiecewiseConstantFunction self, int aIndex, double aValue)

        Parameters:
            aIndex: int
            aValue: double

        """
        return _opensim.PiecewiseConstantFunction_setX(self, *args)

    def setY(self, *args):
        """
        setY(PiecewiseConstantFunction self, int aIndex, double aValue)

        Parameters:
            aIndex: int
            aValue: double

        """
        return _opensim.PiecewiseConstantFunction_setY(self, *args)

    def deletePoint(self, *args):
        """
        deletePoint(PiecewiseConstantFunction self, int aIndex) -> bool

        Parameters:
            aIndex: int

        """
        return _opensim.PiecewiseConstantFunction_deletePoint(self, *args)

    def deletePoints(self, *args):
        """
        deletePoints(PiecewiseConstantFunction self, ArrayInt indices) -> bool

        Parameters:
            indices: OpenSim::Array< int > const &

        """
        return _opensim.PiecewiseConstantFunction_deletePoints(self, *args)

    def addPoint(self, *args):
        """
        addPoint(PiecewiseConstantFunction self, double aX, double aY) -> int

        Parameters:
            aX: double
            aY: double

        """
        return _opensim.PiecewiseConstantFunction_addPoint(self, *args)

    def evaluateTotalFirstDerivative(self, *args):
        """
        evaluateTotalFirstDerivative(PiecewiseConstantFunction self, double aX, double aDxdt) -> double

        Parameters:
            aX: double
            aDxdt: double

        """
        return _opensim.PiecewiseConstantFunction_evaluateTotalFirstDerivative(self, *args)

    def evaluateTotalSecondDerivative(self, *args):
        """
        evaluateTotalSecondDerivative(PiecewiseConstantFunction self, double aX, double aDxdt, double aD2xdt2) -> double

        Parameters:
            aX: double
            aDxdt: double
            aD2xdt2: double

        """
        return _opensim.PiecewiseConstantFunction_evaluateTotalSecondDerivative(self, *args)

    def calcValue(self, *args):
        """
        calcValue(PiecewiseConstantFunction self, Vector x) -> double

        Parameters:
            x: SimTK::Vector const &

        """
        return _opensim.PiecewiseConstantFunction_calcValue(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(PiecewiseConstantFunction self, std::vector< int > const & derivComponents, Vector x) -> double

        Parameters:
            derivComponents: std::vector< int > const &
            x: SimTK::Vector const &

        """
        return _opensim.PiecewiseConstantFunction_calcDerivative(self, *args)

    def getArgumentSize(self):
        """
        getArgumentSize(PiecewiseConstantFunction self) -> int

        Parameters:
            self: OpenSim::PiecewiseConstantFunction const *

        """
        return _opensim.PiecewiseConstantFunction_getArgumentSize(self)

    def getMaxDerivativeOrder(self):
        """
        getMaxDerivativeOrder(PiecewiseConstantFunction self) -> int

        Parameters:
            self: OpenSim::PiecewiseConstantFunction const *

        """
        return _opensim.PiecewiseConstantFunction_getMaxDerivativeOrder(self)

    def createSimTKFunction(self):
        """
        createSimTKFunction(PiecewiseConstantFunction self) -> SimTK::Function *

        Parameters:
            self: OpenSim::PiecewiseConstantFunction const *

        """
        return _opensim.PiecewiseConstantFunction_createSimTKFunction(self)

PiecewiseConstantFunction_swigregister = _opensim.PiecewiseConstantFunction_swigregister
PiecewiseConstantFunction_swigregister(PiecewiseConstantFunction)

def PiecewiseConstantFunction_safeDownCast(*args):
  """
    PiecewiseConstantFunction_safeDownCast(OpenSimObject obj) -> PiecewiseConstantFunction

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PiecewiseConstantFunction_safeDownCast(*args)

def PiecewiseConstantFunction_getClassName():
  """PiecewiseConstantFunction_getClassName() -> std::string const &"""
  return _opensim.PiecewiseConstantFunction_getClassName()

class LinearFunction(Function):
    """Proxy of C++ OpenSim::LinearFunction class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, LinearFunction, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, LinearFunction, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> LinearFunction

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.LinearFunction_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(LinearFunction self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.LinearFunction_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.LinearFunction_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(LinearFunction self) -> LinearFunction

        Parameters:
            self: OpenSim::LinearFunction const *

        """
        return _opensim.LinearFunction_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(LinearFunction self) -> std::string const &

        Parameters:
            self: OpenSim::LinearFunction const *

        """
        return _opensim.LinearFunction_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::LinearFunction self) -> LinearFunction
        __init__(OpenSim::LinearFunction self, ArrayDouble coefficients) -> LinearFunction

        Parameters:
            coefficients: OpenSim::Array< double >

        __init__(OpenSim::LinearFunction self, double slope, double intercept) -> LinearFunction

        Parameters:
            slope: double
            intercept: double

        __init__(OpenSim::LinearFunction self, LinearFunction aSpline) -> LinearFunction

        Parameters:
            aSpline: OpenSim::LinearFunction const &

        """
        this = _opensim.new_LinearFunction(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_LinearFunction
    __del__ = lambda self : None;
    def setCoefficients(self, *args):
        """
        setCoefficients(LinearFunction self, ArrayDouble coefficients)

        Parameters:
            coefficients: OpenSim::Array< double >

        """
        return _opensim.LinearFunction_setCoefficients(self, *args)

    def setSlope(self, *args):
        """
        setSlope(LinearFunction self, double slope)

        Parameters:
            slope: double

        """
        return _opensim.LinearFunction_setSlope(self, *args)

    def setIntercept(self, *args):
        """
        setIntercept(LinearFunction self, double intercept)

        Parameters:
            intercept: double

        """
        return _opensim.LinearFunction_setIntercept(self, *args)

    def getCoefficients(self):
        """
        getCoefficients(LinearFunction self) -> ArrayDouble

        Parameters:
            self: OpenSim::LinearFunction const *

        """
        return _opensim.LinearFunction_getCoefficients(self)

    def getSlope(self):
        """
        getSlope(LinearFunction self) -> double

        Parameters:
            self: OpenSim::LinearFunction *

        """
        return _opensim.LinearFunction_getSlope(self)

    def getIntercept(self):
        """
        getIntercept(LinearFunction self) -> double

        Parameters:
            self: OpenSim::LinearFunction *

        """
        return _opensim.LinearFunction_getIntercept(self)

    def createSimTKFunction(self):
        """
        createSimTKFunction(LinearFunction self) -> SimTK::Function *

        Parameters:
            self: OpenSim::LinearFunction const *

        """
        return _opensim.LinearFunction_createSimTKFunction(self)

LinearFunction_swigregister = _opensim.LinearFunction_swigregister
LinearFunction_swigregister(LinearFunction)

def LinearFunction_safeDownCast(*args):
  """
    LinearFunction_safeDownCast(OpenSimObject obj) -> LinearFunction

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.LinearFunction_safeDownCast(*args)

def LinearFunction_getClassName():
  """LinearFunction_getClassName() -> std::string const &"""
  return _opensim.LinearFunction_getClassName()

class PiecewiseLinearFunction(Function):
    """Proxy of C++ OpenSim::PiecewiseLinearFunction class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PiecewiseLinearFunction, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PiecewiseLinearFunction, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PiecewiseLinearFunction

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PiecewiseLinearFunction_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PiecewiseLinearFunction self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PiecewiseLinearFunction_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PiecewiseLinearFunction_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PiecewiseLinearFunction self) -> PiecewiseLinearFunction

        Parameters:
            self: OpenSim::PiecewiseLinearFunction const *

        """
        return _opensim.PiecewiseLinearFunction_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PiecewiseLinearFunction self) -> std::string const &

        Parameters:
            self: OpenSim::PiecewiseLinearFunction const *

        """
        return _opensim.PiecewiseLinearFunction_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PiecewiseLinearFunction self) -> PiecewiseLinearFunction
        __init__(OpenSim::PiecewiseLinearFunction self, int aN, double const * aTimes, double const * aValues, std::string const & aName="") -> PiecewiseLinearFunction

        Parameters:
            aN: int
            aTimes: double const *
            aValues: double const *
            aName: std::string const &

        __init__(OpenSim::PiecewiseLinearFunction self, int aN, double const * aTimes, double const * aValues) -> PiecewiseLinearFunction

        Parameters:
            aN: int
            aTimes: double const *
            aValues: double const *

        __init__(OpenSim::PiecewiseLinearFunction self, PiecewiseLinearFunction aFunction) -> PiecewiseLinearFunction

        Parameters:
            aFunction: OpenSim::PiecewiseLinearFunction const &

        """
        this = _opensim.new_PiecewiseLinearFunction(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_PiecewiseLinearFunction
    __del__ = lambda self : None;
    def init(self, *args):
        """
        init(PiecewiseLinearFunction self, Function aFunction)

        Parameters:
            aFunction: OpenSim::Function *

        """
        return _opensim.PiecewiseLinearFunction_init(self, *args)

    def getSize(self):
        """
        getSize(PiecewiseLinearFunction self) -> int

        Parameters:
            self: OpenSim::PiecewiseLinearFunction const *

        """
        return _opensim.PiecewiseLinearFunction_getSize(self)

    def getXValues(self):
        """
        getXValues(PiecewiseLinearFunction self) -> double const *

        Parameters:
            self: OpenSim::PiecewiseLinearFunction const *

        """
        return _opensim.PiecewiseLinearFunction_getXValues(self)

    def getYValues(self):
        """
        getYValues(PiecewiseLinearFunction self) -> double const *

        Parameters:
            self: OpenSim::PiecewiseLinearFunction const *

        """
        return _opensim.PiecewiseLinearFunction_getYValues(self)

    def getNumberOfPoints(self):
        """
        getNumberOfPoints(PiecewiseLinearFunction self) -> int

        Parameters:
            self: OpenSim::PiecewiseLinearFunction const *

        """
        return _opensim.PiecewiseLinearFunction_getNumberOfPoints(self)

    def getX(self, *args):
        """
        getX(PiecewiseLinearFunction self) -> ArrayDouble
        getX(PiecewiseLinearFunction self, int aIndex) -> double

        Parameters:
            aIndex: int

        """
        return _opensim.PiecewiseLinearFunction_getX(self, *args)

    def getY(self, *args):
        """
        getY(PiecewiseLinearFunction self) -> ArrayDouble
        getY(PiecewiseLinearFunction self, int aIndex) -> double

        Parameters:
            aIndex: int

        """
        return _opensim.PiecewiseLinearFunction_getY(self, *args)

    def getZ(self, *args):
        """
        getZ(PiecewiseLinearFunction self, int aIndex) -> double

        Parameters:
            aIndex: int

        """
        return _opensim.PiecewiseLinearFunction_getZ(self, *args)

    def setX(self, *args):
        """
        setX(PiecewiseLinearFunction self, int aIndex, double aValue)

        Parameters:
            aIndex: int
            aValue: double

        """
        return _opensim.PiecewiseLinearFunction_setX(self, *args)

    def setY(self, *args):
        """
        setY(PiecewiseLinearFunction self, int aIndex, double aValue)

        Parameters:
            aIndex: int
            aValue: double

        """
        return _opensim.PiecewiseLinearFunction_setY(self, *args)

    def deletePoint(self, *args):
        """
        deletePoint(PiecewiseLinearFunction self, int aIndex) -> bool

        Parameters:
            aIndex: int

        """
        return _opensim.PiecewiseLinearFunction_deletePoint(self, *args)

    def deletePoints(self, *args):
        """
        deletePoints(PiecewiseLinearFunction self, ArrayInt indices) -> bool

        Parameters:
            indices: OpenSim::Array< int > const &

        """
        return _opensim.PiecewiseLinearFunction_deletePoints(self, *args)

    def addPoint(self, *args):
        """
        addPoint(PiecewiseLinearFunction self, double aX, double aY) -> int

        Parameters:
            aX: double
            aY: double

        """
        return _opensim.PiecewiseLinearFunction_addPoint(self, *args)

    def calcValue(self, *args):
        """
        calcValue(PiecewiseLinearFunction self, Vector x) -> double

        Parameters:
            x: SimTK::Vector const &

        """
        return _opensim.PiecewiseLinearFunction_calcValue(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(PiecewiseLinearFunction self, std::vector< int > const & derivComponents, Vector x) -> double

        Parameters:
            derivComponents: std::vector< int > const &
            x: SimTK::Vector const &

        """
        return _opensim.PiecewiseLinearFunction_calcDerivative(self, *args)

    def getArgumentSize(self):
        """
        getArgumentSize(PiecewiseLinearFunction self) -> int

        Parameters:
            self: OpenSim::PiecewiseLinearFunction const *

        """
        return _opensim.PiecewiseLinearFunction_getArgumentSize(self)

    def getMaxDerivativeOrder(self):
        """
        getMaxDerivativeOrder(PiecewiseLinearFunction self) -> int

        Parameters:
            self: OpenSim::PiecewiseLinearFunction const *

        """
        return _opensim.PiecewiseLinearFunction_getMaxDerivativeOrder(self)

    def createSimTKFunction(self):
        """
        createSimTKFunction(PiecewiseLinearFunction self) -> SimTK::Function *

        Parameters:
            self: OpenSim::PiecewiseLinearFunction const *

        """
        return _opensim.PiecewiseLinearFunction_createSimTKFunction(self)

    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(PiecewiseLinearFunction self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(PiecewiseLinearFunction self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.PiecewiseLinearFunction_updateFromXMLNode(self, *args)

PiecewiseLinearFunction_swigregister = _opensim.PiecewiseLinearFunction_swigregister
PiecewiseLinearFunction_swigregister(PiecewiseLinearFunction)

def PiecewiseLinearFunction_safeDownCast(*args):
  """
    PiecewiseLinearFunction_safeDownCast(OpenSimObject obj) -> PiecewiseLinearFunction

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PiecewiseLinearFunction_safeDownCast(*args)

def PiecewiseLinearFunction_getClassName():
  """PiecewiseLinearFunction_getClassName() -> std::string const &"""
  return _opensim.PiecewiseLinearFunction_getClassName()

class MultiplierFunction(Function):
    """Proxy of C++ OpenSim::MultiplierFunction class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MultiplierFunction, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MultiplierFunction, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MultiplierFunction

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MultiplierFunction_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MultiplierFunction self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MultiplierFunction_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MultiplierFunction_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MultiplierFunction self) -> MultiplierFunction

        Parameters:
            self: OpenSim::MultiplierFunction const *

        """
        return _opensim.MultiplierFunction_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MultiplierFunction self) -> std::string const &

        Parameters:
            self: OpenSim::MultiplierFunction const *

        """
        return _opensim.MultiplierFunction_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MultiplierFunction self) -> MultiplierFunction
        __init__(OpenSim::MultiplierFunction self, Function aFunction) -> MultiplierFunction

        Parameters:
            aFunction: OpenSim::Function *

        __init__(OpenSim::MultiplierFunction self, Function aFunction, double aScaleFactor) -> MultiplierFunction

        Parameters:
            aFunction: OpenSim::Function *
            aScaleFactor: double

        __init__(OpenSim::MultiplierFunction self, MultiplierFunction aFunction) -> MultiplierFunction

        Parameters:
            aFunction: OpenSim::MultiplierFunction const &

        """
        this = _opensim.new_MultiplierFunction(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_MultiplierFunction
    __del__ = lambda self : None;
    def init(self, *args):
        """
        init(MultiplierFunction self, Function aFunction)

        Parameters:
            aFunction: OpenSim::Function *

        """
        return _opensim.MultiplierFunction_init(self, *args)

    def setFunction(self, *args):
        """
        setFunction(MultiplierFunction self, Function aFunction)

        Parameters:
            aFunction: OpenSim::Function *

        """
        return _opensim.MultiplierFunction_setFunction(self, *args)

    def setScale(self, *args):
        """
        setScale(MultiplierFunction self, double aScaleFactor)

        Parameters:
            aScaleFactor: double

        """
        return _opensim.MultiplierFunction_setScale(self, *args)

    def getFunction(self):
        """
        getFunction(MultiplierFunction self) -> Function

        Parameters:
            self: OpenSim::MultiplierFunction const *

        """
        return _opensim.MultiplierFunction_getFunction(self)

    def getScale(self):
        """
        getScale(MultiplierFunction self) -> double

        Parameters:
            self: OpenSim::MultiplierFunction const *

        """
        return _opensim.MultiplierFunction_getScale(self)

    def calcValue(self, *args):
        """
        calcValue(MultiplierFunction self, Vector x) -> double

        Parameters:
            x: SimTK::Vector const &

        """
        return _opensim.MultiplierFunction_calcValue(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(MultiplierFunction self, std::vector< int > const & derivComponents, Vector x) -> double

        Parameters:
            derivComponents: std::vector< int > const &
            x: SimTK::Vector const &

        """
        return _opensim.MultiplierFunction_calcDerivative(self, *args)

    def getArgumentSize(self):
        """
        getArgumentSize(MultiplierFunction self) -> int

        Parameters:
            self: OpenSim::MultiplierFunction const *

        """
        return _opensim.MultiplierFunction_getArgumentSize(self)

    def getMaxDerivativeOrder(self):
        """
        getMaxDerivativeOrder(MultiplierFunction self) -> int

        Parameters:
            self: OpenSim::MultiplierFunction const *

        """
        return _opensim.MultiplierFunction_getMaxDerivativeOrder(self)

    def createSimTKFunction(self):
        """
        createSimTKFunction(MultiplierFunction self) -> SimTK::Function *

        Parameters:
            self: OpenSim::MultiplierFunction const *

        """
        return _opensim.MultiplierFunction_createSimTKFunction(self)

MultiplierFunction_swigregister = _opensim.MultiplierFunction_swigregister
MultiplierFunction_swigregister(MultiplierFunction)

def MultiplierFunction_safeDownCast(*args):
  """
    MultiplierFunction_safeDownCast(OpenSimObject obj) -> MultiplierFunction

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MultiplierFunction_safeDownCast(*args)

def MultiplierFunction_getClassName():
  """MultiplierFunction_getClassName() -> std::string const &"""
  return _opensim.MultiplierFunction_getClassName()

class GCVSpline(Function):
    """Proxy of C++ OpenSim::GCVSpline class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, GCVSpline, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, GCVSpline, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> GCVSpline

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.GCVSpline_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(GCVSpline self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.GCVSpline_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.GCVSpline_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(GCVSpline self) -> GCVSpline

        Parameters:
            self: OpenSim::GCVSpline const *

        """
        return _opensim.GCVSpline_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(GCVSpline self) -> std::string const &

        Parameters:
            self: OpenSim::GCVSpline const *

        """
        return _opensim.GCVSpline_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::GCVSpline self) -> GCVSpline
        __init__(OpenSim::GCVSpline self, int aDegree, int aN, double const * aTimes, double const * aValues, std::string const & aName="", 
            double aErrorVariance=0.0) -> GCVSpline

        Parameters:
            aDegree: int
            aN: int
            aTimes: double const *
            aValues: double const *
            aName: std::string const &
            aErrorVariance: double

        __init__(OpenSim::GCVSpline self, int aDegree, int aN, double const * aTimes, double const * aValues, std::string const & aName="") -> GCVSpline

        Parameters:
            aDegree: int
            aN: int
            aTimes: double const *
            aValues: double const *
            aName: std::string const &

        __init__(OpenSim::GCVSpline self, int aDegree, int aN, double const * aTimes, double const * aValues) -> GCVSpline

        Parameters:
            aDegree: int
            aN: int
            aTimes: double const *
            aValues: double const *

        __init__(OpenSim::GCVSpline self, GCVSpline aSpline) -> GCVSpline

        Parameters:
            aSpline: OpenSim::GCVSpline const &

        """
        this = _opensim.new_GCVSpline(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_GCVSpline
    __del__ = lambda self : None;
    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(GCVSpline self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(GCVSpline self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.GCVSpline_updateFromXMLNode(self, *args)

    def setDegree(self, *args):
        """
        setDegree(GCVSpline self, int aDegree)

        Parameters:
            aDegree: int

        """
        return _opensim.GCVSpline_setDegree(self, *args)

    def getDegree(self):
        """
        getDegree(GCVSpline self) -> int

        Parameters:
            self: OpenSim::GCVSpline const *

        """
        return _opensim.GCVSpline_getDegree(self)

    def getOrder(self):
        """
        getOrder(GCVSpline self) -> int

        Parameters:
            self: OpenSim::GCVSpline const *

        """
        return _opensim.GCVSpline_getOrder(self)

    def getHalfOrder(self):
        """
        getHalfOrder(GCVSpline self) -> int

        Parameters:
            self: OpenSim::GCVSpline const *

        """
        return _opensim.GCVSpline_getHalfOrder(self)

    def getSize(self):
        """
        getSize(GCVSpline self) -> int

        Parameters:
            self: OpenSim::GCVSpline const *

        """
        return _opensim.GCVSpline_getSize(self)

    def getXValues(self):
        """
        getXValues(GCVSpline self) -> double const *

        Parameters:
            self: OpenSim::GCVSpline const *

        """
        return _opensim.GCVSpline_getXValues(self)

    def getYValues(self):
        """
        getYValues(GCVSpline self) -> double const *

        Parameters:
            self: OpenSim::GCVSpline const *

        """
        return _opensim.GCVSpline_getYValues(self)

    def getCoefficients(self):
        """
        getCoefficients(GCVSpline self) -> ArrayDouble

        Parameters:
            self: OpenSim::GCVSpline const *

        """
        return _opensim.GCVSpline_getCoefficients(self)

    def getNumberOfPoints(self):
        """
        getNumberOfPoints(GCVSpline self) -> int

        Parameters:
            self: OpenSim::GCVSpline const *

        """
        return _opensim.GCVSpline_getNumberOfPoints(self)

    def getX(self, *args):
        """
        getX(GCVSpline self) -> ArrayDouble
        getX(GCVSpline self, int aIndex) -> double

        Parameters:
            aIndex: int

        """
        return _opensim.GCVSpline_getX(self, *args)

    def getY(self, *args):
        """
        getY(GCVSpline self, int aIndex) -> double

        Parameters:
            aIndex: int

        """
        return _opensim.GCVSpline_getY(self, *args)

    def getZ(self, *args):
        """
        getZ(GCVSpline self, int aIndex) -> double

        Parameters:
            aIndex: int

        """
        return _opensim.GCVSpline_getZ(self, *args)

    def setX(self, *args):
        """
        setX(GCVSpline self, int aIndex, double aValue)

        Parameters:
            aIndex: int
            aValue: double

        """
        return _opensim.GCVSpline_setX(self, *args)

    def setY(self, *args):
        """
        setY(GCVSpline self, int aIndex, double aValue)

        Parameters:
            aIndex: int
            aValue: double

        """
        return _opensim.GCVSpline_setY(self, *args)

    def getMinX(self):
        """
        getMinX(GCVSpline self) -> double

        Parameters:
            self: OpenSim::GCVSpline const *

        """
        return _opensim.GCVSpline_getMinX(self)

    def getMaxX(self):
        """
        getMaxX(GCVSpline self) -> double

        Parameters:
            self: OpenSim::GCVSpline const *

        """
        return _opensim.GCVSpline_getMaxX(self)

    def deletePoint(self, *args):
        """
        deletePoint(GCVSpline self, int aIndex) -> bool

        Parameters:
            aIndex: int

        """
        return _opensim.GCVSpline_deletePoint(self, *args)

    def deletePoints(self, *args):
        """
        deletePoints(GCVSpline self, ArrayInt indices) -> bool

        Parameters:
            indices: OpenSim::Array< int > const &

        """
        return _opensim.GCVSpline_deletePoints(self, *args)

    def addPoint(self, *args):
        """
        addPoint(GCVSpline self, double aX, double aY) -> int

        Parameters:
            aX: double
            aY: double

        """
        return _opensim.GCVSpline_addPoint(self, *args)

    def createSimTKFunction(self):
        """
        createSimTKFunction(GCVSpline self) -> SimTK::Function *

        Parameters:
            self: OpenSim::GCVSpline const *

        """
        return _opensim.GCVSpline_createSimTKFunction(self)

GCVSpline_swigregister = _opensim.GCVSpline_swigregister
GCVSpline_swigregister(GCVSpline)

def GCVSpline_safeDownCast(*args):
  """
    GCVSpline_safeDownCast(OpenSimObject obj) -> GCVSpline

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.GCVSpline_safeDownCast(*args)

def GCVSpline_getClassName():
  """GCVSpline_getClassName() -> std::string const &"""
  return _opensim.GCVSpline_getClassName()

class Sine(Function):
    """Proxy of C++ OpenSim::Sine class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Sine, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Sine, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Sine

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Sine_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Sine self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Sine_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Sine_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Sine self) -> Sine

        Parameters:
            self: OpenSim::Sine const *

        """
        return _opensim.Sine_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Sine self) -> std::string const &

        Parameters:
            self: OpenSim::Sine const *

        """
        return _opensim.Sine_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Sine self) -> Sine
        __init__(OpenSim::Sine self, double amplitude, double omega, double phase) -> Sine

        Parameters:
            amplitude: double
            omega: double
            phase: double

        __init__(OpenSim::Sine self, Sine aFunc) -> Sine

        Parameters:
            aFunc: OpenSim::Sine const &

        """
        this = _opensim.new_Sine(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_Sine
    __del__ = lambda self : None;
    def calcValue(self, *args):
        """
        calcValue(Sine self, Vector x) -> double

        Parameters:
            x: SimTK::Vector const &

        """
        return _opensim.Sine_calcValue(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(Sine self, std::vector< int > const & derivComponents, Vector x) -> double

        Parameters:
            derivComponents: std::vector< int > const &
            x: SimTK::Vector const &

        """
        return _opensim.Sine_calcDerivative(self, *args)

    def createSimTKFunction(self):
        """
        createSimTKFunction(Sine self) -> SimTK::Function *

        Parameters:
            self: OpenSim::Sine const *

        """
        return _opensim.Sine_createSimTKFunction(self)

    def getArgumentSize(self):
        """
        getArgumentSize(Sine self) -> int

        Parameters:
            self: OpenSim::Sine const *

        """
        return _opensim.Sine_getArgumentSize(self)

    def getMaxDerivativeOrder(self):
        """
        getMaxDerivativeOrder(Sine self) -> int

        Parameters:
            self: OpenSim::Sine const *

        """
        return _opensim.Sine_getMaxDerivativeOrder(self)

Sine_swigregister = _opensim.Sine_swigregister
Sine_swigregister(Sine)

def Sine_safeDownCast(*args):
  """
    Sine_safeDownCast(OpenSimObject obj) -> Sine

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Sine_safeDownCast(*args)

def Sine_getClassName():
  """Sine_getClassName() -> std::string const &"""
  return _opensim.Sine_getClassName()

class PolynomialFunction(Function):
    """Proxy of C++ OpenSim::PolynomialFunction class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PolynomialFunction, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PolynomialFunction, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PolynomialFunction

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PolynomialFunction_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PolynomialFunction self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PolynomialFunction_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PolynomialFunction_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PolynomialFunction self) -> PolynomialFunction

        Parameters:
            self: OpenSim::PolynomialFunction const *

        """
        return _opensim.PolynomialFunction_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PolynomialFunction self) -> std::string const &

        Parameters:
            self: OpenSim::PolynomialFunction const *

        """
        return _opensim.PolynomialFunction_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PolynomialFunction self) -> PolynomialFunction
        __init__(OpenSim::PolynomialFunction self, Vector coefficients) -> PolynomialFunction

        Parameters:
            coefficients: SimTK::Vector

        """
        this = _opensim.new_PolynomialFunction(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_PolynomialFunction
    __del__ = lambda self : None;
    def setCoefficients(self, *args):
        """
        setCoefficients(PolynomialFunction self, Vector coefficients)

        Parameters:
            coefficients: SimTK::Vector

        """
        return _opensim.PolynomialFunction_setCoefficients(self, *args)

    def getCoefficients(self):
        """
        getCoefficients(PolynomialFunction self) -> Vector

        Parameters:
            self: OpenSim::PolynomialFunction const *

        """
        return _opensim.PolynomialFunction_getCoefficients(self)

    def createSimTKFunction(self):
        """
        createSimTKFunction(PolynomialFunction self) -> SimTK::Function *

        Parameters:
            self: OpenSim::PolynomialFunction const *

        """
        return _opensim.PolynomialFunction_createSimTKFunction(self)

PolynomialFunction_swigregister = _opensim.PolynomialFunction_swigregister
PolynomialFunction_swigregister(PolynomialFunction)

def PolynomialFunction_safeDownCast(*args):
  """
    PolynomialFunction_safeDownCast(OpenSimObject obj) -> PolynomialFunction

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PolynomialFunction_safeDownCast(*args)

def PolynomialFunction_getClassName():
  """PolynomialFunction_getClassName() -> std::string const &"""
  return _opensim.PolynomialFunction_getClassName()

class SmoothSegmentedFunctionFactory(_object):
    """Proxy of C++ OpenSim::SmoothSegmentedFunctionFactory class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, SmoothSegmentedFunctionFactory, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, SmoothSegmentedFunctionFactory, name)
    __repr__ = _swig_repr
    def createFiberActiveForceLengthCurve(*args):
        """
        createFiberActiveForceLengthCurve(double lce0, double lce1, double lce2, double lce3, double minActiveForceLengthValue, 
            double plateauSlope, double curviness, bool computeIntegral, std::string const & curveName) -> SmoothSegmentedFunction *

        Parameters:
            lce0: double
            lce1: double
            lce2: double
            lce3: double
            minActiveForceLengthValue: double
            plateauSlope: double
            curviness: double
            computeIntegral: bool
            curveName: std::string const &

        """
        return _opensim.SmoothSegmentedFunctionFactory_createFiberActiveForceLengthCurve(*args)

    if _newclass:createFiberActiveForceLengthCurve = staticmethod(createFiberActiveForceLengthCurve)
    __swig_getmethods__["createFiberActiveForceLengthCurve"] = lambda x: createFiberActiveForceLengthCurve
    def createFiberForceVelocityCurve(*args):
        """
        createFiberForceVelocityCurve(double fmaxE, double dydxC, double dydxNearC, double dydxIso, double dydxE, double dydxNearE, 
            double concCurviness, double eccCurviness, bool computeIntegral, 
            std::string const & curveName) -> SmoothSegmentedFunction *

        Parameters:
            fmaxE: double
            dydxC: double
            dydxNearC: double
            dydxIso: double
            dydxE: double
            dydxNearE: double
            concCurviness: double
            eccCurviness: double
            computeIntegral: bool
            curveName: std::string const &

        """
        return _opensim.SmoothSegmentedFunctionFactory_createFiberForceVelocityCurve(*args)

    if _newclass:createFiberForceVelocityCurve = staticmethod(createFiberForceVelocityCurve)
    __swig_getmethods__["createFiberForceVelocityCurve"] = lambda x: createFiberForceVelocityCurve
    def createFiberForceVelocityInverseCurve(*args):
        """
        createFiberForceVelocityInverseCurve(double fmaxE, double dydxC, double dydxNearC, double dydxIso, double dydxE, double dydxNearE, 
            double concCurviness, double eccCurviness, bool computeIntegral, 
            std::string const & muscleName) -> SmoothSegmentedFunction *

        Parameters:
            fmaxE: double
            dydxC: double
            dydxNearC: double
            dydxIso: double
            dydxE: double
            dydxNearE: double
            concCurviness: double
            eccCurviness: double
            computeIntegral: bool
            muscleName: std::string const &

        """
        return _opensim.SmoothSegmentedFunctionFactory_createFiberForceVelocityInverseCurve(*args)

    if _newclass:createFiberForceVelocityInverseCurve = staticmethod(createFiberForceVelocityInverseCurve)
    __swig_getmethods__["createFiberForceVelocityInverseCurve"] = lambda x: createFiberForceVelocityInverseCurve
    def createFiberCompressiveForcePennationCurve(*args):
        """
        createFiberCompressiveForcePennationCurve(double phi0, double kiso, double curviness, bool computeIntegral, std::string const & curveName) -> SmoothSegmentedFunction *

        Parameters:
            phi0: double
            kiso: double
            curviness: double
            computeIntegral: bool
            curveName: std::string const &

        """
        return _opensim.SmoothSegmentedFunctionFactory_createFiberCompressiveForcePennationCurve(*args)

    if _newclass:createFiberCompressiveForcePennationCurve = staticmethod(createFiberCompressiveForcePennationCurve)
    __swig_getmethods__["createFiberCompressiveForcePennationCurve"] = lambda x: createFiberCompressiveForcePennationCurve
    def createFiberCompressiveForceCosPennationCurve(*args):
        """
        createFiberCompressiveForceCosPennationCurve(double cosPhi0, double kiso, double curviness, bool computeIntegral, std::string const & curveName) -> SmoothSegmentedFunction *

        Parameters:
            cosPhi0: double
            kiso: double
            curviness: double
            computeIntegral: bool
            curveName: std::string const &

        """
        return _opensim.SmoothSegmentedFunctionFactory_createFiberCompressiveForceCosPennationCurve(*args)

    if _newclass:createFiberCompressiveForceCosPennationCurve = staticmethod(createFiberCompressiveForceCosPennationCurve)
    __swig_getmethods__["createFiberCompressiveForceCosPennationCurve"] = lambda x: createFiberCompressiveForceCosPennationCurve
    def createFiberCompressiveForceLengthCurve(*args):
        """
        createFiberCompressiveForceLengthCurve(double l0, double kiso, double curviness, bool computeIntegral, std::string const & curveName) -> SmoothSegmentedFunction *

        Parameters:
            l0: double
            kiso: double
            curviness: double
            computeIntegral: bool
            curveName: std::string const &

        """
        return _opensim.SmoothSegmentedFunctionFactory_createFiberCompressiveForceLengthCurve(*args)

    if _newclass:createFiberCompressiveForceLengthCurve = staticmethod(createFiberCompressiveForceLengthCurve)
    __swig_getmethods__["createFiberCompressiveForceLengthCurve"] = lambda x: createFiberCompressiveForceLengthCurve
    def createFiberForceLengthCurve(*args):
        """
        createFiberForceLengthCurve(double eZero, double eIso, double kLow, double kIso, double curviness, bool computeIntegral, 
            std::string const & curveName) -> SmoothSegmentedFunction *

        Parameters:
            eZero: double
            eIso: double
            kLow: double
            kIso: double
            curviness: double
            computeIntegral: bool
            curveName: std::string const &

        """
        return _opensim.SmoothSegmentedFunctionFactory_createFiberForceLengthCurve(*args)

    if _newclass:createFiberForceLengthCurve = staticmethod(createFiberForceLengthCurve)
    __swig_getmethods__["createFiberForceLengthCurve"] = lambda x: createFiberForceLengthCurve
    def createTendonForceLengthCurve(*args):
        """
        createTendonForceLengthCurve(double eIso, double kIso, double fToe, double curviness, bool computeIntegral, std::string const & curveName) -> SmoothSegmentedFunction *

        Parameters:
            eIso: double
            kIso: double
            fToe: double
            curviness: double
            computeIntegral: bool
            curveName: std::string const &

        """
        return _opensim.SmoothSegmentedFunctionFactory_createTendonForceLengthCurve(*args)

    if _newclass:createTendonForceLengthCurve = staticmethod(createTendonForceLengthCurve)
    __swig_getmethods__["createTendonForceLengthCurve"] = lambda x: createTendonForceLengthCurve
    def __init__(self): 
        """__init__(OpenSim::SmoothSegmentedFunctionFactory self) -> SmoothSegmentedFunctionFactory"""
        this = _opensim.new_SmoothSegmentedFunctionFactory()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_SmoothSegmentedFunctionFactory
    __del__ = lambda self : None;
SmoothSegmentedFunctionFactory_swigregister = _opensim.SmoothSegmentedFunctionFactory_swigregister
SmoothSegmentedFunctionFactory_swigregister(SmoothSegmentedFunctionFactory)

def SmoothSegmentedFunctionFactory_createFiberActiveForceLengthCurve(*args):
  """
    SmoothSegmentedFunctionFactory_createFiberActiveForceLengthCurve(double lce0, double lce1, double lce2, double lce3, double minActiveForceLengthValue, 
        double plateauSlope, double curviness, bool computeIntegral, std::string const & curveName) -> SmoothSegmentedFunction *

    Parameters:
        lce0: double
        lce1: double
        lce2: double
        lce3: double
        minActiveForceLengthValue: double
        plateauSlope: double
        curviness: double
        computeIntegral: bool
        curveName: std::string const &

    """
  return _opensim.SmoothSegmentedFunctionFactory_createFiberActiveForceLengthCurve(*args)

def SmoothSegmentedFunctionFactory_createFiberForceVelocityCurve(*args):
  """
    SmoothSegmentedFunctionFactory_createFiberForceVelocityCurve(double fmaxE, double dydxC, double dydxNearC, double dydxIso, double dydxE, double dydxNearE, 
        double concCurviness, double eccCurviness, bool computeIntegral, 
        std::string const & curveName) -> SmoothSegmentedFunction *

    Parameters:
        fmaxE: double
        dydxC: double
        dydxNearC: double
        dydxIso: double
        dydxE: double
        dydxNearE: double
        concCurviness: double
        eccCurviness: double
        computeIntegral: bool
        curveName: std::string const &

    """
  return _opensim.SmoothSegmentedFunctionFactory_createFiberForceVelocityCurve(*args)

def SmoothSegmentedFunctionFactory_createFiberForceVelocityInverseCurve(*args):
  """
    SmoothSegmentedFunctionFactory_createFiberForceVelocityInverseCurve(double fmaxE, double dydxC, double dydxNearC, double dydxIso, double dydxE, double dydxNearE, 
        double concCurviness, double eccCurviness, bool computeIntegral, 
        std::string const & muscleName) -> SmoothSegmentedFunction *

    Parameters:
        fmaxE: double
        dydxC: double
        dydxNearC: double
        dydxIso: double
        dydxE: double
        dydxNearE: double
        concCurviness: double
        eccCurviness: double
        computeIntegral: bool
        muscleName: std::string const &

    """
  return _opensim.SmoothSegmentedFunctionFactory_createFiberForceVelocityInverseCurve(*args)

def SmoothSegmentedFunctionFactory_createFiberCompressiveForcePennationCurve(*args):
  """
    SmoothSegmentedFunctionFactory_createFiberCompressiveForcePennationCurve(double phi0, double kiso, double curviness, bool computeIntegral, std::string const & curveName) -> SmoothSegmentedFunction *

    Parameters:
        phi0: double
        kiso: double
        curviness: double
        computeIntegral: bool
        curveName: std::string const &

    """
  return _opensim.SmoothSegmentedFunctionFactory_createFiberCompressiveForcePennationCurve(*args)

def SmoothSegmentedFunctionFactory_createFiberCompressiveForceCosPennationCurve(*args):
  """
    SmoothSegmentedFunctionFactory_createFiberCompressiveForceCosPennationCurve(double cosPhi0, double kiso, double curviness, bool computeIntegral, std::string const & curveName) -> SmoothSegmentedFunction *

    Parameters:
        cosPhi0: double
        kiso: double
        curviness: double
        computeIntegral: bool
        curveName: std::string const &

    """
  return _opensim.SmoothSegmentedFunctionFactory_createFiberCompressiveForceCosPennationCurve(*args)

def SmoothSegmentedFunctionFactory_createFiberCompressiveForceLengthCurve(*args):
  """
    SmoothSegmentedFunctionFactory_createFiberCompressiveForceLengthCurve(double l0, double kiso, double curviness, bool computeIntegral, std::string const & curveName) -> SmoothSegmentedFunction *

    Parameters:
        l0: double
        kiso: double
        curviness: double
        computeIntegral: bool
        curveName: std::string const &

    """
  return _opensim.SmoothSegmentedFunctionFactory_createFiberCompressiveForceLengthCurve(*args)

def SmoothSegmentedFunctionFactory_createFiberForceLengthCurve(*args):
  """
    SmoothSegmentedFunctionFactory_createFiberForceLengthCurve(double eZero, double eIso, double kLow, double kIso, double curviness, bool computeIntegral, 
        std::string const & curveName) -> SmoothSegmentedFunction *

    Parameters:
        eZero: double
        eIso: double
        kLow: double
        kIso: double
        curviness: double
        computeIntegral: bool
        curveName: std::string const &

    """
  return _opensim.SmoothSegmentedFunctionFactory_createFiberForceLengthCurve(*args)

def SmoothSegmentedFunctionFactory_createTendonForceLengthCurve(*args):
  """
    SmoothSegmentedFunctionFactory_createTendonForceLengthCurve(double eIso, double kIso, double fToe, double curviness, bool computeIntegral, std::string const & curveName) -> SmoothSegmentedFunction *

    Parameters:
        eIso: double
        kIso: double
        fToe: double
        curviness: double
        computeIntegral: bool
        curveName: std::string const &

    """
  return _opensim.SmoothSegmentedFunctionFactory_createTendonForceLengthCurve(*args)

class SmoothSegmentedFunction(_object):
    """Proxy of C++ OpenSim::SmoothSegmentedFunction class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, SmoothSegmentedFunction, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, SmoothSegmentedFunction, name)
    __repr__ = _swig_repr
    def __init__(self): 
        """__init__(OpenSim::SmoothSegmentedFunction self) -> SmoothSegmentedFunction"""
        this = _opensim.new_SmoothSegmentedFunction()
        try: self.this.append(this)
        except: self.this = this
    def calcValue(self, *args):
        """
        calcValue(SmoothSegmentedFunction self, double x) -> double

        Parameters:
            x: double

        """
        return _opensim.SmoothSegmentedFunction_calcValue(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(SmoothSegmentedFunction self, double x, int order) -> double

        Parameters:
            x: double
            order: int

        """
        return _opensim.SmoothSegmentedFunction_calcDerivative(self, *args)

    def calcIntegral(self, *args):
        """
        calcIntegral(SmoothSegmentedFunction self, double x) -> double

        Parameters:
            x: double

        """
        return _opensim.SmoothSegmentedFunction_calcIntegral(self, *args)

    def isIntegralAvailable(self):
        """
        isIntegralAvailable(SmoothSegmentedFunction self) -> bool

        Parameters:
            self: OpenSim::SmoothSegmentedFunction const *

        """
        return _opensim.SmoothSegmentedFunction_isIntegralAvailable(self)

    def isIntegralComputedLeftToRight(self):
        """
        isIntegralComputedLeftToRight(SmoothSegmentedFunction self) -> bool

        Parameters:
            self: OpenSim::SmoothSegmentedFunction const *

        """
        return _opensim.SmoothSegmentedFunction_isIntegralComputedLeftToRight(self)

    def getName(self):
        """
        getName(SmoothSegmentedFunction self) -> std::string

        Parameters:
            self: OpenSim::SmoothSegmentedFunction const *

        """
        return _opensim.SmoothSegmentedFunction_getName(self)

    def setName(self, *args):
        """
        setName(SmoothSegmentedFunction self, std::string & name)

        Parameters:
            name: std::string &

        """
        return _opensim.SmoothSegmentedFunction_setName(self, *args)

    def getCurveDomain(self):
        """
        getCurveDomain(SmoothSegmentedFunction self) -> Vec2

        Parameters:
            self: OpenSim::SmoothSegmentedFunction const *

        """
        return _opensim.SmoothSegmentedFunction_getCurveDomain(self)

    def printMuscleCurveToCSVFile(self, *args):
        """
        printMuscleCurveToCSVFile(SmoothSegmentedFunction self, std::string const & path, double domainMin, double domainMax)

        Parameters:
            path: std::string const &
            domainMin: double
            domainMax: double

        """
        return _opensim.SmoothSegmentedFunction_printMuscleCurveToCSVFile(self, *args)

    def calcSampledMuscleCurve(self, *args):
        """
        calcSampledMuscleCurve(SmoothSegmentedFunction self, int maxOrder, double domainMin, double domainMax) -> Matrix

        Parameters:
            maxOrder: int
            domainMin: double
            domainMax: double

        """
        return _opensim.SmoothSegmentedFunction_calcSampledMuscleCurve(self, *args)

    __swig_destroy__ = _opensim.delete_SmoothSegmentedFunction
    __del__ = lambda self : None;
SmoothSegmentedFunction_swigregister = _opensim.SmoothSegmentedFunction_swigregister
SmoothSegmentedFunction_swigregister(SmoothSegmentedFunction)

class XYPoint(_object):
    """Proxy of C++ OpenSim::XYPoint class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, XYPoint, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, XYPoint, name)
    __repr__ = _swig_repr
    __swig_setmethods__["_x"] = _opensim.XYPoint__x_set
    __swig_getmethods__["_x"] = _opensim.XYPoint__x_get
    if _newclass:_x = _swig_property(_opensim.XYPoint__x_get, _opensim.XYPoint__x_set)
    __swig_setmethods__["_y"] = _opensim.XYPoint__y_set
    __swig_getmethods__["_y"] = _opensim.XYPoint__y_get
    if _newclass:_y = _swig_property(_opensim.XYPoint__y_get, _opensim.XYPoint__y_set)
    def __init__(self, *args): 
        """
        __init__(OpenSim::XYPoint self) -> XYPoint
        __init__(OpenSim::XYPoint self, double aX, double aY) -> XYPoint

        Parameters:
            aX: double
            aY: double

        """
        this = _opensim.new_XYPoint(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_XYPoint
    __del__ = lambda self : None;
XYPoint_swigregister = _opensim.XYPoint_swigregister
XYPoint_swigregister(XYPoint)

class XYFunctionInterface(OpenSimObject):
    """Proxy of C++ OpenSim::XYFunctionInterface class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, XYFunctionInterface, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, XYFunctionInterface, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> XYFunctionInterface

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.XYFunctionInterface_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(XYFunctionInterface self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.XYFunctionInterface_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.XYFunctionInterface_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(XYFunctionInterface self) -> XYFunctionInterface

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(XYFunctionInterface self) -> std::string const &

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_getConcreteClassName(self)

    typeConstant = _opensim.XYFunctionInterface_typeConstant
    typeStepFunction = _opensim.XYFunctionInterface_typeStepFunction
    typePiecewiseConstantFunction = _opensim.XYFunctionInterface_typePiecewiseConstantFunction
    typePiecewiseLinearFunction = _opensim.XYFunctionInterface_typePiecewiseLinearFunction
    typeLinearFunction = _opensim.XYFunctionInterface_typeLinearFunction
    typeNatCubicSpline = _opensim.XYFunctionInterface_typeNatCubicSpline
    typeGCVSpline = _opensim.XYFunctionInterface_typeGCVSpline
    typeUndefined = _opensim.XYFunctionInterface_typeUndefined
    def isXYFunction(*args):
        """
        isXYFunction(Function f) -> bool

        Parameters:
            f: OpenSim::Function *

        """
        return _opensim.XYFunctionInterface_isXYFunction(*args)

    if _newclass:isXYFunction = staticmethod(isXYFunction)
    __swig_getmethods__["isXYFunction"] = lambda x: isXYFunction
    def __init__(self, *args): 
        """
        __init__(OpenSim::XYFunctionInterface self, Function f) -> XYFunctionInterface

        Parameters:
            f: OpenSim::Function *

        """
        this = _opensim.new_XYFunctionInterface(*args)
        try: self.this.append(this)
        except: self.this = this
    def isSpecifiedByControlPoints(self):
        """
        isSpecifiedByControlPoints(XYFunctionInterface self) -> bool

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_isSpecifiedByControlPoints(self)

    def getNumberOfPoints(self):
        """
        getNumberOfPoints(XYFunctionInterface self) -> int

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_getNumberOfPoints(self)

    def getXValues(self):
        """
        getXValues(XYFunctionInterface self) -> double const *

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_getXValues(self)

    def getYValues(self):
        """
        getYValues(XYFunctionInterface self) -> double const *

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_getYValues(self)

    def getX(self, *args):
        """
        getX(XYFunctionInterface self, int aIndex) -> double

        Parameters:
            aIndex: int

        """
        return _opensim.XYFunctionInterface_getX(self, *args)

    def getY(self, *args):
        """
        getY(XYFunctionInterface self, int aIndex) -> double

        Parameters:
            aIndex: int

        """
        return _opensim.XYFunctionInterface_getY(self, *args)

    def setX(self, *args):
        """
        setX(XYFunctionInterface self, int aIndex, double aValue)

        Parameters:
            aIndex: int
            aValue: double

        """
        return _opensim.XYFunctionInterface_setX(self, *args)

    def setY(self, *args):
        """
        setY(XYFunctionInterface self, int aIndex, double aValue)

        Parameters:
            aIndex: int
            aValue: double

        """
        return _opensim.XYFunctionInterface_setY(self, *args)

    def deletePoint(self, *args):
        """
        deletePoint(XYFunctionInterface self, int aIndex) -> bool

        Parameters:
            aIndex: int

        """
        return _opensim.XYFunctionInterface_deletePoint(self, *args)

    def deletePoints(self, *args):
        """
        deletePoints(XYFunctionInterface self, ArrayInt indices) -> bool

        Parameters:
            indices: OpenSim::Array< int > const &

        """
        return _opensim.XYFunctionInterface_deletePoints(self, *args)

    def addPoint(self, *args):
        """
        addPoint(XYFunctionInterface self, double aX, double aY) -> int

        Parameters:
            aX: double
            aY: double

        """
        return _opensim.XYFunctionInterface_addPoint(self, *args)

    def renderAsLineSegments(self, *args):
        """
        renderAsLineSegments(XYFunctionInterface self, int aIndex) -> ArrayXYPoint

        Parameters:
            aIndex: int

        """
        return _opensim.XYFunctionInterface_renderAsLineSegments(self, *args)

    def deleteXYPointArray(*args):
        """
        deleteXYPointArray(ArrayXYPoint aArray)

        Parameters:
            aArray: OpenSim::Array< OpenSim::XYPoint > *

        """
        return _opensim.XYFunctionInterface_deleteXYPointArray(*args)

    if _newclass:deleteXYPointArray = staticmethod(deleteXYPointArray)
    __swig_getmethods__["deleteXYPointArray"] = lambda x: deleteXYPointArray
    def getFunctionType(self):
        """
        getFunctionType(XYFunctionInterface self) -> OpenSim::XYFunctionInterface::FunctionType

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_getFunctionType(self)

    def getScale(self):
        """
        getScale(XYFunctionInterface self) -> double

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_getScale(self)

    def getConstant(self):
        """
        getConstant(XYFunctionInterface self) -> Constant

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_getConstant(self)

    def getStepFunction(self):
        """
        getStepFunction(XYFunctionInterface self) -> StepFunction

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_getStepFunction(self)

    def getMultiStepFunction(self):
        """
        getMultiStepFunction(XYFunctionInterface self) -> PiecewiseConstantFunction

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_getMultiStepFunction(self)

    def getPiecewiseLinearFunction(self):
        """
        getPiecewiseLinearFunction(XYFunctionInterface self) -> PiecewiseLinearFunction

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_getPiecewiseLinearFunction(self)

    def getLinearFunction(self):
        """
        getLinearFunction(XYFunctionInterface self) -> LinearFunction

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_getLinearFunction(self)

    def getSimmSpline(self):
        """
        getSimmSpline(XYFunctionInterface self) -> SimmSpline

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_getSimmSpline(self)

    def getGCVSpline(self):
        """
        getGCVSpline(XYFunctionInterface self) -> GCVSpline

        Parameters:
            self: OpenSim::XYFunctionInterface const *

        """
        return _opensim.XYFunctionInterface_getGCVSpline(self)

    __swig_destroy__ = _opensim.delete_XYFunctionInterface
    __del__ = lambda self : None;
XYFunctionInterface_swigregister = _opensim.XYFunctionInterface_swigregister
XYFunctionInterface_swigregister(XYFunctionInterface)

def XYFunctionInterface_safeDownCast(*args):
  """
    XYFunctionInterface_safeDownCast(OpenSimObject obj) -> XYFunctionInterface

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.XYFunctionInterface_safeDownCast(*args)

def XYFunctionInterface_getClassName():
  """XYFunctionInterface_getClassName() -> std::string const &"""
  return _opensim.XYFunctionInterface_getClassName()

def XYFunctionInterface_isXYFunction(*args):
  """
    XYFunctionInterface_isXYFunction(Function f) -> bool

    Parameters:
        f: OpenSim::Function *

    """
  return _opensim.XYFunctionInterface_isXYFunction(*args)

def XYFunctionInterface_deleteXYPointArray(*args):
  """
    XYFunctionInterface_deleteXYPointArray(ArrayXYPoint aArray)

    Parameters:
        aArray: OpenSim::Array< OpenSim::XYPoint > *

    """
  return _opensim.XYFunctionInterface_deleteXYPointArray(*args)

class ArrayXYPoint(_object):
    """Proxy of C++ OpenSim::Array<(XYPoint)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayXYPoint, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayXYPoint, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_ArrayXYPoint
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Array<(XYPoint)> self, XYPoint aDefaultValue=OpenSim::XYPoint(), int aSize=0, int aCapacity=Array_CAPMIN) -> ArrayXYPoint

        Parameters:
            aDefaultValue: OpenSim::XYPoint const &
            aSize: int
            aCapacity: int

        __init__(OpenSim::Array<(XYPoint)> self, XYPoint aDefaultValue=OpenSim::XYPoint(), int aSize=0) -> ArrayXYPoint

        Parameters:
            aDefaultValue: OpenSim::XYPoint const &
            aSize: int

        __init__(OpenSim::Array<(XYPoint)> self, XYPoint aDefaultValue=OpenSim::XYPoint()) -> ArrayXYPoint

        Parameters:
            aDefaultValue: OpenSim::XYPoint const &

        __init__(OpenSim::Array<(XYPoint)> self) -> ArrayXYPoint
        __init__(OpenSim::Array<(XYPoint)> self, ArrayXYPoint aArray) -> ArrayXYPoint

        Parameters:
            aArray: OpenSim::Array< OpenSim::XYPoint > const &

        """
        this = _opensim.new_ArrayXYPoint(*args)
        try: self.this.append(this)
        except: self.this = this
    def arrayEquals(self, *args):
        """
        arrayEquals(ArrayXYPoint self, ArrayXYPoint aArray) -> bool

        Parameters:
            aArray: OpenSim::Array< OpenSim::XYPoint > const &

        """
        return _opensim.ArrayXYPoint_arrayEquals(self, *args)

    def trim(self):
        """
        trim(ArrayXYPoint self)

        Parameters:
            self: OpenSim::Array< XYPoint > *

        """
        return _opensim.ArrayXYPoint_trim(self)

    def setSize(self, *args):
        """
        setSize(ArrayXYPoint self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.ArrayXYPoint_setSize(self, *args)

    def getSize(self):
        """
        getSize(ArrayXYPoint self) -> int

        Parameters:
            self: OpenSim::Array< XYPoint > const *

        """
        return _opensim.ArrayXYPoint_getSize(self)

    def size(self):
        """
        size(ArrayXYPoint self) -> int

        Parameters:
            self: OpenSim::Array< XYPoint > const *

        """
        return _opensim.ArrayXYPoint_size(self)

    def append(self, *args):
        """
        append(ArrayXYPoint self, XYPoint aValue) -> int

        Parameters:
            aValue: OpenSim::XYPoint const &

        append(ArrayXYPoint self, ArrayXYPoint aArray) -> int

        Parameters:
            aArray: OpenSim::Array< OpenSim::XYPoint > const &

        """
        return _opensim.ArrayXYPoint_append(self, *args)

    def insert(self, *args):
        """
        insert(ArrayXYPoint self, int aIndex, XYPoint aValue) -> int

        Parameters:
            aIndex: int
            aValue: OpenSim::XYPoint const &

        """
        return _opensim.ArrayXYPoint_insert(self, *args)

    def remove(self, *args):
        """
        remove(ArrayXYPoint self, int aIndex) -> int

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayXYPoint_remove(self, *args)

    def set(self, *args):
        """
        set(ArrayXYPoint self, int aIndex, XYPoint aValue)

        Parameters:
            aIndex: int
            aValue: OpenSim::XYPoint const &

        """
        return _opensim.ArrayXYPoint_set(self, *args)

    def get(self, *args):
        """
        get(ArrayXYPoint self, int aIndex) -> XYPoint

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayXYPoint_get(self, *args)

    def getitem(self, *args):
        """
        getitem(ArrayXYPoint self, int index) -> XYPoint

        Parameters:
            index: int

        """
        return _opensim.ArrayXYPoint_getitem(self, *args)

    def setitem(self, *args):
        """
        setitem(ArrayXYPoint self, int index, XYPoint val)

        Parameters:
            index: int
            val: OpenSim::XYPoint

        """
        return _opensim.ArrayXYPoint_setitem(self, *args)

    def getLast(self):
        """
        getLast(ArrayXYPoint self) -> XYPoint

        Parameters:
            self: OpenSim::Array< XYPoint > const *

        """
        return _opensim.ArrayXYPoint_getLast(self)

    def findIndex(self, *args):
        """
        findIndex(ArrayXYPoint self, XYPoint aValue) -> int

        Parameters:
            aValue: OpenSim::XYPoint const &

        """
        return _opensim.ArrayXYPoint_findIndex(self, *args)

    def rfindIndex(self, *args):
        """
        rfindIndex(ArrayXYPoint self, XYPoint aValue) -> int

        Parameters:
            aValue: OpenSim::XYPoint const &

        """
        return _opensim.ArrayXYPoint_rfindIndex(self, *args)

    def searchBinary(self, *args):
        """
        searchBinary(ArrayXYPoint self, XYPoint aValue, bool aFindFirst=False, int aLo=-1, int aHi=-1) -> int

        Parameters:
            aValue: OpenSim::XYPoint const &
            aFindFirst: bool
            aLo: int
            aHi: int

        searchBinary(ArrayXYPoint self, XYPoint aValue, bool aFindFirst=False, int aLo=-1) -> int

        Parameters:
            aValue: OpenSim::XYPoint const &
            aFindFirst: bool
            aLo: int

        searchBinary(ArrayXYPoint self, XYPoint aValue, bool aFindFirst=False) -> int

        Parameters:
            aValue: OpenSim::XYPoint const &
            aFindFirst: bool

        searchBinary(ArrayXYPoint self, XYPoint aValue) -> int

        Parameters:
            aValue: OpenSim::XYPoint const &

        """
        return _opensim.ArrayXYPoint_searchBinary(self, *args)

ArrayXYPoint_swigregister = _opensim.ArrayXYPoint_swigregister
ArrayXYPoint_swigregister(ArrayXYPoint)

class ArrayBool(_object):
    """Proxy of C++ OpenSim::Array<(bool)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayBool, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayBool, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_ArrayBool
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Array<(bool)> self, bool const & aDefaultValue=bool(), int aSize=0, int aCapacity=Array_CAPMIN) -> ArrayBool

        Parameters:
            aDefaultValue: bool const &
            aSize: int
            aCapacity: int

        __init__(OpenSim::Array<(bool)> self, bool const & aDefaultValue=bool(), int aSize=0) -> ArrayBool

        Parameters:
            aDefaultValue: bool const &
            aSize: int

        __init__(OpenSim::Array<(bool)> self, bool const & aDefaultValue=bool()) -> ArrayBool

        Parameters:
            aDefaultValue: bool const &

        __init__(OpenSim::Array<(bool)> self) -> ArrayBool
        __init__(OpenSim::Array<(bool)> self, ArrayBool aArray) -> ArrayBool

        Parameters:
            aArray: OpenSim::Array< bool > const &

        """
        this = _opensim.new_ArrayBool(*args)
        try: self.this.append(this)
        except: self.this = this
    def arrayEquals(self, *args):
        """
        arrayEquals(ArrayBool self, ArrayBool aArray) -> bool

        Parameters:
            aArray: OpenSim::Array< bool > const &

        """
        return _opensim.ArrayBool_arrayEquals(self, *args)

    def trim(self):
        """
        trim(ArrayBool self)

        Parameters:
            self: OpenSim::Array< bool > *

        """
        return _opensim.ArrayBool_trim(self)

    def setSize(self, *args):
        """
        setSize(ArrayBool self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.ArrayBool_setSize(self, *args)

    def getSize(self):
        """
        getSize(ArrayBool self) -> int

        Parameters:
            self: OpenSim::Array< bool > const *

        """
        return _opensim.ArrayBool_getSize(self)

    def size(self):
        """
        size(ArrayBool self) -> int

        Parameters:
            self: OpenSim::Array< bool > const *

        """
        return _opensim.ArrayBool_size(self)

    def append(self, *args):
        """
        append(ArrayBool self, bool const & aValue) -> int

        Parameters:
            aValue: bool const &

        append(ArrayBool self, ArrayBool aArray) -> int

        Parameters:
            aArray: OpenSim::Array< bool > const &

        """
        return _opensim.ArrayBool_append(self, *args)

    def insert(self, *args):
        """
        insert(ArrayBool self, int aIndex, bool const & aValue) -> int

        Parameters:
            aIndex: int
            aValue: bool const &

        """
        return _opensim.ArrayBool_insert(self, *args)

    def remove(self, *args):
        """
        remove(ArrayBool self, int aIndex) -> int

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayBool_remove(self, *args)

    def set(self, *args):
        """
        set(ArrayBool self, int aIndex, bool const & aValue)

        Parameters:
            aIndex: int
            aValue: bool const &

        """
        return _opensim.ArrayBool_set(self, *args)

    def get(self, *args):
        """
        get(ArrayBool self, int aIndex) -> bool const &

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayBool_get(self, *args)

    def getitem(self, *args):
        """
        getitem(ArrayBool self, int index) -> bool

        Parameters:
            index: int

        """
        return _opensim.ArrayBool_getitem(self, *args)

    def setitem(self, *args):
        """
        setitem(ArrayBool self, int index, bool val)

        Parameters:
            index: int
            val: bool

        """
        return _opensim.ArrayBool_setitem(self, *args)

    def getLast(self):
        """
        getLast(ArrayBool self) -> bool const &

        Parameters:
            self: OpenSim::Array< bool > const *

        """
        return _opensim.ArrayBool_getLast(self)

    def findIndex(self, *args):
        """
        findIndex(ArrayBool self, bool const & aValue) -> int

        Parameters:
            aValue: bool const &

        """
        return _opensim.ArrayBool_findIndex(self, *args)

    def rfindIndex(self, *args):
        """
        rfindIndex(ArrayBool self, bool const & aValue) -> int

        Parameters:
            aValue: bool const &

        """
        return _opensim.ArrayBool_rfindIndex(self, *args)

    def searchBinary(self, *args):
        """
        searchBinary(ArrayBool self, bool const & aValue, bool aFindFirst=False, int aLo=-1, int aHi=-1) -> int

        Parameters:
            aValue: bool const &
            aFindFirst: bool
            aLo: int
            aHi: int

        searchBinary(ArrayBool self, bool const & aValue, bool aFindFirst=False, int aLo=-1) -> int

        Parameters:
            aValue: bool const &
            aFindFirst: bool
            aLo: int

        searchBinary(ArrayBool self, bool const & aValue, bool aFindFirst=False) -> int

        Parameters:
            aValue: bool const &
            aFindFirst: bool

        searchBinary(ArrayBool self, bool const & aValue) -> int

        Parameters:
            aValue: bool const &

        """
        return _opensim.ArrayBool_searchBinary(self, *args)

ArrayBool_swigregister = _opensim.ArrayBool_swigregister
ArrayBool_swigregister(ArrayBool)

class ArrayDouble(_object):
    """Proxy of C++ OpenSim::Array<(double)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayDouble, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayDouble, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_ArrayDouble
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Array<(double)> self, double const & aDefaultValue=double(), int aSize=0, int aCapacity=Array_CAPMIN) -> ArrayDouble

        Parameters:
            aDefaultValue: double const &
            aSize: int
            aCapacity: int

        __init__(OpenSim::Array<(double)> self, double const & aDefaultValue=double(), int aSize=0) -> ArrayDouble

        Parameters:
            aDefaultValue: double const &
            aSize: int

        __init__(OpenSim::Array<(double)> self, double const & aDefaultValue=double()) -> ArrayDouble

        Parameters:
            aDefaultValue: double const &

        __init__(OpenSim::Array<(double)> self) -> ArrayDouble
        __init__(OpenSim::Array<(double)> self, ArrayDouble aArray) -> ArrayDouble

        Parameters:
            aArray: OpenSim::Array< double > const &

        """
        this = _opensim.new_ArrayDouble(*args)
        try: self.this.append(this)
        except: self.this = this
    def arrayEquals(self, *args):
        """
        arrayEquals(ArrayDouble self, ArrayDouble aArray) -> bool

        Parameters:
            aArray: OpenSim::Array< double > const &

        """
        return _opensim.ArrayDouble_arrayEquals(self, *args)

    def trim(self):
        """
        trim(ArrayDouble self)

        Parameters:
            self: OpenSim::Array< double > *

        """
        return _opensim.ArrayDouble_trim(self)

    def setSize(self, *args):
        """
        setSize(ArrayDouble self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.ArrayDouble_setSize(self, *args)

    def getSize(self):
        """
        getSize(ArrayDouble self) -> int

        Parameters:
            self: OpenSim::Array< double > const *

        """
        return _opensim.ArrayDouble_getSize(self)

    def size(self):
        """
        size(ArrayDouble self) -> int

        Parameters:
            self: OpenSim::Array< double > const *

        """
        return _opensim.ArrayDouble_size(self)

    def append(self, *args):
        """
        append(ArrayDouble self, double const & aValue) -> int

        Parameters:
            aValue: double const &

        append(ArrayDouble self, ArrayDouble aArray) -> int

        Parameters:
            aArray: OpenSim::Array< double > const &

        """
        return _opensim.ArrayDouble_append(self, *args)

    def insert(self, *args):
        """
        insert(ArrayDouble self, int aIndex, double const & aValue) -> int

        Parameters:
            aIndex: int
            aValue: double const &

        """
        return _opensim.ArrayDouble_insert(self, *args)

    def remove(self, *args):
        """
        remove(ArrayDouble self, int aIndex) -> int

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayDouble_remove(self, *args)

    def set(self, *args):
        """
        set(ArrayDouble self, int aIndex, double const & aValue)

        Parameters:
            aIndex: int
            aValue: double const &

        """
        return _opensim.ArrayDouble_set(self, *args)

    def get(self, *args):
        """
        get(ArrayDouble self, int aIndex) -> double const &

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayDouble_get(self, *args)

    def getitem(self, *args):
        """
        getitem(ArrayDouble self, int index) -> double

        Parameters:
            index: int

        """
        return _opensim.ArrayDouble_getitem(self, *args)

    def setitem(self, *args):
        """
        setitem(ArrayDouble self, int index, double val)

        Parameters:
            index: int
            val: double

        """
        return _opensim.ArrayDouble_setitem(self, *args)

    def getLast(self):
        """
        getLast(ArrayDouble self) -> double const &

        Parameters:
            self: OpenSim::Array< double > const *

        """
        return _opensim.ArrayDouble_getLast(self)

    def findIndex(self, *args):
        """
        findIndex(ArrayDouble self, double const & aValue) -> int

        Parameters:
            aValue: double const &

        """
        return _opensim.ArrayDouble_findIndex(self, *args)

    def rfindIndex(self, *args):
        """
        rfindIndex(ArrayDouble self, double const & aValue) -> int

        Parameters:
            aValue: double const &

        """
        return _opensim.ArrayDouble_rfindIndex(self, *args)

    def searchBinary(self, *args):
        """
        searchBinary(ArrayDouble self, double const & aValue, bool aFindFirst=False, int aLo=-1, int aHi=-1) -> int

        Parameters:
            aValue: double const &
            aFindFirst: bool
            aLo: int
            aHi: int

        searchBinary(ArrayDouble self, double const & aValue, bool aFindFirst=False, int aLo=-1) -> int

        Parameters:
            aValue: double const &
            aFindFirst: bool
            aLo: int

        searchBinary(ArrayDouble self, double const & aValue, bool aFindFirst=False) -> int

        Parameters:
            aValue: double const &
            aFindFirst: bool

        searchBinary(ArrayDouble self, double const & aValue) -> int

        Parameters:
            aValue: double const &

        """
        return _opensim.ArrayDouble_searchBinary(self, *args)

    def appendVec3(self, *args):
        """
        appendVec3(ArrayDouble self, Vec3 vec3)

        Parameters:
            vec3: SimTK::Vec3

        """
        return _opensim.ArrayDouble_appendVec3(self, *args)

    def appendVector(self, *args):
        """
        appendVector(ArrayDouble self, Vector vec)

        Parameters:
            vec: SimTK::Vector

        """
        return _opensim.ArrayDouble_appendVector(self, *args)

    def getAsVec3(self):
        """
        getAsVec3(ArrayDouble self) -> Vec3

        Parameters:
            self: OpenSim::Array< double > *

        """
        return _opensim.ArrayDouble_getAsVec3(self)

    def createVec3(*args):
        """
        createVec3(double e1, double e2, double e3) -> Vec3

        Parameters:
            e1: double
            e2: double
            e3: double

        createVec3(double e1) -> Vec3

        Parameters:
            e1: double

        createVec3(double [3] es) -> Vec3

        Parameters:
            es: double [3]

        """
        return _opensim.ArrayDouble_createVec3(*args)

    if _newclass:createVec3 = staticmethod(createVec3)
    __swig_getmethods__["createVec3"] = lambda x: createVec3
    def getAsVector(self):
        """
        getAsVector(ArrayDouble self) -> Vector

        Parameters:
            self: OpenSim::Array< double > *

        """
        return _opensim.ArrayDouble_getAsVector(self)

    def populateFromVector(self, *args):
        """
        populateFromVector(ArrayDouble self, Vector aVector)

        Parameters:
            aVector: SimTK::Vector_< double >

        """
        return _opensim.ArrayDouble_populateFromVector(self, *args)

    def getValuesFromVec3(*args):
        """
        getValuesFromVec3(Vec3 vec3) -> ArrayDouble

        Parameters:
            vec3: SimTK::Vec3

        """
        return _opensim.ArrayDouble_getValuesFromVec3(*args)

    if _newclass:getValuesFromVec3 = staticmethod(getValuesFromVec3)
    __swig_getmethods__["getValuesFromVec3"] = lambda x: getValuesFromVec3
    def toString(self):
        """
        toString(ArrayDouble self) -> std::string

        Parameters:
            self: OpenSim::Array< double > const *

        """
        return _opensim.ArrayDouble_toString(self)

    def setFromPyArray(self, *args):
        """
        setFromPyArray(ArrayDouble self, double * dValues, int size)

        Parameters:
            dValues: double *
            size: int

        """
        return _opensim.ArrayDouble_setFromPyArray(self, *args)

ArrayDouble_swigregister = _opensim.ArrayDouble_swigregister
ArrayDouble_swigregister(ArrayDouble)

def ArrayDouble_createVec3(*args):
  """
    createVec3(double e1, double e2, double e3) -> Vec3

    Parameters:
        e1: double
        e2: double
        e3: double

    createVec3(double e1) -> Vec3

    Parameters:
        e1: double

    ArrayDouble_createVec3(double [3] es) -> Vec3

    Parameters:
        es: double [3]

    """
  return _opensim.ArrayDouble_createVec3(*args)

def ArrayDouble_getValuesFromVec3(*args):
  """
    ArrayDouble_getValuesFromVec3(Vec3 vec3) -> ArrayDouble

    Parameters:
        vec3: SimTK::Vec3

    """
  return _opensim.ArrayDouble_getValuesFromVec3(*args)

class ArrayInt(_object):
    """Proxy of C++ OpenSim::Array<(int)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayInt, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayInt, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_ArrayInt
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Array<(int)> self, int const & aDefaultValue=int(), int aSize=0, int aCapacity=Array_CAPMIN) -> ArrayInt

        Parameters:
            aDefaultValue: int const &
            aSize: int
            aCapacity: int

        __init__(OpenSim::Array<(int)> self, int const & aDefaultValue=int(), int aSize=0) -> ArrayInt

        Parameters:
            aDefaultValue: int const &
            aSize: int

        __init__(OpenSim::Array<(int)> self, int const & aDefaultValue=int()) -> ArrayInt

        Parameters:
            aDefaultValue: int const &

        __init__(OpenSim::Array<(int)> self) -> ArrayInt
        __init__(OpenSim::Array<(int)> self, ArrayInt aArray) -> ArrayInt

        Parameters:
            aArray: OpenSim::Array< int > const &

        """
        this = _opensim.new_ArrayInt(*args)
        try: self.this.append(this)
        except: self.this = this
    def arrayEquals(self, *args):
        """
        arrayEquals(ArrayInt self, ArrayInt aArray) -> bool

        Parameters:
            aArray: OpenSim::Array< int > const &

        """
        return _opensim.ArrayInt_arrayEquals(self, *args)

    def trim(self):
        """
        trim(ArrayInt self)

        Parameters:
            self: OpenSim::Array< int > *

        """
        return _opensim.ArrayInt_trim(self)

    def setSize(self, *args):
        """
        setSize(ArrayInt self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.ArrayInt_setSize(self, *args)

    def getSize(self):
        """
        getSize(ArrayInt self) -> int

        Parameters:
            self: OpenSim::Array< int > const *

        """
        return _opensim.ArrayInt_getSize(self)

    def size(self):
        """
        size(ArrayInt self) -> int

        Parameters:
            self: OpenSim::Array< int > const *

        """
        return _opensim.ArrayInt_size(self)

    def append(self, *args):
        """
        append(ArrayInt self, int const & aValue) -> int

        Parameters:
            aValue: int const &

        append(ArrayInt self, ArrayInt aArray) -> int

        Parameters:
            aArray: OpenSim::Array< int > const &

        """
        return _opensim.ArrayInt_append(self, *args)

    def insert(self, *args):
        """
        insert(ArrayInt self, int aIndex, int const & aValue) -> int

        Parameters:
            aIndex: int
            aValue: int const &

        """
        return _opensim.ArrayInt_insert(self, *args)

    def remove(self, *args):
        """
        remove(ArrayInt self, int aIndex) -> int

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayInt_remove(self, *args)

    def set(self, *args):
        """
        set(ArrayInt self, int aIndex, int const & aValue)

        Parameters:
            aIndex: int
            aValue: int const &

        """
        return _opensim.ArrayInt_set(self, *args)

    def get(self, *args):
        """
        get(ArrayInt self, int aIndex) -> int const &

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayInt_get(self, *args)

    def getitem(self, *args):
        """
        getitem(ArrayInt self, int index) -> int

        Parameters:
            index: int

        """
        return _opensim.ArrayInt_getitem(self, *args)

    def setitem(self, *args):
        """
        setitem(ArrayInt self, int index, int val)

        Parameters:
            index: int
            val: int

        """
        return _opensim.ArrayInt_setitem(self, *args)

    def getLast(self):
        """
        getLast(ArrayInt self) -> int const &

        Parameters:
            self: OpenSim::Array< int > const *

        """
        return _opensim.ArrayInt_getLast(self)

    def findIndex(self, *args):
        """
        findIndex(ArrayInt self, int const & aValue) -> int

        Parameters:
            aValue: int const &

        """
        return _opensim.ArrayInt_findIndex(self, *args)

    def rfindIndex(self, *args):
        """
        rfindIndex(ArrayInt self, int const & aValue) -> int

        Parameters:
            aValue: int const &

        """
        return _opensim.ArrayInt_rfindIndex(self, *args)

    def searchBinary(self, *args):
        """
        searchBinary(ArrayInt self, int const & aValue, bool aFindFirst=False, int aLo=-1, int aHi=-1) -> int

        Parameters:
            aValue: int const &
            aFindFirst: bool
            aLo: int
            aHi: int

        searchBinary(ArrayInt self, int const & aValue, bool aFindFirst=False, int aLo=-1) -> int

        Parameters:
            aValue: int const &
            aFindFirst: bool
            aLo: int

        searchBinary(ArrayInt self, int const & aValue, bool aFindFirst=False) -> int

        Parameters:
            aValue: int const &
            aFindFirst: bool

        searchBinary(ArrayInt self, int const & aValue) -> int

        Parameters:
            aValue: int const &

        """
        return _opensim.ArrayInt_searchBinary(self, *args)

ArrayInt_swigregister = _opensim.ArrayInt_swigregister
ArrayInt_swigregister(ArrayInt)

class ArrayStr(_object):
    """Proxy of C++ OpenSim::Array<(std::string)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayStr, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayStr, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_ArrayStr
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Array<(std::string)> self, std::string const & aDefaultValue=std::string(), int aSize=0, int aCapacity=Array_CAPMIN) -> ArrayStr

        Parameters:
            aDefaultValue: std::string const &
            aSize: int
            aCapacity: int

        __init__(OpenSim::Array<(std::string)> self, std::string const & aDefaultValue=std::string(), int aSize=0) -> ArrayStr

        Parameters:
            aDefaultValue: std::string const &
            aSize: int

        __init__(OpenSim::Array<(std::string)> self, std::string const & aDefaultValue=std::string()) -> ArrayStr

        Parameters:
            aDefaultValue: std::string const &

        __init__(OpenSim::Array<(std::string)> self) -> ArrayStr
        __init__(OpenSim::Array<(std::string)> self, ArrayStr aArray) -> ArrayStr

        Parameters:
            aArray: OpenSim::Array< std::string > const &

        """
        this = _opensim.new_ArrayStr(*args)
        try: self.this.append(this)
        except: self.this = this
    def arrayEquals(self, *args):
        """
        arrayEquals(ArrayStr self, ArrayStr aArray) -> bool

        Parameters:
            aArray: OpenSim::Array< std::string > const &

        """
        return _opensim.ArrayStr_arrayEquals(self, *args)

    def trim(self):
        """
        trim(ArrayStr self)

        Parameters:
            self: OpenSim::Array< std::string > *

        """
        return _opensim.ArrayStr_trim(self)

    def setSize(self, *args):
        """
        setSize(ArrayStr self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.ArrayStr_setSize(self, *args)

    def getSize(self):
        """
        getSize(ArrayStr self) -> int

        Parameters:
            self: OpenSim::Array< std::string > const *

        """
        return _opensim.ArrayStr_getSize(self)

    def size(self):
        """
        size(ArrayStr self) -> int

        Parameters:
            self: OpenSim::Array< std::string > const *

        """
        return _opensim.ArrayStr_size(self)

    def append(self, *args):
        """
        append(ArrayStr self, std::string const & aValue) -> int

        Parameters:
            aValue: std::string const &

        append(ArrayStr self, ArrayStr aArray) -> int

        Parameters:
            aArray: OpenSim::Array< std::string > const &

        """
        return _opensim.ArrayStr_append(self, *args)

    def insert(self, *args):
        """
        insert(ArrayStr self, int aIndex, std::string const & aValue) -> int

        Parameters:
            aIndex: int
            aValue: std::string const &

        """
        return _opensim.ArrayStr_insert(self, *args)

    def remove(self, *args):
        """
        remove(ArrayStr self, int aIndex) -> int

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayStr_remove(self, *args)

    def set(self, *args):
        """
        set(ArrayStr self, int aIndex, std::string const & aValue)

        Parameters:
            aIndex: int
            aValue: std::string const &

        """
        return _opensim.ArrayStr_set(self, *args)

    def get(self, *args):
        """
        get(ArrayStr self, int aIndex) -> std::string const &

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayStr_get(self, *args)

    def getitem(self, *args):
        """
        getitem(ArrayStr self, int index) -> std::string

        Parameters:
            index: int

        """
        return _opensim.ArrayStr_getitem(self, *args)

    def setitem(self, *args):
        """
        setitem(ArrayStr self, int index, std::string val)

        Parameters:
            index: int
            val: std::string

        """
        return _opensim.ArrayStr_setitem(self, *args)

    def getLast(self):
        """
        getLast(ArrayStr self) -> std::string const &

        Parameters:
            self: OpenSim::Array< std::string > const *

        """
        return _opensim.ArrayStr_getLast(self)

    def findIndex(self, *args):
        """
        findIndex(ArrayStr self, std::string const & aValue) -> int

        Parameters:
            aValue: std::string const &

        """
        return _opensim.ArrayStr_findIndex(self, *args)

    def rfindIndex(self, *args):
        """
        rfindIndex(ArrayStr self, std::string const & aValue) -> int

        Parameters:
            aValue: std::string const &

        """
        return _opensim.ArrayStr_rfindIndex(self, *args)

    def searchBinary(self, *args):
        """
        searchBinary(ArrayStr self, std::string const & aValue, bool aFindFirst=False, int aLo=-1, int aHi=-1) -> int

        Parameters:
            aValue: std::string const &
            aFindFirst: bool
            aLo: int
            aHi: int

        searchBinary(ArrayStr self, std::string const & aValue, bool aFindFirst=False, int aLo=-1) -> int

        Parameters:
            aValue: std::string const &
            aFindFirst: bool
            aLo: int

        searchBinary(ArrayStr self, std::string const & aValue, bool aFindFirst=False) -> int

        Parameters:
            aValue: std::string const &
            aFindFirst: bool

        searchBinary(ArrayStr self, std::string const & aValue) -> int

        Parameters:
            aValue: std::string const &

        """
        return _opensim.ArrayStr_searchBinary(self, *args)

ArrayStr_swigregister = _opensim.ArrayStr_swigregister
ArrayStr_swigregister(ArrayStr)

class ArrayObjPtr(_object):
    """Proxy of C++ OpenSim::Array<(p.OpenSim::Object)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayObjPtr, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayObjPtr, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_ArrayObjPtr
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Array<(p.OpenSim::Object)> self, OpenSimObject aDefaultValue=OpenSim::Object *(), int aSize=0, int aCapacity=Array_CAPMIN) -> ArrayObjPtr

        Parameters:
            aDefaultValue: OpenSim::Object *const &
            aSize: int
            aCapacity: int

        __init__(OpenSim::Array<(p.OpenSim::Object)> self, OpenSimObject aDefaultValue=OpenSim::Object *(), int aSize=0) -> ArrayObjPtr

        Parameters:
            aDefaultValue: OpenSim::Object *const &
            aSize: int

        __init__(OpenSim::Array<(p.OpenSim::Object)> self, OpenSimObject aDefaultValue=OpenSim::Object *()) -> ArrayObjPtr

        Parameters:
            aDefaultValue: OpenSim::Object *const &

        __init__(OpenSim::Array<(p.OpenSim::Object)> self) -> ArrayObjPtr
        __init__(OpenSim::Array<(p.OpenSim::Object)> self, ArrayObjPtr aArray) -> ArrayObjPtr

        Parameters:
            aArray: OpenSim::Array< OpenSim::Object * > const &

        """
        this = _opensim.new_ArrayObjPtr(*args)
        try: self.this.append(this)
        except: self.this = this
    def arrayEquals(self, *args):
        """
        arrayEquals(ArrayObjPtr self, ArrayObjPtr aArray) -> bool

        Parameters:
            aArray: OpenSim::Array< OpenSim::Object * > const &

        """
        return _opensim.ArrayObjPtr_arrayEquals(self, *args)

    def trim(self):
        """
        trim(ArrayObjPtr self)

        Parameters:
            self: OpenSim::Array< OpenSim::Object * > *

        """
        return _opensim.ArrayObjPtr_trim(self)

    def setSize(self, *args):
        """
        setSize(ArrayObjPtr self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.ArrayObjPtr_setSize(self, *args)

    def getSize(self):
        """
        getSize(ArrayObjPtr self) -> int

        Parameters:
            self: OpenSim::Array< OpenSim::Object * > const *

        """
        return _opensim.ArrayObjPtr_getSize(self)

    def size(self):
        """
        size(ArrayObjPtr self) -> int

        Parameters:
            self: OpenSim::Array< OpenSim::Object * > const *

        """
        return _opensim.ArrayObjPtr_size(self)

    def append(self, *args):
        """
        append(ArrayObjPtr self, OpenSimObject aValue) -> int

        Parameters:
            aValue: OpenSim::Object *const &

        append(ArrayObjPtr self, ArrayObjPtr aArray) -> int

        Parameters:
            aArray: OpenSim::Array< OpenSim::Object * > const &

        """
        return _opensim.ArrayObjPtr_append(self, *args)

    def insert(self, *args):
        """
        insert(ArrayObjPtr self, int aIndex, OpenSimObject aValue) -> int

        Parameters:
            aIndex: int
            aValue: OpenSim::Object *const &

        """
        return _opensim.ArrayObjPtr_insert(self, *args)

    def remove(self, *args):
        """
        remove(ArrayObjPtr self, int aIndex) -> int

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayObjPtr_remove(self, *args)

    def set(self, *args):
        """
        set(ArrayObjPtr self, int aIndex, OpenSimObject aValue)

        Parameters:
            aIndex: int
            aValue: OpenSim::Object *const &

        """
        return _opensim.ArrayObjPtr_set(self, *args)

    def get(self, *args):
        """
        get(ArrayObjPtr self, int aIndex) -> OpenSimObject

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayObjPtr_get(self, *args)

    def getitem(self, *args):
        """
        getitem(ArrayObjPtr self, int index) -> OpenSimObject

        Parameters:
            index: int

        """
        return _opensim.ArrayObjPtr_getitem(self, *args)

    def setitem(self, *args):
        """
        setitem(ArrayObjPtr self, int index, OpenSimObject val)

        Parameters:
            index: int
            val: OpenSim::Object *

        """
        return _opensim.ArrayObjPtr_setitem(self, *args)

    def getLast(self):
        """
        getLast(ArrayObjPtr self) -> OpenSimObject

        Parameters:
            self: OpenSim::Array< OpenSim::Object * > const *

        """
        return _opensim.ArrayObjPtr_getLast(self)

    def findIndex(self, *args):
        """
        findIndex(ArrayObjPtr self, OpenSimObject aValue) -> int

        Parameters:
            aValue: OpenSim::Object *const &

        """
        return _opensim.ArrayObjPtr_findIndex(self, *args)

    def rfindIndex(self, *args):
        """
        rfindIndex(ArrayObjPtr self, OpenSimObject aValue) -> int

        Parameters:
            aValue: OpenSim::Object *const &

        """
        return _opensim.ArrayObjPtr_rfindIndex(self, *args)

    def searchBinary(self, *args):
        """
        searchBinary(ArrayObjPtr self, OpenSimObject aValue, bool aFindFirst=False, int aLo=-1, int aHi=-1) -> int

        Parameters:
            aValue: OpenSim::Object *const &
            aFindFirst: bool
            aLo: int
            aHi: int

        searchBinary(ArrayObjPtr self, OpenSimObject aValue, bool aFindFirst=False, int aLo=-1) -> int

        Parameters:
            aValue: OpenSim::Object *const &
            aFindFirst: bool
            aLo: int

        searchBinary(ArrayObjPtr self, OpenSimObject aValue, bool aFindFirst=False) -> int

        Parameters:
            aValue: OpenSim::Object *const &
            aFindFirst: bool

        searchBinary(ArrayObjPtr self, OpenSimObject aValue) -> int

        Parameters:
            aValue: OpenSim::Object *const &

        """
        return _opensim.ArrayObjPtr_searchBinary(self, *args)

ArrayObjPtr_swigregister = _opensim.ArrayObjPtr_swigregister
ArrayObjPtr_swigregister(ArrayObjPtr)

class ArrayPtrsObj(_object):
    """Proxy of C++ OpenSim::ArrayPtrs<(OpenSim::Object)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayPtrsObj, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayPtrsObj, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_ArrayPtrsObj
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::ArrayPtrs<(OpenSim::Object)> self, int aCapacity=1) -> ArrayPtrsObj

        Parameters:
            aCapacity: int

        __init__(OpenSim::ArrayPtrs<(OpenSim::Object)> self) -> ArrayPtrsObj
        __init__(OpenSim::ArrayPtrs<(OpenSim::Object)> self, ArrayPtrsObj aArray) -> ArrayPtrsObj

        Parameters:
            aArray: OpenSim::ArrayPtrs< OpenSim::Object > const &

        """
        this = _opensim.new_ArrayPtrsObj(*args)
        try: self.this.append(this)
        except: self.this = this
    def clearAndDestroy(self):
        """
        clearAndDestroy(ArrayPtrsObj self)

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::Object > *

        """
        return _opensim.ArrayPtrsObj_clearAndDestroy(self)

    def setSize(self, *args):
        """
        setSize(ArrayPtrsObj self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.ArrayPtrsObj_setSize(self, *args)

    def getSize(self):
        """
        getSize(ArrayPtrsObj self) -> int

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::Object > const *

        """
        return _opensim.ArrayPtrsObj_getSize(self)

    def size(self):
        """
        size(ArrayPtrsObj self) -> int

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::Object > const *

        """
        return _opensim.ArrayPtrsObj_size(self)

    def getIndex(self, *args):
        """
        getIndex(ArrayPtrsObj self, OpenSimObject aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Object const *
            aStartIndex: int

        getIndex(ArrayPtrsObj self, OpenSimObject aObject) -> int

        Parameters:
            aObject: OpenSim::Object const *

        getIndex(ArrayPtrsObj self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(ArrayPtrsObj self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.ArrayPtrsObj_getIndex(self, *args)

    def append(self, *args):
        """
        append(ArrayPtrsObj self, OpenSimObject aObject) -> bool

        Parameters:
            aObject: OpenSim::Object *

        append(ArrayPtrsObj self, ArrayPtrsObj aArray) -> bool

        Parameters:
            aArray: OpenSim::ArrayPtrs< OpenSim::Object > &

        """
        return _opensim.ArrayPtrsObj_append(self, *args)

    def insert(self, *args):
        """
        insert(ArrayPtrsObj self, int aIndex, OpenSimObject aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Object *

        """
        return _opensim.ArrayPtrsObj_insert(self, *args)

    def remove(self, *args):
        """
        remove(ArrayPtrsObj self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(ArrayPtrsObj self, OpenSimObject aObject) -> bool

        Parameters:
            aObject: OpenSim::Object const *

        """
        return _opensim.ArrayPtrsObj_remove(self, *args)

    def set(self, *args):
        """
        set(ArrayPtrsObj self, int aIndex, OpenSimObject aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Object *

        """
        return _opensim.ArrayPtrsObj_set(self, *args)

    def get(self, *args):
        """
        get(ArrayPtrsObj self, int aIndex) -> OpenSimObject

        Parameters:
            aIndex: int

        get(ArrayPtrsObj self, std::string const & aName) -> OpenSimObject

        Parameters:
            aName: std::string const &

        """
        return _opensim.ArrayPtrsObj_get(self, *args)

    def getLast(self):
        """
        getLast(ArrayPtrsObj self) -> OpenSimObject

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::Object > const *

        """
        return _opensim.ArrayPtrsObj_getLast(self)

    def searchBinary(self, *args):
        """
        searchBinary(ArrayPtrsObj self, OpenSimObject aObject, bool aFindFirst=False, int aLo=-1, int aHi=-1) -> int

        Parameters:
            aObject: OpenSim::Object const &
            aFindFirst: bool
            aLo: int
            aHi: int

        searchBinary(ArrayPtrsObj self, OpenSimObject aObject, bool aFindFirst=False, int aLo=-1) -> int

        Parameters:
            aObject: OpenSim::Object const &
            aFindFirst: bool
            aLo: int

        searchBinary(ArrayPtrsObj self, OpenSimObject aObject, bool aFindFirst=False) -> int

        Parameters:
            aObject: OpenSim::Object const &
            aFindFirst: bool

        searchBinary(ArrayPtrsObj self, OpenSimObject aObject) -> int

        Parameters:
            aObject: OpenSim::Object const &

        """
        return _opensim.ArrayPtrsObj_searchBinary(self, *args)

ArrayPtrsObj_swigregister = _opensim.ArrayPtrsObj_swigregister
ArrayPtrsObj_swigregister(ArrayPtrsObj)

class Scale(OpenSimObject):
    """Proxy of C++ OpenSim::Scale class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Scale, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Scale, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Scale

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Scale_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Scale self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Scale_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Scale_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Scale self) -> Scale

        Parameters:
            self: OpenSim::Scale const *

        """
        return _opensim.Scale_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Scale self) -> std::string const &

        Parameters:
            self: OpenSim::Scale const *

        """
        return _opensim.Scale_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Scale self) -> Scale
        __init__(OpenSim::Scale self, Scale aMarker) -> Scale

        Parameters:
            aMarker: OpenSim::Scale const &

        __init__(OpenSim::Scale self, std::string const & scaleFileName) -> Scale

        Parameters:
            scaleFileName: std::string const &

        """
        this = _opensim.new_Scale(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_Scale
    __del__ = lambda self : None;
    def getSegmentName(self):
        """
        getSegmentName(Scale self) -> std::string const &

        Parameters:
            self: OpenSim::Scale const *

        """
        return _opensim.Scale_getSegmentName(self)

    def setSegmentName(self, *args):
        """
        setSegmentName(Scale self, std::string const & aSegmentName)

        Parameters:
            aSegmentName: std::string const &

        """
        return _opensim.Scale_setSegmentName(self, *args)

    def getScaleFactors(self, *args):
        """
        getScaleFactors(Scale self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 &

        getScaleFactors(Scale self) -> Vec3
        getScaleFactors(Scale self, double [] rScaleFactors)

        Parameters:
            rScaleFactors: double []

        """
        return _opensim.Scale_getScaleFactors(self, *args)

    def setScaleFactors(self, *args):
        """
        setScaleFactors(Scale self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &

        setScaleFactors(Scale self, double const [] aScaleFactors)

        Parameters:
            aScaleFactors: double const []

        """
        return _opensim.Scale_setScaleFactors(self, *args)

    def getApply(self):
        """
        getApply(Scale self) -> bool

        Parameters:
            self: OpenSim::Scale const *

        """
        return _opensim.Scale_getApply(self)

    def setApply(self, *args):
        """
        setApply(Scale self, bool state)

        Parameters:
            state: bool

        """
        return _opensim.Scale_setApply(self, *args)

Scale_swigregister = _opensim.Scale_swigregister
Scale_swigregister(Scale)

def Scale_safeDownCast(*args):
  """
    Scale_safeDownCast(OpenSimObject obj) -> Scale

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Scale_safeDownCast(*args)

def Scale_getClassName():
  """Scale_getClassName() -> std::string const &"""
  return _opensim.Scale_getClassName()

class SetScales(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Scale)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetScales, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetScales, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetScales

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetScales_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetScales self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetScales_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetScales_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetScales self) -> SetScales

        Parameters:
            self: OpenSim::Set< OpenSim::Scale > const *

        """
        return _opensim.SetScales_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetScales self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Scale > const *

        """
        return _opensim.SetScales_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetScales
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Scale)> self) -> SetScales
        __init__(OpenSim::Set<(OpenSim::Scale)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetScales

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Scale)> self, std::string const & aFileName) -> SetScales

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Scale)> self, SetScales aSet) -> SetScales

        Parameters:
            aSet: OpenSim::Set< OpenSim::Scale > const &

        """
        this = _opensim.new_SetScales(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetScales self)

        Parameters:
            self: OpenSim::Set< OpenSim::Scale > *

        """
        return _opensim.SetScales_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetScales self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetScales_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetScales self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetScales_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetScales self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Scale > const *

        """
        return _opensim.SetScales_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetScales self, Scale aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Scale const *
            aStartIndex: int

        getIndex(SetScales self, Scale aObject) -> int

        Parameters:
            aObject: OpenSim::Scale const *

        getIndex(SetScales self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetScales self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetScales_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetScales self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetScales_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetScales self, Scale aObject) -> bool

        Parameters:
            aObject: OpenSim::Scale *

        """
        return _opensim.SetScales_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetScales self, Scale aObject) -> bool

        Parameters:
            aObject: OpenSim::Scale const &

        """
        return _opensim.SetScales_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetScales self, int aIndex, Scale aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Scale *

        """
        return _opensim.SetScales_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetScales self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetScales self, Scale aObject) -> bool

        Parameters:
            aObject: OpenSim::Scale const *

        """
        return _opensim.SetScales_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetScales self)

        Parameters:
            self: OpenSim::Set< OpenSim::Scale > *

        """
        return _opensim.SetScales_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetScales self, int aIndex, Scale aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Scale *
            preserveGroups: bool

        set(SetScales self, int aIndex, Scale aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Scale *

        """
        return _opensim.SetScales_set(self, *args)

    def get(self, *args):
        """
        get(SetScales self, int aIndex) -> Scale

        Parameters:
            aIndex: int

        get(SetScales self, std::string const & aName) -> Scale

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetScales_get(self, *args)

    def contains(self, *args):
        """
        contains(SetScales self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetScales_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetScales self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetScales_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetScales self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Scale > const *

        """
        return _opensim.SetScales_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetScales self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetScales_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetScales self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetScales_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetScales self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetScales_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetScales self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetScales_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetScales self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetScales_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetScales self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetScales self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetScales_getGroup(self, *args)

SetScales_swigregister = _opensim.SetScales_swigregister
SetScales_swigregister(SetScales)

def SetScales_safeDownCast(*args):
  """
    SetScales_safeDownCast(OpenSimObject obj) -> SetScales

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetScales_safeDownCast(*args)

def SetScales_getClassName():
  """SetScales_getClassName() -> std::string const &"""
  return _opensim.SetScales_getClassName()

class ScaleSet(SetScales):
    """Proxy of C++ OpenSim::ScaleSet class"""
    __swig_setmethods__ = {}
    for _s in [SetScales]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ScaleSet, name, value)
    __swig_getmethods__ = {}
    for _s in [SetScales]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ScaleSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ScaleSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ScaleSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ScaleSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ScaleSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ScaleSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ScaleSet self) -> ScaleSet

        Parameters:
            self: OpenSim::ScaleSet const *

        """
        return _opensim.ScaleSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ScaleSet self) -> std::string const &

        Parameters:
            self: OpenSim::ScaleSet const *

        """
        return _opensim.ScaleSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ScaleSet self) -> ScaleSet
        __init__(OpenSim::ScaleSet self, std::string const & scalesFileName) -> ScaleSet

        Parameters:
            scalesFileName: std::string const &

        """
        this = _opensim.new_ScaleSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ScaleSet
    __del__ = lambda self : None;
    def adoptAndAppend(self, aScale):
        aScale._markAdopted()
        return super(ScaleSet, self).adoptAndAppend(aScale)

ScaleSet_swigregister = _opensim.ScaleSet_swigregister
ScaleSet_swigregister(ScaleSet)

def ScaleSet_safeDownCast(*args):
  """
    ScaleSet_safeDownCast(OpenSimObject obj) -> ScaleSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ScaleSet_safeDownCast(*args)

def ScaleSet_getClassName():
  """ScaleSet_getClassName() -> std::string const &"""
  return _opensim.ScaleSet_getClassName()

class MarkerFrame(OpenSimObject):
    """Proxy of C++ OpenSim::MarkerFrame class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MarkerFrame, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MarkerFrame, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MarkerFrame

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MarkerFrame_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MarkerFrame self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MarkerFrame_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MarkerFrame_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MarkerFrame self) -> MarkerFrame

        Parameters:
            self: OpenSim::MarkerFrame const *

        """
        return _opensim.MarkerFrame_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MarkerFrame self) -> std::string const &

        Parameters:
            self: OpenSim::MarkerFrame const *

        """
        return _opensim.MarkerFrame_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MarkerFrame self) -> MarkerFrame
        __init__(OpenSim::MarkerFrame self, int aNumMarkers, int aFrameNumber, double aTime, Units aUnits) -> MarkerFrame

        Parameters:
            aNumMarkers: int
            aFrameNumber: int
            aTime: double
            aUnits: OpenSim::Units &

        __init__(OpenSim::MarkerFrame self, MarkerFrame aFrame) -> MarkerFrame

        Parameters:
            aFrame: OpenSim::MarkerFrame const &

        """
        this = _opensim.new_MarkerFrame(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_MarkerFrame
    __del__ = lambda self : None;
    def addMarker(self, *args):
        """
        addMarker(MarkerFrame self, Vec3 aCoords)

        Parameters:
            aCoords: SimTK::Vec3 const &

        """
        return _opensim.MarkerFrame_addMarker(self, *args)

    def getMarker(self, *args):
        """
        getMarker(MarkerFrame self, int aIndex) -> Vec3

        Parameters:
            aIndex: int

        """
        return _opensim.MarkerFrame_getMarker(self, *args)

    def updMarker(self, *args):
        """
        updMarker(MarkerFrame self, int aIndex) -> Vec3

        Parameters:
            aIndex: int

        """
        return _opensim.MarkerFrame_updMarker(self, *args)

    def getFrameNumber(self):
        """
        getFrameNumber(MarkerFrame self) -> int

        Parameters:
            self: OpenSim::MarkerFrame const *

        """
        return _opensim.MarkerFrame_getFrameNumber(self)

    def setFrameNumber(self, *args):
        """
        setFrameNumber(MarkerFrame self, int aNumber)

        Parameters:
            aNumber: int

        """
        return _opensim.MarkerFrame_setFrameNumber(self, *args)

    def getFrameTime(self):
        """
        getFrameTime(MarkerFrame self) -> double

        Parameters:
            self: OpenSim::MarkerFrame const *

        """
        return _opensim.MarkerFrame_getFrameTime(self)

    def scale(self, *args):
        """
        scale(MarkerFrame self, double aScaleFactor)

        Parameters:
            aScaleFactor: double

        """
        return _opensim.MarkerFrame_scale(self, *args)

    def getMarkers(self):
        """
        getMarkers(MarkerFrame self) -> SimTKArrayVec3

        Parameters:
            self: OpenSim::MarkerFrame const *

        """
        return _opensim.MarkerFrame_getMarkers(self)

MarkerFrame_swigregister = _opensim.MarkerFrame_swigregister
MarkerFrame_swigregister(MarkerFrame)

def MarkerFrame_safeDownCast(*args):
  """
    MarkerFrame_safeDownCast(OpenSimObject obj) -> MarkerFrame

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MarkerFrame_safeDownCast(*args)

def MarkerFrame_getClassName():
  """MarkerFrame_getClassName() -> std::string const &"""
  return _opensim.MarkerFrame_getClassName()

class MarkerData(OpenSimObject):
    """Proxy of C++ OpenSim::MarkerData class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MarkerData, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MarkerData, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MarkerData

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MarkerData_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MarkerData self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MarkerData_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MarkerData_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MarkerData self) -> MarkerData

        Parameters:
            self: OpenSim::MarkerData const *

        """
        return _opensim.MarkerData_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MarkerData self) -> std::string const &

        Parameters:
            self: OpenSim::MarkerData const *

        """
        return _opensim.MarkerData_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MarkerData self) -> MarkerData
        __init__(OpenSim::MarkerData self, std::string const & aFileName) -> MarkerData

        Parameters:
            aFileName: std::string const &

        """
        this = _opensim.new_MarkerData(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_MarkerData
    __del__ = lambda self : None;
    def findFrameRange(self, *args):
        """
        findFrameRange(MarkerData self, double aStartTime, double aEndTime, int & rStartFrame, int & rEndFrame)

        Parameters:
            aStartTime: double
            aEndTime: double
            rStartFrame: int &
            rEndFrame: int &

        """
        return _opensim.MarkerData_findFrameRange(self, *args)

    def averageFrames(self, *args):
        """
        averageFrames(MarkerData self, double aThreshold=-1.0, double aStartTime=-SimTK::Infinity, double aEndTime=SimTK::Infinity)

        Parameters:
            aThreshold: double
            aStartTime: double
            aEndTime: double

        averageFrames(MarkerData self, double aThreshold=-1.0, double aStartTime=-SimTK::Infinity)

        Parameters:
            aThreshold: double
            aStartTime: double

        averageFrames(MarkerData self, double aThreshold=-1.0)

        Parameters:
            aThreshold: double

        averageFrames(MarkerData self)

        Parameters:
            self: OpenSim::MarkerData *

        """
        return _opensim.MarkerData_averageFrames(self, *args)

    def getFileName(self):
        """
        getFileName(MarkerData self) -> std::string const &

        Parameters:
            self: OpenSim::MarkerData const *

        """
        return _opensim.MarkerData_getFileName(self)

    def makeRdStorage(self, *args):
        """
        makeRdStorage(MarkerData self, Storage rStorage)

        Parameters:
            rStorage: OpenSim::Storage &

        """
        return _opensim.MarkerData_makeRdStorage(self, *args)

    def getFrame(self, *args):
        """
        getFrame(MarkerData self, int aIndex) -> MarkerFrame

        Parameters:
            aIndex: int

        """
        return _opensim.MarkerData_getFrame(self, *args)

    def getMarkerIndex(self, *args):
        """
        getMarkerIndex(MarkerData self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.MarkerData_getMarkerIndex(self, *args)

    def getUnits(self):
        """
        getUnits(MarkerData self) -> Units

        Parameters:
            self: OpenSim::MarkerData const *

        """
        return _opensim.MarkerData_getUnits(self)

    def convertToUnits(self, *args):
        """
        convertToUnits(MarkerData self, Units aUnits)

        Parameters:
            aUnits: OpenSim::Units const &

        """
        return _opensim.MarkerData_convertToUnits(self, *args)

    def getMarkerNames(self):
        """
        getMarkerNames(MarkerData self) -> ArrayStr

        Parameters:
            self: OpenSim::MarkerData const *

        """
        return _opensim.MarkerData_getMarkerNames(self)

    def getNumMarkers(self):
        """
        getNumMarkers(MarkerData self) -> int

        Parameters:
            self: OpenSim::MarkerData const *

        """
        return _opensim.MarkerData_getNumMarkers(self)

    def getNumFrames(self):
        """
        getNumFrames(MarkerData self) -> int

        Parameters:
            self: OpenSim::MarkerData const *

        """
        return _opensim.MarkerData_getNumFrames(self)

    def getStartFrameTime(self):
        """
        getStartFrameTime(MarkerData self) -> double

        Parameters:
            self: OpenSim::MarkerData const *

        """
        return _opensim.MarkerData_getStartFrameTime(self)

    def getLastFrameTime(self):
        """
        getLastFrameTime(MarkerData self) -> double

        Parameters:
            self: OpenSim::MarkerData const *

        """
        return _opensim.MarkerData_getLastFrameTime(self)

    def getDataRate(self):
        """
        getDataRate(MarkerData self) -> double

        Parameters:
            self: OpenSim::MarkerData const *

        """
        return _opensim.MarkerData_getDataRate(self)

    def getCameraRate(self):
        """
        getCameraRate(MarkerData self) -> double

        Parameters:
            self: OpenSim::MarkerData const *

        """
        return _opensim.MarkerData_getCameraRate(self)

MarkerData_swigregister = _opensim.MarkerData_swigregister
MarkerData_swigregister(MarkerData)

def MarkerData_safeDownCast(*args):
  """
    MarkerData_safeDownCast(OpenSimObject obj) -> MarkerData

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MarkerData_safeDownCast(*args)

def MarkerData_getClassName():
  """MarkerData_getClassName() -> std::string const &"""
  return _opensim.MarkerData_getClassName()

class ModelComponent(OpenSimObject):
    """Proxy of C++ OpenSim::ModelComponent class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ModelComponent, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ModelComponent, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ModelComponent

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ModelComponent_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ModelComponent self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ModelComponent_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ModelComponent_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ModelComponent self) -> ModelComponent

        Parameters:
            self: OpenSim::ModelComponent const *

        """
        return _opensim.ModelComponent_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ModelComponent self) -> std::string const &

        Parameters:
            self: OpenSim::ModelComponent const *

        """
        return _opensim.ModelComponent_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_ModelComponent
    __del__ = lambda self : None;
    def getModel(self):
        """
        getModel(ModelComponent self) -> Model

        Parameters:
            self: OpenSim::ModelComponent const *

        """
        return _opensim.ModelComponent_getModel(self)

    def updModel(self):
        """
        updModel(ModelComponent self) -> Model

        Parameters:
            self: OpenSim::ModelComponent *

        """
        return _opensim.ModelComponent_updModel(self)

    def updateDisplayer(self, *args):
        """
        updateDisplayer(ModelComponent self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.ModelComponent_updateDisplayer(self, *args)

    def getNumStateVariables(self):
        """
        getNumStateVariables(ModelComponent self) -> int

        Parameters:
            self: OpenSim::ModelComponent const *

        """
        return _opensim.ModelComponent_getNumStateVariables(self)

    def getStateVariableNames(self):
        """
        getStateVariableNames(ModelComponent self) -> ArrayStr

        Parameters:
            self: OpenSim::ModelComponent const *

        """
        return _opensim.ModelComponent_getStateVariableNames(self)

    def getStateVariableSystemIndex(self, *args):
        """
        getStateVariableSystemIndex(ModelComponent self, std::string const & stateVariableName) -> SimTK::SystemYIndex

        Parameters:
            stateVariableName: std::string const &

        """
        return _opensim.ModelComponent_getStateVariableSystemIndex(self, *args)

    def getModelingOption(self, *args):
        """
        getModelingOption(ModelComponent self, State state, std::string const & name) -> int

        Parameters:
            state: SimTK::State const &
            name: std::string const &

        """
        return _opensim.ModelComponent_getModelingOption(self, *args)

    def setModelingOption(self, *args):
        """
        setModelingOption(ModelComponent self, State state, std::string const & name, int flag)

        Parameters:
            state: SimTK::State &
            name: std::string const &
            flag: int

        """
        return _opensim.ModelComponent_setModelingOption(self, *args)

    def getStateVariable(self, *args):
        """
        getStateVariable(ModelComponent self, State state, std::string const & name) -> double

        Parameters:
            state: SimTK::State const &
            name: std::string const &

        """
        return _opensim.ModelComponent_getStateVariable(self, *args)

    def setStateVariable(self, *args):
        """
        setStateVariable(ModelComponent self, State state, std::string const & name, double value)

        Parameters:
            state: SimTK::State &
            name: std::string const &
            value: double

        """
        return _opensim.ModelComponent_setStateVariable(self, *args)

    def getDiscreteVariable(self, *args):
        """
        getDiscreteVariable(ModelComponent self, State state, std::string const & name) -> double

        Parameters:
            state: SimTK::State const &
            name: std::string const &

        """
        return _opensim.ModelComponent_getDiscreteVariable(self, *args)

    def setDiscreteVariable(self, *args):
        """
        setDiscreteVariable(ModelComponent self, State state, std::string const & name, double value)

        Parameters:
            state: SimTK::State &
            name: std::string const &
            value: double

        """
        return _opensim.ModelComponent_setDiscreteVariable(self, *args)

    def markCacheVariableValid(self, *args):
        """
        markCacheVariableValid(ModelComponent self, State state, std::string const & name)

        Parameters:
            state: SimTK::State const &
            name: std::string const &

        """
        return _opensim.ModelComponent_markCacheVariableValid(self, *args)

    def markCacheVariableInvalid(self, *args):
        """
        markCacheVariableInvalid(ModelComponent self, State state, std::string const & name)

        Parameters:
            state: SimTK::State const &
            name: std::string const &

        """
        return _opensim.ModelComponent_markCacheVariableInvalid(self, *args)

    def isCacheVariableValid(self, *args):
        """
        isCacheVariableValid(ModelComponent self, State state, std::string const & name) -> bool

        Parameters:
            state: SimTK::State const &
            name: std::string const &

        """
        return _opensim.ModelComponent_isCacheVariableValid(self, *args)

ModelComponent_swigregister = _opensim.ModelComponent_swigregister
ModelComponent_swigregister(ModelComponent)

def ModelComponent_safeDownCast(*args):
  """
    ModelComponent_safeDownCast(OpenSimObject obj) -> ModelComponent

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ModelComponent_safeDownCast(*args)

def ModelComponent_getClassName():
  """ModelComponent_getClassName() -> std::string const &"""
  return _opensim.ModelComponent_getClassName()

class SetModelComponents(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::ModelComponent)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetModelComponents, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetModelComponents, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetModelComponents

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetModelComponents_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetModelComponents self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetModelComponents_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetModelComponents_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetModelComponents self) -> SetModelComponents

        Parameters:
            self: OpenSim::Set< OpenSim::ModelComponent > const *

        """
        return _opensim.SetModelComponents_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetModelComponents self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::ModelComponent > const *

        """
        return _opensim.SetModelComponents_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetModelComponents
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::ModelComponent)> self) -> SetModelComponents
        __init__(OpenSim::Set<(OpenSim::ModelComponent)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetModelComponents

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::ModelComponent)> self, std::string const & aFileName) -> SetModelComponents

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::ModelComponent)> self, SetModelComponents aSet) -> SetModelComponents

        Parameters:
            aSet: OpenSim::Set< OpenSim::ModelComponent > const &

        """
        this = _opensim.new_SetModelComponents(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetModelComponents self)

        Parameters:
            self: OpenSim::Set< OpenSim::ModelComponent > *

        """
        return _opensim.SetModelComponents_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetModelComponents self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetModelComponents_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetModelComponents self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetModelComponents_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetModelComponents self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::ModelComponent > const *

        """
        return _opensim.SetModelComponents_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetModelComponents self, ModelComponent aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::ModelComponent const *
            aStartIndex: int

        getIndex(SetModelComponents self, ModelComponent aObject) -> int

        Parameters:
            aObject: OpenSim::ModelComponent const *

        getIndex(SetModelComponents self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetModelComponents self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetModelComponents_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetModelComponents self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetModelComponents_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetModelComponents self, ModelComponent aObject) -> bool

        Parameters:
            aObject: OpenSim::ModelComponent *

        """
        return _opensim.SetModelComponents_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetModelComponents self, ModelComponent aObject) -> bool

        Parameters:
            aObject: OpenSim::ModelComponent const &

        """
        return _opensim.SetModelComponents_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetModelComponents self, int aIndex, ModelComponent aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ModelComponent *

        """
        return _opensim.SetModelComponents_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetModelComponents self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetModelComponents self, ModelComponent aObject) -> bool

        Parameters:
            aObject: OpenSim::ModelComponent const *

        """
        return _opensim.SetModelComponents_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetModelComponents self)

        Parameters:
            self: OpenSim::Set< OpenSim::ModelComponent > *

        """
        return _opensim.SetModelComponents_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetModelComponents self, int aIndex, ModelComponent aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ModelComponent *
            preserveGroups: bool

        set(SetModelComponents self, int aIndex, ModelComponent aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ModelComponent *

        """
        return _opensim.SetModelComponents_set(self, *args)

    def get(self, *args):
        """
        get(SetModelComponents self, int aIndex) -> ModelComponent

        Parameters:
            aIndex: int

        get(SetModelComponents self, std::string const & aName) -> ModelComponent

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetModelComponents_get(self, *args)

    def contains(self, *args):
        """
        contains(SetModelComponents self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetModelComponents_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetModelComponents self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetModelComponents_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetModelComponents self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::ModelComponent > const *

        """
        return _opensim.SetModelComponents_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetModelComponents self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetModelComponents_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetModelComponents self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetModelComponents_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetModelComponents self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetModelComponents_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetModelComponents self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetModelComponents_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetModelComponents self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetModelComponents_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetModelComponents self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetModelComponents self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetModelComponents_getGroup(self, *args)

SetModelComponents_swigregister = _opensim.SetModelComponents_swigregister
SetModelComponents_swigregister(SetModelComponents)

def SetModelComponents_safeDownCast(*args):
  """
    SetModelComponents_safeDownCast(OpenSimObject obj) -> SetModelComponents

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetModelComponents_safeDownCast(*args)

def SetModelComponents_getClassName():
  """SetModelComponents_getClassName() -> std::string const &"""
  return _opensim.SetModelComponents_getClassName()

class ModelComponentSetModelComponent(SetModelComponents):
    """Proxy of C++ OpenSim::ModelComponentSet<(OpenSim::ModelComponent)> class"""
    __swig_setmethods__ = {}
    for _s in [SetModelComponents]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ModelComponentSetModelComponent, name, value)
    __swig_getmethods__ = {}
    for _s in [SetModelComponents]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ModelComponentSetModelComponent, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ModelComponentSetModelComponent

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ModelComponentSetModelComponent_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ModelComponentSetModelComponent self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ModelComponentSetModelComponent_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ModelComponentSetModelComponent_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ModelComponentSetModelComponent self) -> ModelComponentSetModelComponent

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::ModelComponent > const *

        """
        return _opensim.ModelComponentSetModelComponent_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ModelComponentSetModelComponent self) -> std::string const &

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::ModelComponent > const *

        """
        return _opensim.ModelComponentSetModelComponent_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ModelComponentSet<(OpenSim::ModelComponent)> self) -> ModelComponentSetModelComponent
        __init__(OpenSim::ModelComponentSet<(OpenSim::ModelComponent)> self, Model model) -> ModelComponentSetModelComponent

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ModelComponentSet<(OpenSim::ModelComponent)> self, Model model, std::string const & fileName, bool aUpdateFromXMLNode=True) -> ModelComponentSetModelComponent

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ModelComponentSet<(OpenSim::ModelComponent)> self, Model model, std::string const & fileName) -> ModelComponentSetModelComponent

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &

        __init__(OpenSim::ModelComponentSet<(OpenSim::ModelComponent)> self, ModelComponentSetModelComponent source) -> ModelComponentSetModelComponent

        Parameters:
            source: OpenSim::ModelComponentSet< OpenSim::ModelComponent > const &

        """
        this = _opensim.new_ModelComponentSetModelComponent(*args)
        try: self.this.append(this)
        except: self.this = this
    def insert(self, *args):
        """
        insert(ModelComponentSetModelComponent self, int aIndex, ModelComponent aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ModelComponent *

        """
        return _opensim.ModelComponentSetModelComponent_insert(self, *args)

    def set(self, *args):
        """
        set(ModelComponentSetModelComponent self, int aIndex, ModelComponent aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ModelComponent *
            preserveGroups: bool

        set(ModelComponentSetModelComponent self, int aIndex, ModelComponent aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ModelComponent *

        """
        return _opensim.ModelComponentSetModelComponent_set(self, *args)

    def invokeConnectToModel(self, *args):
        """
        invokeConnectToModel(ModelComponentSetModelComponent self, Model model)

        Parameters:
            model: OpenSim::Model &

        """
        return _opensim.ModelComponentSetModelComponent_invokeConnectToModel(self, *args)

    def invokeAddToSystem(self, *args):
        """
        invokeAddToSystem(ModelComponentSetModelComponent self, SimTK::MultibodySystem & system)

        Parameters:
            system: SimTK::MultibodySystem &

        """
        return _opensim.ModelComponentSetModelComponent_invokeAddToSystem(self, *args)

    def invokeInitStateFromProperties(self, *args):
        """
        invokeInitStateFromProperties(ModelComponentSetModelComponent self, State state)

        Parameters:
            state: SimTK::State &

        """
        return _opensim.ModelComponentSetModelComponent_invokeInitStateFromProperties(self, *args)

    def invokeSetPropertiesFromState(self, *args):
        """
        invokeSetPropertiesFromState(ModelComponentSetModelComponent self, State state)

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ModelComponentSetModelComponent_invokeSetPropertiesFromState(self, *args)

    def invokeGenerateDecorations(self, *args):
        """
        invokeGenerateDecorations(ModelComponentSetModelComponent self, bool fixed, ModelDisplayHints hints, State state, ArrayDecorativeGeometry appendToThis)

        Parameters:
            fixed: bool
            hints: OpenSim::ModelDisplayHints const &
            state: SimTK::State const &
            appendToThis: SimTK::Array_< SimTK::DecorativeGeometry,unsigned int > &

        """
        return _opensim.ModelComponentSetModelComponent_invokeGenerateDecorations(self, *args)

    __swig_destroy__ = _opensim.delete_ModelComponentSetModelComponent
    __del__ = lambda self : None;
ModelComponentSetModelComponent_swigregister = _opensim.ModelComponentSetModelComponent_swigregister
ModelComponentSetModelComponent_swigregister(ModelComponentSetModelComponent)

def ModelComponentSetModelComponent_safeDownCast(*args):
  """
    ModelComponentSetModelComponent_safeDownCast(OpenSimObject obj) -> ModelComponentSetModelComponent

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ModelComponentSetModelComponent_safeDownCast(*args)

def ModelComponentSetModelComponent_getClassName():
  """ModelComponentSetModelComponent_getClassName() -> std::string const &"""
  return _opensim.ModelComponentSetModelComponent_getClassName()

class ComponentSet(ModelComponentSetModelComponent):
    """Proxy of C++ OpenSim::ComponentSet class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponentSetModelComponent]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ComponentSet, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponentSetModelComponent]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ComponentSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ComponentSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ComponentSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ComponentSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ComponentSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ComponentSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ComponentSet self) -> ComponentSet

        Parameters:
            self: OpenSim::ComponentSet const *

        """
        return _opensim.ComponentSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ComponentSet self) -> std::string const &

        Parameters:
            self: OpenSim::ComponentSet const *

        """
        return _opensim.ComponentSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ComponentSet self) -> ComponentSet
        __init__(OpenSim::ComponentSet self, Model model) -> ComponentSet

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ComponentSet self, Model model, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> ComponentSet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ComponentSet self, Model model, std::string const & aFileName) -> ComponentSet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &

        """
        this = _opensim.new_ComponentSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ComponentSet
    __del__ = lambda self : None;
ComponentSet_swigregister = _opensim.ComponentSet_swigregister
ComponentSet_swigregister(ComponentSet)

def ComponentSet_safeDownCast(*args):
  """
    ComponentSet_safeDownCast(OpenSimObject obj) -> ComponentSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ComponentSet_safeDownCast(*args)

def ComponentSet_getClassName():
  """ComponentSet_getClassName() -> std::string const &"""
  return _opensim.ComponentSet_getClassName()

class SetMuscles(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Muscle)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetMuscles, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetMuscles, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetMuscles

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetMuscles_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetMuscles self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetMuscles_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetMuscles_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetMuscles self) -> SetMuscles

        Parameters:
            self: OpenSim::Set< OpenSim::Muscle > const *

        """
        return _opensim.SetMuscles_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetMuscles self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Muscle > const *

        """
        return _opensim.SetMuscles_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetMuscles
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Muscle)> self) -> SetMuscles
        __init__(OpenSim::Set<(OpenSim::Muscle)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetMuscles

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Muscle)> self, std::string const & aFileName) -> SetMuscles

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Muscle)> self, SetMuscles aSet) -> SetMuscles

        Parameters:
            aSet: OpenSim::Set< OpenSim::Muscle > const &

        """
        this = _opensim.new_SetMuscles(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetMuscles self)

        Parameters:
            self: OpenSim::Set< OpenSim::Muscle > *

        """
        return _opensim.SetMuscles_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetMuscles self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetMuscles_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetMuscles self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetMuscles_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetMuscles self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Muscle > const *

        """
        return _opensim.SetMuscles_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetMuscles self, Muscle aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Muscle const *
            aStartIndex: int

        getIndex(SetMuscles self, Muscle aObject) -> int

        Parameters:
            aObject: OpenSim::Muscle const *

        getIndex(SetMuscles self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetMuscles self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMuscles_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetMuscles self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMuscles_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetMuscles self, Muscle aObject) -> bool

        Parameters:
            aObject: OpenSim::Muscle *

        """
        return _opensim.SetMuscles_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetMuscles self, Muscle aObject) -> bool

        Parameters:
            aObject: OpenSim::Muscle const &

        """
        return _opensim.SetMuscles_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetMuscles self, int aIndex, Muscle aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Muscle *

        """
        return _opensim.SetMuscles_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetMuscles self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetMuscles self, Muscle aObject) -> bool

        Parameters:
            aObject: OpenSim::Muscle const *

        """
        return _opensim.SetMuscles_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetMuscles self)

        Parameters:
            self: OpenSim::Set< OpenSim::Muscle > *

        """
        return _opensim.SetMuscles_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetMuscles self, int aIndex, Muscle aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Muscle *
            preserveGroups: bool

        set(SetMuscles self, int aIndex, Muscle aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Muscle *

        """
        return _opensim.SetMuscles_set(self, *args)

    def get(self, *args):
        """
        get(SetMuscles self, int aIndex) -> Muscle

        Parameters:
            aIndex: int

        get(SetMuscles self, std::string const & aName) -> Muscle

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMuscles_get(self, *args)

    def contains(self, *args):
        """
        contains(SetMuscles self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMuscles_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetMuscles self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMuscles_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetMuscles self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Muscle > const *

        """
        return _opensim.SetMuscles_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetMuscles self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetMuscles_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetMuscles self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetMuscles_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetMuscles self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetMuscles_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetMuscles self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetMuscles_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetMuscles self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMuscles_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetMuscles self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetMuscles self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetMuscles_getGroup(self, *args)

SetMuscles_swigregister = _opensim.SetMuscles_swigregister
SetMuscles_swigregister(SetMuscles)

def SetMuscles_safeDownCast(*args):
  """
    SetMuscles_safeDownCast(OpenSimObject obj) -> SetMuscles

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetMuscles_safeDownCast(*args)

def SetMuscles_getClassName():
  """SetMuscles_getClassName() -> std::string const &"""
  return _opensim.SetMuscles_getClassName()

class Solver(OpenSimObject):
    """Proxy of C++ OpenSim::Solver class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Solver, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Solver, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Solver

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Solver_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Solver self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Solver_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Solver_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Solver self) -> Solver

        Parameters:
            self: OpenSim::Solver const *

        """
        return _opensim.Solver_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Solver self) -> std::string const &

        Parameters:
            self: OpenSim::Solver const *

        """
        return _opensim.Solver_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_Solver
    __del__ = lambda self : None;
    def getModel(self):
        """
        getModel(Solver self) -> Model

        Parameters:
            self: OpenSim::Solver const *

        """
        return _opensim.Solver_getModel(self)

Solver_swigregister = _opensim.Solver_swigregister
Solver_swigregister(Solver)

def Solver_safeDownCast(*args):
  """
    Solver_safeDownCast(OpenSimObject obj) -> Solver

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Solver_safeDownCast(*args)

def Solver_getClassName():
  """Solver_getClassName() -> std::string const &"""
  return _opensim.Solver_getClassName()

class InverseDynamicsSolver(Solver):
    """Proxy of C++ OpenSim::InverseDynamicsSolver class"""
    __swig_setmethods__ = {}
    for _s in [Solver]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, InverseDynamicsSolver, name, value)
    __swig_getmethods__ = {}
    for _s in [Solver]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, InverseDynamicsSolver, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> InverseDynamicsSolver

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.InverseDynamicsSolver_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(InverseDynamicsSolver self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.InverseDynamicsSolver_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.InverseDynamicsSolver_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(InverseDynamicsSolver self) -> InverseDynamicsSolver

        Parameters:
            self: OpenSim::InverseDynamicsSolver const *

        """
        return _opensim.InverseDynamicsSolver_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(InverseDynamicsSolver self) -> std::string const &

        Parameters:
            self: OpenSim::InverseDynamicsSolver const *

        """
        return _opensim.InverseDynamicsSolver_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::InverseDynamicsSolver self, Model model) -> InverseDynamicsSolver

        Parameters:
            model: OpenSim::Model const &

        """
        this = _opensim.new_InverseDynamicsSolver(*args)
        try: self.this.append(this)
        except: self.this = this
    def solve(self, *args):
        """
        solve(InverseDynamicsSolver self, State s, Vector udot=SimTK::Vector(0)) -> Vector

        Parameters:
            s: SimTK::State const &
            udot: SimTK::Vector const &

        solve(InverseDynamicsSolver self, State s) -> Vector

        Parameters:
            s: SimTK::State const &

        solve(InverseDynamicsSolver self, State s, Vector udot, Vector appliedMobilityForces, VectorOfSpatialVec appliedBodyForces) -> Vector

        Parameters:
            s: SimTK::State const &
            udot: SimTK::Vector const &
            appliedMobilityForces: SimTK::Vector const &
            appliedBodyForces: SimTK::Vector_< SimTK::SpatialVec > const &

        solve(InverseDynamicsSolver self, State s, FunctionSet Qs, double time) -> Vector

        Parameters:
            s: SimTK::State &
            Qs: OpenSim::FunctionSet const &
            time: double

        """
        return _opensim.InverseDynamicsSolver_solve(self, *args)

    __swig_destroy__ = _opensim.delete_InverseDynamicsSolver
    __del__ = lambda self : None;
InverseDynamicsSolver_swigregister = _opensim.InverseDynamicsSolver_swigregister
InverseDynamicsSolver_swigregister(InverseDynamicsSolver)

def InverseDynamicsSolver_safeDownCast(*args):
  """
    InverseDynamicsSolver_safeDownCast(OpenSimObject obj) -> InverseDynamicsSolver

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.InverseDynamicsSolver_safeDownCast(*args)

def InverseDynamicsSolver_getClassName():
  """InverseDynamicsSolver_getClassName() -> std::string const &"""
  return _opensim.InverseDynamicsSolver_getClassName()

class MomentArmSolver(Solver):
    """Proxy of C++ OpenSim::MomentArmSolver class"""
    __swig_setmethods__ = {}
    for _s in [Solver]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MomentArmSolver, name, value)
    __swig_getmethods__ = {}
    for _s in [Solver]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MomentArmSolver, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MomentArmSolver

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MomentArmSolver_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MomentArmSolver self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MomentArmSolver_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MomentArmSolver_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MomentArmSolver self) -> MomentArmSolver

        Parameters:
            self: OpenSim::MomentArmSolver const *

        """
        return _opensim.MomentArmSolver_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MomentArmSolver self) -> std::string const &

        Parameters:
            self: OpenSim::MomentArmSolver const *

        """
        return _opensim.MomentArmSolver_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MomentArmSolver self, Model model) -> MomentArmSolver

        Parameters:
            model: OpenSim::Model const &

        """
        this = _opensim.new_MomentArmSolver(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_MomentArmSolver
    __del__ = lambda self : None;
    def solve(self, *args):
        """
        solve(MomentArmSolver self, State state, Coordinate coordinate, GeometryPath path) -> double

        Parameters:
            state: SimTK::State const &
            coordinate: OpenSim::Coordinate const &
            path: OpenSim::GeometryPath const &

        solve(MomentArmSolver self, State state, Coordinate coordinate, ArrayPointForceDirection pfds) -> double

        Parameters:
            state: SimTK::State const &
            coordinate: OpenSim::Coordinate const &
            pfds: OpenSim::Array< OpenSim::PointForceDirection * > const &

        """
        return _opensim.MomentArmSolver_solve(self, *args)

MomentArmSolver_swigregister = _opensim.MomentArmSolver_swigregister
MomentArmSolver_swigregister(MomentArmSolver)

def MomentArmSolver_safeDownCast(*args):
  """
    MomentArmSolver_safeDownCast(OpenSimObject obj) -> MomentArmSolver

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MomentArmSolver_safeDownCast(*args)

def MomentArmSolver_getClassName():
  """MomentArmSolver_getClassName() -> std::string const &"""
  return _opensim.MomentArmSolver_getClassName()

class Force(ModelComponent):
    """Proxy of C++ OpenSim::Force class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponent]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Force, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponent]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Force, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Force

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Force_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Force self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Force_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Force_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Force self) -> Force

        Parameters:
            self: OpenSim::Force const *

        """
        return _opensim.Force_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Force self) -> std::string const &

        Parameters:
            self: OpenSim::Force const *

        """
        return _opensim.Force_getConcreteClassName(self)

    def copyProperty_isDisabled(self, *args):
        """
        copyProperty_isDisabled(Force self, Force source)

        Parameters:
            source: OpenSim::Force::Self const &

        """
        return _opensim.Force_copyProperty_isDisabled(self, *args)

    def append_isDisabled(self, *args):
        """
        append_isDisabled(Force self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Force_append_isDisabled(self, *args)

    def constructProperty_isDisabled(self, *args):
        """
        constructProperty_isDisabled(Force self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Force_constructProperty_isDisabled(self, *args)

    def get_isDisabled(self, *args):
        """
        get_isDisabled(Force self, int i) -> bool const

        Parameters:
            i: int

        get_isDisabled(Force self) -> bool const &

        Parameters:
            self: OpenSim::Force const *

        """
        return _opensim.Force_get_isDisabled(self, *args)

    def upd_isDisabled(self, *args):
        """
        upd_isDisabled(Force self, int i) -> bool

        Parameters:
            i: int

        upd_isDisabled(Force self) -> bool &

        Parameters:
            self: OpenSim::Force *

        """
        return _opensim.Force_upd_isDisabled(self, *args)

    def set_isDisabled(self, *args):
        """
        set_isDisabled(Force self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_isDisabled(Force self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Force_set_isDisabled(self, *args)

    def isDisabled(self, *args):
        """
        isDisabled(Force self, State s) -> bool

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Force_isDisabled(self, *args)

    def setDisabled(self, *args):
        """
        setDisabled(Force self, State s, bool disabled)

        Parameters:
            s: SimTK::State &
            disabled: bool

        """
        return _opensim.Force_setDisabled(self, *args)

    def getRecordLabels(self):
        """
        getRecordLabels(Force self) -> ArrayStr

        Parameters:
            self: OpenSim::Force const *

        """
        return _opensim.Force_getRecordLabels(self)

    def getRecordValues(self, *args):
        """
        getRecordValues(Force self, State state) -> ArrayDouble

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.Force_getRecordValues(self, *args)

    def hasGeometryPath(self):
        """
        hasGeometryPath(Force self) -> bool

        Parameters:
            self: OpenSim::Force const *

        """
        return _opensim.Force_hasGeometryPath(self)

    __swig_destroy__ = _opensim.delete_Force
    __del__ = lambda self : None;
Force_swigregister = _opensim.Force_swigregister
Force_swigregister(Force)

def Force_safeDownCast(*args):
  """
    Force_safeDownCast(OpenSimObject obj) -> Force

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Force_safeDownCast(*args)

def Force_getClassName():
  """Force_getClassName() -> std::string const &"""
  return _opensim.Force_getClassName()

class SetForces(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Force)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetForces, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetForces, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetForces

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetForces_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetForces self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetForces_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetForces_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetForces self) -> SetForces

        Parameters:
            self: OpenSim::Set< OpenSim::Force > const *

        """
        return _opensim.SetForces_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetForces self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Force > const *

        """
        return _opensim.SetForces_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetForces
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Force)> self) -> SetForces
        __init__(OpenSim::Set<(OpenSim::Force)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetForces

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Force)> self, std::string const & aFileName) -> SetForces

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Force)> self, SetForces aSet) -> SetForces

        Parameters:
            aSet: OpenSim::Set< OpenSim::Force > const &

        """
        this = _opensim.new_SetForces(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetForces self)

        Parameters:
            self: OpenSim::Set< OpenSim::Force > *

        """
        return _opensim.SetForces_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetForces self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetForces_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetForces self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetForces_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetForces self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Force > const *

        """
        return _opensim.SetForces_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetForces self, Force aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Force const *
            aStartIndex: int

        getIndex(SetForces self, Force aObject) -> int

        Parameters:
            aObject: OpenSim::Force const *

        getIndex(SetForces self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetForces self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetForces_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetForces self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetForces_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetForces self, Force aObject) -> bool

        Parameters:
            aObject: OpenSim::Force *

        """
        return _opensim.SetForces_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetForces self, Force aObject) -> bool

        Parameters:
            aObject: OpenSim::Force const &

        """
        return _opensim.SetForces_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetForces self, int aIndex, Force aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Force *

        """
        return _opensim.SetForces_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetForces self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetForces self, Force aObject) -> bool

        Parameters:
            aObject: OpenSim::Force const *

        """
        return _opensim.SetForces_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetForces self)

        Parameters:
            self: OpenSim::Set< OpenSim::Force > *

        """
        return _opensim.SetForces_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetForces self, int aIndex, Force aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Force *
            preserveGroups: bool

        set(SetForces self, int aIndex, Force aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Force *

        """
        return _opensim.SetForces_set(self, *args)

    def get(self, *args):
        """
        get(SetForces self, int aIndex) -> Force

        Parameters:
            aIndex: int

        get(SetForces self, std::string const & aName) -> Force

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetForces_get(self, *args)

    def contains(self, *args):
        """
        contains(SetForces self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetForces_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetForces self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetForces_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetForces self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Force > const *

        """
        return _opensim.SetForces_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetForces self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetForces_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetForces self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetForces_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetForces self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetForces_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetForces self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetForces_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetForces self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetForces_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetForces self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetForces self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetForces_getGroup(self, *args)

SetForces_swigregister = _opensim.SetForces_swigregister
SetForces_swigregister(SetForces)

def SetForces_safeDownCast(*args):
  """
    SetForces_safeDownCast(OpenSimObject obj) -> SetForces

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetForces_safeDownCast(*args)

def SetForces_getClassName():
  """SetForces_getClassName() -> std::string const &"""
  return _opensim.SetForces_getClassName()

class ModelComponentSetForces(SetForces):
    """Proxy of C++ OpenSim::ModelComponentSet<(OpenSim::Force)> class"""
    __swig_setmethods__ = {}
    for _s in [SetForces]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ModelComponentSetForces, name, value)
    __swig_getmethods__ = {}
    for _s in [SetForces]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ModelComponentSetForces, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ModelComponentSetForces

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ModelComponentSetForces_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ModelComponentSetForces self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ModelComponentSetForces_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ModelComponentSetForces_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ModelComponentSetForces self) -> ModelComponentSetForces

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::Force > const *

        """
        return _opensim.ModelComponentSetForces_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ModelComponentSetForces self) -> std::string const &

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::Force > const *

        """
        return _opensim.ModelComponentSetForces_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ModelComponentSet<(OpenSim::Force)> self) -> ModelComponentSetForces
        __init__(OpenSim::ModelComponentSet<(OpenSim::Force)> self, Model model) -> ModelComponentSetForces

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ModelComponentSet<(OpenSim::Force)> self, Model model, std::string const & fileName, bool aUpdateFromXMLNode=True) -> ModelComponentSetForces

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ModelComponentSet<(OpenSim::Force)> self, Model model, std::string const & fileName) -> ModelComponentSetForces

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &

        __init__(OpenSim::ModelComponentSet<(OpenSim::Force)> self, ModelComponentSetForces source) -> ModelComponentSetForces

        Parameters:
            source: OpenSim::ModelComponentSet< OpenSim::Force > const &

        """
        this = _opensim.new_ModelComponentSetForces(*args)
        try: self.this.append(this)
        except: self.this = this
    def insert(self, *args):
        """
        insert(ModelComponentSetForces self, int aIndex, Force aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Force *

        """
        return _opensim.ModelComponentSetForces_insert(self, *args)

    def set(self, *args):
        """
        set(ModelComponentSetForces self, int aIndex, Force aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Force *
            preserveGroups: bool

        set(ModelComponentSetForces self, int aIndex, Force aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Force *

        """
        return _opensim.ModelComponentSetForces_set(self, *args)

    def invokeConnectToModel(self, *args):
        """
        invokeConnectToModel(ModelComponentSetForces self, Model model)

        Parameters:
            model: OpenSim::Model &

        """
        return _opensim.ModelComponentSetForces_invokeConnectToModel(self, *args)

    def invokeAddToSystem(self, *args):
        """
        invokeAddToSystem(ModelComponentSetForces self, SimTK::MultibodySystem & system)

        Parameters:
            system: SimTK::MultibodySystem &

        """
        return _opensim.ModelComponentSetForces_invokeAddToSystem(self, *args)

    def invokeInitStateFromProperties(self, *args):
        """
        invokeInitStateFromProperties(ModelComponentSetForces self, State state)

        Parameters:
            state: SimTK::State &

        """
        return _opensim.ModelComponentSetForces_invokeInitStateFromProperties(self, *args)

    def invokeSetPropertiesFromState(self, *args):
        """
        invokeSetPropertiesFromState(ModelComponentSetForces self, State state)

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ModelComponentSetForces_invokeSetPropertiesFromState(self, *args)

    def invokeGenerateDecorations(self, *args):
        """
        invokeGenerateDecorations(ModelComponentSetForces self, bool fixed, ModelDisplayHints hints, State state, ArrayDecorativeGeometry appendToThis)

        Parameters:
            fixed: bool
            hints: OpenSim::ModelDisplayHints const &
            state: SimTK::State const &
            appendToThis: SimTK::Array_< SimTK::DecorativeGeometry,unsigned int > &

        """
        return _opensim.ModelComponentSetForces_invokeGenerateDecorations(self, *args)

    __swig_destroy__ = _opensim.delete_ModelComponentSetForces
    __del__ = lambda self : None;
ModelComponentSetForces_swigregister = _opensim.ModelComponentSetForces_swigregister
ModelComponentSetForces_swigregister(ModelComponentSetForces)

def ModelComponentSetForces_safeDownCast(*args):
  """
    ModelComponentSetForces_safeDownCast(OpenSimObject obj) -> ModelComponentSetForces

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ModelComponentSetForces_safeDownCast(*args)

def ModelComponentSetForces_getClassName():
  """ModelComponentSetForces_getClassName() -> std::string const &"""
  return _opensim.ModelComponentSetForces_getClassName()

class ForceSet(ModelComponentSetForces):
    """Proxy of C++ OpenSim::ForceSet class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponentSetForces]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ForceSet, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponentSetForces]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ForceSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ForceSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ForceSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ForceSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ForceSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ForceSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ForceSet self) -> ForceSet

        Parameters:
            self: OpenSim::ForceSet const *

        """
        return _opensim.ForceSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ForceSet self) -> std::string const &

        Parameters:
            self: OpenSim::ForceSet const *

        """
        return _opensim.ForceSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ForceSet self) -> ForceSet
        __init__(OpenSim::ForceSet self, Model model) -> ForceSet

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ForceSet self, Model model, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> ForceSet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ForceSet self, Model model, std::string const & aFileName) -> ForceSet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &

        __init__(OpenSim::ForceSet self, ForceSet aForceSet) -> ForceSet

        Parameters:
            aForceSet: OpenSim::ForceSet const &

        """
        this = _opensim.new_ForceSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ForceSet
    __del__ = lambda self : None;
    def invokeConnectToModel(self, *args):
        """
        invokeConnectToModel(ForceSet self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.ForceSet_invokeConnectToModel(self, *args)

    def remove(self, *args):
        """
        remove(ForceSet self, int aIndex) -> bool

        Parameters:
            aIndex: int

        """
        return _opensim.ForceSet_remove(self, *args)

    def appendNative(self, *args):
        """
        appendNative(ForceSet self, Force aForce) -> bool

        Parameters:
            aForce: OpenSim::Force *

        """
        return _opensim.ForceSet_appendNative(self, *args)

    def append(self, *args):
        """
        append(ForceSet self, ForceSet aForceSet, bool aAllowDuplicateNames=False) -> bool

        Parameters:
            aForceSet: OpenSim::ForceSet &
            aAllowDuplicateNames: bool

        append(ForceSet self, ForceSet aForceSet) -> bool

        Parameters:
            aForceSet: OpenSim::ForceSet &

        """
        return _opensim.ForceSet_append(self, *args)

    def set(self, *args):
        """
        set(ForceSet self, int aIndex, Force aForce) -> bool

        Parameters:
            aIndex: int
            aForce: OpenSim::Force *

        """
        return _opensim.ForceSet_set(self, *args)

    def insert(self, *args):
        """
        insert(ForceSet self, int aIndex, Force aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Force *

        """
        return _opensim.ForceSet_insert(self, *args)

    def getActuators(self):
        """
        getActuators(ForceSet self) -> SetActuators

        Parameters:
            self: OpenSim::ForceSet const *

        """
        return _opensim.ForceSet_getActuators(self)

    def updActuators(self):
        """
        updActuators(ForceSet self) -> SetActuators

        Parameters:
            self: OpenSim::ForceSet *

        """
        return _opensim.ForceSet_updActuators(self)

    def getMuscles(self):
        """
        getMuscles(ForceSet self) -> SetMuscles

        Parameters:
            self: OpenSim::ForceSet const *

        """
        return _opensim.ForceSet_getMuscles(self)

    def updMuscles(self):
        """
        updMuscles(ForceSet self) -> SetMuscles

        Parameters:
            self: OpenSim::ForceSet *

        """
        return _opensim.ForceSet_updMuscles(self)

    def getStateVariableNames(self, *args):
        """
        getStateVariableNames(ForceSet self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.ForceSet_getStateVariableNames(self, *args)

    def check(self):
        """
        check(ForceSet self) -> bool

        Parameters:
            self: OpenSim::ForceSet const *

        """
        return _opensim.ForceSet_check(self)

    def adoptAndAppend(self, aForce):
        aForce._markAdopted()
        return super(ForceSet, self).adoptAndAppend(aForce)

    def append(self, aForce):
        aForce._markAdopted()
        return self.appendNative(aForce)

ForceSet_swigregister = _opensim.ForceSet_swigregister
ForceSet_swigregister(ForceSet)

def ForceSet_safeDownCast(*args):
  """
    ForceSet_safeDownCast(OpenSimObject obj) -> ForceSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ForceSet_safeDownCast(*args)

def ForceSet_getClassName():
  """ForceSet_getClassName() -> std::string const &"""
  return _opensim.ForceSet_getClassName()

class ExternalForce(Force):
    """Proxy of C++ OpenSim::ExternalForce class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ExternalForce, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ExternalForce, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ExternalForce

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ExternalForce_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ExternalForce self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ExternalForce_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ExternalForce_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ExternalForce self) -> ExternalForce

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_getConcreteClassName(self)

    def copyProperty_applied_to_body(self, *args):
        """
        copyProperty_applied_to_body(ExternalForce self, ExternalForce source)

        Parameters:
            source: OpenSim::ExternalForce::Self const &

        """
        return _opensim.ExternalForce_copyProperty_applied_to_body(self, *args)

    def append_applied_to_body(self, *args):
        """
        append_applied_to_body(ExternalForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExternalForce_append_applied_to_body(self, *args)

    def constructProperty_applied_to_body(self, *args):
        """
        constructProperty_applied_to_body(ExternalForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExternalForce_constructProperty_applied_to_body(self, *args)

    def get_applied_to_body(self, *args):
        """
        get_applied_to_body(ExternalForce self, int i) -> std::string const

        Parameters:
            i: int

        get_applied_to_body(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_get_applied_to_body(self, *args)

    def upd_applied_to_body(self, *args):
        """
        upd_applied_to_body(ExternalForce self, int i) -> std::string

        Parameters:
            i: int

        upd_applied_to_body(ExternalForce self) -> std::string &

        Parameters:
            self: OpenSim::ExternalForce *

        """
        return _opensim.ExternalForce_upd_applied_to_body(self, *args)

    def set_applied_to_body(self, *args):
        """
        set_applied_to_body(ExternalForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_applied_to_body(ExternalForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExternalForce_set_applied_to_body(self, *args)

    def copyProperty_force_expressed_in_body(self, *args):
        """
        copyProperty_force_expressed_in_body(ExternalForce self, ExternalForce source)

        Parameters:
            source: OpenSim::ExternalForce::Self const &

        """
        return _opensim.ExternalForce_copyProperty_force_expressed_in_body(self, *args)

    def append_force_expressed_in_body(self, *args):
        """
        append_force_expressed_in_body(ExternalForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExternalForce_append_force_expressed_in_body(self, *args)

    def constructProperty_force_expressed_in_body(self, *args):
        """
        constructProperty_force_expressed_in_body(ExternalForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExternalForce_constructProperty_force_expressed_in_body(self, *args)

    def get_force_expressed_in_body(self, *args):
        """
        get_force_expressed_in_body(ExternalForce self, int i) -> std::string const

        Parameters:
            i: int

        get_force_expressed_in_body(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_get_force_expressed_in_body(self, *args)

    def upd_force_expressed_in_body(self, *args):
        """
        upd_force_expressed_in_body(ExternalForce self, int i) -> std::string

        Parameters:
            i: int

        upd_force_expressed_in_body(ExternalForce self) -> std::string &

        Parameters:
            self: OpenSim::ExternalForce *

        """
        return _opensim.ExternalForce_upd_force_expressed_in_body(self, *args)

    def set_force_expressed_in_body(self, *args):
        """
        set_force_expressed_in_body(ExternalForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_force_expressed_in_body(ExternalForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExternalForce_set_force_expressed_in_body(self, *args)

    def copyProperty_point_expressed_in_body(self, *args):
        """
        copyProperty_point_expressed_in_body(ExternalForce self, ExternalForce source)

        Parameters:
            source: OpenSim::ExternalForce::Self const &

        """
        return _opensim.ExternalForce_copyProperty_point_expressed_in_body(self, *args)

    def append_point_expressed_in_body(self, *args):
        """
        append_point_expressed_in_body(ExternalForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExternalForce_append_point_expressed_in_body(self, *args)

    def constructProperty_point_expressed_in_body(self, *args):
        """
        constructProperty_point_expressed_in_body(ExternalForce self)
        constructProperty_point_expressed_in_body(ExternalForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExternalForce_constructProperty_point_expressed_in_body(self, *args)

    def get_point_expressed_in_body(self, *args):
        """
        get_point_expressed_in_body(ExternalForce self, int i) -> std::string const

        Parameters:
            i: int

        get_point_expressed_in_body(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_get_point_expressed_in_body(self, *args)

    def upd_point_expressed_in_body(self, *args):
        """
        upd_point_expressed_in_body(ExternalForce self, int i) -> std::string

        Parameters:
            i: int

        upd_point_expressed_in_body(ExternalForce self) -> std::string &

        Parameters:
            self: OpenSim::ExternalForce *

        """
        return _opensim.ExternalForce_upd_point_expressed_in_body(self, *args)

    def set_point_expressed_in_body(self, *args):
        """
        set_point_expressed_in_body(ExternalForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_point_expressed_in_body(ExternalForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExternalForce_set_point_expressed_in_body(self, *args)

    def copyProperty_force_identifier(self, *args):
        """
        copyProperty_force_identifier(ExternalForce self, ExternalForce source)

        Parameters:
            source: OpenSim::ExternalForce::Self const &

        """
        return _opensim.ExternalForce_copyProperty_force_identifier(self, *args)

    def append_force_identifier(self, *args):
        """
        append_force_identifier(ExternalForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExternalForce_append_force_identifier(self, *args)

    def constructProperty_force_identifier(self, *args):
        """
        constructProperty_force_identifier(ExternalForce self)
        constructProperty_force_identifier(ExternalForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExternalForce_constructProperty_force_identifier(self, *args)

    def get_force_identifier(self, *args):
        """
        get_force_identifier(ExternalForce self, int i) -> std::string const

        Parameters:
            i: int

        get_force_identifier(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_get_force_identifier(self, *args)

    def upd_force_identifier(self, *args):
        """
        upd_force_identifier(ExternalForce self, int i) -> std::string

        Parameters:
            i: int

        upd_force_identifier(ExternalForce self) -> std::string &

        Parameters:
            self: OpenSim::ExternalForce *

        """
        return _opensim.ExternalForce_upd_force_identifier(self, *args)

    def set_force_identifier(self, *args):
        """
        set_force_identifier(ExternalForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_force_identifier(ExternalForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExternalForce_set_force_identifier(self, *args)

    def copyProperty_point_identifier(self, *args):
        """
        copyProperty_point_identifier(ExternalForce self, ExternalForce source)

        Parameters:
            source: OpenSim::ExternalForce::Self const &

        """
        return _opensim.ExternalForce_copyProperty_point_identifier(self, *args)

    def append_point_identifier(self, *args):
        """
        append_point_identifier(ExternalForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExternalForce_append_point_identifier(self, *args)

    def constructProperty_point_identifier(self, *args):
        """
        constructProperty_point_identifier(ExternalForce self)
        constructProperty_point_identifier(ExternalForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExternalForce_constructProperty_point_identifier(self, *args)

    def get_point_identifier(self, *args):
        """
        get_point_identifier(ExternalForce self, int i) -> std::string const

        Parameters:
            i: int

        get_point_identifier(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_get_point_identifier(self, *args)

    def upd_point_identifier(self, *args):
        """
        upd_point_identifier(ExternalForce self, int i) -> std::string

        Parameters:
            i: int

        upd_point_identifier(ExternalForce self) -> std::string &

        Parameters:
            self: OpenSim::ExternalForce *

        """
        return _opensim.ExternalForce_upd_point_identifier(self, *args)

    def set_point_identifier(self, *args):
        """
        set_point_identifier(ExternalForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_point_identifier(ExternalForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExternalForce_set_point_identifier(self, *args)

    def copyProperty_torque_identifier(self, *args):
        """
        copyProperty_torque_identifier(ExternalForce self, ExternalForce source)

        Parameters:
            source: OpenSim::ExternalForce::Self const &

        """
        return _opensim.ExternalForce_copyProperty_torque_identifier(self, *args)

    def append_torque_identifier(self, *args):
        """
        append_torque_identifier(ExternalForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExternalForce_append_torque_identifier(self, *args)

    def constructProperty_torque_identifier(self, *args):
        """
        constructProperty_torque_identifier(ExternalForce self)
        constructProperty_torque_identifier(ExternalForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExternalForce_constructProperty_torque_identifier(self, *args)

    def get_torque_identifier(self, *args):
        """
        get_torque_identifier(ExternalForce self, int i) -> std::string const

        Parameters:
            i: int

        get_torque_identifier(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_get_torque_identifier(self, *args)

    def upd_torque_identifier(self, *args):
        """
        upd_torque_identifier(ExternalForce self, int i) -> std::string

        Parameters:
            i: int

        upd_torque_identifier(ExternalForce self) -> std::string &

        Parameters:
            self: OpenSim::ExternalForce *

        """
        return _opensim.ExternalForce_upd_torque_identifier(self, *args)

    def set_torque_identifier(self, *args):
        """
        set_torque_identifier(ExternalForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_torque_identifier(ExternalForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExternalForce_set_torque_identifier(self, *args)

    def copyProperty_data_source_name(self, *args):
        """
        copyProperty_data_source_name(ExternalForce self, ExternalForce source)

        Parameters:
            source: OpenSim::ExternalForce::Self const &

        """
        return _opensim.ExternalForce_copyProperty_data_source_name(self, *args)

    def append_data_source_name(self, *args):
        """
        append_data_source_name(ExternalForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExternalForce_append_data_source_name(self, *args)

    def constructProperty_data_source_name(self, *args):
        """
        constructProperty_data_source_name(ExternalForce self)
        constructProperty_data_source_name(ExternalForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExternalForce_constructProperty_data_source_name(self, *args)

    def get_data_source_name(self, *args):
        """
        get_data_source_name(ExternalForce self, int i) -> std::string const

        Parameters:
            i: int

        get_data_source_name(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_get_data_source_name(self, *args)

    def upd_data_source_name(self, *args):
        """
        upd_data_source_name(ExternalForce self, int i) -> std::string

        Parameters:
            i: int

        upd_data_source_name(ExternalForce self) -> std::string &

        Parameters:
            self: OpenSim::ExternalForce *

        """
        return _opensim.ExternalForce_upd_data_source_name(self, *args)

    def set_data_source_name(self, *args):
        """
        set_data_source_name(ExternalForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_data_source_name(ExternalForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExternalForce_set_data_source_name(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ExternalForce self) -> ExternalForce
        __init__(OpenSim::ExternalForce self, Storage dataSource, std::string const & forceIdentifier="force", std::string const & pointIdentifier="point", 
            std::string const & torqueIdentifier="torque", 
            std::string const & appliedToBodyName="", std::string const & forceExpressedInBodyName="ground", 
            std::string const & pointExpressedInBodyName="ground") -> ExternalForce

        Parameters:
            dataSource: OpenSim::Storage const &
            forceIdentifier: std::string const &
            pointIdentifier: std::string const &
            torqueIdentifier: std::string const &
            appliedToBodyName: std::string const &
            forceExpressedInBodyName: std::string const &
            pointExpressedInBodyName: std::string const &

        __init__(OpenSim::ExternalForce self, Storage dataSource, std::string const & forceIdentifier="force", std::string const & pointIdentifier="point", 
            std::string const & torqueIdentifier="torque", 
            std::string const & appliedToBodyName="", std::string const & forceExpressedInBodyName="ground") -> ExternalForce

        Parameters:
            dataSource: OpenSim::Storage const &
            forceIdentifier: std::string const &
            pointIdentifier: std::string const &
            torqueIdentifier: std::string const &
            appliedToBodyName: std::string const &
            forceExpressedInBodyName: std::string const &

        __init__(OpenSim::ExternalForce self, Storage dataSource, std::string const & forceIdentifier="force", std::string const & pointIdentifier="point", 
            std::string const & torqueIdentifier="torque", 
            std::string const & appliedToBodyName="") -> ExternalForce

        Parameters:
            dataSource: OpenSim::Storage const &
            forceIdentifier: std::string const &
            pointIdentifier: std::string const &
            torqueIdentifier: std::string const &
            appliedToBodyName: std::string const &

        __init__(OpenSim::ExternalForce self, Storage dataSource, std::string const & forceIdentifier="force", std::string const & pointIdentifier="point", 
            std::string const & torqueIdentifier="torque") -> ExternalForce

        Parameters:
            dataSource: OpenSim::Storage const &
            forceIdentifier: std::string const &
            pointIdentifier: std::string const &
            torqueIdentifier: std::string const &

        __init__(OpenSim::ExternalForce self, Storage dataSource, std::string const & forceIdentifier="force", std::string const & pointIdentifier="point") -> ExternalForce

        Parameters:
            dataSource: OpenSim::Storage const &
            forceIdentifier: std::string const &
            pointIdentifier: std::string const &

        __init__(OpenSim::ExternalForce self, Storage dataSource, std::string const & forceIdentifier="force") -> ExternalForce

        Parameters:
            dataSource: OpenSim::Storage const &
            forceIdentifier: std::string const &

        __init__(OpenSim::ExternalForce self, Storage dataSource) -> ExternalForce

        Parameters:
            dataSource: OpenSim::Storage const &

        __init__(OpenSim::ExternalForce self, SimTK::Xml::Element & aNode) -> ExternalForce

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        this = _opensim.new_ExternalForce(*args)
        try: self.this.append(this)
        except: self.this = this
    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(ExternalForce self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(ExternalForce self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.ExternalForce_updateFromXMLNode(self, *args)

    def setDataSource(self, *args):
        """
        setDataSource(ExternalForce self, Storage dataSource)

        Parameters:
            dataSource: OpenSim::Storage const &

        """
        return _opensim.ExternalForce_setDataSource(self, *args)

    def getDataSourceName(self):
        """
        getDataSourceName(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_getDataSourceName(self)

    def setAppliedToBodyName(self, *args):
        """
        setAppliedToBodyName(ExternalForce self, std::string const & applyToName)

        Parameters:
            applyToName: std::string const &

        """
        return _opensim.ExternalForce_setAppliedToBodyName(self, *args)

    def getAppliedToBodyName(self):
        """
        getAppliedToBodyName(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_getAppliedToBodyName(self)

    def setPointExpressedInBodyName(self, *args):
        """
        setPointExpressedInBodyName(ExternalForce self, std::string const & pointInBodyName)

        Parameters:
            pointInBodyName: std::string const &

        """
        return _opensim.ExternalForce_setPointExpressedInBodyName(self, *args)

    def getPointExpressedInBodyName(self):
        """
        getPointExpressedInBodyName(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_getPointExpressedInBodyName(self)

    def setForceExpressedInBodyName(self, *args):
        """
        setForceExpressedInBodyName(ExternalForce self, std::string const & forceInBodyName)

        Parameters:
            forceInBodyName: std::string const &

        """
        return _opensim.ExternalForce_setForceExpressedInBodyName(self, *args)

    def getForceExpressedInBodyName(self):
        """
        getForceExpressedInBodyName(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_getForceExpressedInBodyName(self)

    def setForceIdentifier(self, *args):
        """
        setForceIdentifier(ExternalForce self, std::string const aForceIdentifier)

        Parameters:
            aForceIdentifier: std::string const

        """
        return _opensim.ExternalForce_setForceIdentifier(self, *args)

    def setPointIdentifier(self, *args):
        """
        setPointIdentifier(ExternalForce self, std::string const aPointIdentifier)

        Parameters:
            aPointIdentifier: std::string const

        """
        return _opensim.ExternalForce_setPointIdentifier(self, *args)

    def setTorqueIdentifier(self, *args):
        """
        setTorqueIdentifier(ExternalForce self, std::string const aTorqueIdentifier)

        Parameters:
            aTorqueIdentifier: std::string const

        """
        return _opensim.ExternalForce_setTorqueIdentifier(self, *args)

    def getForceIdentifier(self):
        """
        getForceIdentifier(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_getForceIdentifier(self)

    def getPointIdentifier(self):
        """
        getPointIdentifier(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_getPointIdentifier(self)

    def getTorqueIdentifier(self):
        """
        getTorqueIdentifier(ExternalForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_getTorqueIdentifier(self)

    def getForceAtTime(self, *args):
        """
        getForceAtTime(ExternalForce self, double aTime) -> Vec3

        Parameters:
            aTime: double

        """
        return _opensim.ExternalForce_getForceAtTime(self, *args)

    def getPointAtTime(self, *args):
        """
        getPointAtTime(ExternalForce self, double aTime) -> Vec3

        Parameters:
            aTime: double

        """
        return _opensim.ExternalForce_getPointAtTime(self, *args)

    def getTorqueAtTime(self, *args):
        """
        getTorqueAtTime(ExternalForce self, double aTime) -> Vec3

        Parameters:
            aTime: double

        """
        return _opensim.ExternalForce_getTorqueAtTime(self, *args)

    def getRecordLabels(self):
        """
        getRecordLabels(ExternalForce self) -> ArrayStr

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_getRecordLabels(self)

    def getRecordValues(self, *args):
        """
        getRecordValues(ExternalForce self, State state) -> ArrayDouble

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ExternalForce_getRecordValues(self, *args)

    def appliesForce(self):
        """
        appliesForce(ExternalForce self) -> bool

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_appliesForce(self)

    def specifiesPoint(self):
        """
        specifiesPoint(ExternalForce self) -> bool

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_specifiesPoint(self)

    def appliesTorque(self):
        """
        appliesTorque(ExternalForce self) -> bool

        Parameters:
            self: OpenSim::ExternalForce const *

        """
        return _opensim.ExternalForce_appliesTorque(self)

    __swig_destroy__ = _opensim.delete_ExternalForce
    __del__ = lambda self : None;
ExternalForce_swigregister = _opensim.ExternalForce_swigregister
ExternalForce_swigregister(ExternalForce)

def ExternalForce_safeDownCast(*args):
  """
    ExternalForce_safeDownCast(OpenSimObject obj) -> ExternalForce

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ExternalForce_safeDownCast(*args)

def ExternalForce_getClassName():
  """ExternalForce_getClassName() -> std::string const &"""
  return _opensim.ExternalForce_getClassName()

class SetExternalForces(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::ExternalForce)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetExternalForces, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetExternalForces, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetExternalForces

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetExternalForces_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetExternalForces self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetExternalForces_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetExternalForces_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetExternalForces self) -> SetExternalForces

        Parameters:
            self: OpenSim::Set< OpenSim::ExternalForce > const *

        """
        return _opensim.SetExternalForces_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetExternalForces self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::ExternalForce > const *

        """
        return _opensim.SetExternalForces_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetExternalForces
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::ExternalForce)> self) -> SetExternalForces
        __init__(OpenSim::Set<(OpenSim::ExternalForce)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetExternalForces

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::ExternalForce)> self, std::string const & aFileName) -> SetExternalForces

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::ExternalForce)> self, SetExternalForces aSet) -> SetExternalForces

        Parameters:
            aSet: OpenSim::Set< OpenSim::ExternalForce > const &

        """
        this = _opensim.new_SetExternalForces(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetExternalForces self)

        Parameters:
            self: OpenSim::Set< OpenSim::ExternalForce > *

        """
        return _opensim.SetExternalForces_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetExternalForces self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetExternalForces_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetExternalForces self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetExternalForces_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetExternalForces self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::ExternalForce > const *

        """
        return _opensim.SetExternalForces_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetExternalForces self, ExternalForce aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::ExternalForce const *
            aStartIndex: int

        getIndex(SetExternalForces self, ExternalForce aObject) -> int

        Parameters:
            aObject: OpenSim::ExternalForce const *

        getIndex(SetExternalForces self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetExternalForces self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetExternalForces_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetExternalForces self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetExternalForces_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetExternalForces self, ExternalForce aObject) -> bool

        Parameters:
            aObject: OpenSim::ExternalForce *

        """
        return _opensim.SetExternalForces_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetExternalForces self, ExternalForce aObject) -> bool

        Parameters:
            aObject: OpenSim::ExternalForce const &

        """
        return _opensim.SetExternalForces_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetExternalForces self, int aIndex, ExternalForce aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ExternalForce *

        """
        return _opensim.SetExternalForces_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetExternalForces self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetExternalForces self, ExternalForce aObject) -> bool

        Parameters:
            aObject: OpenSim::ExternalForce const *

        """
        return _opensim.SetExternalForces_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetExternalForces self)

        Parameters:
            self: OpenSim::Set< OpenSim::ExternalForce > *

        """
        return _opensim.SetExternalForces_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetExternalForces self, int aIndex, ExternalForce aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ExternalForce *
            preserveGroups: bool

        set(SetExternalForces self, int aIndex, ExternalForce aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ExternalForce *

        """
        return _opensim.SetExternalForces_set(self, *args)

    def get(self, *args):
        """
        get(SetExternalForces self, int aIndex) -> ExternalForce

        Parameters:
            aIndex: int

        get(SetExternalForces self, std::string const & aName) -> ExternalForce

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetExternalForces_get(self, *args)

    def contains(self, *args):
        """
        contains(SetExternalForces self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetExternalForces_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetExternalForces self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetExternalForces_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetExternalForces self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::ExternalForce > const *

        """
        return _opensim.SetExternalForces_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetExternalForces self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetExternalForces_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetExternalForces self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetExternalForces_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetExternalForces self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetExternalForces_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetExternalForces self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetExternalForces_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetExternalForces self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetExternalForces_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetExternalForces self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetExternalForces self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetExternalForces_getGroup(self, *args)

SetExternalForces_swigregister = _opensim.SetExternalForces_swigregister
SetExternalForces_swigregister(SetExternalForces)

def SetExternalForces_safeDownCast(*args):
  """
    SetExternalForces_safeDownCast(OpenSimObject obj) -> SetExternalForces

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetExternalForces_safeDownCast(*args)

def SetExternalForces_getClassName():
  """SetExternalForces_getClassName() -> std::string const &"""
  return _opensim.SetExternalForces_getClassName()

class Controller(ModelComponent):
    """Proxy of C++ OpenSim::Controller class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponent]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Controller, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponent]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Controller, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Controller

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Controller_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Controller self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Controller_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Controller_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Controller self) -> Controller

        Parameters:
            self: OpenSim::Controller const *

        """
        return _opensim.Controller_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Controller self) -> std::string const &

        Parameters:
            self: OpenSim::Controller const *

        """
        return _opensim.Controller_getConcreteClassName(self)

    def copyProperty_isDisabled(self, *args):
        """
        copyProperty_isDisabled(Controller self, Controller source)

        Parameters:
            source: OpenSim::Controller::Self const &

        """
        return _opensim.Controller_copyProperty_isDisabled(self, *args)

    def append_isDisabled(self, *args):
        """
        append_isDisabled(Controller self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Controller_append_isDisabled(self, *args)

    def constructProperty_isDisabled(self, *args):
        """
        constructProperty_isDisabled(Controller self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Controller_constructProperty_isDisabled(self, *args)

    def get_isDisabled(self, *args):
        """
        get_isDisabled(Controller self, int i) -> bool const

        Parameters:
            i: int

        get_isDisabled(Controller self) -> bool const &

        Parameters:
            self: OpenSim::Controller const *

        """
        return _opensim.Controller_get_isDisabled(self, *args)

    def upd_isDisabled(self, *args):
        """
        upd_isDisabled(Controller self, int i) -> bool

        Parameters:
            i: int

        upd_isDisabled(Controller self) -> bool &

        Parameters:
            self: OpenSim::Controller *

        """
        return _opensim.Controller_upd_isDisabled(self, *args)

    def set_isDisabled(self, *args):
        """
        set_isDisabled(Controller self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_isDisabled(Controller self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Controller_set_isDisabled(self, *args)

    def copyProperty_actuator_list(self, *args):
        """
        copyProperty_actuator_list(Controller self, Controller source)

        Parameters:
            source: OpenSim::Controller::Self const &

        """
        return _opensim.Controller_copyProperty_actuator_list(self, *args)

    def get_actuator_list(self, *args):
        """
        get_actuator_list(Controller self, int i) -> std::string const &

        Parameters:
            i: int

        """
        return _opensim.Controller_get_actuator_list(self, *args)

    def upd_actuator_list(self, *args):
        """
        upd_actuator_list(Controller self, int i) -> std::string &

        Parameters:
            i: int

        """
        return _opensim.Controller_upd_actuator_list(self, *args)

    def set_actuator_list(self, *args):
        """
        set_actuator_list(Controller self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        """
        return _opensim.Controller_set_actuator_list(self, *args)

    def append_actuator_list(self, *args):
        """
        append_actuator_list(Controller self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.Controller_append_actuator_list(self, *args)

    def constructProperty_actuator_list(self):
        """
        constructProperty_actuator_list(Controller self)

        Parameters:
            self: OpenSim::Controller *

        """
        return _opensim.Controller_constructProperty_actuator_list(self)

    def isDisabled(self):
        """
        isDisabled(Controller self) -> bool

        Parameters:
            self: OpenSim::Controller const *

        """
        return _opensim.Controller_isDisabled(self)

    def setDisabled(self, *args):
        """
        setDisabled(Controller self, bool disableFlag)

        Parameters:
            disableFlag: bool

        """
        return _opensim.Controller_setDisabled(self, *args)

    def setActuators(self, *args):
        """
        setActuators(Controller self, SetActuators actuators)

        Parameters:
            actuators: OpenSim::Set< OpenSim::Actuator > const &

        """
        return _opensim.Controller_setActuators(self, *args)

    def addActuator(self, *args):
        """
        addActuator(Controller self, Actuator actuator)

        Parameters:
            actuator: OpenSim::Actuator const &

        """
        return _opensim.Controller_addActuator(self, *args)

    def getActuatorSet(self):
        """
        getActuatorSet(Controller self) -> SetActuators

        Parameters:
            self: OpenSim::Controller const *

        """
        return _opensim.Controller_getActuatorSet(self)

    def updActuators(self):
        """
        updActuators(Controller self) -> SetActuators

        Parameters:
            self: OpenSim::Controller *

        """
        return _opensim.Controller_updActuators(self)

    def computeControls(self, *args):
        """
        computeControls(Controller self, State s, Vector controls)

        Parameters:
            s: SimTK::State const &
            controls: SimTK::Vector &

        """
        return _opensim.Controller_computeControls(self, *args)

    def getNumControls(self):
        """
        getNumControls(Controller self) -> int

        Parameters:
            self: OpenSim::Controller const *

        """
        return _opensim.Controller_getNumControls(self)

    __swig_destroy__ = _opensim.delete_Controller
    __del__ = lambda self : None;
Controller_swigregister = _opensim.Controller_swigregister
Controller_swigregister(Controller)

def Controller_safeDownCast(*args):
  """
    Controller_safeDownCast(OpenSimObject obj) -> Controller

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Controller_safeDownCast(*args)

def Controller_getClassName():
  """Controller_getClassName() -> std::string const &"""
  return _opensim.Controller_getClassName()

class SetControllers(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Controller)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetControllers, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetControllers, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetControllers

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetControllers_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetControllers self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetControllers_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetControllers_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetControllers self) -> SetControllers

        Parameters:
            self: OpenSim::Set< OpenSim::Controller > const *

        """
        return _opensim.SetControllers_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetControllers self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Controller > const *

        """
        return _opensim.SetControllers_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetControllers
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Controller)> self) -> SetControllers
        __init__(OpenSim::Set<(OpenSim::Controller)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetControllers

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Controller)> self, std::string const & aFileName) -> SetControllers

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Controller)> self, SetControllers aSet) -> SetControllers

        Parameters:
            aSet: OpenSim::Set< OpenSim::Controller > const &

        """
        this = _opensim.new_SetControllers(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetControllers self)

        Parameters:
            self: OpenSim::Set< OpenSim::Controller > *

        """
        return _opensim.SetControllers_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetControllers self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetControllers_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetControllers self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetControllers_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetControllers self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Controller > const *

        """
        return _opensim.SetControllers_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetControllers self, Controller aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Controller const *
            aStartIndex: int

        getIndex(SetControllers self, Controller aObject) -> int

        Parameters:
            aObject: OpenSim::Controller const *

        getIndex(SetControllers self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetControllers self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetControllers_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetControllers self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetControllers_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetControllers self, Controller aObject) -> bool

        Parameters:
            aObject: OpenSim::Controller *

        """
        return _opensim.SetControllers_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetControllers self, Controller aObject) -> bool

        Parameters:
            aObject: OpenSim::Controller const &

        """
        return _opensim.SetControllers_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetControllers self, int aIndex, Controller aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Controller *

        """
        return _opensim.SetControllers_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetControllers self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetControllers self, Controller aObject) -> bool

        Parameters:
            aObject: OpenSim::Controller const *

        """
        return _opensim.SetControllers_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetControllers self)

        Parameters:
            self: OpenSim::Set< OpenSim::Controller > *

        """
        return _opensim.SetControllers_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetControllers self, int aIndex, Controller aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Controller *
            preserveGroups: bool

        set(SetControllers self, int aIndex, Controller aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Controller *

        """
        return _opensim.SetControllers_set(self, *args)

    def get(self, *args):
        """
        get(SetControllers self, int aIndex) -> Controller

        Parameters:
            aIndex: int

        get(SetControllers self, std::string const & aName) -> Controller

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetControllers_get(self, *args)

    def contains(self, *args):
        """
        contains(SetControllers self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetControllers_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetControllers self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetControllers_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetControllers self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Controller > const *

        """
        return _opensim.SetControllers_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetControllers self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetControllers_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetControllers self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetControllers_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetControllers self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetControllers_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetControllers self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetControllers_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetControllers self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetControllers_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetControllers self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetControllers self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetControllers_getGroup(self, *args)

SetControllers_swigregister = _opensim.SetControllers_swigregister
SetControllers_swigregister(SetControllers)

def SetControllers_safeDownCast(*args):
  """
    SetControllers_safeDownCast(OpenSimObject obj) -> SetControllers

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetControllers_safeDownCast(*args)

def SetControllers_getClassName():
  """SetControllers_getClassName() -> std::string const &"""
  return _opensim.SetControllers_getClassName()

class ModelComponentSetControllers(SetControllers):
    """Proxy of C++ OpenSim::ModelComponentSet<(OpenSim::Controller)> class"""
    __swig_setmethods__ = {}
    for _s in [SetControllers]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ModelComponentSetControllers, name, value)
    __swig_getmethods__ = {}
    for _s in [SetControllers]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ModelComponentSetControllers, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ModelComponentSetControllers

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ModelComponentSetControllers_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ModelComponentSetControllers self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ModelComponentSetControllers_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ModelComponentSetControllers_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ModelComponentSetControllers self) -> ModelComponentSetControllers

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::Controller > const *

        """
        return _opensim.ModelComponentSetControllers_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ModelComponentSetControllers self) -> std::string const &

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::Controller > const *

        """
        return _opensim.ModelComponentSetControllers_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ModelComponentSet<(OpenSim::Controller)> self) -> ModelComponentSetControllers
        __init__(OpenSim::ModelComponentSet<(OpenSim::Controller)> self, Model model) -> ModelComponentSetControllers

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ModelComponentSet<(OpenSim::Controller)> self, Model model, std::string const & fileName, bool aUpdateFromXMLNode=True) -> ModelComponentSetControllers

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ModelComponentSet<(OpenSim::Controller)> self, Model model, std::string const & fileName) -> ModelComponentSetControllers

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &

        __init__(OpenSim::ModelComponentSet<(OpenSim::Controller)> self, ModelComponentSetControllers source) -> ModelComponentSetControllers

        Parameters:
            source: OpenSim::ModelComponentSet< OpenSim::Controller > const &

        """
        this = _opensim.new_ModelComponentSetControllers(*args)
        try: self.this.append(this)
        except: self.this = this
    def insert(self, *args):
        """
        insert(ModelComponentSetControllers self, int aIndex, Controller aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Controller *

        """
        return _opensim.ModelComponentSetControllers_insert(self, *args)

    def set(self, *args):
        """
        set(ModelComponentSetControllers self, int aIndex, Controller aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Controller *
            preserveGroups: bool

        set(ModelComponentSetControllers self, int aIndex, Controller aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Controller *

        """
        return _opensim.ModelComponentSetControllers_set(self, *args)

    def invokeConnectToModel(self, *args):
        """
        invokeConnectToModel(ModelComponentSetControllers self, Model model)

        Parameters:
            model: OpenSim::Model &

        """
        return _opensim.ModelComponentSetControllers_invokeConnectToModel(self, *args)

    def invokeAddToSystem(self, *args):
        """
        invokeAddToSystem(ModelComponentSetControllers self, SimTK::MultibodySystem & system)

        Parameters:
            system: SimTK::MultibodySystem &

        """
        return _opensim.ModelComponentSetControllers_invokeAddToSystem(self, *args)

    def invokeInitStateFromProperties(self, *args):
        """
        invokeInitStateFromProperties(ModelComponentSetControllers self, State state)

        Parameters:
            state: SimTK::State &

        """
        return _opensim.ModelComponentSetControllers_invokeInitStateFromProperties(self, *args)

    def invokeSetPropertiesFromState(self, *args):
        """
        invokeSetPropertiesFromState(ModelComponentSetControllers self, State state)

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ModelComponentSetControllers_invokeSetPropertiesFromState(self, *args)

    def invokeGenerateDecorations(self, *args):
        """
        invokeGenerateDecorations(ModelComponentSetControllers self, bool fixed, ModelDisplayHints hints, State state, ArrayDecorativeGeometry appendToThis)

        Parameters:
            fixed: bool
            hints: OpenSim::ModelDisplayHints const &
            state: SimTK::State const &
            appendToThis: SimTK::Array_< SimTK::DecorativeGeometry,unsigned int > &

        """
        return _opensim.ModelComponentSetControllers_invokeGenerateDecorations(self, *args)

    __swig_destroy__ = _opensim.delete_ModelComponentSetControllers
    __del__ = lambda self : None;
ModelComponentSetControllers_swigregister = _opensim.ModelComponentSetControllers_swigregister
ModelComponentSetControllers_swigregister(ModelComponentSetControllers)

def ModelComponentSetControllers_safeDownCast(*args):
  """
    ModelComponentSetControllers_safeDownCast(OpenSimObject obj) -> ModelComponentSetControllers

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ModelComponentSetControllers_safeDownCast(*args)

def ModelComponentSetControllers_getClassName():
  """ModelComponentSetControllers_getClassName() -> std::string const &"""
  return _opensim.ModelComponentSetControllers_getClassName()

class ControllerSet(ModelComponentSetControllers):
    """Proxy of C++ OpenSim::ControllerSet class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponentSetControllers]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ControllerSet, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponentSetControllers]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ControllerSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ControllerSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ControllerSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ControllerSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ControllerSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ControllerSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ControllerSet self) -> ControllerSet

        Parameters:
            self: OpenSim::ControllerSet const *

        """
        return _opensim.ControllerSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ControllerSet self) -> std::string const &

        Parameters:
            self: OpenSim::ControllerSet const *

        """
        return _opensim.ControllerSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ControllerSet self) -> ControllerSet
        __init__(OpenSim::ControllerSet self, Model model) -> ControllerSet

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ControllerSet self, ControllerSet aControllerSet) -> ControllerSet

        Parameters:
            aControllerSet: OpenSim::ControllerSet const &

        __init__(OpenSim::ControllerSet self, Model model, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> ControllerSet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ControllerSet self, Model model, std::string const & aFileName) -> ControllerSet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &

        """
        this = _opensim.new_ControllerSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ControllerSet
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(ControllerSet self, ControllerSet aAbsControllerSet)

        Parameters:
            aAbsControllerSet: OpenSim::ControllerSet const &

        """
        return _opensim.ControllerSet_copyData(self, *args)

    def set(self, *args):
        """
        set(ControllerSet self, int aIndex, Controller aController) -> bool

        Parameters:
            aIndex: int
            aController: OpenSim::Controller *

        """
        return _opensim.ControllerSet_set(self, *args)

    def addController(self, *args):
        """
        addController(ControllerSet self, Controller aController) -> bool

        Parameters:
            aController: OpenSim::Controller *

        """
        return _opensim.ControllerSet_addController(self, *args)

    def constructStorage(self):
        """
        constructStorage(ControllerSet self)

        Parameters:
            self: OpenSim::ControllerSet *

        """
        return _opensim.ControllerSet_constructStorage(self)

    def storeControls(self, *args):
        """
        storeControls(ControllerSet self, State s, int step)

        Parameters:
            s: SimTK::State const &
            step: int

        """
        return _opensim.ControllerSet_storeControls(self, *args)

    def printControlStorage(self, *args):
        """
        printControlStorage(ControllerSet self, std::string const & fileName)

        Parameters:
            fileName: std::string const &

        """
        return _opensim.ControllerSet_printControlStorage(self, *args)

    def setActuators(self, *args):
        """
        setActuators(ControllerSet self, SetActuators arg2)

        Parameters:
            arg2: OpenSim::Set< OpenSim::Actuator > &

        """
        return _opensim.ControllerSet_setActuators(self, *args)

    def check(self):
        """
        check(ControllerSet self) -> bool

        Parameters:
            self: OpenSim::ControllerSet const *

        """
        return _opensim.ControllerSet_check(self)

    def setDesiredStates(self, *args):
        """
        setDesiredStates(ControllerSet self, Storage yStore)

        Parameters:
            yStore: OpenSim::Storage *

        """
        return _opensim.ControllerSet_setDesiredStates(self, *args)

    def computeControls(self, *args):
        """
        computeControls(ControllerSet self, State s, Vector controls)

        Parameters:
            s: SimTK::State const &
            controls: SimTK::Vector &

        """
        return _opensim.ControllerSet_computeControls(self, *args)

    def printInfo(self):
        """
        printInfo(ControllerSet self)

        Parameters:
            self: OpenSim::ControllerSet const *

        """
        return _opensim.ControllerSet_printInfo(self)

    def adoptAndAppend(self, aController):
        aController._markAdopted()
        return super(ControllerSet, self).adoptAndAppend(aController)

ControllerSet_swigregister = _opensim.ControllerSet_swigregister
ControllerSet_swigregister(ControllerSet)

def ControllerSet_safeDownCast(*args):
  """
    ControllerSet_safeDownCast(OpenSimObject obj) -> ControllerSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ControllerSet_safeDownCast(*args)

def ControllerSet_getClassName():
  """ControllerSet_getClassName() -> std::string const &"""
  return _opensim.ControllerSet_getClassName()

class ModelComponentSetExternalForces(SetExternalForces):
    """Proxy of C++ OpenSim::ModelComponentSet<(OpenSim::ExternalForce)> class"""
    __swig_setmethods__ = {}
    for _s in [SetExternalForces]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ModelComponentSetExternalForces, name, value)
    __swig_getmethods__ = {}
    for _s in [SetExternalForces]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ModelComponentSetExternalForces, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ModelComponentSetExternalForces

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ModelComponentSetExternalForces_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ModelComponentSetExternalForces self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ModelComponentSetExternalForces_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ModelComponentSetExternalForces_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ModelComponentSetExternalForces self) -> ModelComponentSetExternalForces

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::ExternalForce > const *

        """
        return _opensim.ModelComponentSetExternalForces_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ModelComponentSetExternalForces self) -> std::string const &

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::ExternalForce > const *

        """
        return _opensim.ModelComponentSetExternalForces_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ModelComponentSet<(OpenSim::ExternalForce)> self) -> ModelComponentSetExternalForces
        __init__(OpenSim::ModelComponentSet<(OpenSim::ExternalForce)> self, Model model) -> ModelComponentSetExternalForces

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ModelComponentSet<(OpenSim::ExternalForce)> self, Model model, std::string const & fileName, bool aUpdateFromXMLNode=True) -> ModelComponentSetExternalForces

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ModelComponentSet<(OpenSim::ExternalForce)> self, Model model, std::string const & fileName) -> ModelComponentSetExternalForces

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &

        __init__(OpenSim::ModelComponentSet<(OpenSim::ExternalForce)> self, ModelComponentSetExternalForces source) -> ModelComponentSetExternalForces

        Parameters:
            source: OpenSim::ModelComponentSet< OpenSim::ExternalForce > const &

        """
        this = _opensim.new_ModelComponentSetExternalForces(*args)
        try: self.this.append(this)
        except: self.this = this
    def insert(self, *args):
        """
        insert(ModelComponentSetExternalForces self, int aIndex, ExternalForce aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ExternalForce *

        """
        return _opensim.ModelComponentSetExternalForces_insert(self, *args)

    def set(self, *args):
        """
        set(ModelComponentSetExternalForces self, int aIndex, ExternalForce aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ExternalForce *
            preserveGroups: bool

        set(ModelComponentSetExternalForces self, int aIndex, ExternalForce aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ExternalForce *

        """
        return _opensim.ModelComponentSetExternalForces_set(self, *args)

    def invokeConnectToModel(self, *args):
        """
        invokeConnectToModel(ModelComponentSetExternalForces self, Model model)

        Parameters:
            model: OpenSim::Model &

        """
        return _opensim.ModelComponentSetExternalForces_invokeConnectToModel(self, *args)

    def invokeAddToSystem(self, *args):
        """
        invokeAddToSystem(ModelComponentSetExternalForces self, SimTK::MultibodySystem & system)

        Parameters:
            system: SimTK::MultibodySystem &

        """
        return _opensim.ModelComponentSetExternalForces_invokeAddToSystem(self, *args)

    def invokeInitStateFromProperties(self, *args):
        """
        invokeInitStateFromProperties(ModelComponentSetExternalForces self, State state)

        Parameters:
            state: SimTK::State &

        """
        return _opensim.ModelComponentSetExternalForces_invokeInitStateFromProperties(self, *args)

    def invokeSetPropertiesFromState(self, *args):
        """
        invokeSetPropertiesFromState(ModelComponentSetExternalForces self, State state)

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ModelComponentSetExternalForces_invokeSetPropertiesFromState(self, *args)

    def invokeGenerateDecorations(self, *args):
        """
        invokeGenerateDecorations(ModelComponentSetExternalForces self, bool fixed, ModelDisplayHints hints, State state, ArrayDecorativeGeometry appendToThis)

        Parameters:
            fixed: bool
            hints: OpenSim::ModelDisplayHints const &
            state: SimTK::State const &
            appendToThis: SimTK::Array_< SimTK::DecorativeGeometry,unsigned int > &

        """
        return _opensim.ModelComponentSetExternalForces_invokeGenerateDecorations(self, *args)

    __swig_destroy__ = _opensim.delete_ModelComponentSetExternalForces
    __del__ = lambda self : None;
ModelComponentSetExternalForces_swigregister = _opensim.ModelComponentSetExternalForces_swigregister
ModelComponentSetExternalForces_swigregister(ModelComponentSetExternalForces)

def ModelComponentSetExternalForces_safeDownCast(*args):
  """
    ModelComponentSetExternalForces_safeDownCast(OpenSimObject obj) -> ModelComponentSetExternalForces

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ModelComponentSetExternalForces_safeDownCast(*args)

def ModelComponentSetExternalForces_getClassName():
  """ModelComponentSetExternalForces_getClassName() -> std::string const &"""
  return _opensim.ModelComponentSetExternalForces_getClassName()

class ExternalLoads(ModelComponentSetExternalForces):
    """Proxy of C++ OpenSim::ExternalLoads class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponentSetExternalForces]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ExternalLoads, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponentSetExternalForces]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ExternalLoads, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ExternalLoads

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ExternalLoads_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ExternalLoads self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ExternalLoads_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ExternalLoads_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ExternalLoads self) -> ExternalLoads

        Parameters:
            self: OpenSim::ExternalLoads const *

        """
        return _opensim.ExternalLoads_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ExternalLoads self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalLoads const *

        """
        return _opensim.ExternalLoads_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ExternalLoads self) -> ExternalLoads
        __init__(OpenSim::ExternalLoads self, Model model) -> ExternalLoads

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ExternalLoads self, Model model, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> ExternalLoads

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ExternalLoads self, Model model, std::string const & aFileName) -> ExternalLoads

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &

        __init__(OpenSim::ExternalLoads self, ExternalLoads aExternalLoads) -> ExternalLoads

        Parameters:
            aExternalLoads: OpenSim::ExternalLoads const &

        """
        this = _opensim.new_ExternalLoads(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ExternalLoads
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(ExternalLoads self, ExternalLoads otherExternalLoads)

        Parameters:
            otherExternalLoads: OpenSim::ExternalLoads const &

        """
        return _opensim.ExternalLoads_copyData(self, *args)

    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(ExternalLoads self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(ExternalLoads self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.ExternalLoads_updateFromXMLNode(self, *args)

    def invokeConnectToModel(self, *args):
        """
        invokeConnectToModel(ExternalLoads self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.ExternalLoads_invokeConnectToModel(self, *args)

    def getModel(self):
        """
        getModel(ExternalLoads self) -> Model

        Parameters:
            self: OpenSim::ExternalLoads const *

        """
        return _opensim.ExternalLoads_getModel(self)

    def getDataFileName(self):
        """
        getDataFileName(ExternalLoads self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalLoads const *

        """
        return _opensim.ExternalLoads_getDataFileName(self)

    def setDataFileName(self, *args):
        """
        setDataFileName(ExternalLoads self, std::string const & aNewFile)

        Parameters:
            aNewFile: std::string const &

        """
        return _opensim.ExternalLoads_setDataFileName(self, *args)

    def getExternalLoadsModelKinematicsFileName(self):
        """
        getExternalLoadsModelKinematicsFileName(ExternalLoads self) -> std::string const &

        Parameters:
            self: OpenSim::ExternalLoads const *

        """
        return _opensim.ExternalLoads_getExternalLoadsModelKinematicsFileName(self)

    def setExternalLoadsModelKinematicsFileName(self, *args):
        """
        setExternalLoadsModelKinematicsFileName(ExternalLoads self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.ExternalLoads_setExternalLoadsModelKinematicsFileName(self, *args)

    def getLowpassCutoffFrequencyForLoadKinematics(self):
        """
        getLowpassCutoffFrequencyForLoadKinematics(ExternalLoads self) -> double

        Parameters:
            self: OpenSim::ExternalLoads const *

        """
        return _opensim.ExternalLoads_getLowpassCutoffFrequencyForLoadKinematics(self)

    def setLowpassCutoffFrequencyForLoadKinematics(self, *args):
        """
        setLowpassCutoffFrequencyForLoadKinematics(ExternalLoads self, double aLowpassCutoffFrequency)

        Parameters:
            aLowpassCutoffFrequency: double

        """
        return _opensim.ExternalLoads_setLowpassCutoffFrequencyForLoadKinematics(self, *args)

    def transformPointsExpressedInGroundToAppliedBodies(self, *args):
        """
        transformPointsExpressedInGroundToAppliedBodies(ExternalLoads self, Storage kinematics, double startTime=-SimTK::Infinity, double endTime=SimTK::Infinity)

        Parameters:
            kinematics: OpenSim::Storage const &
            startTime: double
            endTime: double

        transformPointsExpressedInGroundToAppliedBodies(ExternalLoads self, Storage kinematics, double startTime=-SimTK::Infinity)

        Parameters:
            kinematics: OpenSim::Storage const &
            startTime: double

        transformPointsExpressedInGroundToAppliedBodies(ExternalLoads self, Storage kinematics)

        Parameters:
            kinematics: OpenSim::Storage const &

        """
        return _opensim.ExternalLoads_transformPointsExpressedInGroundToAppliedBodies(self, *args)

    def transformPointExpressedInGroundToAppliedBody(self, *args):
        """
        transformPointExpressedInGroundToAppliedBody(ExternalLoads self, ExternalForce exForce, Storage kinematics, double startTime, double endTime) -> ExternalForce

        Parameters:
            exForce: OpenSim::ExternalForce const &
            kinematics: OpenSim::Storage const &
            startTime: double
            endTime: double

        """
        return _opensim.ExternalLoads_transformPointExpressedInGroundToAppliedBody(self, *args)

ExternalLoads_swigregister = _opensim.ExternalLoads_swigregister
ExternalLoads_swigregister(ExternalLoads)

def ExternalLoads_safeDownCast(*args):
  """
    ExternalLoads_safeDownCast(OpenSimObject obj) -> ExternalLoads

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ExternalLoads_safeDownCast(*args)

def ExternalLoads_getClassName():
  """ExternalLoads_getClassName() -> std::string const &"""
  return _opensim.ExternalLoads_getClassName()

class PrescribedForce(Force):
    """Proxy of C++ OpenSim::PrescribedForce class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PrescribedForce, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PrescribedForce, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PrescribedForce

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PrescribedForce_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PrescribedForce self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PrescribedForce_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PrescribedForce_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PrescribedForce self) -> PrescribedForce

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PrescribedForce self) -> std::string const &

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_getConcreteClassName(self)

    def copyProperty_body(self, *args):
        """
        copyProperty_body(PrescribedForce self, PrescribedForce source)

        Parameters:
            source: OpenSim::PrescribedForce::Self const &

        """
        return _opensim.PrescribedForce_copyProperty_body(self, *args)

    def append_body(self, *args):
        """
        append_body(PrescribedForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.PrescribedForce_append_body(self, *args)

    def constructProperty_body(self, *args):
        """
        constructProperty_body(PrescribedForce self)
        constructProperty_body(PrescribedForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.PrescribedForce_constructProperty_body(self, *args)

    def get_body(self, *args):
        """
        get_body(PrescribedForce self, int i) -> std::string const

        Parameters:
            i: int

        get_body(PrescribedForce self) -> std::string const &

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_get_body(self, *args)

    def upd_body(self, *args):
        """
        upd_body(PrescribedForce self, int i) -> std::string

        Parameters:
            i: int

        upd_body(PrescribedForce self) -> std::string &

        Parameters:
            self: OpenSim::PrescribedForce *

        """
        return _opensim.PrescribedForce_upd_body(self, *args)

    def set_body(self, *args):
        """
        set_body(PrescribedForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body(PrescribedForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.PrescribedForce_set_body(self, *args)

    def copyProperty_pointIsGlobal(self, *args):
        """
        copyProperty_pointIsGlobal(PrescribedForce self, PrescribedForce source)

        Parameters:
            source: OpenSim::PrescribedForce::Self const &

        """
        return _opensim.PrescribedForce_copyProperty_pointIsGlobal(self, *args)

    def append_pointIsGlobal(self, *args):
        """
        append_pointIsGlobal(PrescribedForce self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.PrescribedForce_append_pointIsGlobal(self, *args)

    def constructProperty_pointIsGlobal(self, *args):
        """
        constructProperty_pointIsGlobal(PrescribedForce self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.PrescribedForce_constructProperty_pointIsGlobal(self, *args)

    def get_pointIsGlobal(self, *args):
        """
        get_pointIsGlobal(PrescribedForce self, int i) -> bool const

        Parameters:
            i: int

        get_pointIsGlobal(PrescribedForce self) -> bool const &

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_get_pointIsGlobal(self, *args)

    def upd_pointIsGlobal(self, *args):
        """
        upd_pointIsGlobal(PrescribedForce self, int i) -> bool

        Parameters:
            i: int

        upd_pointIsGlobal(PrescribedForce self) -> bool &

        Parameters:
            self: OpenSim::PrescribedForce *

        """
        return _opensim.PrescribedForce_upd_pointIsGlobal(self, *args)

    def set_pointIsGlobal(self, *args):
        """
        set_pointIsGlobal(PrescribedForce self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_pointIsGlobal(PrescribedForce self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.PrescribedForce_set_pointIsGlobal(self, *args)

    def copyProperty_forceIsGlobal(self, *args):
        """
        copyProperty_forceIsGlobal(PrescribedForce self, PrescribedForce source)

        Parameters:
            source: OpenSim::PrescribedForce::Self const &

        """
        return _opensim.PrescribedForce_copyProperty_forceIsGlobal(self, *args)

    def append_forceIsGlobal(self, *args):
        """
        append_forceIsGlobal(PrescribedForce self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.PrescribedForce_append_forceIsGlobal(self, *args)

    def constructProperty_forceIsGlobal(self, *args):
        """
        constructProperty_forceIsGlobal(PrescribedForce self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.PrescribedForce_constructProperty_forceIsGlobal(self, *args)

    def get_forceIsGlobal(self, *args):
        """
        get_forceIsGlobal(PrescribedForce self, int i) -> bool const

        Parameters:
            i: int

        get_forceIsGlobal(PrescribedForce self) -> bool const &

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_get_forceIsGlobal(self, *args)

    def upd_forceIsGlobal(self, *args):
        """
        upd_forceIsGlobal(PrescribedForce self, int i) -> bool

        Parameters:
            i: int

        upd_forceIsGlobal(PrescribedForce self) -> bool &

        Parameters:
            self: OpenSim::PrescribedForce *

        """
        return _opensim.PrescribedForce_upd_forceIsGlobal(self, *args)

    def set_forceIsGlobal(self, *args):
        """
        set_forceIsGlobal(PrescribedForce self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_forceIsGlobal(PrescribedForce self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.PrescribedForce_set_forceIsGlobal(self, *args)

    def copyProperty_forceFunctions(self, *args):
        """
        copyProperty_forceFunctions(PrescribedForce self, PrescribedForce source)

        Parameters:
            source: OpenSim::PrescribedForce::Self const &

        """
        return _opensim.PrescribedForce_copyProperty_forceFunctions(self, *args)

    def append_forceFunctions(self, *args):
        """
        append_forceFunctions(PrescribedForce self, FunctionSet value) -> int

        Parameters:
            value: OpenSim::FunctionSet const &

        """
        return _opensim.PrescribedForce_append_forceFunctions(self, *args)

    def constructProperty_forceFunctions(self, *args):
        """
        constructProperty_forceFunctions(PrescribedForce self, FunctionSet initValue)

        Parameters:
            initValue: OpenSim::FunctionSet const &

        """
        return _opensim.PrescribedForce_constructProperty_forceFunctions(self, *args)

    def get_forceFunctions(self, *args):
        """
        get_forceFunctions(PrescribedForce self, int i) -> FunctionSet

        Parameters:
            i: int

        get_forceFunctions(PrescribedForce self) -> FunctionSet

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_get_forceFunctions(self, *args)

    def upd_forceFunctions(self, *args):
        """
        upd_forceFunctions(PrescribedForce self, int i) -> FunctionSet

        Parameters:
            i: int

        upd_forceFunctions(PrescribedForce self) -> FunctionSet

        Parameters:
            self: OpenSim::PrescribedForce *

        """
        return _opensim.PrescribedForce_upd_forceFunctions(self, *args)

    def set_forceFunctions(self, *args):
        """
        set_forceFunctions(PrescribedForce self, int i, FunctionSet value)

        Parameters:
            i: int
            value: OpenSim::FunctionSet const &

        set_forceFunctions(PrescribedForce self, FunctionSet value)

        Parameters:
            value: OpenSim::FunctionSet const &

        """
        return _opensim.PrescribedForce_set_forceFunctions(self, *args)

    def copyProperty_pointFunctions(self, *args):
        """
        copyProperty_pointFunctions(PrescribedForce self, PrescribedForce source)

        Parameters:
            source: OpenSim::PrescribedForce::Self const &

        """
        return _opensim.PrescribedForce_copyProperty_pointFunctions(self, *args)

    def append_pointFunctions(self, *args):
        """
        append_pointFunctions(PrescribedForce self, FunctionSet value) -> int

        Parameters:
            value: OpenSim::FunctionSet const &

        """
        return _opensim.PrescribedForce_append_pointFunctions(self, *args)

    def constructProperty_pointFunctions(self, *args):
        """
        constructProperty_pointFunctions(PrescribedForce self, FunctionSet initValue)

        Parameters:
            initValue: OpenSim::FunctionSet const &

        """
        return _opensim.PrescribedForce_constructProperty_pointFunctions(self, *args)

    def get_pointFunctions(self, *args):
        """
        get_pointFunctions(PrescribedForce self, int i) -> FunctionSet

        Parameters:
            i: int

        get_pointFunctions(PrescribedForce self) -> FunctionSet

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_get_pointFunctions(self, *args)

    def upd_pointFunctions(self, *args):
        """
        upd_pointFunctions(PrescribedForce self, int i) -> FunctionSet

        Parameters:
            i: int

        upd_pointFunctions(PrescribedForce self) -> FunctionSet

        Parameters:
            self: OpenSim::PrescribedForce *

        """
        return _opensim.PrescribedForce_upd_pointFunctions(self, *args)

    def set_pointFunctions(self, *args):
        """
        set_pointFunctions(PrescribedForce self, int i, FunctionSet value)

        Parameters:
            i: int
            value: OpenSim::FunctionSet const &

        set_pointFunctions(PrescribedForce self, FunctionSet value)

        Parameters:
            value: OpenSim::FunctionSet const &

        """
        return _opensim.PrescribedForce_set_pointFunctions(self, *args)

    def copyProperty_torqueFunctions(self, *args):
        """
        copyProperty_torqueFunctions(PrescribedForce self, PrescribedForce source)

        Parameters:
            source: OpenSim::PrescribedForce::Self const &

        """
        return _opensim.PrescribedForce_copyProperty_torqueFunctions(self, *args)

    def append_torqueFunctions(self, *args):
        """
        append_torqueFunctions(PrescribedForce self, FunctionSet value) -> int

        Parameters:
            value: OpenSim::FunctionSet const &

        """
        return _opensim.PrescribedForce_append_torqueFunctions(self, *args)

    def constructProperty_torqueFunctions(self, *args):
        """
        constructProperty_torqueFunctions(PrescribedForce self, FunctionSet initValue)

        Parameters:
            initValue: OpenSim::FunctionSet const &

        """
        return _opensim.PrescribedForce_constructProperty_torqueFunctions(self, *args)

    def get_torqueFunctions(self, *args):
        """
        get_torqueFunctions(PrescribedForce self, int i) -> FunctionSet

        Parameters:
            i: int

        get_torqueFunctions(PrescribedForce self) -> FunctionSet

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_get_torqueFunctions(self, *args)

    def upd_torqueFunctions(self, *args):
        """
        upd_torqueFunctions(PrescribedForce self, int i) -> FunctionSet

        Parameters:
            i: int

        upd_torqueFunctions(PrescribedForce self) -> FunctionSet

        Parameters:
            self: OpenSim::PrescribedForce *

        """
        return _opensim.PrescribedForce_upd_torqueFunctions(self, *args)

    def set_torqueFunctions(self, *args):
        """
        set_torqueFunctions(PrescribedForce self, int i, FunctionSet value)

        Parameters:
            i: int
            value: OpenSim::FunctionSet const &

        set_torqueFunctions(PrescribedForce self, FunctionSet value)

        Parameters:
            value: OpenSim::FunctionSet const &

        """
        return _opensim.PrescribedForce_set_torqueFunctions(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PrescribedForce self, Body body=None) -> PrescribedForce

        Parameters:
            body: OpenSim::Body *

        __init__(OpenSim::PrescribedForce self) -> PrescribedForce
        __init__(OpenSim::PrescribedForce self, SimTK::Xml::Element & aNode) -> PrescribedForce

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        this = _opensim.new_PrescribedForce(*args)
        try: self.this.append(this)
        except: self.this = this
    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(PrescribedForce self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(PrescribedForce self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.PrescribedForce_updateFromXMLNode(self, *args)

    def setBodyName(self, *args):
        """
        setBodyName(PrescribedForce self, std::string const & aBodyName)

        Parameters:
            aBodyName: std::string const &

        """
        return _opensim.PrescribedForce_setBodyName(self, *args)

    def getBodyName(self):
        """
        getBodyName(PrescribedForce self) -> std::string const &

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_getBodyName(self)

    def setForceFunctions(self, *args):
        """
        setForceFunctions(PrescribedForce self, Function forceX, Function forceY, Function forceZ)

        Parameters:
            forceX: OpenSim::Function *
            forceY: OpenSim::Function *
            forceZ: OpenSim::Function *

        """
        return _opensim.PrescribedForce_setForceFunctions(self, *args)

    def getForceFunctions(self):
        """
        getForceFunctions(PrescribedForce self) -> FunctionSet

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_getForceFunctions(self)

    def updForceFunctions(self):
        """
        updForceFunctions(PrescribedForce self) -> FunctionSet

        Parameters:
            self: OpenSim::PrescribedForce *

        """
        return _opensim.PrescribedForce_updForceFunctions(self)

    def getForceFunctionNames(self, *args):
        """
        getForceFunctionNames(PrescribedForce self, ArrayStr aFunctionNames)

        Parameters:
            aFunctionNames: OpenSim::Array< std::string > &

        """
        return _opensim.PrescribedForce_getForceFunctionNames(self, *args)

    def setForceFunctionNames(self, *args):
        """
        setForceFunctionNames(PrescribedForce self, ArrayStr aFunctionNames, Storage kineticsStore)

        Parameters:
            aFunctionNames: OpenSim::Array< std::string > const &
            kineticsStore: OpenSim::Storage const &

        """
        return _opensim.PrescribedForce_setForceFunctionNames(self, *args)

    def clearForceFunctions(self):
        """
        clearForceFunctions(PrescribedForce self)

        Parameters:
            self: OpenSim::PrescribedForce *

        """
        return _opensim.PrescribedForce_clearForceFunctions(self)

    def setPointFunctions(self, *args):
        """
        setPointFunctions(PrescribedForce self, Function pointX, Function pointY, Function pointZ)

        Parameters:
            pointX: OpenSim::Function *
            pointY: OpenSim::Function *
            pointZ: OpenSim::Function *

        """
        return _opensim.PrescribedForce_setPointFunctions(self, *args)

    def getPointFunctions(self):
        """
        getPointFunctions(PrescribedForce self) -> FunctionSet

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_getPointFunctions(self)

    def updPointFunctions(self):
        """
        updPointFunctions(PrescribedForce self) -> FunctionSet

        Parameters:
            self: OpenSim::PrescribedForce *

        """
        return _opensim.PrescribedForce_updPointFunctions(self)

    def getPointFunctionNames(self, *args):
        """
        getPointFunctionNames(PrescribedForce self, ArrayStr aFunctionNames)

        Parameters:
            aFunctionNames: OpenSim::Array< std::string > &

        """
        return _opensim.PrescribedForce_getPointFunctionNames(self, *args)

    def setPointFunctionNames(self, *args):
        """
        setPointFunctionNames(PrescribedForce self, ArrayStr aFunctionNames, Storage kineticsStore)

        Parameters:
            aFunctionNames: OpenSim::Array< std::string > const &
            kineticsStore: OpenSim::Storage const &

        """
        return _opensim.PrescribedForce_setPointFunctionNames(self, *args)

    def clearPointFunctions(self):
        """
        clearPointFunctions(PrescribedForce self)

        Parameters:
            self: OpenSim::PrescribedForce *

        """
        return _opensim.PrescribedForce_clearPointFunctions(self)

    def setTorqueFunctions(self, *args):
        """
        setTorqueFunctions(PrescribedForce self, Function torqueX, Function torqueY, Function torqueZ)

        Parameters:
            torqueX: OpenSim::Function *
            torqueY: OpenSim::Function *
            torqueZ: OpenSim::Function *

        """
        return _opensim.PrescribedForce_setTorqueFunctions(self, *args)

    def getTorqueFunctions(self):
        """
        getTorqueFunctions(PrescribedForce self) -> FunctionSet

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_getTorqueFunctions(self)

    def updTorqueFunctions(self):
        """
        updTorqueFunctions(PrescribedForce self) -> FunctionSet

        Parameters:
            self: OpenSim::PrescribedForce *

        """
        return _opensim.PrescribedForce_updTorqueFunctions(self)

    def getTorqueFunctionNames(self, *args):
        """
        getTorqueFunctionNames(PrescribedForce self, ArrayStr aFunctionNames)

        Parameters:
            aFunctionNames: OpenSim::Array< std::string > &

        """
        return _opensim.PrescribedForce_getTorqueFunctionNames(self, *args)

    def setTorqueFunctionNames(self, *args):
        """
        setTorqueFunctionNames(PrescribedForce self, ArrayStr aFunctionNames, Storage kineticsStore)

        Parameters:
            aFunctionNames: OpenSim::Array< std::string > const &
            kineticsStore: OpenSim::Storage const &

        """
        return _opensim.PrescribedForce_setTorqueFunctionNames(self, *args)

    def clearTorqueFunctions(self):
        """
        clearTorqueFunctions(PrescribedForce self)

        Parameters:
            self: OpenSim::PrescribedForce *

        """
        return _opensim.PrescribedForce_clearTorqueFunctions(self)

    def getForceIsInGlobalFrame(self):
        """
        getForceIsInGlobalFrame(PrescribedForce self) -> bool

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_getForceIsInGlobalFrame(self)

    def setForceIsInGlobalFrame(self, *args):
        """
        setForceIsInGlobalFrame(PrescribedForce self, bool isGlobal)

        Parameters:
            isGlobal: bool

        """
        return _opensim.PrescribedForce_setForceIsInGlobalFrame(self, *args)

    def getPointIsInGlobalFrame(self):
        """
        getPointIsInGlobalFrame(PrescribedForce self) -> bool

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_getPointIsInGlobalFrame(self)

    def setPointIsInGlobalFrame(self, *args):
        """
        setPointIsInGlobalFrame(PrescribedForce self, bool isGlobal)

        Parameters:
            isGlobal: bool

        """
        return _opensim.PrescribedForce_setPointIsInGlobalFrame(self, *args)

    def getBody(self):
        """
        getBody(PrescribedForce self) -> Body

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_getBody(self)

    def getForceAtTime(self, *args):
        """
        getForceAtTime(PrescribedForce self, double aTime) -> Vec3

        Parameters:
            aTime: double

        """
        return _opensim.PrescribedForce_getForceAtTime(self, *args)

    def getPointAtTime(self, *args):
        """
        getPointAtTime(PrescribedForce self, double aTime) -> Vec3

        Parameters:
            aTime: double

        """
        return _opensim.PrescribedForce_getPointAtTime(self, *args)

    def getTorqueAtTime(self, *args):
        """
        getTorqueAtTime(PrescribedForce self, double aTime) -> Vec3

        Parameters:
            aTime: double

        """
        return _opensim.PrescribedForce_getTorqueAtTime(self, *args)

    def getRecordLabels(self):
        """
        getRecordLabels(PrescribedForce self) -> ArrayStr

        Parameters:
            self: OpenSim::PrescribedForce const *

        """
        return _opensim.PrescribedForce_getRecordLabels(self)

    def getRecordValues(self, *args):
        """
        getRecordValues(PrescribedForce self, State state) -> ArrayDouble

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.PrescribedForce_getRecordValues(self, *args)

    __swig_destroy__ = _opensim.delete_PrescribedForce
    __del__ = lambda self : None;
PrescribedForce_swigregister = _opensim.PrescribedForce_swigregister
PrescribedForce_swigregister(PrescribedForce)

def PrescribedForce_safeDownCast(*args):
  """
    PrescribedForce_safeDownCast(OpenSimObject obj) -> PrescribedForce

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PrescribedForce_safeDownCast(*args)

def PrescribedForce_getClassName():
  """PrescribedForce_getClassName() -> std::string const &"""
  return _opensim.PrescribedForce_getClassName()

class CoordinateLimitForce(Force):
    """Proxy of C++ OpenSim::CoordinateLimitForce class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, CoordinateLimitForce, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, CoordinateLimitForce, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> CoordinateLimitForce

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.CoordinateLimitForce_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(CoordinateLimitForce self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.CoordinateLimitForce_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.CoordinateLimitForce_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(CoordinateLimitForce self) -> CoordinateLimitForce

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(CoordinateLimitForce self) -> std::string const &

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_getConcreteClassName(self)

    def copyProperty_coordinate(self, *args):
        """
        copyProperty_coordinate(CoordinateLimitForce self, CoordinateLimitForce source)

        Parameters:
            source: OpenSim::CoordinateLimitForce::Self const &

        """
        return _opensim.CoordinateLimitForce_copyProperty_coordinate(self, *args)

    def append_coordinate(self, *args):
        """
        append_coordinate(CoordinateLimitForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.CoordinateLimitForce_append_coordinate(self, *args)

    def constructProperty_coordinate(self, *args):
        """
        constructProperty_coordinate(CoordinateLimitForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.CoordinateLimitForce_constructProperty_coordinate(self, *args)

    def get_coordinate(self, *args):
        """
        get_coordinate(CoordinateLimitForce self, int i) -> std::string const

        Parameters:
            i: int

        get_coordinate(CoordinateLimitForce self) -> std::string const &

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_get_coordinate(self, *args)

    def upd_coordinate(self, *args):
        """
        upd_coordinate(CoordinateLimitForce self, int i) -> std::string

        Parameters:
            i: int

        upd_coordinate(CoordinateLimitForce self) -> std::string &

        Parameters:
            self: OpenSim::CoordinateLimitForce *

        """
        return _opensim.CoordinateLimitForce_upd_coordinate(self, *args)

    def set_coordinate(self, *args):
        """
        set_coordinate(CoordinateLimitForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_coordinate(CoordinateLimitForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.CoordinateLimitForce_set_coordinate(self, *args)

    def copyProperty_upper_stiffness(self, *args):
        """
        copyProperty_upper_stiffness(CoordinateLimitForce self, CoordinateLimitForce source)

        Parameters:
            source: OpenSim::CoordinateLimitForce::Self const &

        """
        return _opensim.CoordinateLimitForce_copyProperty_upper_stiffness(self, *args)

    def append_upper_stiffness(self, *args):
        """
        append_upper_stiffness(CoordinateLimitForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.CoordinateLimitForce_append_upper_stiffness(self, *args)

    def constructProperty_upper_stiffness(self, *args):
        """
        constructProperty_upper_stiffness(CoordinateLimitForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.CoordinateLimitForce_constructProperty_upper_stiffness(self, *args)

    def get_upper_stiffness(self, *args):
        """
        get_upper_stiffness(CoordinateLimitForce self, int i) -> double const

        Parameters:
            i: int

        get_upper_stiffness(CoordinateLimitForce self) -> double const &

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_get_upper_stiffness(self, *args)

    def upd_upper_stiffness(self, *args):
        """
        upd_upper_stiffness(CoordinateLimitForce self, int i) -> double

        Parameters:
            i: int

        upd_upper_stiffness(CoordinateLimitForce self) -> double &

        Parameters:
            self: OpenSim::CoordinateLimitForce *

        """
        return _opensim.CoordinateLimitForce_upd_upper_stiffness(self, *args)

    def set_upper_stiffness(self, *args):
        """
        set_upper_stiffness(CoordinateLimitForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_upper_stiffness(CoordinateLimitForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.CoordinateLimitForce_set_upper_stiffness(self, *args)

    def copyProperty_upper_limit(self, *args):
        """
        copyProperty_upper_limit(CoordinateLimitForce self, CoordinateLimitForce source)

        Parameters:
            source: OpenSim::CoordinateLimitForce::Self const &

        """
        return _opensim.CoordinateLimitForce_copyProperty_upper_limit(self, *args)

    def append_upper_limit(self, *args):
        """
        append_upper_limit(CoordinateLimitForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.CoordinateLimitForce_append_upper_limit(self, *args)

    def constructProperty_upper_limit(self, *args):
        """
        constructProperty_upper_limit(CoordinateLimitForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.CoordinateLimitForce_constructProperty_upper_limit(self, *args)

    def get_upper_limit(self, *args):
        """
        get_upper_limit(CoordinateLimitForce self, int i) -> double const

        Parameters:
            i: int

        get_upper_limit(CoordinateLimitForce self) -> double const &

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_get_upper_limit(self, *args)

    def upd_upper_limit(self, *args):
        """
        upd_upper_limit(CoordinateLimitForce self, int i) -> double

        Parameters:
            i: int

        upd_upper_limit(CoordinateLimitForce self) -> double &

        Parameters:
            self: OpenSim::CoordinateLimitForce *

        """
        return _opensim.CoordinateLimitForce_upd_upper_limit(self, *args)

    def set_upper_limit(self, *args):
        """
        set_upper_limit(CoordinateLimitForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_upper_limit(CoordinateLimitForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.CoordinateLimitForce_set_upper_limit(self, *args)

    def copyProperty_lower_stiffness(self, *args):
        """
        copyProperty_lower_stiffness(CoordinateLimitForce self, CoordinateLimitForce source)

        Parameters:
            source: OpenSim::CoordinateLimitForce::Self const &

        """
        return _opensim.CoordinateLimitForce_copyProperty_lower_stiffness(self, *args)

    def append_lower_stiffness(self, *args):
        """
        append_lower_stiffness(CoordinateLimitForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.CoordinateLimitForce_append_lower_stiffness(self, *args)

    def constructProperty_lower_stiffness(self, *args):
        """
        constructProperty_lower_stiffness(CoordinateLimitForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.CoordinateLimitForce_constructProperty_lower_stiffness(self, *args)

    def get_lower_stiffness(self, *args):
        """
        get_lower_stiffness(CoordinateLimitForce self, int i) -> double const

        Parameters:
            i: int

        get_lower_stiffness(CoordinateLimitForce self) -> double const &

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_get_lower_stiffness(self, *args)

    def upd_lower_stiffness(self, *args):
        """
        upd_lower_stiffness(CoordinateLimitForce self, int i) -> double

        Parameters:
            i: int

        upd_lower_stiffness(CoordinateLimitForce self) -> double &

        Parameters:
            self: OpenSim::CoordinateLimitForce *

        """
        return _opensim.CoordinateLimitForce_upd_lower_stiffness(self, *args)

    def set_lower_stiffness(self, *args):
        """
        set_lower_stiffness(CoordinateLimitForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_lower_stiffness(CoordinateLimitForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.CoordinateLimitForce_set_lower_stiffness(self, *args)

    def copyProperty_lower_limit(self, *args):
        """
        copyProperty_lower_limit(CoordinateLimitForce self, CoordinateLimitForce source)

        Parameters:
            source: OpenSim::CoordinateLimitForce::Self const &

        """
        return _opensim.CoordinateLimitForce_copyProperty_lower_limit(self, *args)

    def append_lower_limit(self, *args):
        """
        append_lower_limit(CoordinateLimitForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.CoordinateLimitForce_append_lower_limit(self, *args)

    def constructProperty_lower_limit(self, *args):
        """
        constructProperty_lower_limit(CoordinateLimitForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.CoordinateLimitForce_constructProperty_lower_limit(self, *args)

    def get_lower_limit(self, *args):
        """
        get_lower_limit(CoordinateLimitForce self, int i) -> double const

        Parameters:
            i: int

        get_lower_limit(CoordinateLimitForce self) -> double const &

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_get_lower_limit(self, *args)

    def upd_lower_limit(self, *args):
        """
        upd_lower_limit(CoordinateLimitForce self, int i) -> double

        Parameters:
            i: int

        upd_lower_limit(CoordinateLimitForce self) -> double &

        Parameters:
            self: OpenSim::CoordinateLimitForce *

        """
        return _opensim.CoordinateLimitForce_upd_lower_limit(self, *args)

    def set_lower_limit(self, *args):
        """
        set_lower_limit(CoordinateLimitForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_lower_limit(CoordinateLimitForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.CoordinateLimitForce_set_lower_limit(self, *args)

    def copyProperty_damping(self, *args):
        """
        copyProperty_damping(CoordinateLimitForce self, CoordinateLimitForce source)

        Parameters:
            source: OpenSim::CoordinateLimitForce::Self const &

        """
        return _opensim.CoordinateLimitForce_copyProperty_damping(self, *args)

    def append_damping(self, *args):
        """
        append_damping(CoordinateLimitForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.CoordinateLimitForce_append_damping(self, *args)

    def constructProperty_damping(self, *args):
        """
        constructProperty_damping(CoordinateLimitForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.CoordinateLimitForce_constructProperty_damping(self, *args)

    def get_damping(self, *args):
        """
        get_damping(CoordinateLimitForce self, int i) -> double const

        Parameters:
            i: int

        get_damping(CoordinateLimitForce self) -> double const &

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_get_damping(self, *args)

    def upd_damping(self, *args):
        """
        upd_damping(CoordinateLimitForce self, int i) -> double

        Parameters:
            i: int

        upd_damping(CoordinateLimitForce self) -> double &

        Parameters:
            self: OpenSim::CoordinateLimitForce *

        """
        return _opensim.CoordinateLimitForce_upd_damping(self, *args)

    def set_damping(self, *args):
        """
        set_damping(CoordinateLimitForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_damping(CoordinateLimitForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.CoordinateLimitForce_set_damping(self, *args)

    def copyProperty_transition(self, *args):
        """
        copyProperty_transition(CoordinateLimitForce self, CoordinateLimitForce source)

        Parameters:
            source: OpenSim::CoordinateLimitForce::Self const &

        """
        return _opensim.CoordinateLimitForce_copyProperty_transition(self, *args)

    def append_transition(self, *args):
        """
        append_transition(CoordinateLimitForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.CoordinateLimitForce_append_transition(self, *args)

    def constructProperty_transition(self, *args):
        """
        constructProperty_transition(CoordinateLimitForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.CoordinateLimitForce_constructProperty_transition(self, *args)

    def get_transition(self, *args):
        """
        get_transition(CoordinateLimitForce self, int i) -> double const

        Parameters:
            i: int

        get_transition(CoordinateLimitForce self) -> double const &

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_get_transition(self, *args)

    def upd_transition(self, *args):
        """
        upd_transition(CoordinateLimitForce self, int i) -> double

        Parameters:
            i: int

        upd_transition(CoordinateLimitForce self) -> double &

        Parameters:
            self: OpenSim::CoordinateLimitForce *

        """
        return _opensim.CoordinateLimitForce_upd_transition(self, *args)

    def set_transition(self, *args):
        """
        set_transition(CoordinateLimitForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_transition(CoordinateLimitForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.CoordinateLimitForce_set_transition(self, *args)

    def copyProperty_compute_dissipation_energy(self, *args):
        """
        copyProperty_compute_dissipation_energy(CoordinateLimitForce self, CoordinateLimitForce source)

        Parameters:
            source: OpenSim::CoordinateLimitForce::Self const &

        """
        return _opensim.CoordinateLimitForce_copyProperty_compute_dissipation_energy(self, *args)

    def append_compute_dissipation_energy(self, *args):
        """
        append_compute_dissipation_energy(CoordinateLimitForce self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.CoordinateLimitForce_append_compute_dissipation_energy(self, *args)

    def constructProperty_compute_dissipation_energy(self, *args):
        """
        constructProperty_compute_dissipation_energy(CoordinateLimitForce self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.CoordinateLimitForce_constructProperty_compute_dissipation_energy(self, *args)

    def get_compute_dissipation_energy(self, *args):
        """
        get_compute_dissipation_energy(CoordinateLimitForce self, int i) -> bool const

        Parameters:
            i: int

        get_compute_dissipation_energy(CoordinateLimitForce self) -> bool const &

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_get_compute_dissipation_energy(self, *args)

    def upd_compute_dissipation_energy(self, *args):
        """
        upd_compute_dissipation_energy(CoordinateLimitForce self, int i) -> bool

        Parameters:
            i: int

        upd_compute_dissipation_energy(CoordinateLimitForce self) -> bool &

        Parameters:
            self: OpenSim::CoordinateLimitForce *

        """
        return _opensim.CoordinateLimitForce_upd_compute_dissipation_energy(self, *args)

    def set_compute_dissipation_energy(self, *args):
        """
        set_compute_dissipation_energy(CoordinateLimitForce self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_compute_dissipation_energy(CoordinateLimitForce self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.CoordinateLimitForce_set_compute_dissipation_energy(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::CoordinateLimitForce self) -> CoordinateLimitForce
        __init__(OpenSim::CoordinateLimitForce self, std::string const & coordName, double q_upper, double K_upper, double q_lower, double K_lower, 
            double damping, double dq, bool computeDissipationEnergy=False) -> CoordinateLimitForce

        Parameters:
            coordName: std::string const &
            q_upper: double
            K_upper: double
            q_lower: double
            K_lower: double
            damping: double
            dq: double
            computeDissipationEnergy: bool

        __init__(OpenSim::CoordinateLimitForce self, std::string const & coordName, double q_upper, double K_upper, double q_lower, double K_lower, 
            double damping, double dq) -> CoordinateLimitForce

        Parameters:
            coordName: std::string const &
            q_upper: double
            K_upper: double
            q_lower: double
            K_lower: double
            damping: double
            dq: double

        """
        this = _opensim.new_CoordinateLimitForce(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_CoordinateLimitForce
    __del__ = lambda self : None;
    def setUpperStiffness(self, *args):
        """
        setUpperStiffness(CoordinateLimitForce self, double aUpperStiffness)

        Parameters:
            aUpperStiffness: double

        """
        return _opensim.CoordinateLimitForce_setUpperStiffness(self, *args)

    def getUpperStiffness(self):
        """
        getUpperStiffness(CoordinateLimitForce self) -> double

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_getUpperStiffness(self)

    def setUpperLimit(self, *args):
        """
        setUpperLimit(CoordinateLimitForce self, double aUpperLimit)

        Parameters:
            aUpperLimit: double

        """
        return _opensim.CoordinateLimitForce_setUpperLimit(self, *args)

    def getUpperLimit(self):
        """
        getUpperLimit(CoordinateLimitForce self) -> double

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_getUpperLimit(self)

    def setLowerStiffness(self, *args):
        """
        setLowerStiffness(CoordinateLimitForce self, double aLowerStiffness)

        Parameters:
            aLowerStiffness: double

        """
        return _opensim.CoordinateLimitForce_setLowerStiffness(self, *args)

    def getLowerStiffness(self):
        """
        getLowerStiffness(CoordinateLimitForce self) -> double

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_getLowerStiffness(self)

    def setLowerLimit(self, *args):
        """
        setLowerLimit(CoordinateLimitForce self, double aLowerLimit)

        Parameters:
            aLowerLimit: double

        """
        return _opensim.CoordinateLimitForce_setLowerLimit(self, *args)

    def getLowerLimit(self):
        """
        getLowerLimit(CoordinateLimitForce self) -> double

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_getLowerLimit(self)

    def setDamping(self, *args):
        """
        setDamping(CoordinateLimitForce self, double aDamping)

        Parameters:
            aDamping: double

        """
        return _opensim.CoordinateLimitForce_setDamping(self, *args)

    def getDamping(self):
        """
        getDamping(CoordinateLimitForce self) -> double

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_getDamping(self)

    def setTransition(self, *args):
        """
        setTransition(CoordinateLimitForce self, double aTransition)

        Parameters:
            aTransition: double

        """
        return _opensim.CoordinateLimitForce_setTransition(self, *args)

    def getTransition(self):
        """
        getTransition(CoordinateLimitForce self) -> double

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_getTransition(self)

    def setComputeDissipationEnergy(self, *args):
        """
        setComputeDissipationEnergy(CoordinateLimitForce self, bool flag)

        Parameters:
            flag: bool

        """
        return _opensim.CoordinateLimitForce_setComputeDissipationEnergy(self, *args)

    def isComputingDissipationEnergy(self):
        """
        isComputingDissipationEnergy(CoordinateLimitForce self) -> bool

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_isComputingDissipationEnergy(self)

    def getPowerDissipation(self, *args):
        """
        getPowerDissipation(CoordinateLimitForce self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.CoordinateLimitForce_getPowerDissipation(self, *args)

    def getDissipatedEnergy(self, *args):
        """
        getDissipatedEnergy(CoordinateLimitForce self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.CoordinateLimitForce_getDissipatedEnergy(self, *args)

    def calcLimitForce(self, *args):
        """
        calcLimitForce(CoordinateLimitForce self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.CoordinateLimitForce_calcLimitForce(self, *args)

    def computePotentialEnergy(self, *args):
        """
        computePotentialEnergy(CoordinateLimitForce self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.CoordinateLimitForce_computePotentialEnergy(self, *args)

    def getRecordLabels(self):
        """
        getRecordLabels(CoordinateLimitForce self) -> ArrayStr

        Parameters:
            self: OpenSim::CoordinateLimitForce const *

        """
        return _opensim.CoordinateLimitForce_getRecordLabels(self)

    def getRecordValues(self, *args):
        """
        getRecordValues(CoordinateLimitForce self, State state) -> ArrayDouble

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.CoordinateLimitForce_getRecordValues(self, *args)

CoordinateLimitForce_swigregister = _opensim.CoordinateLimitForce_swigregister
CoordinateLimitForce_swigregister(CoordinateLimitForce)

def CoordinateLimitForce_safeDownCast(*args):
  """
    CoordinateLimitForce_safeDownCast(OpenSimObject obj) -> CoordinateLimitForce

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.CoordinateLimitForce_safeDownCast(*args)

def CoordinateLimitForce_getClassName():
  """CoordinateLimitForce_getClassName() -> std::string const &"""
  return _opensim.CoordinateLimitForce_getClassName()

class ContactGeometry(ModelComponent):
    """Proxy of C++ OpenSim::ContactGeometry class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponent]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ContactGeometry, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponent]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ContactGeometry, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ContactGeometry

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ContactGeometry_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ContactGeometry self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ContactGeometry_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ContactGeometry_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ContactGeometry self) -> ContactGeometry

        Parameters:
            self: OpenSim::ContactGeometry const *

        """
        return _opensim.ContactGeometry_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ContactGeometry self) -> std::string const &

        Parameters:
            self: OpenSim::ContactGeometry const *

        """
        return _opensim.ContactGeometry_getConcreteClassName(self)

    def copyProperty_body_name(self, *args):
        """
        copyProperty_body_name(ContactGeometry self, ContactGeometry source)

        Parameters:
            source: OpenSim::ContactGeometry::Self const &

        """
        return _opensim.ContactGeometry_copyProperty_body_name(self, *args)

    def append_body_name(self, *args):
        """
        append_body_name(ContactGeometry self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ContactGeometry_append_body_name(self, *args)

    def constructProperty_body_name(self, *args):
        """
        constructProperty_body_name(ContactGeometry self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ContactGeometry_constructProperty_body_name(self, *args)

    def get_body_name(self, *args):
        """
        get_body_name(ContactGeometry self, int i) -> std::string const

        Parameters:
            i: int

        get_body_name(ContactGeometry self) -> std::string const &

        Parameters:
            self: OpenSim::ContactGeometry const *

        """
        return _opensim.ContactGeometry_get_body_name(self, *args)

    def upd_body_name(self, *args):
        """
        upd_body_name(ContactGeometry self, int i) -> std::string

        Parameters:
            i: int

        upd_body_name(ContactGeometry self) -> std::string &

        Parameters:
            self: OpenSim::ContactGeometry *

        """
        return _opensim.ContactGeometry_upd_body_name(self, *args)

    def set_body_name(self, *args):
        """
        set_body_name(ContactGeometry self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body_name(ContactGeometry self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ContactGeometry_set_body_name(self, *args)

    def copyProperty_location(self, *args):
        """
        copyProperty_location(ContactGeometry self, ContactGeometry source)

        Parameters:
            source: OpenSim::ContactGeometry::Self const &

        """
        return _opensim.ContactGeometry_copyProperty_location(self, *args)

    def append_location(self, *args):
        """
        append_location(ContactGeometry self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ContactGeometry_append_location(self, *args)

    def constructProperty_location(self, *args):
        """
        constructProperty_location(ContactGeometry self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.ContactGeometry_constructProperty_location(self, *args)

    def get_location(self, *args):
        """
        get_location(ContactGeometry self, int i) -> Vec3

        Parameters:
            i: int

        get_location(ContactGeometry self) -> Vec3

        Parameters:
            self: OpenSim::ContactGeometry const *

        """
        return _opensim.ContactGeometry_get_location(self, *args)

    def upd_location(self, *args):
        """
        upd_location(ContactGeometry self, int i) -> Vec3

        Parameters:
            i: int

        upd_location(ContactGeometry self) -> Vec3

        Parameters:
            self: OpenSim::ContactGeometry *

        """
        return _opensim.ContactGeometry_upd_location(self, *args)

    def set_location(self, *args):
        """
        set_location(ContactGeometry self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location(ContactGeometry self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ContactGeometry_set_location(self, *args)

    def copyProperty_orientation(self, *args):
        """
        copyProperty_orientation(ContactGeometry self, ContactGeometry source)

        Parameters:
            source: OpenSim::ContactGeometry::Self const &

        """
        return _opensim.ContactGeometry_copyProperty_orientation(self, *args)

    def append_orientation(self, *args):
        """
        append_orientation(ContactGeometry self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ContactGeometry_append_orientation(self, *args)

    def constructProperty_orientation(self, *args):
        """
        constructProperty_orientation(ContactGeometry self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.ContactGeometry_constructProperty_orientation(self, *args)

    def get_orientation(self, *args):
        """
        get_orientation(ContactGeometry self, int i) -> Vec3

        Parameters:
            i: int

        get_orientation(ContactGeometry self) -> Vec3

        Parameters:
            self: OpenSim::ContactGeometry const *

        """
        return _opensim.ContactGeometry_get_orientation(self, *args)

    def upd_orientation(self, *args):
        """
        upd_orientation(ContactGeometry self, int i) -> Vec3

        Parameters:
            i: int

        upd_orientation(ContactGeometry self) -> Vec3

        Parameters:
            self: OpenSim::ContactGeometry *

        """
        return _opensim.ContactGeometry_upd_orientation(self, *args)

    def set_orientation(self, *args):
        """
        set_orientation(ContactGeometry self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_orientation(ContactGeometry self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ContactGeometry_set_orientation(self, *args)

    def copyProperty_display_preference(self, *args):
        """
        copyProperty_display_preference(ContactGeometry self, ContactGeometry source)

        Parameters:
            source: OpenSim::ContactGeometry::Self const &

        """
        return _opensim.ContactGeometry_copyProperty_display_preference(self, *args)

    def append_display_preference(self, *args):
        """
        append_display_preference(ContactGeometry self, int const & value) -> int

        Parameters:
            value: int const &

        """
        return _opensim.ContactGeometry_append_display_preference(self, *args)

    def constructProperty_display_preference(self, *args):
        """
        constructProperty_display_preference(ContactGeometry self, int const & initValue)

        Parameters:
            initValue: int const &

        """
        return _opensim.ContactGeometry_constructProperty_display_preference(self, *args)

    def get_display_preference(self, *args):
        """
        get_display_preference(ContactGeometry self, int i) -> int const

        Parameters:
            i: int

        get_display_preference(ContactGeometry self) -> int const &

        Parameters:
            self: OpenSim::ContactGeometry const *

        """
        return _opensim.ContactGeometry_get_display_preference(self, *args)

    def upd_display_preference(self, *args):
        """
        upd_display_preference(ContactGeometry self, int i) -> int

        Parameters:
            i: int

        upd_display_preference(ContactGeometry self) -> int &

        Parameters:
            self: OpenSim::ContactGeometry *

        """
        return _opensim.ContactGeometry_upd_display_preference(self, *args)

    def set_display_preference(self, *args):
        """
        set_display_preference(ContactGeometry self, int i, int const & value)

        Parameters:
            i: int
            value: int const &

        set_display_preference(ContactGeometry self, int const & value)

        Parameters:
            value: int const &

        """
        return _opensim.ContactGeometry_set_display_preference(self, *args)

    def copyProperty_color(self, *args):
        """
        copyProperty_color(ContactGeometry self, ContactGeometry source)

        Parameters:
            source: OpenSim::ContactGeometry::Self const &

        """
        return _opensim.ContactGeometry_copyProperty_color(self, *args)

    def get_color(self, *args):
        """
        get_color(ContactGeometry self, int i) -> double const &

        Parameters:
            i: int

        """
        return _opensim.ContactGeometry_get_color(self, *args)

    def upd_color(self, *args):
        """
        upd_color(ContactGeometry self, int i) -> double &

        Parameters:
            i: int

        """
        return _opensim.ContactGeometry_upd_color(self, *args)

    def set_color(self, *args):
        """
        set_color(ContactGeometry self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        """
        return _opensim.ContactGeometry_set_color(self, *args)

    def append_color(self, *args):
        """
        append_color(ContactGeometry self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ContactGeometry_append_color(self, *args)

    def getLocation(self):
        """
        getLocation(ContactGeometry self) -> Vec3

        Parameters:
            self: OpenSim::ContactGeometry const *

        """
        return _opensim.ContactGeometry_getLocation(self)

    def setLocation(self, *args):
        """
        setLocation(ContactGeometry self, Vec3 location)

        Parameters:
            location: SimTK::Vec3 const &

        """
        return _opensim.ContactGeometry_setLocation(self, *args)

    def getOrientation(self):
        """
        getOrientation(ContactGeometry self) -> Vec3

        Parameters:
            self: OpenSim::ContactGeometry const *

        """
        return _opensim.ContactGeometry_getOrientation(self)

    def setOrientation(self, *args):
        """
        setOrientation(ContactGeometry self, Vec3 orientation)

        Parameters:
            orientation: SimTK::Vec3 const &

        """
        return _opensim.ContactGeometry_setOrientation(self, *args)

    def getBody(self):
        """
        getBody(ContactGeometry self) -> Body

        Parameters:
            self: OpenSim::ContactGeometry *

        """
        return _opensim.ContactGeometry_getBody(self)

    def setBody(self, *args):
        """
        setBody(ContactGeometry self, Body body)

        Parameters:
            body: OpenSim::Body &

        """
        return _opensim.ContactGeometry_setBody(self, *args)

    def getBodyName(self):
        """
        getBodyName(ContactGeometry self) -> std::string const &

        Parameters:
            self: OpenSim::ContactGeometry *

        """
        return _opensim.ContactGeometry_getBodyName(self)

    def setBodyName(self, *args):
        """
        setBodyName(ContactGeometry self, std::string const & name)

        Parameters:
            name: std::string const &

        """
        return _opensim.ContactGeometry_setBodyName(self, *args)

    def getDisplayPreference(self):
        """
        getDisplayPreference(ContactGeometry self) -> int const

        Parameters:
            self: OpenSim::ContactGeometry *

        """
        return _opensim.ContactGeometry_getDisplayPreference(self)

    def setDisplayPreference(self, *args):
        """
        setDisplayPreference(ContactGeometry self, int const dispPref)

        Parameters:
            dispPref: int const

        """
        return _opensim.ContactGeometry_setDisplayPreference(self, *args)

    def createSimTKContactGeometry(self):
        """
        createSimTKContactGeometry(ContactGeometry self) -> SimTK::ContactGeometry

        Parameters:
            self: OpenSim::ContactGeometry *

        """
        return _opensim.ContactGeometry_createSimTKContactGeometry(self)

    def getTransform(self):
        """
        getTransform(ContactGeometry self) -> Transform

        Parameters:
            self: OpenSim::ContactGeometry *

        """
        return _opensim.ContactGeometry_getTransform(self)

    def scale(self, *args):
        """
        scale(ContactGeometry self, ScaleSet aScaleSet)

        Parameters:
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.ContactGeometry_scale(self, *args)

    def getDisplayer(self):
        """
        getDisplayer(ContactGeometry self) -> VisibleObject

        Parameters:
            self: OpenSim::ContactGeometry const *

        """
        return _opensim.ContactGeometry_getDisplayer(self)

    def updDisplayer(self):
        """
        updDisplayer(ContactGeometry self) -> VisibleObject

        Parameters:
            self: OpenSim::ContactGeometry *

        """
        return _opensim.ContactGeometry_updDisplayer(self)

    def updateGeometry(self):
        """
        updateGeometry(ContactGeometry self)

        Parameters:
            self: OpenSim::ContactGeometry *

        """
        return _opensim.ContactGeometry_updateGeometry(self)

    __swig_destroy__ = _opensim.delete_ContactGeometry
    __del__ = lambda self : None;
ContactGeometry_swigregister = _opensim.ContactGeometry_swigregister
ContactGeometry_swigregister(ContactGeometry)

def ContactGeometry_safeDownCast(*args):
  """
    ContactGeometry_safeDownCast(OpenSimObject obj) -> ContactGeometry

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ContactGeometry_safeDownCast(*args)

def ContactGeometry_getClassName():
  """ContactGeometry_getClassName() -> std::string const &"""
  return _opensim.ContactGeometry_getClassName()

class SetContactGeometry(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::ContactGeometry)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetContactGeometry, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetContactGeometry, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetContactGeometry

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetContactGeometry_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetContactGeometry self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetContactGeometry_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetContactGeometry_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetContactGeometry self) -> SetContactGeometry

        Parameters:
            self: OpenSim::Set< OpenSim::ContactGeometry > const *

        """
        return _opensim.SetContactGeometry_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetContactGeometry self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::ContactGeometry > const *

        """
        return _opensim.SetContactGeometry_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetContactGeometry
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::ContactGeometry)> self) -> SetContactGeometry
        __init__(OpenSim::Set<(OpenSim::ContactGeometry)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetContactGeometry

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::ContactGeometry)> self, std::string const & aFileName) -> SetContactGeometry

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::ContactGeometry)> self, SetContactGeometry aSet) -> SetContactGeometry

        Parameters:
            aSet: OpenSim::Set< OpenSim::ContactGeometry > const &

        """
        this = _opensim.new_SetContactGeometry(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetContactGeometry self)

        Parameters:
            self: OpenSim::Set< OpenSim::ContactGeometry > *

        """
        return _opensim.SetContactGeometry_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetContactGeometry self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetContactGeometry_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetContactGeometry self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetContactGeometry_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetContactGeometry self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::ContactGeometry > const *

        """
        return _opensim.SetContactGeometry_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetContactGeometry self, ContactGeometry aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::ContactGeometry const *
            aStartIndex: int

        getIndex(SetContactGeometry self, ContactGeometry aObject) -> int

        Parameters:
            aObject: OpenSim::ContactGeometry const *

        getIndex(SetContactGeometry self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetContactGeometry self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetContactGeometry_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetContactGeometry self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetContactGeometry_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetContactGeometry self, ContactGeometry aObject) -> bool

        Parameters:
            aObject: OpenSim::ContactGeometry *

        """
        return _opensim.SetContactGeometry_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetContactGeometry self, ContactGeometry aObject) -> bool

        Parameters:
            aObject: OpenSim::ContactGeometry const &

        """
        return _opensim.SetContactGeometry_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetContactGeometry self, int aIndex, ContactGeometry aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ContactGeometry *

        """
        return _opensim.SetContactGeometry_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetContactGeometry self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetContactGeometry self, ContactGeometry aObject) -> bool

        Parameters:
            aObject: OpenSim::ContactGeometry const *

        """
        return _opensim.SetContactGeometry_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetContactGeometry self)

        Parameters:
            self: OpenSim::Set< OpenSim::ContactGeometry > *

        """
        return _opensim.SetContactGeometry_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetContactGeometry self, int aIndex, ContactGeometry aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ContactGeometry *
            preserveGroups: bool

        set(SetContactGeometry self, int aIndex, ContactGeometry aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ContactGeometry *

        """
        return _opensim.SetContactGeometry_set(self, *args)

    def get(self, *args):
        """
        get(SetContactGeometry self, int aIndex) -> ContactGeometry

        Parameters:
            aIndex: int

        get(SetContactGeometry self, std::string const & aName) -> ContactGeometry

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetContactGeometry_get(self, *args)

    def contains(self, *args):
        """
        contains(SetContactGeometry self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetContactGeometry_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetContactGeometry self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetContactGeometry_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetContactGeometry self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::ContactGeometry > const *

        """
        return _opensim.SetContactGeometry_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetContactGeometry self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetContactGeometry_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetContactGeometry self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetContactGeometry_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetContactGeometry self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetContactGeometry_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetContactGeometry self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetContactGeometry_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetContactGeometry self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetContactGeometry_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetContactGeometry self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetContactGeometry self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetContactGeometry_getGroup(self, *args)

SetContactGeometry_swigregister = _opensim.SetContactGeometry_swigregister
SetContactGeometry_swigregister(SetContactGeometry)

def SetContactGeometry_safeDownCast(*args):
  """
    SetContactGeometry_safeDownCast(OpenSimObject obj) -> SetContactGeometry

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetContactGeometry_safeDownCast(*args)

def SetContactGeometry_getClassName():
  """SetContactGeometry_getClassName() -> std::string const &"""
  return _opensim.SetContactGeometry_getClassName()

class ModelComponentSetContactGeometry(SetContactGeometry):
    """Proxy of C++ OpenSim::ModelComponentSet<(OpenSim::ContactGeometry)> class"""
    __swig_setmethods__ = {}
    for _s in [SetContactGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ModelComponentSetContactGeometry, name, value)
    __swig_getmethods__ = {}
    for _s in [SetContactGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ModelComponentSetContactGeometry, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ModelComponentSetContactGeometry

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ModelComponentSetContactGeometry_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ModelComponentSetContactGeometry self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ModelComponentSetContactGeometry_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ModelComponentSetContactGeometry_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ModelComponentSetContactGeometry self) -> ModelComponentSetContactGeometry

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::ContactGeometry > const *

        """
        return _opensim.ModelComponentSetContactGeometry_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ModelComponentSetContactGeometry self) -> std::string const &

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::ContactGeometry > const *

        """
        return _opensim.ModelComponentSetContactGeometry_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ModelComponentSet<(OpenSim::ContactGeometry)> self) -> ModelComponentSetContactGeometry
        __init__(OpenSim::ModelComponentSet<(OpenSim::ContactGeometry)> self, Model model) -> ModelComponentSetContactGeometry

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ModelComponentSet<(OpenSim::ContactGeometry)> self, Model model, std::string const & fileName, bool aUpdateFromXMLNode=True) -> ModelComponentSetContactGeometry

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ModelComponentSet<(OpenSim::ContactGeometry)> self, Model model, std::string const & fileName) -> ModelComponentSetContactGeometry

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &

        __init__(OpenSim::ModelComponentSet<(OpenSim::ContactGeometry)> self, ModelComponentSetContactGeometry source) -> ModelComponentSetContactGeometry

        Parameters:
            source: OpenSim::ModelComponentSet< OpenSim::ContactGeometry > const &

        """
        this = _opensim.new_ModelComponentSetContactGeometry(*args)
        try: self.this.append(this)
        except: self.this = this
    def insert(self, *args):
        """
        insert(ModelComponentSetContactGeometry self, int aIndex, ContactGeometry aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ContactGeometry *

        """
        return _opensim.ModelComponentSetContactGeometry_insert(self, *args)

    def set(self, *args):
        """
        set(ModelComponentSetContactGeometry self, int aIndex, ContactGeometry aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ContactGeometry *
            preserveGroups: bool

        set(ModelComponentSetContactGeometry self, int aIndex, ContactGeometry aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ContactGeometry *

        """
        return _opensim.ModelComponentSetContactGeometry_set(self, *args)

    def invokeConnectToModel(self, *args):
        """
        invokeConnectToModel(ModelComponentSetContactGeometry self, Model model)

        Parameters:
            model: OpenSim::Model &

        """
        return _opensim.ModelComponentSetContactGeometry_invokeConnectToModel(self, *args)

    def invokeAddToSystem(self, *args):
        """
        invokeAddToSystem(ModelComponentSetContactGeometry self, SimTK::MultibodySystem & system)

        Parameters:
            system: SimTK::MultibodySystem &

        """
        return _opensim.ModelComponentSetContactGeometry_invokeAddToSystem(self, *args)

    def invokeInitStateFromProperties(self, *args):
        """
        invokeInitStateFromProperties(ModelComponentSetContactGeometry self, State state)

        Parameters:
            state: SimTK::State &

        """
        return _opensim.ModelComponentSetContactGeometry_invokeInitStateFromProperties(self, *args)

    def invokeSetPropertiesFromState(self, *args):
        """
        invokeSetPropertiesFromState(ModelComponentSetContactGeometry self, State state)

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ModelComponentSetContactGeometry_invokeSetPropertiesFromState(self, *args)

    def invokeGenerateDecorations(self, *args):
        """
        invokeGenerateDecorations(ModelComponentSetContactGeometry self, bool fixed, ModelDisplayHints hints, State state, ArrayDecorativeGeometry appendToThis)

        Parameters:
            fixed: bool
            hints: OpenSim::ModelDisplayHints const &
            state: SimTK::State const &
            appendToThis: SimTK::Array_< SimTK::DecorativeGeometry,unsigned int > &

        """
        return _opensim.ModelComponentSetContactGeometry_invokeGenerateDecorations(self, *args)

    __swig_destroy__ = _opensim.delete_ModelComponentSetContactGeometry
    __del__ = lambda self : None;
ModelComponentSetContactGeometry_swigregister = _opensim.ModelComponentSetContactGeometry_swigregister
ModelComponentSetContactGeometry_swigregister(ModelComponentSetContactGeometry)

def ModelComponentSetContactGeometry_safeDownCast(*args):
  """
    ModelComponentSetContactGeometry_safeDownCast(OpenSimObject obj) -> ModelComponentSetContactGeometry

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ModelComponentSetContactGeometry_safeDownCast(*args)

def ModelComponentSetContactGeometry_getClassName():
  """ModelComponentSetContactGeometry_getClassName() -> std::string const &"""
  return _opensim.ModelComponentSetContactGeometry_getClassName()

class ContactGeometrySet(ModelComponentSetContactGeometry):
    """Proxy of C++ OpenSim::ContactGeometrySet class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponentSetContactGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ContactGeometrySet, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponentSetContactGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ContactGeometrySet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ContactGeometrySet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ContactGeometrySet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ContactGeometrySet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ContactGeometrySet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ContactGeometrySet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ContactGeometrySet self) -> ContactGeometrySet

        Parameters:
            self: OpenSim::ContactGeometrySet const *

        """
        return _opensim.ContactGeometrySet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ContactGeometrySet self) -> std::string const &

        Parameters:
            self: OpenSim::ContactGeometrySet const *

        """
        return _opensim.ContactGeometrySet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ContactGeometrySet self) -> ContactGeometrySet
        __init__(OpenSim::ContactGeometrySet self, Model model) -> ContactGeometrySet

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ContactGeometrySet self, Model model, std::string const & aFileName, bool aUpdateFromXMLNode) -> ContactGeometrySet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ContactGeometrySet self, ContactGeometrySet aContactGeometrySet) -> ContactGeometrySet

        Parameters:
            aContactGeometrySet: OpenSim::ContactGeometrySet const &

        """
        this = _opensim.new_ContactGeometrySet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ContactGeometrySet
    __del__ = lambda self : None;
    def scale(self, *args):
        """
        scale(ContactGeometrySet self, ScaleSet aScaleSet)

        Parameters:
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.ContactGeometrySet_scale(self, *args)

    def adoptAndAppend(self, aContactGeometry):
        aContactGeometry._markAdopted()
        return super(ContactGeometrySet, self).adoptAndAppend(aContactGeometry)

ContactGeometrySet_swigregister = _opensim.ContactGeometrySet_swigregister
ContactGeometrySet_swigregister(ContactGeometrySet)

def ContactGeometrySet_safeDownCast(*args):
  """
    ContactGeometrySet_safeDownCast(OpenSimObject obj) -> ContactGeometrySet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ContactGeometrySet_safeDownCast(*args)

def ContactGeometrySet_getClassName():
  """ContactGeometrySet_getClassName() -> std::string const &"""
  return _opensim.ContactGeometrySet_getClassName()

class ContactHalfSpace(ContactGeometry):
    """Proxy of C++ OpenSim::ContactHalfSpace class"""
    __swig_setmethods__ = {}
    for _s in [ContactGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ContactHalfSpace, name, value)
    __swig_getmethods__ = {}
    for _s in [ContactGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ContactHalfSpace, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ContactHalfSpace

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ContactHalfSpace_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ContactHalfSpace self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ContactHalfSpace_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ContactHalfSpace_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ContactHalfSpace self) -> ContactHalfSpace

        Parameters:
            self: OpenSim::ContactHalfSpace const *

        """
        return _opensim.ContactHalfSpace_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ContactHalfSpace self) -> std::string const &

        Parameters:
            self: OpenSim::ContactHalfSpace const *

        """
        return _opensim.ContactHalfSpace_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ContactHalfSpace self) -> ContactHalfSpace
        __init__(OpenSim::ContactHalfSpace self, Vec3 location, Vec3 orientation, Body body) -> ContactHalfSpace

        Parameters:
            location: SimTK::Vec3 const &
            orientation: SimTK::Vec3 const &
            body: OpenSim::Body &

        __init__(OpenSim::ContactHalfSpace self, Vec3 location, Vec3 orientation, Body body, std::string const & name) -> ContactHalfSpace

        Parameters:
            location: SimTK::Vec3 const &
            orientation: SimTK::Vec3 const &
            body: OpenSim::Body &
            name: std::string const &

        __init__(OpenSim::ContactHalfSpace self, ContactHalfSpace geom) -> ContactHalfSpace

        Parameters:
            geom: OpenSim::ContactHalfSpace const &

        """
        this = _opensim.new_ContactHalfSpace(*args)
        try: self.this.append(this)
        except: self.this = this
    def createSimTKContactGeometry(self):
        """
        createSimTKContactGeometry(ContactHalfSpace self) -> SimTK::ContactGeometry

        Parameters:
            self: OpenSim::ContactHalfSpace *

        """
        return _opensim.ContactHalfSpace_createSimTKContactGeometry(self)

    __swig_destroy__ = _opensim.delete_ContactHalfSpace
    __del__ = lambda self : None;
ContactHalfSpace_swigregister = _opensim.ContactHalfSpace_swigregister
ContactHalfSpace_swigregister(ContactHalfSpace)

def ContactHalfSpace_safeDownCast(*args):
  """
    ContactHalfSpace_safeDownCast(OpenSimObject obj) -> ContactHalfSpace

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ContactHalfSpace_safeDownCast(*args)

def ContactHalfSpace_getClassName():
  """ContactHalfSpace_getClassName() -> std::string const &"""
  return _opensim.ContactHalfSpace_getClassName()

class ContactMesh(ContactGeometry):
    """Proxy of C++ OpenSim::ContactMesh class"""
    __swig_setmethods__ = {}
    for _s in [ContactGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ContactMesh, name, value)
    __swig_getmethods__ = {}
    for _s in [ContactGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ContactMesh, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ContactMesh

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ContactMesh_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ContactMesh self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ContactMesh_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ContactMesh_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ContactMesh self) -> ContactMesh

        Parameters:
            self: OpenSim::ContactMesh const *

        """
        return _opensim.ContactMesh_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ContactMesh self) -> std::string const &

        Parameters:
            self: OpenSim::ContactMesh const *

        """
        return _opensim.ContactMesh_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ContactMesh self) -> ContactMesh
        __init__(OpenSim::ContactMesh self, std::string const & filename, Vec3 location, Vec3 orientation, Body body) -> ContactMesh

        Parameters:
            filename: std::string const &
            location: SimTK::Vec3 const &
            orientation: SimTK::Vec3 const &
            body: OpenSim::Body &

        __init__(OpenSim::ContactMesh self, std::string const & filename, Vec3 location, Vec3 orientation, Body body, std::string const & name) -> ContactMesh

        Parameters:
            filename: std::string const &
            location: SimTK::Vec3 const &
            orientation: SimTK::Vec3 const &
            body: OpenSim::Body &
            name: std::string const &

        __init__(OpenSim::ContactMesh self, ContactMesh geom) -> ContactMesh

        Parameters:
            geom: OpenSim::ContactMesh const &

        """
        this = _opensim.new_ContactMesh(*args)
        try: self.this.append(this)
        except: self.this = this
    def copyData(self, *args):
        """
        copyData(ContactMesh self, ContactMesh source)

        Parameters:
            source: OpenSim::ContactMesh const &

        """
        return _opensim.ContactMesh_copyData(self, *args)

    def createSimTKContactGeometry(self):
        """
        createSimTKContactGeometry(ContactMesh self) -> SimTK::ContactGeometry

        Parameters:
            self: OpenSim::ContactMesh *

        """
        return _opensim.ContactMesh_createSimTKContactGeometry(self)

    def getFilename(self):
        """
        getFilename(ContactMesh self) -> std::string const &

        Parameters:
            self: OpenSim::ContactMesh const *

        """
        return _opensim.ContactMesh_getFilename(self)

    def setFilename(self, *args):
        """
        setFilename(ContactMesh self, std::string const & filename)

        Parameters:
            filename: std::string const &

        """
        return _opensim.ContactMesh_setFilename(self, *args)

    __swig_destroy__ = _opensim.delete_ContactMesh
    __del__ = lambda self : None;
ContactMesh_swigregister = _opensim.ContactMesh_swigregister
ContactMesh_swigregister(ContactMesh)

def ContactMesh_safeDownCast(*args):
  """
    ContactMesh_safeDownCast(OpenSimObject obj) -> ContactMesh

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ContactMesh_safeDownCast(*args)

def ContactMesh_getClassName():
  """ContactMesh_getClassName() -> std::string const &"""
  return _opensim.ContactMesh_getClassName()

class ContactSphere(ContactGeometry):
    """Proxy of C++ OpenSim::ContactSphere class"""
    __swig_setmethods__ = {}
    for _s in [ContactGeometry]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ContactSphere, name, value)
    __swig_getmethods__ = {}
    for _s in [ContactGeometry]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ContactSphere, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ContactSphere

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ContactSphere_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ContactSphere self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ContactSphere_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ContactSphere_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ContactSphere self) -> ContactSphere

        Parameters:
            self: OpenSim::ContactSphere const *

        """
        return _opensim.ContactSphere_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ContactSphere self) -> std::string const &

        Parameters:
            self: OpenSim::ContactSphere const *

        """
        return _opensim.ContactSphere_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ContactSphere self) -> ContactSphere
        __init__(OpenSim::ContactSphere self, double radius, Vec3 location, Body body) -> ContactSphere

        Parameters:
            radius: double
            location: SimTK::Vec3 const &
            body: OpenSim::Body &

        __init__(OpenSim::ContactSphere self, double radius, Vec3 location, Body body, std::string const & name) -> ContactSphere

        Parameters:
            radius: double
            location: SimTK::Vec3 const &
            body: OpenSim::Body &
            name: std::string const &

        __init__(OpenSim::ContactSphere self, ContactSphere geom) -> ContactSphere

        Parameters:
            geom: OpenSim::ContactSphere const &

        """
        this = _opensim.new_ContactSphere(*args)
        try: self.this.append(this)
        except: self.this = this
    def copyData(self, *args):
        """
        copyData(ContactSphere self, ContactSphere source)

        Parameters:
            source: OpenSim::ContactSphere const &

        """
        return _opensim.ContactSphere_copyData(self, *args)

    def createSimTKContactGeometry(self):
        """
        createSimTKContactGeometry(ContactSphere self) -> SimTK::ContactGeometry

        Parameters:
            self: OpenSim::ContactSphere *

        """
        return _opensim.ContactSphere_createSimTKContactGeometry(self)

    def getRadius(self):
        """
        getRadius(ContactSphere self) -> double

        Parameters:
            self: OpenSim::ContactSphere const *

        """
        return _opensim.ContactSphere_getRadius(self)

    def setRadius(self, *args):
        """
        setRadius(ContactSphere self, double radius)

        Parameters:
            radius: double

        """
        return _opensim.ContactSphere_setRadius(self, *args)

    __swig_destroy__ = _opensim.delete_ContactSphere
    __del__ = lambda self : None;
ContactSphere_swigregister = _opensim.ContactSphere_swigregister
ContactSphere_swigregister(ContactSphere)

def ContactSphere_safeDownCast(*args):
  """
    ContactSphere_safeDownCast(OpenSimObject obj) -> ContactSphere

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ContactSphere_safeDownCast(*args)

def ContactSphere_getClassName():
  """ContactSphere_getClassName() -> std::string const &"""
  return _opensim.ContactSphere_getClassName()

class ElasticFoundationForce(Force):
    """Proxy of C++ OpenSim::ElasticFoundationForce class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ElasticFoundationForce, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ElasticFoundationForce, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ElasticFoundationForce

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ElasticFoundationForce_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ElasticFoundationForce self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ElasticFoundationForce_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ElasticFoundationForce_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ElasticFoundationForce self) -> ElasticFoundationForce

        Parameters:
            self: OpenSim::ElasticFoundationForce const *

        """
        return _opensim.ElasticFoundationForce_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ElasticFoundationForce self) -> std::string const &

        Parameters:
            self: OpenSim::ElasticFoundationForce const *

        """
        return _opensim.ElasticFoundationForce_getConcreteClassName(self)

    def copyProperty_contact_parameters(self, *args):
        """
        copyProperty_contact_parameters(ElasticFoundationForce self, ElasticFoundationForce source)

        Parameters:
            source: OpenSim::ElasticFoundationForce::Self const &

        """
        return _opensim.ElasticFoundationForce_copyProperty_contact_parameters(self, *args)

    def append_contact_parameters(self, *args):
        """
        append_contact_parameters(ElasticFoundationForce self, OpenSim::ElasticFoundationForce::ContactParametersSet const & value) -> int

        Parameters:
            value: OpenSim::ElasticFoundationForce::ContactParametersSet const &

        """
        return _opensim.ElasticFoundationForce_append_contact_parameters(self, *args)

    def constructProperty_contact_parameters(self, *args):
        """
        constructProperty_contact_parameters(ElasticFoundationForce self, OpenSim::ElasticFoundationForce::ContactParametersSet const & initValue)

        Parameters:
            initValue: OpenSim::ElasticFoundationForce::ContactParametersSet const &

        """
        return _opensim.ElasticFoundationForce_constructProperty_contact_parameters(self, *args)

    def get_contact_parameters(self, *args):
        """
        get_contact_parameters(ElasticFoundationForce self, int i) -> OpenSim::ElasticFoundationForce::ContactParametersSet const

        Parameters:
            i: int

        get_contact_parameters(ElasticFoundationForce self) -> OpenSim::ElasticFoundationForce::ContactParametersSet const &

        Parameters:
            self: OpenSim::ElasticFoundationForce const *

        """
        return _opensim.ElasticFoundationForce_get_contact_parameters(self, *args)

    def upd_contact_parameters(self, *args):
        """
        upd_contact_parameters(ElasticFoundationForce self, int i) -> OpenSim::ElasticFoundationForce::ContactParametersSet

        Parameters:
            i: int

        upd_contact_parameters(ElasticFoundationForce self) -> OpenSim::ElasticFoundationForce::ContactParametersSet &

        Parameters:
            self: OpenSim::ElasticFoundationForce *

        """
        return _opensim.ElasticFoundationForce_upd_contact_parameters(self, *args)

    def set_contact_parameters(self, *args):
        """
        set_contact_parameters(ElasticFoundationForce self, int i, OpenSim::ElasticFoundationForce::ContactParametersSet const & value)

        Parameters:
            i: int
            value: OpenSim::ElasticFoundationForce::ContactParametersSet const &

        set_contact_parameters(ElasticFoundationForce self, OpenSim::ElasticFoundationForce::ContactParametersSet const & value)

        Parameters:
            value: OpenSim::ElasticFoundationForce::ContactParametersSet const &

        """
        return _opensim.ElasticFoundationForce_set_contact_parameters(self, *args)

    def copyProperty_transition_velocity(self, *args):
        """
        copyProperty_transition_velocity(ElasticFoundationForce self, ElasticFoundationForce source)

        Parameters:
            source: OpenSim::ElasticFoundationForce::Self const &

        """
        return _opensim.ElasticFoundationForce_copyProperty_transition_velocity(self, *args)

    def append_transition_velocity(self, *args):
        """
        append_transition_velocity(ElasticFoundationForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ElasticFoundationForce_append_transition_velocity(self, *args)

    def constructProperty_transition_velocity(self, *args):
        """
        constructProperty_transition_velocity(ElasticFoundationForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ElasticFoundationForce_constructProperty_transition_velocity(self, *args)

    def get_transition_velocity(self, *args):
        """
        get_transition_velocity(ElasticFoundationForce self, int i) -> double const

        Parameters:
            i: int

        get_transition_velocity(ElasticFoundationForce self) -> double const &

        Parameters:
            self: OpenSim::ElasticFoundationForce const *

        """
        return _opensim.ElasticFoundationForce_get_transition_velocity(self, *args)

    def upd_transition_velocity(self, *args):
        """
        upd_transition_velocity(ElasticFoundationForce self, int i) -> double

        Parameters:
            i: int

        upd_transition_velocity(ElasticFoundationForce self) -> double &

        Parameters:
            self: OpenSim::ElasticFoundationForce *

        """
        return _opensim.ElasticFoundationForce_upd_transition_velocity(self, *args)

    def set_transition_velocity(self, *args):
        """
        set_transition_velocity(ElasticFoundationForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_transition_velocity(ElasticFoundationForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ElasticFoundationForce_set_transition_velocity(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ElasticFoundationForce self) -> ElasticFoundationForce
        __init__(OpenSim::ElasticFoundationForce self, OpenSim::ElasticFoundationForce::ContactParameters * params) -> ElasticFoundationForce

        Parameters:
            params: OpenSim::ElasticFoundationForce::ContactParameters *

        """
        this = _opensim.new_ElasticFoundationForce(*args)
        try: self.this.append(this)
        except: self.this = this
    def addToSystem(self, *args):
        """
        addToSystem(ElasticFoundationForce self, SimTK::MultibodySystem & system)

        Parameters:
            system: SimTK::MultibodySystem &

        """
        return _opensim.ElasticFoundationForce_addToSystem(self, *args)

    def updContactParametersSet(self):
        """
        updContactParametersSet(ElasticFoundationForce self) -> OpenSim::ElasticFoundationForce::ContactParametersSet &

        Parameters:
            self: OpenSim::ElasticFoundationForce *

        """
        return _opensim.ElasticFoundationForce_updContactParametersSet(self)

    def getContactParametersSet(self):
        """
        getContactParametersSet(ElasticFoundationForce self) -> OpenSim::ElasticFoundationForce::ContactParametersSet const &

        Parameters:
            self: OpenSim::ElasticFoundationForce *

        """
        return _opensim.ElasticFoundationForce_getContactParametersSet(self)

    def addContactParameters(self, *args):
        """
        addContactParameters(ElasticFoundationForce self, OpenSim::ElasticFoundationForce::ContactParameters * params)

        Parameters:
            params: OpenSim::ElasticFoundationForce::ContactParameters *

        """
        return _opensim.ElasticFoundationForce_addContactParameters(self, *args)

    def getTransitionVelocity(self):
        """
        getTransitionVelocity(ElasticFoundationForce self) -> double

        Parameters:
            self: OpenSim::ElasticFoundationForce const *

        """
        return _opensim.ElasticFoundationForce_getTransitionVelocity(self)

    def setTransitionVelocity(self, *args):
        """
        setTransitionVelocity(ElasticFoundationForce self, double velocity)

        Parameters:
            velocity: double

        """
        return _opensim.ElasticFoundationForce_setTransitionVelocity(self, *args)

    def getStiffness(self):
        """
        getStiffness(ElasticFoundationForce self) -> double

        Parameters:
            self: OpenSim::ElasticFoundationForce *

        """
        return _opensim.ElasticFoundationForce_getStiffness(self)

    def setStiffness(self, *args):
        """
        setStiffness(ElasticFoundationForce self, double stiffness)

        Parameters:
            stiffness: double

        """
        return _opensim.ElasticFoundationForce_setStiffness(self, *args)

    def getDissipation(self):
        """
        getDissipation(ElasticFoundationForce self) -> double

        Parameters:
            self: OpenSim::ElasticFoundationForce *

        """
        return _opensim.ElasticFoundationForce_getDissipation(self)

    def setDissipation(self, *args):
        """
        setDissipation(ElasticFoundationForce self, double dissipation)

        Parameters:
            dissipation: double

        """
        return _opensim.ElasticFoundationForce_setDissipation(self, *args)

    def getStaticFriction(self):
        """
        getStaticFriction(ElasticFoundationForce self) -> double

        Parameters:
            self: OpenSim::ElasticFoundationForce *

        """
        return _opensim.ElasticFoundationForce_getStaticFriction(self)

    def setStaticFriction(self, *args):
        """
        setStaticFriction(ElasticFoundationForce self, double friction)

        Parameters:
            friction: double

        """
        return _opensim.ElasticFoundationForce_setStaticFriction(self, *args)

    def getDynamicFriction(self):
        """
        getDynamicFriction(ElasticFoundationForce self) -> double

        Parameters:
            self: OpenSim::ElasticFoundationForce *

        """
        return _opensim.ElasticFoundationForce_getDynamicFriction(self)

    def setDynamicFriction(self, *args):
        """
        setDynamicFriction(ElasticFoundationForce self, double friction)

        Parameters:
            friction: double

        """
        return _opensim.ElasticFoundationForce_setDynamicFriction(self, *args)

    def getViscousFriction(self):
        """
        getViscousFriction(ElasticFoundationForce self) -> double

        Parameters:
            self: OpenSim::ElasticFoundationForce *

        """
        return _opensim.ElasticFoundationForce_getViscousFriction(self)

    def setViscousFriction(self, *args):
        """
        setViscousFriction(ElasticFoundationForce self, double friction)

        Parameters:
            friction: double

        """
        return _opensim.ElasticFoundationForce_setViscousFriction(self, *args)

    def addGeometry(self, *args):
        """
        addGeometry(ElasticFoundationForce self, std::string const & name)

        Parameters:
            name: std::string const &

        """
        return _opensim.ElasticFoundationForce_addGeometry(self, *args)

    def getRecordLabels(self):
        """
        getRecordLabels(ElasticFoundationForce self) -> ArrayStr

        Parameters:
            self: OpenSim::ElasticFoundationForce const *

        """
        return _opensim.ElasticFoundationForce_getRecordLabels(self)

    def getRecordValues(self, *args):
        """
        getRecordValues(ElasticFoundationForce self, State state) -> ArrayDouble

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ElasticFoundationForce_getRecordValues(self, *args)

    __swig_destroy__ = _opensim.delete_ElasticFoundationForce
    __del__ = lambda self : None;
ElasticFoundationForce_swigregister = _opensim.ElasticFoundationForce_swigregister
ElasticFoundationForce_swigregister(ElasticFoundationForce)

def ElasticFoundationForce_safeDownCast(*args):
  """
    ElasticFoundationForce_safeDownCast(OpenSimObject obj) -> ElasticFoundationForce

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ElasticFoundationForce_safeDownCast(*args)

def ElasticFoundationForce_getClassName():
  """ElasticFoundationForce_getClassName() -> std::string const &"""
  return _opensim.ElasticFoundationForce_getClassName()

class HuntCrossleyForce(Force):
    """Proxy of C++ OpenSim::HuntCrossleyForce class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, HuntCrossleyForce, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, HuntCrossleyForce, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> HuntCrossleyForce

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.HuntCrossleyForce_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(HuntCrossleyForce self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.HuntCrossleyForce_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.HuntCrossleyForce_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(HuntCrossleyForce self) -> HuntCrossleyForce

        Parameters:
            self: OpenSim::HuntCrossleyForce const *

        """
        return _opensim.HuntCrossleyForce_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(HuntCrossleyForce self) -> std::string const &

        Parameters:
            self: OpenSim::HuntCrossleyForce const *

        """
        return _opensim.HuntCrossleyForce_getConcreteClassName(self)

    def copyProperty_contact_parameters(self, *args):
        """
        copyProperty_contact_parameters(HuntCrossleyForce self, HuntCrossleyForce source)

        Parameters:
            source: OpenSim::HuntCrossleyForce::Self const &

        """
        return _opensim.HuntCrossleyForce_copyProperty_contact_parameters(self, *args)

    def append_contact_parameters(self, *args):
        """
        append_contact_parameters(HuntCrossleyForce self, OpenSim::HuntCrossleyForce::ContactParametersSet const & value) -> int

        Parameters:
            value: OpenSim::HuntCrossleyForce::ContactParametersSet const &

        """
        return _opensim.HuntCrossleyForce_append_contact_parameters(self, *args)

    def constructProperty_contact_parameters(self, *args):
        """
        constructProperty_contact_parameters(HuntCrossleyForce self, OpenSim::HuntCrossleyForce::ContactParametersSet const & initValue)

        Parameters:
            initValue: OpenSim::HuntCrossleyForce::ContactParametersSet const &

        """
        return _opensim.HuntCrossleyForce_constructProperty_contact_parameters(self, *args)

    def get_contact_parameters(self, *args):
        """
        get_contact_parameters(HuntCrossleyForce self, int i) -> OpenSim::HuntCrossleyForce::ContactParametersSet const

        Parameters:
            i: int

        get_contact_parameters(HuntCrossleyForce self) -> OpenSim::HuntCrossleyForce::ContactParametersSet const &

        Parameters:
            self: OpenSim::HuntCrossleyForce const *

        """
        return _opensim.HuntCrossleyForce_get_contact_parameters(self, *args)

    def upd_contact_parameters(self, *args):
        """
        upd_contact_parameters(HuntCrossleyForce self, int i) -> OpenSim::HuntCrossleyForce::ContactParametersSet

        Parameters:
            i: int

        upd_contact_parameters(HuntCrossleyForce self) -> OpenSim::HuntCrossleyForce::ContactParametersSet &

        Parameters:
            self: OpenSim::HuntCrossleyForce *

        """
        return _opensim.HuntCrossleyForce_upd_contact_parameters(self, *args)

    def set_contact_parameters(self, *args):
        """
        set_contact_parameters(HuntCrossleyForce self, int i, OpenSim::HuntCrossleyForce::ContactParametersSet const & value)

        Parameters:
            i: int
            value: OpenSim::HuntCrossleyForce::ContactParametersSet const &

        set_contact_parameters(HuntCrossleyForce self, OpenSim::HuntCrossleyForce::ContactParametersSet const & value)

        Parameters:
            value: OpenSim::HuntCrossleyForce::ContactParametersSet const &

        """
        return _opensim.HuntCrossleyForce_set_contact_parameters(self, *args)

    def copyProperty_transition_velocity(self, *args):
        """
        copyProperty_transition_velocity(HuntCrossleyForce self, HuntCrossleyForce source)

        Parameters:
            source: OpenSim::HuntCrossleyForce::Self const &

        """
        return _opensim.HuntCrossleyForce_copyProperty_transition_velocity(self, *args)

    def append_transition_velocity(self, *args):
        """
        append_transition_velocity(HuntCrossleyForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.HuntCrossleyForce_append_transition_velocity(self, *args)

    def constructProperty_transition_velocity(self, *args):
        """
        constructProperty_transition_velocity(HuntCrossleyForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.HuntCrossleyForce_constructProperty_transition_velocity(self, *args)

    def get_transition_velocity(self, *args):
        """
        get_transition_velocity(HuntCrossleyForce self, int i) -> double const

        Parameters:
            i: int

        get_transition_velocity(HuntCrossleyForce self) -> double const &

        Parameters:
            self: OpenSim::HuntCrossleyForce const *

        """
        return _opensim.HuntCrossleyForce_get_transition_velocity(self, *args)

    def upd_transition_velocity(self, *args):
        """
        upd_transition_velocity(HuntCrossleyForce self, int i) -> double

        Parameters:
            i: int

        upd_transition_velocity(HuntCrossleyForce self) -> double &

        Parameters:
            self: OpenSim::HuntCrossleyForce *

        """
        return _opensim.HuntCrossleyForce_upd_transition_velocity(self, *args)

    def set_transition_velocity(self, *args):
        """
        set_transition_velocity(HuntCrossleyForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_transition_velocity(HuntCrossleyForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.HuntCrossleyForce_set_transition_velocity(self, *args)

    def __init__(self): 
        """__init__(OpenSim::HuntCrossleyForce self) -> HuntCrossleyForce"""
        this = _opensim.new_HuntCrossleyForce()
        try: self.this.append(this)
        except: self.this = this
    def updContactParametersSet(self):
        """
        updContactParametersSet(HuntCrossleyForce self) -> OpenSim::HuntCrossleyForce::ContactParametersSet &

        Parameters:
            self: OpenSim::HuntCrossleyForce *

        """
        return _opensim.HuntCrossleyForce_updContactParametersSet(self)

    def getContactParametersSet(self):
        """
        getContactParametersSet(HuntCrossleyForce self) -> OpenSim::HuntCrossleyForce::ContactParametersSet const &

        Parameters:
            self: OpenSim::HuntCrossleyForce *

        """
        return _opensim.HuntCrossleyForce_getContactParametersSet(self)

    def addContactParameters(self, *args):
        """
        addContactParameters(HuntCrossleyForce self, OpenSim::HuntCrossleyForce::ContactParameters * params)

        Parameters:
            params: OpenSim::HuntCrossleyForce::ContactParameters *

        """
        return _opensim.HuntCrossleyForce_addContactParameters(self, *args)

    def getTransitionVelocity(self):
        """
        getTransitionVelocity(HuntCrossleyForce self) -> double

        Parameters:
            self: OpenSim::HuntCrossleyForce const *

        """
        return _opensim.HuntCrossleyForce_getTransitionVelocity(self)

    def setTransitionVelocity(self, *args):
        """
        setTransitionVelocity(HuntCrossleyForce self, double velocity)

        Parameters:
            velocity: double

        """
        return _opensim.HuntCrossleyForce_setTransitionVelocity(self, *args)

    def getStiffness(self):
        """
        getStiffness(HuntCrossleyForce self) -> double

        Parameters:
            self: OpenSim::HuntCrossleyForce *

        """
        return _opensim.HuntCrossleyForce_getStiffness(self)

    def setStiffness(self, *args):
        """
        setStiffness(HuntCrossleyForce self, double stiffness)

        Parameters:
            stiffness: double

        """
        return _opensim.HuntCrossleyForce_setStiffness(self, *args)

    def getDissipation(self):
        """
        getDissipation(HuntCrossleyForce self) -> double

        Parameters:
            self: OpenSim::HuntCrossleyForce *

        """
        return _opensim.HuntCrossleyForce_getDissipation(self)

    def setDissipation(self, *args):
        """
        setDissipation(HuntCrossleyForce self, double dissipation)

        Parameters:
            dissipation: double

        """
        return _opensim.HuntCrossleyForce_setDissipation(self, *args)

    def getStaticFriction(self):
        """
        getStaticFriction(HuntCrossleyForce self) -> double

        Parameters:
            self: OpenSim::HuntCrossleyForce *

        """
        return _opensim.HuntCrossleyForce_getStaticFriction(self)

    def setStaticFriction(self, *args):
        """
        setStaticFriction(HuntCrossleyForce self, double friction)

        Parameters:
            friction: double

        """
        return _opensim.HuntCrossleyForce_setStaticFriction(self, *args)

    def getDynamicFriction(self):
        """
        getDynamicFriction(HuntCrossleyForce self) -> double

        Parameters:
            self: OpenSim::HuntCrossleyForce *

        """
        return _opensim.HuntCrossleyForce_getDynamicFriction(self)

    def setDynamicFriction(self, *args):
        """
        setDynamicFriction(HuntCrossleyForce self, double friction)

        Parameters:
            friction: double

        """
        return _opensim.HuntCrossleyForce_setDynamicFriction(self, *args)

    def getViscousFriction(self):
        """
        getViscousFriction(HuntCrossleyForce self) -> double

        Parameters:
            self: OpenSim::HuntCrossleyForce *

        """
        return _opensim.HuntCrossleyForce_getViscousFriction(self)

    def setViscousFriction(self, *args):
        """
        setViscousFriction(HuntCrossleyForce self, double friction)

        Parameters:
            friction: double

        """
        return _opensim.HuntCrossleyForce_setViscousFriction(self, *args)

    def addGeometry(self, *args):
        """
        addGeometry(HuntCrossleyForce self, std::string const & name)

        Parameters:
            name: std::string const &

        """
        return _opensim.HuntCrossleyForce_addGeometry(self, *args)

    def getRecordLabels(self):
        """
        getRecordLabels(HuntCrossleyForce self) -> ArrayStr

        Parameters:
            self: OpenSim::HuntCrossleyForce const *

        """
        return _opensim.HuntCrossleyForce_getRecordLabels(self)

    def getRecordValues(self, *args):
        """
        getRecordValues(HuntCrossleyForce self, State state) -> ArrayDouble

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.HuntCrossleyForce_getRecordValues(self, *args)

    __swig_destroy__ = _opensim.delete_HuntCrossleyForce
    __del__ = lambda self : None;
HuntCrossleyForce_swigregister = _opensim.HuntCrossleyForce_swigregister
HuntCrossleyForce_swigregister(HuntCrossleyForce)

def HuntCrossleyForce_safeDownCast(*args):
  """
    HuntCrossleyForce_safeDownCast(OpenSimObject obj) -> HuntCrossleyForce

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.HuntCrossleyForce_safeDownCast(*args)

def HuntCrossleyForce_getClassName():
  """HuntCrossleyForce_getClassName() -> std::string const &"""
  return _opensim.HuntCrossleyForce_getClassName()

class Actuator_(Force):
    """Proxy of C++ OpenSim::Actuator_ class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Actuator_, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Actuator_, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Actuator_

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Actuator__safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Actuator_ self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Actuator__assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Actuator__getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Actuator_ self) -> Actuator_

        Parameters:
            self: OpenSim::Actuator_ const *

        """
        return _opensim.Actuator__clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Actuator_ self) -> std::string const &

        Parameters:
            self: OpenSim::Actuator_ const *

        """
        return _opensim.Actuator__getConcreteClassName(self)

    def numControls(self):
        """
        numControls(Actuator_ self) -> int

        Parameters:
            self: OpenSim::Actuator_ const *

        """
        return _opensim.Actuator__numControls(self)

    def getDefaultControls(self):
        """
        getDefaultControls(Actuator_ self) -> Vector

        Parameters:
            self: OpenSim::Actuator_ *

        """
        return _opensim.Actuator__getDefaultControls(self)

    def getControls(self, *args):
        """
        getControls(Actuator_ self, Vector modelControls, Vector actuatorControls)

        Parameters:
            modelControls: SimTK::Vector const &
            actuatorControls: SimTK::Vector &

        """
        return _opensim.Actuator__getControls(self, *args)

    def setControls(self, *args):
        """
        setControls(Actuator_ self, Vector actuatorControls, Vector modelControls)

        Parameters:
            actuatorControls: SimTK::Vector const &
            modelControls: SimTK::Vector &

        """
        return _opensim.Actuator__setControls(self, *args)

    def addInControls(self, *args):
        """
        addInControls(Actuator_ self, Vector actuatorControls, Vector modelControls)

        Parameters:
            actuatorControls: SimTK::Vector const &
            modelControls: SimTK::Vector &

        """
        return _opensim.Actuator__addInControls(self, *args)

    def computeActuation(self, *args):
        """
        computeActuation(Actuator_ self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Actuator__computeActuation(self, *args)

    def computeEquilibrium(self, *args):
        """
        computeEquilibrium(Actuator_ self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Actuator__computeEquilibrium(self, *args)

    __swig_destroy__ = _opensim.delete_Actuator_
    __del__ = lambda self : None;
Actuator__swigregister = _opensim.Actuator__swigregister
Actuator__swigregister(Actuator_)

def Actuator__safeDownCast(*args):
  """
    Actuator__safeDownCast(OpenSimObject obj) -> Actuator_

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Actuator__safeDownCast(*args)

def Actuator__getClassName():
  """Actuator__getClassName() -> std::string const &"""
  return _opensim.Actuator__getClassName()

class Actuator(Actuator_):
    """Proxy of C++ OpenSim::Actuator class"""
    __swig_setmethods__ = {}
    for _s in [Actuator_]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Actuator, name, value)
    __swig_getmethods__ = {}
    for _s in [Actuator_]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Actuator, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Actuator

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Actuator_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Actuator self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Actuator_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Actuator_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Actuator self) -> Actuator

        Parameters:
            self: OpenSim::Actuator const *

        """
        return _opensim.Actuator_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Actuator self) -> std::string const &

        Parameters:
            self: OpenSim::Actuator const *

        """
        return _opensim.Actuator_getConcreteClassName(self)

    def copyProperty_min_control(self, *args):
        """
        copyProperty_min_control(Actuator self, Actuator source)

        Parameters:
            source: OpenSim::Actuator::Self const &

        """
        return _opensim.Actuator_copyProperty_min_control(self, *args)

    def append_min_control(self, *args):
        """
        append_min_control(Actuator self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Actuator_append_min_control(self, *args)

    def constructProperty_min_control(self, *args):
        """
        constructProperty_min_control(Actuator self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Actuator_constructProperty_min_control(self, *args)

    def get_min_control(self, *args):
        """
        get_min_control(Actuator self, int i) -> double const

        Parameters:
            i: int

        get_min_control(Actuator self) -> double const &

        Parameters:
            self: OpenSim::Actuator const *

        """
        return _opensim.Actuator_get_min_control(self, *args)

    def upd_min_control(self, *args):
        """
        upd_min_control(Actuator self, int i) -> double

        Parameters:
            i: int

        upd_min_control(Actuator self) -> double &

        Parameters:
            self: OpenSim::Actuator *

        """
        return _opensim.Actuator_upd_min_control(self, *args)

    def set_min_control(self, *args):
        """
        set_min_control(Actuator self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_min_control(Actuator self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Actuator_set_min_control(self, *args)

    def copyProperty_max_control(self, *args):
        """
        copyProperty_max_control(Actuator self, Actuator source)

        Parameters:
            source: OpenSim::Actuator::Self const &

        """
        return _opensim.Actuator_copyProperty_max_control(self, *args)

    def append_max_control(self, *args):
        """
        append_max_control(Actuator self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Actuator_append_max_control(self, *args)

    def constructProperty_max_control(self, *args):
        """
        constructProperty_max_control(Actuator self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Actuator_constructProperty_max_control(self, *args)

    def get_max_control(self, *args):
        """
        get_max_control(Actuator self, int i) -> double const

        Parameters:
            i: int

        get_max_control(Actuator self) -> double const &

        Parameters:
            self: OpenSim::Actuator const *

        """
        return _opensim.Actuator_get_max_control(self, *args)

    def upd_max_control(self, *args):
        """
        upd_max_control(Actuator self, int i) -> double

        Parameters:
            i: int

        upd_max_control(Actuator self) -> double &

        Parameters:
            self: OpenSim::Actuator *

        """
        return _opensim.Actuator_upd_max_control(self, *args)

    def set_max_control(self, *args):
        """
        set_max_control(Actuator self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_max_control(Actuator self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Actuator_set_max_control(self, *args)

    def getControl(self, *args):
        """
        getControl(Actuator self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Actuator_getControl(self, *args)

    def numControls(self):
        """
        numControls(Actuator self) -> int

        Parameters:
            self: OpenSim::Actuator const *

        """
        return _opensim.Actuator_numControls(self)

    def setForce(self, *args):
        """
        setForce(Actuator self, State s, double aForce)

        Parameters:
            s: SimTK::State const &
            aForce: double

        """
        return _opensim.Actuator_setForce(self, *args)

    def getForce(self, *args):
        """
        getForce(Actuator self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Actuator_getForce(self, *args)

    def setSpeed(self, *args):
        """
        setSpeed(Actuator self, State s, double aspeed)

        Parameters:
            s: SimTK::State const &
            aspeed: double

        """
        return _opensim.Actuator_setSpeed(self, *args)

    def getSpeed(self, *args):
        """
        getSpeed(Actuator self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Actuator_getSpeed(self, *args)

    def getPower(self, *args):
        """
        getPower(Actuator self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Actuator_getPower(self, *args)

    def getStress(self, *args):
        """
        getStress(Actuator self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Actuator_getStress(self, *args)

    def getOptimalForce(self):
        """
        getOptimalForce(Actuator self) -> double

        Parameters:
            self: OpenSim::Actuator const *

        """
        return _opensim.Actuator_getOptimalForce(self)

    def setMinControl(self, *args):
        """
        setMinControl(Actuator self, double const & aMinControl)

        Parameters:
            aMinControl: double const &

        """
        return _opensim.Actuator_setMinControl(self, *args)

    def getMinControl(self):
        """
        getMinControl(Actuator self) -> double

        Parameters:
            self: OpenSim::Actuator const *

        """
        return _opensim.Actuator_getMinControl(self)

    def setMaxControl(self, *args):
        """
        setMaxControl(Actuator self, double const & aMaxControl)

        Parameters:
            aMaxControl: double const &

        """
        return _opensim.Actuator_setMaxControl(self, *args)

    def getMaxControl(self):
        """
        getMaxControl(Actuator self) -> double

        Parameters:
            self: OpenSim::Actuator const *

        """
        return _opensim.Actuator_getMaxControl(self)

    def overrideForce(self, *args):
        """
        overrideForce(Actuator self, State s, bool flag)

        Parameters:
            s: SimTK::State &
            flag: bool

        """
        return _opensim.Actuator_overrideForce(self, *args)

    def isForceOverriden(self, *args):
        """
        isForceOverriden(Actuator self, State s) -> bool

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Actuator_isForceOverriden(self, *args)

    def setOverrideForce(self, *args):
        """
        setOverrideForce(Actuator self, State s, double value)

        Parameters:
            s: SimTK::State &
            value: double

        """
        return _opensim.Actuator_setOverrideForce(self, *args)

    def getOverrideForce(self, *args):
        """
        getOverrideForce(Actuator self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Actuator_getOverrideForce(self, *args)

    __swig_destroy__ = _opensim.delete_Actuator
    __del__ = lambda self : None;
Actuator_swigregister = _opensim.Actuator_swigregister
Actuator_swigregister(Actuator)

def Actuator_safeDownCast(*args):
  """
    Actuator_safeDownCast(OpenSimObject obj) -> Actuator

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Actuator_safeDownCast(*args)

def Actuator_getClassName():
  """Actuator_getClassName() -> std::string const &"""
  return _opensim.Actuator_getClassName()

class SetActuators(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Actuator)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetActuators, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetActuators, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetActuators

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetActuators_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetActuators self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetActuators_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetActuators_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetActuators self) -> SetActuators

        Parameters:
            self: OpenSim::Set< OpenSim::Actuator > const *

        """
        return _opensim.SetActuators_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetActuators self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Actuator > const *

        """
        return _opensim.SetActuators_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetActuators
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Actuator)> self) -> SetActuators
        __init__(OpenSim::Set<(OpenSim::Actuator)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetActuators

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Actuator)> self, std::string const & aFileName) -> SetActuators

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Actuator)> self, SetActuators aSet) -> SetActuators

        Parameters:
            aSet: OpenSim::Set< OpenSim::Actuator > const &

        """
        this = _opensim.new_SetActuators(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetActuators self)

        Parameters:
            self: OpenSim::Set< OpenSim::Actuator > *

        """
        return _opensim.SetActuators_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetActuators self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetActuators_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetActuators self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetActuators_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetActuators self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Actuator > const *

        """
        return _opensim.SetActuators_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetActuators self, Actuator aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Actuator const *
            aStartIndex: int

        getIndex(SetActuators self, Actuator aObject) -> int

        Parameters:
            aObject: OpenSim::Actuator const *

        getIndex(SetActuators self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetActuators self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetActuators_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetActuators self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetActuators_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetActuators self, Actuator aObject) -> bool

        Parameters:
            aObject: OpenSim::Actuator *

        """
        return _opensim.SetActuators_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetActuators self, Actuator aObject) -> bool

        Parameters:
            aObject: OpenSim::Actuator const &

        """
        return _opensim.SetActuators_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetActuators self, int aIndex, Actuator aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Actuator *

        """
        return _opensim.SetActuators_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetActuators self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetActuators self, Actuator aObject) -> bool

        Parameters:
            aObject: OpenSim::Actuator const *

        """
        return _opensim.SetActuators_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetActuators self)

        Parameters:
            self: OpenSim::Set< OpenSim::Actuator > *

        """
        return _opensim.SetActuators_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetActuators self, int aIndex, Actuator aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Actuator *
            preserveGroups: bool

        set(SetActuators self, int aIndex, Actuator aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Actuator *

        """
        return _opensim.SetActuators_set(self, *args)

    def get(self, *args):
        """
        get(SetActuators self, int aIndex) -> Actuator

        Parameters:
            aIndex: int

        get(SetActuators self, std::string const & aName) -> Actuator

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetActuators_get(self, *args)

    def contains(self, *args):
        """
        contains(SetActuators self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetActuators_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetActuators self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetActuators_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetActuators self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Actuator > const *

        """
        return _opensim.SetActuators_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetActuators self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetActuators_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetActuators self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetActuators_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetActuators self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetActuators_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetActuators self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetActuators_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetActuators self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetActuators_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetActuators self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetActuators self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetActuators_getGroup(self, *args)

SetActuators_swigregister = _opensim.SetActuators_swigregister
SetActuators_swigregister(SetActuators)

def SetActuators_safeDownCast(*args):
  """
    SetActuators_safeDownCast(OpenSimObject obj) -> SetActuators

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetActuators_safeDownCast(*args)

def SetActuators_getClassName():
  """SetActuators_getClassName() -> std::string const &"""
  return _opensim.SetActuators_getClassName()

class ArrayStorage(_object):
    """Proxy of C++ OpenSim::ArrayPtrs<(OpenSim::Storage)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayStorage, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayStorage, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_ArrayStorage
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::ArrayPtrs<(OpenSim::Storage)> self, int aCapacity=1) -> ArrayStorage

        Parameters:
            aCapacity: int

        __init__(OpenSim::ArrayPtrs<(OpenSim::Storage)> self) -> ArrayStorage
        __init__(OpenSim::ArrayPtrs<(OpenSim::Storage)> self, ArrayStorage aArray) -> ArrayStorage

        Parameters:
            aArray: OpenSim::ArrayPtrs< OpenSim::Storage > const &

        """
        this = _opensim.new_ArrayStorage(*args)
        try: self.this.append(this)
        except: self.this = this
    def clearAndDestroy(self):
        """
        clearAndDestroy(ArrayStorage self)

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::Storage > *

        """
        return _opensim.ArrayStorage_clearAndDestroy(self)

    def setSize(self, *args):
        """
        setSize(ArrayStorage self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.ArrayStorage_setSize(self, *args)

    def getSize(self):
        """
        getSize(ArrayStorage self) -> int

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::Storage > const *

        """
        return _opensim.ArrayStorage_getSize(self)

    def size(self):
        """
        size(ArrayStorage self) -> int

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::Storage > const *

        """
        return _opensim.ArrayStorage_size(self)

    def getIndex(self, *args):
        """
        getIndex(ArrayStorage self, Storage aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Storage const *
            aStartIndex: int

        getIndex(ArrayStorage self, Storage aObject) -> int

        Parameters:
            aObject: OpenSim::Storage const *

        getIndex(ArrayStorage self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(ArrayStorage self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.ArrayStorage_getIndex(self, *args)

    def append(self, *args):
        """
        append(ArrayStorage self, Storage aObject) -> bool

        Parameters:
            aObject: OpenSim::Storage *

        append(ArrayStorage self, ArrayStorage aArray) -> bool

        Parameters:
            aArray: OpenSim::ArrayPtrs< OpenSim::Storage > &

        """
        return _opensim.ArrayStorage_append(self, *args)

    def insert(self, *args):
        """
        insert(ArrayStorage self, int aIndex, Storage aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Storage *

        """
        return _opensim.ArrayStorage_insert(self, *args)

    def remove(self, *args):
        """
        remove(ArrayStorage self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(ArrayStorage self, Storage aObject) -> bool

        Parameters:
            aObject: OpenSim::Storage const *

        """
        return _opensim.ArrayStorage_remove(self, *args)

    def set(self, *args):
        """
        set(ArrayStorage self, int aIndex, Storage aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Storage *

        """
        return _opensim.ArrayStorage_set(self, *args)

    def get(self, *args):
        """
        get(ArrayStorage self, int aIndex) -> Storage

        Parameters:
            aIndex: int

        get(ArrayStorage self, std::string const & aName) -> Storage

        Parameters:
            aName: std::string const &

        """
        return _opensim.ArrayStorage_get(self, *args)

    def getLast(self):
        """
        getLast(ArrayStorage self) -> Storage

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::Storage > const *

        """
        return _opensim.ArrayStorage_getLast(self)

    def searchBinary(self, *args):
        """
        searchBinary(ArrayStorage self, Storage aObject, bool aFindFirst=False, int aLo=-1, int aHi=-1) -> int

        Parameters:
            aObject: OpenSim::Storage const &
            aFindFirst: bool
            aLo: int
            aHi: int

        searchBinary(ArrayStorage self, Storage aObject, bool aFindFirst=False, int aLo=-1) -> int

        Parameters:
            aObject: OpenSim::Storage const &
            aFindFirst: bool
            aLo: int

        searchBinary(ArrayStorage self, Storage aObject, bool aFindFirst=False) -> int

        Parameters:
            aObject: OpenSim::Storage const &
            aFindFirst: bool

        searchBinary(ArrayStorage self, Storage aObject) -> int

        Parameters:
            aObject: OpenSim::Storage const &

        """
        return _opensim.ArrayStorage_searchBinary(self, *args)

ArrayStorage_swigregister = _opensim.ArrayStorage_swigregister
ArrayStorage_swigregister(ArrayStorage)

class Analysis(OpenSimObject):
    """Proxy of C++ OpenSim::Analysis class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Analysis, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Analysis, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Analysis

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Analysis_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Analysis self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Analysis_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Analysis_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Analysis self) -> Analysis

        Parameters:
            self: OpenSim::Analysis const *

        """
        return _opensim.Analysis_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Analysis self) -> std::string const &

        Parameters:
            self: OpenSim::Analysis const *

        """
        return _opensim.Analysis_getConcreteClassName(self)

    __swig_setmethods__["_model"] = _opensim.Analysis__model_set
    __swig_getmethods__["_model"] = _opensim.Analysis__model_get
    if _newclass:_model = _swig_property(_opensim.Analysis__model_get, _opensim.Analysis__model_set)
    __swig_setmethods__["_statesStore"] = _opensim.Analysis__statesStore_set
    __swig_getmethods__["_statesStore"] = _opensim.Analysis__statesStore_get
    if _newclass:_statesStore = _swig_property(_opensim.Analysis__statesStore_get, _opensim.Analysis__statesStore_set)
    __swig_destroy__ = _opensim.delete_Analysis
    __del__ = lambda self : None;
    def begin(self, *args):
        """
        begin(Analysis self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Analysis_begin(self, *args)

    def step(self, *args):
        """
        step(Analysis self, State s, int stepNumber) -> int

        Parameters:
            s: SimTK::State const &
            stepNumber: int

        """
        return _opensim.Analysis_step(self, *args)

    def end(self, *args):
        """
        end(Analysis self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Analysis_end(self, *args)

    def setModel(self, *args):
        """
        setModel(Analysis self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.Analysis_setModel(self, *args)

    def setStatesStore(self, *args):
        """
        setStatesStore(Analysis self, Storage aStatesStore)

        Parameters:
            aStatesStore: OpenSim::Storage const &

        """
        return _opensim.Analysis_setStatesStore(self, *args)

    def setOn(self, *args):
        """
        setOn(Analysis self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.Analysis_setOn(self, *args)

    def getOn(self):
        """
        getOn(Analysis self) -> bool

        Parameters:
            self: OpenSim::Analysis const *

        """
        return _opensim.Analysis_getOn(self)

    def setStartTime(self, *args):
        """
        setStartTime(Analysis self, double aStartTime)

        Parameters:
            aStartTime: double

        """
        return _opensim.Analysis_setStartTime(self, *args)

    def getStartTime(self):
        """
        getStartTime(Analysis self) -> double

        Parameters:
            self: OpenSim::Analysis const *

        """
        return _opensim.Analysis_getStartTime(self)

    def setEndTime(self, *args):
        """
        setEndTime(Analysis self, double aEndTime)

        Parameters:
            aEndTime: double

        """
        return _opensim.Analysis_setEndTime(self, *args)

    def getEndTime(self):
        """
        getEndTime(Analysis self) -> double

        Parameters:
            self: OpenSim::Analysis const *

        """
        return _opensim.Analysis_getEndTime(self)

    def setInDegrees(self, *args):
        """
        setInDegrees(Analysis self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.Analysis_setInDegrees(self, *args)

    def getInDegrees(self):
        """
        getInDegrees(Analysis self) -> bool

        Parameters:
            self: OpenSim::Analysis const *

        """
        return _opensim.Analysis_getInDegrees(self)

    def proceed(self, aStep=0):
        """
        proceed(Analysis self, int aStep=0) -> bool

        Parameters:
            aStep: int

        proceed(Analysis self) -> bool

        Parameters:
            self: OpenSim::Analysis *

        """
        return _opensim.Analysis_proceed(self, aStep)

    def setStepInterval(self, *args):
        """
        setStepInterval(Analysis self, int aStepInterval)

        Parameters:
            aStepInterval: int

        """
        return _opensim.Analysis_setStepInterval(self, *args)

    def getStepInterval(self):
        """
        getStepInterval(Analysis self) -> int

        Parameters:
            self: OpenSim::Analysis const *

        """
        return _opensim.Analysis_getStepInterval(self)

    def setColumnLabels(self, *args):
        """
        setColumnLabels(Analysis self, ArrayStr aLabels)

        Parameters:
            aLabels: OpenSim::Array< std::string > const &

        """
        return _opensim.Analysis_setColumnLabels(self, *args)

    def getColumnLabels(self):
        """
        getColumnLabels(Analysis self) -> ArrayStr

        Parameters:
            self: OpenSim::Analysis const *

        """
        return _opensim.Analysis_getColumnLabels(self)

    def getStorageList(self):
        """
        getStorageList(Analysis self) -> ArrayStorage

        Parameters:
            self: OpenSim::Analysis *

        """
        return _opensim.Analysis_getStorageList(self)

    def setPrintResultFiles(self, *args):
        """
        setPrintResultFiles(Analysis self, bool aToWrite)

        Parameters:
            aToWrite: bool

        """
        return _opensim.Analysis_setPrintResultFiles(self, *args)

    def getPrintResultFiles(self):
        """
        getPrintResultFiles(Analysis self) -> bool

        Parameters:
            self: OpenSim::Analysis const *

        """
        return _opensim.Analysis_getPrintResultFiles(self)

    def printResults(self, *args):
        """
        printResults(Analysis self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0, std::string const & aExtension=".sto") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(Analysis self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0) -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double

        printResults(Analysis self, std::string const & aBaseName, std::string const & aDir="") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &

        printResults(Analysis self, std::string const & aBaseName) -> int

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.Analysis_printResults(self, *args)

Analysis_swigregister = _opensim.Analysis_swigregister
Analysis_swigregister(Analysis)

def Analysis_safeDownCast(*args):
  """
    Analysis_safeDownCast(OpenSimObject obj) -> Analysis

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Analysis_safeDownCast(*args)

def Analysis_getClassName():
  """Analysis_getClassName() -> std::string const &"""
  return _opensim.Analysis_getClassName()

class SetAnalysis(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Analysis)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetAnalysis, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetAnalysis, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetAnalysis

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetAnalysis_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetAnalysis self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetAnalysis_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetAnalysis_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetAnalysis self) -> SetAnalysis

        Parameters:
            self: OpenSim::Set< OpenSim::Analysis > const *

        """
        return _opensim.SetAnalysis_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetAnalysis self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Analysis > const *

        """
        return _opensim.SetAnalysis_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetAnalysis
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Analysis)> self) -> SetAnalysis
        __init__(OpenSim::Set<(OpenSim::Analysis)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetAnalysis

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Analysis)> self, std::string const & aFileName) -> SetAnalysis

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Analysis)> self, SetAnalysis aSet) -> SetAnalysis

        Parameters:
            aSet: OpenSim::Set< OpenSim::Analysis > const &

        """
        this = _opensim.new_SetAnalysis(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetAnalysis self)

        Parameters:
            self: OpenSim::Set< OpenSim::Analysis > *

        """
        return _opensim.SetAnalysis_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetAnalysis self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetAnalysis_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetAnalysis self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetAnalysis_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetAnalysis self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Analysis > const *

        """
        return _opensim.SetAnalysis_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetAnalysis self, Analysis aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Analysis const *
            aStartIndex: int

        getIndex(SetAnalysis self, Analysis aObject) -> int

        Parameters:
            aObject: OpenSim::Analysis const *

        getIndex(SetAnalysis self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetAnalysis self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetAnalysis_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetAnalysis self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetAnalysis_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetAnalysis self, Analysis aObject) -> bool

        Parameters:
            aObject: OpenSim::Analysis *

        """
        return _opensim.SetAnalysis_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetAnalysis self, Analysis aObject) -> bool

        Parameters:
            aObject: OpenSim::Analysis const &

        """
        return _opensim.SetAnalysis_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetAnalysis self, int aIndex, Analysis aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Analysis *

        """
        return _opensim.SetAnalysis_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetAnalysis self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetAnalysis self, Analysis aObject) -> bool

        Parameters:
            aObject: OpenSim::Analysis const *

        """
        return _opensim.SetAnalysis_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetAnalysis self)

        Parameters:
            self: OpenSim::Set< OpenSim::Analysis > *

        """
        return _opensim.SetAnalysis_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetAnalysis self, int aIndex, Analysis aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Analysis *
            preserveGroups: bool

        set(SetAnalysis self, int aIndex, Analysis aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Analysis *

        """
        return _opensim.SetAnalysis_set(self, *args)

    def get(self, *args):
        """
        get(SetAnalysis self, int aIndex) -> Analysis

        Parameters:
            aIndex: int

        get(SetAnalysis self, std::string const & aName) -> Analysis

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetAnalysis_get(self, *args)

    def contains(self, *args):
        """
        contains(SetAnalysis self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetAnalysis_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetAnalysis self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetAnalysis_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetAnalysis self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Analysis > const *

        """
        return _opensim.SetAnalysis_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetAnalysis self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetAnalysis_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetAnalysis self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetAnalysis_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetAnalysis self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetAnalysis_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetAnalysis self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetAnalysis_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetAnalysis self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetAnalysis_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetAnalysis self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetAnalysis self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetAnalysis_getGroup(self, *args)

SetAnalysis_swigregister = _opensim.SetAnalysis_swigregister
SetAnalysis_swigregister(SetAnalysis)

def SetAnalysis_safeDownCast(*args):
  """
    SetAnalysis_safeDownCast(OpenSimObject obj) -> SetAnalysis

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetAnalysis_safeDownCast(*args)

def SetAnalysis_getClassName():
  """SetAnalysis_getClassName() -> std::string const &"""
  return _opensim.SetAnalysis_getClassName()

class AnalysisSet(SetAnalysis):
    """Proxy of C++ OpenSim::AnalysisSet class"""
    __swig_setmethods__ = {}
    for _s in [SetAnalysis]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, AnalysisSet, name, value)
    __swig_getmethods__ = {}
    for _s in [SetAnalysis]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, AnalysisSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> AnalysisSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.AnalysisSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(AnalysisSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.AnalysisSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.AnalysisSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(AnalysisSet self) -> AnalysisSet

        Parameters:
            self: OpenSim::AnalysisSet const *

        """
        return _opensim.AnalysisSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(AnalysisSet self) -> std::string const &

        Parameters:
            self: OpenSim::AnalysisSet const *

        """
        return _opensim.AnalysisSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::AnalysisSet self) -> AnalysisSet
        __init__(OpenSim::AnalysisSet self, Model aModel) -> AnalysisSet

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::AnalysisSet self, std::string const & aFileName) -> AnalysisSet

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::AnalysisSet self, AnalysisSet aSet) -> AnalysisSet

        Parameters:
            aSet: OpenSim::AnalysisSet const &

        """
        this = _opensim.new_AnalysisSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_AnalysisSet
    __del__ = lambda self : None;
    def setModel(self, *args):
        """
        setModel(AnalysisSet self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.AnalysisSet_setModel(self, *args)

    def getModel(self):
        """
        getModel(AnalysisSet self) -> Model

        Parameters:
            self: OpenSim::AnalysisSet *

        """
        return _opensim.AnalysisSet_getModel(self)

    def setOn(self, *args):
        """
        setOn(AnalysisSet self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        setOn(AnalysisSet self, ArrayBool aOn)

        Parameters:
            aOn: OpenSim::Array< bool > const &

        """
        return _opensim.AnalysisSet_setOn(self, *args)

    def getOn(self):
        """
        getOn(AnalysisSet self) -> ArrayBool

        Parameters:
            self: OpenSim::AnalysisSet const *

        """
        return _opensim.AnalysisSet_getOn(self)

    def begin(self, *args):
        """
        begin(AnalysisSet self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.AnalysisSet_begin(self, *args)

    def step(self, *args):
        """
        step(AnalysisSet self, State s, int stepNumber)

        Parameters:
            s: SimTK::State const &
            stepNumber: int

        """
        return _opensim.AnalysisSet_step(self, *args)

    def end(self, *args):
        """
        end(AnalysisSet self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.AnalysisSet_end(self, *args)

    def printResults(self, *args):
        """
        printResults(AnalysisSet self, std::string const & aBaseName, std::string const & aPath="", double aDT=-1.0, std::string const & aExtension=".sto")

        Parameters:
            aBaseName: std::string const &
            aPath: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(AnalysisSet self, std::string const & aBaseName, std::string const & aPath="", double aDT=-1.0)

        Parameters:
            aBaseName: std::string const &
            aPath: std::string const &
            aDT: double

        printResults(AnalysisSet self, std::string const & aBaseName, std::string const & aPath="")

        Parameters:
            aBaseName: std::string const &
            aPath: std::string const &

        printResults(AnalysisSet self, std::string const & aBaseName)

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.AnalysisSet_printResults(self, *args)

    def getAvailableAnalyses(*args):
        """
        getAvailableAnalyses(AnalysisSet as)

        Parameters:
            as: OpenSim::AnalysisSet &

        """
        return _opensim.AnalysisSet_getAvailableAnalyses(*args)

    if _newclass:getAvailableAnalyses = staticmethod(getAvailableAnalyses)
    __swig_getmethods__["getAvailableAnalyses"] = lambda x: getAvailableAnalyses
    def adoptAndAppend(self, aAnalysis):
        aAnalysis._markAdopted()
        return super(AnalysisSet, self).adoptAndAppend(aAnalysis)

AnalysisSet_swigregister = _opensim.AnalysisSet_swigregister
AnalysisSet_swigregister(AnalysisSet)

def AnalysisSet_safeDownCast(*args):
  """
    AnalysisSet_safeDownCast(OpenSimObject obj) -> AnalysisSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.AnalysisSet_safeDownCast(*args)

def AnalysisSet_getClassName():
  """AnalysisSet_getClassName() -> std::string const &"""
  return _opensim.AnalysisSet_getClassName()

def AnalysisSet_getAvailableAnalyses(*args):
  """
    AnalysisSet_getAvailableAnalyses(AnalysisSet as)

    Parameters:
        as: OpenSim::AnalysisSet &

    """
  return _opensim.AnalysisSet_getAvailableAnalyses(*args)

class Control(OpenSimObject):
    """Proxy of C++ OpenSim::Control class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Control, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Control, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Control

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Control_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Control self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Control_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Control_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Control self) -> Control

        Parameters:
            self: OpenSim::Control const *

        """
        return _opensim.Control_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Control self) -> std::string const &

        Parameters:
            self: OpenSim::Control const *

        """
        return _opensim.Control_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_Control
    __del__ = lambda self : None;
    def setIsModelControl(self, *args):
        """
        setIsModelControl(Control self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.Control_setIsModelControl(self, *args)

    def getIsModelControl(self):
        """
        getIsModelControl(Control self) -> bool

        Parameters:
            self: OpenSim::Control const *

        """
        return _opensim.Control_getIsModelControl(self)

    def setExtrapolate(self, *args):
        """
        setExtrapolate(Control self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.Control_setExtrapolate(self, *args)

    def getExtrapolate(self):
        """
        getExtrapolate(Control self) -> bool

        Parameters:
            self: OpenSim::Control const *

        """
        return _opensim.Control_getExtrapolate(self)

    def setFilterOn(self, *args):
        """
        setFilterOn(Control self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.Control_setFilterOn(self, *args)

    def getFilterOn(self):
        """
        getFilterOn(Control self) -> bool

        Parameters:
            self: OpenSim::Control const *

        """
        return _opensim.Control_getFilterOn(self)

    def getNumParameters(self):
        """
        getNumParameters(Control self) -> int

        Parameters:
            self: OpenSim::Control const *

        """
        return _opensim.Control_getNumParameters(self)

    def setDefaultParameterMin(self, *args):
        """
        setDefaultParameterMin(Control self, double aMin)

        Parameters:
            aMin: double

        """
        return _opensim.Control_setDefaultParameterMin(self, *args)

    def getDefaultParameterMin(self):
        """
        getDefaultParameterMin(Control self) -> double

        Parameters:
            self: OpenSim::Control const *

        """
        return _opensim.Control_getDefaultParameterMin(self)

    def setDefaultParameterMax(self, *args):
        """
        setDefaultParameterMax(Control self, double aMax)

        Parameters:
            aMax: double

        """
        return _opensim.Control_setDefaultParameterMax(self, *args)

    def getDefaultParameterMax(self):
        """
        getDefaultParameterMax(Control self) -> double

        Parameters:
            self: OpenSim::Control const *

        """
        return _opensim.Control_getDefaultParameterMax(self)

    def setParameterMin(self, *args):
        """
        setParameterMin(Control self, int aI, double aMin)

        Parameters:
            aI: int
            aMin: double

        """
        return _opensim.Control_setParameterMin(self, *args)

    def getParameterMin(self, *args):
        """
        getParameterMin(Control self, int aI) -> double

        Parameters:
            aI: int

        """
        return _opensim.Control_getParameterMin(self, *args)

    def setParameterMax(self, *args):
        """
        setParameterMax(Control self, int aI, double aMax)

        Parameters:
            aI: int
            aMax: double

        """
        return _opensim.Control_setParameterMax(self, *args)

    def getParameterMax(self, *args):
        """
        getParameterMax(Control self, int aI) -> double

        Parameters:
            aI: int

        """
        return _opensim.Control_getParameterMax(self, *args)

    def getParameterTime(self, *args):
        """
        getParameterTime(Control self, int aI) -> double

        Parameters:
            aI: int

        """
        return _opensim.Control_getParameterTime(self, *args)

    def getParameterNeighborhood(self, *args):
        """
        getParameterNeighborhood(Control self, int aI, double & rTLower, double & rTUpper)

        Parameters:
            aI: int
            rTLower: double &
            rTUpper: double &

        """
        return _opensim.Control_getParameterNeighborhood(self, *args)

    def getParameterList(self, *args):
        """
        getParameterList(Control self, double aT, ArrayInt rList) -> int

        Parameters:
            aT: double
            rList: OpenSim::Array< int > &

        getParameterList(Control self, double aTLower, double aTUpper, ArrayInt rList) -> int

        Parameters:
            aTLower: double
            aTUpper: double
            rList: OpenSim::Array< int > &

        """
        return _opensim.Control_getParameterList(self, *args)

    def getParameterValue(self, *args):
        """
        getParameterValue(Control self, int aI) -> double

        Parameters:
            aI: int

        """
        return _opensim.Control_getParameterValue(self, *args)

    def setParameterValue(self, *args):
        """
        setParameterValue(Control self, int aI, double aX)

        Parameters:
            aI: int
            aX: double

        """
        return _opensim.Control_setParameterValue(self, *args)

    def getControlValue(self, aT=0.0):
        """
        getControlValue(Control self, double aT=0.0) -> double

        Parameters:
            aT: double

        getControlValue(Control self) -> double

        Parameters:
            self: OpenSim::Control *

        """
        return _opensim.Control_getControlValue(self, aT)

    def setControlValue(self, *args):
        """
        setControlValue(Control self, double aT, double aX)

        Parameters:
            aT: double
            aX: double

        """
        return _opensim.Control_setControlValue(self, *args)

    def getControlValueMin(self, aT=0.0):
        """
        getControlValueMin(Control self, double aT=0.0) -> double

        Parameters:
            aT: double

        getControlValueMin(Control self) -> double

        Parameters:
            self: OpenSim::Control *

        """
        return _opensim.Control_getControlValueMin(self, aT)

    def setControlValueMin(self, *args):
        """
        setControlValueMin(Control self, double aT, double aMin)

        Parameters:
            aT: double
            aMin: double

        """
        return _opensim.Control_setControlValueMin(self, *args)

    def getControlValueMax(self, aT=0.0):
        """
        getControlValueMax(Control self, double aT=0.0) -> double

        Parameters:
            aT: double

        getControlValueMax(Control self) -> double

        Parameters:
            self: OpenSim::Control *

        """
        return _opensim.Control_getControlValueMax(self, aT)

    def setControlValueMax(self, *args):
        """
        setControlValueMax(Control self, double aT, double aMax)

        Parameters:
            aT: double
            aMax: double

        """
        return _opensim.Control_setControlValueMax(self, *args)

    def getFirstTime(self):
        """
        getFirstTime(Control self) -> double const

        Parameters:
            self: OpenSim::Control const *

        """
        return _opensim.Control_getFirstTime(self)

    def getLastTime(self):
        """
        getLastTime(Control self) -> double const

        Parameters:
            self: OpenSim::Control const *

        """
        return _opensim.Control_getLastTime(self)

    def simplify(self, *args):
        """
        simplify(Control self, PropertySet const & aProperties)

        Parameters:
            aProperties: PropertySet const &

        """
        return _opensim.Control_simplify(self, *args)

    def filter(self, *args):
        """
        filter(Control self, double aT)

        Parameters:
            aT: double

        """
        return _opensim.Control_filter(self, *args)

Control_swigregister = _opensim.Control_swigregister
Control_swigregister(Control)

def Control_safeDownCast(*args):
  """
    Control_safeDownCast(OpenSimObject obj) -> Control

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Control_safeDownCast(*args)

def Control_getClassName():
  """Control_getClassName() -> std::string const &"""
  return _opensim.Control_getClassName()

class SetControls(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Control)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetControls, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetControls, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetControls

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetControls_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetControls self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetControls_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetControls_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetControls self) -> SetControls

        Parameters:
            self: OpenSim::Set< OpenSim::Control > const *

        """
        return _opensim.SetControls_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetControls self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Control > const *

        """
        return _opensim.SetControls_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetControls
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Control)> self) -> SetControls
        __init__(OpenSim::Set<(OpenSim::Control)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetControls

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Control)> self, std::string const & aFileName) -> SetControls

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Control)> self, SetControls aSet) -> SetControls

        Parameters:
            aSet: OpenSim::Set< OpenSim::Control > const &

        """
        this = _opensim.new_SetControls(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetControls self)

        Parameters:
            self: OpenSim::Set< OpenSim::Control > *

        """
        return _opensim.SetControls_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetControls self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetControls_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetControls self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetControls_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetControls self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Control > const *

        """
        return _opensim.SetControls_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetControls self, Control aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Control const *
            aStartIndex: int

        getIndex(SetControls self, Control aObject) -> int

        Parameters:
            aObject: OpenSim::Control const *

        getIndex(SetControls self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetControls self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetControls_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetControls self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetControls_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetControls self, Control aObject) -> bool

        Parameters:
            aObject: OpenSim::Control *

        """
        return _opensim.SetControls_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetControls self, Control aObject) -> bool

        Parameters:
            aObject: OpenSim::Control const &

        """
        return _opensim.SetControls_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetControls self, int aIndex, Control aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Control *

        """
        return _opensim.SetControls_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetControls self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetControls self, Control aObject) -> bool

        Parameters:
            aObject: OpenSim::Control const *

        """
        return _opensim.SetControls_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetControls self)

        Parameters:
            self: OpenSim::Set< OpenSim::Control > *

        """
        return _opensim.SetControls_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetControls self, int aIndex, Control aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Control *
            preserveGroups: bool

        set(SetControls self, int aIndex, Control aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Control *

        """
        return _opensim.SetControls_set(self, *args)

    def get(self, *args):
        """
        get(SetControls self, int aIndex) -> Control

        Parameters:
            aIndex: int

        get(SetControls self, std::string const & aName) -> Control

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetControls_get(self, *args)

    def contains(self, *args):
        """
        contains(SetControls self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetControls_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetControls self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetControls_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetControls self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Control > const *

        """
        return _opensim.SetControls_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetControls self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetControls_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetControls self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetControls_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetControls self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetControls_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetControls self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetControls_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetControls self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetControls_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetControls self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetControls self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetControls_getGroup(self, *args)

SetControls_swigregister = _opensim.SetControls_swigregister
SetControls_swigregister(SetControls)

def SetControls_safeDownCast(*args):
  """
    SetControls_safeDownCast(OpenSimObject obj) -> SetControls

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetControls_safeDownCast(*args)

def SetControls_getClassName():
  """SetControls_getClassName() -> std::string const &"""
  return _opensim.SetControls_getClassName()

class ControlSet(SetControls):
    """Proxy of C++ OpenSim::ControlSet class"""
    __swig_setmethods__ = {}
    for _s in [SetControls]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ControlSet, name, value)
    __swig_getmethods__ = {}
    for _s in [SetControls]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ControlSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ControlSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ControlSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ControlSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ControlSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ControlSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ControlSet self) -> ControlSet

        Parameters:
            self: OpenSim::ControlSet const *

        """
        return _opensim.ControlSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ControlSet self) -> std::string const &

        Parameters:
            self: OpenSim::ControlSet const *

        """
        return _opensim.ControlSet_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_ControlSet
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::ControlSet self) -> ControlSet
        __init__(OpenSim::ControlSet self, std::string const & aFileName) -> ControlSet

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::ControlSet self, ControlSet aSet) -> ControlSet

        Parameters:
            aSet: OpenSim::ControlSet const &

        __init__(OpenSim::ControlSet self, Storage aStorage, int nControlsToConvert=0, int aStartIndex=0) -> ControlSet

        Parameters:
            aStorage: OpenSim::Storage const &
            nControlsToConvert: int
            aStartIndex: int

        __init__(OpenSim::ControlSet self, Storage aStorage, int nControlsToConvert=0) -> ControlSet

        Parameters:
            aStorage: OpenSim::Storage const &
            nControlsToConvert: int

        __init__(OpenSim::ControlSet self, Storage aStorage) -> ControlSet

        Parameters:
            aStorage: OpenSim::Storage const &

        """
        this = _opensim.new_ControlSet(*args)
        try: self.this.append(this)
        except: self.this = this
    def getSize(self, aForModelControls=True):
        """
        getSize(ControlSet self, bool aForModelControls=True) -> int

        Parameters:
            aForModelControls: bool

        getSize(ControlSet self) -> int

        Parameters:
            self: OpenSim::ControlSet const *

        """
        return _opensim.ControlSet_getSize(self, aForModelControls)

    def getControlList(self, *args):
        """
        getControlList(ControlSet self, char const * aType, ArrayInt rList, bool aForModelControls=True)

        Parameters:
            aType: char const *
            rList: OpenSim::Array< int > &
            aForModelControls: bool

        getControlList(ControlSet self, char const * aType, ArrayInt rList)

        Parameters:
            aType: char const *
            rList: OpenSim::Array< int > &

        """
        return _opensim.ControlSet_getControlList(self, *args)

    def getControlValues(self, *args):
        """
        getControlValues(ControlSet self, double aT, double [] rX, bool aForModelControls=True)

        Parameters:
            aT: double
            rX: double []
            aForModelControls: bool

        getControlValues(ControlSet self, double aT, double [] rX)

        Parameters:
            aT: double
            rX: double []

        getControlValues(ControlSet self, double aT, ArrayDouble rX, bool aForModelControls=True)

        Parameters:
            aT: double
            rX: OpenSim::Array< double > &
            aForModelControls: bool

        getControlValues(ControlSet self, double aT, ArrayDouble rX)

        Parameters:
            aT: double
            rX: OpenSim::Array< double > &

        """
        return _opensim.ControlSet_getControlValues(self, *args)

    def setControlValues(self, *args):
        """
        setControlValues(ControlSet self, double aT, double const [] aX, bool aForModelControls=True)

        Parameters:
            aT: double
            aX: double const []
            aForModelControls: bool

        setControlValues(ControlSet self, double aT, double const [] aX)

        Parameters:
            aT: double
            aX: double const []

        setControlValues(ControlSet self, double aT, ArrayDouble aX, bool aForModelControls=True)

        Parameters:
            aT: double
            aX: OpenSim::Array< double > const &
            aForModelControls: bool

        setControlValues(ControlSet self, double aT, ArrayDouble aX)

        Parameters:
            aT: double
            aX: OpenSim::Array< double > const &

        """
        return _opensim.ControlSet_setControlValues(self, *args)

    def getNumParameters(self, aForModelControls=True):
        """
        getNumParameters(ControlSet self, bool aForModelControls=True) -> int

        Parameters:
            aForModelControls: bool

        getNumParameters(ControlSet self) -> int

        Parameters:
            self: OpenSim::ControlSet const *

        """
        return _opensim.ControlSet_getNumParameters(self, aForModelControls)

    def getParameterList(self, *args):
        """
        getParameterList(ControlSet self, ArrayInt rList, bool aForModelControls=True)

        Parameters:
            rList: OpenSim::Array< int > &
            aForModelControls: bool

        getParameterList(ControlSet self, ArrayInt rList)

        Parameters:
            rList: OpenSim::Array< int > &

        getParameterList(ControlSet self, double aT, ArrayInt rList, bool aForModelControls=True)

        Parameters:
            aT: double
            rList: OpenSim::Array< int > &
            aForModelControls: bool

        getParameterList(ControlSet self, double aT, ArrayInt rList)

        Parameters:
            aT: double
            rList: OpenSim::Array< int > &

        getParameterList(ControlSet self, double aTLower, double aTUpper, ArrayInt rList, bool aForModelControls=True)

        Parameters:
            aTLower: double
            aTUpper: double
            rList: OpenSim::Array< int > &
            aForModelControls: bool

        getParameterList(ControlSet self, double aTLower, double aTUpper, ArrayInt rList)

        Parameters:
            aTLower: double
            aTUpper: double
            rList: OpenSim::Array< int > &

        """
        return _opensim.ControlSet_getParameterList(self, *args)

    def getParameterMins(self, *args):
        """
        getParameterMins(ControlSet self, ArrayDouble rMins, ArrayInt aList=None)

        Parameters:
            rMins: OpenSim::Array< double > &
            aList: OpenSim::Array< int > const *

        getParameterMins(ControlSet self, ArrayDouble rMins)

        Parameters:
            rMins: OpenSim::Array< double > &

        """
        return _opensim.ControlSet_getParameterMins(self, *args)

    def getParameterMaxs(self, *args):
        """
        getParameterMaxs(ControlSet self, ArrayDouble rMaxs, ArrayInt aList=None)

        Parameters:
            rMaxs: OpenSim::Array< double > &
            aList: OpenSim::Array< int > const *

        getParameterMaxs(ControlSet self, ArrayDouble rMaxs)

        Parameters:
            rMaxs: OpenSim::Array< double > &

        """
        return _opensim.ControlSet_getParameterMaxs(self, *args)

    def getParameterValues(self, *args):
        """
        getParameterValues(ControlSet self, double [] rP, ArrayInt aList=None)

        Parameters:
            rP: double []
            aList: OpenSim::Array< int > const *

        getParameterValues(ControlSet self, double [] rP)

        Parameters:
            rP: double []

        getParameterValues(ControlSet self, ArrayDouble rP, ArrayInt aList=None)

        Parameters:
            rP: OpenSim::Array< double > &
            aList: OpenSim::Array< int > const *

        getParameterValues(ControlSet self, ArrayDouble rP)

        Parameters:
            rP: OpenSim::Array< double > &

        """
        return _opensim.ControlSet_getParameterValues(self, *args)

    def setParameterValues(self, *args):
        """
        setParameterValues(ControlSet self, double const [] aP, ArrayInt aList=None)

        Parameters:
            aP: double const []
            aList: OpenSim::Array< int > const *

        setParameterValues(ControlSet self, double const [] aP)

        Parameters:
            aP: double const []

        setParameterValues(ControlSet self, ArrayDouble aP, ArrayInt aList=None)

        Parameters:
            aP: OpenSim::Array< double > const &
            aList: OpenSim::Array< int > const *

        setParameterValues(ControlSet self, ArrayDouble aP)

        Parameters:
            aP: OpenSim::Array< double > const &

        """
        return _opensim.ControlSet_setParameterValues(self, *args)

    def simplify(self, *args):
        """
        simplify(ControlSet self, PropertySet const & aProperties)

        Parameters:
            aProperties: PropertySet const &

        """
        return _opensim.ControlSet_simplify(self, *args)

    def filter(self, *args):
        """
        filter(ControlSet self, double aT)

        Parameters:
            aT: double

        """
        return _opensim.ControlSet_filter(self, *args)

    def constructStorage(self, *args):
        """
        constructStorage(ControlSet self, int aN, double aT1, double aT2, bool aForModelControls) -> Storage

        Parameters:
            aN: int
            aT1: double
            aT2: double
            aForModelControls: bool

        """
        return _opensim.ControlSet_constructStorage(self, *args)

    def mapParameterToControl(self, *args):
        """
        mapParameterToControl(ControlSet self, int aIndex) -> int

        Parameters:
            aIndex: int

        """
        return _opensim.ControlSet_mapParameterToControl(self, *args)

    def mapParameterToParameter(self, *args):
        """
        mapParameterToParameter(ControlSet self, int aIndex) -> int

        Parameters:
            aIndex: int

        """
        return _opensim.ControlSet_mapParameterToParameter(self, *args)

    def generateParameterMaps(self):
        """
        generateParameterMaps(ControlSet self)

        Parameters:
            self: OpenSim::ControlSet *

        """
        return _opensim.ControlSet_generateParameterMaps(self)

    def adoptAndAppend(self, aControl):
        aControl._markAdopted()
        return super(ControlSet, self).adoptAndAppend(aControl)

ControlSet_swigregister = _opensim.ControlSet_swigregister
ControlSet_swigregister(ControlSet)

def ControlSet_safeDownCast(*args):
  """
    ControlSet_safeDownCast(OpenSimObject obj) -> ControlSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ControlSet_safeDownCast(*args)

def ControlSet_getClassName():
  """ControlSet_getClassName() -> std::string const &"""
  return _opensim.ControlSet_getClassName()

class ControlConstant(Control):
    """Proxy of C++ OpenSim::ControlConstant class"""
    __swig_setmethods__ = {}
    for _s in [Control]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ControlConstant, name, value)
    __swig_getmethods__ = {}
    for _s in [Control]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ControlConstant, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ControlConstant

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ControlConstant_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ControlConstant self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ControlConstant_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ControlConstant_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ControlConstant self) -> ControlConstant

        Parameters:
            self: OpenSim::ControlConstant const *

        """
        return _opensim.ControlConstant_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ControlConstant self) -> std::string const &

        Parameters:
            self: OpenSim::ControlConstant const *

        """
        return _opensim.ControlConstant_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_ControlConstant
    __del__ = lambda self : None;
    def getNumParameters(self):
        """
        getNumParameters(ControlConstant self) -> int

        Parameters:
            self: OpenSim::ControlConstant const *

        """
        return _opensim.ControlConstant_getNumParameters(self)

    def setParameterMin(self, *args):
        """
        setParameterMin(ControlConstant self, int aI, double aMin)

        Parameters:
            aI: int
            aMin: double

        """
        return _opensim.ControlConstant_setParameterMin(self, *args)

    def getParameterMin(self, *args):
        """
        getParameterMin(ControlConstant self, int aI) -> double

        Parameters:
            aI: int

        """
        return _opensim.ControlConstant_getParameterMin(self, *args)

    def setParameterMax(self, *args):
        """
        setParameterMax(ControlConstant self, int aI, double aMax)

        Parameters:
            aI: int
            aMax: double

        """
        return _opensim.ControlConstant_setParameterMax(self, *args)

    def getParameterMax(self, *args):
        """
        getParameterMax(ControlConstant self, int aI) -> double

        Parameters:
            aI: int

        """
        return _opensim.ControlConstant_getParameterMax(self, *args)

    def getParameterTime(self, *args):
        """
        getParameterTime(ControlConstant self, int aI) -> double

        Parameters:
            aI: int

        """
        return _opensim.ControlConstant_getParameterTime(self, *args)

    def getParameterNeighborhood(self, *args):
        """
        getParameterNeighborhood(ControlConstant self, int aI, double & rTLower, double & rTUpper)

        Parameters:
            aI: int
            rTLower: double &
            rTUpper: double &

        """
        return _opensim.ControlConstant_getParameterNeighborhood(self, *args)

    def getParameterList(self, *args):
        """
        getParameterList(ControlConstant self, double aT, ArrayInt rList) -> int

        Parameters:
            aT: double
            rList: OpenSim::Array< int > &

        getParameterList(ControlConstant self, double aT1, double aT2, ArrayInt rList) -> int

        Parameters:
            aT1: double
            aT2: double
            rList: OpenSim::Array< int > &

        """
        return _opensim.ControlConstant_getParameterList(self, *args)

    def setParameterValue(self, *args):
        """
        setParameterValue(ControlConstant self, int aI, double aX)

        Parameters:
            aI: int
            aX: double

        """
        return _opensim.ControlConstant_setParameterValue(self, *args)

    def getParameterValue(self, *args):
        """
        getParameterValue(ControlConstant self, int aI) -> double

        Parameters:
            aI: int

        """
        return _opensim.ControlConstant_getParameterValue(self, *args)

    def setControlValue(self, *args):
        """
        setControlValue(ControlConstant self, double aT, double aX)

        Parameters:
            aT: double
            aX: double

        """
        return _opensim.ControlConstant_setControlValue(self, *args)

    def getControlValue(self, *args):
        """
        getControlValue(ControlConstant self, double aT) -> double

        Parameters:
            aT: double

        """
        return _opensim.ControlConstant_getControlValue(self, *args)

    def getControlValueMin(self, aT=0.0):
        """
        getControlValueMin(ControlConstant self, double aT=0.0) -> double

        Parameters:
            aT: double

        getControlValueMin(ControlConstant self) -> double

        Parameters:
            self: OpenSim::ControlConstant *

        """
        return _opensim.ControlConstant_getControlValueMin(self, aT)

    def setControlValueMin(self, *args):
        """
        setControlValueMin(ControlConstant self, double aT, double aX)

        Parameters:
            aT: double
            aX: double

        """
        return _opensim.ControlConstant_setControlValueMin(self, *args)

    def getControlValueMax(self, aT=0.0):
        """
        getControlValueMax(ControlConstant self, double aT=0.0) -> double

        Parameters:
            aT: double

        getControlValueMax(ControlConstant self) -> double

        Parameters:
            self: OpenSim::ControlConstant *

        """
        return _opensim.ControlConstant_getControlValueMax(self, aT)

    def setControlValueMax(self, *args):
        """
        setControlValueMax(ControlConstant self, double aT, double aX)

        Parameters:
            aT: double
            aX: double

        """
        return _opensim.ControlConstant_setControlValueMax(self, *args)

ControlConstant_swigregister = _opensim.ControlConstant_swigregister
ControlConstant_swigregister(ControlConstant)

def ControlConstant_safeDownCast(*args):
  """
    ControlConstant_safeDownCast(OpenSimObject obj) -> ControlConstant

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ControlConstant_safeDownCast(*args)

def ControlConstant_getClassName():
  """ControlConstant_getClassName() -> std::string const &"""
  return _opensim.ControlConstant_getClassName()

class ControlLinearNode(OpenSimObject):
    """Proxy of C++ OpenSim::ControlLinearNode class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ControlLinearNode, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ControlLinearNode, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ControlLinearNode

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ControlLinearNode_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ControlLinearNode self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ControlLinearNode_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ControlLinearNode_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ControlLinearNode self) -> ControlLinearNode

        Parameters:
            self: OpenSim::ControlLinearNode const *

        """
        return _opensim.ControlLinearNode_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ControlLinearNode self) -> std::string const &

        Parameters:
            self: OpenSim::ControlLinearNode const *

        """
        return _opensim.ControlLinearNode_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ControlLinearNode self, double aT=0.0, double aValue=0.0) -> ControlLinearNode

        Parameters:
            aT: double
            aValue: double

        __init__(OpenSim::ControlLinearNode self, double aT=0.0) -> ControlLinearNode

        Parameters:
            aT: double

        __init__(OpenSim::ControlLinearNode self) -> ControlLinearNode
        __init__(OpenSim::ControlLinearNode self, ControlLinearNode aNode) -> ControlLinearNode

        Parameters:
            aNode: OpenSim::ControlLinearNode const &

        """
        this = _opensim.new_ControlLinearNode(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ControlLinearNode
    __del__ = lambda self : None;
    def setTime(self, *args):
        """
        setTime(ControlLinearNode self, double aT)

        Parameters:
            aT: double

        """
        return _opensim.ControlLinearNode_setTime(self, *args)

    def getTime(self):
        """
        getTime(ControlLinearNode self) -> double

        Parameters:
            self: OpenSim::ControlLinearNode const *

        """
        return _opensim.ControlLinearNode_getTime(self)

    def setValue(self, *args):
        """
        setValue(ControlLinearNode self, double aValue)

        Parameters:
            aValue: double

        """
        return _opensim.ControlLinearNode_setValue(self, *args)

    def getValue(self):
        """
        getValue(ControlLinearNode self) -> double

        Parameters:
            self: OpenSim::ControlLinearNode const *

        """
        return _opensim.ControlLinearNode_getValue(self)

    def toString(self):
        """
        toString(ControlLinearNode self) -> char *

        Parameters:
            self: OpenSim::ControlLinearNode *

        """
        return _opensim.ControlLinearNode_toString(self)

ControlLinearNode_swigregister = _opensim.ControlLinearNode_swigregister
ControlLinearNode_swigregister(ControlLinearNode)

def ControlLinearNode_safeDownCast(*args):
  """
    ControlLinearNode_safeDownCast(OpenSimObject obj) -> ControlLinearNode

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ControlLinearNode_safeDownCast(*args)

def ControlLinearNode_getClassName():
  """ControlLinearNode_getClassName() -> std::string const &"""
  return _opensim.ControlLinearNode_getClassName()

class SetControlNodes(_object):
    """Proxy of C++ OpenSim::ArrayPtrs<(OpenSim::ControlLinearNode)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetControlNodes, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, SetControlNodes, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_SetControlNodes
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::ArrayPtrs<(OpenSim::ControlLinearNode)> self, int aCapacity=1) -> SetControlNodes

        Parameters:
            aCapacity: int

        __init__(OpenSim::ArrayPtrs<(OpenSim::ControlLinearNode)> self) -> SetControlNodes
        __init__(OpenSim::ArrayPtrs<(OpenSim::ControlLinearNode)> self, SetControlNodes aArray) -> SetControlNodes

        Parameters:
            aArray: OpenSim::ArrayPtrs< OpenSim::ControlLinearNode > const &

        """
        this = _opensim.new_SetControlNodes(*args)
        try: self.this.append(this)
        except: self.this = this
    def clearAndDestroy(self):
        """
        clearAndDestroy(SetControlNodes self)

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::ControlLinearNode > *

        """
        return _opensim.SetControlNodes_clearAndDestroy(self)

    def setSize(self, *args):
        """
        setSize(SetControlNodes self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetControlNodes_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetControlNodes self) -> int

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::ControlLinearNode > const *

        """
        return _opensim.SetControlNodes_getSize(self)

    def size(self):
        """
        size(SetControlNodes self) -> int

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::ControlLinearNode > const *

        """
        return _opensim.SetControlNodes_size(self)

    def getIndex(self, *args):
        """
        getIndex(SetControlNodes self, ControlLinearNode aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::ControlLinearNode const *
            aStartIndex: int

        getIndex(SetControlNodes self, ControlLinearNode aObject) -> int

        Parameters:
            aObject: OpenSim::ControlLinearNode const *

        getIndex(SetControlNodes self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetControlNodes self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetControlNodes_getIndex(self, *args)

    def append(self, *args):
        """
        append(SetControlNodes self, ControlLinearNode aObject) -> bool

        Parameters:
            aObject: OpenSim::ControlLinearNode *

        append(SetControlNodes self, SetControlNodes aArray) -> bool

        Parameters:
            aArray: OpenSim::ArrayPtrs< OpenSim::ControlLinearNode > &

        """
        return _opensim.SetControlNodes_append(self, *args)

    def insert(self, *args):
        """
        insert(SetControlNodes self, int aIndex, ControlLinearNode aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ControlLinearNode *

        """
        return _opensim.SetControlNodes_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetControlNodes self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetControlNodes self, ControlLinearNode aObject) -> bool

        Parameters:
            aObject: OpenSim::ControlLinearNode const *

        """
        return _opensim.SetControlNodes_remove(self, *args)

    def set(self, *args):
        """
        set(SetControlNodes self, int aIndex, ControlLinearNode aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::ControlLinearNode *

        """
        return _opensim.SetControlNodes_set(self, *args)

    def get(self, *args):
        """
        get(SetControlNodes self, int aIndex) -> ControlLinearNode

        Parameters:
            aIndex: int

        get(SetControlNodes self, std::string const & aName) -> ControlLinearNode

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetControlNodes_get(self, *args)

    def getLast(self):
        """
        getLast(SetControlNodes self) -> ControlLinearNode

        Parameters:
            self: OpenSim::ArrayPtrs< OpenSim::ControlLinearNode > const *

        """
        return _opensim.SetControlNodes_getLast(self)

    def searchBinary(self, *args):
        """
        searchBinary(SetControlNodes self, ControlLinearNode aObject, bool aFindFirst=False, int aLo=-1, int aHi=-1) -> int

        Parameters:
            aObject: OpenSim::ControlLinearNode const &
            aFindFirst: bool
            aLo: int
            aHi: int

        searchBinary(SetControlNodes self, ControlLinearNode aObject, bool aFindFirst=False, int aLo=-1) -> int

        Parameters:
            aObject: OpenSim::ControlLinearNode const &
            aFindFirst: bool
            aLo: int

        searchBinary(SetControlNodes self, ControlLinearNode aObject, bool aFindFirst=False) -> int

        Parameters:
            aObject: OpenSim::ControlLinearNode const &
            aFindFirst: bool

        searchBinary(SetControlNodes self, ControlLinearNode aObject) -> int

        Parameters:
            aObject: OpenSim::ControlLinearNode const &

        """
        return _opensim.SetControlNodes_searchBinary(self, *args)

SetControlNodes_swigregister = _opensim.SetControlNodes_swigregister
SetControlNodes_swigregister(SetControlNodes)

class ControlLinear(Control):
    """Proxy of C++ OpenSim::ControlLinear class"""
    __swig_setmethods__ = {}
    for _s in [Control]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ControlLinear, name, value)
    __swig_getmethods__ = {}
    for _s in [Control]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ControlLinear, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ControlLinear

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ControlLinear_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ControlLinear self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ControlLinear_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ControlLinear_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ControlLinear self) -> ControlLinear

        Parameters:
            self: OpenSim::ControlLinear const *

        """
        return _opensim.ControlLinear_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ControlLinear self) -> std::string const &

        Parameters:
            self: OpenSim::ControlLinear const *

        """
        return _opensim.ControlLinear_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ControlLinear self) -> ControlLinear
        __init__(OpenSim::ControlLinear self, ControlLinear aControl) -> ControlLinear

        Parameters:
            aControl: OpenSim::ControlLinear const &

        """
        this = _opensim.new_ControlLinear(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ControlLinear
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(ControlLinear self, ControlLinear aControl)

        Parameters:
            aControl: OpenSim::ControlLinear const &

        """
        return _opensim.ControlLinear_copyData(self, *args)

    def setUseSteps(self, *args):
        """
        setUseSteps(ControlLinear self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.ControlLinear_setUseSteps(self, *args)

    def getUseSteps(self):
        """
        getUseSteps(ControlLinear self) -> bool

        Parameters:
            self: OpenSim::ControlLinear const *

        """
        return _opensim.ControlLinear_getUseSteps(self)

    def setKp(self, *args):
        """
        setKp(ControlLinear self, double aKp)

        Parameters:
            aKp: double

        """
        return _opensim.ControlLinear_setKp(self, *args)

    def getKp(self):
        """
        getKp(ControlLinear self) -> double

        Parameters:
            self: OpenSim::ControlLinear const *

        """
        return _opensim.ControlLinear_getKp(self)

    def setKv(self, *args):
        """
        setKv(ControlLinear self, double aKv)

        Parameters:
            aKv: double

        """
        return _opensim.ControlLinear_setKv(self, *args)

    def getKv(self):
        """
        getKv(ControlLinear self) -> double

        Parameters:
            self: OpenSim::ControlLinear const *

        """
        return _opensim.ControlLinear_getKv(self)

    def getNumParameters(self):
        """
        getNumParameters(ControlLinear self) -> int

        Parameters:
            self: OpenSim::ControlLinear const *

        """
        return _opensim.ControlLinear_getNumParameters(self)

    def setParameterMin(self, *args):
        """
        setParameterMin(ControlLinear self, int aI, double aMin)

        Parameters:
            aI: int
            aMin: double

        """
        return _opensim.ControlLinear_setParameterMin(self, *args)

    def getParameterMin(self, *args):
        """
        getParameterMin(ControlLinear self, int aI) -> double

        Parameters:
            aI: int

        """
        return _opensim.ControlLinear_getParameterMin(self, *args)

    def setParameterMax(self, *args):
        """
        setParameterMax(ControlLinear self, int aI, double aMax)

        Parameters:
            aI: int
            aMax: double

        """
        return _opensim.ControlLinear_setParameterMax(self, *args)

    def getParameterMax(self, *args):
        """
        getParameterMax(ControlLinear self, int aI) -> double

        Parameters:
            aI: int

        """
        return _opensim.ControlLinear_getParameterMax(self, *args)

    def getParameterTime(self, *args):
        """
        getParameterTime(ControlLinear self, int aI) -> double

        Parameters:
            aI: int

        """
        return _opensim.ControlLinear_getParameterTime(self, *args)

    def getParameterNeighborhood(self, *args):
        """
        getParameterNeighborhood(ControlLinear self, int aI, double & rTLower, double & rTUpper)

        Parameters:
            aI: int
            rTLower: double &
            rTUpper: double &

        """
        return _opensim.ControlLinear_getParameterNeighborhood(self, *args)

    def getParameterList(self, *args):
        """
        getParameterList(ControlLinear self, double aT, ArrayInt rList) -> int

        Parameters:
            aT: double
            rList: OpenSim::Array< int > &

        getParameterList(ControlLinear self, double aT1, double aT2, ArrayInt rList) -> int

        Parameters:
            aT1: double
            aT2: double
            rList: OpenSim::Array< int > &

        """
        return _opensim.ControlLinear_getParameterList(self, *args)

    def setParameterValue(self, *args):
        """
        setParameterValue(ControlLinear self, int aI, double aP)

        Parameters:
            aI: int
            aP: double

        """
        return _opensim.ControlLinear_setParameterValue(self, *args)

    def getParameterValue(self, *args):
        """
        getParameterValue(ControlLinear self, int aI) -> double

        Parameters:
            aI: int

        """
        return _opensim.ControlLinear_getParameterValue(self, *args)

    def setControlValue(self, *args):
        """
        setControlValue(ControlLinear self, double aT, double aX)

        Parameters:
            aT: double
            aX: double

        """
        return _opensim.ControlLinear_setControlValue(self, *args)

    def getControlValue(self, *args):
        """
        getControlValue(ControlLinear self, double aT) -> double

        Parameters:
            aT: double

        """
        return _opensim.ControlLinear_getControlValue(self, *args)

    def getControlValueMin(self, aT=0.0):
        """
        getControlValueMin(ControlLinear self, double aT=0.0) -> double

        Parameters:
            aT: double

        getControlValueMin(ControlLinear self) -> double

        Parameters:
            self: OpenSim::ControlLinear *

        """
        return _opensim.ControlLinear_getControlValueMin(self, aT)

    def setControlValueMin(self, *args):
        """
        setControlValueMin(ControlLinear self, double aT, double aX)

        Parameters:
            aT: double
            aX: double

        """
        return _opensim.ControlLinear_setControlValueMin(self, *args)

    def getControlValueMax(self, aT=0.0):
        """
        getControlValueMax(ControlLinear self, double aT=0.0) -> double

        Parameters:
            aT: double

        getControlValueMax(ControlLinear self) -> double

        Parameters:
            self: OpenSim::ControlLinear *

        """
        return _opensim.ControlLinear_getControlValueMax(self, aT)

    def setControlValueMax(self, *args):
        """
        setControlValueMax(ControlLinear self, double aT, double aX)

        Parameters:
            aT: double
            aX: double

        """
        return _opensim.ControlLinear_setControlValueMax(self, *args)

    def clearControlNodes(self):
        """
        clearControlNodes(ControlLinear self)

        Parameters:
            self: OpenSim::ControlLinear *

        """
        return _opensim.ControlLinear_clearControlNodes(self)

    def getControlValues(self):
        """
        getControlValues(ControlLinear self) -> SetControlNodes

        Parameters:
            self: OpenSim::ControlLinear *

        """
        return _opensim.ControlLinear_getControlValues(self)

    def getControlMinValues(self):
        """
        getControlMinValues(ControlLinear self) -> SetControlNodes

        Parameters:
            self: OpenSim::ControlLinear *

        """
        return _opensim.ControlLinear_getControlMinValues(self)

    def getControlMaxValues(self):
        """
        getControlMaxValues(ControlLinear self) -> SetControlNodes

        Parameters:
            self: OpenSim::ControlLinear *

        """
        return _opensim.ControlLinear_getControlMaxValues(self)

    def insertNewValueNode(self, *args):
        """
        insertNewValueNode(ControlLinear self, int index, ControlLinearNode newNode)

        Parameters:
            index: int
            newNode: OpenSim::ControlLinearNode const &

        """
        return _opensim.ControlLinear_insertNewValueNode(self, *args)

    def insertNewMinNode(self, *args):
        """
        insertNewMinNode(ControlLinear self, int index, ControlLinearNode newNode)

        Parameters:
            index: int
            newNode: OpenSim::ControlLinearNode const &

        """
        return _opensim.ControlLinear_insertNewMinNode(self, *args)

    def insertNewMaxNode(self, *args):
        """
        insertNewMaxNode(ControlLinear self, int index, ControlLinearNode newNode)

        Parameters:
            index: int
            newNode: OpenSim::ControlLinearNode const &

        """
        return _opensim.ControlLinear_insertNewMaxNode(self, *args)

    def getFirstTime(self):
        """
        getFirstTime(ControlLinear self) -> double const

        Parameters:
            self: OpenSim::ControlLinear const *

        """
        return _opensim.ControlLinear_getFirstTime(self)

    def getLastTime(self):
        """
        getLastTime(ControlLinear self) -> double const

        Parameters:
            self: OpenSim::ControlLinear const *

        """
        return _opensim.ControlLinear_getLastTime(self)

    def simplify(self, *args):
        """
        simplify(ControlLinear self, PropertySet const & aProperties)

        Parameters:
            aProperties: PropertySet const &

        simplify(ControlLinear self, double const & cutoffFrequency, double const & distance) -> bool

        Parameters:
            cutoffFrequency: double const &
            distance: double const &

        """
        return _opensim.ControlLinear_simplify(self, *args)

    def filter(self, *args):
        """
        filter(ControlLinear self, double aT)

        Parameters:
            aT: double

        """
        return _opensim.ControlLinear_filter(self, *args)

    def Interpolate(*args):
        """
        Interpolate(double aX1, double aY1, double aX2, double aY2, double aX) -> double

        Parameters:
            aX1: double
            aY1: double
            aX2: double
            aY2: double
            aX: double

        """
        return _opensim.ControlLinear_Interpolate(*args)

    if _newclass:Interpolate = staticmethod(Interpolate)
    __swig_getmethods__["Interpolate"] = lambda x: Interpolate
ControlLinear_swigregister = _opensim.ControlLinear_swigregister
ControlLinear_swigregister(ControlLinear)

def ControlLinear_safeDownCast(*args):
  """
    ControlLinear_safeDownCast(OpenSimObject obj) -> ControlLinear

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ControlLinear_safeDownCast(*args)

def ControlLinear_getClassName():
  """ControlLinear_getClassName() -> std::string const &"""
  return _opensim.ControlLinear_getClassName()

def ControlLinear_Interpolate(*args):
  """
    ControlLinear_Interpolate(double aX1, double aY1, double aX2, double aY2, double aX) -> double

    Parameters:
        aX1: double
        aY1: double
        aX2: double
        aY2: double
        aX: double

    """
  return _opensim.ControlLinear_Interpolate(*args)

class PrescribedController(Controller):
    """Proxy of C++ OpenSim::PrescribedController class"""
    __swig_setmethods__ = {}
    for _s in [Controller]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PrescribedController, name, value)
    __swig_getmethods__ = {}
    for _s in [Controller]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PrescribedController, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PrescribedController

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PrescribedController_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PrescribedController self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PrescribedController_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PrescribedController_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PrescribedController self) -> PrescribedController

        Parameters:
            self: OpenSim::PrescribedController const *

        """
        return _opensim.PrescribedController_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PrescribedController self) -> std::string const &

        Parameters:
            self: OpenSim::PrescribedController const *

        """
        return _opensim.PrescribedController_getConcreteClassName(self)

    def copyProperty_ControlFunctions(self, *args):
        """
        copyProperty_ControlFunctions(PrescribedController self, PrescribedController source)

        Parameters:
            source: OpenSim::PrescribedController::Self const &

        """
        return _opensim.PrescribedController_copyProperty_ControlFunctions(self, *args)

    def append_ControlFunctions(self, *args):
        """
        append_ControlFunctions(PrescribedController self, FunctionSet value) -> int

        Parameters:
            value: OpenSim::FunctionSet const &

        """
        return _opensim.PrescribedController_append_ControlFunctions(self, *args)

    def constructProperty_ControlFunctions(self, *args):
        """
        constructProperty_ControlFunctions(PrescribedController self, FunctionSet initValue)

        Parameters:
            initValue: OpenSim::FunctionSet const &

        """
        return _opensim.PrescribedController_constructProperty_ControlFunctions(self, *args)

    def get_ControlFunctions(self, *args):
        """
        get_ControlFunctions(PrescribedController self, int i) -> FunctionSet

        Parameters:
            i: int

        get_ControlFunctions(PrescribedController self) -> FunctionSet

        Parameters:
            self: OpenSim::PrescribedController const *

        """
        return _opensim.PrescribedController_get_ControlFunctions(self, *args)

    def upd_ControlFunctions(self, *args):
        """
        upd_ControlFunctions(PrescribedController self, int i) -> FunctionSet

        Parameters:
            i: int

        upd_ControlFunctions(PrescribedController self) -> FunctionSet

        Parameters:
            self: OpenSim::PrescribedController *

        """
        return _opensim.PrescribedController_upd_ControlFunctions(self, *args)

    def set_ControlFunctions(self, *args):
        """
        set_ControlFunctions(PrescribedController self, int i, FunctionSet value)

        Parameters:
            i: int
            value: OpenSim::FunctionSet const &

        set_ControlFunctions(PrescribedController self, FunctionSet value)

        Parameters:
            value: OpenSim::FunctionSet const &

        """
        return _opensim.PrescribedController_set_ControlFunctions(self, *args)

    def copyProperty_controls_file(self, *args):
        """
        copyProperty_controls_file(PrescribedController self, PrescribedController source)

        Parameters:
            source: OpenSim::PrescribedController::Self const &

        """
        return _opensim.PrescribedController_copyProperty_controls_file(self, *args)

    def append_controls_file(self, *args):
        """
        append_controls_file(PrescribedController self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.PrescribedController_append_controls_file(self, *args)

    def constructProperty_controls_file(self, *args):
        """
        constructProperty_controls_file(PrescribedController self)
        constructProperty_controls_file(PrescribedController self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.PrescribedController_constructProperty_controls_file(self, *args)

    def get_controls_file(self, *args):
        """
        get_controls_file(PrescribedController self, int i) -> std::string const

        Parameters:
            i: int

        get_controls_file(PrescribedController self) -> std::string const &

        Parameters:
            self: OpenSim::PrescribedController const *

        """
        return _opensim.PrescribedController_get_controls_file(self, *args)

    def upd_controls_file(self, *args):
        """
        upd_controls_file(PrescribedController self, int i) -> std::string

        Parameters:
            i: int

        upd_controls_file(PrescribedController self) -> std::string &

        Parameters:
            self: OpenSim::PrescribedController *

        """
        return _opensim.PrescribedController_upd_controls_file(self, *args)

    def set_controls_file(self, *args):
        """
        set_controls_file(PrescribedController self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_controls_file(PrescribedController self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.PrescribedController_set_controls_file(self, *args)

    def copyProperty_interpolation_method(self, *args):
        """
        copyProperty_interpolation_method(PrescribedController self, PrescribedController source)

        Parameters:
            source: OpenSim::PrescribedController::Self const &

        """
        return _opensim.PrescribedController_copyProperty_interpolation_method(self, *args)

    def append_interpolation_method(self, *args):
        """
        append_interpolation_method(PrescribedController self, int const & value) -> int

        Parameters:
            value: int const &

        """
        return _opensim.PrescribedController_append_interpolation_method(self, *args)

    def constructProperty_interpolation_method(self, *args):
        """
        constructProperty_interpolation_method(PrescribedController self)
        constructProperty_interpolation_method(PrescribedController self, int const & initValue)

        Parameters:
            initValue: int const &

        """
        return _opensim.PrescribedController_constructProperty_interpolation_method(self, *args)

    def get_interpolation_method(self, *args):
        """
        get_interpolation_method(PrescribedController self, int i) -> int const

        Parameters:
            i: int

        get_interpolation_method(PrescribedController self) -> int const &

        Parameters:
            self: OpenSim::PrescribedController const *

        """
        return _opensim.PrescribedController_get_interpolation_method(self, *args)

    def upd_interpolation_method(self, *args):
        """
        upd_interpolation_method(PrescribedController self, int i) -> int

        Parameters:
            i: int

        upd_interpolation_method(PrescribedController self) -> int &

        Parameters:
            self: OpenSim::PrescribedController *

        """
        return _opensim.PrescribedController_upd_interpolation_method(self, *args)

    def set_interpolation_method(self, *args):
        """
        set_interpolation_method(PrescribedController self, int i, int const & value)

        Parameters:
            i: int
            value: int const &

        set_interpolation_method(PrescribedController self, int const & value)

        Parameters:
            value: int const &

        """
        return _opensim.PrescribedController_set_interpolation_method(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PrescribedController self) -> PrescribedController
        __init__(OpenSim::PrescribedController self, std::string const & controlsFileName, int interpMethodType=1) -> PrescribedController

        Parameters:
            controlsFileName: std::string const &
            interpMethodType: int

        __init__(OpenSim::PrescribedController self, std::string const & controlsFileName) -> PrescribedController

        Parameters:
            controlsFileName: std::string const &

        """
        this = _opensim.new_PrescribedController(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_PrescribedController
    __del__ = lambda self : None;
    def computeControls(self, *args):
        """
        computeControls(PrescribedController self, State s, Vector controls)

        Parameters:
            s: SimTK::State const &
            controls: SimTK::Vector &

        """
        return _opensim.PrescribedController_computeControls(self, *args)

    def prescribeControlForActuator(self, *args):
        """
        prescribeControlForActuator(PrescribedController self, int index, Function prescribedFunction)

        Parameters:
            index: int
            prescribedFunction: OpenSim::Function *

        prescribeControlForActuator(PrescribedController self, std::string const actName, Function prescribedFunction)

        Parameters:
            actName: std::string const
            prescribedFunction: OpenSim::Function *

        """
        return _opensim.PrescribedController_prescribeControlForActuator(self, *args)

PrescribedController_swigregister = _opensim.PrescribedController_swigregister
PrescribedController_swigregister(PrescribedController)

def PrescribedController_safeDownCast(*args):
  """
    PrescribedController_safeDownCast(OpenSimObject obj) -> PrescribedController

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PrescribedController_safeDownCast(*args)

def PrescribedController_getClassName():
  """PrescribedController_getClassName() -> std::string const &"""
  return _opensim.PrescribedController_getClassName()

class Manager(_object):
    """Proxy of C++ OpenSim::Manager class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Manager, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Manager, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_Manager
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Manager self, Model arg2, SimTK::Integrator & arg3) -> Manager

        Parameters:
            arg2: OpenSim::Model &
            arg3: SimTK::Integrator &

        __init__(OpenSim::Manager self, Model aModel) -> Manager

        Parameters:
            aModel: OpenSim::Model &

        __init__(OpenSim::Manager self) -> Manager
        """
        this = _opensim.new_Manager(*args)
        try: self.this.append(this)
        except: self.this = this
    def setSessionName(self, *args):
        """
        setSessionName(Manager self, std::string const & name)

        Parameters:
            name: std::string const &

        """
        return _opensim.Manager_setSessionName(self, *args)

    def setModel(self, *args):
        """
        setModel(Manager self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.Manager_setModel(self, *args)

    def getSessionName(self):
        """
        getSessionName(Manager self) -> std::string const &

        Parameters:
            self: OpenSim::Manager const *

        """
        return _opensim.Manager_getSessionName(self)

    def toString(self):
        """
        toString(Manager self) -> std::string const &

        Parameters:
            self: OpenSim::Manager const *

        """
        return _opensim.Manager_toString(self)

    def setPerformAnalyses(self, *args):
        """
        setPerformAnalyses(Manager self, bool performAnalyses)

        Parameters:
            performAnalyses: bool

        """
        return _opensim.Manager_setPerformAnalyses(self, *args)

    def setWriteToStorage(self, *args):
        """
        setWriteToStorage(Manager self, bool writeToStorage)

        Parameters:
            writeToStorage: bool

        """
        return _opensim.Manager_setWriteToStorage(self, *args)

    def getIntegrator(self):
        """
        getIntegrator(Manager self) -> SimTK::Integrator &

        Parameters:
            self: OpenSim::Manager const *

        """
        return _opensim.Manager_getIntegrator(self)

    def setIntegrator(self, *args):
        """
        setIntegrator(Manager self, SimTK::Integrator * arg2)

        Parameters:
            arg2: SimTK::Integrator *

        """
        return _opensim.Manager_setIntegrator(self, *args)

    def setInitialTime(self, *args):
        """
        setInitialTime(Manager self, double aTI)

        Parameters:
            aTI: double

        """
        return _opensim.Manager_setInitialTime(self, *args)

    def getInitialTime(self):
        """
        getInitialTime(Manager self) -> double

        Parameters:
            self: OpenSim::Manager const *

        """
        return _opensim.Manager_getInitialTime(self)

    def setFinalTime(self, *args):
        """
        setFinalTime(Manager self, double aTF)

        Parameters:
            aTF: double

        """
        return _opensim.Manager_setFinalTime(self, *args)

    def getFinalTime(self):
        """
        getFinalTime(Manager self) -> double

        Parameters:
            self: OpenSim::Manager const *

        """
        return _opensim.Manager_getFinalTime(self)

    def setFirstDT(self, *args):
        """
        setFirstDT(Manager self, double aDT)

        Parameters:
            aDT: double

        """
        return _opensim.Manager_setFirstDT(self, *args)

    def getFirstDT(self):
        """
        getFirstDT(Manager self) -> double

        Parameters:
            self: OpenSim::Manager const *

        """
        return _opensim.Manager_getFirstDT(self)

    def setUseSpecifiedDT(self, *args):
        """
        setUseSpecifiedDT(Manager self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.Manager_setUseSpecifiedDT(self, *args)

    def getUseSpecifiedDT(self):
        """
        getUseSpecifiedDT(Manager self) -> bool

        Parameters:
            self: OpenSim::Manager const *

        """
        return _opensim.Manager_getUseSpecifiedDT(self)

    def setUseConstantDT(self, *args):
        """
        setUseConstantDT(Manager self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.Manager_setUseConstantDT(self, *args)

    def getUseConstantDT(self):
        """
        getUseConstantDT(Manager self) -> bool

        Parameters:
            self: OpenSim::Manager const *

        """
        return _opensim.Manager_getUseConstantDT(self)

    def getDTArray(self):
        """
        getDTArray(Manager self) -> ArrayDouble

        Parameters:
            self: OpenSim::Manager *

        """
        return _opensim.Manager_getDTArray(self)

    def setDTArray(self, *args):
        """
        setDTArray(Manager self, int aN, double const [] aDT, double aTI=0.0)

        Parameters:
            aN: int
            aDT: double const []
            aTI: double

        setDTArray(Manager self, int aN, double const [] aDT)

        Parameters:
            aN: int
            aDT: double const []

        """
        return _opensim.Manager_setDTArray(self, *args)

    def getDTArrayDT(self, *args):
        """
        getDTArrayDT(Manager self, int aStep) -> double

        Parameters:
            aStep: int

        """
        return _opensim.Manager_getDTArrayDT(self, *args)

    def printDTArray(self, aFileName=None):
        """
        printDTArray(Manager self, char const * aFileName=None)

        Parameters:
            aFileName: char const *

        printDTArray(Manager self)

        Parameters:
            self: OpenSim::Manager *

        """
        return _opensim.Manager_printDTArray(self, aFileName)

    def getTimeArray(self):
        """
        getTimeArray(Manager self) -> ArrayDouble

        Parameters:
            self: OpenSim::Manager *

        """
        return _opensim.Manager_getTimeArray(self)

    def getTimeArrayTime(self, *args):
        """
        getTimeArrayTime(Manager self, int aStep) -> double

        Parameters:
            aStep: int

        """
        return _opensim.Manager_getTimeArrayTime(self, *args)

    def getTimeArrayStep(self, *args):
        """
        getTimeArrayStep(Manager self, double aTime) -> int

        Parameters:
            aTime: double

        """
        return _opensim.Manager_getTimeArrayStep(self, *args)

    def printTimeArray(self, aFileName=None):
        """
        printTimeArray(Manager self, char const * aFileName=None)

        Parameters:
            aFileName: char const *

        printTimeArray(Manager self)

        Parameters:
            self: OpenSim::Manager *

        """
        return _opensim.Manager_printTimeArray(self, aFileName)

    def resetTimeAndDTArrays(self, *args):
        """
        resetTimeAndDTArrays(Manager self, double aTime)

        Parameters:
            aTime: double

        """
        return _opensim.Manager_resetTimeAndDTArrays(self, *args)

    def getNextTimeArrayTime(self, *args):
        """
        getNextTimeArrayTime(Manager self, double aTime) -> double

        Parameters:
            aTime: double

        """
        return _opensim.Manager_getNextTimeArrayTime(self, *args)

    def setSystem(self, *args):
        """
        setSystem(Manager self, SimTK::System * system)

        Parameters:
            system: SimTK::System *

        """
        return _opensim.Manager_setSystem(self, *args)

    def integrate(self, *args):
        """
        integrate(Manager self, State s, double dtFirst=1.0e-6) -> bool

        Parameters:
            s: SimTK::State &
            dtFirst: double

        integrate(Manager self, State s) -> bool

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Manager_integrate(self, *args)

    def doIntegration(self, *args):
        """
        doIntegration(Manager self, State s, int step, double dtFirst) -> bool

        Parameters:
            s: SimTK::State &
            step: int
            dtFirst: double

        """
        return _opensim.Manager_doIntegration(self, *args)

    def initialize(self, *args):
        """
        initialize(Manager self, State s, double dt)

        Parameters:
            s: SimTK::State &
            dt: double

        """
        return _opensim.Manager_initialize(self, *args)

    def finalize(self, *args):
        """
        finalize(Manager self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Manager_finalize(self, *args)

    def getFixedStepSize(self, *args):
        """
        getFixedStepSize(Manager self, int tArrayStep) -> double

        Parameters:
            tArrayStep: int

        """
        return _opensim.Manager_getFixedStepSize(self, *args)

    def hasStateStorage(self):
        """
        hasStateStorage(Manager self) -> bool

        Parameters:
            self: OpenSim::Manager const *

        """
        return _opensim.Manager_hasStateStorage(self)

    def setStateStorage(self, *args):
        """
        setStateStorage(Manager self, Storage aStorage)

        Parameters:
            aStorage: OpenSim::Storage &

        """
        return _opensim.Manager_setStateStorage(self, *args)

    def getStateStorage(self):
        """
        getStateStorage(Manager self) -> Storage

        Parameters:
            self: OpenSim::Manager const *

        """
        return _opensim.Manager_getStateStorage(self)

    def halt(self):
        """
        halt(Manager self)

        Parameters:
            self: OpenSim::Manager *

        """
        return _opensim.Manager_halt(self)

    def clearHalt(self):
        """
        clearHalt(Manager self)

        Parameters:
            self: OpenSim::Manager *

        """
        return _opensim.Manager_clearHalt(self)

    def checkHalt(self):
        """
        checkHalt(Manager self) -> bool

        Parameters:
            self: OpenSim::Manager *

        """
        return _opensim.Manager_checkHalt(self)

Manager_swigregister = _opensim.Manager_swigregister
Manager_swigregister(Manager)

class AbstractTool(OpenSimObject):
    """Proxy of C++ OpenSim::AbstractTool class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, AbstractTool, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, AbstractTool, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> AbstractTool

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.AbstractTool_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(AbstractTool self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.AbstractTool_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.AbstractTool_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(AbstractTool self) -> AbstractTool

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(AbstractTool self) -> std::string const &

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_AbstractTool
    __del__ = lambda self : None;
    def setModel(self, *args):
        """
        setModel(AbstractTool self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.AbstractTool_setModel(self, *args)

    def getModel(self):
        """
        getModel(AbstractTool self) -> Model

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getModel(self)

    def getReplaceForceSet(self):
        """
        getReplaceForceSet(AbstractTool self) -> bool

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getReplaceForceSet(self)

    def setReplaceForceSet(self, *args):
        """
        setReplaceForceSet(AbstractTool self, bool aReplace)

        Parameters:
            aReplace: bool

        """
        return _opensim.AbstractTool_setReplaceForceSet(self, *args)

    def getNextAvailableForceName(self, prefix="Force"):
        """
        getNextAvailableForceName(AbstractTool self, std::string const prefix="Force") -> std::string

        Parameters:
            prefix: std::string const

        getNextAvailableForceName(AbstractTool self) -> std::string

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getNextAvailableForceName(self, prefix)

    def getExternalLoads(self):
        """
        getExternalLoads(AbstractTool self) -> ExternalLoads

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getExternalLoads(self)

    def updExternalLoads(self):
        """
        updExternalLoads(AbstractTool self) -> ExternalLoads

        Parameters:
            self: OpenSim::AbstractTool *

        """
        return _opensim.AbstractTool_updExternalLoads(self)

    def setExternalLoads(self, *args):
        """
        setExternalLoads(AbstractTool self, ExternalLoads el)

        Parameters:
            el: OpenSim::ExternalLoads &

        """
        return _opensim.AbstractTool_setExternalLoads(self, *args)

    def getExternalLoadsFileName(self):
        """
        getExternalLoadsFileName(AbstractTool self) -> std::string const &

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getExternalLoadsFileName(self)

    def setExternalLoadsFileName(self, *args):
        """
        setExternalLoadsFileName(AbstractTool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.AbstractTool_setExternalLoadsFileName(self, *args)

    def getForceSetFiles(self):
        """
        getForceSetFiles(AbstractTool self) -> ArrayStr

        Parameters:
            self: OpenSim::AbstractTool *

        """
        return _opensim.AbstractTool_getForceSetFiles(self)

    def setForceSetFiles(self, *args):
        """
        setForceSetFiles(AbstractTool self, ArrayStr aForceSetFiles)

        Parameters:
            aForceSetFiles: OpenSim::Array< std::string > const &

        """
        return _opensim.AbstractTool_setForceSetFiles(self, *args)

    def getOutputPrecision(self):
        """
        getOutputPrecision(AbstractTool self) -> int

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getOutputPrecision(self)

    def setOutputPrecision(self, *args):
        """
        setOutputPrecision(AbstractTool self, int aPrecision)

        Parameters:
            aPrecision: int

        """
        return _opensim.AbstractTool_setOutputPrecision(self, *args)

    def getAnalysisSet(self):
        """
        getAnalysisSet(AbstractTool self) -> AnalysisSet

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getAnalysisSet(self)

    def getResultsDir(self):
        """
        getResultsDir(AbstractTool self) -> std::string const &

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getResultsDir(self)

    def setResultsDir(self, *args):
        """
        setResultsDir(AbstractTool self, std::string const & aString)

        Parameters:
            aString: std::string const &

        """
        return _opensim.AbstractTool_setResultsDir(self, *args)

    def getInitialTime(self):
        """
        getInitialTime(AbstractTool self) -> double

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getInitialTime(self)

    def getFinalTime(self):
        """
        getFinalTime(AbstractTool self) -> double

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getFinalTime(self)

    def setInitialTime(self, *args):
        """
        setInitialTime(AbstractTool self, double const aInitialTime)

        Parameters:
            aInitialTime: double const

        """
        return _opensim.AbstractTool_setInitialTime(self, *args)

    def setFinalTime(self, *args):
        """
        setFinalTime(AbstractTool self, double const aFinalTime)

        Parameters:
            aFinalTime: double const

        """
        return _opensim.AbstractTool_setFinalTime(self, *args)

    def getStartTime(self):
        """
        getStartTime(AbstractTool self) -> double

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getStartTime(self)

    def setStartTime(self, *args):
        """
        setStartTime(AbstractTool self, double const aStartTime)

        Parameters:
            aStartTime: double const

        """
        return _opensim.AbstractTool_setStartTime(self, *args)

    def getMaximumNumberOfSteps(self):
        """
        getMaximumNumberOfSteps(AbstractTool self) -> int

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getMaximumNumberOfSteps(self)

    def setMaximumNumberOfSteps(self, *args):
        """
        setMaximumNumberOfSteps(AbstractTool self, int aMaxSteps)

        Parameters:
            aMaxSteps: int

        """
        return _opensim.AbstractTool_setMaximumNumberOfSteps(self, *args)

    def getMaxDT(self):
        """
        getMaxDT(AbstractTool self) -> double

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getMaxDT(self)

    def setMaxDT(self, *args):
        """
        setMaxDT(AbstractTool self, double aMaxDT)

        Parameters:
            aMaxDT: double

        """
        return _opensim.AbstractTool_setMaxDT(self, *args)

    def getMinDT(self):
        """
        getMinDT(AbstractTool self) -> double

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getMinDT(self)

    def setMinDT(self, *args):
        """
        setMinDT(AbstractTool self, double aMinDT)

        Parameters:
            aMinDT: double

        """
        return _opensim.AbstractTool_setMinDT(self, *args)

    def getErrorTolerance(self):
        """
        getErrorTolerance(AbstractTool self) -> double

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getErrorTolerance(self)

    def setErrorTolerance(self, *args):
        """
        setErrorTolerance(AbstractTool self, double aErrorTolerance)

        Parameters:
            aErrorTolerance: double

        """
        return _opensim.AbstractTool_setErrorTolerance(self, *args)

    def getModelFilename(self):
        """
        getModelFilename(AbstractTool self) -> std::string const &

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getModelFilename(self)

    def setModelFilename(self, *args):
        """
        setModelFilename(AbstractTool self, std::string const & aModelFile)

        Parameters:
            aModelFile: std::string const &

        """
        return _opensim.AbstractTool_setModelFilename(self, *args)

    def getSolveForEquilibrium(self):
        """
        getSolveForEquilibrium(AbstractTool self) -> bool

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getSolveForEquilibrium(self)

    def setSolveForEquilibrium(self, *args):
        """
        setSolveForEquilibrium(AbstractTool self, bool aSolve)

        Parameters:
            aSolve: bool

        """
        return _opensim.AbstractTool_setSolveForEquilibrium(self, *args)

    def loadModel(self, *args):
        """
        loadModel(AbstractTool self, std::string const & aToolSetupFileName, ForceSet rOriginalForceSet=None)

        Parameters:
            aToolSetupFileName: std::string const &
            rOriginalForceSet: OpenSim::ForceSet *

        loadModel(AbstractTool self, std::string const & aToolSetupFileName)

        Parameters:
            aToolSetupFileName: std::string const &

        """
        return _opensim.AbstractTool_loadModel(self, *args)

    def updateModelForces(self, *args):
        """
        updateModelForces(AbstractTool self, Model model, std::string const & aToolSetupFileName, ForceSet rOriginalForceSet=None)

        Parameters:
            model: OpenSim::Model &
            aToolSetupFileName: std::string const &
            rOriginalForceSet: OpenSim::ForceSet *

        updateModelForces(AbstractTool self, Model model, std::string const & aToolSetupFileName)

        Parameters:
            model: OpenSim::Model &
            aToolSetupFileName: std::string const &

        """
        return _opensim.AbstractTool_updateModelForces(self, *args)

    def addAnalysisSetToModel(self):
        """
        addAnalysisSetToModel(AbstractTool self)

        Parameters:
            self: OpenSim::AbstractTool *

        """
        return _opensim.AbstractTool_addAnalysisSetToModel(self)

    def addControllerSetToModel(self):
        """
        addControllerSetToModel(AbstractTool self)

        Parameters:
            self: OpenSim::AbstractTool *

        """
        return _opensim.AbstractTool_addControllerSetToModel(self)

    def removeControllerSetFromModel(self):
        """
        removeControllerSetFromModel(AbstractTool self)

        Parameters:
            self: OpenSim::AbstractTool *

        """
        return _opensim.AbstractTool_removeControllerSetFromModel(self)

    def removeAnalysisSetFromModel(self):
        """
        removeAnalysisSetFromModel(AbstractTool self)

        Parameters:
            self: OpenSim::AbstractTool *

        """
        return _opensim.AbstractTool_removeAnalysisSetFromModel(self)

    def setToolOwnsModel(self, *args):
        """
        setToolOwnsModel(AbstractTool self, bool const trueFalse)

        Parameters:
            trueFalse: bool const

        """
        return _opensim.AbstractTool_setToolOwnsModel(self, *args)

    def getToolOwnsModel(self):
        """
        getToolOwnsModel(AbstractTool self) -> bool const

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getToolOwnsModel(self)

    def getControlsFileName(self):
        """
        getControlsFileName(AbstractTool self) -> std::string

        Parameters:
            self: OpenSim::AbstractTool const *

        """
        return _opensim.AbstractTool_getControlsFileName(self)

    def setControlsFileName(self, *args):
        """
        setControlsFileName(AbstractTool self, std::string const & controlsFilename)

        Parameters:
            controlsFilename: std::string const &

        """
        return _opensim.AbstractTool_setControlsFileName(self, *args)

    def run(self):
        """
        run(AbstractTool self) -> bool

        Parameters:
            self: OpenSim::AbstractTool *

        """
        return _opensim.AbstractTool_run(self)

    def printResults(self, *args):
        """
        printResults(AbstractTool self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0, std::string const & aExtension=".sto")

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(AbstractTool self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0)

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double

        printResults(AbstractTool self, std::string const & aBaseName, std::string const & aDir="")

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &

        printResults(AbstractTool self, std::string const & aBaseName)

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.AbstractTool_printResults(self, *args)

    def createExternalLoads(self, *args):
        """
        createExternalLoads(AbstractTool self, std::string const & aExternalLoadsFileName, Model aModel, Storage loadKinematics=None) -> bool

        Parameters:
            aExternalLoadsFileName: std::string const &
            aModel: OpenSim::Model &
            loadKinematics: OpenSim::Storage const *

        createExternalLoads(AbstractTool self, std::string const & aExternalLoadsFileName, Model aModel) -> bool

        Parameters:
            aExternalLoadsFileName: std::string const &
            aModel: OpenSim::Model &

        """
        return _opensim.AbstractTool_createExternalLoads(self, *args)

    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(AbstractTool self, SimTK::Xml::Element & aNode, int versionNumber)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        """
        return _opensim.AbstractTool_updateFromXMLNode(self, *args)

    def loadQStorage(self, *args):
        """
        loadQStorage(AbstractTool self, std::string const & statesFileName, Storage rQStore)

        Parameters:
            statesFileName: std::string const &
            rQStore: OpenSim::Storage &

        """
        return _opensim.AbstractTool_loadQStorage(self, *args)

AbstractTool_swigregister = _opensim.AbstractTool_swigregister
AbstractTool_swigregister(AbstractTool)

def AbstractTool_safeDownCast(*args):
  """
    AbstractTool_safeDownCast(OpenSimObject obj) -> AbstractTool

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.AbstractTool_safeDownCast(*args)

def AbstractTool_getClassName():
  """AbstractTool_getClassName() -> std::string const &"""
  return _opensim.AbstractTool_getClassName()

class Marker(OpenSimObject):
    """Proxy of C++ OpenSim::Marker class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Marker, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Marker, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Marker

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Marker_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Marker self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Marker_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Marker_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Marker self) -> Marker

        Parameters:
            self: OpenSim::Marker const *

        """
        return _opensim.Marker_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Marker self) -> std::string const &

        Parameters:
            self: OpenSim::Marker const *

        """
        return _opensim.Marker_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Marker self) -> Marker
        __init__(OpenSim::Marker self, Marker aMarker) -> Marker

        Parameters:
            aMarker: OpenSim::Marker const &

        """
        this = _opensim.new_Marker(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_Marker
    __del__ = lambda self : None;
    def deleteMarker(*args):
        """
        deleteMarker(Marker aMarker)

        Parameters:
            aMarker: OpenSim::Marker *

        """
        return _opensim.Marker_deleteMarker(*args)

    if _newclass:deleteMarker = staticmethod(deleteMarker)
    __swig_getmethods__["deleteMarker"] = lambda x: deleteMarker
    def copyData(self, *args):
        """
        copyData(Marker self, Marker aMarker)

        Parameters:
            aMarker: OpenSim::Marker const &

        """
        return _opensim.Marker_copyData(self, *args)

    def updateFromMarker(self, *args):
        """
        updateFromMarker(Marker self, Marker aMarker)

        Parameters:
            aMarker: OpenSim::Marker const &

        """
        return _opensim.Marker_updateFromMarker(self, *args)

    def getOffset(self, *args):
        """
        getOffset(Marker self, Vec3 rOffset)

        Parameters:
            rOffset: SimTK::Vec3 &

        getOffset(Marker self) -> Vec3
        getOffset(Marker self, double [] rOffset)

        Parameters:
            rOffset: double []

        """
        return _opensim.Marker_getOffset(self, *args)

    def setOffset(self, *args):
        """
        setOffset(Marker self, Vec3 aOffset) -> bool

        Parameters:
            aOffset: SimTK::Vec3 const &

        setOffset(Marker self, double const [3] aOffset) -> bool

        Parameters:
            aOffset: double const [3]

        """
        return _opensim.Marker_setOffset(self, *args)

    def getOffsetUseDefault(self):
        """
        getOffsetUseDefault(Marker self) -> bool

        Parameters:
            self: OpenSim::Marker const *

        """
        return _opensim.Marker_getOffsetUseDefault(self)

    def getFixed(self):
        """
        getFixed(Marker self) -> bool

        Parameters:
            self: OpenSim::Marker const *

        """
        return _opensim.Marker_getFixed(self)

    def setFixed(self, *args):
        """
        setFixed(Marker self, bool aFixed) -> bool

        Parameters:
            aFixed: bool

        """
        return _opensim.Marker_setFixed(self, *args)

    def getFixedUseDefault(self):
        """
        getFixedUseDefault(Marker self) -> bool

        Parameters:
            self: OpenSim::Marker const *

        """
        return _opensim.Marker_getFixedUseDefault(self)

    def getBodyName(self):
        """
        getBodyName(Marker self) -> std::string const &

        Parameters:
            self: OpenSim::Marker const *

        """
        return _opensim.Marker_getBodyName(self)

    def setBodyName(self, *args):
        """
        setBodyName(Marker self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.Marker_setBodyName(self, *args)

    def getBodyNameUseDefault(self):
        """
        getBodyNameUseDefault(Marker self) -> bool

        Parameters:
            self: OpenSim::Marker const *

        """
        return _opensim.Marker_getBodyNameUseDefault(self)

    def setBodyNameUseDefault(self, *args):
        """
        setBodyNameUseDefault(Marker self, bool aValue) -> bool

        Parameters:
            aValue: bool

        """
        return _opensim.Marker_setBodyNameUseDefault(self, *args)

    def getBody(self):
        """
        getBody(Marker self) -> Body

        Parameters:
            self: OpenSim::Marker const *

        """
        return _opensim.Marker_getBody(self)

    def changeBody(self, *args):
        """
        changeBody(Marker self, Body aBody)

        Parameters:
            aBody: OpenSim::Body &

        """
        return _opensim.Marker_changeBody(self, *args)

    def changeBodyPreserveLocation(self, *args):
        """
        changeBodyPreserveLocation(Marker self, State s, Body aBody)

        Parameters:
            s: SimTK::State const &
            aBody: OpenSim::Body &

        """
        return _opensim.Marker_changeBodyPreserveLocation(self, *args)

    def scale(self, *args):
        """
        scale(Marker self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &

        """
        return _opensim.Marker_scale(self, *args)

    def connectMarkerToModel(self, *args):
        """
        connectMarkerToModel(Marker self, Model aModel)

        Parameters:
            aModel: OpenSim::Model const &

        """
        return _opensim.Marker_connectMarkerToModel(self, *args)

    def updateGeometry(self):
        """
        updateGeometry(Marker self)

        Parameters:
            self: OpenSim::Marker *

        """
        return _opensim.Marker_updateGeometry(self)

    def getDisplayer(self):
        """
        getDisplayer(Marker self) -> VisibleObject

        Parameters:
            self: OpenSim::Marker const *

        """
        return _opensim.Marker_getDisplayer(self)

    def updDisplayer(self):
        """
        updDisplayer(Marker self) -> VisibleObject

        Parameters:
            self: OpenSim::Marker *

        """
        return _opensim.Marker_updDisplayer(self)

    def removeSelfFromDisplay(self):
        """
        removeSelfFromDisplay(Marker self)

        Parameters:
            self: OpenSim::Marker *

        """
        return _opensim.Marker_removeSelfFromDisplay(self)

    def isVirtual(self):
        """
        isVirtual(Marker self) -> bool const

        Parameters:
            self: OpenSim::Marker *

        """
        return _opensim.Marker_isVirtual(self)

    def setVirtual(self, *args):
        """
        setVirtual(Marker self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.Marker_setVirtual(self, *args)

Marker_swigregister = _opensim.Marker_swigregister
Marker_swigregister(Marker)

def Marker_safeDownCast(*args):
  """
    Marker_safeDownCast(OpenSimObject obj) -> Marker

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Marker_safeDownCast(*args)

def Marker_getClassName():
  """Marker_getClassName() -> std::string const &"""
  return _opensim.Marker_getClassName()

def Marker_deleteMarker(*args):
  """
    Marker_deleteMarker(Marker aMarker)

    Parameters:
        aMarker: OpenSim::Marker *

    """
  return _opensim.Marker_deleteMarker(*args)

class SetMarkers(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Marker)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetMarkers, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetMarkers, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetMarkers

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetMarkers_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetMarkers self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetMarkers_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetMarkers_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetMarkers self) -> SetMarkers

        Parameters:
            self: OpenSim::Set< OpenSim::Marker > const *

        """
        return _opensim.SetMarkers_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetMarkers self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Marker > const *

        """
        return _opensim.SetMarkers_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetMarkers
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Marker)> self) -> SetMarkers
        __init__(OpenSim::Set<(OpenSim::Marker)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetMarkers

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Marker)> self, std::string const & aFileName) -> SetMarkers

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Marker)> self, SetMarkers aSet) -> SetMarkers

        Parameters:
            aSet: OpenSim::Set< OpenSim::Marker > const &

        """
        this = _opensim.new_SetMarkers(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetMarkers self)

        Parameters:
            self: OpenSim::Set< OpenSim::Marker > *

        """
        return _opensim.SetMarkers_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetMarkers self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetMarkers_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetMarkers self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetMarkers_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetMarkers self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Marker > const *

        """
        return _opensim.SetMarkers_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetMarkers self, Marker aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Marker const *
            aStartIndex: int

        getIndex(SetMarkers self, Marker aObject) -> int

        Parameters:
            aObject: OpenSim::Marker const *

        getIndex(SetMarkers self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetMarkers self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMarkers_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetMarkers self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMarkers_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetMarkers self, Marker aObject) -> bool

        Parameters:
            aObject: OpenSim::Marker *

        """
        return _opensim.SetMarkers_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetMarkers self, Marker aObject) -> bool

        Parameters:
            aObject: OpenSim::Marker const &

        """
        return _opensim.SetMarkers_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetMarkers self, int aIndex, Marker aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Marker *

        """
        return _opensim.SetMarkers_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetMarkers self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetMarkers self, Marker aObject) -> bool

        Parameters:
            aObject: OpenSim::Marker const *

        """
        return _opensim.SetMarkers_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetMarkers self)

        Parameters:
            self: OpenSim::Set< OpenSim::Marker > *

        """
        return _opensim.SetMarkers_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetMarkers self, int aIndex, Marker aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Marker *
            preserveGroups: bool

        set(SetMarkers self, int aIndex, Marker aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Marker *

        """
        return _opensim.SetMarkers_set(self, *args)

    def get(self, *args):
        """
        get(SetMarkers self, int aIndex) -> Marker

        Parameters:
            aIndex: int

        get(SetMarkers self, std::string const & aName) -> Marker

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMarkers_get(self, *args)

    def contains(self, *args):
        """
        contains(SetMarkers self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMarkers_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetMarkers self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMarkers_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetMarkers self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Marker > const *

        """
        return _opensim.SetMarkers_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetMarkers self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetMarkers_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetMarkers self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetMarkers_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetMarkers self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetMarkers_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetMarkers self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetMarkers_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetMarkers self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMarkers_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetMarkers self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetMarkers self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetMarkers_getGroup(self, *args)

SetMarkers_swigregister = _opensim.SetMarkers_swigregister
SetMarkers_swigregister(SetMarkers)

def SetMarkers_safeDownCast(*args):
  """
    SetMarkers_safeDownCast(OpenSimObject obj) -> SetMarkers

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetMarkers_safeDownCast(*args)

def SetMarkers_getClassName():
  """SetMarkers_getClassName() -> std::string const &"""
  return _opensim.SetMarkers_getClassName()

class MarkerSet(SetMarkers):
    """Proxy of C++ OpenSim::MarkerSet class"""
    __swig_setmethods__ = {}
    for _s in [SetMarkers]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MarkerSet, name, value)
    __swig_getmethods__ = {}
    for _s in [SetMarkers]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MarkerSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MarkerSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MarkerSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MarkerSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MarkerSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MarkerSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MarkerSet self) -> MarkerSet

        Parameters:
            self: OpenSim::MarkerSet const *

        """
        return _opensim.MarkerSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MarkerSet self) -> std::string const &

        Parameters:
            self: OpenSim::MarkerSet const *

        """
        return _opensim.MarkerSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MarkerSet self) -> MarkerSet
        __init__(OpenSim::MarkerSet self, std::string const & aMarkersFileName) -> MarkerSet

        Parameters:
            aMarkersFileName: std::string const &

        __init__(OpenSim::MarkerSet self, MarkerSet aMarkerSet) -> MarkerSet

        Parameters:
            aMarkerSet: OpenSim::MarkerSet const &

        """
        this = _opensim.new_MarkerSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_MarkerSet
    __del__ = lambda self : None;
    def connectMarkersToModel(self, *args):
        """
        connectMarkersToModel(MarkerSet self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.MarkerSet_connectMarkersToModel(self, *args)

    def getMarkerNames(self, *args):
        """
        getMarkerNames(MarkerSet self, ArrayStr aMarkerNamesArray)

        Parameters:
            aMarkerNamesArray: OpenSim::Array< std::string > &

        """
        return _opensim.MarkerSet_getMarkerNames(self, *args)

    def scale(self, *args):
        """
        scale(MarkerSet self, ScaleSet aScaleSet)

        Parameters:
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.MarkerSet_scale(self, *args)

    def addNamePrefix(self, *args):
        """
        addNamePrefix(MarkerSet self, std::string const & prefix)

        Parameters:
            prefix: std::string const &

        """
        return _opensim.MarkerSet_addNamePrefix(self, *args)

    def addMarker(self, *args):
        """
        addMarker(MarkerSet self, std::string const & aName, double const [3] aOffset, Body aBody) -> Marker

        Parameters:
            aName: std::string const &
            aOffset: double const [3]
            aBody: OpenSim::Body &

        """
        return _opensim.MarkerSet_addMarker(self, *args)

    def adoptAndAppend(self, aMarker):
        aMarker._markAdopted()
        return super(MarkerSet, self).adoptAndAppend(aMarker)

MarkerSet_swigregister = _opensim.MarkerSet_swigregister
MarkerSet_swigregister(MarkerSet)

def MarkerSet_safeDownCast(*args):
  """
    MarkerSet_safeDownCast(OpenSimObject obj) -> MarkerSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MarkerSet_safeDownCast(*args)

def MarkerSet_getClassName():
  """MarkerSet_getClassName() -> std::string const &"""
  return _opensim.MarkerSet_getClassName()

class WrapObject(OpenSimObject):
    """Proxy of C++ OpenSim::WrapObject class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, WrapObject, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, WrapObject, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> WrapObject

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.WrapObject_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(WrapObject self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.WrapObject_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.WrapObject_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(WrapObject self) -> WrapObject

        Parameters:
            self: OpenSim::WrapObject const *

        """
        return _opensim.WrapObject_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(WrapObject self) -> std::string const &

        Parameters:
            self: OpenSim::WrapObject const *

        """
        return _opensim.WrapObject_getConcreteClassName(self)

    allQuadrants = _opensim.WrapObject_allQuadrants
    negativeX = _opensim.WrapObject_negativeX
    positiveX = _opensim.WrapObject_positiveX
    negativeY = _opensim.WrapObject_negativeY
    positiveY = _opensim.WrapObject_positiveY
    negativeZ = _opensim.WrapObject_negativeZ
    positiveZ = _opensim.WrapObject_positiveZ
    noWrap = _opensim.WrapObject_noWrap
    insideRadius = _opensim.WrapObject_insideRadius
    wrapped = _opensim.WrapObject_wrapped
    mandatoryWrap = _opensim.WrapObject_mandatoryWrap
    def copyProperty_display_preference(self, *args):
        """
        copyProperty_display_preference(WrapObject self, WrapObject source)

        Parameters:
            source: OpenSim::WrapObject::Self const &

        """
        return _opensim.WrapObject_copyProperty_display_preference(self, *args)

    def append_display_preference(self, *args):
        """
        append_display_preference(WrapObject self, int const & value) -> int

        Parameters:
            value: int const &

        """
        return _opensim.WrapObject_append_display_preference(self, *args)

    def constructProperty_display_preference(self, *args):
        """
        constructProperty_display_preference(WrapObject self, int const & initValue)

        Parameters:
            initValue: int const &

        """
        return _opensim.WrapObject_constructProperty_display_preference(self, *args)

    def get_display_preference(self, *args):
        """
        get_display_preference(WrapObject self, int i) -> int const

        Parameters:
            i: int

        get_display_preference(WrapObject self) -> int const &

        Parameters:
            self: OpenSim::WrapObject const *

        """
        return _opensim.WrapObject_get_display_preference(self, *args)

    def upd_display_preference(self, *args):
        """
        upd_display_preference(WrapObject self, int i) -> int

        Parameters:
            i: int

        upd_display_preference(WrapObject self) -> int &

        Parameters:
            self: OpenSim::WrapObject *

        """
        return _opensim.WrapObject_upd_display_preference(self, *args)

    def set_display_preference(self, *args):
        """
        set_display_preference(WrapObject self, int i, int const & value)

        Parameters:
            i: int
            value: int const &

        set_display_preference(WrapObject self, int const & value)

        Parameters:
            value: int const &

        """
        return _opensim.WrapObject_set_display_preference(self, *args)

    def copyProperty_color(self, *args):
        """
        copyProperty_color(WrapObject self, WrapObject source)

        Parameters:
            source: OpenSim::WrapObject::Self const &

        """
        return _opensim.WrapObject_copyProperty_color(self, *args)

    def get_color(self, *args):
        """
        get_color(WrapObject self, int i) -> double const &

        Parameters:
            i: int

        """
        return _opensim.WrapObject_get_color(self, *args)

    def upd_color(self, *args):
        """
        upd_color(WrapObject self, int i) -> double &

        Parameters:
            i: int

        """
        return _opensim.WrapObject_upd_color(self, *args)

    def set_color(self, *args):
        """
        set_color(WrapObject self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        """
        return _opensim.WrapObject_set_color(self, *args)

    def append_color(self, *args):
        """
        append_color(WrapObject self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.WrapObject_append_color(self, *args)

    __swig_destroy__ = _opensim.delete_WrapObject
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(WrapObject self, WrapObject aWrapObject)

        Parameters:
            aWrapObject: OpenSim::WrapObject const &

        """
        return _opensim.WrapObject_copyData(self, *args)

    def scale(self, *args):
        """
        scale(WrapObject self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &

        """
        return _opensim.WrapObject_scale(self, *args)

    def connectToModelAndBody(self, *args):
        """
        connectToModelAndBody(WrapObject self, Model aModel, Body aBody)

        Parameters:
            aModel: OpenSim::Model &
            aBody: OpenSim::Body &

        """
        return _opensim.WrapObject_connectToModelAndBody(self, *args)

    def getBody(self):
        """
        getBody(WrapObject self) -> Body

        Parameters:
            self: OpenSim::WrapObject const *

        """
        return _opensim.WrapObject_getBody(self)

    def getXYZBodyRotation(self):
        """
        getXYZBodyRotation(WrapObject self) -> double const *

        Parameters:
            self: OpenSim::WrapObject const *

        """
        return _opensim.WrapObject_getXYZBodyRotation(self)

    def getTranslation(self):
        """
        getTranslation(WrapObject self) -> double const *

        Parameters:
            self: OpenSim::WrapObject const *

        """
        return _opensim.WrapObject_getTranslation(self)

    def getActive(self):
        """
        getActive(WrapObject self) -> bool

        Parameters:
            self: OpenSim::WrapObject const *

        """
        return _opensim.WrapObject_getActive(self)

    def getActiveUseDefault(self):
        """
        getActiveUseDefault(WrapObject self) -> bool

        Parameters:
            self: OpenSim::WrapObject const *

        """
        return _opensim.WrapObject_getActiveUseDefault(self)

    def getQuadrantName(self):
        """
        getQuadrantName(WrapObject self) -> char const *

        Parameters:
            self: OpenSim::WrapObject const *

        """
        return _opensim.WrapObject_getQuadrantName(self)

    def getQuadrantNameUseDefault(self):
        """
        getQuadrantNameUseDefault(WrapObject self) -> bool

        Parameters:
            self: OpenSim::WrapObject const *

        """
        return _opensim.WrapObject_getQuadrantNameUseDefault(self)

    def setQuadrantName(self, *args):
        """
        setQuadrantName(WrapObject self, std::string const & aName)

        Parameters:
            aName: std::string const &

        """
        return _opensim.WrapObject_setQuadrantName(self, *args)

    def getTransform(self):
        """
        getTransform(WrapObject self) -> Transform

        Parameters:
            self: OpenSim::WrapObject const *

        """
        return _opensim.WrapObject_getTransform(self)

    def getWrapTypeName(self):
        """
        getWrapTypeName(WrapObject self) -> char const *

        Parameters:
            self: OpenSim::WrapObject const *

        """
        return _opensim.WrapObject_getWrapTypeName(self)

    def getDimensionsString(self):
        """
        getDimensionsString(WrapObject self) -> std::string

        Parameters:
            self: OpenSim::WrapObject const *

        """
        return _opensim.WrapObject_getDimensionsString(self)

    def getDisplayer(self):
        """
        getDisplayer(WrapObject self) -> VisibleObject

        Parameters:
            self: OpenSim::WrapObject const *

        """
        return _opensim.WrapObject_getDisplayer(self)

    def updateGeometry(self):
        """
        updateGeometry(WrapObject self)

        Parameters:
            self: OpenSim::WrapObject *

        """
        return _opensim.WrapObject_updateGeometry(self)

WrapObject_swigregister = _opensim.WrapObject_swigregister
WrapObject_swigregister(WrapObject)

def WrapObject_safeDownCast(*args):
  """
    WrapObject_safeDownCast(OpenSimObject obj) -> WrapObject

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.WrapObject_safeDownCast(*args)

def WrapObject_getClassName():
  """WrapObject_getClassName() -> std::string const &"""
  return _opensim.WrapObject_getClassName()

class WrapSphere(WrapObject):
    """Proxy of C++ OpenSim::WrapSphere class"""
    __swig_setmethods__ = {}
    for _s in [WrapObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, WrapSphere, name, value)
    __swig_getmethods__ = {}
    for _s in [WrapObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, WrapSphere, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> WrapSphere

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.WrapSphere_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(WrapSphere self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.WrapSphere_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.WrapSphere_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(WrapSphere self) -> WrapSphere

        Parameters:
            self: OpenSim::WrapSphere const *

        """
        return _opensim.WrapSphere_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(WrapSphere self) -> std::string const &

        Parameters:
            self: OpenSim::WrapSphere const *

        """
        return _opensim.WrapSphere_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::WrapSphere self) -> WrapSphere
        __init__(OpenSim::WrapSphere self, WrapSphere aWrapSphere) -> WrapSphere

        Parameters:
            aWrapSphere: OpenSim::WrapSphere const &

        """
        this = _opensim.new_WrapSphere(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_WrapSphere
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(WrapSphere self, WrapSphere aWrapSphere)

        Parameters:
            aWrapSphere: OpenSim::WrapSphere const &

        """
        return _opensim.WrapSphere_copyData(self, *args)

    def getWrapTypeName(self):
        """
        getWrapTypeName(WrapSphere self) -> char const *

        Parameters:
            self: OpenSim::WrapSphere const *

        """
        return _opensim.WrapSphere_getWrapTypeName(self)

    def getDimensionsString(self):
        """
        getDimensionsString(WrapSphere self) -> std::string

        Parameters:
            self: OpenSim::WrapSphere const *

        """
        return _opensim.WrapSphere_getDimensionsString(self)

    def getRadius(self):
        """
        getRadius(WrapSphere self) -> double

        Parameters:
            self: OpenSim::WrapSphere const *

        """
        return _opensim.WrapSphere_getRadius(self)

    def scale(self, *args):
        """
        scale(WrapSphere self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &

        """
        return _opensim.WrapSphere_scale(self, *args)

    def connectToModelAndBody(self, *args):
        """
        connectToModelAndBody(WrapSphere self, Model aModel, Body aBody)

        Parameters:
            aModel: OpenSim::Model &
            aBody: OpenSim::Body &

        """
        return _opensim.WrapSphere_connectToModelAndBody(self, *args)

WrapSphere_swigregister = _opensim.WrapSphere_swigregister
WrapSphere_swigregister(WrapSphere)

def WrapSphere_safeDownCast(*args):
  """
    WrapSphere_safeDownCast(OpenSimObject obj) -> WrapSphere

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.WrapSphere_safeDownCast(*args)

def WrapSphere_getClassName():
  """WrapSphere_getClassName() -> std::string const &"""
  return _opensim.WrapSphere_getClassName()

class WrapCylinder(WrapObject):
    """Proxy of C++ OpenSim::WrapCylinder class"""
    __swig_setmethods__ = {}
    for _s in [WrapObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, WrapCylinder, name, value)
    __swig_getmethods__ = {}
    for _s in [WrapObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, WrapCylinder, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> WrapCylinder

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.WrapCylinder_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(WrapCylinder self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.WrapCylinder_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.WrapCylinder_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(WrapCylinder self) -> WrapCylinder

        Parameters:
            self: OpenSim::WrapCylinder const *

        """
        return _opensim.WrapCylinder_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(WrapCylinder self) -> std::string const &

        Parameters:
            self: OpenSim::WrapCylinder const *

        """
        return _opensim.WrapCylinder_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::WrapCylinder self) -> WrapCylinder
        __init__(OpenSim::WrapCylinder self, WrapCylinder aWrapCylinder) -> WrapCylinder

        Parameters:
            aWrapCylinder: OpenSim::WrapCylinder const &

        """
        this = _opensim.new_WrapCylinder(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_WrapCylinder
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(WrapCylinder self, WrapCylinder aWrapCylinder)

        Parameters:
            aWrapCylinder: OpenSim::WrapCylinder const &

        """
        return _opensim.WrapCylinder_copyData(self, *args)

    def getRadius(self):
        """
        getRadius(WrapCylinder self) -> double

        Parameters:
            self: OpenSim::WrapCylinder const *

        """
        return _opensim.WrapCylinder_getRadius(self)

    def setRadius(self, *args):
        """
        setRadius(WrapCylinder self, double aRadius)

        Parameters:
            aRadius: double

        """
        return _opensim.WrapCylinder_setRadius(self, *args)

    def getLength(self):
        """
        getLength(WrapCylinder self) -> double

        Parameters:
            self: OpenSim::WrapCylinder const *

        """
        return _opensim.WrapCylinder_getLength(self)

    def setLength(self, *args):
        """
        setLength(WrapCylinder self, double aLength)

        Parameters:
            aLength: double

        """
        return _opensim.WrapCylinder_setLength(self, *args)

    def getWrapTypeName(self):
        """
        getWrapTypeName(WrapCylinder self) -> char const *

        Parameters:
            self: OpenSim::WrapCylinder const *

        """
        return _opensim.WrapCylinder_getWrapTypeName(self)

    def getDimensionsString(self):
        """
        getDimensionsString(WrapCylinder self) -> std::string

        Parameters:
            self: OpenSim::WrapCylinder const *

        """
        return _opensim.WrapCylinder_getDimensionsString(self)

    def scale(self, *args):
        """
        scale(WrapCylinder self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &

        """
        return _opensim.WrapCylinder_scale(self, *args)

    def connectToModelAndBody(self, *args):
        """
        connectToModelAndBody(WrapCylinder self, Model aModel, Body aBody)

        Parameters:
            aModel: OpenSim::Model &
            aBody: OpenSim::Body &

        """
        return _opensim.WrapCylinder_connectToModelAndBody(self, *args)

WrapCylinder_swigregister = _opensim.WrapCylinder_swigregister
WrapCylinder_swigregister(WrapCylinder)

def WrapCylinder_safeDownCast(*args):
  """
    WrapCylinder_safeDownCast(OpenSimObject obj) -> WrapCylinder

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.WrapCylinder_safeDownCast(*args)

def WrapCylinder_getClassName():
  """WrapCylinder_getClassName() -> std::string const &"""
  return _opensim.WrapCylinder_getClassName()

class WrapTorus(WrapObject):
    """Proxy of C++ OpenSim::WrapTorus class"""
    __swig_setmethods__ = {}
    for _s in [WrapObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, WrapTorus, name, value)
    __swig_getmethods__ = {}
    for _s in [WrapObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, WrapTorus, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> WrapTorus

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.WrapTorus_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(WrapTorus self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.WrapTorus_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.WrapTorus_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(WrapTorus self) -> WrapTorus

        Parameters:
            self: OpenSim::WrapTorus const *

        """
        return _opensim.WrapTorus_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(WrapTorus self) -> std::string const &

        Parameters:
            self: OpenSim::WrapTorus const *

        """
        return _opensim.WrapTorus_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::WrapTorus self) -> WrapTorus
        __init__(OpenSim::WrapTorus self, WrapTorus aWrapTorus) -> WrapTorus

        Parameters:
            aWrapTorus: OpenSim::WrapTorus const &

        """
        this = _opensim.new_WrapTorus(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_WrapTorus
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(WrapTorus self, WrapTorus aWrapTorus)

        Parameters:
            aWrapTorus: OpenSim::WrapTorus const &

        """
        return _opensim.WrapTorus_copyData(self, *args)

    def getWrapTypeName(self):
        """
        getWrapTypeName(WrapTorus self) -> char const *

        Parameters:
            self: OpenSim::WrapTorus const *

        """
        return _opensim.WrapTorus_getWrapTypeName(self)

    def getDimensionsString(self):
        """
        getDimensionsString(WrapTorus self) -> std::string

        Parameters:
            self: OpenSim::WrapTorus const *

        """
        return _opensim.WrapTorus_getDimensionsString(self)

    def getInnerRadius(self):
        """
        getInnerRadius(WrapTorus self) -> SimTK::Real

        Parameters:
            self: OpenSim::WrapTorus const *

        """
        return _opensim.WrapTorus_getInnerRadius(self)

    def getOuterRadius(self):
        """
        getOuterRadius(WrapTorus self) -> SimTK::Real

        Parameters:
            self: OpenSim::WrapTorus const *

        """
        return _opensim.WrapTorus_getOuterRadius(self)

    def scale(self, *args):
        """
        scale(WrapTorus self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &

        """
        return _opensim.WrapTorus_scale(self, *args)

    def connectToModelAndBody(self, *args):
        """
        connectToModelAndBody(WrapTorus self, Model aModel, Body aBody)

        Parameters:
            aModel: OpenSim::Model &
            aBody: OpenSim::Body &

        """
        return _opensim.WrapTorus_connectToModelAndBody(self, *args)

WrapTorus_swigregister = _opensim.WrapTorus_swigregister
WrapTorus_swigregister(WrapTorus)

def WrapTorus_safeDownCast(*args):
  """
    WrapTorus_safeDownCast(OpenSimObject obj) -> WrapTorus

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.WrapTorus_safeDownCast(*args)

def WrapTorus_getClassName():
  """WrapTorus_getClassName() -> std::string const &"""
  return _opensim.WrapTorus_getClassName()

class WrapEllipsoid(WrapObject):
    """Proxy of C++ OpenSim::WrapEllipsoid class"""
    __swig_setmethods__ = {}
    for _s in [WrapObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, WrapEllipsoid, name, value)
    __swig_getmethods__ = {}
    for _s in [WrapObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, WrapEllipsoid, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> WrapEllipsoid

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.WrapEllipsoid_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(WrapEllipsoid self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.WrapEllipsoid_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.WrapEllipsoid_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(WrapEllipsoid self) -> WrapEllipsoid

        Parameters:
            self: OpenSim::WrapEllipsoid const *

        """
        return _opensim.WrapEllipsoid_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(WrapEllipsoid self) -> std::string const &

        Parameters:
            self: OpenSim::WrapEllipsoid const *

        """
        return _opensim.WrapEllipsoid_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::WrapEllipsoid self) -> WrapEllipsoid
        __init__(OpenSim::WrapEllipsoid self, WrapEllipsoid aWrapEllipsoid) -> WrapEllipsoid

        Parameters:
            aWrapEllipsoid: OpenSim::WrapEllipsoid const &

        """
        this = _opensim.new_WrapEllipsoid(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_WrapEllipsoid
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(WrapEllipsoid self, WrapEllipsoid aWrapEllipsoid)

        Parameters:
            aWrapEllipsoid: OpenSim::WrapEllipsoid const &

        """
        return _opensim.WrapEllipsoid_copyData(self, *args)

    def getWrapTypeName(self):
        """
        getWrapTypeName(WrapEllipsoid self) -> char const *

        Parameters:
            self: OpenSim::WrapEllipsoid const *

        """
        return _opensim.WrapEllipsoid_getWrapTypeName(self)

    def getDimensionsString(self):
        """
        getDimensionsString(WrapEllipsoid self) -> std::string

        Parameters:
            self: OpenSim::WrapEllipsoid const *

        """
        return _opensim.WrapEllipsoid_getDimensionsString(self)

    def getRadii(self):
        """
        getRadii(WrapEllipsoid self) -> Vec3

        Parameters:
            self: OpenSim::WrapEllipsoid const *

        """
        return _opensim.WrapEllipsoid_getRadii(self)

    def scale(self, *args):
        """
        scale(WrapEllipsoid self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &

        """
        return _opensim.WrapEllipsoid_scale(self, *args)

    def connectToModelAndBody(self, *args):
        """
        connectToModelAndBody(WrapEllipsoid self, Model aModel, Body aBody)

        Parameters:
            aModel: OpenSim::Model &
            aBody: OpenSim::Body &

        """
        return _opensim.WrapEllipsoid_connectToModelAndBody(self, *args)

WrapEllipsoid_swigregister = _opensim.WrapEllipsoid_swigregister
WrapEllipsoid_swigregister(WrapEllipsoid)

def WrapEllipsoid_safeDownCast(*args):
  """
    WrapEllipsoid_safeDownCast(OpenSimObject obj) -> WrapEllipsoid

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.WrapEllipsoid_safeDownCast(*args)

def WrapEllipsoid_getClassName():
  """WrapEllipsoid_getClassName() -> std::string const &"""
  return _opensim.WrapEllipsoid_getClassName()

class SetWrapObject(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::WrapObject)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetWrapObject, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetWrapObject, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetWrapObject

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetWrapObject_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetWrapObject self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetWrapObject_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetWrapObject_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetWrapObject self) -> SetWrapObject

        Parameters:
            self: OpenSim::Set< OpenSim::WrapObject > const *

        """
        return _opensim.SetWrapObject_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetWrapObject self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::WrapObject > const *

        """
        return _opensim.SetWrapObject_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetWrapObject
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::WrapObject)> self) -> SetWrapObject
        __init__(OpenSim::Set<(OpenSim::WrapObject)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetWrapObject

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::WrapObject)> self, std::string const & aFileName) -> SetWrapObject

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::WrapObject)> self, SetWrapObject aSet) -> SetWrapObject

        Parameters:
            aSet: OpenSim::Set< OpenSim::WrapObject > const &

        """
        this = _opensim.new_SetWrapObject(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetWrapObject self)

        Parameters:
            self: OpenSim::Set< OpenSim::WrapObject > *

        """
        return _opensim.SetWrapObject_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetWrapObject self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetWrapObject_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetWrapObject self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetWrapObject_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetWrapObject self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::WrapObject > const *

        """
        return _opensim.SetWrapObject_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetWrapObject self, WrapObject aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::WrapObject const *
            aStartIndex: int

        getIndex(SetWrapObject self, WrapObject aObject) -> int

        Parameters:
            aObject: OpenSim::WrapObject const *

        getIndex(SetWrapObject self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetWrapObject self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetWrapObject_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetWrapObject self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetWrapObject_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetWrapObject self, WrapObject aObject) -> bool

        Parameters:
            aObject: OpenSim::WrapObject *

        """
        return _opensim.SetWrapObject_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetWrapObject self, WrapObject aObject) -> bool

        Parameters:
            aObject: OpenSim::WrapObject const &

        """
        return _opensim.SetWrapObject_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetWrapObject self, int aIndex, WrapObject aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::WrapObject *

        """
        return _opensim.SetWrapObject_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetWrapObject self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetWrapObject self, WrapObject aObject) -> bool

        Parameters:
            aObject: OpenSim::WrapObject const *

        """
        return _opensim.SetWrapObject_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetWrapObject self)

        Parameters:
            self: OpenSim::Set< OpenSim::WrapObject > *

        """
        return _opensim.SetWrapObject_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetWrapObject self, int aIndex, WrapObject aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::WrapObject *
            preserveGroups: bool

        set(SetWrapObject self, int aIndex, WrapObject aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::WrapObject *

        """
        return _opensim.SetWrapObject_set(self, *args)

    def get(self, *args):
        """
        get(SetWrapObject self, int aIndex) -> WrapObject

        Parameters:
            aIndex: int

        get(SetWrapObject self, std::string const & aName) -> WrapObject

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetWrapObject_get(self, *args)

    def contains(self, *args):
        """
        contains(SetWrapObject self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetWrapObject_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetWrapObject self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetWrapObject_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetWrapObject self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::WrapObject > const *

        """
        return _opensim.SetWrapObject_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetWrapObject self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetWrapObject_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetWrapObject self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetWrapObject_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetWrapObject self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetWrapObject_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetWrapObject self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetWrapObject_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetWrapObject self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetWrapObject_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetWrapObject self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetWrapObject self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetWrapObject_getGroup(self, *args)

SetWrapObject_swigregister = _opensim.SetWrapObject_swigregister
SetWrapObject_swigregister(SetWrapObject)

def SetWrapObject_safeDownCast(*args):
  """
    SetWrapObject_safeDownCast(OpenSimObject obj) -> SetWrapObject

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetWrapObject_safeDownCast(*args)

def SetWrapObject_getClassName():
  """SetWrapObject_getClassName() -> std::string const &"""
  return _opensim.SetWrapObject_getClassName()

class WrapObjectSet(SetWrapObject):
    """Proxy of C++ OpenSim::WrapObjectSet class"""
    __swig_setmethods__ = {}
    for _s in [SetWrapObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, WrapObjectSet, name, value)
    __swig_getmethods__ = {}
    for _s in [SetWrapObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, WrapObjectSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> WrapObjectSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.WrapObjectSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(WrapObjectSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.WrapObjectSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.WrapObjectSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(WrapObjectSet self) -> WrapObjectSet

        Parameters:
            self: OpenSim::WrapObjectSet const *

        """
        return _opensim.WrapObjectSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(WrapObjectSet self) -> std::string const &

        Parameters:
            self: OpenSim::WrapObjectSet const *

        """
        return _opensim.WrapObjectSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::WrapObjectSet self) -> WrapObjectSet
        __init__(OpenSim::WrapObjectSet self, WrapObjectSet aWrapObjectSet) -> WrapObjectSet

        Parameters:
            aWrapObjectSet: OpenSim::WrapObjectSet const &

        """
        this = _opensim.new_WrapObjectSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_WrapObjectSet
    __del__ = lambda self : None;
WrapObjectSet_swigregister = _opensim.WrapObjectSet_swigregister
WrapObjectSet_swigregister(WrapObjectSet)

def WrapObjectSet_safeDownCast(*args):
  """
    WrapObjectSet_safeDownCast(OpenSimObject obj) -> WrapObjectSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.WrapObjectSet_safeDownCast(*args)

def WrapObjectSet_getClassName():
  """WrapObjectSet_getClassName() -> std::string const &"""
  return _opensim.WrapObjectSet_getClassName()

class PathWrap(OpenSimObject):
    """Proxy of C++ OpenSim::PathWrap class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PathWrap, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PathWrap, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PathWrap

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PathWrap_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PathWrap self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PathWrap_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PathWrap_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PathWrap self) -> PathWrap

        Parameters:
            self: OpenSim::PathWrap const *

        """
        return _opensim.PathWrap_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PathWrap self) -> std::string const &

        Parameters:
            self: OpenSim::PathWrap const *

        """
        return _opensim.PathWrap_getConcreteClassName(self)

    hybrid = _opensim.PathWrap_hybrid
    midpoint = _opensim.PathWrap_midpoint
    axial = _opensim.PathWrap_axial
    def __init__(self, *args): 
        """
        __init__(OpenSim::PathWrap self) -> PathWrap
        __init__(OpenSim::PathWrap self, PathWrap aPathWrap) -> PathWrap

        Parameters:
            aPathWrap: OpenSim::PathWrap const &

        """
        this = _opensim.new_PathWrap(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_PathWrap
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(PathWrap self, PathWrap aPathWrap)

        Parameters:
            aPathWrap: OpenSim::PathWrap const &

        """
        return _opensim.PathWrap_copyData(self, *args)

    def getStartPoint(self):
        """
        getStartPoint(PathWrap self) -> int

        Parameters:
            self: OpenSim::PathWrap const *

        """
        return _opensim.PathWrap_getStartPoint(self)

    def getEndPoint(self):
        """
        getEndPoint(PathWrap self) -> int

        Parameters:
            self: OpenSim::PathWrap const *

        """
        return _opensim.PathWrap_getEndPoint(self)

    def getWrapObjectName(self):
        """
        getWrapObjectName(PathWrap self) -> std::string const &

        Parameters:
            self: OpenSim::PathWrap const *

        """
        return _opensim.PathWrap_getWrapObjectName(self)

    def getWrapObject(self):
        """
        getWrapObject(PathWrap self) -> WrapObject

        Parameters:
            self: OpenSim::PathWrap const *

        """
        return _opensim.PathWrap_getWrapObject(self)

    def setWrapObject(self, *args):
        """
        setWrapObject(PathWrap self, WrapObject aWrapObject)

        Parameters:
            aWrapObject: OpenSim::WrapObject &

        """
        return _opensim.PathWrap_setWrapObject(self, *args)

    def getWrapPoint(self, *args):
        """
        getWrapPoint(PathWrap self, int aIndex) -> PathWrapPoint &

        Parameters:
            aIndex: int

        """
        return _opensim.PathWrap_getWrapPoint(self, *args)

    def getMethod(self):
        """
        getMethod(PathWrap self) -> OpenSim::PathWrap::WrapMethod

        Parameters:
            self: OpenSim::PathWrap const *

        """
        return _opensim.PathWrap_getMethod(self)

    def setMethod(self, *args):
        """
        setMethod(PathWrap self, OpenSim::PathWrap::WrapMethod aMethod)

        Parameters:
            aMethod: enum OpenSim::PathWrap::WrapMethod

        """
        return _opensim.PathWrap_setMethod(self, *args)

    def getMethodName(self):
        """
        getMethodName(PathWrap self) -> std::string const &

        Parameters:
            self: OpenSim::PathWrap const *

        """
        return _opensim.PathWrap_getMethodName(self)

    def getPath(self):
        """
        getPath(PathWrap self) -> GeometryPath

        Parameters:
            self: OpenSim::PathWrap const *

        """
        return _opensim.PathWrap_getPath(self)

    def getPreviousWrap(self):
        """
        getPreviousWrap(PathWrap self) -> OpenSim::WrapResult const &

        Parameters:
            self: OpenSim::PathWrap const *

        """
        return _opensim.PathWrap_getPreviousWrap(self)

    def setPreviousWrap(self, *args):
        """
        setPreviousWrap(PathWrap self, OpenSim::WrapResult const & aWrapResult)

        Parameters:
            aWrapResult: OpenSim::WrapResult const &

        """
        return _opensim.PathWrap_setPreviousWrap(self, *args)

    def resetPreviousWrap(self):
        """
        resetPreviousWrap(PathWrap self)

        Parameters:
            self: OpenSim::PathWrap *

        """
        return _opensim.PathWrap_resetPreviousWrap(self)

PathWrap_swigregister = _opensim.PathWrap_swigregister
PathWrap_swigregister(PathWrap)

def PathWrap_safeDownCast(*args):
  """
    PathWrap_safeDownCast(OpenSimObject obj) -> PathWrap

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PathWrap_safeDownCast(*args)

def PathWrap_getClassName():
  """PathWrap_getClassName() -> std::string const &"""
  return _opensim.PathWrap_getClassName()

class SetPathWrap(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::PathWrap)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetPathWrap, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetPathWrap, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetPathWrap

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetPathWrap_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetPathWrap self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetPathWrap_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetPathWrap_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetPathWrap self) -> SetPathWrap

        Parameters:
            self: OpenSim::Set< OpenSim::PathWrap > const *

        """
        return _opensim.SetPathWrap_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetPathWrap self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::PathWrap > const *

        """
        return _opensim.SetPathWrap_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetPathWrap
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::PathWrap)> self) -> SetPathWrap
        __init__(OpenSim::Set<(OpenSim::PathWrap)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetPathWrap

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::PathWrap)> self, std::string const & aFileName) -> SetPathWrap

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::PathWrap)> self, SetPathWrap aSet) -> SetPathWrap

        Parameters:
            aSet: OpenSim::Set< OpenSim::PathWrap > const &

        """
        this = _opensim.new_SetPathWrap(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetPathWrap self)

        Parameters:
            self: OpenSim::Set< OpenSim::PathWrap > *

        """
        return _opensim.SetPathWrap_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetPathWrap self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetPathWrap_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetPathWrap self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetPathWrap_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetPathWrap self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::PathWrap > const *

        """
        return _opensim.SetPathWrap_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetPathWrap self, PathWrap aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::PathWrap const *
            aStartIndex: int

        getIndex(SetPathWrap self, PathWrap aObject) -> int

        Parameters:
            aObject: OpenSim::PathWrap const *

        getIndex(SetPathWrap self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetPathWrap self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetPathWrap_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetPathWrap self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetPathWrap_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetPathWrap self, PathWrap aObject) -> bool

        Parameters:
            aObject: OpenSim::PathWrap *

        """
        return _opensim.SetPathWrap_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetPathWrap self, PathWrap aObject) -> bool

        Parameters:
            aObject: OpenSim::PathWrap const &

        """
        return _opensim.SetPathWrap_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetPathWrap self, int aIndex, PathWrap aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::PathWrap *

        """
        return _opensim.SetPathWrap_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetPathWrap self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetPathWrap self, PathWrap aObject) -> bool

        Parameters:
            aObject: OpenSim::PathWrap const *

        """
        return _opensim.SetPathWrap_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetPathWrap self)

        Parameters:
            self: OpenSim::Set< OpenSim::PathWrap > *

        """
        return _opensim.SetPathWrap_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetPathWrap self, int aIndex, PathWrap aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::PathWrap *
            preserveGroups: bool

        set(SetPathWrap self, int aIndex, PathWrap aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::PathWrap *

        """
        return _opensim.SetPathWrap_set(self, *args)

    def get(self, *args):
        """
        get(SetPathWrap self, int aIndex) -> PathWrap

        Parameters:
            aIndex: int

        get(SetPathWrap self, std::string const & aName) -> PathWrap

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetPathWrap_get(self, *args)

    def contains(self, *args):
        """
        contains(SetPathWrap self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetPathWrap_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetPathWrap self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetPathWrap_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetPathWrap self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::PathWrap > const *

        """
        return _opensim.SetPathWrap_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetPathWrap self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetPathWrap_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetPathWrap self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetPathWrap_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetPathWrap self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetPathWrap_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetPathWrap self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetPathWrap_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetPathWrap self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetPathWrap_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetPathWrap self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetPathWrap self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetPathWrap_getGroup(self, *args)

SetPathWrap_swigregister = _opensim.SetPathWrap_swigregister
SetPathWrap_swigregister(SetPathWrap)

def SetPathWrap_safeDownCast(*args):
  """
    SetPathWrap_safeDownCast(OpenSimObject obj) -> SetPathWrap

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetPathWrap_safeDownCast(*args)

def SetPathWrap_getClassName():
  """SetPathWrap_getClassName() -> std::string const &"""
  return _opensim.SetPathWrap_getClassName()

class PathWrapSet(SetPathWrap):
    """Proxy of C++ OpenSim::PathWrapSet class"""
    __swig_setmethods__ = {}
    for _s in [SetPathWrap]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PathWrapSet, name, value)
    __swig_getmethods__ = {}
    for _s in [SetPathWrap]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PathWrapSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PathWrapSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PathWrapSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PathWrapSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PathWrapSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PathWrapSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PathWrapSet self) -> PathWrapSet

        Parameters:
            self: OpenSim::PathWrapSet const *

        """
        return _opensim.PathWrapSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PathWrapSet self) -> std::string const &

        Parameters:
            self: OpenSim::PathWrapSet const *

        """
        return _opensim.PathWrapSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PathWrapSet self) -> PathWrapSet
        __init__(OpenSim::PathWrapSet self, PathWrapSet aPathWrapSet) -> PathWrapSet

        Parameters:
            aPathWrapSet: OpenSim::PathWrapSet const &

        """
        this = _opensim.new_PathWrapSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_PathWrapSet
    __del__ = lambda self : None;
PathWrapSet_swigregister = _opensim.PathWrapSet_swigregister
PathWrapSet_swigregister(PathWrapSet)

def PathWrapSet_safeDownCast(*args):
  """
    PathWrapSet_safeDownCast(OpenSimObject obj) -> PathWrapSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PathWrapSet_safeDownCast(*args)

def PathWrapSet_getClassName():
  """PathWrapSet_getClassName() -> std::string const &"""
  return _opensim.PathWrapSet_getClassName()

class WrapCylinderObst(WrapObject):
    """Proxy of C++ OpenSim::WrapCylinderObst class"""
    __swig_setmethods__ = {}
    for _s in [WrapObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, WrapCylinderObst, name, value)
    __swig_getmethods__ = {}
    for _s in [WrapObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, WrapCylinderObst, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> WrapCylinderObst

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.WrapCylinderObst_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(WrapCylinderObst self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.WrapCylinderObst_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.WrapCylinderObst_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(WrapCylinderObst self) -> WrapCylinderObst

        Parameters:
            self: OpenSim::WrapCylinderObst const *

        """
        return _opensim.WrapCylinderObst_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(WrapCylinderObst self) -> std::string const &

        Parameters:
            self: OpenSim::WrapCylinderObst const *

        """
        return _opensim.WrapCylinderObst_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::WrapCylinderObst self) -> WrapCylinderObst
        __init__(OpenSim::WrapCylinderObst self, WrapCylinderObst aWrapCylinderObst) -> WrapCylinderObst

        Parameters:
            aWrapCylinderObst: OpenSim::WrapCylinderObst const &

        """
        this = _opensim.new_WrapCylinderObst(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_WrapCylinderObst
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(WrapCylinderObst self, WrapCylinderObst aWrapCylinderObst)

        Parameters:
            aWrapCylinderObst: OpenSim::WrapCylinderObst const &

        """
        return _opensim.WrapCylinderObst_copyData(self, *args)

    def getRadius(self):
        """
        getRadius(WrapCylinderObst self) -> double

        Parameters:
            self: OpenSim::WrapCylinderObst const *

        """
        return _opensim.WrapCylinderObst_getRadius(self)

    def setRadius(self, *args):
        """
        setRadius(WrapCylinderObst self, double aRadius)

        Parameters:
            aRadius: double

        """
        return _opensim.WrapCylinderObst_setRadius(self, *args)

    def getLength(self):
        """
        getLength(WrapCylinderObst self) -> double

        Parameters:
            self: OpenSim::WrapCylinderObst const *

        """
        return _opensim.WrapCylinderObst_getLength(self)

    def setLength(self, *args):
        """
        setLength(WrapCylinderObst self, double aLength)

        Parameters:
            aLength: double

        """
        return _opensim.WrapCylinderObst_setLength(self, *args)

    def getWrapDirection(self):
        """
        getWrapDirection(WrapCylinderObst self) -> int

        Parameters:
            self: OpenSim::WrapCylinderObst const *

        """
        return _opensim.WrapCylinderObst_getWrapDirection(self)

    def getWrapTypeName(self):
        """
        getWrapTypeName(WrapCylinderObst self) -> char const *

        Parameters:
            self: OpenSim::WrapCylinderObst const *

        """
        return _opensim.WrapCylinderObst_getWrapTypeName(self)

    def getDimensionsString(self):
        """
        getDimensionsString(WrapCylinderObst self) -> std::string

        Parameters:
            self: OpenSim::WrapCylinderObst const *

        """
        return _opensim.WrapCylinderObst_getDimensionsString(self)

    def scale(self, *args):
        """
        scale(WrapCylinderObst self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &

        """
        return _opensim.WrapCylinderObst_scale(self, *args)

    def connectToModelAndBody(self, *args):
        """
        connectToModelAndBody(WrapCylinderObst self, Model aModel, Body aBody)

        Parameters:
            aModel: OpenSim::Model &
            aBody: OpenSim::Body &

        """
        return _opensim.WrapCylinderObst_connectToModelAndBody(self, *args)

WrapCylinderObst_swigregister = _opensim.WrapCylinderObst_swigregister
WrapCylinderObst_swigregister(WrapCylinderObst)

def WrapCylinderObst_safeDownCast(*args):
  """
    WrapCylinderObst_safeDownCast(OpenSimObject obj) -> WrapCylinderObst

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.WrapCylinderObst_safeDownCast(*args)

def WrapCylinderObst_getClassName():
  """WrapCylinderObst_getClassName() -> std::string const &"""
  return _opensim.WrapCylinderObst_getClassName()

class WrapSphereObst(WrapObject):
    """Proxy of C++ OpenSim::WrapSphereObst class"""
    __swig_setmethods__ = {}
    for _s in [WrapObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, WrapSphereObst, name, value)
    __swig_getmethods__ = {}
    for _s in [WrapObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, WrapSphereObst, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> WrapSphereObst

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.WrapSphereObst_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(WrapSphereObst self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.WrapSphereObst_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.WrapSphereObst_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(WrapSphereObst self) -> WrapSphereObst

        Parameters:
            self: OpenSim::WrapSphereObst const *

        """
        return _opensim.WrapSphereObst_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(WrapSphereObst self) -> std::string const &

        Parameters:
            self: OpenSim::WrapSphereObst const *

        """
        return _opensim.WrapSphereObst_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::WrapSphereObst self) -> WrapSphereObst
        __init__(OpenSim::WrapSphereObst self, WrapSphereObst aWrapSphereObst) -> WrapSphereObst

        Parameters:
            aWrapSphereObst: OpenSim::WrapSphereObst const &

        """
        this = _opensim.new_WrapSphereObst(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_WrapSphereObst
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(WrapSphereObst self, WrapSphereObst aWrapSphereObst)

        Parameters:
            aWrapSphereObst: OpenSim::WrapSphereObst const &

        """
        return _opensim.WrapSphereObst_copyData(self, *args)

    def getRadius(self):
        """
        getRadius(WrapSphereObst self) -> double

        Parameters:
            self: OpenSim::WrapSphereObst const *

        """
        return _opensim.WrapSphereObst_getRadius(self)

    def setRadius(self, *args):
        """
        setRadius(WrapSphereObst self, double aRadius)

        Parameters:
            aRadius: double

        """
        return _opensim.WrapSphereObst_setRadius(self, *args)

    def getLength(self):
        """
        getLength(WrapSphereObst self) -> double

        Parameters:
            self: OpenSim::WrapSphereObst const *

        """
        return _opensim.WrapSphereObst_getLength(self)

    def setLength(self, *args):
        """
        setLength(WrapSphereObst self, double aLength)

        Parameters:
            aLength: double

        """
        return _opensim.WrapSphereObst_setLength(self, *args)

    def getWrapTypeName(self):
        """
        getWrapTypeName(WrapSphereObst self) -> char const *

        Parameters:
            self: OpenSim::WrapSphereObst const *

        """
        return _opensim.WrapSphereObst_getWrapTypeName(self)

    def getDimensionsString(self):
        """
        getDimensionsString(WrapSphereObst self) -> std::string

        Parameters:
            self: OpenSim::WrapSphereObst const *

        """
        return _opensim.WrapSphereObst_getDimensionsString(self)

    def scale(self, *args):
        """
        scale(WrapSphereObst self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &

        """
        return _opensim.WrapSphereObst_scale(self, *args)

    def connectToModelAndBody(self, *args):
        """
        connectToModelAndBody(WrapSphereObst self, Model aModel, Body aBody)

        Parameters:
            aModel: OpenSim::Model &
            aBody: OpenSim::Body &

        """
        return _opensim.WrapSphereObst_connectToModelAndBody(self, *args)

WrapSphereObst_swigregister = _opensim.WrapSphereObst_swigregister
WrapSphereObst_swigregister(WrapSphereObst)

def WrapSphereObst_safeDownCast(*args):
  """
    WrapSphereObst_safeDownCast(OpenSimObject obj) -> WrapSphereObst

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.WrapSphereObst_safeDownCast(*args)

def WrapSphereObst_getClassName():
  """WrapSphereObst_getClassName() -> std::string const &"""
  return _opensim.WrapSphereObst_getClassName()

class WrapDoubleCylinderObst(WrapObject):
    """Proxy of C++ OpenSim::WrapDoubleCylinderObst class"""
    __swig_setmethods__ = {}
    for _s in [WrapObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, WrapDoubleCylinderObst, name, value)
    __swig_getmethods__ = {}
    for _s in [WrapObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, WrapDoubleCylinderObst, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> WrapDoubleCylinderObst

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.WrapDoubleCylinderObst_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(WrapDoubleCylinderObst self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.WrapDoubleCylinderObst_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.WrapDoubleCylinderObst_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(WrapDoubleCylinderObst self) -> WrapDoubleCylinderObst

        Parameters:
            self: OpenSim::WrapDoubleCylinderObst const *

        """
        return _opensim.WrapDoubleCylinderObst_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(WrapDoubleCylinderObst self) -> std::string const &

        Parameters:
            self: OpenSim::WrapDoubleCylinderObst const *

        """
        return _opensim.WrapDoubleCylinderObst_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::WrapDoubleCylinderObst self) -> WrapDoubleCylinderObst
        __init__(OpenSim::WrapDoubleCylinderObst self, WrapDoubleCylinderObst aWrapDoubleCylinderObst) -> WrapDoubleCylinderObst

        Parameters:
            aWrapDoubleCylinderObst: OpenSim::WrapDoubleCylinderObst const &

        """
        this = _opensim.new_WrapDoubleCylinderObst(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_WrapDoubleCylinderObst
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(WrapDoubleCylinderObst self, WrapDoubleCylinderObst aWrapDoubleCylinderObst)

        Parameters:
            aWrapDoubleCylinderObst: OpenSim::WrapDoubleCylinderObst const &

        """
        return _opensim.WrapDoubleCylinderObst_copyData(self, *args)

    def getRadius(self):
        """
        getRadius(WrapDoubleCylinderObst self) -> double

        Parameters:
            self: OpenSim::WrapDoubleCylinderObst const *

        """
        return _opensim.WrapDoubleCylinderObst_getRadius(self)

    def setRadius(self, *args):
        """
        setRadius(WrapDoubleCylinderObst self, double aRadius)

        Parameters:
            aRadius: double

        """
        return _opensim.WrapDoubleCylinderObst_setRadius(self, *args)

    def getLength(self):
        """
        getLength(WrapDoubleCylinderObst self) -> double

        Parameters:
            self: OpenSim::WrapDoubleCylinderObst const *

        """
        return _opensim.WrapDoubleCylinderObst_getLength(self)

    def setLength(self, *args):
        """
        setLength(WrapDoubleCylinderObst self, double aLength)

        Parameters:
            aLength: double

        """
        return _opensim.WrapDoubleCylinderObst_setLength(self, *args)

    def getWrapDirection(self):
        """
        getWrapDirection(WrapDoubleCylinderObst self) -> int

        Parameters:
            self: OpenSim::WrapDoubleCylinderObst const *

        """
        return _opensim.WrapDoubleCylinderObst_getWrapDirection(self)

    def getWrapTypeName(self):
        """
        getWrapTypeName(WrapDoubleCylinderObst self) -> char const *

        Parameters:
            self: OpenSim::WrapDoubleCylinderObst const *

        """
        return _opensim.WrapDoubleCylinderObst_getWrapTypeName(self)

    def getDimensionsString(self):
        """
        getDimensionsString(WrapDoubleCylinderObst self) -> std::string

        Parameters:
            self: OpenSim::WrapDoubleCylinderObst const *

        """
        return _opensim.WrapDoubleCylinderObst_getDimensionsString(self)

    def scale(self, *args):
        """
        scale(WrapDoubleCylinderObst self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &

        """
        return _opensim.WrapDoubleCylinderObst_scale(self, *args)

    def connectToModelAndBody(self, *args):
        """
        connectToModelAndBody(WrapDoubleCylinderObst self, Model aModel, Body aBody)

        Parameters:
            aModel: OpenSim::Model &
            aBody: OpenSim::Body &

        """
        return _opensim.WrapDoubleCylinderObst_connectToModelAndBody(self, *args)

WrapDoubleCylinderObst_swigregister = _opensim.WrapDoubleCylinderObst_swigregister
WrapDoubleCylinderObst_swigregister(WrapDoubleCylinderObst)

def WrapDoubleCylinderObst_safeDownCast(*args):
  """
    WrapDoubleCylinderObst_safeDownCast(OpenSimObject obj) -> WrapDoubleCylinderObst

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.WrapDoubleCylinderObst_safeDownCast(*args)

def WrapDoubleCylinderObst_getClassName():
  """WrapDoubleCylinderObst_getClassName() -> std::string const &"""
  return _opensim.WrapDoubleCylinderObst_getClassName()

class Body(ModelComponent):
    """Proxy of C++ OpenSim::Body class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponent]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Body, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponent]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Body, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Body

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Body_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Body self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Body_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Body_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Body self) -> Body

        Parameters:
            self: OpenSim::Body const *

        """
        return _opensim.Body_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Body self) -> std::string const &

        Parameters:
            self: OpenSim::Body const *

        """
        return _opensim.Body_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Body self) -> Body
        __init__(OpenSim::Body self, std::string const & aName, double aMass, Vec3 aMassCenter, Inertia aInertia) -> Body

        Parameters:
            aName: std::string const &
            aMass: double
            aMassCenter: SimTK::Vec3 const &
            aInertia: SimTK::Inertia const &

        __init__(OpenSim::Body self, Body aBody) -> Body

        Parameters:
            aBody: OpenSim::Body const &

        """
        this = _opensim.new_Body(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_Body
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(Body self, Body aBody)

        Parameters:
            aBody: OpenSim::Body const &

        """
        return _opensim.Body_copyData(self, *args)

    def addDisplayGeometry(self, *args):
        """
        addDisplayGeometry(Body self, std::string const & aGeometryFileName)

        Parameters:
            aGeometryFileName: std::string const &

        """
        return _opensim.Body_addDisplayGeometry(self, *args)

    def getMass(self):
        """
        getMass(Body self) -> double

        Parameters:
            self: OpenSim::Body const *

        """
        return _opensim.Body_getMass(self)

    def setMass(self, *args):
        """
        setMass(Body self, double aMass) -> bool

        Parameters:
            aMass: double

        """
        return _opensim.Body_setMass(self, *args)

    def getMassCenter(self, *args):
        """
        getMassCenter(Body self, Vec3 rVec)

        Parameters:
            rVec: SimTK::Vec3 &

        """
        return _opensim.Body_getMassCenter(self, *args)

    def setMassCenter(self, *args):
        """
        setMassCenter(Body self, Vec3 aVec) -> bool

        Parameters:
            aVec: SimTK::Vec3 const &

        """
        return _opensim.Body_setMassCenter(self, *args)

    def getInertia(self, *args):
        """
        getInertia(Body self, Mat33 rInertia)

        Parameters:
            rInertia: SimTK::Mat33 &

        """
        return _opensim.Body_getInertia(self, *args)

    def setInertia(self, *args):
        """
        setInertia(Body self, Inertia aInertia) -> bool

        Parameters:
            aInertia: SimTK::Inertia const &

        """
        return _opensim.Body_setInertia(self, *args)

    def hasJoint(self):
        """
        hasJoint(Body self) -> bool

        Parameters:
            self: OpenSim::Body const *

        """
        return _opensim.Body_hasJoint(self)

    def getJoint(self):
        """
        getJoint(Body self) -> Joint &

        Parameters:
            self: OpenSim::Body const *

        """
        return _opensim.Body_getJoint(self)

    def setJoint(self, *args):
        """
        setJoint(Body self, Joint & aJoint)

        Parameters:
            aJoint: Joint &

        """
        return _opensim.Body_setJoint(self, *args)

    def scale(self, *args):
        """
        scale(Body self, Vec3 aScaleFactors, bool aScaleMass=False)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &
            aScaleMass: bool

        scale(Body self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &

        """
        return _opensim.Body_scale(self, *args)

    def scaleInertialProperties(self, *args):
        """
        scaleInertialProperties(Body self, Vec3 aScaleFactors, bool aScaleMass=True)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &
            aScaleMass: bool

        scaleInertialProperties(Body self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 const &

        """
        return _opensim.Body_scaleInertialProperties(self, *args)

    def scaleMass(self, *args):
        """
        scaleMass(Body self, double aScaleFactor)

        Parameters:
            aScaleFactor: double

        """
        return _opensim.Body_scaleMass(self, *args)

    def getDisplayer(self):
        """
        getDisplayer(Body self) -> VisibleObject

        Parameters:
            self: OpenSim::Body const *

        """
        return _opensim.Body_getDisplayer(self)

    def updDisplayer(self):
        """
        updDisplayer(Body self) -> VisibleObject

        Parameters:
            self: OpenSim::Body *

        """
        return _opensim.Body_updDisplayer(self)

    def getIndex(self):
        """
        getIndex(Body self) -> SimTK::MobilizedBodyIndex const

        Parameters:
            self: OpenSim::Body const *

        """
        return _opensim.Body_getIndex(self)

    def getScaleFactors(self, *args):
        """
        getScaleFactors(Body self, Vec3 aScaleFactors)

        Parameters:
            aScaleFactors: SimTK::Vec3 &

        """
        return _opensim.Body_getScaleFactors(self, *args)

    def addWrapObject(self, *args):
        """
        addWrapObject(Body self, WrapObject wrapObject)

        Parameters:
            wrapObject: OpenSim::WrapObject *

        """
        return _opensim.Body_addWrapObject(self, *args)

    def getWrapObject(self, *args):
        """
        getWrapObject(Body self, std::string const & aName) -> WrapObject

        Parameters:
            aName: std::string const &

        """
        return _opensim.Body_getWrapObject(self, *args)

    def getWrapObjectSet(self):
        """
        getWrapObjectSet(Body self) -> WrapObjectSet

        Parameters:
            self: OpenSim::Body const *

        """
        return _opensim.Body_getWrapObjectSet(self)

    def getMassProperties(self):
        """
        getMassProperties(Body self) -> MassProperties

        Parameters:
            self: OpenSim::Body *

        """
        return _opensim.Body_getMassProperties(self)

    def getNumStateVariables(self):
        """
        getNumStateVariables(Body self) -> int

        Parameters:
            self: OpenSim::Body const *

        """
        return _opensim.Body_getNumStateVariables(self)

Body_swigregister = _opensim.Body_swigregister
Body_swigregister(Body)

def Body_safeDownCast(*args):
  """
    Body_safeDownCast(OpenSimObject obj) -> Body

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Body_safeDownCast(*args)

def Body_getClassName():
  """Body_getClassName() -> std::string const &"""
  return _opensim.Body_getClassName()

class SetBodies(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Body)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetBodies, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetBodies, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetBodies

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetBodies_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetBodies self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetBodies_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetBodies_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetBodies self) -> SetBodies

        Parameters:
            self: OpenSim::Set< OpenSim::Body > const *

        """
        return _opensim.SetBodies_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetBodies self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Body > const *

        """
        return _opensim.SetBodies_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetBodies
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Body)> self) -> SetBodies
        __init__(OpenSim::Set<(OpenSim::Body)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetBodies

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Body)> self, std::string const & aFileName) -> SetBodies

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Body)> self, SetBodies aSet) -> SetBodies

        Parameters:
            aSet: OpenSim::Set< OpenSim::Body > const &

        """
        this = _opensim.new_SetBodies(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetBodies self)

        Parameters:
            self: OpenSim::Set< OpenSim::Body > *

        """
        return _opensim.SetBodies_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetBodies self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetBodies_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetBodies self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetBodies_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetBodies self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Body > const *

        """
        return _opensim.SetBodies_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetBodies self, Body aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Body const *
            aStartIndex: int

        getIndex(SetBodies self, Body aObject) -> int

        Parameters:
            aObject: OpenSim::Body const *

        getIndex(SetBodies self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetBodies self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetBodies_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetBodies self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetBodies_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetBodies self, Body aObject) -> bool

        Parameters:
            aObject: OpenSim::Body *

        """
        return _opensim.SetBodies_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetBodies self, Body aObject) -> bool

        Parameters:
            aObject: OpenSim::Body const &

        """
        return _opensim.SetBodies_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetBodies self, int aIndex, Body aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Body *

        """
        return _opensim.SetBodies_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetBodies self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetBodies self, Body aObject) -> bool

        Parameters:
            aObject: OpenSim::Body const *

        """
        return _opensim.SetBodies_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetBodies self)

        Parameters:
            self: OpenSim::Set< OpenSim::Body > *

        """
        return _opensim.SetBodies_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetBodies self, int aIndex, Body aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Body *
            preserveGroups: bool

        set(SetBodies self, int aIndex, Body aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Body *

        """
        return _opensim.SetBodies_set(self, *args)

    def get(self, *args):
        """
        get(SetBodies self, int aIndex) -> Body

        Parameters:
            aIndex: int

        get(SetBodies self, std::string const & aName) -> Body

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetBodies_get(self, *args)

    def contains(self, *args):
        """
        contains(SetBodies self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetBodies_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetBodies self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetBodies_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetBodies self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Body > const *

        """
        return _opensim.SetBodies_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetBodies self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetBodies_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetBodies self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetBodies_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetBodies self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetBodies_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetBodies self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetBodies_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetBodies self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetBodies_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetBodies self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetBodies self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetBodies_getGroup(self, *args)

SetBodies_swigregister = _opensim.SetBodies_swigregister
SetBodies_swigregister(SetBodies)

def SetBodies_safeDownCast(*args):
  """
    SetBodies_safeDownCast(OpenSimObject obj) -> SetBodies

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetBodies_safeDownCast(*args)

def SetBodies_getClassName():
  """SetBodies_getClassName() -> std::string const &"""
  return _opensim.SetBodies_getClassName()

class ModelComponentSetBodies(SetBodies):
    """Proxy of C++ OpenSim::ModelComponentSet<(OpenSim::Body)> class"""
    __swig_setmethods__ = {}
    for _s in [SetBodies]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ModelComponentSetBodies, name, value)
    __swig_getmethods__ = {}
    for _s in [SetBodies]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ModelComponentSetBodies, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ModelComponentSetBodies

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ModelComponentSetBodies_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ModelComponentSetBodies self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ModelComponentSetBodies_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ModelComponentSetBodies_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ModelComponentSetBodies self) -> ModelComponentSetBodies

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::Body > const *

        """
        return _opensim.ModelComponentSetBodies_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ModelComponentSetBodies self) -> std::string const &

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::Body > const *

        """
        return _opensim.ModelComponentSetBodies_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ModelComponentSet<(OpenSim::Body)> self) -> ModelComponentSetBodies
        __init__(OpenSim::ModelComponentSet<(OpenSim::Body)> self, Model model) -> ModelComponentSetBodies

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ModelComponentSet<(OpenSim::Body)> self, Model model, std::string const & fileName, bool aUpdateFromXMLNode=True) -> ModelComponentSetBodies

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ModelComponentSet<(OpenSim::Body)> self, Model model, std::string const & fileName) -> ModelComponentSetBodies

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &

        __init__(OpenSim::ModelComponentSet<(OpenSim::Body)> self, ModelComponentSetBodies source) -> ModelComponentSetBodies

        Parameters:
            source: OpenSim::ModelComponentSet< OpenSim::Body > const &

        """
        this = _opensim.new_ModelComponentSetBodies(*args)
        try: self.this.append(this)
        except: self.this = this
    def insert(self, *args):
        """
        insert(ModelComponentSetBodies self, int aIndex, Body aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Body *

        """
        return _opensim.ModelComponentSetBodies_insert(self, *args)

    def set(self, *args):
        """
        set(ModelComponentSetBodies self, int aIndex, Body aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Body *
            preserveGroups: bool

        set(ModelComponentSetBodies self, int aIndex, Body aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Body *

        """
        return _opensim.ModelComponentSetBodies_set(self, *args)

    def invokeConnectToModel(self, *args):
        """
        invokeConnectToModel(ModelComponentSetBodies self, Model model)

        Parameters:
            model: OpenSim::Model &

        """
        return _opensim.ModelComponentSetBodies_invokeConnectToModel(self, *args)

    def invokeAddToSystem(self, *args):
        """
        invokeAddToSystem(ModelComponentSetBodies self, SimTK::MultibodySystem & system)

        Parameters:
            system: SimTK::MultibodySystem &

        """
        return _opensim.ModelComponentSetBodies_invokeAddToSystem(self, *args)

    def invokeInitStateFromProperties(self, *args):
        """
        invokeInitStateFromProperties(ModelComponentSetBodies self, State state)

        Parameters:
            state: SimTK::State &

        """
        return _opensim.ModelComponentSetBodies_invokeInitStateFromProperties(self, *args)

    def invokeSetPropertiesFromState(self, *args):
        """
        invokeSetPropertiesFromState(ModelComponentSetBodies self, State state)

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ModelComponentSetBodies_invokeSetPropertiesFromState(self, *args)

    def invokeGenerateDecorations(self, *args):
        """
        invokeGenerateDecorations(ModelComponentSetBodies self, bool fixed, ModelDisplayHints hints, State state, ArrayDecorativeGeometry appendToThis)

        Parameters:
            fixed: bool
            hints: OpenSim::ModelDisplayHints const &
            state: SimTK::State const &
            appendToThis: SimTK::Array_< SimTK::DecorativeGeometry,unsigned int > &

        """
        return _opensim.ModelComponentSetBodies_invokeGenerateDecorations(self, *args)

    __swig_destroy__ = _opensim.delete_ModelComponentSetBodies
    __del__ = lambda self : None;
ModelComponentSetBodies_swigregister = _opensim.ModelComponentSetBodies_swigregister
ModelComponentSetBodies_swigregister(ModelComponentSetBodies)

def ModelComponentSetBodies_safeDownCast(*args):
  """
    ModelComponentSetBodies_safeDownCast(OpenSimObject obj) -> ModelComponentSetBodies

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ModelComponentSetBodies_safeDownCast(*args)

def ModelComponentSetBodies_getClassName():
  """ModelComponentSetBodies_getClassName() -> std::string const &"""
  return _opensim.ModelComponentSetBodies_getClassName()

class BodySet(ModelComponentSetBodies):
    """Proxy of C++ OpenSim::BodySet class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponentSetBodies]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, BodySet, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponentSetBodies]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, BodySet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> BodySet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.BodySet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(BodySet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.BodySet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.BodySet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(BodySet self) -> BodySet

        Parameters:
            self: OpenSim::BodySet const *

        """
        return _opensim.BodySet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(BodySet self) -> std::string const &

        Parameters:
            self: OpenSim::BodySet const *

        """
        return _opensim.BodySet_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_BodySet
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::BodySet self) -> BodySet
        __init__(OpenSim::BodySet self, Model model) -> BodySet

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::BodySet self, BodySet aAbsBodySet) -> BodySet

        Parameters:
            aAbsBodySet: OpenSim::BodySet const &

        __init__(OpenSim::BodySet self, Model model, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> BodySet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::BodySet self, Model model, std::string const & aFileName) -> BodySet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &

        """
        this = _opensim.new_BodySet(*args)
        try: self.this.append(this)
        except: self.this = this
    def scale(self, *args):
        """
        scale(BodySet self, ScaleSet aScaleSet, bool aScaleMass=False)

        Parameters:
            aScaleSet: OpenSim::ScaleSet const &
            aScaleMass: bool

        scale(BodySet self, ScaleSet aScaleSet)

        Parameters:
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.BodySet_scale(self, *args)

    def adoptAndAppend(self, aBody):
        aBody._markAdopted()
        return super(BodySet, self).adoptAndAppend(aBody)

BodySet_swigregister = _opensim.BodySet_swigregister
BodySet_swigregister(BodySet)

def BodySet_safeDownCast(*args):
  """
    BodySet_safeDownCast(OpenSimObject obj) -> BodySet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.BodySet_safeDownCast(*args)

def BodySet_getClassName():
  """BodySet_getClassName() -> std::string const &"""
  return _opensim.BodySet_getClassName()

class BodyScale(OpenSimObject):
    """Proxy of C++ OpenSim::BodyScale class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, BodyScale, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, BodyScale, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> BodyScale

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.BodyScale_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(BodyScale self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.BodyScale_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.BodyScale_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(BodyScale self) -> BodyScale

        Parameters:
            self: OpenSim::BodyScale const *

        """
        return _opensim.BodyScale_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(BodyScale self) -> std::string const &

        Parameters:
            self: OpenSim::BodyScale const *

        """
        return _opensim.BodyScale_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::BodyScale self) -> BodyScale
        __init__(OpenSim::BodyScale self, BodyScale aBodyScale) -> BodyScale

        Parameters:
            aBodyScale: OpenSim::BodyScale const &

        """
        this = _opensim.new_BodyScale(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_BodyScale
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(BodyScale self, BodyScale aBodyScale)

        Parameters:
            aBodyScale: OpenSim::BodyScale const &

        """
        return _opensim.BodyScale_copyData(self, *args)

    def getAxisNames(self):
        """
        getAxisNames(BodyScale self) -> ArrayStr

        Parameters:
            self: OpenSim::BodyScale *

        """
        return _opensim.BodyScale_getAxisNames(self)

    def setAxisNames(self, *args):
        """
        setAxisNames(BodyScale self, ArrayStr aAxisNames)

        Parameters:
            aAxisNames: OpenSim::Array< std::string > const &

        """
        return _opensim.BodyScale_setAxisNames(self, *args)

BodyScale_swigregister = _opensim.BodyScale_swigregister
BodyScale_swigregister(BodyScale)

def BodyScale_safeDownCast(*args):
  """
    BodyScale_safeDownCast(OpenSimObject obj) -> BodyScale

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.BodyScale_safeDownCast(*args)

def BodyScale_getClassName():
  """BodyScale_getClassName() -> std::string const &"""
  return _opensim.BodyScale_getClassName()

class SetBodyScales(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::BodyScale)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetBodyScales, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetBodyScales, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetBodyScales

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetBodyScales_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetBodyScales self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetBodyScales_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetBodyScales_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetBodyScales self) -> SetBodyScales

        Parameters:
            self: OpenSim::Set< OpenSim::BodyScale > const *

        """
        return _opensim.SetBodyScales_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetBodyScales self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::BodyScale > const *

        """
        return _opensim.SetBodyScales_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetBodyScales
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::BodyScale)> self) -> SetBodyScales
        __init__(OpenSim::Set<(OpenSim::BodyScale)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetBodyScales

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::BodyScale)> self, std::string const & aFileName) -> SetBodyScales

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::BodyScale)> self, SetBodyScales aSet) -> SetBodyScales

        Parameters:
            aSet: OpenSim::Set< OpenSim::BodyScale > const &

        """
        this = _opensim.new_SetBodyScales(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetBodyScales self)

        Parameters:
            self: OpenSim::Set< OpenSim::BodyScale > *

        """
        return _opensim.SetBodyScales_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetBodyScales self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetBodyScales_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetBodyScales self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetBodyScales_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetBodyScales self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::BodyScale > const *

        """
        return _opensim.SetBodyScales_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetBodyScales self, BodyScale aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::BodyScale const *
            aStartIndex: int

        getIndex(SetBodyScales self, BodyScale aObject) -> int

        Parameters:
            aObject: OpenSim::BodyScale const *

        getIndex(SetBodyScales self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetBodyScales self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetBodyScales_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetBodyScales self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetBodyScales_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetBodyScales self, BodyScale aObject) -> bool

        Parameters:
            aObject: OpenSim::BodyScale *

        """
        return _opensim.SetBodyScales_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetBodyScales self, BodyScale aObject) -> bool

        Parameters:
            aObject: OpenSim::BodyScale const &

        """
        return _opensim.SetBodyScales_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetBodyScales self, int aIndex, BodyScale aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::BodyScale *

        """
        return _opensim.SetBodyScales_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetBodyScales self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetBodyScales self, BodyScale aObject) -> bool

        Parameters:
            aObject: OpenSim::BodyScale const *

        """
        return _opensim.SetBodyScales_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetBodyScales self)

        Parameters:
            self: OpenSim::Set< OpenSim::BodyScale > *

        """
        return _opensim.SetBodyScales_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetBodyScales self, int aIndex, BodyScale aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::BodyScale *
            preserveGroups: bool

        set(SetBodyScales self, int aIndex, BodyScale aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::BodyScale *

        """
        return _opensim.SetBodyScales_set(self, *args)

    def get(self, *args):
        """
        get(SetBodyScales self, int aIndex) -> BodyScale

        Parameters:
            aIndex: int

        get(SetBodyScales self, std::string const & aName) -> BodyScale

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetBodyScales_get(self, *args)

    def contains(self, *args):
        """
        contains(SetBodyScales self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetBodyScales_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetBodyScales self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetBodyScales_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetBodyScales self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::BodyScale > const *

        """
        return _opensim.SetBodyScales_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetBodyScales self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetBodyScales_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetBodyScales self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetBodyScales_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetBodyScales self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetBodyScales_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetBodyScales self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetBodyScales_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetBodyScales self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetBodyScales_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetBodyScales self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetBodyScales self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetBodyScales_getGroup(self, *args)

SetBodyScales_swigregister = _opensim.SetBodyScales_swigregister
SetBodyScales_swigregister(SetBodyScales)

def SetBodyScales_safeDownCast(*args):
  """
    SetBodyScales_safeDownCast(OpenSimObject obj) -> SetBodyScales

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetBodyScales_safeDownCast(*args)

def SetBodyScales_getClassName():
  """SetBodyScales_getClassName() -> std::string const &"""
  return _opensim.SetBodyScales_getClassName()

class BodyScaleSet(SetBodyScales):
    """Proxy of C++ OpenSim::BodyScaleSet class"""
    __swig_setmethods__ = {}
    for _s in [SetBodyScales]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, BodyScaleSet, name, value)
    __swig_getmethods__ = {}
    for _s in [SetBodyScales]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, BodyScaleSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> BodyScaleSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.BodyScaleSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(BodyScaleSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.BodyScaleSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.BodyScaleSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(BodyScaleSet self) -> BodyScaleSet

        Parameters:
            self: OpenSim::BodyScaleSet const *

        """
        return _opensim.BodyScaleSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(BodyScaleSet self) -> std::string const &

        Parameters:
            self: OpenSim::BodyScaleSet const *

        """
        return _opensim.BodyScaleSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::BodyScaleSet self) -> BodyScaleSet
        __init__(OpenSim::BodyScaleSet self, BodyScaleSet aBodyScaleSet) -> BodyScaleSet

        Parameters:
            aBodyScaleSet: OpenSim::BodyScaleSet const &

        """
        this = _opensim.new_BodyScaleSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_BodyScaleSet
    __del__ = lambda self : None;
    def adoptAndAppend(self, aBodyScale):
        aBodyScale._markAdopted()
        return super(BodyScaleSet, self).adoptAndAppend(aBodyScale)

BodyScaleSet_swigregister = _opensim.BodyScaleSet_swigregister
BodyScaleSet_swigregister(BodyScaleSet)

def BodyScaleSet_safeDownCast(*args):
  """
    BodyScaleSet_safeDownCast(OpenSimObject obj) -> BodyScaleSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.BodyScaleSet_safeDownCast(*args)

def BodyScaleSet_getClassName():
  """BodyScaleSet_getClassName() -> std::string const &"""
  return _opensim.BodyScaleSet_getClassName()

class SimbodyEngine(OpenSimObject):
    """Proxy of C++ OpenSim::SimbodyEngine class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SimbodyEngine, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SimbodyEngine, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SimbodyEngine

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SimbodyEngine_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SimbodyEngine self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SimbodyEngine_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SimbodyEngine_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SimbodyEngine self) -> SimbodyEngine

        Parameters:
            self: OpenSim::SimbodyEngine const *

        """
        return _opensim.SimbodyEngine_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SimbodyEngine self) -> std::string const &

        Parameters:
            self: OpenSim::SimbodyEngine const *

        """
        return _opensim.SimbodyEngine_getConcreteClassName(self)

    __swig_setmethods__["_model"] = _opensim.SimbodyEngine__model_set
    __swig_getmethods__["_model"] = _opensim.SimbodyEngine__model_get
    if _newclass:_model = _swig_property(_opensim.SimbodyEngine__model_get, _opensim.SimbodyEngine__model_set)
    __swig_destroy__ = _opensim.delete_SimbodyEngine
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::SimbodyEngine self) -> SimbodyEngine
        __init__(OpenSim::SimbodyEngine self, std::string const & aFileName) -> SimbodyEngine

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::SimbodyEngine self, SimbodyEngine aEngine) -> SimbodyEngine

        Parameters:
            aEngine: OpenSim::SimbodyEngine const &

        """
        this = _opensim.new_SimbodyEngine(*args)
        try: self.this.append(this)
        except: self.this = this
    def getModel(self):
        """
        getModel(SimbodyEngine self) -> Model

        Parameters:
            self: OpenSim::SimbodyEngine *

        """
        return _opensim.SimbodyEngine_getModel(self)

    def setModel(self, *args):
        """
        setModel(SimbodyEngine self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.SimbodyEngine_setModel(self, *args)

    def connectSimbodyEngineToModel(self, *args):
        """
        connectSimbodyEngineToModel(SimbodyEngine self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.SimbodyEngine_connectSimbodyEngineToModel(self, *args)

    def getGroundBody(self):
        """
        getGroundBody(SimbodyEngine self) -> Body

        Parameters:
            self: OpenSim::SimbodyEngine const *

        """
        return _opensim.SimbodyEngine_getGroundBody(self)

    def getWrapObject(self, *args):
        """
        getWrapObject(SimbodyEngine self, std::string const & aName) -> WrapObject

        Parameters:
            aName: std::string const &

        """
        return _opensim.SimbodyEngine_getWrapObject(self, *args)

    def getPosition(self, *args):
        """
        getPosition(SimbodyEngine self, State s, Body aBody, Vec3 aPoint, Vec3 rPos)

        Parameters:
            s: SimTK::State const &
            aBody: OpenSim::Body const &
            aPoint: SimTK::Vec3 const &
            rPos: SimTK::Vec3 &

        """
        return _opensim.SimbodyEngine_getPosition(self, *args)

    def getVelocity(self, *args):
        """
        getVelocity(SimbodyEngine self, State s, Body aBody, Vec3 aPoint, Vec3 rVel)

        Parameters:
            s: SimTK::State const &
            aBody: OpenSim::Body const &
            aPoint: SimTK::Vec3 const &
            rVel: SimTK::Vec3 &

        """
        return _opensim.SimbodyEngine_getVelocity(self, *args)

    def getAcceleration(self, *args):
        """
        getAcceleration(SimbodyEngine self, State s, Body aBody, Vec3 aPoint, Vec3 rAcc)

        Parameters:
            s: SimTK::State const &
            aBody: OpenSim::Body const &
            aPoint: SimTK::Vec3 const &
            rAcc: SimTK::Vec3 &

        """
        return _opensim.SimbodyEngine_getAcceleration(self, *args)

    def getDirectionCosines(self, *args):
        """
        getDirectionCosines(SimbodyEngine self, State s, Body aBody, double [3][3] rDirCos)

        Parameters:
            s: SimTK::State const &
            aBody: OpenSim::Body const &
            rDirCos: double [3][3]

        getDirectionCosines(SimbodyEngine self, State s, Body aBody, double * rDirCos)

        Parameters:
            s: SimTK::State const &
            aBody: OpenSim::Body const &
            rDirCos: double *

        """
        return _opensim.SimbodyEngine_getDirectionCosines(self, *args)

    def getAngularVelocity(self, *args):
        """
        getAngularVelocity(SimbodyEngine self, State s, Body aBody, Vec3 rAngVel)

        Parameters:
            s: SimTK::State const &
            aBody: OpenSim::Body const &
            rAngVel: SimTK::Vec3 &

        """
        return _opensim.SimbodyEngine_getAngularVelocity(self, *args)

    def getAngularVelocityBodyLocal(self, *args):
        """
        getAngularVelocityBodyLocal(SimbodyEngine self, State s, Body aBody, Vec3 rAngVel)

        Parameters:
            s: SimTK::State const &
            aBody: OpenSim::Body const &
            rAngVel: SimTK::Vec3 &

        """
        return _opensim.SimbodyEngine_getAngularVelocityBodyLocal(self, *args)

    def getAngularAcceleration(self, *args):
        """
        getAngularAcceleration(SimbodyEngine self, State s, Body aBody, Vec3 rAngAcc)

        Parameters:
            s: SimTK::State const &
            aBody: OpenSim::Body const &
            rAngAcc: SimTK::Vec3 &

        """
        return _opensim.SimbodyEngine_getAngularAcceleration(self, *args)

    def getAngularAccelerationBodyLocal(self, *args):
        """
        getAngularAccelerationBodyLocal(SimbodyEngine self, State s, Body aBody, Vec3 rAngAcc)

        Parameters:
            s: SimTK::State const &
            aBody: OpenSim::Body const &
            rAngAcc: SimTK::Vec3 &

        """
        return _opensim.SimbodyEngine_getAngularAccelerationBodyLocal(self, *args)

    def getTransform(self, *args):
        """
        getTransform(SimbodyEngine self, State s, Body aBody) -> Transform

        Parameters:
            s: SimTK::State const &
            aBody: OpenSim::Body const &

        """
        return _opensim.SimbodyEngine_getTransform(self, *args)

    def computeReactions(self, *args):
        """
        computeReactions(SimbodyEngine self, State s, VectorOfVec3 rForces, VectorOfVec3 rTorques)

        Parameters:
            s: SimTK::State const &
            rForces: SimTK::Vector_< SimTK::Vec3 > &
            rTorques: SimTK::Vector_< SimTK::Vec3 > &

        """
        return _opensim.SimbodyEngine_computeReactions(self, *args)

    def formCompleteStorages(self, *args):
        """
        formCompleteStorages(SimbodyEngine self, State s, Storage aQIn, OpenSim::Storage *& rQComplete, OpenSim::Storage *& rUComplete)

        Parameters:
            s: SimTK::State const &
            aQIn: OpenSim::Storage const &
            rQComplete: OpenSim::Storage *&
            rUComplete: OpenSim::Storage *&

        """
        return _opensim.SimbodyEngine_formCompleteStorages(self, *args)

    def formEulerTransform(self, *args):
        """
        formEulerTransform(SimbodyEngine self, State s, Body aBody, double * rE)

        Parameters:
            s: SimTK::State const &
            aBody: OpenSim::Body const &
            rE: double *

        """
        return _opensim.SimbodyEngine_formEulerTransform(self, *args)

    def transform(self, *args):
        """
        transform(SimbodyEngine self, State s, Body aBodyFrom, double const [3] aVec, Body aBodyTo, double [3] rVec)

        Parameters:
            s: SimTK::State const &
            aBodyFrom: OpenSim::Body const &
            aVec: double const [3]
            aBodyTo: OpenSim::Body const &
            rVec: double [3]

        transform(SimbodyEngine self, State s, Body aBodyFrom, Vec3 aVec, Body aBodyTo, Vec3 rVec)

        Parameters:
            s: SimTK::State const &
            aBodyFrom: OpenSim::Body const &
            aVec: SimTK::Vec3 const &
            aBodyTo: OpenSim::Body const &
            rVec: SimTK::Vec3 &

        """
        return _opensim.SimbodyEngine_transform(self, *args)

    def transformPosition(self, *args):
        """
        transformPosition(SimbodyEngine self, State s, Body aBodyFrom, double const [3] aPos, Body aBodyTo, double [3] rPos)

        Parameters:
            s: SimTK::State const &
            aBodyFrom: OpenSim::Body const &
            aPos: double const [3]
            aBodyTo: OpenSim::Body const &
            rPos: double [3]

        transformPosition(SimbodyEngine self, State s, Body aBodyFrom, Vec3 aPos, Body aBodyTo, Vec3 rPos)

        Parameters:
            s: SimTK::State const &
            aBodyFrom: OpenSim::Body const &
            aPos: SimTK::Vec3 const &
            aBodyTo: OpenSim::Body const &
            rPos: SimTK::Vec3 &

        transformPosition(SimbodyEngine self, State s, Body aBodyFrom, double const [3] aPos, double [3] rPos)

        Parameters:
            s: SimTK::State const &
            aBodyFrom: OpenSim::Body const &
            aPos: double const [3]
            rPos: double [3]

        transformPosition(SimbodyEngine self, State s, Body aBodyFrom, Vec3 aPos, Vec3 rPos)

        Parameters:
            s: SimTK::State const &
            aBodyFrom: OpenSim::Body const &
            aPos: SimTK::Vec3 const &
            rPos: SimTK::Vec3 &

        """
        return _opensim.SimbodyEngine_transformPosition(self, *args)

    def calcDistance(self, *args):
        """
        calcDistance(SimbodyEngine self, State s, Body aBody1, double const [3] aPoint1, Body aBody2, double const [3] aPoint2) -> double

        Parameters:
            s: SimTK::State const &
            aBody1: OpenSim::Body const &
            aPoint1: double const [3]
            aBody2: OpenSim::Body const &
            aPoint2: double const [3]

        calcDistance(SimbodyEngine self, State s, Body aBody1, Vec3 aPoint1, Body aBody2, Vec3 aPoint2) -> double

        Parameters:
            s: SimTK::State const &
            aBody1: OpenSim::Body const &
            aPoint1: SimTK::Vec3 const &
            aBody2: OpenSim::Body const &
            aPoint2: SimTK::Vec3 const &

        """
        return _opensim.SimbodyEngine_calcDistance(self, *args)

    def convertDegreesToRadians(self, *args):
        """
        convertDegreesToRadians(SimbodyEngine self, Storage rStorage)

        Parameters:
            rStorage: OpenSim::Storage &

        convertDegreesToRadians(SimbodyEngine self, double * aQDeg, double * rQRad)

        Parameters:
            aQDeg: double *
            rQRad: double *

        """
        return _opensim.SimbodyEngine_convertDegreesToRadians(self, *args)

    def convertRadiansToDegrees(self, *args):
        """
        convertRadiansToDegrees(SimbodyEngine self, Storage rStorage)

        Parameters:
            rStorage: OpenSim::Storage &

        convertRadiansToDegrees(SimbodyEngine self, double * aQRad, double * rQDeg)

        Parameters:
            aQRad: double *
            rQDeg: double *

        """
        return _opensim.SimbodyEngine_convertRadiansToDegrees(self, *args)

    def convertAnglesToDirectionCosines(self, *args):
        """
        convertAnglesToDirectionCosines(SimbodyEngine self, double aE1, double aE2, double aE3, double [3][3] rDirCos)

        Parameters:
            aE1: double
            aE2: double
            aE3: double
            rDirCos: double [3][3]

        convertAnglesToDirectionCosines(SimbodyEngine self, double aE1, double aE2, double aE3, double * rDirCos)

        Parameters:
            aE1: double
            aE2: double
            aE3: double
            rDirCos: double *

        """
        return _opensim.SimbodyEngine_convertAnglesToDirectionCosines(self, *args)

    def convertDirectionCosinesToAngles(self, *args):
        """
        convertDirectionCosinesToAngles(SimbodyEngine self, double [3][3] aDirCos, double * rE1, double * rE2, double * rE3)

        Parameters:
            aDirCos: double [3][3]
            rE1: double *
            rE2: double *
            rE3: double *

        convertDirectionCosinesToAngles(SimbodyEngine self, double * aDirCos, double * rE1, double * rE2, double * rE3)

        Parameters:
            aDirCos: double *
            rE1: double *
            rE2: double *
            rE3: double *

        """
        return _opensim.SimbodyEngine_convertDirectionCosinesToAngles(self, *args)

    def convertDirectionCosinesToQuaternions(self, *args):
        """
        convertDirectionCosinesToQuaternions(SimbodyEngine self, double [3][3] aDirCos, double * rQ1, double * rQ2, double * rQ3, double * rQ4)

        Parameters:
            aDirCos: double [3][3]
            rQ1: double *
            rQ2: double *
            rQ3: double *
            rQ4: double *

        convertDirectionCosinesToQuaternions(SimbodyEngine self, double * aDirCos, double * rQ1, double * rQ2, double * rQ3, double * rQ4)

        Parameters:
            aDirCos: double *
            rQ1: double *
            rQ2: double *
            rQ3: double *
            rQ4: double *

        """
        return _opensim.SimbodyEngine_convertDirectionCosinesToQuaternions(self, *args)

    def convertQuaternionsToDirectionCosines(self, *args):
        """
        convertQuaternionsToDirectionCosines(SimbodyEngine self, double aQ1, double aQ2, double aQ3, double aQ4, double [3][3] rDirCos)

        Parameters:
            aQ1: double
            aQ2: double
            aQ3: double
            aQ4: double
            rDirCos: double [3][3]

        convertQuaternionsToDirectionCosines(SimbodyEngine self, double aQ1, double aQ2, double aQ3, double aQ4, double * rDirCos)

        Parameters:
            aQ1: double
            aQ2: double
            aQ3: double
            aQ4: double
            rDirCos: double *

        """
        return _opensim.SimbodyEngine_convertQuaternionsToDirectionCosines(self, *args)

SimbodyEngine_swigregister = _opensim.SimbodyEngine_swigregister
SimbodyEngine_swigregister(SimbodyEngine)

def SimbodyEngine_safeDownCast(*args):
  """
    SimbodyEngine_safeDownCast(OpenSimObject obj) -> SimbodyEngine

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SimbodyEngine_safeDownCast(*args)

def SimbodyEngine_getClassName():
  """SimbodyEngine_getClassName() -> std::string const &"""
  return _opensim.SimbodyEngine_getClassName()

class TransformAxis(OpenSimObject):
    """Proxy of C++ OpenSim::TransformAxis class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, TransformAxis, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, TransformAxis, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> TransformAxis

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.TransformAxis_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(TransformAxis self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.TransformAxis_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.TransformAxis_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(TransformAxis self) -> TransformAxis

        Parameters:
            self: OpenSim::TransformAxis const *

        """
        return _opensim.TransformAxis_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(TransformAxis self) -> std::string const &

        Parameters:
            self: OpenSim::TransformAxis const *

        """
        return _opensim.TransformAxis_getConcreteClassName(self)

    def copyProperty_coordinates(self, *args):
        """
        copyProperty_coordinates(TransformAxis self, TransformAxis source)

        Parameters:
            source: OpenSim::TransformAxis::Self const &

        """
        return _opensim.TransformAxis_copyProperty_coordinates(self, *args)

    def get_coordinates(self, *args):
        """
        get_coordinates(TransformAxis self, int i) -> std::string const &

        Parameters:
            i: int

        """
        return _opensim.TransformAxis_get_coordinates(self, *args)

    def upd_coordinates(self, *args):
        """
        upd_coordinates(TransformAxis self, int i) -> std::string &

        Parameters:
            i: int

        """
        return _opensim.TransformAxis_upd_coordinates(self, *args)

    def set_coordinates(self, *args):
        """
        set_coordinates(TransformAxis self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        """
        return _opensim.TransformAxis_set_coordinates(self, *args)

    def append_coordinates(self, *args):
        """
        append_coordinates(TransformAxis self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.TransformAxis_append_coordinates(self, *args)

    def constructProperty_coordinates(self):
        """
        constructProperty_coordinates(TransformAxis self)

        Parameters:
            self: OpenSim::TransformAxis *

        """
        return _opensim.TransformAxis_constructProperty_coordinates(self)

    def copyProperty_axis(self, *args):
        """
        copyProperty_axis(TransformAxis self, TransformAxis source)

        Parameters:
            source: OpenSim::TransformAxis::Self const &

        """
        return _opensim.TransformAxis_copyProperty_axis(self, *args)

    def append_axis(self, *args):
        """
        append_axis(TransformAxis self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.TransformAxis_append_axis(self, *args)

    def constructProperty_axis(self, *args):
        """
        constructProperty_axis(TransformAxis self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.TransformAxis_constructProperty_axis(self, *args)

    def get_axis(self, *args):
        """
        get_axis(TransformAxis self, int i) -> Vec3

        Parameters:
            i: int

        get_axis(TransformAxis self) -> Vec3

        Parameters:
            self: OpenSim::TransformAxis const *

        """
        return _opensim.TransformAxis_get_axis(self, *args)

    def upd_axis(self, *args):
        """
        upd_axis(TransformAxis self, int i) -> Vec3

        Parameters:
            i: int

        upd_axis(TransformAxis self) -> Vec3

        Parameters:
            self: OpenSim::TransformAxis *

        """
        return _opensim.TransformAxis_upd_axis(self, *args)

    def set_axis(self, *args):
        """
        set_axis(TransformAxis self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_axis(TransformAxis self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.TransformAxis_set_axis(self, *args)

    def copyProperty_function(self, *args):
        """
        copyProperty_function(TransformAxis self, TransformAxis source)

        Parameters:
            source: OpenSim::TransformAxis::Self const &

        """
        return _opensim.TransformAxis_copyProperty_function(self, *args)

    def append_function(self, *args):
        """
        append_function(TransformAxis self, Function value) -> int

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.TransformAxis_append_function(self, *args)

    def constructProperty_function(self, *args):
        """
        constructProperty_function(TransformAxis self)
        constructProperty_function(TransformAxis self, Function initValue)

        Parameters:
            initValue: OpenSim::Function const &

        """
        return _opensim.TransformAxis_constructProperty_function(self, *args)

    def get_function(self, *args):
        """
        get_function(TransformAxis self, int i) -> Function

        Parameters:
            i: int

        get_function(TransformAxis self) -> Function

        Parameters:
            self: OpenSim::TransformAxis const *

        """
        return _opensim.TransformAxis_get_function(self, *args)

    def upd_function(self, *args):
        """
        upd_function(TransformAxis self, int i) -> Function

        Parameters:
            i: int

        upd_function(TransformAxis self) -> Function

        Parameters:
            self: OpenSim::TransformAxis *

        """
        return _opensim.TransformAxis_upd_function(self, *args)

    def set_function(self, *args):
        """
        set_function(TransformAxis self, int i, Function value)

        Parameters:
            i: int
            value: OpenSim::Function const &

        set_function(TransformAxis self, Function value)

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.TransformAxis_set_function(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::TransformAxis self) -> TransformAxis
        __init__(OpenSim::TransformAxis self, ArrayStr coordNames, Vec3 axis) -> TransformAxis

        Parameters:
            coordNames: OpenSim::Array< std::string > const &
            axis: SimTK::Vec3 const &

        __init__(OpenSim::TransformAxis self, SimTK::Xml::Element & node) -> TransformAxis

        Parameters:
            node: SimTK::Xml::Element &

        """
        this = _opensim.new_TransformAxis(*args)
        try: self.this.append(this)
        except: self.this = this
    def setCoordinateNames(self, *args):
        """
        setCoordinateNames(TransformAxis self, ArrayStr coordNames)

        Parameters:
            coordNames: OpenSim::Array< std::string > const &

        """
        return _opensim.TransformAxis_setCoordinateNames(self, *args)

    def getCoordinateNames(self):
        """
        getCoordinateNames(TransformAxis self) -> OpenSim::Property< std::string > const &

        Parameters:
            self: OpenSim::TransformAxis const *

        """
        return _opensim.TransformAxis_getCoordinateNames(self)

    def getCoordinateNamesInArray(self):
        """
        getCoordinateNamesInArray(TransformAxis self) -> ArrayStr

        Parameters:
            self: OpenSim::TransformAxis const *

        """
        return _opensim.TransformAxis_getCoordinateNamesInArray(self)

    def setAxis(self, *args):
        """
        setAxis(TransformAxis self, Vec3 axis)

        Parameters:
            axis: SimTK::Vec3 const &

        """
        return _opensim.TransformAxis_setAxis(self, *args)

    def getAxis(self, *args):
        """
        getAxis(TransformAxis self) -> Vec3
        getAxis(TransformAxis self, Vec3 axis)

        Parameters:
            axis: SimTK::Vec3 &

        getAxis(TransformAxis self, double [] rAxis)

        Parameters:
            rAxis: double []

        getAxis(TransformAxis self, int which) -> double

        Parameters:
            which: int

        """
        return _opensim.TransformAxis_getAxis(self, *args)

    def hasFunction(self):
        """
        hasFunction(TransformAxis self) -> bool

        Parameters:
            self: OpenSim::TransformAxis const *

        """
        return _opensim.TransformAxis_hasFunction(self)

    def getFunction(self):
        """
        getFunction(TransformAxis self) -> Function

        Parameters:
            self: OpenSim::TransformAxis const *

        """
        return _opensim.TransformAxis_getFunction(self)

    def updFunction(self):
        """
        updFunction(TransformAxis self) -> Function

        Parameters:
            self: OpenSim::TransformAxis *

        """
        return _opensim.TransformAxis_updFunction(self)

    def setFunction(self, *args):
        """
        setFunction(TransformAxis self, Function function)

        Parameters:
            function: OpenSim::Function *

        setFunction(TransformAxis self, Function function)

        Parameters:
            function: OpenSim::Function const &

        """
        return _opensim.TransformAxis_setFunction(self, *args)

    def getJoint(self):
        """
        getJoint(TransformAxis self) -> Joint

        Parameters:
            self: OpenSim::TransformAxis const *

        """
        return _opensim.TransformAxis_getJoint(self)

    def getValue(self, *args):
        """
        getValue(TransformAxis self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.TransformAxis_getValue(self, *args)

    def connectToJoint(self, *args):
        """
        connectToJoint(TransformAxis self, Joint owningJoint)

        Parameters:
            owningJoint: OpenSim::Joint const &

        """
        return _opensim.TransformAxis_connectToJoint(self, *args)

    __swig_destroy__ = _opensim.delete_TransformAxis
    __del__ = lambda self : None;
TransformAxis_swigregister = _opensim.TransformAxis_swigregister
TransformAxis_swigregister(TransformAxis)

def TransformAxis_safeDownCast(*args):
  """
    TransformAxis_safeDownCast(OpenSimObject obj) -> TransformAxis

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.TransformAxis_safeDownCast(*args)

def TransformAxis_getClassName():
  """TransformAxis_getClassName() -> std::string const &"""
  return _opensim.TransformAxis_getClassName()

class SpatialTransform(OpenSimObject):
    """Proxy of C++ OpenSim::SpatialTransform class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SpatialTransform, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SpatialTransform, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SpatialTransform

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SpatialTransform_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SpatialTransform self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SpatialTransform_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SpatialTransform_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SpatialTransform self) -> SpatialTransform

        Parameters:
            self: OpenSim::SpatialTransform const *

        """
        return _opensim.SpatialTransform_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SpatialTransform self) -> std::string const &

        Parameters:
            self: OpenSim::SpatialTransform const *

        """
        return _opensim.SpatialTransform_getConcreteClassName(self)

    def copyProperty_rotation1(self, *args):
        """
        copyProperty_rotation1(SpatialTransform self, SpatialTransform source)

        Parameters:
            source: OpenSim::SpatialTransform::Self const &

        """
        return _opensim.SpatialTransform_copyProperty_rotation1(self, *args)

    def append_rotation1(self, *args):
        """
        append_rotation1(SpatialTransform self, TransformAxis value) -> int

        Parameters:
            value: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_append_rotation1(self, *args)

    def constructProperty_rotation1(self, *args):
        """
        constructProperty_rotation1(SpatialTransform self, TransformAxis initValue)

        Parameters:
            initValue: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_constructProperty_rotation1(self, *args)

    def get_rotation1(self, *args):
        """
        get_rotation1(SpatialTransform self, int i) -> TransformAxis

        Parameters:
            i: int

        get_rotation1(SpatialTransform self) -> TransformAxis

        Parameters:
            self: OpenSim::SpatialTransform const *

        """
        return _opensim.SpatialTransform_get_rotation1(self, *args)

    def upd_rotation1(self, *args):
        """
        upd_rotation1(SpatialTransform self, int i) -> TransformAxis

        Parameters:
            i: int

        upd_rotation1(SpatialTransform self) -> TransformAxis

        Parameters:
            self: OpenSim::SpatialTransform *

        """
        return _opensim.SpatialTransform_upd_rotation1(self, *args)

    def set_rotation1(self, *args):
        """
        set_rotation1(SpatialTransform self, int i, TransformAxis value)

        Parameters:
            i: int
            value: OpenSim::TransformAxis const &

        set_rotation1(SpatialTransform self, TransformAxis value)

        Parameters:
            value: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_set_rotation1(self, *args)

    def copyProperty_rotation2(self, *args):
        """
        copyProperty_rotation2(SpatialTransform self, SpatialTransform source)

        Parameters:
            source: OpenSim::SpatialTransform::Self const &

        """
        return _opensim.SpatialTransform_copyProperty_rotation2(self, *args)

    def append_rotation2(self, *args):
        """
        append_rotation2(SpatialTransform self, TransformAxis value) -> int

        Parameters:
            value: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_append_rotation2(self, *args)

    def constructProperty_rotation2(self, *args):
        """
        constructProperty_rotation2(SpatialTransform self, TransformAxis initValue)

        Parameters:
            initValue: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_constructProperty_rotation2(self, *args)

    def get_rotation2(self, *args):
        """
        get_rotation2(SpatialTransform self, int i) -> TransformAxis

        Parameters:
            i: int

        get_rotation2(SpatialTransform self) -> TransformAxis

        Parameters:
            self: OpenSim::SpatialTransform const *

        """
        return _opensim.SpatialTransform_get_rotation2(self, *args)

    def upd_rotation2(self, *args):
        """
        upd_rotation2(SpatialTransform self, int i) -> TransformAxis

        Parameters:
            i: int

        upd_rotation2(SpatialTransform self) -> TransformAxis

        Parameters:
            self: OpenSim::SpatialTransform *

        """
        return _opensim.SpatialTransform_upd_rotation2(self, *args)

    def set_rotation2(self, *args):
        """
        set_rotation2(SpatialTransform self, int i, TransformAxis value)

        Parameters:
            i: int
            value: OpenSim::TransformAxis const &

        set_rotation2(SpatialTransform self, TransformAxis value)

        Parameters:
            value: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_set_rotation2(self, *args)

    def copyProperty_rotation3(self, *args):
        """
        copyProperty_rotation3(SpatialTransform self, SpatialTransform source)

        Parameters:
            source: OpenSim::SpatialTransform::Self const &

        """
        return _opensim.SpatialTransform_copyProperty_rotation3(self, *args)

    def append_rotation3(self, *args):
        """
        append_rotation3(SpatialTransform self, TransformAxis value) -> int

        Parameters:
            value: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_append_rotation3(self, *args)

    def constructProperty_rotation3(self, *args):
        """
        constructProperty_rotation3(SpatialTransform self, TransformAxis initValue)

        Parameters:
            initValue: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_constructProperty_rotation3(self, *args)

    def get_rotation3(self, *args):
        """
        get_rotation3(SpatialTransform self, int i) -> TransformAxis

        Parameters:
            i: int

        get_rotation3(SpatialTransform self) -> TransformAxis

        Parameters:
            self: OpenSim::SpatialTransform const *

        """
        return _opensim.SpatialTransform_get_rotation3(self, *args)

    def upd_rotation3(self, *args):
        """
        upd_rotation3(SpatialTransform self, int i) -> TransformAxis

        Parameters:
            i: int

        upd_rotation3(SpatialTransform self) -> TransformAxis

        Parameters:
            self: OpenSim::SpatialTransform *

        """
        return _opensim.SpatialTransform_upd_rotation3(self, *args)

    def set_rotation3(self, *args):
        """
        set_rotation3(SpatialTransform self, int i, TransformAxis value)

        Parameters:
            i: int
            value: OpenSim::TransformAxis const &

        set_rotation3(SpatialTransform self, TransformAxis value)

        Parameters:
            value: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_set_rotation3(self, *args)

    def copyProperty_translation1(self, *args):
        """
        copyProperty_translation1(SpatialTransform self, SpatialTransform source)

        Parameters:
            source: OpenSim::SpatialTransform::Self const &

        """
        return _opensim.SpatialTransform_copyProperty_translation1(self, *args)

    def append_translation1(self, *args):
        """
        append_translation1(SpatialTransform self, TransformAxis value) -> int

        Parameters:
            value: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_append_translation1(self, *args)

    def constructProperty_translation1(self, *args):
        """
        constructProperty_translation1(SpatialTransform self, TransformAxis initValue)

        Parameters:
            initValue: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_constructProperty_translation1(self, *args)

    def get_translation1(self, *args):
        """
        get_translation1(SpatialTransform self, int i) -> TransformAxis

        Parameters:
            i: int

        get_translation1(SpatialTransform self) -> TransformAxis

        Parameters:
            self: OpenSim::SpatialTransform const *

        """
        return _opensim.SpatialTransform_get_translation1(self, *args)

    def upd_translation1(self, *args):
        """
        upd_translation1(SpatialTransform self, int i) -> TransformAxis

        Parameters:
            i: int

        upd_translation1(SpatialTransform self) -> TransformAxis

        Parameters:
            self: OpenSim::SpatialTransform *

        """
        return _opensim.SpatialTransform_upd_translation1(self, *args)

    def set_translation1(self, *args):
        """
        set_translation1(SpatialTransform self, int i, TransformAxis value)

        Parameters:
            i: int
            value: OpenSim::TransformAxis const &

        set_translation1(SpatialTransform self, TransformAxis value)

        Parameters:
            value: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_set_translation1(self, *args)

    def copyProperty_translation2(self, *args):
        """
        copyProperty_translation2(SpatialTransform self, SpatialTransform source)

        Parameters:
            source: OpenSim::SpatialTransform::Self const &

        """
        return _opensim.SpatialTransform_copyProperty_translation2(self, *args)

    def append_translation2(self, *args):
        """
        append_translation2(SpatialTransform self, TransformAxis value) -> int

        Parameters:
            value: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_append_translation2(self, *args)

    def constructProperty_translation2(self, *args):
        """
        constructProperty_translation2(SpatialTransform self, TransformAxis initValue)

        Parameters:
            initValue: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_constructProperty_translation2(self, *args)

    def get_translation2(self, *args):
        """
        get_translation2(SpatialTransform self, int i) -> TransformAxis

        Parameters:
            i: int

        get_translation2(SpatialTransform self) -> TransformAxis

        Parameters:
            self: OpenSim::SpatialTransform const *

        """
        return _opensim.SpatialTransform_get_translation2(self, *args)

    def upd_translation2(self, *args):
        """
        upd_translation2(SpatialTransform self, int i) -> TransformAxis

        Parameters:
            i: int

        upd_translation2(SpatialTransform self) -> TransformAxis

        Parameters:
            self: OpenSim::SpatialTransform *

        """
        return _opensim.SpatialTransform_upd_translation2(self, *args)

    def set_translation2(self, *args):
        """
        set_translation2(SpatialTransform self, int i, TransformAxis value)

        Parameters:
            i: int
            value: OpenSim::TransformAxis const &

        set_translation2(SpatialTransform self, TransformAxis value)

        Parameters:
            value: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_set_translation2(self, *args)

    def copyProperty_translation3(self, *args):
        """
        copyProperty_translation3(SpatialTransform self, SpatialTransform source)

        Parameters:
            source: OpenSim::SpatialTransform::Self const &

        """
        return _opensim.SpatialTransform_copyProperty_translation3(self, *args)

    def append_translation3(self, *args):
        """
        append_translation3(SpatialTransform self, TransformAxis value) -> int

        Parameters:
            value: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_append_translation3(self, *args)

    def constructProperty_translation3(self, *args):
        """
        constructProperty_translation3(SpatialTransform self, TransformAxis initValue)

        Parameters:
            initValue: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_constructProperty_translation3(self, *args)

    def get_translation3(self, *args):
        """
        get_translation3(SpatialTransform self, int i) -> TransformAxis

        Parameters:
            i: int

        get_translation3(SpatialTransform self) -> TransformAxis

        Parameters:
            self: OpenSim::SpatialTransform const *

        """
        return _opensim.SpatialTransform_get_translation3(self, *args)

    def upd_translation3(self, *args):
        """
        upd_translation3(SpatialTransform self, int i) -> TransformAxis

        Parameters:
            i: int

        upd_translation3(SpatialTransform self) -> TransformAxis

        Parameters:
            self: OpenSim::SpatialTransform *

        """
        return _opensim.SpatialTransform_upd_translation3(self, *args)

    def set_translation3(self, *args):
        """
        set_translation3(SpatialTransform self, int i, TransformAxis value)

        Parameters:
            i: int
            value: OpenSim::TransformAxis const &

        set_translation3(SpatialTransform self, TransformAxis value)

        Parameters:
            value: OpenSim::TransformAxis const &

        """
        return _opensim.SpatialTransform_set_translation3(self, *args)

    def __init__(self): 
        """__init__(OpenSim::SpatialTransform self) -> SpatialTransform"""
        this = _opensim.new_SpatialTransform()
        try: self.this.append(this)
        except: self.this = this
    def connectToJoint(self, *args):
        """
        connectToJoint(SpatialTransform self, CustomJoint owningJoint)

        Parameters:
            owningJoint: OpenSim::CustomJoint &

        """
        return _opensim.SpatialTransform_connectToJoint(self, *args)

    def constructIndependentAxes(self, *args):
        """
        constructIndependentAxes(SpatialTransform self, int nAxes, int startIndex)

        Parameters:
            nAxes: int
            startIndex: int

        """
        return _opensim.SpatialTransform_constructIndependentAxes(self, *args)

    def getCoordinateNames(self):
        """
        getCoordinateNames(SpatialTransform self) -> ArrayStr

        Parameters:
            self: OpenSim::SpatialTransform const *

        """
        return _opensim.SpatialTransform_getCoordinateNames(self)

    def getFunctions(self):
        """
        getFunctions(SpatialTransform self) -> std::vector< SimTK::Function const * >

        Parameters:
            self: OpenSim::SpatialTransform const *

        """
        return _opensim.SpatialTransform_getFunctions(self)

    def getAxes(self):
        """
        getAxes(SpatialTransform self) -> std::vector< SimTK::Vec3 >

        Parameters:
            self: OpenSim::SpatialTransform const *

        """
        return _opensim.SpatialTransform_getAxes(self)

    def scale(self, *args):
        """
        scale(SpatialTransform self, Vec3 scaleFactors)

        Parameters:
            scaleFactors: SimTK::Vec3 const

        """
        return _opensim.SpatialTransform_scale(self, *args)

    def getTransformAxis(self, *args):
        """
        getTransformAxis(SpatialTransform self, int whichAxis) -> TransformAxis

        Parameters:
            whichAxis: int

        """
        return _opensim.SpatialTransform_getTransformAxis(self, *args)

    def updTransformAxis(self, *args):
        """
        updTransformAxis(SpatialTransform self, int whichAxis) -> TransformAxis

        Parameters:
            whichAxis: int

        """
        return _opensim.SpatialTransform_updTransformAxis(self, *args)

    __swig_destroy__ = _opensim.delete_SpatialTransform
    __del__ = lambda self : None;
SpatialTransform_swigregister = _opensim.SpatialTransform_swigregister
SpatialTransform_swigregister(SpatialTransform)

def SpatialTransform_safeDownCast(*args):
  """
    SpatialTransform_safeDownCast(OpenSimObject obj) -> SpatialTransform

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SpatialTransform_safeDownCast(*args)

def SpatialTransform_getClassName():
  """SpatialTransform_getClassName() -> std::string const &"""
  return _opensim.SpatialTransform_getClassName()

class Coordinate(ModelComponent):
    """Proxy of C++ OpenSim::Coordinate class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponent]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Coordinate, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponent]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Coordinate, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Coordinate

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Coordinate_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Coordinate self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Coordinate_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Coordinate_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Coordinate self) -> Coordinate

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Coordinate self) -> std::string const &

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getConcreteClassName(self)

    def copyProperty_motion_type(self, *args):
        """
        copyProperty_motion_type(Coordinate self, Coordinate source)

        Parameters:
            source: OpenSim::Coordinate::Self const &

        """
        return _opensim.Coordinate_copyProperty_motion_type(self, *args)

    def append_motion_type(self, *args):
        """
        append_motion_type(Coordinate self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.Coordinate_append_motion_type(self, *args)

    def constructProperty_motion_type(self, *args):
        """
        constructProperty_motion_type(Coordinate self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.Coordinate_constructProperty_motion_type(self, *args)

    def get_motion_type(self, *args):
        """
        get_motion_type(Coordinate self, int i) -> std::string const

        Parameters:
            i: int

        get_motion_type(Coordinate self) -> std::string const &

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_get_motion_type(self, *args)

    def upd_motion_type(self, *args):
        """
        upd_motion_type(Coordinate self, int i) -> std::string

        Parameters:
            i: int

        upd_motion_type(Coordinate self) -> std::string &

        Parameters:
            self: OpenSim::Coordinate *

        """
        return _opensim.Coordinate_upd_motion_type(self, *args)

    def set_motion_type(self, *args):
        """
        set_motion_type(Coordinate self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_motion_type(Coordinate self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.Coordinate_set_motion_type(self, *args)

    def copyProperty_default_value(self, *args):
        """
        copyProperty_default_value(Coordinate self, Coordinate source)

        Parameters:
            source: OpenSim::Coordinate::Self const &

        """
        return _opensim.Coordinate_copyProperty_default_value(self, *args)

    def append_default_value(self, *args):
        """
        append_default_value(Coordinate self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Coordinate_append_default_value(self, *args)

    def constructProperty_default_value(self, *args):
        """
        constructProperty_default_value(Coordinate self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Coordinate_constructProperty_default_value(self, *args)

    def get_default_value(self, *args):
        """
        get_default_value(Coordinate self, int i) -> double const

        Parameters:
            i: int

        get_default_value(Coordinate self) -> double const &

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_get_default_value(self, *args)

    def upd_default_value(self, *args):
        """
        upd_default_value(Coordinate self, int i) -> double

        Parameters:
            i: int

        upd_default_value(Coordinate self) -> double &

        Parameters:
            self: OpenSim::Coordinate *

        """
        return _opensim.Coordinate_upd_default_value(self, *args)

    def set_default_value(self, *args):
        """
        set_default_value(Coordinate self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_default_value(Coordinate self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Coordinate_set_default_value(self, *args)

    def copyProperty_default_speed_value(self, *args):
        """
        copyProperty_default_speed_value(Coordinate self, Coordinate source)

        Parameters:
            source: OpenSim::Coordinate::Self const &

        """
        return _opensim.Coordinate_copyProperty_default_speed_value(self, *args)

    def append_default_speed_value(self, *args):
        """
        append_default_speed_value(Coordinate self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Coordinate_append_default_speed_value(self, *args)

    def constructProperty_default_speed_value(self, *args):
        """
        constructProperty_default_speed_value(Coordinate self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Coordinate_constructProperty_default_speed_value(self, *args)

    def get_default_speed_value(self, *args):
        """
        get_default_speed_value(Coordinate self, int i) -> double const

        Parameters:
            i: int

        get_default_speed_value(Coordinate self) -> double const &

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_get_default_speed_value(self, *args)

    def upd_default_speed_value(self, *args):
        """
        upd_default_speed_value(Coordinate self, int i) -> double

        Parameters:
            i: int

        upd_default_speed_value(Coordinate self) -> double &

        Parameters:
            self: OpenSim::Coordinate *

        """
        return _opensim.Coordinate_upd_default_speed_value(self, *args)

    def set_default_speed_value(self, *args):
        """
        set_default_speed_value(Coordinate self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_default_speed_value(Coordinate self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Coordinate_set_default_speed_value(self, *args)

    def copyProperty_range(self, *args):
        """
        copyProperty_range(Coordinate self, Coordinate source)

        Parameters:
            source: OpenSim::Coordinate::Self const &

        """
        return _opensim.Coordinate_copyProperty_range(self, *args)

    def get_range(self, *args):
        """
        get_range(Coordinate self, int i) -> double const &

        Parameters:
            i: int

        """
        return _opensim.Coordinate_get_range(self, *args)

    def upd_range(self, *args):
        """
        upd_range(Coordinate self, int i) -> double &

        Parameters:
            i: int

        """
        return _opensim.Coordinate_upd_range(self, *args)

    def set_range(self, *args):
        """
        set_range(Coordinate self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        """
        return _opensim.Coordinate_set_range(self, *args)

    def append_range(self, *args):
        """
        append_range(Coordinate self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Coordinate_append_range(self, *args)

    def copyProperty_clamped(self, *args):
        """
        copyProperty_clamped(Coordinate self, Coordinate source)

        Parameters:
            source: OpenSim::Coordinate::Self const &

        """
        return _opensim.Coordinate_copyProperty_clamped(self, *args)

    def append_clamped(self, *args):
        """
        append_clamped(Coordinate self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Coordinate_append_clamped(self, *args)

    def constructProperty_clamped(self, *args):
        """
        constructProperty_clamped(Coordinate self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Coordinate_constructProperty_clamped(self, *args)

    def get_clamped(self, *args):
        """
        get_clamped(Coordinate self, int i) -> bool const

        Parameters:
            i: int

        get_clamped(Coordinate self) -> bool const &

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_get_clamped(self, *args)

    def upd_clamped(self, *args):
        """
        upd_clamped(Coordinate self, int i) -> bool

        Parameters:
            i: int

        upd_clamped(Coordinate self) -> bool &

        Parameters:
            self: OpenSim::Coordinate *

        """
        return _opensim.Coordinate_upd_clamped(self, *args)

    def set_clamped(self, *args):
        """
        set_clamped(Coordinate self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_clamped(Coordinate self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Coordinate_set_clamped(self, *args)

    def copyProperty_locked(self, *args):
        """
        copyProperty_locked(Coordinate self, Coordinate source)

        Parameters:
            source: OpenSim::Coordinate::Self const &

        """
        return _opensim.Coordinate_copyProperty_locked(self, *args)

    def append_locked(self, *args):
        """
        append_locked(Coordinate self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Coordinate_append_locked(self, *args)

    def constructProperty_locked(self, *args):
        """
        constructProperty_locked(Coordinate self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Coordinate_constructProperty_locked(self, *args)

    def get_locked(self, *args):
        """
        get_locked(Coordinate self, int i) -> bool const

        Parameters:
            i: int

        get_locked(Coordinate self) -> bool const &

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_get_locked(self, *args)

    def upd_locked(self, *args):
        """
        upd_locked(Coordinate self, int i) -> bool

        Parameters:
            i: int

        upd_locked(Coordinate self) -> bool &

        Parameters:
            self: OpenSim::Coordinate *

        """
        return _opensim.Coordinate_upd_locked(self, *args)

    def set_locked(self, *args):
        """
        set_locked(Coordinate self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_locked(Coordinate self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Coordinate_set_locked(self, *args)

    def copyProperty_prescribed_function(self, *args):
        """
        copyProperty_prescribed_function(Coordinate self, Coordinate source)

        Parameters:
            source: OpenSim::Coordinate::Self const &

        """
        return _opensim.Coordinate_copyProperty_prescribed_function(self, *args)

    def append_prescribed_function(self, *args):
        """
        append_prescribed_function(Coordinate self, Function value) -> int

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.Coordinate_append_prescribed_function(self, *args)

    def constructProperty_prescribed_function(self, *args):
        """
        constructProperty_prescribed_function(Coordinate self)
        constructProperty_prescribed_function(Coordinate self, Function initValue)

        Parameters:
            initValue: OpenSim::Function const &

        """
        return _opensim.Coordinate_constructProperty_prescribed_function(self, *args)

    def get_prescribed_function(self, *args):
        """
        get_prescribed_function(Coordinate self, int i) -> Function

        Parameters:
            i: int

        get_prescribed_function(Coordinate self) -> Function

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_get_prescribed_function(self, *args)

    def upd_prescribed_function(self, *args):
        """
        upd_prescribed_function(Coordinate self, int i) -> Function

        Parameters:
            i: int

        upd_prescribed_function(Coordinate self) -> Function

        Parameters:
            self: OpenSim::Coordinate *

        """
        return _opensim.Coordinate_upd_prescribed_function(self, *args)

    def set_prescribed_function(self, *args):
        """
        set_prescribed_function(Coordinate self, int i, Function value)

        Parameters:
            i: int
            value: OpenSim::Function const &

        set_prescribed_function(Coordinate self, Function value)

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.Coordinate_set_prescribed_function(self, *args)

    def copyProperty_prescribed(self, *args):
        """
        copyProperty_prescribed(Coordinate self, Coordinate source)

        Parameters:
            source: OpenSim::Coordinate::Self const &

        """
        return _opensim.Coordinate_copyProperty_prescribed(self, *args)

    def append_prescribed(self, *args):
        """
        append_prescribed(Coordinate self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Coordinate_append_prescribed(self, *args)

    def constructProperty_prescribed(self, *args):
        """
        constructProperty_prescribed(Coordinate self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Coordinate_constructProperty_prescribed(self, *args)

    def get_prescribed(self, *args):
        """
        get_prescribed(Coordinate self, int i) -> bool const

        Parameters:
            i: int

        get_prescribed(Coordinate self) -> bool const &

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_get_prescribed(self, *args)

    def upd_prescribed(self, *args):
        """
        upd_prescribed(Coordinate self, int i) -> bool

        Parameters:
            i: int

        upd_prescribed(Coordinate self) -> bool &

        Parameters:
            self: OpenSim::Coordinate *

        """
        return _opensim.Coordinate_upd_prescribed(self, *args)

    def set_prescribed(self, *args):
        """
        set_prescribed(Coordinate self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_prescribed(Coordinate self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Coordinate_set_prescribed(self, *args)

    def copyProperty_is_free_to_satisfy_constraints(self, *args):
        """
        copyProperty_is_free_to_satisfy_constraints(Coordinate self, Coordinate source)

        Parameters:
            source: OpenSim::Coordinate::Self const &

        """
        return _opensim.Coordinate_copyProperty_is_free_to_satisfy_constraints(self, *args)

    def append_is_free_to_satisfy_constraints(self, *args):
        """
        append_is_free_to_satisfy_constraints(Coordinate self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Coordinate_append_is_free_to_satisfy_constraints(self, *args)

    def constructProperty_is_free_to_satisfy_constraints(self, *args):
        """
        constructProperty_is_free_to_satisfy_constraints(Coordinate self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Coordinate_constructProperty_is_free_to_satisfy_constraints(self, *args)

    def get_is_free_to_satisfy_constraints(self, *args):
        """
        get_is_free_to_satisfy_constraints(Coordinate self, int i) -> bool const

        Parameters:
            i: int

        get_is_free_to_satisfy_constraints(Coordinate self) -> bool const &

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_get_is_free_to_satisfy_constraints(self, *args)

    def upd_is_free_to_satisfy_constraints(self, *args):
        """
        upd_is_free_to_satisfy_constraints(Coordinate self, int i) -> bool

        Parameters:
            i: int

        upd_is_free_to_satisfy_constraints(Coordinate self) -> bool &

        Parameters:
            self: OpenSim::Coordinate *

        """
        return _opensim.Coordinate_upd_is_free_to_satisfy_constraints(self, *args)

    def set_is_free_to_satisfy_constraints(self, *args):
        """
        set_is_free_to_satisfy_constraints(Coordinate self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_is_free_to_satisfy_constraints(Coordinate self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Coordinate_set_is_free_to_satisfy_constraints(self, *args)

    Rotational = _opensim.Coordinate_Rotational
    Translational = _opensim.Coordinate_Translational
    Coupled = _opensim.Coordinate_Coupled
    def getJoint(self):
        """
        getJoint(Coordinate self) -> Joint

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getJoint(self)

    def getMotionType(self):
        """
        getMotionType(Coordinate self) -> OpenSim::Coordinate::MotionType

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getMotionType(self)

    def setMotionType(self, *args):
        """
        setMotionType(Coordinate self, OpenSim::Coordinate::MotionType aMotionType)

        Parameters:
            aMotionType: enum OpenSim::Coordinate::MotionType

        """
        return _opensim.Coordinate_setMotionType(self, *args)

    def getValue(self, *args):
        """
        getValue(Coordinate self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Coordinate_getValue(self, *args)

    def setValue(self, *args):
        """
        setValue(Coordinate self, State s, double aValue, bool aEnforceContraints=True)

        Parameters:
            s: SimTK::State &
            aValue: double
            aEnforceContraints: bool

        setValue(Coordinate self, State s, double aValue)

        Parameters:
            s: SimTK::State &
            aValue: double

        """
        return _opensim.Coordinate_setValue(self, *args)

    def getSpeedValue(self, *args):
        """
        getSpeedValue(Coordinate self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Coordinate_getSpeedValue(self, *args)

    def setSpeedValue(self, *args):
        """
        setSpeedValue(Coordinate self, State s, double aValue)

        Parameters:
            s: SimTK::State &
            aValue: double

        """
        return _opensim.Coordinate_setSpeedValue(self, *args)

    def getSpeedName(self):
        """
        getSpeedName(Coordinate self) -> std::string const

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getSpeedName(self)

    def getDefaultValue(self):
        """
        getDefaultValue(Coordinate self) -> double

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getDefaultValue(self)

    def setDefaultValue(self, *args):
        """
        setDefaultValue(Coordinate self, double aDefaultValue)

        Parameters:
            aDefaultValue: double

        """
        return _opensim.Coordinate_setDefaultValue(self, *args)

    def getDefaultSpeedValue(self):
        """
        getDefaultSpeedValue(Coordinate self) -> double

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getDefaultSpeedValue(self)

    def setDefaultSpeedValue(self, *args):
        """
        setDefaultSpeedValue(Coordinate self, double aDefaultSpeedValue)

        Parameters:
            aDefaultSpeedValue: double

        """
        return _opensim.Coordinate_setDefaultSpeedValue(self, *args)

    def getAccelerationValue(self, *args):
        """
        getAccelerationValue(Coordinate self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Coordinate_getAccelerationValue(self, *args)

    def getClamped(self, *args):
        """
        getClamped(Coordinate self, State s) -> bool

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Coordinate_getClamped(self, *args)

    def setClamped(self, *args):
        """
        setClamped(Coordinate self, State s, bool aLocked)

        Parameters:
            s: SimTK::State &
            aLocked: bool

        """
        return _opensim.Coordinate_setClamped(self, *args)

    def getDefaultClamped(self):
        """
        getDefaultClamped(Coordinate self) -> bool

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getDefaultClamped(self)

    def setDefaultClamped(self, *args):
        """
        setDefaultClamped(Coordinate self, bool aClamped)

        Parameters:
            aClamped: bool

        """
        return _opensim.Coordinate_setDefaultClamped(self, *args)

    def getRangeMin(self):
        """
        getRangeMin(Coordinate self) -> double

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getRangeMin(self)

    def getRangeMax(self):
        """
        getRangeMax(Coordinate self) -> double

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getRangeMax(self)

    def setRange(self, *args):
        """
        setRange(Coordinate self, double [2] aRange)

        Parameters:
            aRange: double [2]

        """
        return _opensim.Coordinate_setRange(self, *args)

    def setRangeMin(self, *args):
        """
        setRangeMin(Coordinate self, double aMin)

        Parameters:
            aMin: double

        """
        return _opensim.Coordinate_setRangeMin(self, *args)

    def setRangeMax(self, *args):
        """
        setRangeMax(Coordinate self, double aMax)

        Parameters:
            aMax: double

        """
        return _opensim.Coordinate_setRangeMax(self, *args)

    def getLocked(self, *args):
        """
        getLocked(Coordinate self, State s) -> bool

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Coordinate_getLocked(self, *args)

    def setLocked(self, *args):
        """
        setLocked(Coordinate self, State s, bool aLocked)

        Parameters:
            s: SimTK::State &
            aLocked: bool

        """
        return _opensim.Coordinate_setLocked(self, *args)

    def getDefaultLocked(self):
        """
        getDefaultLocked(Coordinate self) -> bool

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getDefaultLocked(self)

    def setDefaultLocked(self, *args):
        """
        setDefaultLocked(Coordinate self, bool aLocked)

        Parameters:
            aLocked: bool

        """
        return _opensim.Coordinate_setDefaultLocked(self, *args)

    def isPrescribed(self, *args):
        """
        isPrescribed(Coordinate self, State s) -> bool

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Coordinate_isPrescribed(self, *args)

    def setIsPrescribed(self, *args):
        """
        setIsPrescribed(Coordinate self, State s, bool isPrescribed)

        Parameters:
            s: SimTK::State &
            isPrescribed: bool

        """
        return _opensim.Coordinate_setIsPrescribed(self, *args)

    def getDefaultIsPrescribed(self):
        """
        getDefaultIsPrescribed(Coordinate self) -> bool

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getDefaultIsPrescribed(self)

    def setDefaultIsPrescribed(self, *args):
        """
        setDefaultIsPrescribed(Coordinate self, bool isPrescribed)

        Parameters:
            isPrescribed: bool

        """
        return _opensim.Coordinate_setDefaultIsPrescribed(self, *args)

    def setPrescribedFunction(self, *args):
        """
        setPrescribedFunction(Coordinate self, Function function)

        Parameters:
            function: OpenSim::Function const &

        """
        return _opensim.Coordinate_setPrescribedFunction(self, *args)

    def getPrescribedFunction(self):
        """
        getPrescribedFunction(Coordinate self) -> Function

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getPrescribedFunction(self)

    def isDependent(self, *args):
        """
        isDependent(Coordinate self, State s) -> bool

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Coordinate_isDependent(self, *args)

    def isConstrained(self, *args):
        """
        isConstrained(Coordinate self, State s) -> bool

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Coordinate_isConstrained(self, *args)

    def getMobilizerQIndex(self):
        """
        getMobilizerQIndex(Coordinate self) -> int

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getMobilizerQIndex(self)

    def getBodyIndex(self):
        """
        getBodyIndex(Coordinate self) -> SimTK::MobilizedBodyIndex

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getBodyIndex(self)

    def getStateVariableNames(self):
        """
        getStateVariableNames(Coordinate self) -> ArrayStr

        Parameters:
            self: OpenSim::Coordinate const *

        """
        return _opensim.Coordinate_getStateVariableNames(self)

    def getStateVariableSystemIndex(self, *args):
        """
        getStateVariableSystemIndex(Coordinate self, std::string const & stateVariableName) -> SimTK::SystemYIndex

        Parameters:
            stateVariableName: std::string const &

        """
        return _opensim.Coordinate_getStateVariableSystemIndex(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Coordinate self) -> Coordinate
        __init__(OpenSim::Coordinate self, std::string const & aName, OpenSim::Coordinate::MotionType aMotionType, double defualtValue, 
            double aRangeMin, double aRangeMax) -> Coordinate

        Parameters:
            aName: std::string const &
            aMotionType: enum OpenSim::Coordinate::MotionType
            defualtValue: double
            aRangeMin: double
            aRangeMax: double

        """
        this = _opensim.new_Coordinate(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_Coordinate
    __del__ = lambda self : None;
Coordinate_swigregister = _opensim.Coordinate_swigregister
Coordinate_swigregister(Coordinate)

def Coordinate_safeDownCast(*args):
  """
    Coordinate_safeDownCast(OpenSimObject obj) -> Coordinate

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Coordinate_safeDownCast(*args)

def Coordinate_getClassName():
  """Coordinate_getClassName() -> std::string const &"""
  return _opensim.Coordinate_getClassName()

class SetCoordinates(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Coordinate)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetCoordinates, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetCoordinates, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetCoordinates

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetCoordinates_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetCoordinates self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetCoordinates_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetCoordinates_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetCoordinates self) -> SetCoordinates

        Parameters:
            self: OpenSim::Set< OpenSim::Coordinate > const *

        """
        return _opensim.SetCoordinates_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetCoordinates self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Coordinate > const *

        """
        return _opensim.SetCoordinates_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetCoordinates
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Coordinate)> self) -> SetCoordinates
        __init__(OpenSim::Set<(OpenSim::Coordinate)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetCoordinates

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Coordinate)> self, std::string const & aFileName) -> SetCoordinates

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Coordinate)> self, SetCoordinates aSet) -> SetCoordinates

        Parameters:
            aSet: OpenSim::Set< OpenSim::Coordinate > const &

        """
        this = _opensim.new_SetCoordinates(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetCoordinates self)

        Parameters:
            self: OpenSim::Set< OpenSim::Coordinate > *

        """
        return _opensim.SetCoordinates_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetCoordinates self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetCoordinates_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetCoordinates self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetCoordinates_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetCoordinates self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Coordinate > const *

        """
        return _opensim.SetCoordinates_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetCoordinates self, Coordinate aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Coordinate const *
            aStartIndex: int

        getIndex(SetCoordinates self, Coordinate aObject) -> int

        Parameters:
            aObject: OpenSim::Coordinate const *

        getIndex(SetCoordinates self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetCoordinates self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetCoordinates_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetCoordinates self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetCoordinates_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetCoordinates self, Coordinate aObject) -> bool

        Parameters:
            aObject: OpenSim::Coordinate *

        """
        return _opensim.SetCoordinates_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetCoordinates self, Coordinate aObject) -> bool

        Parameters:
            aObject: OpenSim::Coordinate const &

        """
        return _opensim.SetCoordinates_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetCoordinates self, int aIndex, Coordinate aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Coordinate *

        """
        return _opensim.SetCoordinates_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetCoordinates self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetCoordinates self, Coordinate aObject) -> bool

        Parameters:
            aObject: OpenSim::Coordinate const *

        """
        return _opensim.SetCoordinates_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetCoordinates self)

        Parameters:
            self: OpenSim::Set< OpenSim::Coordinate > *

        """
        return _opensim.SetCoordinates_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetCoordinates self, int aIndex, Coordinate aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Coordinate *
            preserveGroups: bool

        set(SetCoordinates self, int aIndex, Coordinate aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Coordinate *

        """
        return _opensim.SetCoordinates_set(self, *args)

    def get(self, *args):
        """
        get(SetCoordinates self, int aIndex) -> Coordinate

        Parameters:
            aIndex: int

        get(SetCoordinates self, std::string const & aName) -> Coordinate

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetCoordinates_get(self, *args)

    def contains(self, *args):
        """
        contains(SetCoordinates self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetCoordinates_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetCoordinates self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetCoordinates_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetCoordinates self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Coordinate > const *

        """
        return _opensim.SetCoordinates_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetCoordinates self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetCoordinates_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetCoordinates self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetCoordinates_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetCoordinates self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetCoordinates_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetCoordinates self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetCoordinates_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetCoordinates self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetCoordinates_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetCoordinates self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetCoordinates self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetCoordinates_getGroup(self, *args)

SetCoordinates_swigregister = _opensim.SetCoordinates_swigregister
SetCoordinates_swigregister(SetCoordinates)

def SetCoordinates_safeDownCast(*args):
  """
    SetCoordinates_safeDownCast(OpenSimObject obj) -> SetCoordinates

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetCoordinates_safeDownCast(*args)

def SetCoordinates_getClassName():
  """SetCoordinates_getClassName() -> std::string const &"""
  return _opensim.SetCoordinates_getClassName()

class ModelComponentSetCoordinates(SetCoordinates):
    """Proxy of C++ OpenSim::ModelComponentSet<(OpenSim::Coordinate)> class"""
    __swig_setmethods__ = {}
    for _s in [SetCoordinates]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ModelComponentSetCoordinates, name, value)
    __swig_getmethods__ = {}
    for _s in [SetCoordinates]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ModelComponentSetCoordinates, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ModelComponentSetCoordinates

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ModelComponentSetCoordinates_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ModelComponentSetCoordinates self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ModelComponentSetCoordinates_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ModelComponentSetCoordinates_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ModelComponentSetCoordinates self) -> ModelComponentSetCoordinates

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::Coordinate > const *

        """
        return _opensim.ModelComponentSetCoordinates_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ModelComponentSetCoordinates self) -> std::string const &

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::Coordinate > const *

        """
        return _opensim.ModelComponentSetCoordinates_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ModelComponentSet<(OpenSim::Coordinate)> self) -> ModelComponentSetCoordinates
        __init__(OpenSim::ModelComponentSet<(OpenSim::Coordinate)> self, Model model) -> ModelComponentSetCoordinates

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ModelComponentSet<(OpenSim::Coordinate)> self, Model model, std::string const & fileName, bool aUpdateFromXMLNode=True) -> ModelComponentSetCoordinates

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ModelComponentSet<(OpenSim::Coordinate)> self, Model model, std::string const & fileName) -> ModelComponentSetCoordinates

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &

        __init__(OpenSim::ModelComponentSet<(OpenSim::Coordinate)> self, ModelComponentSetCoordinates source) -> ModelComponentSetCoordinates

        Parameters:
            source: OpenSim::ModelComponentSet< OpenSim::Coordinate > const &

        """
        this = _opensim.new_ModelComponentSetCoordinates(*args)
        try: self.this.append(this)
        except: self.this = this
    def insert(self, *args):
        """
        insert(ModelComponentSetCoordinates self, int aIndex, Coordinate aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Coordinate *

        """
        return _opensim.ModelComponentSetCoordinates_insert(self, *args)

    def set(self, *args):
        """
        set(ModelComponentSetCoordinates self, int aIndex, Coordinate aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Coordinate *
            preserveGroups: bool

        set(ModelComponentSetCoordinates self, int aIndex, Coordinate aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Coordinate *

        """
        return _opensim.ModelComponentSetCoordinates_set(self, *args)

    def invokeConnectToModel(self, *args):
        """
        invokeConnectToModel(ModelComponentSetCoordinates self, Model model)

        Parameters:
            model: OpenSim::Model &

        """
        return _opensim.ModelComponentSetCoordinates_invokeConnectToModel(self, *args)

    def invokeAddToSystem(self, *args):
        """
        invokeAddToSystem(ModelComponentSetCoordinates self, SimTK::MultibodySystem & system)

        Parameters:
            system: SimTK::MultibodySystem &

        """
        return _opensim.ModelComponentSetCoordinates_invokeAddToSystem(self, *args)

    def invokeInitStateFromProperties(self, *args):
        """
        invokeInitStateFromProperties(ModelComponentSetCoordinates self, State state)

        Parameters:
            state: SimTK::State &

        """
        return _opensim.ModelComponentSetCoordinates_invokeInitStateFromProperties(self, *args)

    def invokeSetPropertiesFromState(self, *args):
        """
        invokeSetPropertiesFromState(ModelComponentSetCoordinates self, State state)

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ModelComponentSetCoordinates_invokeSetPropertiesFromState(self, *args)

    def invokeGenerateDecorations(self, *args):
        """
        invokeGenerateDecorations(ModelComponentSetCoordinates self, bool fixed, ModelDisplayHints hints, State state, ArrayDecorativeGeometry appendToThis)

        Parameters:
            fixed: bool
            hints: OpenSim::ModelDisplayHints const &
            state: SimTK::State const &
            appendToThis: SimTK::Array_< SimTK::DecorativeGeometry,unsigned int > &

        """
        return _opensim.ModelComponentSetCoordinates_invokeGenerateDecorations(self, *args)

    __swig_destroy__ = _opensim.delete_ModelComponentSetCoordinates
    __del__ = lambda self : None;
ModelComponentSetCoordinates_swigregister = _opensim.ModelComponentSetCoordinates_swigregister
ModelComponentSetCoordinates_swigregister(ModelComponentSetCoordinates)

def ModelComponentSetCoordinates_safeDownCast(*args):
  """
    ModelComponentSetCoordinates_safeDownCast(OpenSimObject obj) -> ModelComponentSetCoordinates

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ModelComponentSetCoordinates_safeDownCast(*args)

def ModelComponentSetCoordinates_getClassName():
  """ModelComponentSetCoordinates_getClassName() -> std::string const &"""
  return _opensim.ModelComponentSetCoordinates_getClassName()

class CoordinateSet(ModelComponentSetCoordinates):
    """Proxy of C++ OpenSim::CoordinateSet class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponentSetCoordinates]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, CoordinateSet, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponentSetCoordinates]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, CoordinateSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> CoordinateSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.CoordinateSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(CoordinateSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.CoordinateSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.CoordinateSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(CoordinateSet self) -> CoordinateSet

        Parameters:
            self: OpenSim::CoordinateSet const *

        """
        return _opensim.CoordinateSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(CoordinateSet self) -> std::string const &

        Parameters:
            self: OpenSim::CoordinateSet const *

        """
        return _opensim.CoordinateSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::CoordinateSet self) -> CoordinateSet
        __init__(OpenSim::CoordinateSet self, Model model) -> CoordinateSet

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::CoordinateSet self, Model model, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> CoordinateSet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::CoordinateSet self, Model model, std::string const & aFileName) -> CoordinateSet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &

        __init__(OpenSim::CoordinateSet self, CoordinateSet aCoordinateSet) -> CoordinateSet

        Parameters:
            aCoordinateSet: OpenSim::CoordinateSet const &

        """
        this = _opensim.new_CoordinateSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_CoordinateSet
    __del__ = lambda self : None;
    def populate(self, *args):
        """
        populate(CoordinateSet self, Model model)

        Parameters:
            model: OpenSim::Model &

        """
        return _opensim.CoordinateSet_populate(self, *args)

    def getSpeedNames(self, *args):
        """
        getSpeedNames(CoordinateSet self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.CoordinateSet_getSpeedNames(self, *args)

    def adoptAndAppend(self, aCoordinate):
        aCoordinate._markAdopted()
        return super(CoordinateSet, self).adoptAndAppend(aCoordinate)

CoordinateSet_swigregister = _opensim.CoordinateSet_swigregister
CoordinateSet_swigregister(CoordinateSet)

def CoordinateSet_safeDownCast(*args):
  """
    CoordinateSet_safeDownCast(OpenSimObject obj) -> CoordinateSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.CoordinateSet_safeDownCast(*args)

def CoordinateSet_getClassName():
  """CoordinateSet_getClassName() -> std::string const &"""
  return _opensim.CoordinateSet_getClassName()

class Joint(ModelComponent):
    """Proxy of C++ OpenSim::Joint class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponent]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Joint, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponent]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Joint, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Joint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Joint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Joint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Joint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Joint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Joint self) -> Joint

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Joint self) -> std::string const &

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_getConcreteClassName(self)

    def copyProperty_parent_body(self, *args):
        """
        copyProperty_parent_body(Joint self, Joint source)

        Parameters:
            source: OpenSim::Joint::Self const &

        """
        return _opensim.Joint_copyProperty_parent_body(self, *args)

    def append_parent_body(self, *args):
        """
        append_parent_body(Joint self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.Joint_append_parent_body(self, *args)

    def constructProperty_parent_body(self, *args):
        """
        constructProperty_parent_body(Joint self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.Joint_constructProperty_parent_body(self, *args)

    def get_parent_body(self, *args):
        """
        get_parent_body(Joint self, int i) -> std::string const

        Parameters:
            i: int

        get_parent_body(Joint self) -> std::string const &

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_get_parent_body(self, *args)

    def upd_parent_body(self, *args):
        """
        upd_parent_body(Joint self, int i) -> std::string

        Parameters:
            i: int

        upd_parent_body(Joint self) -> std::string &

        Parameters:
            self: OpenSim::Joint *

        """
        return _opensim.Joint_upd_parent_body(self, *args)

    def set_parent_body(self, *args):
        """
        set_parent_body(Joint self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_parent_body(Joint self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.Joint_set_parent_body(self, *args)

    def copyProperty_location_in_parent(self, *args):
        """
        copyProperty_location_in_parent(Joint self, Joint source)

        Parameters:
            source: OpenSim::Joint::Self const &

        """
        return _opensim.Joint_copyProperty_location_in_parent(self, *args)

    def append_location_in_parent(self, *args):
        """
        append_location_in_parent(Joint self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.Joint_append_location_in_parent(self, *args)

    def constructProperty_location_in_parent(self, *args):
        """
        constructProperty_location_in_parent(Joint self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.Joint_constructProperty_location_in_parent(self, *args)

    def get_location_in_parent(self, *args):
        """
        get_location_in_parent(Joint self, int i) -> Vec3

        Parameters:
            i: int

        get_location_in_parent(Joint self) -> Vec3

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_get_location_in_parent(self, *args)

    def upd_location_in_parent(self, *args):
        """
        upd_location_in_parent(Joint self, int i) -> Vec3

        Parameters:
            i: int

        upd_location_in_parent(Joint self) -> Vec3

        Parameters:
            self: OpenSim::Joint *

        """
        return _opensim.Joint_upd_location_in_parent(self, *args)

    def set_location_in_parent(self, *args):
        """
        set_location_in_parent(Joint self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location_in_parent(Joint self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.Joint_set_location_in_parent(self, *args)

    def copyProperty_orientation_in_parent(self, *args):
        """
        copyProperty_orientation_in_parent(Joint self, Joint source)

        Parameters:
            source: OpenSim::Joint::Self const &

        """
        return _opensim.Joint_copyProperty_orientation_in_parent(self, *args)

    def append_orientation_in_parent(self, *args):
        """
        append_orientation_in_parent(Joint self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.Joint_append_orientation_in_parent(self, *args)

    def constructProperty_orientation_in_parent(self, *args):
        """
        constructProperty_orientation_in_parent(Joint self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.Joint_constructProperty_orientation_in_parent(self, *args)

    def get_orientation_in_parent(self, *args):
        """
        get_orientation_in_parent(Joint self, int i) -> Vec3

        Parameters:
            i: int

        get_orientation_in_parent(Joint self) -> Vec3

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_get_orientation_in_parent(self, *args)

    def upd_orientation_in_parent(self, *args):
        """
        upd_orientation_in_parent(Joint self, int i) -> Vec3

        Parameters:
            i: int

        upd_orientation_in_parent(Joint self) -> Vec3

        Parameters:
            self: OpenSim::Joint *

        """
        return _opensim.Joint_upd_orientation_in_parent(self, *args)

    def set_orientation_in_parent(self, *args):
        """
        set_orientation_in_parent(Joint self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_orientation_in_parent(Joint self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.Joint_set_orientation_in_parent(self, *args)

    def copyProperty_location(self, *args):
        """
        copyProperty_location(Joint self, Joint source)

        Parameters:
            source: OpenSim::Joint::Self const &

        """
        return _opensim.Joint_copyProperty_location(self, *args)

    def append_location(self, *args):
        """
        append_location(Joint self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.Joint_append_location(self, *args)

    def constructProperty_location(self, *args):
        """
        constructProperty_location(Joint self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.Joint_constructProperty_location(self, *args)

    def get_location(self, *args):
        """
        get_location(Joint self, int i) -> Vec3

        Parameters:
            i: int

        get_location(Joint self) -> Vec3

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_get_location(self, *args)

    def upd_location(self, *args):
        """
        upd_location(Joint self, int i) -> Vec3

        Parameters:
            i: int

        upd_location(Joint self) -> Vec3

        Parameters:
            self: OpenSim::Joint *

        """
        return _opensim.Joint_upd_location(self, *args)

    def set_location(self, *args):
        """
        set_location(Joint self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location(Joint self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.Joint_set_location(self, *args)

    def copyProperty_orientation(self, *args):
        """
        copyProperty_orientation(Joint self, Joint source)

        Parameters:
            source: OpenSim::Joint::Self const &

        """
        return _opensim.Joint_copyProperty_orientation(self, *args)

    def append_orientation(self, *args):
        """
        append_orientation(Joint self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.Joint_append_orientation(self, *args)

    def constructProperty_orientation(self, *args):
        """
        constructProperty_orientation(Joint self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.Joint_constructProperty_orientation(self, *args)

    def get_orientation(self, *args):
        """
        get_orientation(Joint self, int i) -> Vec3

        Parameters:
            i: int

        get_orientation(Joint self) -> Vec3

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_get_orientation(self, *args)

    def upd_orientation(self, *args):
        """
        upd_orientation(Joint self, int i) -> Vec3

        Parameters:
            i: int

        upd_orientation(Joint self) -> Vec3

        Parameters:
            self: OpenSim::Joint *

        """
        return _opensim.Joint_upd_orientation(self, *args)

    def set_orientation(self, *args):
        """
        set_orientation(Joint self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_orientation(Joint self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.Joint_set_orientation(self, *args)

    def copyProperty_CoordinateSet(self, *args):
        """
        copyProperty_CoordinateSet(Joint self, Joint source)

        Parameters:
            source: OpenSim::Joint::Self const &

        """
        return _opensim.Joint_copyProperty_CoordinateSet(self, *args)

    def append_CoordinateSet(self, *args):
        """
        append_CoordinateSet(Joint self, CoordinateSet value) -> int

        Parameters:
            value: OpenSim::CoordinateSet const &

        """
        return _opensim.Joint_append_CoordinateSet(self, *args)

    def constructProperty_CoordinateSet(self, *args):
        """
        constructProperty_CoordinateSet(Joint self, CoordinateSet initValue)

        Parameters:
            initValue: OpenSim::CoordinateSet const &

        """
        return _opensim.Joint_constructProperty_CoordinateSet(self, *args)

    def get_CoordinateSet(self, *args):
        """
        get_CoordinateSet(Joint self, int i) -> CoordinateSet

        Parameters:
            i: int

        get_CoordinateSet(Joint self) -> CoordinateSet

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_get_CoordinateSet(self, *args)

    def upd_CoordinateSet(self, *args):
        """
        upd_CoordinateSet(Joint self, int i) -> CoordinateSet

        Parameters:
            i: int

        upd_CoordinateSet(Joint self) -> CoordinateSet

        Parameters:
            self: OpenSim::Joint *

        """
        return _opensim.Joint_upd_CoordinateSet(self, *args)

    def set_CoordinateSet(self, *args):
        """
        set_CoordinateSet(Joint self, int i, CoordinateSet value)

        Parameters:
            i: int
            value: OpenSim::CoordinateSet const &

        set_CoordinateSet(Joint self, CoordinateSet value)

        Parameters:
            value: OpenSim::CoordinateSet const &

        """
        return _opensim.Joint_set_CoordinateSet(self, *args)

    def copyProperty_reverse(self, *args):
        """
        copyProperty_reverse(Joint self, Joint source)

        Parameters:
            source: OpenSim::Joint::Self const &

        """
        return _opensim.Joint_copyProperty_reverse(self, *args)

    def append_reverse(self, *args):
        """
        append_reverse(Joint self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Joint_append_reverse(self, *args)

    def constructProperty_reverse(self, *args):
        """
        constructProperty_reverse(Joint self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Joint_constructProperty_reverse(self, *args)

    def get_reverse(self, *args):
        """
        get_reverse(Joint self, int i) -> bool const

        Parameters:
            i: int

        get_reverse(Joint self) -> bool const &

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_get_reverse(self, *args)

    def upd_reverse(self, *args):
        """
        upd_reverse(Joint self, int i) -> bool

        Parameters:
            i: int

        upd_reverse(Joint self) -> bool &

        Parameters:
            self: OpenSim::Joint *

        """
        return _opensim.Joint_upd_reverse(self, *args)

    def set_reverse(self, *args):
        """
        set_reverse(Joint self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_reverse(Joint self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Joint_set_reverse(self, *args)

    __swig_destroy__ = _opensim.delete_Joint
    __del__ = lambda self : None;
    def setBody(self, *args):
        """
        setBody(Joint self, Body aBody)

        Parameters:
            aBody: OpenSim::Body &

        """
        return _opensim.Joint_setBody(self, *args)

    def getBody(self):
        """
        getBody(Joint self) -> Body

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_getBody(self)

    def updBody(self):
        """
        updBody(Joint self) -> Body

        Parameters:
            self: OpenSim::Joint *

        """
        return _opensim.Joint_updBody(self)

    def setLocation(self, *args):
        """
        setLocation(Joint self, Vec3 aLocation)

        Parameters:
            aLocation: SimTK::Vec3 const &

        """
        return _opensim.Joint_setLocation(self, *args)

    def getLocation(self, *args):
        """
        getLocation(Joint self, Vec3 rLocation)

        Parameters:
            rLocation: SimTK::Vec3 &

        """
        return _opensim.Joint_getLocation(self, *args)

    def setOrientation(self, *args):
        """
        setOrientation(Joint self, Vec3 aOrientation)

        Parameters:
            aOrientation: SimTK::Vec3 const &

        """
        return _opensim.Joint_setOrientation(self, *args)

    def getOrientation(self, *args):
        """
        getOrientation(Joint self, Vec3 rOrientation)

        Parameters:
            rOrientation: SimTK::Vec3 &

        """
        return _opensim.Joint_getOrientation(self, *args)

    def setParentName(self, *args):
        """
        setParentName(Joint self, std::string const & aName)

        Parameters:
            aName: std::string const &

        """
        return _opensim.Joint_setParentName(self, *args)

    def getParentName(self):
        """
        getParentName(Joint self) -> std::string

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_getParentName(self)

    def setParentBody(self, *args):
        """
        setParentBody(Joint self, Body aBody)

        Parameters:
            aBody: OpenSim::Body &

        """
        return _opensim.Joint_setParentBody(self, *args)

    def getParentBody(self):
        """
        getParentBody(Joint self) -> Body

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_getParentBody(self)

    def updParentBody(self):
        """
        updParentBody(Joint self) -> Body

        Parameters:
            self: OpenSim::Joint *

        """
        return _opensim.Joint_updParentBody(self)

    def setLocationInParent(self, *args):
        """
        setLocationInParent(Joint self, Vec3 aLocation)

        Parameters:
            aLocation: SimTK::Vec3 const &

        """
        return _opensim.Joint_setLocationInParent(self, *args)

    def getLocationInParent(self, *args):
        """
        getLocationInParent(Joint self, Vec3 rLocation)

        Parameters:
            rLocation: SimTK::Vec3 &

        """
        return _opensim.Joint_getLocationInParent(self, *args)

    def setOrientationInParent(self, *args):
        """
        setOrientationInParent(Joint self, Vec3 aOrientation)

        Parameters:
            aOrientation: SimTK::Vec3 const &

        """
        return _opensim.Joint_setOrientationInParent(self, *args)

    def getOrientationInParent(self, *args):
        """
        getOrientationInParent(Joint self, Vec3 rOrientation)

        Parameters:
            rOrientation: SimTK::Vec3 &

        """
        return _opensim.Joint_getOrientationInParent(self, *args)

    def setLocationInChild(self, *args):
        """
        setLocationInChild(Joint self, Vec3 aLocation)

        Parameters:
            aLocation: SimTK::Vec3 const &

        """
        return _opensim.Joint_setLocationInChild(self, *args)

    def getLocationInChild(self):
        """
        getLocationInChild(Joint self) -> Vec3

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_getLocationInChild(self)

    def getCoordinateSet(self):
        """
        getCoordinateSet(Joint self) -> CoordinateSet

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_getCoordinateSet(self)

    def getReverse(self):
        """
        getReverse(Joint self) -> bool

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_getReverse(self)

    def numCoordinates(self):
        """
        numCoordinates(Joint self) -> int

        Parameters:
            self: OpenSim::Joint const *

        """
        return _opensim.Joint_numCoordinates(self)

    def checkParentBody(self):
        """
        checkParentBody(Joint self)

        Parameters:
            self: OpenSim::Joint *

        """
        return _opensim.Joint_checkParentBody(self)

    def isCoordinateUsed(self, *args):
        """
        isCoordinateUsed(Joint self, Coordinate aCoordinate) -> bool

        Parameters:
            aCoordinate: OpenSim::Coordinate &

        """
        return _opensim.Joint_isCoordinateUsed(self, *args)

    def calcEquivalentSpatialForce(self, *args):
        """
        calcEquivalentSpatialForce(Joint self, State s, Vector mobilityForces) -> SpatialVec

        Parameters:
            s: SimTK::State const &
            mobilityForces: SimTK::Vector const &

        """
        return _opensim.Joint_calcEquivalentSpatialForce(self, *args)

    def calcPower(self, *args):
        """
        calcPower(Joint self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Joint_calcPower(self, *args)

    def scale(self, *args):
        """
        scale(Joint self, ScaleSet aScaleSet)

        Parameters:
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.Joint_scale(self, *args)

    def connectToModel(self, *args):
        """
        connectToModel(Joint self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.Joint_connectToModel(self, *args)

Joint_swigregister = _opensim.Joint_swigregister
Joint_swigregister(Joint)

def Joint_safeDownCast(*args):
  """
    Joint_safeDownCast(OpenSimObject obj) -> Joint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Joint_safeDownCast(*args)

def Joint_getClassName():
  """Joint_getClassName() -> std::string const &"""
  return _opensim.Joint_getClassName()

class FreeJoint(Joint):
    """Proxy of C++ OpenSim::FreeJoint class"""
    __swig_setmethods__ = {}
    for _s in [Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, FreeJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, FreeJoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> FreeJoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.FreeJoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(FreeJoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.FreeJoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.FreeJoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(FreeJoint self) -> FreeJoint

        Parameters:
            self: OpenSim::FreeJoint const *

        """
        return _opensim.FreeJoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(FreeJoint self) -> std::string const &

        Parameters:
            self: OpenSim::FreeJoint const *

        """
        return _opensim.FreeJoint_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::FreeJoint self) -> FreeJoint
        __init__(OpenSim::FreeJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody, bool reverse=False) -> FreeJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3
            reverse: bool

        __init__(OpenSim::FreeJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody) -> FreeJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3

        """
        this = _opensim.new_FreeJoint(*args)
        try: self.this.append(this)
        except: self.this = this
        self._markAdopted()



    __swig_destroy__ = _opensim.delete_FreeJoint
    __del__ = lambda self : None;
    def numCoordinates(self):
        """
        numCoordinates(FreeJoint self) -> int

        Parameters:
            self: OpenSim::FreeJoint const *

        """
        return _opensim.FreeJoint_numCoordinates(self)

FreeJoint_swigregister = _opensim.FreeJoint_swigregister
FreeJoint_swigregister(FreeJoint)

def FreeJoint_safeDownCast(*args):
  """
    FreeJoint_safeDownCast(OpenSimObject obj) -> FreeJoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.FreeJoint_safeDownCast(*args)

def FreeJoint_getClassName():
  """FreeJoint_getClassName() -> std::string const &"""
  return _opensim.FreeJoint_getClassName()

class CustomJoint(Joint):
    """Proxy of C++ OpenSim::CustomJoint class"""
    __swig_setmethods__ = {}
    for _s in [Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, CustomJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, CustomJoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> CustomJoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.CustomJoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(CustomJoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.CustomJoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.CustomJoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(CustomJoint self) -> CustomJoint

        Parameters:
            self: OpenSim::CustomJoint const *

        """
        return _opensim.CustomJoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(CustomJoint self) -> std::string const &

        Parameters:
            self: OpenSim::CustomJoint const *

        """
        return _opensim.CustomJoint_getConcreteClassName(self)

    def copyProperty_SpatialTransform(self, *args):
        """
        copyProperty_SpatialTransform(CustomJoint self, CustomJoint source)

        Parameters:
            source: OpenSim::CustomJoint::Self const &

        """
        return _opensim.CustomJoint_copyProperty_SpatialTransform(self, *args)

    def append_SpatialTransform(self, *args):
        """
        append_SpatialTransform(CustomJoint self, SpatialTransform value) -> int

        Parameters:
            value: OpenSim::SpatialTransform const &

        """
        return _opensim.CustomJoint_append_SpatialTransform(self, *args)

    def constructProperty_SpatialTransform(self, *args):
        """
        constructProperty_SpatialTransform(CustomJoint self, SpatialTransform initValue)

        Parameters:
            initValue: OpenSim::SpatialTransform const &

        """
        return _opensim.CustomJoint_constructProperty_SpatialTransform(self, *args)

    def get_SpatialTransform(self, *args):
        """
        get_SpatialTransform(CustomJoint self, int i) -> SpatialTransform

        Parameters:
            i: int

        get_SpatialTransform(CustomJoint self) -> SpatialTransform

        Parameters:
            self: OpenSim::CustomJoint const *

        """
        return _opensim.CustomJoint_get_SpatialTransform(self, *args)

    def upd_SpatialTransform(self, *args):
        """
        upd_SpatialTransform(CustomJoint self, int i) -> SpatialTransform

        Parameters:
            i: int

        upd_SpatialTransform(CustomJoint self) -> SpatialTransform

        Parameters:
            self: OpenSim::CustomJoint *

        """
        return _opensim.CustomJoint_upd_SpatialTransform(self, *args)

    def set_SpatialTransform(self, *args):
        """
        set_SpatialTransform(CustomJoint self, int i, SpatialTransform value)

        Parameters:
            i: int
            value: OpenSim::SpatialTransform const &

        set_SpatialTransform(CustomJoint self, SpatialTransform value)

        Parameters:
            value: OpenSim::SpatialTransform const &

        """
        return _opensim.CustomJoint_set_SpatialTransform(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::CustomJoint self) -> CustomJoint
        __init__(OpenSim::CustomJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody, SpatialTransform aSpatialTransform, 
            bool reverse=False) -> CustomJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3
            aSpatialTransform: OpenSim::SpatialTransform &
            reverse: bool

        __init__(OpenSim::CustomJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody, SpatialTransform aSpatialTransform) -> CustomJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3
            aSpatialTransform: OpenSim::SpatialTransform &

        __init__(OpenSim::CustomJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody, bool reverse=False) -> CustomJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3
            reverse: bool

        __init__(OpenSim::CustomJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody) -> CustomJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3

        """
        this = _opensim.new_CustomJoint(*args)
        try: self.this.append(this)
        except: self.this = this
        self._markAdopted()



    def numCoordinates(self):
        """
        numCoordinates(CustomJoint self) -> int

        Parameters:
            self: OpenSim::CustomJoint const *

        """
        return _opensim.CustomJoint_numCoordinates(self)

    def getSpatialTransform(self):
        """
        getSpatialTransform(CustomJoint self) -> SpatialTransform

        Parameters:
            self: OpenSim::CustomJoint const *

        """
        return _opensim.CustomJoint_getSpatialTransform(self)

    def updSpatialTransform(self):
        """
        updSpatialTransform(CustomJoint self) -> SpatialTransform

        Parameters:
            self: OpenSim::CustomJoint *

        """
        return _opensim.CustomJoint_updSpatialTransform(self)

    def scale(self, *args):
        """
        scale(CustomJoint self, ScaleSet aScaleSet)

        Parameters:
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.CustomJoint_scale(self, *args)

    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(CustomJoint self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(CustomJoint self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.CustomJoint_updateFromXMLNode(self, *args)

    __swig_destroy__ = _opensim.delete_CustomJoint
    __del__ = lambda self : None;
CustomJoint_swigregister = _opensim.CustomJoint_swigregister
CustomJoint_swigregister(CustomJoint)

def CustomJoint_safeDownCast(*args):
  """
    CustomJoint_safeDownCast(OpenSimObject obj) -> CustomJoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.CustomJoint_safeDownCast(*args)

def CustomJoint_getClassName():
  """CustomJoint_getClassName() -> std::string const &"""
  return _opensim.CustomJoint_getClassName()

class EllipsoidJoint(Joint):
    """Proxy of C++ OpenSim::EllipsoidJoint class"""
    __swig_setmethods__ = {}
    for _s in [Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, EllipsoidJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, EllipsoidJoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> EllipsoidJoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.EllipsoidJoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(EllipsoidJoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.EllipsoidJoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.EllipsoidJoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(EllipsoidJoint self) -> EllipsoidJoint

        Parameters:
            self: OpenSim::EllipsoidJoint const *

        """
        return _opensim.EllipsoidJoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(EllipsoidJoint self) -> std::string const &

        Parameters:
            self: OpenSim::EllipsoidJoint const *

        """
        return _opensim.EllipsoidJoint_getConcreteClassName(self)

    def copyProperty_radii_x_y_z(self, *args):
        """
        copyProperty_radii_x_y_z(EllipsoidJoint self, EllipsoidJoint source)

        Parameters:
            source: OpenSim::EllipsoidJoint::Self const &

        """
        return _opensim.EllipsoidJoint_copyProperty_radii_x_y_z(self, *args)

    def append_radii_x_y_z(self, *args):
        """
        append_radii_x_y_z(EllipsoidJoint self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.EllipsoidJoint_append_radii_x_y_z(self, *args)

    def constructProperty_radii_x_y_z(self, *args):
        """
        constructProperty_radii_x_y_z(EllipsoidJoint self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.EllipsoidJoint_constructProperty_radii_x_y_z(self, *args)

    def get_radii_x_y_z(self, *args):
        """
        get_radii_x_y_z(EllipsoidJoint self, int i) -> Vec3

        Parameters:
            i: int

        get_radii_x_y_z(EllipsoidJoint self) -> Vec3

        Parameters:
            self: OpenSim::EllipsoidJoint const *

        """
        return _opensim.EllipsoidJoint_get_radii_x_y_z(self, *args)

    def upd_radii_x_y_z(self, *args):
        """
        upd_radii_x_y_z(EllipsoidJoint self, int i) -> Vec3

        Parameters:
            i: int

        upd_radii_x_y_z(EllipsoidJoint self) -> Vec3

        Parameters:
            self: OpenSim::EllipsoidJoint *

        """
        return _opensim.EllipsoidJoint_upd_radii_x_y_z(self, *args)

    def set_radii_x_y_z(self, *args):
        """
        set_radii_x_y_z(EllipsoidJoint self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_radii_x_y_z(EllipsoidJoint self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.EllipsoidJoint_set_radii_x_y_z(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::EllipsoidJoint self) -> EllipsoidJoint
        __init__(OpenSim::EllipsoidJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody, Vec3 ellipsoidRadii, 
            bool reverse=False) -> EllipsoidJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3
            ellipsoidRadii: SimTK::Vec3
            reverse: bool

        __init__(OpenSim::EllipsoidJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody, Vec3 ellipsoidRadii) -> EllipsoidJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3
            ellipsoidRadii: SimTK::Vec3

        """
        this = _opensim.new_EllipsoidJoint(*args)
        try: self.this.append(this)
        except: self.this = this
        self._markAdopted()



    __swig_destroy__ = _opensim.delete_EllipsoidJoint
    __del__ = lambda self : None;
    def numCoordinates(self):
        """
        numCoordinates(EllipsoidJoint self) -> int

        Parameters:
            self: OpenSim::EllipsoidJoint const *

        """
        return _opensim.EllipsoidJoint_numCoordinates(self)

    def setEllipsoidRadii(self, *args):
        """
        setEllipsoidRadii(EllipsoidJoint self, Vec3 radii)

        Parameters:
            radii: SimTK::Vec3

        """
        return _opensim.EllipsoidJoint_setEllipsoidRadii(self, *args)

    def scale(self, *args):
        """
        scale(EllipsoidJoint self, ScaleSet aScaleSet)

        Parameters:
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.EllipsoidJoint_scale(self, *args)

EllipsoidJoint_swigregister = _opensim.EllipsoidJoint_swigregister
EllipsoidJoint_swigregister(EllipsoidJoint)

def EllipsoidJoint_safeDownCast(*args):
  """
    EllipsoidJoint_safeDownCast(OpenSimObject obj) -> EllipsoidJoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.EllipsoidJoint_safeDownCast(*args)

def EllipsoidJoint_getClassName():
  """EllipsoidJoint_getClassName() -> std::string const &"""
  return _opensim.EllipsoidJoint_getClassName()

class BallJoint(Joint):
    """Proxy of C++ OpenSim::BallJoint class"""
    __swig_setmethods__ = {}
    for _s in [Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, BallJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, BallJoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> BallJoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.BallJoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(BallJoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.BallJoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.BallJoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(BallJoint self) -> BallJoint

        Parameters:
            self: OpenSim::BallJoint const *

        """
        return _opensim.BallJoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(BallJoint self) -> std::string const &

        Parameters:
            self: OpenSim::BallJoint const *

        """
        return _opensim.BallJoint_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::BallJoint self) -> BallJoint
        __init__(OpenSim::BallJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody, bool reverse=False) -> BallJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3
            reverse: bool

        __init__(OpenSim::BallJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody) -> BallJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3

        """
        this = _opensim.new_BallJoint(*args)
        try: self.this.append(this)
        except: self.this = this
        self._markAdopted()



    __swig_destroy__ = _opensim.delete_BallJoint
    __del__ = lambda self : None;
    def numCoordinates(self):
        """
        numCoordinates(BallJoint self) -> int

        Parameters:
            self: OpenSim::BallJoint const *

        """
        return _opensim.BallJoint_numCoordinates(self)

BallJoint_swigregister = _opensim.BallJoint_swigregister
BallJoint_swigregister(BallJoint)

def BallJoint_safeDownCast(*args):
  """
    BallJoint_safeDownCast(OpenSimObject obj) -> BallJoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.BallJoint_safeDownCast(*args)

def BallJoint_getClassName():
  """BallJoint_getClassName() -> std::string const &"""
  return _opensim.BallJoint_getClassName()

class PinJoint(Joint):
    """Proxy of C++ OpenSim::PinJoint class"""
    __swig_setmethods__ = {}
    for _s in [Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PinJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PinJoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PinJoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PinJoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PinJoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PinJoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PinJoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PinJoint self) -> PinJoint

        Parameters:
            self: OpenSim::PinJoint const *

        """
        return _opensim.PinJoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PinJoint self) -> std::string const &

        Parameters:
            self: OpenSim::PinJoint const *

        """
        return _opensim.PinJoint_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PinJoint self) -> PinJoint
        __init__(OpenSim::PinJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody, bool reverse=False) -> PinJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3
            reverse: bool

        __init__(OpenSim::PinJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody) -> PinJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3

        """
        this = _opensim.new_PinJoint(*args)
        try: self.this.append(this)
        except: self.this = this
        self._markAdopted()



    __swig_destroy__ = _opensim.delete_PinJoint
    __del__ = lambda self : None;
    def numCoordinates(self):
        """
        numCoordinates(PinJoint self) -> int

        Parameters:
            self: OpenSim::PinJoint const *

        """
        return _opensim.PinJoint_numCoordinates(self)

PinJoint_swigregister = _opensim.PinJoint_swigregister
PinJoint_swigregister(PinJoint)

def PinJoint_safeDownCast(*args):
  """
    PinJoint_safeDownCast(OpenSimObject obj) -> PinJoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PinJoint_safeDownCast(*args)

def PinJoint_getClassName():
  """PinJoint_getClassName() -> std::string const &"""
  return _opensim.PinJoint_getClassName()

class SliderJoint(Joint):
    """Proxy of C++ OpenSim::SliderJoint class"""
    __swig_setmethods__ = {}
    for _s in [Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SliderJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SliderJoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SliderJoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SliderJoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SliderJoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SliderJoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SliderJoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SliderJoint self) -> SliderJoint

        Parameters:
            self: OpenSim::SliderJoint const *

        """
        return _opensim.SliderJoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SliderJoint self) -> std::string const &

        Parameters:
            self: OpenSim::SliderJoint const *

        """
        return _opensim.SliderJoint_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::SliderJoint self) -> SliderJoint
        __init__(OpenSim::SliderJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody, bool reverse=False) -> SliderJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3
            reverse: bool

        __init__(OpenSim::SliderJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody) -> SliderJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3

        """
        this = _opensim.new_SliderJoint(*args)
        try: self.this.append(this)
        except: self.this = this
        self._markAdopted()



    def numCoordinates(self):
        """
        numCoordinates(SliderJoint self) -> int

        Parameters:
            self: OpenSim::SliderJoint const *

        """
        return _opensim.SliderJoint_numCoordinates(self)

    __swig_destroy__ = _opensim.delete_SliderJoint
    __del__ = lambda self : None;
SliderJoint_swigregister = _opensim.SliderJoint_swigregister
SliderJoint_swigregister(SliderJoint)

def SliderJoint_safeDownCast(*args):
  """
    SliderJoint_safeDownCast(OpenSimObject obj) -> SliderJoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SliderJoint_safeDownCast(*args)

def SliderJoint_getClassName():
  """SliderJoint_getClassName() -> std::string const &"""
  return _opensim.SliderJoint_getClassName()

class WeldJoint(Joint):
    """Proxy of C++ OpenSim::WeldJoint class"""
    __swig_setmethods__ = {}
    for _s in [Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, WeldJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, WeldJoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> WeldJoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.WeldJoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(WeldJoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.WeldJoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.WeldJoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(WeldJoint self) -> WeldJoint

        Parameters:
            self: OpenSim::WeldJoint const *

        """
        return _opensim.WeldJoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(WeldJoint self) -> std::string const &

        Parameters:
            self: OpenSim::WeldJoint const *

        """
        return _opensim.WeldJoint_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::WeldJoint self) -> WeldJoint
        __init__(OpenSim::WeldJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody, bool reverse=False) -> WeldJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3
            reverse: bool

        __init__(OpenSim::WeldJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody) -> WeldJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3

        """
        this = _opensim.new_WeldJoint(*args)
        try: self.this.append(this)
        except: self.this = this
        self._markAdopted()



    __swig_destroy__ = _opensim.delete_WeldJoint
    __del__ = lambda self : None;
    def numCoordinates(self):
        """
        numCoordinates(WeldJoint self) -> int

        Parameters:
            self: OpenSim::WeldJoint const *

        """
        return _opensim.WeldJoint_numCoordinates(self)

    def createMobilizedBody(self, *args):
        """
        createMobilizedBody(WeldJoint self, Transform parentTransform, Transform childTransform)

        Parameters:
            parentTransform: SimTK::Transform
            childTransform: SimTK::Transform

        """
        return _opensim.WeldJoint_createMobilizedBody(self, *args)

WeldJoint_swigregister = _opensim.WeldJoint_swigregister
WeldJoint_swigregister(WeldJoint)

def WeldJoint_safeDownCast(*args):
  """
    WeldJoint_safeDownCast(OpenSimObject obj) -> WeldJoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.WeldJoint_safeDownCast(*args)

def WeldJoint_getClassName():
  """WeldJoint_getClassName() -> std::string const &"""
  return _opensim.WeldJoint_getClassName()

class GimbalJoint(Joint):
    """Proxy of C++ OpenSim::GimbalJoint class"""
    __swig_setmethods__ = {}
    for _s in [Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, GimbalJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, GimbalJoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> GimbalJoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.GimbalJoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(GimbalJoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.GimbalJoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.GimbalJoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(GimbalJoint self) -> GimbalJoint

        Parameters:
            self: OpenSim::GimbalJoint const *

        """
        return _opensim.GimbalJoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(GimbalJoint self) -> std::string const &

        Parameters:
            self: OpenSim::GimbalJoint const *

        """
        return _opensim.GimbalJoint_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::GimbalJoint self) -> GimbalJoint
        __init__(OpenSim::GimbalJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody, bool reverse=False) -> GimbalJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3
            reverse: bool

        __init__(OpenSim::GimbalJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody) -> GimbalJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3

        """
        this = _opensim.new_GimbalJoint(*args)
        try: self.this.append(this)
        except: self.this = this
        self._markAdopted()



    __swig_destroy__ = _opensim.delete_GimbalJoint
    __del__ = lambda self : None;
    def numCoordinates(self):
        """
        numCoordinates(GimbalJoint self) -> int

        Parameters:
            self: OpenSim::GimbalJoint const *

        """
        return _opensim.GimbalJoint_numCoordinates(self)

GimbalJoint_swigregister = _opensim.GimbalJoint_swigregister
GimbalJoint_swigregister(GimbalJoint)

def GimbalJoint_safeDownCast(*args):
  """
    GimbalJoint_safeDownCast(OpenSimObject obj) -> GimbalJoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.GimbalJoint_safeDownCast(*args)

def GimbalJoint_getClassName():
  """GimbalJoint_getClassName() -> std::string const &"""
  return _opensim.GimbalJoint_getClassName()

class UniversalJoint(Joint):
    """Proxy of C++ OpenSim::UniversalJoint class"""
    __swig_setmethods__ = {}
    for _s in [Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, UniversalJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, UniversalJoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> UniversalJoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.UniversalJoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(UniversalJoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.UniversalJoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.UniversalJoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(UniversalJoint self) -> UniversalJoint

        Parameters:
            self: OpenSim::UniversalJoint const *

        """
        return _opensim.UniversalJoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(UniversalJoint self) -> std::string const &

        Parameters:
            self: OpenSim::UniversalJoint const *

        """
        return _opensim.UniversalJoint_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::UniversalJoint self) -> UniversalJoint
        __init__(OpenSim::UniversalJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody, bool reverse=False) -> UniversalJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3
            reverse: bool

        __init__(OpenSim::UniversalJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody) -> UniversalJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3

        """
        this = _opensim.new_UniversalJoint(*args)
        try: self.this.append(this)
        except: self.this = this
        self._markAdopted()



    __swig_destroy__ = _opensim.delete_UniversalJoint
    __del__ = lambda self : None;
    def numCoordinates(self):
        """
        numCoordinates(UniversalJoint self) -> int

        Parameters:
            self: OpenSim::UniversalJoint const *

        """
        return _opensim.UniversalJoint_numCoordinates(self)

UniversalJoint_swigregister = _opensim.UniversalJoint_swigregister
UniversalJoint_swigregister(UniversalJoint)

def UniversalJoint_safeDownCast(*args):
  """
    UniversalJoint_safeDownCast(OpenSimObject obj) -> UniversalJoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.UniversalJoint_safeDownCast(*args)

def UniversalJoint_getClassName():
  """UniversalJoint_getClassName() -> std::string const &"""
  return _opensim.UniversalJoint_getClassName()

class PlanarJoint(Joint):
    """Proxy of C++ OpenSim::PlanarJoint class"""
    __swig_setmethods__ = {}
    for _s in [Joint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PlanarJoint, name, value)
    __swig_getmethods__ = {}
    for _s in [Joint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PlanarJoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PlanarJoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PlanarJoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PlanarJoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PlanarJoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PlanarJoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PlanarJoint self) -> PlanarJoint

        Parameters:
            self: OpenSim::PlanarJoint const *

        """
        return _opensim.PlanarJoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PlanarJoint self) -> std::string const &

        Parameters:
            self: OpenSim::PlanarJoint const *

        """
        return _opensim.PlanarJoint_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PlanarJoint self) -> PlanarJoint
        __init__(OpenSim::PlanarJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody, bool reverse=False) -> PlanarJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3
            reverse: bool

        __init__(OpenSim::PlanarJoint self, std::string const & name, Body parent, Vec3 locationInParent, Vec3 orientationInParent, 
            Body body, Vec3 locationInBody, Vec3 orientationInBody) -> PlanarJoint

        Parameters:
            name: std::string const &
            parent: OpenSim::Body &
            locationInParent: SimTK::Vec3
            orientationInParent: SimTK::Vec3
            body: OpenSim::Body &
            locationInBody: SimTK::Vec3
            orientationInBody: SimTK::Vec3

        """
        this = _opensim.new_PlanarJoint(*args)
        try: self.this.append(this)
        except: self.this = this
        self._markAdopted()



    def numCoordinates(self):
        """
        numCoordinates(PlanarJoint self) -> int

        Parameters:
            self: OpenSim::PlanarJoint const *

        """
        return _opensim.PlanarJoint_numCoordinates(self)

    __swig_destroy__ = _opensim.delete_PlanarJoint
    __del__ = lambda self : None;
PlanarJoint_swigregister = _opensim.PlanarJoint_swigregister
PlanarJoint_swigregister(PlanarJoint)

def PlanarJoint_safeDownCast(*args):
  """
    PlanarJoint_safeDownCast(OpenSimObject obj) -> PlanarJoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PlanarJoint_safeDownCast(*args)

def PlanarJoint_getClassName():
  """PlanarJoint_getClassName() -> std::string const &"""
  return _opensim.PlanarJoint_getClassName()

class SetJoints(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Joint)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetJoints, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetJoints, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetJoints

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetJoints_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetJoints self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetJoints_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetJoints_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetJoints self) -> SetJoints

        Parameters:
            self: OpenSim::Set< OpenSim::Joint > const *

        """
        return _opensim.SetJoints_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetJoints self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Joint > const *

        """
        return _opensim.SetJoints_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetJoints
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Joint)> self) -> SetJoints
        __init__(OpenSim::Set<(OpenSim::Joint)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetJoints

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Joint)> self, std::string const & aFileName) -> SetJoints

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Joint)> self, SetJoints aSet) -> SetJoints

        Parameters:
            aSet: OpenSim::Set< OpenSim::Joint > const &

        """
        this = _opensim.new_SetJoints(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetJoints self)

        Parameters:
            self: OpenSim::Set< OpenSim::Joint > *

        """
        return _opensim.SetJoints_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetJoints self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetJoints_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetJoints self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetJoints_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetJoints self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Joint > const *

        """
        return _opensim.SetJoints_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetJoints self, Joint aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Joint const *
            aStartIndex: int

        getIndex(SetJoints self, Joint aObject) -> int

        Parameters:
            aObject: OpenSim::Joint const *

        getIndex(SetJoints self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetJoints self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetJoints_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetJoints self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetJoints_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetJoints self, Joint aObject) -> bool

        Parameters:
            aObject: OpenSim::Joint *

        """
        return _opensim.SetJoints_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetJoints self, Joint aObject) -> bool

        Parameters:
            aObject: OpenSim::Joint const &

        """
        return _opensim.SetJoints_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetJoints self, int aIndex, Joint aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Joint *

        """
        return _opensim.SetJoints_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetJoints self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetJoints self, Joint aObject) -> bool

        Parameters:
            aObject: OpenSim::Joint const *

        """
        return _opensim.SetJoints_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetJoints self)

        Parameters:
            self: OpenSim::Set< OpenSim::Joint > *

        """
        return _opensim.SetJoints_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetJoints self, int aIndex, Joint aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Joint *
            preserveGroups: bool

        set(SetJoints self, int aIndex, Joint aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Joint *

        """
        return _opensim.SetJoints_set(self, *args)

    def get(self, *args):
        """
        get(SetJoints self, int aIndex) -> Joint

        Parameters:
            aIndex: int

        get(SetJoints self, std::string const & aName) -> Joint

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetJoints_get(self, *args)

    def contains(self, *args):
        """
        contains(SetJoints self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetJoints_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetJoints self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetJoints_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetJoints self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Joint > const *

        """
        return _opensim.SetJoints_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetJoints self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetJoints_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetJoints self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetJoints_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetJoints self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetJoints_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetJoints self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetJoints_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetJoints self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetJoints_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetJoints self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetJoints self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetJoints_getGroup(self, *args)

SetJoints_swigregister = _opensim.SetJoints_swigregister
SetJoints_swigregister(SetJoints)

def SetJoints_safeDownCast(*args):
  """
    SetJoints_safeDownCast(OpenSimObject obj) -> SetJoints

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetJoints_safeDownCast(*args)

def SetJoints_getClassName():
  """SetJoints_getClassName() -> std::string const &"""
  return _opensim.SetJoints_getClassName()

class ModelComponentSetJoints(SetJoints):
    """Proxy of C++ OpenSim::ModelComponentSet<(OpenSim::Joint)> class"""
    __swig_setmethods__ = {}
    for _s in [SetJoints]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ModelComponentSetJoints, name, value)
    __swig_getmethods__ = {}
    for _s in [SetJoints]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ModelComponentSetJoints, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ModelComponentSetJoints

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ModelComponentSetJoints_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ModelComponentSetJoints self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ModelComponentSetJoints_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ModelComponentSetJoints_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ModelComponentSetJoints self) -> ModelComponentSetJoints

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::Joint > const *

        """
        return _opensim.ModelComponentSetJoints_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ModelComponentSetJoints self) -> std::string const &

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::Joint > const *

        """
        return _opensim.ModelComponentSetJoints_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ModelComponentSet<(OpenSim::Joint)> self) -> ModelComponentSetJoints
        __init__(OpenSim::ModelComponentSet<(OpenSim::Joint)> self, Model model) -> ModelComponentSetJoints

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ModelComponentSet<(OpenSim::Joint)> self, Model model, std::string const & fileName, bool aUpdateFromXMLNode=True) -> ModelComponentSetJoints

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ModelComponentSet<(OpenSim::Joint)> self, Model model, std::string const & fileName) -> ModelComponentSetJoints

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &

        __init__(OpenSim::ModelComponentSet<(OpenSim::Joint)> self, ModelComponentSetJoints source) -> ModelComponentSetJoints

        Parameters:
            source: OpenSim::ModelComponentSet< OpenSim::Joint > const &

        """
        this = _opensim.new_ModelComponentSetJoints(*args)
        try: self.this.append(this)
        except: self.this = this
    def insert(self, *args):
        """
        insert(ModelComponentSetJoints self, int aIndex, Joint aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Joint *

        """
        return _opensim.ModelComponentSetJoints_insert(self, *args)

    def set(self, *args):
        """
        set(ModelComponentSetJoints self, int aIndex, Joint aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Joint *
            preserveGroups: bool

        set(ModelComponentSetJoints self, int aIndex, Joint aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Joint *

        """
        return _opensim.ModelComponentSetJoints_set(self, *args)

    def invokeConnectToModel(self, *args):
        """
        invokeConnectToModel(ModelComponentSetJoints self, Model model)

        Parameters:
            model: OpenSim::Model &

        """
        return _opensim.ModelComponentSetJoints_invokeConnectToModel(self, *args)

    def invokeAddToSystem(self, *args):
        """
        invokeAddToSystem(ModelComponentSetJoints self, SimTK::MultibodySystem & system)

        Parameters:
            system: SimTK::MultibodySystem &

        """
        return _opensim.ModelComponentSetJoints_invokeAddToSystem(self, *args)

    def invokeInitStateFromProperties(self, *args):
        """
        invokeInitStateFromProperties(ModelComponentSetJoints self, State state)

        Parameters:
            state: SimTK::State &

        """
        return _opensim.ModelComponentSetJoints_invokeInitStateFromProperties(self, *args)

    def invokeSetPropertiesFromState(self, *args):
        """
        invokeSetPropertiesFromState(ModelComponentSetJoints self, State state)

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ModelComponentSetJoints_invokeSetPropertiesFromState(self, *args)

    def invokeGenerateDecorations(self, *args):
        """
        invokeGenerateDecorations(ModelComponentSetJoints self, bool fixed, ModelDisplayHints hints, State state, ArrayDecorativeGeometry appendToThis)

        Parameters:
            fixed: bool
            hints: OpenSim::ModelDisplayHints const &
            state: SimTK::State const &
            appendToThis: SimTK::Array_< SimTK::DecorativeGeometry,unsigned int > &

        """
        return _opensim.ModelComponentSetJoints_invokeGenerateDecorations(self, *args)

    __swig_destroy__ = _opensim.delete_ModelComponentSetJoints
    __del__ = lambda self : None;
ModelComponentSetJoints_swigregister = _opensim.ModelComponentSetJoints_swigregister
ModelComponentSetJoints_swigregister(ModelComponentSetJoints)

def ModelComponentSetJoints_safeDownCast(*args):
  """
    ModelComponentSetJoints_safeDownCast(OpenSimObject obj) -> ModelComponentSetJoints

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ModelComponentSetJoints_safeDownCast(*args)

def ModelComponentSetJoints_getClassName():
  """ModelComponentSetJoints_getClassName() -> std::string const &"""
  return _opensim.ModelComponentSetJoints_getClassName()

class JointSet(ModelComponentSetJoints):
    """Proxy of C++ OpenSim::JointSet class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponentSetJoints]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, JointSet, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponentSetJoints]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, JointSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> JointSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.JointSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(JointSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.JointSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.JointSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(JointSet self) -> JointSet

        Parameters:
            self: OpenSim::JointSet const *

        """
        return _opensim.JointSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(JointSet self) -> std::string const &

        Parameters:
            self: OpenSim::JointSet const *

        """
        return _opensim.JointSet_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_JointSet
    __del__ = lambda self : None;
    def populate(self, *args):
        """
        populate(JointSet self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.JointSet_populate(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::JointSet self) -> JointSet
        __init__(OpenSim::JointSet self, Model model) -> JointSet

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::JointSet self, JointSet aJointSet) -> JointSet

        Parameters:
            aJointSet: OpenSim::JointSet const &

        __init__(OpenSim::JointSet self, Model model, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> JointSet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::JointSet self, Model model, std::string const & aFileName) -> JointSet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &

        """
        this = _opensim.new_JointSet(*args)
        try: self.this.append(this)
        except: self.this = this
    def scale(self, *args):
        """
        scale(JointSet self, ScaleSet aScaleSet)

        Parameters:
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.JointSet_scale(self, *args)

    def adoptAndAppend(self, aJoint):
        aJoint._markAdopted()
        return super(JointSet, self).adoptAndAppend(aJoint)

JointSet_swigregister = _opensim.JointSet_swigregister
JointSet_swigregister(JointSet)

def JointSet_safeDownCast(*args):
  """
    JointSet_safeDownCast(OpenSimObject obj) -> JointSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.JointSet_safeDownCast(*args)

def JointSet_getClassName():
  """JointSet_getClassName() -> std::string const &"""
  return _opensim.JointSet_getClassName()

class Constraint(ModelComponent):
    """Proxy of C++ OpenSim::Constraint class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponent]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Constraint, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponent]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Constraint, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Constraint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Constraint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Constraint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Constraint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Constraint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Constraint self) -> Constraint

        Parameters:
            self: OpenSim::Constraint const *

        """
        return _opensim.Constraint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Constraint self) -> std::string const &

        Parameters:
            self: OpenSim::Constraint const *

        """
        return _opensim.Constraint_getConcreteClassName(self)

    def copyProperty_isDisabled(self, *args):
        """
        copyProperty_isDisabled(Constraint self, Constraint source)

        Parameters:
            source: OpenSim::Constraint::Self const &

        """
        return _opensim.Constraint_copyProperty_isDisabled(self, *args)

    def append_isDisabled(self, *args):
        """
        append_isDisabled(Constraint self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Constraint_append_isDisabled(self, *args)

    def constructProperty_isDisabled(self, *args):
        """
        constructProperty_isDisabled(Constraint self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Constraint_constructProperty_isDisabled(self, *args)

    def get_isDisabled(self, *args):
        """
        get_isDisabled(Constraint self, int i) -> bool const

        Parameters:
            i: int

        get_isDisabled(Constraint self) -> bool const &

        Parameters:
            self: OpenSim::Constraint const *

        """
        return _opensim.Constraint_get_isDisabled(self, *args)

    def upd_isDisabled(self, *args):
        """
        upd_isDisabled(Constraint self, int i) -> bool

        Parameters:
            i: int

        upd_isDisabled(Constraint self) -> bool &

        Parameters:
            self: OpenSim::Constraint *

        """
        return _opensim.Constraint_upd_isDisabled(self, *args)

    def set_isDisabled(self, *args):
        """
        set_isDisabled(Constraint self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_isDisabled(Constraint self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Constraint_set_isDisabled(self, *args)

    __swig_destroy__ = _opensim.delete_Constraint
    __del__ = lambda self : None;
    def updateFromConstraint(self, *args):
        """
        updateFromConstraint(Constraint self, State s, Constraint aConstraint)

        Parameters:
            s: SimTK::State &
            aConstraint: OpenSim::Constraint const &

        """
        return _opensim.Constraint_updateFromConstraint(self, *args)

    def isDisabled(self, *args):
        """
        isDisabled(Constraint self, State s) -> bool

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Constraint_isDisabled(self, *args)

    def setDisabled(self, *args):
        """
        setDisabled(Constraint self, State s, bool isDisabled) -> bool

        Parameters:
            s: SimTK::State &
            isDisabled: bool

        """
        return _opensim.Constraint_setDisabled(self, *args)

    def calcConstraintForces(self, *args):
        """
        calcConstraintForces(Constraint self, State s, VectorOfSpatialVec bodyForcesInAncestor, Vector mobilityForces)

        Parameters:
            s: SimTK::State const &
            bodyForcesInAncestor: SimTK::Vector_< SimTK::SpatialVec > &
            mobilityForces: SimTK::Vector &

        """
        return _opensim.Constraint_calcConstraintForces(self, *args)

    def getRecordLabels(self):
        """
        getRecordLabels(Constraint self) -> ArrayStr

        Parameters:
            self: OpenSim::Constraint const *

        """
        return _opensim.Constraint_getRecordLabels(self)

    def getRecordValues(self, *args):
        """
        getRecordValues(Constraint self, State state) -> ArrayDouble

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.Constraint_getRecordValues(self, *args)

    def scale(self, *args):
        """
        scale(Constraint self, ScaleSet aScaleSet)

        Parameters:
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.Constraint_scale(self, *args)

    def setContactPointForInducedAccelerations(self, *args):
        """
        setContactPointForInducedAccelerations(Constraint self, State s, Vec3 point)

        Parameters:
            s: SimTK::State const &
            point: SimTK::Vec3

        """
        return _opensim.Constraint_setContactPointForInducedAccelerations(self, *args)

Constraint_swigregister = _opensim.Constraint_swigregister
Constraint_swigregister(Constraint)

def Constraint_safeDownCast(*args):
  """
    Constraint_safeDownCast(OpenSimObject obj) -> Constraint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Constraint_safeDownCast(*args)

def Constraint_getClassName():
  """Constraint_getClassName() -> std::string const &"""
  return _opensim.Constraint_getClassName()

class SetConstraints(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Constraint)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetConstraints, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetConstraints, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetConstraints

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetConstraints_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetConstraints self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetConstraints_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetConstraints_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetConstraints self) -> SetConstraints

        Parameters:
            self: OpenSim::Set< OpenSim::Constraint > const *

        """
        return _opensim.SetConstraints_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetConstraints self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Constraint > const *

        """
        return _opensim.SetConstraints_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetConstraints
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Constraint)> self) -> SetConstraints
        __init__(OpenSim::Set<(OpenSim::Constraint)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetConstraints

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Constraint)> self, std::string const & aFileName) -> SetConstraints

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Constraint)> self, SetConstraints aSet) -> SetConstraints

        Parameters:
            aSet: OpenSim::Set< OpenSim::Constraint > const &

        """
        this = _opensim.new_SetConstraints(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetConstraints self)

        Parameters:
            self: OpenSim::Set< OpenSim::Constraint > *

        """
        return _opensim.SetConstraints_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetConstraints self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetConstraints_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetConstraints self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetConstraints_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetConstraints self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Constraint > const *

        """
        return _opensim.SetConstraints_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetConstraints self, Constraint aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Constraint const *
            aStartIndex: int

        getIndex(SetConstraints self, Constraint aObject) -> int

        Parameters:
            aObject: OpenSim::Constraint const *

        getIndex(SetConstraints self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetConstraints self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetConstraints_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetConstraints self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetConstraints_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetConstraints self, Constraint aObject) -> bool

        Parameters:
            aObject: OpenSim::Constraint *

        """
        return _opensim.SetConstraints_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetConstraints self, Constraint aObject) -> bool

        Parameters:
            aObject: OpenSim::Constraint const &

        """
        return _opensim.SetConstraints_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetConstraints self, int aIndex, Constraint aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Constraint *

        """
        return _opensim.SetConstraints_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetConstraints self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetConstraints self, Constraint aObject) -> bool

        Parameters:
            aObject: OpenSim::Constraint const *

        """
        return _opensim.SetConstraints_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetConstraints self)

        Parameters:
            self: OpenSim::Set< OpenSim::Constraint > *

        """
        return _opensim.SetConstraints_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetConstraints self, int aIndex, Constraint aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Constraint *
            preserveGroups: bool

        set(SetConstraints self, int aIndex, Constraint aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Constraint *

        """
        return _opensim.SetConstraints_set(self, *args)

    def get(self, *args):
        """
        get(SetConstraints self, int aIndex) -> Constraint

        Parameters:
            aIndex: int

        get(SetConstraints self, std::string const & aName) -> Constraint

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetConstraints_get(self, *args)

    def contains(self, *args):
        """
        contains(SetConstraints self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetConstraints_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetConstraints self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetConstraints_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetConstraints self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Constraint > const *

        """
        return _opensim.SetConstraints_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetConstraints self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetConstraints_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetConstraints self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetConstraints_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetConstraints self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetConstraints_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetConstraints self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetConstraints_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetConstraints self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetConstraints_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetConstraints self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetConstraints self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetConstraints_getGroup(self, *args)

SetConstraints_swigregister = _opensim.SetConstraints_swigregister
SetConstraints_swigregister(SetConstraints)

def SetConstraints_safeDownCast(*args):
  """
    SetConstraints_safeDownCast(OpenSimObject obj) -> SetConstraints

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetConstraints_safeDownCast(*args)

def SetConstraints_getClassName():
  """SetConstraints_getClassName() -> std::string const &"""
  return _opensim.SetConstraints_getClassName()

class ModelComponentSetConstraints(SetConstraints):
    """Proxy of C++ OpenSim::ModelComponentSet<(OpenSim::Constraint)> class"""
    __swig_setmethods__ = {}
    for _s in [SetConstraints]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ModelComponentSetConstraints, name, value)
    __swig_getmethods__ = {}
    for _s in [SetConstraints]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ModelComponentSetConstraints, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ModelComponentSetConstraints

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ModelComponentSetConstraints_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ModelComponentSetConstraints self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ModelComponentSetConstraints_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ModelComponentSetConstraints_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ModelComponentSetConstraints self) -> ModelComponentSetConstraints

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::Constraint > const *

        """
        return _opensim.ModelComponentSetConstraints_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ModelComponentSetConstraints self) -> std::string const &

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::Constraint > const *

        """
        return _opensim.ModelComponentSetConstraints_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ModelComponentSet<(OpenSim::Constraint)> self) -> ModelComponentSetConstraints
        __init__(OpenSim::ModelComponentSet<(OpenSim::Constraint)> self, Model model) -> ModelComponentSetConstraints

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ModelComponentSet<(OpenSim::Constraint)> self, Model model, std::string const & fileName, bool aUpdateFromXMLNode=True) -> ModelComponentSetConstraints

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ModelComponentSet<(OpenSim::Constraint)> self, Model model, std::string const & fileName) -> ModelComponentSetConstraints

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &

        __init__(OpenSim::ModelComponentSet<(OpenSim::Constraint)> self, ModelComponentSetConstraints source) -> ModelComponentSetConstraints

        Parameters:
            source: OpenSim::ModelComponentSet< OpenSim::Constraint > const &

        """
        this = _opensim.new_ModelComponentSetConstraints(*args)
        try: self.this.append(this)
        except: self.this = this
    def insert(self, *args):
        """
        insert(ModelComponentSetConstraints self, int aIndex, Constraint aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Constraint *

        """
        return _opensim.ModelComponentSetConstraints_insert(self, *args)

    def set(self, *args):
        """
        set(ModelComponentSetConstraints self, int aIndex, Constraint aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Constraint *
            preserveGroups: bool

        set(ModelComponentSetConstraints self, int aIndex, Constraint aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Constraint *

        """
        return _opensim.ModelComponentSetConstraints_set(self, *args)

    def invokeConnectToModel(self, *args):
        """
        invokeConnectToModel(ModelComponentSetConstraints self, Model model)

        Parameters:
            model: OpenSim::Model &

        """
        return _opensim.ModelComponentSetConstraints_invokeConnectToModel(self, *args)

    def invokeAddToSystem(self, *args):
        """
        invokeAddToSystem(ModelComponentSetConstraints self, SimTK::MultibodySystem & system)

        Parameters:
            system: SimTK::MultibodySystem &

        """
        return _opensim.ModelComponentSetConstraints_invokeAddToSystem(self, *args)

    def invokeInitStateFromProperties(self, *args):
        """
        invokeInitStateFromProperties(ModelComponentSetConstraints self, State state)

        Parameters:
            state: SimTK::State &

        """
        return _opensim.ModelComponentSetConstraints_invokeInitStateFromProperties(self, *args)

    def invokeSetPropertiesFromState(self, *args):
        """
        invokeSetPropertiesFromState(ModelComponentSetConstraints self, State state)

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ModelComponentSetConstraints_invokeSetPropertiesFromState(self, *args)

    def invokeGenerateDecorations(self, *args):
        """
        invokeGenerateDecorations(ModelComponentSetConstraints self, bool fixed, ModelDisplayHints hints, State state, ArrayDecorativeGeometry appendToThis)

        Parameters:
            fixed: bool
            hints: OpenSim::ModelDisplayHints const &
            state: SimTK::State const &
            appendToThis: SimTK::Array_< SimTK::DecorativeGeometry,unsigned int > &

        """
        return _opensim.ModelComponentSetConstraints_invokeGenerateDecorations(self, *args)

    __swig_destroy__ = _opensim.delete_ModelComponentSetConstraints
    __del__ = lambda self : None;
ModelComponentSetConstraints_swigregister = _opensim.ModelComponentSetConstraints_swigregister
ModelComponentSetConstraints_swigregister(ModelComponentSetConstraints)

def ModelComponentSetConstraints_safeDownCast(*args):
  """
    ModelComponentSetConstraints_safeDownCast(OpenSimObject obj) -> ModelComponentSetConstraints

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ModelComponentSetConstraints_safeDownCast(*args)

def ModelComponentSetConstraints_getClassName():
  """ModelComponentSetConstraints_getClassName() -> std::string const &"""
  return _opensim.ModelComponentSetConstraints_getClassName()

class ConstraintSet(ModelComponentSetConstraints):
    """Proxy of C++ OpenSim::ConstraintSet class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponentSetConstraints]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ConstraintSet, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponentSetConstraints]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ConstraintSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ConstraintSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ConstraintSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ConstraintSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ConstraintSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ConstraintSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ConstraintSet self) -> ConstraintSet

        Parameters:
            self: OpenSim::ConstraintSet const *

        """
        return _opensim.ConstraintSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ConstraintSet self) -> std::string const &

        Parameters:
            self: OpenSim::ConstraintSet const *

        """
        return _opensim.ConstraintSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ConstraintSet self) -> ConstraintSet
        __init__(OpenSim::ConstraintSet self, Model model) -> ConstraintSet

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ConstraintSet self, Model model, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> ConstraintSet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ConstraintSet self, Model model, std::string const & aFileName) -> ConstraintSet

        Parameters:
            model: OpenSim::Model &
            aFileName: std::string const &

        __init__(OpenSim::ConstraintSet self, ConstraintSet aAbsConstraintSet) -> ConstraintSet

        Parameters:
            aAbsConstraintSet: OpenSim::ConstraintSet const &

        """
        this = _opensim.new_ConstraintSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ConstraintSet
    __del__ = lambda self : None;
    def scale(self, *args):
        """
        scale(ConstraintSet self, ScaleSet aScaleSet)

        Parameters:
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.ConstraintSet_scale(self, *args)

    def adoptAndAppend(self, aConstraint):
        aConstraint._markAdopted()
        return super(ConstraintSet, self).adoptAndAppend(aConstraint)

ConstraintSet_swigregister = _opensim.ConstraintSet_swigregister
ConstraintSet_swigregister(ConstraintSet)

def ConstraintSet_safeDownCast(*args):
  """
    ConstraintSet_safeDownCast(OpenSimObject obj) -> ConstraintSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ConstraintSet_safeDownCast(*args)

def ConstraintSet_getClassName():
  """ConstraintSet_getClassName() -> std::string const &"""
  return _opensim.ConstraintSet_getClassName()

class WeldConstraint(Constraint):
    """Proxy of C++ OpenSim::WeldConstraint class"""
    __swig_setmethods__ = {}
    for _s in [Constraint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, WeldConstraint, name, value)
    __swig_getmethods__ = {}
    for _s in [Constraint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, WeldConstraint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> WeldConstraint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.WeldConstraint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(WeldConstraint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.WeldConstraint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.WeldConstraint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(WeldConstraint self) -> WeldConstraint

        Parameters:
            self: OpenSim::WeldConstraint const *

        """
        return _opensim.WeldConstraint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(WeldConstraint self) -> std::string const &

        Parameters:
            self: OpenSim::WeldConstraint const *

        """
        return _opensim.WeldConstraint_getConcreteClassName(self)

    def copyProperty_body_1(self, *args):
        """
        copyProperty_body_1(WeldConstraint self, WeldConstraint source)

        Parameters:
            source: OpenSim::WeldConstraint::Self const &

        """
        return _opensim.WeldConstraint_copyProperty_body_1(self, *args)

    def append_body_1(self, *args):
        """
        append_body_1(WeldConstraint self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.WeldConstraint_append_body_1(self, *args)

    def constructProperty_body_1(self, *args):
        """
        constructProperty_body_1(WeldConstraint self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.WeldConstraint_constructProperty_body_1(self, *args)

    def get_body_1(self, *args):
        """
        get_body_1(WeldConstraint self, int i) -> std::string const

        Parameters:
            i: int

        get_body_1(WeldConstraint self) -> std::string const &

        Parameters:
            self: OpenSim::WeldConstraint const *

        """
        return _opensim.WeldConstraint_get_body_1(self, *args)

    def upd_body_1(self, *args):
        """
        upd_body_1(WeldConstraint self, int i) -> std::string

        Parameters:
            i: int

        upd_body_1(WeldConstraint self) -> std::string &

        Parameters:
            self: OpenSim::WeldConstraint *

        """
        return _opensim.WeldConstraint_upd_body_1(self, *args)

    def set_body_1(self, *args):
        """
        set_body_1(WeldConstraint self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body_1(WeldConstraint self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.WeldConstraint_set_body_1(self, *args)

    def copyProperty_body_2(self, *args):
        """
        copyProperty_body_2(WeldConstraint self, WeldConstraint source)

        Parameters:
            source: OpenSim::WeldConstraint::Self const &

        """
        return _opensim.WeldConstraint_copyProperty_body_2(self, *args)

    def append_body_2(self, *args):
        """
        append_body_2(WeldConstraint self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.WeldConstraint_append_body_2(self, *args)

    def constructProperty_body_2(self, *args):
        """
        constructProperty_body_2(WeldConstraint self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.WeldConstraint_constructProperty_body_2(self, *args)

    def get_body_2(self, *args):
        """
        get_body_2(WeldConstraint self, int i) -> std::string const

        Parameters:
            i: int

        get_body_2(WeldConstraint self) -> std::string const &

        Parameters:
            self: OpenSim::WeldConstraint const *

        """
        return _opensim.WeldConstraint_get_body_2(self, *args)

    def upd_body_2(self, *args):
        """
        upd_body_2(WeldConstraint self, int i) -> std::string

        Parameters:
            i: int

        upd_body_2(WeldConstraint self) -> std::string &

        Parameters:
            self: OpenSim::WeldConstraint *

        """
        return _opensim.WeldConstraint_upd_body_2(self, *args)

    def set_body_2(self, *args):
        """
        set_body_2(WeldConstraint self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body_2(WeldConstraint self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.WeldConstraint_set_body_2(self, *args)

    def copyProperty_location_body_1(self, *args):
        """
        copyProperty_location_body_1(WeldConstraint self, WeldConstraint source)

        Parameters:
            source: OpenSim::WeldConstraint::Self const &

        """
        return _opensim.WeldConstraint_copyProperty_location_body_1(self, *args)

    def append_location_body_1(self, *args):
        """
        append_location_body_1(WeldConstraint self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.WeldConstraint_append_location_body_1(self, *args)

    def constructProperty_location_body_1(self, *args):
        """
        constructProperty_location_body_1(WeldConstraint self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.WeldConstraint_constructProperty_location_body_1(self, *args)

    def get_location_body_1(self, *args):
        """
        get_location_body_1(WeldConstraint self, int i) -> Vec3

        Parameters:
            i: int

        get_location_body_1(WeldConstraint self) -> Vec3

        Parameters:
            self: OpenSim::WeldConstraint const *

        """
        return _opensim.WeldConstraint_get_location_body_1(self, *args)

    def upd_location_body_1(self, *args):
        """
        upd_location_body_1(WeldConstraint self, int i) -> Vec3

        Parameters:
            i: int

        upd_location_body_1(WeldConstraint self) -> Vec3

        Parameters:
            self: OpenSim::WeldConstraint *

        """
        return _opensim.WeldConstraint_upd_location_body_1(self, *args)

    def set_location_body_1(self, *args):
        """
        set_location_body_1(WeldConstraint self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location_body_1(WeldConstraint self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.WeldConstraint_set_location_body_1(self, *args)

    def copyProperty_location_body_2(self, *args):
        """
        copyProperty_location_body_2(WeldConstraint self, WeldConstraint source)

        Parameters:
            source: OpenSim::WeldConstraint::Self const &

        """
        return _opensim.WeldConstraint_copyProperty_location_body_2(self, *args)

    def append_location_body_2(self, *args):
        """
        append_location_body_2(WeldConstraint self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.WeldConstraint_append_location_body_2(self, *args)

    def constructProperty_location_body_2(self, *args):
        """
        constructProperty_location_body_2(WeldConstraint self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.WeldConstraint_constructProperty_location_body_2(self, *args)

    def get_location_body_2(self, *args):
        """
        get_location_body_2(WeldConstraint self, int i) -> Vec3

        Parameters:
            i: int

        get_location_body_2(WeldConstraint self) -> Vec3

        Parameters:
            self: OpenSim::WeldConstraint const *

        """
        return _opensim.WeldConstraint_get_location_body_2(self, *args)

    def upd_location_body_2(self, *args):
        """
        upd_location_body_2(WeldConstraint self, int i) -> Vec3

        Parameters:
            i: int

        upd_location_body_2(WeldConstraint self) -> Vec3

        Parameters:
            self: OpenSim::WeldConstraint *

        """
        return _opensim.WeldConstraint_upd_location_body_2(self, *args)

    def set_location_body_2(self, *args):
        """
        set_location_body_2(WeldConstraint self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location_body_2(WeldConstraint self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.WeldConstraint_set_location_body_2(self, *args)

    def copyProperty_orientation_body_1(self, *args):
        """
        copyProperty_orientation_body_1(WeldConstraint self, WeldConstraint source)

        Parameters:
            source: OpenSim::WeldConstraint::Self const &

        """
        return _opensim.WeldConstraint_copyProperty_orientation_body_1(self, *args)

    def append_orientation_body_1(self, *args):
        """
        append_orientation_body_1(WeldConstraint self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.WeldConstraint_append_orientation_body_1(self, *args)

    def constructProperty_orientation_body_1(self, *args):
        """
        constructProperty_orientation_body_1(WeldConstraint self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.WeldConstraint_constructProperty_orientation_body_1(self, *args)

    def get_orientation_body_1(self, *args):
        """
        get_orientation_body_1(WeldConstraint self, int i) -> Vec3

        Parameters:
            i: int

        get_orientation_body_1(WeldConstraint self) -> Vec3

        Parameters:
            self: OpenSim::WeldConstraint const *

        """
        return _opensim.WeldConstraint_get_orientation_body_1(self, *args)

    def upd_orientation_body_1(self, *args):
        """
        upd_orientation_body_1(WeldConstraint self, int i) -> Vec3

        Parameters:
            i: int

        upd_orientation_body_1(WeldConstraint self) -> Vec3

        Parameters:
            self: OpenSim::WeldConstraint *

        """
        return _opensim.WeldConstraint_upd_orientation_body_1(self, *args)

    def set_orientation_body_1(self, *args):
        """
        set_orientation_body_1(WeldConstraint self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_orientation_body_1(WeldConstraint self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.WeldConstraint_set_orientation_body_1(self, *args)

    def copyProperty_orientation_body_2(self, *args):
        """
        copyProperty_orientation_body_2(WeldConstraint self, WeldConstraint source)

        Parameters:
            source: OpenSim::WeldConstraint::Self const &

        """
        return _opensim.WeldConstraint_copyProperty_orientation_body_2(self, *args)

    def append_orientation_body_2(self, *args):
        """
        append_orientation_body_2(WeldConstraint self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.WeldConstraint_append_orientation_body_2(self, *args)

    def constructProperty_orientation_body_2(self, *args):
        """
        constructProperty_orientation_body_2(WeldConstraint self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.WeldConstraint_constructProperty_orientation_body_2(self, *args)

    def get_orientation_body_2(self, *args):
        """
        get_orientation_body_2(WeldConstraint self, int i) -> Vec3

        Parameters:
            i: int

        get_orientation_body_2(WeldConstraint self) -> Vec3

        Parameters:
            self: OpenSim::WeldConstraint const *

        """
        return _opensim.WeldConstraint_get_orientation_body_2(self, *args)

    def upd_orientation_body_2(self, *args):
        """
        upd_orientation_body_2(WeldConstraint self, int i) -> Vec3

        Parameters:
            i: int

        upd_orientation_body_2(WeldConstraint self) -> Vec3

        Parameters:
            self: OpenSim::WeldConstraint *

        """
        return _opensim.WeldConstraint_upd_orientation_body_2(self, *args)

    def set_orientation_body_2(self, *args):
        """
        set_orientation_body_2(WeldConstraint self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_orientation_body_2(WeldConstraint self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.WeldConstraint_set_orientation_body_2(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::WeldConstraint self) -> WeldConstraint
        __init__(OpenSim::WeldConstraint self, std::string const & name, Body body1, Vec3 locationInBody1, Vec3 orientationInBody1, 
            Body body2, Vec3 locationInBody2, Vec3 orientationInBody2) -> WeldConstraint

        Parameters:
            name: std::string const &
            body1: OpenSim::Body &
            locationInBody1: SimTK::Vec3
            orientationInBody1: SimTK::Vec3
            body2: OpenSim::Body &
            locationInBody2: SimTK::Vec3
            orientationInBody2: SimTK::Vec3

        __init__(OpenSim::WeldConstraint self, std::string const & name, Body body1, Transform transformInBody1, Body body2, Transform transformInBody2) -> WeldConstraint

        Parameters:
            name: std::string const &
            body1: OpenSim::Body &
            transformInBody1: SimTK::Transform
            body2: OpenSim::Body &
            transformInBody2: SimTK::Transform

        """
        this = _opensim.new_WeldConstraint(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_WeldConstraint
    __del__ = lambda self : None;
    def setBody1ByName(self, *args):
        """
        setBody1ByName(WeldConstraint self, std::string aBodyName)

        Parameters:
            aBodyName: std::string

        """
        return _opensim.WeldConstraint_setBody1ByName(self, *args)

    def setBody1WeldLocation(self, *args):
        """
        setBody1WeldLocation(WeldConstraint self, Vec3 location, Vec3 orientation=SimTK::Vec3(0))

        Parameters:
            location: SimTK::Vec3
            orientation: SimTK::Vec3

        setBody1WeldLocation(WeldConstraint self, Vec3 location)

        Parameters:
            location: SimTK::Vec3

        """
        return _opensim.WeldConstraint_setBody1WeldLocation(self, *args)

    def setBody2ByName(self, *args):
        """
        setBody2ByName(WeldConstraint self, std::string aBodyName)

        Parameters:
            aBodyName: std::string

        """
        return _opensim.WeldConstraint_setBody2ByName(self, *args)

    def setBody2WeldLocation(self, *args):
        """
        setBody2WeldLocation(WeldConstraint self, Vec3 location, Vec3 orientation=SimTK::Vec3(0))

        Parameters:
            location: SimTK::Vec3
            orientation: SimTK::Vec3

        setBody2WeldLocation(WeldConstraint self, Vec3 location)

        Parameters:
            location: SimTK::Vec3

        """
        return _opensim.WeldConstraint_setBody2WeldLocation(self, *args)

    def setContactPointForInducedAccelerations(self, *args):
        """
        setContactPointForInducedAccelerations(WeldConstraint self, State s, Vec3 point)

        Parameters:
            s: SimTK::State const &
            point: SimTK::Vec3

        """
        return _opensim.WeldConstraint_setContactPointForInducedAccelerations(self, *args)

WeldConstraint_swigregister = _opensim.WeldConstraint_swigregister
WeldConstraint_swigregister(WeldConstraint)

def WeldConstraint_safeDownCast(*args):
  """
    WeldConstraint_safeDownCast(OpenSimObject obj) -> WeldConstraint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.WeldConstraint_safeDownCast(*args)

def WeldConstraint_getClassName():
  """WeldConstraint_getClassName() -> std::string const &"""
  return _opensim.WeldConstraint_getClassName()

class PointConstraint(Constraint):
    """Proxy of C++ OpenSim::PointConstraint class"""
    __swig_setmethods__ = {}
    for _s in [Constraint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PointConstraint, name, value)
    __swig_getmethods__ = {}
    for _s in [Constraint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PointConstraint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PointConstraint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PointConstraint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PointConstraint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PointConstraint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PointConstraint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PointConstraint self) -> PointConstraint

        Parameters:
            self: OpenSim::PointConstraint const *

        """
        return _opensim.PointConstraint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PointConstraint self) -> std::string const &

        Parameters:
            self: OpenSim::PointConstraint const *

        """
        return _opensim.PointConstraint_getConcreteClassName(self)

    def copyProperty_body_1(self, *args):
        """
        copyProperty_body_1(PointConstraint self, PointConstraint source)

        Parameters:
            source: OpenSim::PointConstraint::Self const &

        """
        return _opensim.PointConstraint_copyProperty_body_1(self, *args)

    def append_body_1(self, *args):
        """
        append_body_1(PointConstraint self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.PointConstraint_append_body_1(self, *args)

    def constructProperty_body_1(self, *args):
        """
        constructProperty_body_1(PointConstraint self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.PointConstraint_constructProperty_body_1(self, *args)

    def get_body_1(self, *args):
        """
        get_body_1(PointConstraint self, int i) -> std::string const

        Parameters:
            i: int

        get_body_1(PointConstraint self) -> std::string const &

        Parameters:
            self: OpenSim::PointConstraint const *

        """
        return _opensim.PointConstraint_get_body_1(self, *args)

    def upd_body_1(self, *args):
        """
        upd_body_1(PointConstraint self, int i) -> std::string

        Parameters:
            i: int

        upd_body_1(PointConstraint self) -> std::string &

        Parameters:
            self: OpenSim::PointConstraint *

        """
        return _opensim.PointConstraint_upd_body_1(self, *args)

    def set_body_1(self, *args):
        """
        set_body_1(PointConstraint self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body_1(PointConstraint self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.PointConstraint_set_body_1(self, *args)

    def copyProperty_body_2(self, *args):
        """
        copyProperty_body_2(PointConstraint self, PointConstraint source)

        Parameters:
            source: OpenSim::PointConstraint::Self const &

        """
        return _opensim.PointConstraint_copyProperty_body_2(self, *args)

    def append_body_2(self, *args):
        """
        append_body_2(PointConstraint self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.PointConstraint_append_body_2(self, *args)

    def constructProperty_body_2(self, *args):
        """
        constructProperty_body_2(PointConstraint self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.PointConstraint_constructProperty_body_2(self, *args)

    def get_body_2(self, *args):
        """
        get_body_2(PointConstraint self, int i) -> std::string const

        Parameters:
            i: int

        get_body_2(PointConstraint self) -> std::string const &

        Parameters:
            self: OpenSim::PointConstraint const *

        """
        return _opensim.PointConstraint_get_body_2(self, *args)

    def upd_body_2(self, *args):
        """
        upd_body_2(PointConstraint self, int i) -> std::string

        Parameters:
            i: int

        upd_body_2(PointConstraint self) -> std::string &

        Parameters:
            self: OpenSim::PointConstraint *

        """
        return _opensim.PointConstraint_upd_body_2(self, *args)

    def set_body_2(self, *args):
        """
        set_body_2(PointConstraint self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body_2(PointConstraint self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.PointConstraint_set_body_2(self, *args)

    def copyProperty_location_body_1(self, *args):
        """
        copyProperty_location_body_1(PointConstraint self, PointConstraint source)

        Parameters:
            source: OpenSim::PointConstraint::Self const &

        """
        return _opensim.PointConstraint_copyProperty_location_body_1(self, *args)

    def append_location_body_1(self, *args):
        """
        append_location_body_1(PointConstraint self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointConstraint_append_location_body_1(self, *args)

    def constructProperty_location_body_1(self, *args):
        """
        constructProperty_location_body_1(PointConstraint self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.PointConstraint_constructProperty_location_body_1(self, *args)

    def get_location_body_1(self, *args):
        """
        get_location_body_1(PointConstraint self, int i) -> Vec3

        Parameters:
            i: int

        get_location_body_1(PointConstraint self) -> Vec3

        Parameters:
            self: OpenSim::PointConstraint const *

        """
        return _opensim.PointConstraint_get_location_body_1(self, *args)

    def upd_location_body_1(self, *args):
        """
        upd_location_body_1(PointConstraint self, int i) -> Vec3

        Parameters:
            i: int

        upd_location_body_1(PointConstraint self) -> Vec3

        Parameters:
            self: OpenSim::PointConstraint *

        """
        return _opensim.PointConstraint_upd_location_body_1(self, *args)

    def set_location_body_1(self, *args):
        """
        set_location_body_1(PointConstraint self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location_body_1(PointConstraint self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointConstraint_set_location_body_1(self, *args)

    def copyProperty_location_body_2(self, *args):
        """
        copyProperty_location_body_2(PointConstraint self, PointConstraint source)

        Parameters:
            source: OpenSim::PointConstraint::Self const &

        """
        return _opensim.PointConstraint_copyProperty_location_body_2(self, *args)

    def append_location_body_2(self, *args):
        """
        append_location_body_2(PointConstraint self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointConstraint_append_location_body_2(self, *args)

    def constructProperty_location_body_2(self, *args):
        """
        constructProperty_location_body_2(PointConstraint self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.PointConstraint_constructProperty_location_body_2(self, *args)

    def get_location_body_2(self, *args):
        """
        get_location_body_2(PointConstraint self, int i) -> Vec3

        Parameters:
            i: int

        get_location_body_2(PointConstraint self) -> Vec3

        Parameters:
            self: OpenSim::PointConstraint const *

        """
        return _opensim.PointConstraint_get_location_body_2(self, *args)

    def upd_location_body_2(self, *args):
        """
        upd_location_body_2(PointConstraint self, int i) -> Vec3

        Parameters:
            i: int

        upd_location_body_2(PointConstraint self) -> Vec3

        Parameters:
            self: OpenSim::PointConstraint *

        """
        return _opensim.PointConstraint_upd_location_body_2(self, *args)

    def set_location_body_2(self, *args):
        """
        set_location_body_2(PointConstraint self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location_body_2(PointConstraint self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointConstraint_set_location_body_2(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PointConstraint self) -> PointConstraint
        __init__(OpenSim::PointConstraint self, Body body1, Vec3 locationBody1, Body body2, Vec3 locationBody2) -> PointConstraint

        Parameters:
            body1: OpenSim::Body &
            locationBody1: SimTK::Vec3 &
            body2: OpenSim::Body &
            locationBody2: SimTK::Vec3 &

        """
        this = _opensim.new_PointConstraint(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_PointConstraint
    __del__ = lambda self : None;
    def setBody1ByName(self, *args):
        """
        setBody1ByName(PointConstraint self, std::string aBodyName)

        Parameters:
            aBodyName: std::string

        """
        return _opensim.PointConstraint_setBody1ByName(self, *args)

    def setBody1PointLocation(self, *args):
        """
        setBody1PointLocation(PointConstraint self, Vec3 location)

        Parameters:
            location: SimTK::Vec3

        """
        return _opensim.PointConstraint_setBody1PointLocation(self, *args)

    def setBody2ByName(self, *args):
        """
        setBody2ByName(PointConstraint self, std::string aBodyName)

        Parameters:
            aBodyName: std::string

        """
        return _opensim.PointConstraint_setBody2ByName(self, *args)

    def setBody2PointLocation(self, *args):
        """
        setBody2PointLocation(PointConstraint self, Vec3 location)

        Parameters:
            location: SimTK::Vec3

        """
        return _opensim.PointConstraint_setBody2PointLocation(self, *args)

    def setContactPointForInducedAccelerations(self, *args):
        """
        setContactPointForInducedAccelerations(PointConstraint self, State s, Vec3 point)

        Parameters:
            s: SimTK::State const &
            point: SimTK::Vec3

        """
        return _opensim.PointConstraint_setContactPointForInducedAccelerations(self, *args)

PointConstraint_swigregister = _opensim.PointConstraint_swigregister
PointConstraint_swigregister(PointConstraint)

def PointConstraint_safeDownCast(*args):
  """
    PointConstraint_safeDownCast(OpenSimObject obj) -> PointConstraint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PointConstraint_safeDownCast(*args)

def PointConstraint_getClassName():
  """PointConstraint_getClassName() -> std::string const &"""
  return _opensim.PointConstraint_getClassName()

class ConstantDistanceConstraint(Constraint):
    """Proxy of C++ OpenSim::ConstantDistanceConstraint class"""
    __swig_setmethods__ = {}
    for _s in [Constraint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ConstantDistanceConstraint, name, value)
    __swig_getmethods__ = {}
    for _s in [Constraint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ConstantDistanceConstraint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ConstantDistanceConstraint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ConstantDistanceConstraint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ConstantDistanceConstraint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ConstantDistanceConstraint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ConstantDistanceConstraint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ConstantDistanceConstraint self) -> ConstantDistanceConstraint

        Parameters:
            self: OpenSim::ConstantDistanceConstraint const *

        """
        return _opensim.ConstantDistanceConstraint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ConstantDistanceConstraint self) -> std::string const &

        Parameters:
            self: OpenSim::ConstantDistanceConstraint const *

        """
        return _opensim.ConstantDistanceConstraint_getConcreteClassName(self)

    def copyProperty_body_1(self, *args):
        """
        copyProperty_body_1(ConstantDistanceConstraint self, ConstantDistanceConstraint source)

        Parameters:
            source: OpenSim::ConstantDistanceConstraint::Self const &

        """
        return _opensim.ConstantDistanceConstraint_copyProperty_body_1(self, *args)

    def append_body_1(self, *args):
        """
        append_body_1(ConstantDistanceConstraint self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ConstantDistanceConstraint_append_body_1(self, *args)

    def constructProperty_body_1(self, *args):
        """
        constructProperty_body_1(ConstantDistanceConstraint self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ConstantDistanceConstraint_constructProperty_body_1(self, *args)

    def get_body_1(self, *args):
        """
        get_body_1(ConstantDistanceConstraint self, int i) -> std::string const

        Parameters:
            i: int

        get_body_1(ConstantDistanceConstraint self) -> std::string const &

        Parameters:
            self: OpenSim::ConstantDistanceConstraint const *

        """
        return _opensim.ConstantDistanceConstraint_get_body_1(self, *args)

    def upd_body_1(self, *args):
        """
        upd_body_1(ConstantDistanceConstraint self, int i) -> std::string

        Parameters:
            i: int

        upd_body_1(ConstantDistanceConstraint self) -> std::string &

        Parameters:
            self: OpenSim::ConstantDistanceConstraint *

        """
        return _opensim.ConstantDistanceConstraint_upd_body_1(self, *args)

    def set_body_1(self, *args):
        """
        set_body_1(ConstantDistanceConstraint self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body_1(ConstantDistanceConstraint self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ConstantDistanceConstraint_set_body_1(self, *args)

    def copyProperty_body_2(self, *args):
        """
        copyProperty_body_2(ConstantDistanceConstraint self, ConstantDistanceConstraint source)

        Parameters:
            source: OpenSim::ConstantDistanceConstraint::Self const &

        """
        return _opensim.ConstantDistanceConstraint_copyProperty_body_2(self, *args)

    def append_body_2(self, *args):
        """
        append_body_2(ConstantDistanceConstraint self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ConstantDistanceConstraint_append_body_2(self, *args)

    def constructProperty_body_2(self, *args):
        """
        constructProperty_body_2(ConstantDistanceConstraint self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ConstantDistanceConstraint_constructProperty_body_2(self, *args)

    def get_body_2(self, *args):
        """
        get_body_2(ConstantDistanceConstraint self, int i) -> std::string const

        Parameters:
            i: int

        get_body_2(ConstantDistanceConstraint self) -> std::string const &

        Parameters:
            self: OpenSim::ConstantDistanceConstraint const *

        """
        return _opensim.ConstantDistanceConstraint_get_body_2(self, *args)

    def upd_body_2(self, *args):
        """
        upd_body_2(ConstantDistanceConstraint self, int i) -> std::string

        Parameters:
            i: int

        upd_body_2(ConstantDistanceConstraint self) -> std::string &

        Parameters:
            self: OpenSim::ConstantDistanceConstraint *

        """
        return _opensim.ConstantDistanceConstraint_upd_body_2(self, *args)

    def set_body_2(self, *args):
        """
        set_body_2(ConstantDistanceConstraint self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body_2(ConstantDistanceConstraint self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ConstantDistanceConstraint_set_body_2(self, *args)

    def copyProperty_location_body_1(self, *args):
        """
        copyProperty_location_body_1(ConstantDistanceConstraint self, ConstantDistanceConstraint source)

        Parameters:
            source: OpenSim::ConstantDistanceConstraint::Self const &

        """
        return _opensim.ConstantDistanceConstraint_copyProperty_location_body_1(self, *args)

    def append_location_body_1(self, *args):
        """
        append_location_body_1(ConstantDistanceConstraint self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ConstantDistanceConstraint_append_location_body_1(self, *args)

    def constructProperty_location_body_1(self, *args):
        """
        constructProperty_location_body_1(ConstantDistanceConstraint self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.ConstantDistanceConstraint_constructProperty_location_body_1(self, *args)

    def get_location_body_1(self, *args):
        """
        get_location_body_1(ConstantDistanceConstraint self, int i) -> Vec3

        Parameters:
            i: int

        get_location_body_1(ConstantDistanceConstraint self) -> Vec3

        Parameters:
            self: OpenSim::ConstantDistanceConstraint const *

        """
        return _opensim.ConstantDistanceConstraint_get_location_body_1(self, *args)

    def upd_location_body_1(self, *args):
        """
        upd_location_body_1(ConstantDistanceConstraint self, int i) -> Vec3

        Parameters:
            i: int

        upd_location_body_1(ConstantDistanceConstraint self) -> Vec3

        Parameters:
            self: OpenSim::ConstantDistanceConstraint *

        """
        return _opensim.ConstantDistanceConstraint_upd_location_body_1(self, *args)

    def set_location_body_1(self, *args):
        """
        set_location_body_1(ConstantDistanceConstraint self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location_body_1(ConstantDistanceConstraint self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ConstantDistanceConstraint_set_location_body_1(self, *args)

    def copyProperty_location_body_2(self, *args):
        """
        copyProperty_location_body_2(ConstantDistanceConstraint self, ConstantDistanceConstraint source)

        Parameters:
            source: OpenSim::ConstantDistanceConstraint::Self const &

        """
        return _opensim.ConstantDistanceConstraint_copyProperty_location_body_2(self, *args)

    def append_location_body_2(self, *args):
        """
        append_location_body_2(ConstantDistanceConstraint self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ConstantDistanceConstraint_append_location_body_2(self, *args)

    def constructProperty_location_body_2(self, *args):
        """
        constructProperty_location_body_2(ConstantDistanceConstraint self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.ConstantDistanceConstraint_constructProperty_location_body_2(self, *args)

    def get_location_body_2(self, *args):
        """
        get_location_body_2(ConstantDistanceConstraint self, int i) -> Vec3

        Parameters:
            i: int

        get_location_body_2(ConstantDistanceConstraint self) -> Vec3

        Parameters:
            self: OpenSim::ConstantDistanceConstraint const *

        """
        return _opensim.ConstantDistanceConstraint_get_location_body_2(self, *args)

    def upd_location_body_2(self, *args):
        """
        upd_location_body_2(ConstantDistanceConstraint self, int i) -> Vec3

        Parameters:
            i: int

        upd_location_body_2(ConstantDistanceConstraint self) -> Vec3

        Parameters:
            self: OpenSim::ConstantDistanceConstraint *

        """
        return _opensim.ConstantDistanceConstraint_upd_location_body_2(self, *args)

    def set_location_body_2(self, *args):
        """
        set_location_body_2(ConstantDistanceConstraint self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location_body_2(ConstantDistanceConstraint self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ConstantDistanceConstraint_set_location_body_2(self, *args)

    def copyProperty_constant_distance(self, *args):
        """
        copyProperty_constant_distance(ConstantDistanceConstraint self, ConstantDistanceConstraint source)

        Parameters:
            source: OpenSim::ConstantDistanceConstraint::Self const &

        """
        return _opensim.ConstantDistanceConstraint_copyProperty_constant_distance(self, *args)

    def append_constant_distance(self, *args):
        """
        append_constant_distance(ConstantDistanceConstraint self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ConstantDistanceConstraint_append_constant_distance(self, *args)

    def constructProperty_constant_distance(self, *args):
        """
        constructProperty_constant_distance(ConstantDistanceConstraint self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ConstantDistanceConstraint_constructProperty_constant_distance(self, *args)

    def get_constant_distance(self, *args):
        """
        get_constant_distance(ConstantDistanceConstraint self, int i) -> double const

        Parameters:
            i: int

        get_constant_distance(ConstantDistanceConstraint self) -> double const &

        Parameters:
            self: OpenSim::ConstantDistanceConstraint const *

        """
        return _opensim.ConstantDistanceConstraint_get_constant_distance(self, *args)

    def upd_constant_distance(self, *args):
        """
        upd_constant_distance(ConstantDistanceConstraint self, int i) -> double

        Parameters:
            i: int

        upd_constant_distance(ConstantDistanceConstraint self) -> double &

        Parameters:
            self: OpenSim::ConstantDistanceConstraint *

        """
        return _opensim.ConstantDistanceConstraint_upd_constant_distance(self, *args)

    def set_constant_distance(self, *args):
        """
        set_constant_distance(ConstantDistanceConstraint self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_constant_distance(ConstantDistanceConstraint self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ConstantDistanceConstraint_set_constant_distance(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ConstantDistanceConstraint self) -> ConstantDistanceConstraint
        __init__(OpenSim::ConstantDistanceConstraint self, Body body1, Vec3 locationBody1, Body body2, Vec3 locationBody2, double & distance) -> ConstantDistanceConstraint

        Parameters:
            body1: OpenSim::Body &
            locationBody1: SimTK::Vec3 &
            body2: OpenSim::Body &
            locationBody2: SimTK::Vec3 &
            distance: double &

        """
        this = _opensim.new_ConstantDistanceConstraint(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ConstantDistanceConstraint
    __del__ = lambda self : None;
    def setBody1ByName(self, *args):
        """
        setBody1ByName(ConstantDistanceConstraint self, std::string aBodyName)

        Parameters:
            aBodyName: std::string

        """
        return _opensim.ConstantDistanceConstraint_setBody1ByName(self, *args)

    def setBody1PointLocation(self, *args):
        """
        setBody1PointLocation(ConstantDistanceConstraint self, Vec3 location)

        Parameters:
            location: SimTK::Vec3

        """
        return _opensim.ConstantDistanceConstraint_setBody1PointLocation(self, *args)

    def setBody2ByName(self, *args):
        """
        setBody2ByName(ConstantDistanceConstraint self, std::string aBodyName)

        Parameters:
            aBodyName: std::string

        """
        return _opensim.ConstantDistanceConstraint_setBody2ByName(self, *args)

    def setBody2PointLocation(self, *args):
        """
        setBody2PointLocation(ConstantDistanceConstraint self, Vec3 location)

        Parameters:
            location: SimTK::Vec3

        """
        return _opensim.ConstantDistanceConstraint_setBody2PointLocation(self, *args)

    def setConstantDistance(self, *args):
        """
        setConstantDistance(ConstantDistanceConstraint self, double distance)

        Parameters:
            distance: double

        """
        return _opensim.ConstantDistanceConstraint_setConstantDistance(self, *args)

ConstantDistanceConstraint_swigregister = _opensim.ConstantDistanceConstraint_swigregister
ConstantDistanceConstraint_swigregister(ConstantDistanceConstraint)

def ConstantDistanceConstraint_safeDownCast(*args):
  """
    ConstantDistanceConstraint_safeDownCast(OpenSimObject obj) -> ConstantDistanceConstraint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ConstantDistanceConstraint_safeDownCast(*args)

def ConstantDistanceConstraint_getClassName():
  """ConstantDistanceConstraint_getClassName() -> std::string const &"""
  return _opensim.ConstantDistanceConstraint_getClassName()

class CoordinateCouplerConstraint(Constraint):
    """Proxy of C++ OpenSim::CoordinateCouplerConstraint class"""
    __swig_setmethods__ = {}
    for _s in [Constraint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, CoordinateCouplerConstraint, name, value)
    __swig_getmethods__ = {}
    for _s in [Constraint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, CoordinateCouplerConstraint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> CoordinateCouplerConstraint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.CoordinateCouplerConstraint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(CoordinateCouplerConstraint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.CoordinateCouplerConstraint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.CoordinateCouplerConstraint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(CoordinateCouplerConstraint self) -> CoordinateCouplerConstraint

        Parameters:
            self: OpenSim::CoordinateCouplerConstraint const *

        """
        return _opensim.CoordinateCouplerConstraint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(CoordinateCouplerConstraint self) -> std::string const &

        Parameters:
            self: OpenSim::CoordinateCouplerConstraint const *

        """
        return _opensim.CoordinateCouplerConstraint_getConcreteClassName(self)

    def __init__(self): 
        """__init__(OpenSim::CoordinateCouplerConstraint self) -> CoordinateCouplerConstraint"""
        this = _opensim.new_CoordinateCouplerConstraint()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_CoordinateCouplerConstraint
    __del__ = lambda self : None;
    def setIndependentCoordinateNames(self, *args):
        """
        setIndependentCoordinateNames(CoordinateCouplerConstraint self, ArrayStr aCoordNames)

        Parameters:
            aCoordNames: OpenSim::Array< std::string > const &

        """
        return _opensim.CoordinateCouplerConstraint_setIndependentCoordinateNames(self, *args)

    def getIndependentCoordinateNames(self):
        """
        getIndependentCoordinateNames(CoordinateCouplerConstraint self) -> ArrayStr

        Parameters:
            self: OpenSim::CoordinateCouplerConstraint const *

        """
        return _opensim.CoordinateCouplerConstraint_getIndependentCoordinateNames(self)

    def setDependentCoordinateName(self, *args):
        """
        setDependentCoordinateName(CoordinateCouplerConstraint self, std::string const & aCoordName)

        Parameters:
            aCoordName: std::string const &

        """
        return _opensim.CoordinateCouplerConstraint_setDependentCoordinateName(self, *args)

    def getDependentCoordinateName(self):
        """
        getDependentCoordinateName(CoordinateCouplerConstraint self) -> std::string const &

        Parameters:
            self: OpenSim::CoordinateCouplerConstraint const *

        """
        return _opensim.CoordinateCouplerConstraint_getDependentCoordinateName(self)

    def getFunction(self):
        """
        getFunction(CoordinateCouplerConstraint self) -> Function

        Parameters:
            self: OpenSim::CoordinateCouplerConstraint const *

        """
        return _opensim.CoordinateCouplerConstraint_getFunction(self)

    def setFunction(self, *args):
        """
        setFunction(CoordinateCouplerConstraint self, Function aFunction)

        Parameters:
            aFunction: OpenSim::Function const &

        setFunction(CoordinateCouplerConstraint self, Function aFunction)

        Parameters:
            aFunction: OpenSim::Function *

        """
        return _opensim.CoordinateCouplerConstraint_setFunction(self, *args)

    def scale(self, *args):
        """
        scale(CoordinateCouplerConstraint self, ScaleSet aScaleSet)

        Parameters:
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.CoordinateCouplerConstraint_scale(self, *args)

CoordinateCouplerConstraint_swigregister = _opensim.CoordinateCouplerConstraint_swigregister
CoordinateCouplerConstraint_swigregister(CoordinateCouplerConstraint)

def CoordinateCouplerConstraint_safeDownCast(*args):
  """
    CoordinateCouplerConstraint_safeDownCast(OpenSimObject obj) -> CoordinateCouplerConstraint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.CoordinateCouplerConstraint_safeDownCast(*args)

def CoordinateCouplerConstraint_getClassName():
  """CoordinateCouplerConstraint_getClassName() -> std::string const &"""
  return _opensim.CoordinateCouplerConstraint_getClassName()

class PointOnLineConstraint(Constraint):
    """Proxy of C++ OpenSim::PointOnLineConstraint class"""
    __swig_setmethods__ = {}
    for _s in [Constraint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PointOnLineConstraint, name, value)
    __swig_getmethods__ = {}
    for _s in [Constraint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PointOnLineConstraint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PointOnLineConstraint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PointOnLineConstraint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PointOnLineConstraint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PointOnLineConstraint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PointOnLineConstraint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PointOnLineConstraint self) -> PointOnLineConstraint

        Parameters:
            self: OpenSim::PointOnLineConstraint const *

        """
        return _opensim.PointOnLineConstraint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PointOnLineConstraint self) -> std::string const &

        Parameters:
            self: OpenSim::PointOnLineConstraint const *

        """
        return _opensim.PointOnLineConstraint_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PointOnLineConstraint self) -> PointOnLineConstraint
        __init__(OpenSim::PointOnLineConstraint self, Body lineBody, Vec3 lineDirection, Vec3 pointOnLine, Body followerBody, Vec3 followerPoint) -> PointOnLineConstraint

        Parameters:
            lineBody: OpenSim::Body &
            lineDirection: SimTK::Vec3
            pointOnLine: SimTK::Vec3
            followerBody: OpenSim::Body &
            followerPoint: SimTK::Vec3

        """
        this = _opensim.new_PointOnLineConstraint(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_PointOnLineConstraint
    __del__ = lambda self : None;
    def setLineBodyByName(self, *args):
        """
        setLineBodyByName(PointOnLineConstraint self, std::string aBodyName)

        Parameters:
            aBodyName: std::string

        """
        return _opensim.PointOnLineConstraint_setLineBodyByName(self, *args)

    def setFollowerBodyByName(self, *args):
        """
        setFollowerBodyByName(PointOnLineConstraint self, std::string aBodyName)

        Parameters:
            aBodyName: std::string

        """
        return _opensim.PointOnLineConstraint_setFollowerBodyByName(self, *args)

    def setLineDirection(self, *args):
        """
        setLineDirection(PointOnLineConstraint self, Vec3 direction)

        Parameters:
            direction: SimTK::Vec3

        """
        return _opensim.PointOnLineConstraint_setLineDirection(self, *args)

    def setPointOnLine(self, *args):
        """
        setPointOnLine(PointOnLineConstraint self, Vec3 point)

        Parameters:
            point: SimTK::Vec3

        """
        return _opensim.PointOnLineConstraint_setPointOnLine(self, *args)

    def setPointOnFollower(self, *args):
        """
        setPointOnFollower(PointOnLineConstraint self, Vec3 point)

        Parameters:
            point: SimTK::Vec3

        """
        return _opensim.PointOnLineConstraint_setPointOnFollower(self, *args)

PointOnLineConstraint_swigregister = _opensim.PointOnLineConstraint_swigregister
PointOnLineConstraint_swigregister(PointOnLineConstraint)

def PointOnLineConstraint_safeDownCast(*args):
  """
    PointOnLineConstraint_safeDownCast(OpenSimObject obj) -> PointOnLineConstraint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PointOnLineConstraint_safeDownCast(*args)

def PointOnLineConstraint_getClassName():
  """PointOnLineConstraint_getClassName() -> std::string const &"""
  return _opensim.PointOnLineConstraint_getClassName()

class Probe(ModelComponent):
    """Proxy of C++ OpenSim::Probe class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponent]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Probe, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponent]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Probe, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Probe

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Probe_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Probe self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Probe_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Probe_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Probe self) -> Probe

        Parameters:
            self: OpenSim::Probe const *

        """
        return _opensim.Probe_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Probe self) -> std::string const &

        Parameters:
            self: OpenSim::Probe const *

        """
        return _opensim.Probe_getConcreteClassName(self)

    def copyProperty_isDisabled(self, *args):
        """
        copyProperty_isDisabled(Probe self, Probe source)

        Parameters:
            source: OpenSim::Probe::Self const &

        """
        return _opensim.Probe_copyProperty_isDisabled(self, *args)

    def append_isDisabled(self, *args):
        """
        append_isDisabled(Probe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Probe_append_isDisabled(self, *args)

    def constructProperty_isDisabled(self, *args):
        """
        constructProperty_isDisabled(Probe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Probe_constructProperty_isDisabled(self, *args)

    def get_isDisabled(self, *args):
        """
        get_isDisabled(Probe self, int i) -> bool const

        Parameters:
            i: int

        get_isDisabled(Probe self) -> bool const &

        Parameters:
            self: OpenSim::Probe const *

        """
        return _opensim.Probe_get_isDisabled(self, *args)

    def upd_isDisabled(self, *args):
        """
        upd_isDisabled(Probe self, int i) -> bool

        Parameters:
            i: int

        upd_isDisabled(Probe self) -> bool &

        Parameters:
            self: OpenSim::Probe *

        """
        return _opensim.Probe_upd_isDisabled(self, *args)

    def set_isDisabled(self, *args):
        """
        set_isDisabled(Probe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_isDisabled(Probe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Probe_set_isDisabled(self, *args)

    def copyProperty_probe_operation(self, *args):
        """
        copyProperty_probe_operation(Probe self, Probe source)

        Parameters:
            source: OpenSim::Probe::Self const &

        """
        return _opensim.Probe_copyProperty_probe_operation(self, *args)

    def append_probe_operation(self, *args):
        """
        append_probe_operation(Probe self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.Probe_append_probe_operation(self, *args)

    def constructProperty_probe_operation(self, *args):
        """
        constructProperty_probe_operation(Probe self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.Probe_constructProperty_probe_operation(self, *args)

    def get_probe_operation(self, *args):
        """
        get_probe_operation(Probe self, int i) -> std::string const

        Parameters:
            i: int

        get_probe_operation(Probe self) -> std::string const &

        Parameters:
            self: OpenSim::Probe const *

        """
        return _opensim.Probe_get_probe_operation(self, *args)

    def upd_probe_operation(self, *args):
        """
        upd_probe_operation(Probe self, int i) -> std::string

        Parameters:
            i: int

        upd_probe_operation(Probe self) -> std::string &

        Parameters:
            self: OpenSim::Probe *

        """
        return _opensim.Probe_upd_probe_operation(self, *args)

    def set_probe_operation(self, *args):
        """
        set_probe_operation(Probe self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_probe_operation(Probe self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.Probe_set_probe_operation(self, *args)

    def copyProperty_initial_conditions_for_integration(self, *args):
        """
        copyProperty_initial_conditions_for_integration(Probe self, Probe source)

        Parameters:
            source: OpenSim::Probe::Self const &

        """
        return _opensim.Probe_copyProperty_initial_conditions_for_integration(self, *args)

    def get_initial_conditions_for_integration(self, *args):
        """
        get_initial_conditions_for_integration(Probe self, int i) -> double const &

        Parameters:
            i: int

        """
        return _opensim.Probe_get_initial_conditions_for_integration(self, *args)

    def upd_initial_conditions_for_integration(self, *args):
        """
        upd_initial_conditions_for_integration(Probe self, int i) -> double &

        Parameters:
            i: int

        """
        return _opensim.Probe_upd_initial_conditions_for_integration(self, *args)

    def set_initial_conditions_for_integration(self, *args):
        """
        set_initial_conditions_for_integration(Probe self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        """
        return _opensim.Probe_set_initial_conditions_for_integration(self, *args)

    def append_initial_conditions_for_integration(self, *args):
        """
        append_initial_conditions_for_integration(Probe self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Probe_append_initial_conditions_for_integration(self, *args)

    def constructProperty_initial_conditions_for_integration(self):
        """
        constructProperty_initial_conditions_for_integration(Probe self)

        Parameters:
            self: OpenSim::Probe *

        """
        return _opensim.Probe_constructProperty_initial_conditions_for_integration(self)

    def copyProperty_gain(self, *args):
        """
        copyProperty_gain(Probe self, Probe source)

        Parameters:
            source: OpenSim::Probe::Self const &

        """
        return _opensim.Probe_copyProperty_gain(self, *args)

    def append_gain(self, *args):
        """
        append_gain(Probe self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Probe_append_gain(self, *args)

    def constructProperty_gain(self, *args):
        """
        constructProperty_gain(Probe self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Probe_constructProperty_gain(self, *args)

    def get_gain(self, *args):
        """
        get_gain(Probe self, int i) -> double const

        Parameters:
            i: int

        get_gain(Probe self) -> double const &

        Parameters:
            self: OpenSim::Probe const *

        """
        return _opensim.Probe_get_gain(self, *args)

    def upd_gain(self, *args):
        """
        upd_gain(Probe self, int i) -> double

        Parameters:
            i: int

        upd_gain(Probe self) -> double &

        Parameters:
            self: OpenSim::Probe *

        """
        return _opensim.Probe_upd_gain(self, *args)

    def set_gain(self, *args):
        """
        set_gain(Probe self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_gain(Probe self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Probe_set_gain(self, *args)

    def reset(self, *args):
        """
        reset(Probe self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Probe_reset(self, *args)

    def getNumInternalMeasureStates(self):
        """
        getNumInternalMeasureStates(Probe self) -> int

        Parameters:
            self: OpenSim::Probe const *

        """
        return _opensim.Probe_getNumInternalMeasureStates(self)

    def isDisabled(self):
        """
        isDisabled(Probe self) -> bool

        Parameters:
            self: OpenSim::Probe const *

        """
        return _opensim.Probe_isDisabled(self)

    def setDisabled(self, *args):
        """
        setDisabled(Probe self, bool isDisabled)

        Parameters:
            isDisabled: bool

        """
        return _opensim.Probe_setDisabled(self, *args)

    def getOperation(self):
        """
        getOperation(Probe self) -> std::string

        Parameters:
            self: OpenSim::Probe const *

        """
        return _opensim.Probe_getOperation(self)

    def setOperation(self, *args):
        """
        setOperation(Probe self, std::string probe_operation)

        Parameters:
            probe_operation: std::string

        """
        return _opensim.Probe_setOperation(self, *args)

    def getInitialConditions(self):
        """
        getInitialConditions(Probe self) -> Vector

        Parameters:
            self: OpenSim::Probe const *

        """
        return _opensim.Probe_getInitialConditions(self)

    def setInitialConditions(self, *args):
        """
        setInitialConditions(Probe self, Vector initial_conditions_for_integration)

        Parameters:
            initial_conditions_for_integration: SimTK::Vector

        """
        return _opensim.Probe_setInitialConditions(self, *args)

    def getGain(self):
        """
        getGain(Probe self) -> double

        Parameters:
            self: OpenSim::Probe const *

        """
        return _opensim.Probe_getGain(self)

    def setGain(self, *args):
        """
        setGain(Probe self, double gain)

        Parameters:
            gain: double

        """
        return _opensim.Probe_setGain(self, *args)

    def getProbeOutputs(self, *args):
        """
        getProbeOutputs(Probe self, State state) -> Vector

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.Probe_getProbeOutputs(self, *args)

    __swig_destroy__ = _opensim.delete_Probe
    __del__ = lambda self : None;
Probe_swigregister = _opensim.Probe_swigregister
Probe_swigregister(Probe)

def Probe_safeDownCast(*args):
  """
    Probe_safeDownCast(OpenSimObject obj) -> Probe

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Probe_safeDownCast(*args)

def Probe_getClassName():
  """Probe_getClassName() -> std::string const &"""
  return _opensim.Probe_getClassName()

class SetProbes(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Probe)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetProbes, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetProbes, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetProbes

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetProbes_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetProbes self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetProbes_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetProbes_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetProbes self) -> SetProbes

        Parameters:
            self: OpenSim::Set< OpenSim::Probe > const *

        """
        return _opensim.SetProbes_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetProbes self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Probe > const *

        """
        return _opensim.SetProbes_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetProbes
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Probe)> self) -> SetProbes
        __init__(OpenSim::Set<(OpenSim::Probe)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetProbes

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Probe)> self, std::string const & aFileName) -> SetProbes

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Probe)> self, SetProbes aSet) -> SetProbes

        Parameters:
            aSet: OpenSim::Set< OpenSim::Probe > const &

        """
        this = _opensim.new_SetProbes(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetProbes self)

        Parameters:
            self: OpenSim::Set< OpenSim::Probe > *

        """
        return _opensim.SetProbes_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetProbes self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetProbes_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetProbes self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetProbes_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetProbes self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Probe > const *

        """
        return _opensim.SetProbes_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetProbes self, Probe aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Probe const *
            aStartIndex: int

        getIndex(SetProbes self, Probe aObject) -> int

        Parameters:
            aObject: OpenSim::Probe const *

        getIndex(SetProbes self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetProbes self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetProbes_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetProbes self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetProbes_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetProbes self, Probe aObject) -> bool

        Parameters:
            aObject: OpenSim::Probe *

        """
        return _opensim.SetProbes_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetProbes self, Probe aObject) -> bool

        Parameters:
            aObject: OpenSim::Probe const &

        """
        return _opensim.SetProbes_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetProbes self, int aIndex, Probe aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Probe *

        """
        return _opensim.SetProbes_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetProbes self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetProbes self, Probe aObject) -> bool

        Parameters:
            aObject: OpenSim::Probe const *

        """
        return _opensim.SetProbes_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetProbes self)

        Parameters:
            self: OpenSim::Set< OpenSim::Probe > *

        """
        return _opensim.SetProbes_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetProbes self, int aIndex, Probe aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Probe *
            preserveGroups: bool

        set(SetProbes self, int aIndex, Probe aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Probe *

        """
        return _opensim.SetProbes_set(self, *args)

    def get(self, *args):
        """
        get(SetProbes self, int aIndex) -> Probe

        Parameters:
            aIndex: int

        get(SetProbes self, std::string const & aName) -> Probe

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetProbes_get(self, *args)

    def contains(self, *args):
        """
        contains(SetProbes self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetProbes_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetProbes self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetProbes_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetProbes self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Probe > const *

        """
        return _opensim.SetProbes_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetProbes self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetProbes_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetProbes self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetProbes_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetProbes self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetProbes_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetProbes self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetProbes_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetProbes self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetProbes_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetProbes self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetProbes self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetProbes_getGroup(self, *args)

SetProbes_swigregister = _opensim.SetProbes_swigregister
SetProbes_swigregister(SetProbes)

def SetProbes_safeDownCast(*args):
  """
    SetProbes_safeDownCast(OpenSimObject obj) -> SetProbes

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetProbes_safeDownCast(*args)

def SetProbes_getClassName():
  """SetProbes_getClassName() -> std::string const &"""
  return _opensim.SetProbes_getClassName()

class ModelComponentSetProbes(SetProbes):
    """Proxy of C++ OpenSim::ModelComponentSet<(OpenSim::Probe)> class"""
    __swig_setmethods__ = {}
    for _s in [SetProbes]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ModelComponentSetProbes, name, value)
    __swig_getmethods__ = {}
    for _s in [SetProbes]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ModelComponentSetProbes, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ModelComponentSetProbes

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ModelComponentSetProbes_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ModelComponentSetProbes self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ModelComponentSetProbes_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ModelComponentSetProbes_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ModelComponentSetProbes self) -> ModelComponentSetProbes

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::Probe > const *

        """
        return _opensim.ModelComponentSetProbes_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ModelComponentSetProbes self) -> std::string const &

        Parameters:
            self: OpenSim::ModelComponentSet< OpenSim::Probe > const *

        """
        return _opensim.ModelComponentSetProbes_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ModelComponentSet<(OpenSim::Probe)> self) -> ModelComponentSetProbes
        __init__(OpenSim::ModelComponentSet<(OpenSim::Probe)> self, Model model) -> ModelComponentSetProbes

        Parameters:
            model: OpenSim::Model &

        __init__(OpenSim::ModelComponentSet<(OpenSim::Probe)> self, Model model, std::string const & fileName, bool aUpdateFromXMLNode=True) -> ModelComponentSetProbes

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ModelComponentSet<(OpenSim::Probe)> self, Model model, std::string const & fileName) -> ModelComponentSetProbes

        Parameters:
            model: OpenSim::Model &
            fileName: std::string const &

        __init__(OpenSim::ModelComponentSet<(OpenSim::Probe)> self, ModelComponentSetProbes source) -> ModelComponentSetProbes

        Parameters:
            source: OpenSim::ModelComponentSet< OpenSim::Probe > const &

        """
        this = _opensim.new_ModelComponentSetProbes(*args)
        try: self.this.append(this)
        except: self.this = this
    def insert(self, *args):
        """
        insert(ModelComponentSetProbes self, int aIndex, Probe aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Probe *

        """
        return _opensim.ModelComponentSetProbes_insert(self, *args)

    def set(self, *args):
        """
        set(ModelComponentSetProbes self, int aIndex, Probe aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Probe *
            preserveGroups: bool

        set(ModelComponentSetProbes self, int aIndex, Probe aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Probe *

        """
        return _opensim.ModelComponentSetProbes_set(self, *args)

    def invokeConnectToModel(self, *args):
        """
        invokeConnectToModel(ModelComponentSetProbes self, Model model)

        Parameters:
            model: OpenSim::Model &

        """
        return _opensim.ModelComponentSetProbes_invokeConnectToModel(self, *args)

    def invokeAddToSystem(self, *args):
        """
        invokeAddToSystem(ModelComponentSetProbes self, SimTK::MultibodySystem & system)

        Parameters:
            system: SimTK::MultibodySystem &

        """
        return _opensim.ModelComponentSetProbes_invokeAddToSystem(self, *args)

    def invokeInitStateFromProperties(self, *args):
        """
        invokeInitStateFromProperties(ModelComponentSetProbes self, State state)

        Parameters:
            state: SimTK::State &

        """
        return _opensim.ModelComponentSetProbes_invokeInitStateFromProperties(self, *args)

    def invokeSetPropertiesFromState(self, *args):
        """
        invokeSetPropertiesFromState(ModelComponentSetProbes self, State state)

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ModelComponentSetProbes_invokeSetPropertiesFromState(self, *args)

    def invokeGenerateDecorations(self, *args):
        """
        invokeGenerateDecorations(ModelComponentSetProbes self, bool fixed, ModelDisplayHints hints, State state, ArrayDecorativeGeometry appendToThis)

        Parameters:
            fixed: bool
            hints: OpenSim::ModelDisplayHints const &
            state: SimTK::State const &
            appendToThis: SimTK::Array_< SimTK::DecorativeGeometry,unsigned int > &

        """
        return _opensim.ModelComponentSetProbes_invokeGenerateDecorations(self, *args)

    __swig_destroy__ = _opensim.delete_ModelComponentSetProbes
    __del__ = lambda self : None;
ModelComponentSetProbes_swigregister = _opensim.ModelComponentSetProbes_swigregister
ModelComponentSetProbes_swigregister(ModelComponentSetProbes)

def ModelComponentSetProbes_safeDownCast(*args):
  """
    ModelComponentSetProbes_safeDownCast(OpenSimObject obj) -> ModelComponentSetProbes

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ModelComponentSetProbes_safeDownCast(*args)

def ModelComponentSetProbes_getClassName():
  """ModelComponentSetProbes_getClassName() -> std::string const &"""
  return _opensim.ModelComponentSetProbes_getClassName()

class ProbeSet(ModelComponentSetProbes):
    """Proxy of C++ OpenSim::ProbeSet class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponentSetProbes]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ProbeSet, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponentSetProbes]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ProbeSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ProbeSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ProbeSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ProbeSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ProbeSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ProbeSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ProbeSet self) -> ProbeSet

        Parameters:
            self: OpenSim::ProbeSet const *

        """
        return _opensim.ProbeSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ProbeSet self) -> std::string const &

        Parameters:
            self: OpenSim::ProbeSet const *

        """
        return _opensim.ProbeSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ProbeSet self) -> ProbeSet
        __init__(OpenSim::ProbeSet self, ProbeSet aAbsProbeSet) -> ProbeSet

        Parameters:
            aAbsProbeSet: OpenSim::ProbeSet const &

        """
        this = _opensim.new_ProbeSet(*args)
        try: self.this.append(this)
        except: self.this = this
    def adoptAndAppend(self, aProbe):
        aProbe._markAdopted()
        return super(ProbeSet, self).adoptAndAppend(aProbe)

    __swig_destroy__ = _opensim.delete_ProbeSet
    __del__ = lambda self : None;
ProbeSet_swigregister = _opensim.ProbeSet_swigregister
ProbeSet_swigregister(ProbeSet)

def ProbeSet_safeDownCast(*args):
  """
    ProbeSet_safeDownCast(OpenSimObject obj) -> ProbeSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ProbeSet_safeDownCast(*args)

def ProbeSet_getClassName():
  """ProbeSet_getClassName() -> std::string const &"""
  return _opensim.ProbeSet_getClassName()

class SystemEnergyProbe(Probe):
    """Proxy of C++ OpenSim::SystemEnergyProbe class"""
    __swig_setmethods__ = {}
    for _s in [Probe]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SystemEnergyProbe, name, value)
    __swig_getmethods__ = {}
    for _s in [Probe]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SystemEnergyProbe, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SystemEnergyProbe

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SystemEnergyProbe_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SystemEnergyProbe self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SystemEnergyProbe_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SystemEnergyProbe_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SystemEnergyProbe self) -> SystemEnergyProbe

        Parameters:
            self: OpenSim::SystemEnergyProbe const *

        """
        return _opensim.SystemEnergyProbe_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SystemEnergyProbe self) -> std::string const &

        Parameters:
            self: OpenSim::SystemEnergyProbe const *

        """
        return _opensim.SystemEnergyProbe_getConcreteClassName(self)

    def copyProperty_compute_kinetic_energy(self, *args):
        """
        copyProperty_compute_kinetic_energy(SystemEnergyProbe self, SystemEnergyProbe source)

        Parameters:
            source: OpenSim::SystemEnergyProbe::Self const &

        """
        return _opensim.SystemEnergyProbe_copyProperty_compute_kinetic_energy(self, *args)

    def append_compute_kinetic_energy(self, *args):
        """
        append_compute_kinetic_energy(SystemEnergyProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.SystemEnergyProbe_append_compute_kinetic_energy(self, *args)

    def constructProperty_compute_kinetic_energy(self, *args):
        """
        constructProperty_compute_kinetic_energy(SystemEnergyProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.SystemEnergyProbe_constructProperty_compute_kinetic_energy(self, *args)

    def get_compute_kinetic_energy(self, *args):
        """
        get_compute_kinetic_energy(SystemEnergyProbe self, int i) -> bool const

        Parameters:
            i: int

        get_compute_kinetic_energy(SystemEnergyProbe self) -> bool const &

        Parameters:
            self: OpenSim::SystemEnergyProbe const *

        """
        return _opensim.SystemEnergyProbe_get_compute_kinetic_energy(self, *args)

    def upd_compute_kinetic_energy(self, *args):
        """
        upd_compute_kinetic_energy(SystemEnergyProbe self, int i) -> bool

        Parameters:
            i: int

        upd_compute_kinetic_energy(SystemEnergyProbe self) -> bool &

        Parameters:
            self: OpenSim::SystemEnergyProbe *

        """
        return _opensim.SystemEnergyProbe_upd_compute_kinetic_energy(self, *args)

    def set_compute_kinetic_energy(self, *args):
        """
        set_compute_kinetic_energy(SystemEnergyProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_compute_kinetic_energy(SystemEnergyProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.SystemEnergyProbe_set_compute_kinetic_energy(self, *args)

    def copyProperty_compute_potential_energy(self, *args):
        """
        copyProperty_compute_potential_energy(SystemEnergyProbe self, SystemEnergyProbe source)

        Parameters:
            source: OpenSim::SystemEnergyProbe::Self const &

        """
        return _opensim.SystemEnergyProbe_copyProperty_compute_potential_energy(self, *args)

    def append_compute_potential_energy(self, *args):
        """
        append_compute_potential_energy(SystemEnergyProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.SystemEnergyProbe_append_compute_potential_energy(self, *args)

    def constructProperty_compute_potential_energy(self, *args):
        """
        constructProperty_compute_potential_energy(SystemEnergyProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.SystemEnergyProbe_constructProperty_compute_potential_energy(self, *args)

    def get_compute_potential_energy(self, *args):
        """
        get_compute_potential_energy(SystemEnergyProbe self, int i) -> bool const

        Parameters:
            i: int

        get_compute_potential_energy(SystemEnergyProbe self) -> bool const &

        Parameters:
            self: OpenSim::SystemEnergyProbe const *

        """
        return _opensim.SystemEnergyProbe_get_compute_potential_energy(self, *args)

    def upd_compute_potential_energy(self, *args):
        """
        upd_compute_potential_energy(SystemEnergyProbe self, int i) -> bool

        Parameters:
            i: int

        upd_compute_potential_energy(SystemEnergyProbe self) -> bool &

        Parameters:
            self: OpenSim::SystemEnergyProbe *

        """
        return _opensim.SystemEnergyProbe_upd_compute_potential_energy(self, *args)

    def set_compute_potential_energy(self, *args):
        """
        set_compute_potential_energy(SystemEnergyProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_compute_potential_energy(SystemEnergyProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.SystemEnergyProbe_set_compute_potential_energy(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::SystemEnergyProbe self) -> SystemEnergyProbe
        __init__(OpenSim::SystemEnergyProbe self, bool computeKE, bool computePE) -> SystemEnergyProbe

        Parameters:
            computeKE: bool
            computePE: bool

        """
        this = _opensim.new_SystemEnergyProbe(*args)
        try: self.this.append(this)
        except: self.this = this
    def getComputeKineticEnergy(self):
        """
        getComputeKineticEnergy(SystemEnergyProbe self) -> bool

        Parameters:
            self: OpenSim::SystemEnergyProbe const *

        """
        return _opensim.SystemEnergyProbe_getComputeKineticEnergy(self)

    def getComputePotentialEnergy(self):
        """
        getComputePotentialEnergy(SystemEnergyProbe self) -> bool

        Parameters:
            self: OpenSim::SystemEnergyProbe const *

        """
        return _opensim.SystemEnergyProbe_getComputePotentialEnergy(self)

    def setComputeKineticEnergy(self, *args):
        """
        setComputeKineticEnergy(SystemEnergyProbe self, bool c)

        Parameters:
            c: bool

        """
        return _opensim.SystemEnergyProbe_setComputeKineticEnergy(self, *args)

    def setComputePotentialEnergy(self, *args):
        """
        setComputePotentialEnergy(SystemEnergyProbe self, bool c)

        Parameters:
            c: bool

        """
        return _opensim.SystemEnergyProbe_setComputePotentialEnergy(self, *args)

    def computeProbeInputs(self, *args):
        """
        computeProbeInputs(SystemEnergyProbe self, State state) -> Vector

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.SystemEnergyProbe_computeProbeInputs(self, *args)

    def getNumProbeInputs(self):
        """
        getNumProbeInputs(SystemEnergyProbe self) -> int

        Parameters:
            self: OpenSim::SystemEnergyProbe const *

        """
        return _opensim.SystemEnergyProbe_getNumProbeInputs(self)

    def getProbeOutputLabels(self):
        """
        getProbeOutputLabels(SystemEnergyProbe self) -> ArrayStr

        Parameters:
            self: OpenSim::SystemEnergyProbe const *

        """
        return _opensim.SystemEnergyProbe_getProbeOutputLabels(self)

    __swig_destroy__ = _opensim.delete_SystemEnergyProbe
    __del__ = lambda self : None;
SystemEnergyProbe_swigregister = _opensim.SystemEnergyProbe_swigregister
SystemEnergyProbe_swigregister(SystemEnergyProbe)

def SystemEnergyProbe_safeDownCast(*args):
  """
    SystemEnergyProbe_safeDownCast(OpenSimObject obj) -> SystemEnergyProbe

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SystemEnergyProbe_safeDownCast(*args)

def SystemEnergyProbe_getClassName():
  """SystemEnergyProbe_getClassName() -> std::string const &"""
  return _opensim.SystemEnergyProbe_getClassName()

class JointInternalPowerProbe(Probe):
    """Proxy of C++ OpenSim::JointInternalPowerProbe class"""
    __swig_setmethods__ = {}
    for _s in [Probe]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, JointInternalPowerProbe, name, value)
    __swig_getmethods__ = {}
    for _s in [Probe]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, JointInternalPowerProbe, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> JointInternalPowerProbe

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.JointInternalPowerProbe_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(JointInternalPowerProbe self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.JointInternalPowerProbe_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.JointInternalPowerProbe_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(JointInternalPowerProbe self) -> JointInternalPowerProbe

        Parameters:
            self: OpenSim::JointInternalPowerProbe const *

        """
        return _opensim.JointInternalPowerProbe_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(JointInternalPowerProbe self) -> std::string const &

        Parameters:
            self: OpenSim::JointInternalPowerProbe const *

        """
        return _opensim.JointInternalPowerProbe_getConcreteClassName(self)

    def copyProperty_joint_names(self, *args):
        """
        copyProperty_joint_names(JointInternalPowerProbe self, JointInternalPowerProbe source)

        Parameters:
            source: OpenSim::JointInternalPowerProbe::Self const &

        """
        return _opensim.JointInternalPowerProbe_copyProperty_joint_names(self, *args)

    def get_joint_names(self, *args):
        """
        get_joint_names(JointInternalPowerProbe self, int i) -> std::string const &

        Parameters:
            i: int

        """
        return _opensim.JointInternalPowerProbe_get_joint_names(self, *args)

    def upd_joint_names(self, *args):
        """
        upd_joint_names(JointInternalPowerProbe self, int i) -> std::string &

        Parameters:
            i: int

        """
        return _opensim.JointInternalPowerProbe_upd_joint_names(self, *args)

    def set_joint_names(self, *args):
        """
        set_joint_names(JointInternalPowerProbe self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        """
        return _opensim.JointInternalPowerProbe_set_joint_names(self, *args)

    def append_joint_names(self, *args):
        """
        append_joint_names(JointInternalPowerProbe self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.JointInternalPowerProbe_append_joint_names(self, *args)

    def constructProperty_joint_names(self):
        """
        constructProperty_joint_names(JointInternalPowerProbe self)

        Parameters:
            self: OpenSim::JointInternalPowerProbe *

        """
        return _opensim.JointInternalPowerProbe_constructProperty_joint_names(self)

    def copyProperty_sum_powers_together(self, *args):
        """
        copyProperty_sum_powers_together(JointInternalPowerProbe self, JointInternalPowerProbe source)

        Parameters:
            source: OpenSim::JointInternalPowerProbe::Self const &

        """
        return _opensim.JointInternalPowerProbe_copyProperty_sum_powers_together(self, *args)

    def append_sum_powers_together(self, *args):
        """
        append_sum_powers_together(JointInternalPowerProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.JointInternalPowerProbe_append_sum_powers_together(self, *args)

    def constructProperty_sum_powers_together(self, *args):
        """
        constructProperty_sum_powers_together(JointInternalPowerProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.JointInternalPowerProbe_constructProperty_sum_powers_together(self, *args)

    def get_sum_powers_together(self, *args):
        """
        get_sum_powers_together(JointInternalPowerProbe self, int i) -> bool const

        Parameters:
            i: int

        get_sum_powers_together(JointInternalPowerProbe self) -> bool const &

        Parameters:
            self: OpenSim::JointInternalPowerProbe const *

        """
        return _opensim.JointInternalPowerProbe_get_sum_powers_together(self, *args)

    def upd_sum_powers_together(self, *args):
        """
        upd_sum_powers_together(JointInternalPowerProbe self, int i) -> bool

        Parameters:
            i: int

        upd_sum_powers_together(JointInternalPowerProbe self) -> bool &

        Parameters:
            self: OpenSim::JointInternalPowerProbe *

        """
        return _opensim.JointInternalPowerProbe_upd_sum_powers_together(self, *args)

    def set_sum_powers_together(self, *args):
        """
        set_sum_powers_together(JointInternalPowerProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_sum_powers_together(JointInternalPowerProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.JointInternalPowerProbe_set_sum_powers_together(self, *args)

    def copyProperty_exponent(self, *args):
        """
        copyProperty_exponent(JointInternalPowerProbe self, JointInternalPowerProbe source)

        Parameters:
            source: OpenSim::JointInternalPowerProbe::Self const &

        """
        return _opensim.JointInternalPowerProbe_copyProperty_exponent(self, *args)

    def append_exponent(self, *args):
        """
        append_exponent(JointInternalPowerProbe self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.JointInternalPowerProbe_append_exponent(self, *args)

    def constructProperty_exponent(self, *args):
        """
        constructProperty_exponent(JointInternalPowerProbe self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.JointInternalPowerProbe_constructProperty_exponent(self, *args)

    def get_exponent(self, *args):
        """
        get_exponent(JointInternalPowerProbe self, int i) -> double const

        Parameters:
            i: int

        get_exponent(JointInternalPowerProbe self) -> double const &

        Parameters:
            self: OpenSim::JointInternalPowerProbe const *

        """
        return _opensim.JointInternalPowerProbe_get_exponent(self, *args)

    def upd_exponent(self, *args):
        """
        upd_exponent(JointInternalPowerProbe self, int i) -> double

        Parameters:
            i: int

        upd_exponent(JointInternalPowerProbe self) -> double &

        Parameters:
            self: OpenSim::JointInternalPowerProbe *

        """
        return _opensim.JointInternalPowerProbe_upd_exponent(self, *args)

    def set_exponent(self, *args):
        """
        set_exponent(JointInternalPowerProbe self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_exponent(JointInternalPowerProbe self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.JointInternalPowerProbe_set_exponent(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::JointInternalPowerProbe self) -> JointInternalPowerProbe
        __init__(OpenSim::JointInternalPowerProbe self, ArrayStr joint_names, bool const sum_powers_together, double const exponent) -> JointInternalPowerProbe

        Parameters:
            joint_names: OpenSim::Array< std::string > const &
            sum_powers_together: bool const
            exponent: double const

        """
        this = _opensim.new_JointInternalPowerProbe(*args)
        try: self.this.append(this)
        except: self.this = this
    def getJointNames(self):
        """
        getJointNames(JointInternalPowerProbe self) -> OpenSim::Property< std::string > const &

        Parameters:
            self: OpenSim::JointInternalPowerProbe const *

        """
        return _opensim.JointInternalPowerProbe_getJointNames(self)

    def getSumPowersTogether(self):
        """
        getSumPowersTogether(JointInternalPowerProbe self) -> bool const

        Parameters:
            self: OpenSim::JointInternalPowerProbe const *

        """
        return _opensim.JointInternalPowerProbe_getSumPowersTogether(self)

    def getExponent(self):
        """
        getExponent(JointInternalPowerProbe self) -> double const

        Parameters:
            self: OpenSim::JointInternalPowerProbe const *

        """
        return _opensim.JointInternalPowerProbe_getExponent(self)

    def setJointNames(self, *args):
        """
        setJointNames(JointInternalPowerProbe self, ArrayStr aJointNames)

        Parameters:
            aJointNames: OpenSim::Array< std::string > const &

        """
        return _opensim.JointInternalPowerProbe_setJointNames(self, *args)

    def setSumPowersTogether(self, *args):
        """
        setSumPowersTogether(JointInternalPowerProbe self, bool sum_powers_together)

        Parameters:
            sum_powers_together: bool

        """
        return _opensim.JointInternalPowerProbe_setSumPowersTogether(self, *args)

    def setExponent(self, *args):
        """
        setExponent(JointInternalPowerProbe self, double const exponent)

        Parameters:
            exponent: double const

        """
        return _opensim.JointInternalPowerProbe_setExponent(self, *args)

    def computeProbeInputs(self, *args):
        """
        computeProbeInputs(JointInternalPowerProbe self, State state) -> Vector

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.JointInternalPowerProbe_computeProbeInputs(self, *args)

    def getNumProbeInputs(self):
        """
        getNumProbeInputs(JointInternalPowerProbe self) -> int

        Parameters:
            self: OpenSim::JointInternalPowerProbe const *

        """
        return _opensim.JointInternalPowerProbe_getNumProbeInputs(self)

    def getProbeOutputLabels(self):
        """
        getProbeOutputLabels(JointInternalPowerProbe self) -> ArrayStr

        Parameters:
            self: OpenSim::JointInternalPowerProbe const *

        """
        return _opensim.JointInternalPowerProbe_getProbeOutputLabels(self)

    __swig_destroy__ = _opensim.delete_JointInternalPowerProbe
    __del__ = lambda self : None;
JointInternalPowerProbe_swigregister = _opensim.JointInternalPowerProbe_swigregister
JointInternalPowerProbe_swigregister(JointInternalPowerProbe)

def JointInternalPowerProbe_safeDownCast(*args):
  """
    JointInternalPowerProbe_safeDownCast(OpenSimObject obj) -> JointInternalPowerProbe

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.JointInternalPowerProbe_safeDownCast(*args)

def JointInternalPowerProbe_getClassName():
  """JointInternalPowerProbe_getClassName() -> std::string const &"""
  return _opensim.JointInternalPowerProbe_getClassName()

class ActuatorPowerProbe(Probe):
    """Proxy of C++ OpenSim::ActuatorPowerProbe class"""
    __swig_setmethods__ = {}
    for _s in [Probe]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ActuatorPowerProbe, name, value)
    __swig_getmethods__ = {}
    for _s in [Probe]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ActuatorPowerProbe, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ActuatorPowerProbe

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ActuatorPowerProbe_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ActuatorPowerProbe self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ActuatorPowerProbe_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ActuatorPowerProbe_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ActuatorPowerProbe self) -> ActuatorPowerProbe

        Parameters:
            self: OpenSim::ActuatorPowerProbe const *

        """
        return _opensim.ActuatorPowerProbe_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ActuatorPowerProbe self) -> std::string const &

        Parameters:
            self: OpenSim::ActuatorPowerProbe const *

        """
        return _opensim.ActuatorPowerProbe_getConcreteClassName(self)

    def copyProperty_actuator_names(self, *args):
        """
        copyProperty_actuator_names(ActuatorPowerProbe self, ActuatorPowerProbe source)

        Parameters:
            source: OpenSim::ActuatorPowerProbe::Self const &

        """
        return _opensim.ActuatorPowerProbe_copyProperty_actuator_names(self, *args)

    def get_actuator_names(self, *args):
        """
        get_actuator_names(ActuatorPowerProbe self, int i) -> std::string const &

        Parameters:
            i: int

        """
        return _opensim.ActuatorPowerProbe_get_actuator_names(self, *args)

    def upd_actuator_names(self, *args):
        """
        upd_actuator_names(ActuatorPowerProbe self, int i) -> std::string &

        Parameters:
            i: int

        """
        return _opensim.ActuatorPowerProbe_upd_actuator_names(self, *args)

    def set_actuator_names(self, *args):
        """
        set_actuator_names(ActuatorPowerProbe self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        """
        return _opensim.ActuatorPowerProbe_set_actuator_names(self, *args)

    def append_actuator_names(self, *args):
        """
        append_actuator_names(ActuatorPowerProbe self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ActuatorPowerProbe_append_actuator_names(self, *args)

    def constructProperty_actuator_names(self):
        """
        constructProperty_actuator_names(ActuatorPowerProbe self)

        Parameters:
            self: OpenSim::ActuatorPowerProbe *

        """
        return _opensim.ActuatorPowerProbe_constructProperty_actuator_names(self)

    def copyProperty_sum_powers_together(self, *args):
        """
        copyProperty_sum_powers_together(ActuatorPowerProbe self, ActuatorPowerProbe source)

        Parameters:
            source: OpenSim::ActuatorPowerProbe::Self const &

        """
        return _opensim.ActuatorPowerProbe_copyProperty_sum_powers_together(self, *args)

    def append_sum_powers_together(self, *args):
        """
        append_sum_powers_together(ActuatorPowerProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.ActuatorPowerProbe_append_sum_powers_together(self, *args)

    def constructProperty_sum_powers_together(self, *args):
        """
        constructProperty_sum_powers_together(ActuatorPowerProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.ActuatorPowerProbe_constructProperty_sum_powers_together(self, *args)

    def get_sum_powers_together(self, *args):
        """
        get_sum_powers_together(ActuatorPowerProbe self, int i) -> bool const

        Parameters:
            i: int

        get_sum_powers_together(ActuatorPowerProbe self) -> bool const &

        Parameters:
            self: OpenSim::ActuatorPowerProbe const *

        """
        return _opensim.ActuatorPowerProbe_get_sum_powers_together(self, *args)

    def upd_sum_powers_together(self, *args):
        """
        upd_sum_powers_together(ActuatorPowerProbe self, int i) -> bool

        Parameters:
            i: int

        upd_sum_powers_together(ActuatorPowerProbe self) -> bool &

        Parameters:
            self: OpenSim::ActuatorPowerProbe *

        """
        return _opensim.ActuatorPowerProbe_upd_sum_powers_together(self, *args)

    def set_sum_powers_together(self, *args):
        """
        set_sum_powers_together(ActuatorPowerProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_sum_powers_together(ActuatorPowerProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.ActuatorPowerProbe_set_sum_powers_together(self, *args)

    def copyProperty_exponent(self, *args):
        """
        copyProperty_exponent(ActuatorPowerProbe self, ActuatorPowerProbe source)

        Parameters:
            source: OpenSim::ActuatorPowerProbe::Self const &

        """
        return _opensim.ActuatorPowerProbe_copyProperty_exponent(self, *args)

    def append_exponent(self, *args):
        """
        append_exponent(ActuatorPowerProbe self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ActuatorPowerProbe_append_exponent(self, *args)

    def constructProperty_exponent(self, *args):
        """
        constructProperty_exponent(ActuatorPowerProbe self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ActuatorPowerProbe_constructProperty_exponent(self, *args)

    def get_exponent(self, *args):
        """
        get_exponent(ActuatorPowerProbe self, int i) -> double const

        Parameters:
            i: int

        get_exponent(ActuatorPowerProbe self) -> double const &

        Parameters:
            self: OpenSim::ActuatorPowerProbe const *

        """
        return _opensim.ActuatorPowerProbe_get_exponent(self, *args)

    def upd_exponent(self, *args):
        """
        upd_exponent(ActuatorPowerProbe self, int i) -> double

        Parameters:
            i: int

        upd_exponent(ActuatorPowerProbe self) -> double &

        Parameters:
            self: OpenSim::ActuatorPowerProbe *

        """
        return _opensim.ActuatorPowerProbe_upd_exponent(self, *args)

    def set_exponent(self, *args):
        """
        set_exponent(ActuatorPowerProbe self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_exponent(ActuatorPowerProbe self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ActuatorPowerProbe_set_exponent(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ActuatorPowerProbe self) -> ActuatorPowerProbe
        __init__(OpenSim::ActuatorPowerProbe self, ArrayStr actuator_names, bool const sum_powers_together, double const exponent) -> ActuatorPowerProbe

        Parameters:
            actuator_names: OpenSim::Array< std::string > const
            sum_powers_together: bool const
            exponent: double const

        """
        this = _opensim.new_ActuatorPowerProbe(*args)
        try: self.this.append(this)
        except: self.this = this
    def getActuatorNames(self):
        """
        getActuatorNames(ActuatorPowerProbe self) -> OpenSim::Property< std::string > const &

        Parameters:
            self: OpenSim::ActuatorPowerProbe const *

        """
        return _opensim.ActuatorPowerProbe_getActuatorNames(self)

    def getSumPowersTogether(self):
        """
        getSumPowersTogether(ActuatorPowerProbe self) -> bool const

        Parameters:
            self: OpenSim::ActuatorPowerProbe const *

        """
        return _opensim.ActuatorPowerProbe_getSumPowersTogether(self)

    def getExponent(self):
        """
        getExponent(ActuatorPowerProbe self) -> double const

        Parameters:
            self: OpenSim::ActuatorPowerProbe const *

        """
        return _opensim.ActuatorPowerProbe_getExponent(self)

    def setActuatorNames(self, *args):
        """
        setActuatorNames(ActuatorPowerProbe self, ArrayStr actuatorNames)

        Parameters:
            actuatorNames: OpenSim::Array< std::string > const &

        """
        return _opensim.ActuatorPowerProbe_setActuatorNames(self, *args)

    def setSumPowersTogether(self, *args):
        """
        setSumPowersTogether(ActuatorPowerProbe self, bool sum_powers_together)

        Parameters:
            sum_powers_together: bool

        """
        return _opensim.ActuatorPowerProbe_setSumPowersTogether(self, *args)

    def setExponent(self, *args):
        """
        setExponent(ActuatorPowerProbe self, double const exponent)

        Parameters:
            exponent: double const

        """
        return _opensim.ActuatorPowerProbe_setExponent(self, *args)

    def computeProbeInputs(self, *args):
        """
        computeProbeInputs(ActuatorPowerProbe self, State state) -> Vector

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ActuatorPowerProbe_computeProbeInputs(self, *args)

    def getNumProbeInputs(self):
        """
        getNumProbeInputs(ActuatorPowerProbe self) -> int

        Parameters:
            self: OpenSim::ActuatorPowerProbe const *

        """
        return _opensim.ActuatorPowerProbe_getNumProbeInputs(self)

    def getProbeOutputLabels(self):
        """
        getProbeOutputLabels(ActuatorPowerProbe self) -> ArrayStr

        Parameters:
            self: OpenSim::ActuatorPowerProbe const *

        """
        return _opensim.ActuatorPowerProbe_getProbeOutputLabels(self)

    def connectToModel(self, *args):
        """
        connectToModel(ActuatorPowerProbe self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.ActuatorPowerProbe_connectToModel(self, *args)

    __swig_destroy__ = _opensim.delete_ActuatorPowerProbe
    __del__ = lambda self : None;
ActuatorPowerProbe_swigregister = _opensim.ActuatorPowerProbe_swigregister
ActuatorPowerProbe_swigregister(ActuatorPowerProbe)

def ActuatorPowerProbe_safeDownCast(*args):
  """
    ActuatorPowerProbe_safeDownCast(OpenSimObject obj) -> ActuatorPowerProbe

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ActuatorPowerProbe_safeDownCast(*args)

def ActuatorPowerProbe_getClassName():
  """ActuatorPowerProbe_getClassName() -> std::string const &"""
  return _opensim.ActuatorPowerProbe_getClassName()

class ActuatorForceProbe(Probe):
    """Proxy of C++ OpenSim::ActuatorForceProbe class"""
    __swig_setmethods__ = {}
    for _s in [Probe]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ActuatorForceProbe, name, value)
    __swig_getmethods__ = {}
    for _s in [Probe]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ActuatorForceProbe, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ActuatorForceProbe

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ActuatorForceProbe_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ActuatorForceProbe self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ActuatorForceProbe_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ActuatorForceProbe_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ActuatorForceProbe self) -> ActuatorForceProbe

        Parameters:
            self: OpenSim::ActuatorForceProbe const *

        """
        return _opensim.ActuatorForceProbe_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ActuatorForceProbe self) -> std::string const &

        Parameters:
            self: OpenSim::ActuatorForceProbe const *

        """
        return _opensim.ActuatorForceProbe_getConcreteClassName(self)

    def copyProperty_actuator_names(self, *args):
        """
        copyProperty_actuator_names(ActuatorForceProbe self, ActuatorForceProbe source)

        Parameters:
            source: OpenSim::ActuatorForceProbe::Self const &

        """
        return _opensim.ActuatorForceProbe_copyProperty_actuator_names(self, *args)

    def get_actuator_names(self, *args):
        """
        get_actuator_names(ActuatorForceProbe self, int i) -> std::string const &

        Parameters:
            i: int

        """
        return _opensim.ActuatorForceProbe_get_actuator_names(self, *args)

    def upd_actuator_names(self, *args):
        """
        upd_actuator_names(ActuatorForceProbe self, int i) -> std::string &

        Parameters:
            i: int

        """
        return _opensim.ActuatorForceProbe_upd_actuator_names(self, *args)

    def set_actuator_names(self, *args):
        """
        set_actuator_names(ActuatorForceProbe self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        """
        return _opensim.ActuatorForceProbe_set_actuator_names(self, *args)

    def append_actuator_names(self, *args):
        """
        append_actuator_names(ActuatorForceProbe self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ActuatorForceProbe_append_actuator_names(self, *args)

    def constructProperty_actuator_names(self):
        """
        constructProperty_actuator_names(ActuatorForceProbe self)

        Parameters:
            self: OpenSim::ActuatorForceProbe *

        """
        return _opensim.ActuatorForceProbe_constructProperty_actuator_names(self)

    def copyProperty_sum_forces_together(self, *args):
        """
        copyProperty_sum_forces_together(ActuatorForceProbe self, ActuatorForceProbe source)

        Parameters:
            source: OpenSim::ActuatorForceProbe::Self const &

        """
        return _opensim.ActuatorForceProbe_copyProperty_sum_forces_together(self, *args)

    def append_sum_forces_together(self, *args):
        """
        append_sum_forces_together(ActuatorForceProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.ActuatorForceProbe_append_sum_forces_together(self, *args)

    def constructProperty_sum_forces_together(self, *args):
        """
        constructProperty_sum_forces_together(ActuatorForceProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.ActuatorForceProbe_constructProperty_sum_forces_together(self, *args)

    def get_sum_forces_together(self, *args):
        """
        get_sum_forces_together(ActuatorForceProbe self, int i) -> bool const

        Parameters:
            i: int

        get_sum_forces_together(ActuatorForceProbe self) -> bool const &

        Parameters:
            self: OpenSim::ActuatorForceProbe const *

        """
        return _opensim.ActuatorForceProbe_get_sum_forces_together(self, *args)

    def upd_sum_forces_together(self, *args):
        """
        upd_sum_forces_together(ActuatorForceProbe self, int i) -> bool

        Parameters:
            i: int

        upd_sum_forces_together(ActuatorForceProbe self) -> bool &

        Parameters:
            self: OpenSim::ActuatorForceProbe *

        """
        return _opensim.ActuatorForceProbe_upd_sum_forces_together(self, *args)

    def set_sum_forces_together(self, *args):
        """
        set_sum_forces_together(ActuatorForceProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_sum_forces_together(ActuatorForceProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.ActuatorForceProbe_set_sum_forces_together(self, *args)

    def copyProperty_exponent(self, *args):
        """
        copyProperty_exponent(ActuatorForceProbe self, ActuatorForceProbe source)

        Parameters:
            source: OpenSim::ActuatorForceProbe::Self const &

        """
        return _opensim.ActuatorForceProbe_copyProperty_exponent(self, *args)

    def append_exponent(self, *args):
        """
        append_exponent(ActuatorForceProbe self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ActuatorForceProbe_append_exponent(self, *args)

    def constructProperty_exponent(self, *args):
        """
        constructProperty_exponent(ActuatorForceProbe self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ActuatorForceProbe_constructProperty_exponent(self, *args)

    def get_exponent(self, *args):
        """
        get_exponent(ActuatorForceProbe self, int i) -> double const

        Parameters:
            i: int

        get_exponent(ActuatorForceProbe self) -> double const &

        Parameters:
            self: OpenSim::ActuatorForceProbe const *

        """
        return _opensim.ActuatorForceProbe_get_exponent(self, *args)

    def upd_exponent(self, *args):
        """
        upd_exponent(ActuatorForceProbe self, int i) -> double

        Parameters:
            i: int

        upd_exponent(ActuatorForceProbe self) -> double &

        Parameters:
            self: OpenSim::ActuatorForceProbe *

        """
        return _opensim.ActuatorForceProbe_upd_exponent(self, *args)

    def set_exponent(self, *args):
        """
        set_exponent(ActuatorForceProbe self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_exponent(ActuatorForceProbe self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ActuatorForceProbe_set_exponent(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ActuatorForceProbe self) -> ActuatorForceProbe
        __init__(OpenSim::ActuatorForceProbe self, ArrayStr actuator_names, bool const sum_forces_together, double const exponent) -> ActuatorForceProbe

        Parameters:
            actuator_names: OpenSim::Array< std::string > const &
            sum_forces_together: bool const
            exponent: double const

        """
        this = _opensim.new_ActuatorForceProbe(*args)
        try: self.this.append(this)
        except: self.this = this
    def getActuatorNames(self):
        """
        getActuatorNames(ActuatorForceProbe self) -> OpenSim::Property< std::string > const &

        Parameters:
            self: OpenSim::ActuatorForceProbe const *

        """
        return _opensim.ActuatorForceProbe_getActuatorNames(self)

    def getSumForcesTogether(self):
        """
        getSumForcesTogether(ActuatorForceProbe self) -> bool const

        Parameters:
            self: OpenSim::ActuatorForceProbe const *

        """
        return _opensim.ActuatorForceProbe_getSumForcesTogether(self)

    def getExponent(self):
        """
        getExponent(ActuatorForceProbe self) -> double const

        Parameters:
            self: OpenSim::ActuatorForceProbe const *

        """
        return _opensim.ActuatorForceProbe_getExponent(self)

    def setActuatorNames(self, *args):
        """
        setActuatorNames(ActuatorForceProbe self, ArrayStr actuatorNames)

        Parameters:
            actuatorNames: OpenSim::Array< std::string > const &

        """
        return _opensim.ActuatorForceProbe_setActuatorNames(self, *args)

    def setSumForcesTogether(self, *args):
        """
        setSumForcesTogether(ActuatorForceProbe self, bool sum_forces_together)

        Parameters:
            sum_forces_together: bool

        """
        return _opensim.ActuatorForceProbe_setSumForcesTogether(self, *args)

    def setExponent(self, *args):
        """
        setExponent(ActuatorForceProbe self, double const exponent)

        Parameters:
            exponent: double const

        """
        return _opensim.ActuatorForceProbe_setExponent(self, *args)

    def computeProbeInputs(self, *args):
        """
        computeProbeInputs(ActuatorForceProbe self, State state) -> Vector

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ActuatorForceProbe_computeProbeInputs(self, *args)

    def getNumProbeInputs(self):
        """
        getNumProbeInputs(ActuatorForceProbe self) -> int

        Parameters:
            self: OpenSim::ActuatorForceProbe const *

        """
        return _opensim.ActuatorForceProbe_getNumProbeInputs(self)

    def getProbeOutputLabels(self):
        """
        getProbeOutputLabels(ActuatorForceProbe self) -> ArrayStr

        Parameters:
            self: OpenSim::ActuatorForceProbe const *

        """
        return _opensim.ActuatorForceProbe_getProbeOutputLabels(self)

    def connectToModel(self, *args):
        """
        connectToModel(ActuatorForceProbe self, Model model)

        Parameters:
            model: OpenSim::Model &

        """
        return _opensim.ActuatorForceProbe_connectToModel(self, *args)

    __swig_destroy__ = _opensim.delete_ActuatorForceProbe
    __del__ = lambda self : None;
ActuatorForceProbe_swigregister = _opensim.ActuatorForceProbe_swigregister
ActuatorForceProbe_swigregister(ActuatorForceProbe)

def ActuatorForceProbe_safeDownCast(*args):
  """
    ActuatorForceProbe_safeDownCast(OpenSimObject obj) -> ActuatorForceProbe

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ActuatorForceProbe_safeDownCast(*args)

def ActuatorForceProbe_getClassName():
  """ActuatorForceProbe_getClassName() -> std::string const &"""
  return _opensim.ActuatorForceProbe_getClassName()

class MuscleActiveFiberPowerProbe(Probe):
    """Proxy of C++ OpenSim::MuscleActiveFiberPowerProbe class"""
    __swig_setmethods__ = {}
    for _s in [Probe]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MuscleActiveFiberPowerProbe, name, value)
    __swig_getmethods__ = {}
    for _s in [Probe]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MuscleActiveFiberPowerProbe, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MuscleActiveFiberPowerProbe

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MuscleActiveFiberPowerProbe_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MuscleActiveFiberPowerProbe self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MuscleActiveFiberPowerProbe_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MuscleActiveFiberPowerProbe_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MuscleActiveFiberPowerProbe self) -> MuscleActiveFiberPowerProbe

        Parameters:
            self: OpenSim::MuscleActiveFiberPowerProbe const *

        """
        return _opensim.MuscleActiveFiberPowerProbe_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MuscleActiveFiberPowerProbe self) -> std::string const &

        Parameters:
            self: OpenSim::MuscleActiveFiberPowerProbe const *

        """
        return _opensim.MuscleActiveFiberPowerProbe_getConcreteClassName(self)

    def copyProperty_muscle_names(self, *args):
        """
        copyProperty_muscle_names(MuscleActiveFiberPowerProbe self, MuscleActiveFiberPowerProbe source)

        Parameters:
            source: OpenSim::MuscleActiveFiberPowerProbe::Self const &

        """
        return _opensim.MuscleActiveFiberPowerProbe_copyProperty_muscle_names(self, *args)

    def get_muscle_names(self, *args):
        """
        get_muscle_names(MuscleActiveFiberPowerProbe self, int i) -> std::string const &

        Parameters:
            i: int

        """
        return _opensim.MuscleActiveFiberPowerProbe_get_muscle_names(self, *args)

    def upd_muscle_names(self, *args):
        """
        upd_muscle_names(MuscleActiveFiberPowerProbe self, int i) -> std::string &

        Parameters:
            i: int

        """
        return _opensim.MuscleActiveFiberPowerProbe_upd_muscle_names(self, *args)

    def set_muscle_names(self, *args):
        """
        set_muscle_names(MuscleActiveFiberPowerProbe self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        """
        return _opensim.MuscleActiveFiberPowerProbe_set_muscle_names(self, *args)

    def append_muscle_names(self, *args):
        """
        append_muscle_names(MuscleActiveFiberPowerProbe self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.MuscleActiveFiberPowerProbe_append_muscle_names(self, *args)

    def constructProperty_muscle_names(self):
        """
        constructProperty_muscle_names(MuscleActiveFiberPowerProbe self)

        Parameters:
            self: OpenSim::MuscleActiveFiberPowerProbe *

        """
        return _opensim.MuscleActiveFiberPowerProbe_constructProperty_muscle_names(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MuscleActiveFiberPowerProbe self) -> MuscleActiveFiberPowerProbe
        __init__(OpenSim::MuscleActiveFiberPowerProbe self, ArrayStr muscle_names) -> MuscleActiveFiberPowerProbe

        Parameters:
            muscle_names: OpenSim::Array< std::string > const

        """
        this = _opensim.new_MuscleActiveFiberPowerProbe(*args)
        try: self.this.append(this)
        except: self.this = this
    def getMuscleNames(self):
        """
        getMuscleNames(MuscleActiveFiberPowerProbe self) -> OpenSim::Property< std::string > const &

        Parameters:
            self: OpenSim::MuscleActiveFiberPowerProbe const *

        """
        return _opensim.MuscleActiveFiberPowerProbe_getMuscleNames(self)

    def setMuscleNames(self, *args):
        """
        setMuscleNames(MuscleActiveFiberPowerProbe self, ArrayStr muscleNames)

        Parameters:
            muscleNames: OpenSim::Array< std::string > const &

        """
        return _opensim.MuscleActiveFiberPowerProbe_setMuscleNames(self, *args)

    def computeProbeInputs(self, *args):
        """
        computeProbeInputs(MuscleActiveFiberPowerProbe self, State state) -> Vector

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.MuscleActiveFiberPowerProbe_computeProbeInputs(self, *args)

    def getNumProbeInputs(self):
        """
        getNumProbeInputs(MuscleActiveFiberPowerProbe self) -> int

        Parameters:
            self: OpenSim::MuscleActiveFiberPowerProbe const *

        """
        return _opensim.MuscleActiveFiberPowerProbe_getNumProbeInputs(self)

    def getProbeOutputLabels(self):
        """
        getProbeOutputLabels(MuscleActiveFiberPowerProbe self) -> ArrayStr

        Parameters:
            self: OpenSim::MuscleActiveFiberPowerProbe const *

        """
        return _opensim.MuscleActiveFiberPowerProbe_getProbeOutputLabels(self)

    __swig_destroy__ = _opensim.delete_MuscleActiveFiberPowerProbe
    __del__ = lambda self : None;
MuscleActiveFiberPowerProbe_swigregister = _opensim.MuscleActiveFiberPowerProbe_swigregister
MuscleActiveFiberPowerProbe_swigregister(MuscleActiveFiberPowerProbe)

def MuscleActiveFiberPowerProbe_safeDownCast(*args):
  """
    MuscleActiveFiberPowerProbe_safeDownCast(OpenSimObject obj) -> MuscleActiveFiberPowerProbe

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MuscleActiveFiberPowerProbe_safeDownCast(*args)

def MuscleActiveFiberPowerProbe_getClassName():
  """MuscleActiveFiberPowerProbe_getClassName() -> std::string const &"""
  return _opensim.MuscleActiveFiberPowerProbe_getClassName()

class Bhargava2004MuscleMetabolicsProbe(Probe):
    """Proxy of C++ OpenSim::Bhargava2004MuscleMetabolicsProbe class"""
    __swig_setmethods__ = {}
    for _s in [Probe]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Bhargava2004MuscleMetabolicsProbe, name, value)
    __swig_getmethods__ = {}
    for _s in [Probe]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Bhargava2004MuscleMetabolicsProbe, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Bhargava2004MuscleMetabolicsProbe

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Bhargava2004MuscleMetabolicsProbe self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Bhargava2004MuscleMetabolicsProbe_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Bhargava2004MuscleMetabolicsProbe self) -> Bhargava2004MuscleMetabolicsProbe

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Bhargava2004MuscleMetabolicsProbe self) -> std::string const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_getConcreteClassName(self)

    def copyProperty_activation_rate_on(self, *args):
        """
        copyProperty_activation_rate_on(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_activation_rate_on(self, *args)

    def append_activation_rate_on(self, *args):
        """
        append_activation_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_activation_rate_on(self, *args)

    def constructProperty_activation_rate_on(self, *args):
        """
        constructProperty_activation_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_activation_rate_on(self, *args)

    def get_activation_rate_on(self, *args):
        """
        get_activation_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_activation_rate_on(Bhargava2004MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_activation_rate_on(self, *args)

    def upd_activation_rate_on(self, *args):
        """
        upd_activation_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_activation_rate_on(Bhargava2004MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_activation_rate_on(self, *args)

    def set_activation_rate_on(self, *args):
        """
        set_activation_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_activation_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_activation_rate_on(self, *args)

    def copyProperty_maintenance_rate_on(self, *args):
        """
        copyProperty_maintenance_rate_on(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_maintenance_rate_on(self, *args)

    def append_maintenance_rate_on(self, *args):
        """
        append_maintenance_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_maintenance_rate_on(self, *args)

    def constructProperty_maintenance_rate_on(self, *args):
        """
        constructProperty_maintenance_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_maintenance_rate_on(self, *args)

    def get_maintenance_rate_on(self, *args):
        """
        get_maintenance_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_maintenance_rate_on(Bhargava2004MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_maintenance_rate_on(self, *args)

    def upd_maintenance_rate_on(self, *args):
        """
        upd_maintenance_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_maintenance_rate_on(Bhargava2004MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_maintenance_rate_on(self, *args)

    def set_maintenance_rate_on(self, *args):
        """
        set_maintenance_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_maintenance_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_maintenance_rate_on(self, *args)

    def copyProperty_shortening_rate_on(self, *args):
        """
        copyProperty_shortening_rate_on(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_shortening_rate_on(self, *args)

    def append_shortening_rate_on(self, *args):
        """
        append_shortening_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_shortening_rate_on(self, *args)

    def constructProperty_shortening_rate_on(self, *args):
        """
        constructProperty_shortening_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_shortening_rate_on(self, *args)

    def get_shortening_rate_on(self, *args):
        """
        get_shortening_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_shortening_rate_on(Bhargava2004MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_shortening_rate_on(self, *args)

    def upd_shortening_rate_on(self, *args):
        """
        upd_shortening_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_shortening_rate_on(Bhargava2004MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_shortening_rate_on(self, *args)

    def set_shortening_rate_on(self, *args):
        """
        set_shortening_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_shortening_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_shortening_rate_on(self, *args)

    def copyProperty_basal_rate_on(self, *args):
        """
        copyProperty_basal_rate_on(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_basal_rate_on(self, *args)

    def append_basal_rate_on(self, *args):
        """
        append_basal_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_basal_rate_on(self, *args)

    def constructProperty_basal_rate_on(self, *args):
        """
        constructProperty_basal_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_basal_rate_on(self, *args)

    def get_basal_rate_on(self, *args):
        """
        get_basal_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_basal_rate_on(Bhargava2004MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_basal_rate_on(self, *args)

    def upd_basal_rate_on(self, *args):
        """
        upd_basal_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_basal_rate_on(Bhargava2004MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_basal_rate_on(self, *args)

    def set_basal_rate_on(self, *args):
        """
        set_basal_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_basal_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_basal_rate_on(self, *args)

    def copyProperty_mechanical_work_rate_on(self, *args):
        """
        copyProperty_mechanical_work_rate_on(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_mechanical_work_rate_on(self, *args)

    def append_mechanical_work_rate_on(self, *args):
        """
        append_mechanical_work_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_mechanical_work_rate_on(self, *args)

    def constructProperty_mechanical_work_rate_on(self, *args):
        """
        constructProperty_mechanical_work_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_mechanical_work_rate_on(self, *args)

    def get_mechanical_work_rate_on(self, *args):
        """
        get_mechanical_work_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_mechanical_work_rate_on(Bhargava2004MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_mechanical_work_rate_on(self, *args)

    def upd_mechanical_work_rate_on(self, *args):
        """
        upd_mechanical_work_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_mechanical_work_rate_on(Bhargava2004MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_mechanical_work_rate_on(self, *args)

    def set_mechanical_work_rate_on(self, *args):
        """
        set_mechanical_work_rate_on(Bhargava2004MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_mechanical_work_rate_on(Bhargava2004MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_mechanical_work_rate_on(self, *args)

    def copyProperty_enforce_minimum_heat_rate_per_muscle(self, *args):
        """
        copyProperty_enforce_minimum_heat_rate_per_muscle(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_enforce_minimum_heat_rate_per_muscle(self, *args)

    def append_enforce_minimum_heat_rate_per_muscle(self, *args):
        """
        append_enforce_minimum_heat_rate_per_muscle(Bhargava2004MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_enforce_minimum_heat_rate_per_muscle(self, *args)

    def constructProperty_enforce_minimum_heat_rate_per_muscle(self, *args):
        """
        constructProperty_enforce_minimum_heat_rate_per_muscle(Bhargava2004MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_enforce_minimum_heat_rate_per_muscle(self, *args)

    def get_enforce_minimum_heat_rate_per_muscle(self, *args):
        """
        get_enforce_minimum_heat_rate_per_muscle(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_enforce_minimum_heat_rate_per_muscle(Bhargava2004MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_enforce_minimum_heat_rate_per_muscle(self, *args)

    def upd_enforce_minimum_heat_rate_per_muscle(self, *args):
        """
        upd_enforce_minimum_heat_rate_per_muscle(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_enforce_minimum_heat_rate_per_muscle(Bhargava2004MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_enforce_minimum_heat_rate_per_muscle(self, *args)

    def set_enforce_minimum_heat_rate_per_muscle(self, *args):
        """
        set_enforce_minimum_heat_rate_per_muscle(Bhargava2004MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_enforce_minimum_heat_rate_per_muscle(Bhargava2004MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_enforce_minimum_heat_rate_per_muscle(self, *args)

    def copyProperty_normalized_fiber_length_dependence_on_maintenance_rate(self, *args):
        """
        copyProperty_normalized_fiber_length_dependence_on_maintenance_rate(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_normalized_fiber_length_dependence_on_maintenance_rate(self, *args)

    def append_normalized_fiber_length_dependence_on_maintenance_rate(self, *args):
        """
        append_normalized_fiber_length_dependence_on_maintenance_rate(Bhargava2004MuscleMetabolicsProbe self, PiecewiseLinearFunction value) -> int

        Parameters:
            value: OpenSim::PiecewiseLinearFunction const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_normalized_fiber_length_dependence_on_maintenance_rate(self, *args)

    def constructProperty_normalized_fiber_length_dependence_on_maintenance_rate(self, *args):
        """
        constructProperty_normalized_fiber_length_dependence_on_maintenance_rate(Bhargava2004MuscleMetabolicsProbe self, PiecewiseLinearFunction initValue)

        Parameters:
            initValue: OpenSim::PiecewiseLinearFunction const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_normalized_fiber_length_dependence_on_maintenance_rate(self, *args)

    def get_normalized_fiber_length_dependence_on_maintenance_rate(self, *args):
        """
        get_normalized_fiber_length_dependence_on_maintenance_rate(Bhargava2004MuscleMetabolicsProbe self, int i) -> PiecewiseLinearFunction

        Parameters:
            i: int

        get_normalized_fiber_length_dependence_on_maintenance_rate(Bhargava2004MuscleMetabolicsProbe self) -> PiecewiseLinearFunction

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_normalized_fiber_length_dependence_on_maintenance_rate(self, *args)

    def upd_normalized_fiber_length_dependence_on_maintenance_rate(self, *args):
        """
        upd_normalized_fiber_length_dependence_on_maintenance_rate(Bhargava2004MuscleMetabolicsProbe self, int i) -> PiecewiseLinearFunction

        Parameters:
            i: int

        upd_normalized_fiber_length_dependence_on_maintenance_rate(Bhargava2004MuscleMetabolicsProbe self) -> PiecewiseLinearFunction

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_normalized_fiber_length_dependence_on_maintenance_rate(self, *args)

    def set_normalized_fiber_length_dependence_on_maintenance_rate(self, *args):
        """
        set_normalized_fiber_length_dependence_on_maintenance_rate(Bhargava2004MuscleMetabolicsProbe self, int i, PiecewiseLinearFunction value)

        Parameters:
            i: int
            value: OpenSim::PiecewiseLinearFunction const &

        set_normalized_fiber_length_dependence_on_maintenance_rate(Bhargava2004MuscleMetabolicsProbe self, PiecewiseLinearFunction value)

        Parameters:
            value: OpenSim::PiecewiseLinearFunction const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_normalized_fiber_length_dependence_on_maintenance_rate(self, *args)

    def copyProperty_use_force_dependent_shortening_prop_constant(self, *args):
        """
        copyProperty_use_force_dependent_shortening_prop_constant(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_use_force_dependent_shortening_prop_constant(self, *args)

    def append_use_force_dependent_shortening_prop_constant(self, *args):
        """
        append_use_force_dependent_shortening_prop_constant(Bhargava2004MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_use_force_dependent_shortening_prop_constant(self, *args)

    def constructProperty_use_force_dependent_shortening_prop_constant(self, *args):
        """
        constructProperty_use_force_dependent_shortening_prop_constant(Bhargava2004MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_use_force_dependent_shortening_prop_constant(self, *args)

    def get_use_force_dependent_shortening_prop_constant(self, *args):
        """
        get_use_force_dependent_shortening_prop_constant(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_use_force_dependent_shortening_prop_constant(Bhargava2004MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_use_force_dependent_shortening_prop_constant(self, *args)

    def upd_use_force_dependent_shortening_prop_constant(self, *args):
        """
        upd_use_force_dependent_shortening_prop_constant(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_use_force_dependent_shortening_prop_constant(Bhargava2004MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_use_force_dependent_shortening_prop_constant(self, *args)

    def set_use_force_dependent_shortening_prop_constant(self, *args):
        """
        set_use_force_dependent_shortening_prop_constant(Bhargava2004MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_use_force_dependent_shortening_prop_constant(Bhargava2004MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_use_force_dependent_shortening_prop_constant(self, *args)

    def copyProperty_basal_coefficient(self, *args):
        """
        copyProperty_basal_coefficient(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_basal_coefficient(self, *args)

    def append_basal_coefficient(self, *args):
        """
        append_basal_coefficient(Bhargava2004MuscleMetabolicsProbe self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_basal_coefficient(self, *args)

    def constructProperty_basal_coefficient(self, *args):
        """
        constructProperty_basal_coefficient(Bhargava2004MuscleMetabolicsProbe self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_basal_coefficient(self, *args)

    def get_basal_coefficient(self, *args):
        """
        get_basal_coefficient(Bhargava2004MuscleMetabolicsProbe self, int i) -> double const

        Parameters:
            i: int

        get_basal_coefficient(Bhargava2004MuscleMetabolicsProbe self) -> double const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_basal_coefficient(self, *args)

    def upd_basal_coefficient(self, *args):
        """
        upd_basal_coefficient(Bhargava2004MuscleMetabolicsProbe self, int i) -> double

        Parameters:
            i: int

        upd_basal_coefficient(Bhargava2004MuscleMetabolicsProbe self) -> double &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_basal_coefficient(self, *args)

    def set_basal_coefficient(self, *args):
        """
        set_basal_coefficient(Bhargava2004MuscleMetabolicsProbe self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_basal_coefficient(Bhargava2004MuscleMetabolicsProbe self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_basal_coefficient(self, *args)

    def copyProperty_basal_exponent(self, *args):
        """
        copyProperty_basal_exponent(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_basal_exponent(self, *args)

    def append_basal_exponent(self, *args):
        """
        append_basal_exponent(Bhargava2004MuscleMetabolicsProbe self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_basal_exponent(self, *args)

    def constructProperty_basal_exponent(self, *args):
        """
        constructProperty_basal_exponent(Bhargava2004MuscleMetabolicsProbe self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_basal_exponent(self, *args)

    def get_basal_exponent(self, *args):
        """
        get_basal_exponent(Bhargava2004MuscleMetabolicsProbe self, int i) -> double const

        Parameters:
            i: int

        get_basal_exponent(Bhargava2004MuscleMetabolicsProbe self) -> double const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_basal_exponent(self, *args)

    def upd_basal_exponent(self, *args):
        """
        upd_basal_exponent(Bhargava2004MuscleMetabolicsProbe self, int i) -> double

        Parameters:
            i: int

        upd_basal_exponent(Bhargava2004MuscleMetabolicsProbe self) -> double &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_basal_exponent(self, *args)

    def set_basal_exponent(self, *args):
        """
        set_basal_exponent(Bhargava2004MuscleMetabolicsProbe self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_basal_exponent(Bhargava2004MuscleMetabolicsProbe self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_basal_exponent(self, *args)

    def copyProperty_muscle_effort_scaling_factor(self, *args):
        """
        copyProperty_muscle_effort_scaling_factor(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_muscle_effort_scaling_factor(self, *args)

    def append_muscle_effort_scaling_factor(self, *args):
        """
        append_muscle_effort_scaling_factor(Bhargava2004MuscleMetabolicsProbe self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_muscle_effort_scaling_factor(self, *args)

    def constructProperty_muscle_effort_scaling_factor(self, *args):
        """
        constructProperty_muscle_effort_scaling_factor(Bhargava2004MuscleMetabolicsProbe self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_muscle_effort_scaling_factor(self, *args)

    def get_muscle_effort_scaling_factor(self, *args):
        """
        get_muscle_effort_scaling_factor(Bhargava2004MuscleMetabolicsProbe self, int i) -> double const

        Parameters:
            i: int

        get_muscle_effort_scaling_factor(Bhargava2004MuscleMetabolicsProbe self) -> double const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_muscle_effort_scaling_factor(self, *args)

    def upd_muscle_effort_scaling_factor(self, *args):
        """
        upd_muscle_effort_scaling_factor(Bhargava2004MuscleMetabolicsProbe self, int i) -> double

        Parameters:
            i: int

        upd_muscle_effort_scaling_factor(Bhargava2004MuscleMetabolicsProbe self) -> double &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_muscle_effort_scaling_factor(self, *args)

    def set_muscle_effort_scaling_factor(self, *args):
        """
        set_muscle_effort_scaling_factor(Bhargava2004MuscleMetabolicsProbe self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_muscle_effort_scaling_factor(Bhargava2004MuscleMetabolicsProbe self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_muscle_effort_scaling_factor(self, *args)

    def copyProperty_include_negative_mechanical_work(self, *args):
        """
        copyProperty_include_negative_mechanical_work(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_include_negative_mechanical_work(self, *args)

    def append_include_negative_mechanical_work(self, *args):
        """
        append_include_negative_mechanical_work(Bhargava2004MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_include_negative_mechanical_work(self, *args)

    def constructProperty_include_negative_mechanical_work(self, *args):
        """
        constructProperty_include_negative_mechanical_work(Bhargava2004MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_include_negative_mechanical_work(self, *args)

    def get_include_negative_mechanical_work(self, *args):
        """
        get_include_negative_mechanical_work(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_include_negative_mechanical_work(Bhargava2004MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_include_negative_mechanical_work(self, *args)

    def upd_include_negative_mechanical_work(self, *args):
        """
        upd_include_negative_mechanical_work(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_include_negative_mechanical_work(Bhargava2004MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_include_negative_mechanical_work(self, *args)

    def set_include_negative_mechanical_work(self, *args):
        """
        set_include_negative_mechanical_work(Bhargava2004MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_include_negative_mechanical_work(Bhargava2004MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_include_negative_mechanical_work(self, *args)

    def copyProperty_forbid_negative_total_power(self, *args):
        """
        copyProperty_forbid_negative_total_power(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_forbid_negative_total_power(self, *args)

    def append_forbid_negative_total_power(self, *args):
        """
        append_forbid_negative_total_power(Bhargava2004MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_forbid_negative_total_power(self, *args)

    def constructProperty_forbid_negative_total_power(self, *args):
        """
        constructProperty_forbid_negative_total_power(Bhargava2004MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_forbid_negative_total_power(self, *args)

    def get_forbid_negative_total_power(self, *args):
        """
        get_forbid_negative_total_power(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_forbid_negative_total_power(Bhargava2004MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_forbid_negative_total_power(self, *args)

    def upd_forbid_negative_total_power(self, *args):
        """
        upd_forbid_negative_total_power(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_forbid_negative_total_power(Bhargava2004MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_forbid_negative_total_power(self, *args)

    def set_forbid_negative_total_power(self, *args):
        """
        set_forbid_negative_total_power(Bhargava2004MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_forbid_negative_total_power(Bhargava2004MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_forbid_negative_total_power(self, *args)

    def copyProperty_report_total_metabolics_only(self, *args):
        """
        copyProperty_report_total_metabolics_only(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_report_total_metabolics_only(self, *args)

    def append_report_total_metabolics_only(self, *args):
        """
        append_report_total_metabolics_only(Bhargava2004MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_report_total_metabolics_only(self, *args)

    def constructProperty_report_total_metabolics_only(self, *args):
        """
        constructProperty_report_total_metabolics_only(Bhargava2004MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_report_total_metabolics_only(self, *args)

    def get_report_total_metabolics_only(self, *args):
        """
        get_report_total_metabolics_only(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_report_total_metabolics_only(Bhargava2004MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_report_total_metabolics_only(self, *args)

    def upd_report_total_metabolics_only(self, *args):
        """
        upd_report_total_metabolics_only(Bhargava2004MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_report_total_metabolics_only(Bhargava2004MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_report_total_metabolics_only(self, *args)

    def set_report_total_metabolics_only(self, *args):
        """
        set_report_total_metabolics_only(Bhargava2004MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_report_total_metabolics_only(Bhargava2004MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_report_total_metabolics_only(self, *args)

    def copyProperty_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args):
        """
        copyProperty_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_copyProperty_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args)

    def append_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args):
        """
        append_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet value) -> int

        Parameters:
            value: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_append_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args)

    def constructProperty_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args):
        """
        constructProperty_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet initValue)

        Parameters:
            initValue: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_constructProperty_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args)

    def get_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args):
        """
        get_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Bhargava2004MuscleMetabolicsProbe self, int i) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet

        Parameters:
            i: int

        get_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Bhargava2004MuscleMetabolicsProbe self) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_get_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args)

    def upd_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args):
        """
        upd_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Bhargava2004MuscleMetabolicsProbe self, int i) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet

        Parameters:
            i: int

        upd_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Bhargava2004MuscleMetabolicsProbe self) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_upd_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args)

    def set_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args):
        """
        set_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Bhargava2004MuscleMetabolicsProbe self, int i, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet value)

        Parameters:
            i: int
            value: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet const &

        set_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Bhargava2004MuscleMetabolicsProbe self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet value)

        Parameters:
            value: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_set_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Bhargava2004MuscleMetabolicsProbe self) -> Bhargava2004MuscleMetabolicsProbe
        __init__(OpenSim::Bhargava2004MuscleMetabolicsProbe self, bool const activation_rate_on, bool const maintenance_rate_on, bool const shortening_rate_on, 
            bool const basal_rate_on, bool const work_rate_on) -> Bhargava2004MuscleMetabolicsProbe

        Parameters:
            activation_rate_on: bool const
            maintenance_rate_on: bool const
            shortening_rate_on: bool const
            basal_rate_on: bool const
            work_rate_on: bool const

        """
        this = _opensim.new_Bhargava2004MuscleMetabolicsProbe(*args)
        try: self.this.append(this)
        except: self.this = this
    def computeProbeInputs(self, *args):
        """
        computeProbeInputs(Bhargava2004MuscleMetabolicsProbe self, State state) -> Vector

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_computeProbeInputs(self, *args)

    def getNumProbeInputs(self):
        """
        getNumProbeInputs(Bhargava2004MuscleMetabolicsProbe self) -> int

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_getNumProbeInputs(self)

    def getProbeOutputLabels(self):
        """
        getProbeOutputLabels(Bhargava2004MuscleMetabolicsProbe self) -> ArrayStr

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_getProbeOutputLabels(self)

    def getNumMetabolicMuscles(self):
        """
        getNumMetabolicMuscles(Bhargava2004MuscleMetabolicsProbe self) -> int const

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_getNumMetabolicMuscles(self)

    def addMuscle(self, *args):
        """
        addMuscle(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName, double ratio_slow_twitch_fibers, double activation_constant_slow_twitch, 
            double activation_constant_fast_twitch, double maintenance_constant_slow_twitch, 
            double maintenance_constant_fast_twitch)

        Parameters:
            muscleName: std::string const &
            ratio_slow_twitch_fibers: double
            activation_constant_slow_twitch: double
            activation_constant_fast_twitch: double
            maintenance_constant_slow_twitch: double
            maintenance_constant_fast_twitch: double

        addMuscle(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName, double ratio_slow_twitch_fibers, double activation_constant_slow_twitch, 
            double activation_constant_fast_twitch, double maintenance_constant_slow_twitch, 
            double maintenance_constant_fast_twitch, double muscle_mass)

        Parameters:
            muscleName: std::string const &
            ratio_slow_twitch_fibers: double
            activation_constant_slow_twitch: double
            activation_constant_fast_twitch: double
            maintenance_constant_slow_twitch: double
            maintenance_constant_fast_twitch: double
            muscle_mass: double

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_addMuscle(self, *args)

    def removeMuscle(self, *args):
        """
        removeMuscle(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName)

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_removeMuscle(self, *args)

    def useProvidedMass(self, *args):
        """
        useProvidedMass(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName, double providedMass)

        Parameters:
            muscleName: std::string const &
            providedMass: double

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_useProvidedMass(self, *args)

    def useCalculatedMass(self, *args):
        """
        useCalculatedMass(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName)

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_useCalculatedMass(self, *args)

    def isUsingProvidedMass(self, *args):
        """
        isUsingProvidedMass(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName) -> bool

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_isUsingProvidedMass(self, *args)

    def getMuscleMass(self, *args):
        """
        getMuscleMass(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName) -> double const

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_getMuscleMass(self, *args)

    def getRatioSlowTwitchFibers(self, *args):
        """
        getRatioSlowTwitchFibers(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName) -> double const

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_getRatioSlowTwitchFibers(self, *args)

    def setRatioSlowTwitchFibers(self, *args):
        """
        setRatioSlowTwitchFibers(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName, double const & ratio)

        Parameters:
            muscleName: std::string const &
            ratio: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_setRatioSlowTwitchFibers(self, *args)

    def getDensity(self, *args):
        """
        getDensity(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName) -> double const

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_getDensity(self, *args)

    def setDensity(self, *args):
        """
        setDensity(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName, double const & density)

        Parameters:
            muscleName: std::string const &
            density: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_setDensity(self, *args)

    def getSpecificTension(self, *args):
        """
        getSpecificTension(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName) -> double const

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_getSpecificTension(self, *args)

    def setSpecificTension(self, *args):
        """
        setSpecificTension(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName, double const & specificTension)

        Parameters:
            muscleName: std::string const &
            specificTension: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_setSpecificTension(self, *args)

    def getActivationConstantSlowTwitch(self, *args):
        """
        getActivationConstantSlowTwitch(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName) -> double const

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_getActivationConstantSlowTwitch(self, *args)

    def setActivationConstantSlowTwitch(self, *args):
        """
        setActivationConstantSlowTwitch(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName, double const & c)

        Parameters:
            muscleName: std::string const &
            c: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_setActivationConstantSlowTwitch(self, *args)

    def getActivationConstantFastTwitch(self, *args):
        """
        getActivationConstantFastTwitch(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName) -> double const

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_getActivationConstantFastTwitch(self, *args)

    def setActivationConstantFastTwitch(self, *args):
        """
        setActivationConstantFastTwitch(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName, double const & c)

        Parameters:
            muscleName: std::string const &
            c: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_setActivationConstantFastTwitch(self, *args)

    def getMaintenanceConstantSlowTwitch(self, *args):
        """
        getMaintenanceConstantSlowTwitch(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName) -> double const

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_getMaintenanceConstantSlowTwitch(self, *args)

    def setMaintenanceConstantSlowTwitch(self, *args):
        """
        setMaintenanceConstantSlowTwitch(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName, double const & c)

        Parameters:
            muscleName: std::string const &
            c: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_setMaintenanceConstantSlowTwitch(self, *args)

    def getMaintenanceConstantFastTwitch(self, *args):
        """
        getMaintenanceConstantFastTwitch(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName) -> double const

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_getMaintenanceConstantFastTwitch(self, *args)

    def setMaintenanceConstantFastTwitch(self, *args):
        """
        setMaintenanceConstantFastTwitch(Bhargava2004MuscleMetabolicsProbe self, std::string const & muscleName, double const & c)

        Parameters:
            muscleName: std::string const &
            c: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_setMaintenanceConstantFastTwitch(self, *args)

    __swig_destroy__ = _opensim.delete_Bhargava2004MuscleMetabolicsProbe
    __del__ = lambda self : None;
Bhargava2004MuscleMetabolicsProbe_swigregister = _opensim.Bhargava2004MuscleMetabolicsProbe_swigregister
Bhargava2004MuscleMetabolicsProbe_swigregister(Bhargava2004MuscleMetabolicsProbe)

def Bhargava2004MuscleMetabolicsProbe_safeDownCast(*args):
  """
    Bhargava2004MuscleMetabolicsProbe_safeDownCast(OpenSimObject obj) -> Bhargava2004MuscleMetabolicsProbe

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Bhargava2004MuscleMetabolicsProbe_safeDownCast(*args)

def Bhargava2004MuscleMetabolicsProbe_getClassName():
  """Bhargava2004MuscleMetabolicsProbe_getClassName() -> std::string const &"""
  return _opensim.Bhargava2004MuscleMetabolicsProbe_getClassName()

class Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter(OpenSimObject):
    """Proxy of C++ OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> std::string const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_getConcreteClassName(self)

    def copyProperty_specific_tension(self, *args):
        """
        copyProperty_specific_tension(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_copyProperty_specific_tension(self, *args)

    def append_specific_tension(self, *args):
        """
        append_specific_tension(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_append_specific_tension(self, *args)

    def constructProperty_specific_tension(self, *args):
        """
        constructProperty_specific_tension(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_constructProperty_specific_tension(self, *args)

    def get_specific_tension(self, *args):
        """
        get_specific_tension(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double const

        Parameters:
            i: int

        get_specific_tension(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_get_specific_tension(self, *args)

    def upd_specific_tension(self, *args):
        """
        upd_specific_tension(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double

        Parameters:
            i: int

        upd_specific_tension(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_upd_specific_tension(self, *args)

    def set_specific_tension(self, *args):
        """
        set_specific_tension(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_specific_tension(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_set_specific_tension(self, *args)

    def copyProperty_density(self, *args):
        """
        copyProperty_density(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_copyProperty_density(self, *args)

    def append_density(self, *args):
        """
        append_density(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_append_density(self, *args)

    def constructProperty_density(self, *args):
        """
        constructProperty_density(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_constructProperty_density(self, *args)

    def get_density(self, *args):
        """
        get_density(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double const

        Parameters:
            i: int

        get_density(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_get_density(self, *args)

    def upd_density(self, *args):
        """
        upd_density(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double

        Parameters:
            i: int

        upd_density(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_upd_density(self, *args)

    def set_density(self, *args):
        """
        set_density(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_density(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_set_density(self, *args)

    def copyProperty_ratio_slow_twitch_fibers(self, *args):
        """
        copyProperty_ratio_slow_twitch_fibers(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_copyProperty_ratio_slow_twitch_fibers(self, *args)

    def append_ratio_slow_twitch_fibers(self, *args):
        """
        append_ratio_slow_twitch_fibers(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_append_ratio_slow_twitch_fibers(self, *args)

    def constructProperty_ratio_slow_twitch_fibers(self, *args):
        """
        constructProperty_ratio_slow_twitch_fibers(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_constructProperty_ratio_slow_twitch_fibers(self, *args)

    def get_ratio_slow_twitch_fibers(self, *args):
        """
        get_ratio_slow_twitch_fibers(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double const

        Parameters:
            i: int

        get_ratio_slow_twitch_fibers(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_get_ratio_slow_twitch_fibers(self, *args)

    def upd_ratio_slow_twitch_fibers(self, *args):
        """
        upd_ratio_slow_twitch_fibers(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double

        Parameters:
            i: int

        upd_ratio_slow_twitch_fibers(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_upd_ratio_slow_twitch_fibers(self, *args)

    def set_ratio_slow_twitch_fibers(self, *args):
        """
        set_ratio_slow_twitch_fibers(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_ratio_slow_twitch_fibers(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_set_ratio_slow_twitch_fibers(self, *args)

    def copyProperty_use_provided_muscle_mass(self, *args):
        """
        copyProperty_use_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_copyProperty_use_provided_muscle_mass(self, *args)

    def append_use_provided_muscle_mass(self, *args):
        """
        append_use_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_append_use_provided_muscle_mass(self, *args)

    def constructProperty_use_provided_muscle_mass(self, *args):
        """
        constructProperty_use_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self)
        constructProperty_use_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_constructProperty_use_provided_muscle_mass(self, *args)

    def get_use_provided_muscle_mass(self, *args):
        """
        get_use_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> bool const

        Parameters:
            i: int

        get_use_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> bool const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_get_use_provided_muscle_mass(self, *args)

    def upd_use_provided_muscle_mass(self, *args):
        """
        upd_use_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> bool

        Parameters:
            i: int

        upd_use_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> bool &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_upd_use_provided_muscle_mass(self, *args)

    def set_use_provided_muscle_mass(self, *args):
        """
        set_use_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_use_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_set_use_provided_muscle_mass(self, *args)

    def copyProperty_provided_muscle_mass(self, *args):
        """
        copyProperty_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_copyProperty_provided_muscle_mass(self, *args)

    def append_provided_muscle_mass(self, *args):
        """
        append_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_append_provided_muscle_mass(self, *args)

    def constructProperty_provided_muscle_mass(self, *args):
        """
        constructProperty_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self)
        constructProperty_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_constructProperty_provided_muscle_mass(self, *args)

    def get_provided_muscle_mass(self, *args):
        """
        get_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double const

        Parameters:
            i: int

        get_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_get_provided_muscle_mass(self, *args)

    def upd_provided_muscle_mass(self, *args):
        """
        upd_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double

        Parameters:
            i: int

        upd_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_upd_provided_muscle_mass(self, *args)

    def set_provided_muscle_mass(self, *args):
        """
        set_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_provided_muscle_mass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_set_provided_muscle_mass(self, *args)

    def copyProperty_activation_constant_slow_twitch(self, *args):
        """
        copyProperty_activation_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_copyProperty_activation_constant_slow_twitch(self, *args)

    def append_activation_constant_slow_twitch(self, *args):
        """
        append_activation_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_append_activation_constant_slow_twitch(self, *args)

    def constructProperty_activation_constant_slow_twitch(self, *args):
        """
        constructProperty_activation_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_constructProperty_activation_constant_slow_twitch(self, *args)

    def get_activation_constant_slow_twitch(self, *args):
        """
        get_activation_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double const

        Parameters:
            i: int

        get_activation_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_get_activation_constant_slow_twitch(self, *args)

    def upd_activation_constant_slow_twitch(self, *args):
        """
        upd_activation_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double

        Parameters:
            i: int

        upd_activation_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_upd_activation_constant_slow_twitch(self, *args)

    def set_activation_constant_slow_twitch(self, *args):
        """
        set_activation_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_activation_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_set_activation_constant_slow_twitch(self, *args)

    def copyProperty_activation_constant_fast_twitch(self, *args):
        """
        copyProperty_activation_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_copyProperty_activation_constant_fast_twitch(self, *args)

    def append_activation_constant_fast_twitch(self, *args):
        """
        append_activation_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_append_activation_constant_fast_twitch(self, *args)

    def constructProperty_activation_constant_fast_twitch(self, *args):
        """
        constructProperty_activation_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_constructProperty_activation_constant_fast_twitch(self, *args)

    def get_activation_constant_fast_twitch(self, *args):
        """
        get_activation_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double const

        Parameters:
            i: int

        get_activation_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_get_activation_constant_fast_twitch(self, *args)

    def upd_activation_constant_fast_twitch(self, *args):
        """
        upd_activation_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double

        Parameters:
            i: int

        upd_activation_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_upd_activation_constant_fast_twitch(self, *args)

    def set_activation_constant_fast_twitch(self, *args):
        """
        set_activation_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_activation_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_set_activation_constant_fast_twitch(self, *args)

    def copyProperty_maintenance_constant_slow_twitch(self, *args):
        """
        copyProperty_maintenance_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_copyProperty_maintenance_constant_slow_twitch(self, *args)

    def append_maintenance_constant_slow_twitch(self, *args):
        """
        append_maintenance_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_append_maintenance_constant_slow_twitch(self, *args)

    def constructProperty_maintenance_constant_slow_twitch(self, *args):
        """
        constructProperty_maintenance_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_constructProperty_maintenance_constant_slow_twitch(self, *args)

    def get_maintenance_constant_slow_twitch(self, *args):
        """
        get_maintenance_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double const

        Parameters:
            i: int

        get_maintenance_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_get_maintenance_constant_slow_twitch(self, *args)

    def upd_maintenance_constant_slow_twitch(self, *args):
        """
        upd_maintenance_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double

        Parameters:
            i: int

        upd_maintenance_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_upd_maintenance_constant_slow_twitch(self, *args)

    def set_maintenance_constant_slow_twitch(self, *args):
        """
        set_maintenance_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_maintenance_constant_slow_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_set_maintenance_constant_slow_twitch(self, *args)

    def copyProperty_maintenance_constant_fast_twitch(self, *args):
        """
        copyProperty_maintenance_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter source)

        Parameters:
            source: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter::Self const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_copyProperty_maintenance_constant_fast_twitch(self, *args)

    def append_maintenance_constant_fast_twitch(self, *args):
        """
        append_maintenance_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_append_maintenance_constant_fast_twitch(self, *args)

    def constructProperty_maintenance_constant_fast_twitch(self, *args):
        """
        constructProperty_maintenance_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_constructProperty_maintenance_constant_fast_twitch(self, *args)

    def get_maintenance_constant_fast_twitch(self, *args):
        """
        get_maintenance_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double const

        Parameters:
            i: int

        get_maintenance_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_get_maintenance_constant_fast_twitch(self, *args)

    def upd_maintenance_constant_fast_twitch(self, *args):
        """
        upd_maintenance_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double

        Parameters:
            i: int

        upd_maintenance_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_upd_maintenance_constant_fast_twitch(self, *args)

    def set_maintenance_constant_fast_twitch(self, *args):
        """
        set_maintenance_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_maintenance_constant_fast_twitch(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_set_maintenance_constant_fast_twitch(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter
        __init__(OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, std::string const & muscleName, double ratio_slow_twitch_fibers, double muscle_mass=SimTK::NaN) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter

        Parameters:
            muscleName: std::string const &
            ratio_slow_twitch_fibers: double
            muscle_mass: double

        __init__(OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, std::string const & muscleName, double ratio_slow_twitch_fibers) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter

        Parameters:
            muscleName: std::string const &
            ratio_slow_twitch_fibers: double

        __init__(OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, std::string const & muscleName, double ratio_slow_twitch_fibers, double activation_constant_slow_twitch, 
            double activation_constant_fast_twitch, double maintenance_constant_slow_twitch, 
            double maintenance_constant_fast_twitch, double muscle_mass=SimTK::NaN) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter

        Parameters:
            muscleName: std::string const &
            ratio_slow_twitch_fibers: double
            activation_constant_slow_twitch: double
            activation_constant_fast_twitch: double
            maintenance_constant_slow_twitch: double
            maintenance_constant_fast_twitch: double
            muscle_mass: double

        __init__(OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, std::string const & muscleName, double ratio_slow_twitch_fibers, double activation_constant_slow_twitch, 
            double activation_constant_fast_twitch, double maintenance_constant_slow_twitch, 
            double maintenance_constant_fast_twitch) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter

        Parameters:
            muscleName: std::string const &
            ratio_slow_twitch_fibers: double
            activation_constant_slow_twitch: double
            activation_constant_fast_twitch: double
            maintenance_constant_slow_twitch: double
            maintenance_constant_fast_twitch: double

        """
        this = _opensim.new_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter(*args)
        try: self.this.append(this)
        except: self.this = this
    def getMuscleMass(self):
        """
        getMuscleMass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double const

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_getMuscleMass(self)

    def setMuscleMass(self):
        """
        setMuscleMass(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self)

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_setMuscleMass(self)

    def getMuscle(self):
        """
        getMuscle(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> Muscle

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_getMuscle(self)

    def setMuscle(self, *args):
        """
        setMuscle(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter self, Muscle m)

        Parameters:
            m: OpenSim::Muscle *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_setMuscle(self, *args)

    __swig_destroy__ = _opensim.delete_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter
    __del__ = lambda self : None;
Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_swigregister = _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_swigregister
Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_swigregister(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter)

def Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_safeDownCast(*args):
  """
    Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_safeDownCast(OpenSimObject obj) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_safeDownCast(*args)

def Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_getClassName():
  """Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_getClassName() -> std::string const &"""
  return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameter_getClassName()

class Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet(_object):
    """Proxy of C++ OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet self) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet self) -> std::string const &

        Parameters:
            self: OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet const *

        """
        return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet_getConcreteClassName(self)

    def __init__(self): 
        """__init__(OpenSim::Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet self) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet"""
        this = _opensim.new_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet
    __del__ = lambda self : None;
Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet_swigregister = _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet_swigregister
Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet_swigregister(Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet)

def Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet_safeDownCast(*args):
  """
    Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet_safeDownCast(OpenSimObject obj) -> Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet_safeDownCast(*args)

def Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet_getClassName():
  """Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet_getClassName() -> std::string const &"""
  return _opensim.Bhargava2004MuscleMetabolicsProbe_MetabolicMuscleParameterSet_getClassName()

class Umberger2010MuscleMetabolicsProbe(Probe):
    """Proxy of C++ OpenSim::Umberger2010MuscleMetabolicsProbe class"""
    __swig_setmethods__ = {}
    for _s in [Probe]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Umberger2010MuscleMetabolicsProbe, name, value)
    __swig_getmethods__ = {}
    for _s in [Probe]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Umberger2010MuscleMetabolicsProbe, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Umberger2010MuscleMetabolicsProbe

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Umberger2010MuscleMetabolicsProbe self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Umberger2010MuscleMetabolicsProbe_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Umberger2010MuscleMetabolicsProbe self) -> Umberger2010MuscleMetabolicsProbe

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Umberger2010MuscleMetabolicsProbe self) -> std::string const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_getConcreteClassName(self)

    def copyProperty_activation_maintenance_rate_on(self, *args):
        """
        copyProperty_activation_maintenance_rate_on(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_copyProperty_activation_maintenance_rate_on(self, *args)

    def append_activation_maintenance_rate_on(self, *args):
        """
        append_activation_maintenance_rate_on(Umberger2010MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_append_activation_maintenance_rate_on(self, *args)

    def constructProperty_activation_maintenance_rate_on(self, *args):
        """
        constructProperty_activation_maintenance_rate_on(Umberger2010MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_constructProperty_activation_maintenance_rate_on(self, *args)

    def get_activation_maintenance_rate_on(self, *args):
        """
        get_activation_maintenance_rate_on(Umberger2010MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_activation_maintenance_rate_on(Umberger2010MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_get_activation_maintenance_rate_on(self, *args)

    def upd_activation_maintenance_rate_on(self, *args):
        """
        upd_activation_maintenance_rate_on(Umberger2010MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_activation_maintenance_rate_on(Umberger2010MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_upd_activation_maintenance_rate_on(self, *args)

    def set_activation_maintenance_rate_on(self, *args):
        """
        set_activation_maintenance_rate_on(Umberger2010MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_activation_maintenance_rate_on(Umberger2010MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_set_activation_maintenance_rate_on(self, *args)

    def copyProperty_shortening_rate_on(self, *args):
        """
        copyProperty_shortening_rate_on(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_copyProperty_shortening_rate_on(self, *args)

    def append_shortening_rate_on(self, *args):
        """
        append_shortening_rate_on(Umberger2010MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_append_shortening_rate_on(self, *args)

    def constructProperty_shortening_rate_on(self, *args):
        """
        constructProperty_shortening_rate_on(Umberger2010MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_constructProperty_shortening_rate_on(self, *args)

    def get_shortening_rate_on(self, *args):
        """
        get_shortening_rate_on(Umberger2010MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_shortening_rate_on(Umberger2010MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_get_shortening_rate_on(self, *args)

    def upd_shortening_rate_on(self, *args):
        """
        upd_shortening_rate_on(Umberger2010MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_shortening_rate_on(Umberger2010MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_upd_shortening_rate_on(self, *args)

    def set_shortening_rate_on(self, *args):
        """
        set_shortening_rate_on(Umberger2010MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_shortening_rate_on(Umberger2010MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_set_shortening_rate_on(self, *args)

    def copyProperty_basal_rate_on(self, *args):
        """
        copyProperty_basal_rate_on(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_copyProperty_basal_rate_on(self, *args)

    def append_basal_rate_on(self, *args):
        """
        append_basal_rate_on(Umberger2010MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_append_basal_rate_on(self, *args)

    def constructProperty_basal_rate_on(self, *args):
        """
        constructProperty_basal_rate_on(Umberger2010MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_constructProperty_basal_rate_on(self, *args)

    def get_basal_rate_on(self, *args):
        """
        get_basal_rate_on(Umberger2010MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_basal_rate_on(Umberger2010MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_get_basal_rate_on(self, *args)

    def upd_basal_rate_on(self, *args):
        """
        upd_basal_rate_on(Umberger2010MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_basal_rate_on(Umberger2010MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_upd_basal_rate_on(self, *args)

    def set_basal_rate_on(self, *args):
        """
        set_basal_rate_on(Umberger2010MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_basal_rate_on(Umberger2010MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_set_basal_rate_on(self, *args)

    def copyProperty_mechanical_work_rate_on(self, *args):
        """
        copyProperty_mechanical_work_rate_on(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_copyProperty_mechanical_work_rate_on(self, *args)

    def append_mechanical_work_rate_on(self, *args):
        """
        append_mechanical_work_rate_on(Umberger2010MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_append_mechanical_work_rate_on(self, *args)

    def constructProperty_mechanical_work_rate_on(self, *args):
        """
        constructProperty_mechanical_work_rate_on(Umberger2010MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_constructProperty_mechanical_work_rate_on(self, *args)

    def get_mechanical_work_rate_on(self, *args):
        """
        get_mechanical_work_rate_on(Umberger2010MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_mechanical_work_rate_on(Umberger2010MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_get_mechanical_work_rate_on(self, *args)

    def upd_mechanical_work_rate_on(self, *args):
        """
        upd_mechanical_work_rate_on(Umberger2010MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_mechanical_work_rate_on(Umberger2010MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_upd_mechanical_work_rate_on(self, *args)

    def set_mechanical_work_rate_on(self, *args):
        """
        set_mechanical_work_rate_on(Umberger2010MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_mechanical_work_rate_on(Umberger2010MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_set_mechanical_work_rate_on(self, *args)

    def copyProperty_enforce_minimum_heat_rate_per_muscle(self, *args):
        """
        copyProperty_enforce_minimum_heat_rate_per_muscle(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_copyProperty_enforce_minimum_heat_rate_per_muscle(self, *args)

    def append_enforce_minimum_heat_rate_per_muscle(self, *args):
        """
        append_enforce_minimum_heat_rate_per_muscle(Umberger2010MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_append_enforce_minimum_heat_rate_per_muscle(self, *args)

    def constructProperty_enforce_minimum_heat_rate_per_muscle(self, *args):
        """
        constructProperty_enforce_minimum_heat_rate_per_muscle(Umberger2010MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_constructProperty_enforce_minimum_heat_rate_per_muscle(self, *args)

    def get_enforce_minimum_heat_rate_per_muscle(self, *args):
        """
        get_enforce_minimum_heat_rate_per_muscle(Umberger2010MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_enforce_minimum_heat_rate_per_muscle(Umberger2010MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_get_enforce_minimum_heat_rate_per_muscle(self, *args)

    def upd_enforce_minimum_heat_rate_per_muscle(self, *args):
        """
        upd_enforce_minimum_heat_rate_per_muscle(Umberger2010MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_enforce_minimum_heat_rate_per_muscle(Umberger2010MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_upd_enforce_minimum_heat_rate_per_muscle(self, *args)

    def set_enforce_minimum_heat_rate_per_muscle(self, *args):
        """
        set_enforce_minimum_heat_rate_per_muscle(Umberger2010MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_enforce_minimum_heat_rate_per_muscle(Umberger2010MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_set_enforce_minimum_heat_rate_per_muscle(self, *args)

    def copyProperty_aerobic_factor(self, *args):
        """
        copyProperty_aerobic_factor(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_copyProperty_aerobic_factor(self, *args)

    def append_aerobic_factor(self, *args):
        """
        append_aerobic_factor(Umberger2010MuscleMetabolicsProbe self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_append_aerobic_factor(self, *args)

    def constructProperty_aerobic_factor(self, *args):
        """
        constructProperty_aerobic_factor(Umberger2010MuscleMetabolicsProbe self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_constructProperty_aerobic_factor(self, *args)

    def get_aerobic_factor(self, *args):
        """
        get_aerobic_factor(Umberger2010MuscleMetabolicsProbe self, int i) -> double const

        Parameters:
            i: int

        get_aerobic_factor(Umberger2010MuscleMetabolicsProbe self) -> double const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_get_aerobic_factor(self, *args)

    def upd_aerobic_factor(self, *args):
        """
        upd_aerobic_factor(Umberger2010MuscleMetabolicsProbe self, int i) -> double

        Parameters:
            i: int

        upd_aerobic_factor(Umberger2010MuscleMetabolicsProbe self) -> double &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_upd_aerobic_factor(self, *args)

    def set_aerobic_factor(self, *args):
        """
        set_aerobic_factor(Umberger2010MuscleMetabolicsProbe self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_aerobic_factor(Umberger2010MuscleMetabolicsProbe self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_set_aerobic_factor(self, *args)

    def copyProperty_basal_coefficient(self, *args):
        """
        copyProperty_basal_coefficient(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_copyProperty_basal_coefficient(self, *args)

    def append_basal_coefficient(self, *args):
        """
        append_basal_coefficient(Umberger2010MuscleMetabolicsProbe self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_append_basal_coefficient(self, *args)

    def constructProperty_basal_coefficient(self, *args):
        """
        constructProperty_basal_coefficient(Umberger2010MuscleMetabolicsProbe self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_constructProperty_basal_coefficient(self, *args)

    def get_basal_coefficient(self, *args):
        """
        get_basal_coefficient(Umberger2010MuscleMetabolicsProbe self, int i) -> double const

        Parameters:
            i: int

        get_basal_coefficient(Umberger2010MuscleMetabolicsProbe self) -> double const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_get_basal_coefficient(self, *args)

    def upd_basal_coefficient(self, *args):
        """
        upd_basal_coefficient(Umberger2010MuscleMetabolicsProbe self, int i) -> double

        Parameters:
            i: int

        upd_basal_coefficient(Umberger2010MuscleMetabolicsProbe self) -> double &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_upd_basal_coefficient(self, *args)

    def set_basal_coefficient(self, *args):
        """
        set_basal_coefficient(Umberger2010MuscleMetabolicsProbe self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_basal_coefficient(Umberger2010MuscleMetabolicsProbe self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_set_basal_coefficient(self, *args)

    def copyProperty_basal_exponent(self, *args):
        """
        copyProperty_basal_exponent(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_copyProperty_basal_exponent(self, *args)

    def append_basal_exponent(self, *args):
        """
        append_basal_exponent(Umberger2010MuscleMetabolicsProbe self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_append_basal_exponent(self, *args)

    def constructProperty_basal_exponent(self, *args):
        """
        constructProperty_basal_exponent(Umberger2010MuscleMetabolicsProbe self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_constructProperty_basal_exponent(self, *args)

    def get_basal_exponent(self, *args):
        """
        get_basal_exponent(Umberger2010MuscleMetabolicsProbe self, int i) -> double const

        Parameters:
            i: int

        get_basal_exponent(Umberger2010MuscleMetabolicsProbe self) -> double const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_get_basal_exponent(self, *args)

    def upd_basal_exponent(self, *args):
        """
        upd_basal_exponent(Umberger2010MuscleMetabolicsProbe self, int i) -> double

        Parameters:
            i: int

        upd_basal_exponent(Umberger2010MuscleMetabolicsProbe self) -> double &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_upd_basal_exponent(self, *args)

    def set_basal_exponent(self, *args):
        """
        set_basal_exponent(Umberger2010MuscleMetabolicsProbe self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_basal_exponent(Umberger2010MuscleMetabolicsProbe self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_set_basal_exponent(self, *args)

    def copyProperty_muscle_effort_scaling_factor(self, *args):
        """
        copyProperty_muscle_effort_scaling_factor(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_copyProperty_muscle_effort_scaling_factor(self, *args)

    def append_muscle_effort_scaling_factor(self, *args):
        """
        append_muscle_effort_scaling_factor(Umberger2010MuscleMetabolicsProbe self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_append_muscle_effort_scaling_factor(self, *args)

    def constructProperty_muscle_effort_scaling_factor(self, *args):
        """
        constructProperty_muscle_effort_scaling_factor(Umberger2010MuscleMetabolicsProbe self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_constructProperty_muscle_effort_scaling_factor(self, *args)

    def get_muscle_effort_scaling_factor(self, *args):
        """
        get_muscle_effort_scaling_factor(Umberger2010MuscleMetabolicsProbe self, int i) -> double const

        Parameters:
            i: int

        get_muscle_effort_scaling_factor(Umberger2010MuscleMetabolicsProbe self) -> double const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_get_muscle_effort_scaling_factor(self, *args)

    def upd_muscle_effort_scaling_factor(self, *args):
        """
        upd_muscle_effort_scaling_factor(Umberger2010MuscleMetabolicsProbe self, int i) -> double

        Parameters:
            i: int

        upd_muscle_effort_scaling_factor(Umberger2010MuscleMetabolicsProbe self) -> double &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_upd_muscle_effort_scaling_factor(self, *args)

    def set_muscle_effort_scaling_factor(self, *args):
        """
        set_muscle_effort_scaling_factor(Umberger2010MuscleMetabolicsProbe self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_muscle_effort_scaling_factor(Umberger2010MuscleMetabolicsProbe self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_set_muscle_effort_scaling_factor(self, *args)

    def copyProperty_use_Bhargava_recruitment_model(self, *args):
        """
        copyProperty_use_Bhargava_recruitment_model(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_copyProperty_use_Bhargava_recruitment_model(self, *args)

    def append_use_Bhargava_recruitment_model(self, *args):
        """
        append_use_Bhargava_recruitment_model(Umberger2010MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_append_use_Bhargava_recruitment_model(self, *args)

    def constructProperty_use_Bhargava_recruitment_model(self, *args):
        """
        constructProperty_use_Bhargava_recruitment_model(Umberger2010MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_constructProperty_use_Bhargava_recruitment_model(self, *args)

    def get_use_Bhargava_recruitment_model(self, *args):
        """
        get_use_Bhargava_recruitment_model(Umberger2010MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_use_Bhargava_recruitment_model(Umberger2010MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_get_use_Bhargava_recruitment_model(self, *args)

    def upd_use_Bhargava_recruitment_model(self, *args):
        """
        upd_use_Bhargava_recruitment_model(Umberger2010MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_use_Bhargava_recruitment_model(Umberger2010MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_upd_use_Bhargava_recruitment_model(self, *args)

    def set_use_Bhargava_recruitment_model(self, *args):
        """
        set_use_Bhargava_recruitment_model(Umberger2010MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_use_Bhargava_recruitment_model(Umberger2010MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_set_use_Bhargava_recruitment_model(self, *args)

    def copyProperty_include_negative_mechanical_work(self, *args):
        """
        copyProperty_include_negative_mechanical_work(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_copyProperty_include_negative_mechanical_work(self, *args)

    def append_include_negative_mechanical_work(self, *args):
        """
        append_include_negative_mechanical_work(Umberger2010MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_append_include_negative_mechanical_work(self, *args)

    def constructProperty_include_negative_mechanical_work(self, *args):
        """
        constructProperty_include_negative_mechanical_work(Umberger2010MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_constructProperty_include_negative_mechanical_work(self, *args)

    def get_include_negative_mechanical_work(self, *args):
        """
        get_include_negative_mechanical_work(Umberger2010MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_include_negative_mechanical_work(Umberger2010MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_get_include_negative_mechanical_work(self, *args)

    def upd_include_negative_mechanical_work(self, *args):
        """
        upd_include_negative_mechanical_work(Umberger2010MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_include_negative_mechanical_work(Umberger2010MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_upd_include_negative_mechanical_work(self, *args)

    def set_include_negative_mechanical_work(self, *args):
        """
        set_include_negative_mechanical_work(Umberger2010MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_include_negative_mechanical_work(Umberger2010MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_set_include_negative_mechanical_work(self, *args)

    def copyProperty_forbid_negative_total_power(self, *args):
        """
        copyProperty_forbid_negative_total_power(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_copyProperty_forbid_negative_total_power(self, *args)

    def append_forbid_negative_total_power(self, *args):
        """
        append_forbid_negative_total_power(Umberger2010MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_append_forbid_negative_total_power(self, *args)

    def constructProperty_forbid_negative_total_power(self, *args):
        """
        constructProperty_forbid_negative_total_power(Umberger2010MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_constructProperty_forbid_negative_total_power(self, *args)

    def get_forbid_negative_total_power(self, *args):
        """
        get_forbid_negative_total_power(Umberger2010MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_forbid_negative_total_power(Umberger2010MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_get_forbid_negative_total_power(self, *args)

    def upd_forbid_negative_total_power(self, *args):
        """
        upd_forbid_negative_total_power(Umberger2010MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_forbid_negative_total_power(Umberger2010MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_upd_forbid_negative_total_power(self, *args)

    def set_forbid_negative_total_power(self, *args):
        """
        set_forbid_negative_total_power(Umberger2010MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_forbid_negative_total_power(Umberger2010MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_set_forbid_negative_total_power(self, *args)

    def copyProperty_report_total_metabolics_only(self, *args):
        """
        copyProperty_report_total_metabolics_only(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_copyProperty_report_total_metabolics_only(self, *args)

    def append_report_total_metabolics_only(self, *args):
        """
        append_report_total_metabolics_only(Umberger2010MuscleMetabolicsProbe self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_append_report_total_metabolics_only(self, *args)

    def constructProperty_report_total_metabolics_only(self, *args):
        """
        constructProperty_report_total_metabolics_only(Umberger2010MuscleMetabolicsProbe self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_constructProperty_report_total_metabolics_only(self, *args)

    def get_report_total_metabolics_only(self, *args):
        """
        get_report_total_metabolics_only(Umberger2010MuscleMetabolicsProbe self, int i) -> bool const

        Parameters:
            i: int

        get_report_total_metabolics_only(Umberger2010MuscleMetabolicsProbe self) -> bool const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_get_report_total_metabolics_only(self, *args)

    def upd_report_total_metabolics_only(self, *args):
        """
        upd_report_total_metabolics_only(Umberger2010MuscleMetabolicsProbe self, int i) -> bool

        Parameters:
            i: int

        upd_report_total_metabolics_only(Umberger2010MuscleMetabolicsProbe self) -> bool &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_upd_report_total_metabolics_only(self, *args)

    def set_report_total_metabolics_only(self, *args):
        """
        set_report_total_metabolics_only(Umberger2010MuscleMetabolicsProbe self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_report_total_metabolics_only(Umberger2010MuscleMetabolicsProbe self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_set_report_total_metabolics_only(self, *args)

    def copyProperty_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args):
        """
        copyProperty_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_copyProperty_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args)

    def append_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args):
        """
        append_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet value) -> int

        Parameters:
            value: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_append_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args)

    def constructProperty_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args):
        """
        constructProperty_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet initValue)

        Parameters:
            initValue: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_constructProperty_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args)

    def get_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args):
        """
        get_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Umberger2010MuscleMetabolicsProbe self, int i) -> Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet

        Parameters:
            i: int

        get_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Umberger2010MuscleMetabolicsProbe self) -> Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_get_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args)

    def upd_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args):
        """
        upd_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Umberger2010MuscleMetabolicsProbe self, int i) -> Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet

        Parameters:
            i: int

        upd_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Umberger2010MuscleMetabolicsProbe self) -> Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_upd_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args)

    def set_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args):
        """
        set_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Umberger2010MuscleMetabolicsProbe self, int i, Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet value)

        Parameters:
            i: int
            value: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet const &

        set_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(Umberger2010MuscleMetabolicsProbe self, Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet value)

        Parameters:
            value: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_set_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Umberger2010MuscleMetabolicsProbe self) -> Umberger2010MuscleMetabolicsProbe
        __init__(OpenSim::Umberger2010MuscleMetabolicsProbe self, bool const activation_maintenance_rate_on, bool const shortening_rate_on, bool const basal_rate_on, 
            bool const work_rate_on) -> Umberger2010MuscleMetabolicsProbe

        Parameters:
            activation_maintenance_rate_on: bool const
            shortening_rate_on: bool const
            basal_rate_on: bool const
            work_rate_on: bool const

        """
        this = _opensim.new_Umberger2010MuscleMetabolicsProbe(*args)
        try: self.this.append(this)
        except: self.this = this
    def computeProbeInputs(self, *args):
        """
        computeProbeInputs(Umberger2010MuscleMetabolicsProbe self, State state) -> Vector

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_computeProbeInputs(self, *args)

    def getNumProbeInputs(self):
        """
        getNumProbeInputs(Umberger2010MuscleMetabolicsProbe self) -> int

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_getNumProbeInputs(self)

    def getProbeOutputLabels(self):
        """
        getProbeOutputLabels(Umberger2010MuscleMetabolicsProbe self) -> ArrayStr

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_getProbeOutputLabels(self)

    def getNumMetabolicMuscles(self):
        """
        getNumMetabolicMuscles(Umberger2010MuscleMetabolicsProbe self) -> int const

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_getNumMetabolicMuscles(self)

    def addMuscle(self, *args):
        """
        addMuscle(Umberger2010MuscleMetabolicsProbe self, std::string const & muscleName, double ratio_slow_twitch_fibers)

        Parameters:
            muscleName: std::string const &
            ratio_slow_twitch_fibers: double

        addMuscle(Umberger2010MuscleMetabolicsProbe self, std::string const & muscleName, double ratio_slow_twitch_fibers, double muscle_mass)

        Parameters:
            muscleName: std::string const &
            ratio_slow_twitch_fibers: double
            muscle_mass: double

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_addMuscle(self, *args)

    def removeMuscle(self, *args):
        """
        removeMuscle(Umberger2010MuscleMetabolicsProbe self, std::string const & muscleName)

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_removeMuscle(self, *args)

    def useProvidedMass(self, *args):
        """
        useProvidedMass(Umberger2010MuscleMetabolicsProbe self, std::string const & muscleName, double providedMass)

        Parameters:
            muscleName: std::string const &
            providedMass: double

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_useProvidedMass(self, *args)

    def useCalculatedMass(self, *args):
        """
        useCalculatedMass(Umberger2010MuscleMetabolicsProbe self, std::string const & muscleName)

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_useCalculatedMass(self, *args)

    def isUsingProvidedMass(self, *args):
        """
        isUsingProvidedMass(Umberger2010MuscleMetabolicsProbe self, std::string const & muscleName) -> bool

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_isUsingProvidedMass(self, *args)

    def getMuscleMass(self, *args):
        """
        getMuscleMass(Umberger2010MuscleMetabolicsProbe self, std::string const & muscleName) -> double const

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_getMuscleMass(self, *args)

    def getRatioSlowTwitchFibers(self, *args):
        """
        getRatioSlowTwitchFibers(Umberger2010MuscleMetabolicsProbe self, std::string const & muscleName) -> double const

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_getRatioSlowTwitchFibers(self, *args)

    def setRatioSlowTwitchFibers(self, *args):
        """
        setRatioSlowTwitchFibers(Umberger2010MuscleMetabolicsProbe self, std::string const & muscleName, double const & ratio)

        Parameters:
            muscleName: std::string const &
            ratio: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_setRatioSlowTwitchFibers(self, *args)

    def getDensity(self, *args):
        """
        getDensity(Umberger2010MuscleMetabolicsProbe self, std::string const & muscleName) -> double const

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_getDensity(self, *args)

    def setDensity(self, *args):
        """
        setDensity(Umberger2010MuscleMetabolicsProbe self, std::string const & muscleName, double const & density)

        Parameters:
            muscleName: std::string const &
            density: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_setDensity(self, *args)

    def getSpecificTension(self, *args):
        """
        getSpecificTension(Umberger2010MuscleMetabolicsProbe self, std::string const & muscleName) -> double const

        Parameters:
            muscleName: std::string const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_getSpecificTension(self, *args)

    def setSpecificTension(self, *args):
        """
        setSpecificTension(Umberger2010MuscleMetabolicsProbe self, std::string const & muscleName, double const & specificTension)

        Parameters:
            muscleName: std::string const &
            specificTension: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_setSpecificTension(self, *args)

    __swig_destroy__ = _opensim.delete_Umberger2010MuscleMetabolicsProbe
    __del__ = lambda self : None;
Umberger2010MuscleMetabolicsProbe_swigregister = _opensim.Umberger2010MuscleMetabolicsProbe_swigregister
Umberger2010MuscleMetabolicsProbe_swigregister(Umberger2010MuscleMetabolicsProbe)

def Umberger2010MuscleMetabolicsProbe_safeDownCast(*args):
  """
    Umberger2010MuscleMetabolicsProbe_safeDownCast(OpenSimObject obj) -> Umberger2010MuscleMetabolicsProbe

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Umberger2010MuscleMetabolicsProbe_safeDownCast(*args)

def Umberger2010MuscleMetabolicsProbe_getClassName():
  """Umberger2010MuscleMetabolicsProbe_getClassName() -> std::string const &"""
  return _opensim.Umberger2010MuscleMetabolicsProbe_getClassName()

class Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter(OpenSimObject):
    """Proxy of C++ OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> std::string const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_getConcreteClassName(self)

    def copyProperty_specific_tension(self, *args):
        """
        copyProperty_specific_tension(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_copyProperty_specific_tension(self, *args)

    def append_specific_tension(self, *args):
        """
        append_specific_tension(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_append_specific_tension(self, *args)

    def constructProperty_specific_tension(self, *args):
        """
        constructProperty_specific_tension(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_constructProperty_specific_tension(self, *args)

    def get_specific_tension(self, *args):
        """
        get_specific_tension(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double const

        Parameters:
            i: int

        get_specific_tension(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_get_specific_tension(self, *args)

    def upd_specific_tension(self, *args):
        """
        upd_specific_tension(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double

        Parameters:
            i: int

        upd_specific_tension(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_upd_specific_tension(self, *args)

    def set_specific_tension(self, *args):
        """
        set_specific_tension(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_specific_tension(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_set_specific_tension(self, *args)

    def copyProperty_density(self, *args):
        """
        copyProperty_density(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_copyProperty_density(self, *args)

    def append_density(self, *args):
        """
        append_density(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_append_density(self, *args)

    def constructProperty_density(self, *args):
        """
        constructProperty_density(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_constructProperty_density(self, *args)

    def get_density(self, *args):
        """
        get_density(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double const

        Parameters:
            i: int

        get_density(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_get_density(self, *args)

    def upd_density(self, *args):
        """
        upd_density(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double

        Parameters:
            i: int

        upd_density(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_upd_density(self, *args)

    def set_density(self, *args):
        """
        set_density(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_density(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_set_density(self, *args)

    def copyProperty_ratio_slow_twitch_fibers(self, *args):
        """
        copyProperty_ratio_slow_twitch_fibers(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_copyProperty_ratio_slow_twitch_fibers(self, *args)

    def append_ratio_slow_twitch_fibers(self, *args):
        """
        append_ratio_slow_twitch_fibers(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_append_ratio_slow_twitch_fibers(self, *args)

    def constructProperty_ratio_slow_twitch_fibers(self, *args):
        """
        constructProperty_ratio_slow_twitch_fibers(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_constructProperty_ratio_slow_twitch_fibers(self, *args)

    def get_ratio_slow_twitch_fibers(self, *args):
        """
        get_ratio_slow_twitch_fibers(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double const

        Parameters:
            i: int

        get_ratio_slow_twitch_fibers(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_get_ratio_slow_twitch_fibers(self, *args)

    def upd_ratio_slow_twitch_fibers(self, *args):
        """
        upd_ratio_slow_twitch_fibers(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double

        Parameters:
            i: int

        upd_ratio_slow_twitch_fibers(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_upd_ratio_slow_twitch_fibers(self, *args)

    def set_ratio_slow_twitch_fibers(self, *args):
        """
        set_ratio_slow_twitch_fibers(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_ratio_slow_twitch_fibers(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_set_ratio_slow_twitch_fibers(self, *args)

    def copyProperty_use_provided_muscle_mass(self, *args):
        """
        copyProperty_use_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_copyProperty_use_provided_muscle_mass(self, *args)

    def append_use_provided_muscle_mass(self, *args):
        """
        append_use_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_append_use_provided_muscle_mass(self, *args)

    def constructProperty_use_provided_muscle_mass(self, *args):
        """
        constructProperty_use_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_constructProperty_use_provided_muscle_mass(self, *args)

    def get_use_provided_muscle_mass(self, *args):
        """
        get_use_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> bool const

        Parameters:
            i: int

        get_use_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> bool const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_get_use_provided_muscle_mass(self, *args)

    def upd_use_provided_muscle_mass(self, *args):
        """
        upd_use_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> bool

        Parameters:
            i: int

        upd_use_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> bool &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_upd_use_provided_muscle_mass(self, *args)

    def set_use_provided_muscle_mass(self, *args):
        """
        set_use_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_use_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_set_use_provided_muscle_mass(self, *args)

    def copyProperty_provided_muscle_mass(self, *args):
        """
        copyProperty_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter source)

        Parameters:
            source: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter::Self const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_copyProperty_provided_muscle_mass(self, *args)

    def append_provided_muscle_mass(self, *args):
        """
        append_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_append_provided_muscle_mass(self, *args)

    def constructProperty_provided_muscle_mass(self, *args):
        """
        constructProperty_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_constructProperty_provided_muscle_mass(self, *args)

    def get_provided_muscle_mass(self, *args):
        """
        get_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double const

        Parameters:
            i: int

        get_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_get_provided_muscle_mass(self, *args)

    def upd_provided_muscle_mass(self, *args):
        """
        upd_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i) -> double

        Parameters:
            i: int

        upd_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_upd_provided_muscle_mass(self, *args)

    def set_provided_muscle_mass(self, *args):
        """
        set_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_provided_muscle_mass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_set_provided_muscle_mass(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter
        __init__(OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, std::string const & muscleName, double ratio_slow_twitch_fibers, double muscle_mass=SimTK::NaN) -> Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter

        Parameters:
            muscleName: std::string const &
            ratio_slow_twitch_fibers: double
            muscle_mass: double

        __init__(OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, std::string const & muscleName, double ratio_slow_twitch_fibers) -> Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter

        Parameters:
            muscleName: std::string const &
            ratio_slow_twitch_fibers: double

        """
        this = _opensim.new_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter(*args)
        try: self.this.append(this)
        except: self.this = this
    def getMuscleMass(self):
        """
        getMuscleMass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> double const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_getMuscleMass(self)

    def setMuscleMass(self):
        """
        setMuscleMass(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self)

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_setMuscleMass(self)

    def getMuscle(self):
        """
        getMuscle(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self) -> Muscle

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_getMuscle(self)

    def setMuscle(self, *args):
        """
        setMuscle(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter self, Muscle m)

        Parameters:
            m: OpenSim::Muscle *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_setMuscle(self, *args)

    __swig_destroy__ = _opensim.delete_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter
    __del__ = lambda self : None;
Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_swigregister = _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_swigregister
Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_swigregister(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter)

def Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_safeDownCast(*args):
  """
    Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_safeDownCast(OpenSimObject obj) -> Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_safeDownCast(*args)

def Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_getClassName():
  """Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_getClassName() -> std::string const &"""
  return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameter_getClassName()

class Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet(_object):
    """Proxy of C++ OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet self) -> Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet self) -> std::string const &

        Parameters:
            self: OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet const *

        """
        return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet_getConcreteClassName(self)

    def __init__(self): 
        """__init__(OpenSim::Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet self) -> Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet"""
        this = _opensim.new_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet
    __del__ = lambda self : None;
Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet_swigregister = _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet_swigregister
Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet_swigregister(Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet)

def Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet_safeDownCast(*args):
  """
    Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet_safeDownCast(OpenSimObject obj) -> Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet_safeDownCast(*args)

def Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet_getClassName():
  """Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet_getClassName() -> std::string const &"""
  return _opensim.Umberger2010MuscleMetabolicsProbe_MetabolicMuscleParameterSet_getClassName()

class ModelDisplayHints(_object):
    """Proxy of C++ OpenSim::ModelDisplayHints class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ModelDisplayHints, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ModelDisplayHints, name)
    __repr__ = _swig_repr
    def __init__(self): 
        """__init__(OpenSim::ModelDisplayHints self) -> ModelDisplayHints"""
        this = _opensim.new_ModelDisplayHints()
        try: self.this.append(this)
        except: self.this = this
    def setShowWrapGeometry(self, *args):
        """
        setShowWrapGeometry(ModelDisplayHints self, bool showWrap) -> ModelDisplayHints

        Parameters:
            showWrap: bool

        """
        return _opensim.ModelDisplayHints_setShowWrapGeometry(self, *args)

    def getShowWrapGeometry(self):
        """
        getShowWrapGeometry(ModelDisplayHints self) -> bool

        Parameters:
            self: OpenSim::ModelDisplayHints const *

        """
        return _opensim.ModelDisplayHints_getShowWrapGeometry(self)

    def setShowContactGeometry(self, *args):
        """
        setShowContactGeometry(ModelDisplayHints self, bool showContact) -> ModelDisplayHints

        Parameters:
            showContact: bool

        """
        return _opensim.ModelDisplayHints_setShowContactGeometry(self, *args)

    def getShowContactGeometry(self):
        """
        getShowContactGeometry(ModelDisplayHints self) -> bool

        Parameters:
            self: OpenSim::ModelDisplayHints const *

        """
        return _opensim.ModelDisplayHints_getShowContactGeometry(self)

    def setShowMusclePaths(self, *args):
        """
        setShowMusclePaths(ModelDisplayHints self, bool showMusclePaths) -> ModelDisplayHints

        Parameters:
            showMusclePaths: bool

        """
        return _opensim.ModelDisplayHints_setShowMusclePaths(self, *args)

    def getShowMusclePaths(self):
        """
        getShowMusclePaths(ModelDisplayHints self) -> bool

        Parameters:
            self: OpenSim::ModelDisplayHints const *

        """
        return _opensim.ModelDisplayHints_getShowMusclePaths(self)

    def setShowPathPoints(self, *args):
        """
        setShowPathPoints(ModelDisplayHints self, bool showPathPoints) -> ModelDisplayHints

        Parameters:
            showPathPoints: bool

        """
        return _opensim.ModelDisplayHints_setShowPathPoints(self, *args)

    def getShowPathPoints(self):
        """
        getShowPathPoints(ModelDisplayHints self) -> bool

        Parameters:
            self: OpenSim::ModelDisplayHints const *

        """
        return _opensim.ModelDisplayHints_getShowPathPoints(self)

    def setShowMarkers(self, *args):
        """
        setShowMarkers(ModelDisplayHints self, bool showMarkers) -> ModelDisplayHints

        Parameters:
            showMarkers: bool

        """
        return _opensim.ModelDisplayHints_setShowMarkers(self, *args)

    def getShowMarkers(self):
        """
        getShowMarkers(ModelDisplayHints self) -> bool

        Parameters:
            self: OpenSim::ModelDisplayHints const *

        """
        return _opensim.ModelDisplayHints_getShowMarkers(self)

    def setShowForces(self, *args):
        """
        setShowForces(ModelDisplayHints self, bool showForces) -> ModelDisplayHints

        Parameters:
            showForces: bool

        """
        return _opensim.ModelDisplayHints_setShowForces(self, *args)

    def getShowForces(self):
        """
        getShowForces(ModelDisplayHints self) -> bool

        Parameters:
            self: OpenSim::ModelDisplayHints const *

        """
        return _opensim.ModelDisplayHints_getShowForces(self)

    def setShowFrames(self, *args):
        """
        setShowFrames(ModelDisplayHints self, bool showFrames) -> ModelDisplayHints

        Parameters:
            showFrames: bool

        """
        return _opensim.ModelDisplayHints_setShowFrames(self, *args)

    def getShowFrames(self):
        """
        getShowFrames(ModelDisplayHints self) -> bool

        Parameters:
            self: OpenSim::ModelDisplayHints const *

        """
        return _opensim.ModelDisplayHints_getShowFrames(self)

    def setShowLabels(self, *args):
        """
        setShowLabels(ModelDisplayHints self, bool showLabels) -> ModelDisplayHints

        Parameters:
            showLabels: bool

        """
        return _opensim.ModelDisplayHints_setShowLabels(self, *args)

    def getShowLabels(self):
        """
        getShowLabels(ModelDisplayHints self) -> bool

        Parameters:
            self: OpenSim::ModelDisplayHints const *

        """
        return _opensim.ModelDisplayHints_getShowLabels(self)

    def setShowDebugGeometry(self, *args):
        """
        setShowDebugGeometry(ModelDisplayHints self, bool showDebugGeometry) -> ModelDisplayHints

        Parameters:
            showDebugGeometry: bool

        """
        return _opensim.ModelDisplayHints_setShowDebugGeometry(self, *args)

    def getShowDebugGeometry(self):
        """
        getShowDebugGeometry(ModelDisplayHints self) -> bool

        Parameters:
            self: OpenSim::ModelDisplayHints const *

        """
        return _opensim.ModelDisplayHints_getShowDebugGeometry(self)

    def clear(self):
        """
        clear(ModelDisplayHints self)

        Parameters:
            self: OpenSim::ModelDisplayHints *

        """
        return _opensim.ModelDisplayHints_clear(self)

    __swig_destroy__ = _opensim.delete_ModelDisplayHints
    __del__ = lambda self : None;
ModelDisplayHints_swigregister = _opensim.ModelDisplayHints_swigregister
ModelDisplayHints_swigregister(ModelDisplayHints)

class ModelVisualizer(_object):
    """Proxy of C++ OpenSim::ModelVisualizer class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ModelVisualizer, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ModelVisualizer, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined")
    __repr__ = _swig_repr
    def show(self, *args):
        """
        show(ModelVisualizer self, State state)

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ModelVisualizer_show(self, *args)

    def getInputSilo(self):
        """
        getInputSilo(ModelVisualizer self) -> SimTK::Visualizer::InputSilo const &

        Parameters:
            self: OpenSim::ModelVisualizer const *

        """
        return _opensim.ModelVisualizer_getInputSilo(self)

    def updInputSilo(self):
        """
        updInputSilo(ModelVisualizer self) -> SimTK::Visualizer::InputSilo &

        Parameters:
            self: OpenSim::ModelVisualizer *

        """
        return _opensim.ModelVisualizer_updInputSilo(self)

    def getSimbodyVisualizer(self):
        """
        getSimbodyVisualizer(ModelVisualizer self) -> SimTK::Visualizer const &

        Parameters:
            self: OpenSim::ModelVisualizer const *

        """
        return _opensim.ModelVisualizer_getSimbodyVisualizer(self)

    def updSimbodyVisualizer(self):
        """
        updSimbodyVisualizer(ModelVisualizer self) -> SimTK::Visualizer &

        Parameters:
            self: OpenSim::ModelVisualizer *

        """
        return _opensim.ModelVisualizer_updSimbodyVisualizer(self)

    def getGeometryDecorationGenerator(self):
        """
        getGeometryDecorationGenerator(ModelVisualizer self) -> SimTK::DefaultGeometry *

        Parameters:
            self: OpenSim::ModelVisualizer *

        """
        return _opensim.ModelVisualizer_getGeometryDecorationGenerator(self)

    def getModel(self):
        """
        getModel(ModelVisualizer self) -> Model

        Parameters:
            self: OpenSim::ModelVisualizer const *

        """
        return _opensim.ModelVisualizer_getModel(self)

    def updModel(self):
        """
        updModel(ModelVisualizer self) -> Model

        Parameters:
            self: OpenSim::ModelVisualizer *

        """
        return _opensim.ModelVisualizer_updModel(self)

    def findGeometryFile(self, *args):
        """
        findGeometryFile(ModelVisualizer self, std::string const & geoFile, bool & isAbsolute, SimTK::Array_< std::string,unsigned int > & attempts) -> bool

        Parameters:
            geoFile: std::string const &
            isAbsolute: bool &
            attempts: SimTK::Array_< std::string,unsigned int > &

        """
        return _opensim.ModelVisualizer_findGeometryFile(self, *args)

ModelVisualizer_swigregister = _opensim.ModelVisualizer_swigregister
ModelVisualizer_swigregister(ModelVisualizer)

class Model(ModelComponent):
    """Proxy of C++ OpenSim::Model class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponent]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Model, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponent]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Model, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Model

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Model_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Model self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Model_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Model_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Model self) -> Model

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Model self) -> std::string const &

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Model self) -> Model
        __init__(OpenSim::Model self, std::string const & filename, bool connectToModel=True) -> Model

        Parameters:
            filename: std::string const &
            connectToModel: bool

        __init__(OpenSim::Model self, std::string const & filename) -> Model

        Parameters:
            filename: std::string const &

        __init__(OpenSim::Model self, Model source) -> Model

        Parameters:
            source: OpenSim::Model const &

        """
        this = _opensim.new_Model(*args)
        try: self.this.append(this)
        except: self.this = this
    def setup(self):
        """
        setup(Model self)

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_setup(self)

    def cleanup(self):
        """
        cleanup(Model self)

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_cleanup(self)

    def getDisplayHints(self):
        """
        getDisplayHints(Model self) -> ModelDisplayHints

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getDisplayHints(self)

    def updDisplayHints(self):
        """
        updDisplayHints(Model self) -> ModelDisplayHints

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updDisplayHints(self)

    def setUseVisualizer(self, *args):
        """
        setUseVisualizer(Model self, bool visualize)

        Parameters:
            visualize: bool

        """
        return _opensim.Model_setUseVisualizer(self, *args)

    def getUseVisualizer(self):
        """
        getUseVisualizer(Model self) -> bool

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getUseVisualizer(self)

    def hasVisualizer(self):
        """
        hasVisualizer(Model self) -> bool

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_hasVisualizer(self)

    def getVisualizer(self):
        """
        getVisualizer(Model self) -> ModelVisualizer

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getVisualizer(self)

    def updVisualizer(self):
        """
        updVisualizer(Model self) -> ModelVisualizer

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updVisualizer(self)

    def buildSystem(self):
        """
        buildSystem(Model self)

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_buildSystem(self)

    def initializeState(self):
        """
        initializeState(Model self) -> State

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_initializeState(self)

    def initSystem(self):
        """
        initSystem(Model self) -> State

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_initSystem(self)

    def getWorkingState(self):
        """
        getWorkingState(Model self) -> State

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getWorkingState(self)

    def updWorkingState(self):
        """
        updWorkingState(Model self) -> State

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updWorkingState(self)

    def copyDefaultStateIntoWorkingState(self):
        """
        copyDefaultStateIntoWorkingState(Model self)

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_copyDefaultStateIntoWorkingState(self)

    def initStateWithoutRecreatingSystem(self, *args):
        """
        initStateWithoutRecreatingSystem(Model self, State state)

        Parameters:
            state: SimTK::State &

        """
        return _opensim.Model_initStateWithoutRecreatingSystem(self, *args)

    def invalidateSystem(self):
        """
        invalidateSystem(Model self)

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_invalidateSystem(self)

    def isValidSystem(self):
        """
        isValidSystem(Model self) -> bool

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_isValidSystem(self)

    def formStateStorage(self, *args):
        """
        formStateStorage(Model self, Storage originalStorage, Storage statesStorage)

        Parameters:
            originalStorage: OpenSim::Storage const &
            statesStorage: OpenSim::Storage &

        """
        return _opensim.Model_formStateStorage(self, *args)

    def formQStorage(self, *args):
        """
        formQStorage(Model self, Storage originalStorage, Storage qStorage)

        Parameters:
            originalStorage: OpenSim::Storage const &
            qStorage: OpenSim::Storage &

        """
        return _opensim.Model_formQStorage(self, *args)

    def updateAssemblyConditions(self, *args):
        """
        updateAssemblyConditions(Model self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Model_updateAssemblyConditions(self, *args)

    def assemble(self, *args):
        """
        assemble(Model self, State state, Coordinate coord=None, double weight=10)

        Parameters:
            state: SimTK::State &
            coord: OpenSim::Coordinate const *
            weight: double

        assemble(Model self, State state, Coordinate coord=None)

        Parameters:
            state: SimTK::State &
            coord: OpenSim::Coordinate const *

        assemble(Model self, State state)

        Parameters:
            state: SimTK::State &

        """
        return _opensim.Model_assemble(self, *args)

    def equilibrateMuscles(self, *args):
        """
        equilibrateMuscles(Model self, State state)

        Parameters:
            state: SimTK::State &

        """
        return _opensim.Model_equilibrateMuscles(self, *args)

    def getMultibodySystem(self):
        """
        getMultibodySystem(Model self) -> SimTK::MultibodySystem const &

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getMultibodySystem(self)

    def updMultibodySystem(self):
        """
        updMultibodySystem(Model self) -> SimTK::MultibodySystem &

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_updMultibodySystem(self)

    def getDefaultSubsystem(self):
        """
        getDefaultSubsystem(Model self) -> SimTK::DefaultSystemSubsystem const &

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getDefaultSubsystem(self)

    def updDefaultSubsystem(self):
        """
        updDefaultSubsystem(Model self) -> SimTK::DefaultSystemSubsystem &

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updDefaultSubsystem(self)

    def getMatterSubsystem(self):
        """
        getMatterSubsystem(Model self) -> SimTK::SimbodyMatterSubsystem const &

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getMatterSubsystem(self)

    def updMatterSubsystem(self):
        """
        updMatterSubsystem(Model self) -> SimTK::SimbodyMatterSubsystem &

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updMatterSubsystem(self)

    def getGravityForce(self):
        """
        getGravityForce(Model self) -> SimTK::Force::Gravity const &

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getGravityForce(self)

    def updGravityForce(self):
        """
        updGravityForce(Model self) -> SimTK::Force::Gravity &

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updGravityForce(self)

    def getForceSubsystem(self):
        """
        getForceSubsystem(Model self) -> SimTK::GeneralForceSubsystem const &

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getForceSubsystem(self)

    def updForceSubsystem(self):
        """
        updForceSubsystem(Model self) -> SimTK::GeneralForceSubsystem &

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updForceSubsystem(self)

    def getNumStateVariables(self):
        """
        getNumStateVariables(Model self) -> int

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getNumStateVariables(self)

    def addComponent(self, *args):
        """
        addComponent(Model self, ModelComponent aComponent)

        Parameters:
            aComponent: OpenSim::ModelComponent *

        """
        val = _opensim.Model_addComponent(self, *args)
        args[0]._markAdopted()


        return val

    def addBody(self, *args):
        """
        addBody(Model self, Body aBody)

        Parameters:
            aBody: OpenSim::Body *

        """
        val = _opensim.Model_addBody(self, *args)
        args[0]._markAdopted()


        return val

    def addConstraint(self, *args):
        """
        addConstraint(Model self, Constraint aConstraint)

        Parameters:
            aConstraint: OpenSim::Constraint *

        """
        val = _opensim.Model_addConstraint(self, *args)
        args[0]._markAdopted()


        return val

    def addForce(self, *args):
        """
        addForce(Model self, Force aForce)

        Parameters:
            aForce: OpenSim::Force *

        """
        val = _opensim.Model_addForce(self, *args)
        args[0]._markAdopted()


        return val

    def addProbe(self, *args):
        """
        addProbe(Model self, Probe aProbe)

        Parameters:
            aProbe: OpenSim::Probe *

        """
        val = _opensim.Model_addProbe(self, *args)
        args[0]._markAdopted()


        return val

    def addContactGeometry(self, *args):
        """
        addContactGeometry(Model self, ContactGeometry aContactGeometry)

        Parameters:
            aContactGeometry: OpenSim::ContactGeometry *

        """
        val = _opensim.Model_addContactGeometry(self, *args)
        args[0]._markAdopted()


        return val

    def removeProbe(self, *args):
        """
        removeProbe(Model self, Probe aProbe)

        Parameters:
            aProbe: OpenSim::Probe *

        """
        return _opensim.Model_removeProbe(self, *args)

    def getInputFileName(self):
        """
        getInputFileName(Model self) -> std::string const &

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getInputFileName(self)

    def setInputFileName(self, *args):
        """
        setInputFileName(Model self, std::string const & fileName)

        Parameters:
            fileName: std::string const &

        """
        return _opensim.Model_setInputFileName(self, *args)

    def getCredits(self):
        """
        getCredits(Model self) -> std::string const &

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getCredits(self)

    def setAuthors(self, *args):
        """
        setAuthors(Model self, std::string const & aCredits)

        Parameters:
            aCredits: std::string const &

        """
        return _opensim.Model_setAuthors(self, *args)

    def getPublications(self):
        """
        getPublications(Model self) -> std::string const &

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getPublications(self)

    def setPublications(self, *args):
        """
        setPublications(Model self, std::string const & aPublications)

        Parameters:
            aPublications: std::string const &

        """
        return _opensim.Model_setPublications(self, *args)

    def getLengthUnits(self):
        """
        getLengthUnits(Model self) -> Units

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getLengthUnits(self)

    def getForceUnits(self):
        """
        getForceUnits(Model self) -> Units

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getForceUnits(self)

    def getGravity(self):
        """
        getGravity(Model self) -> Vec3

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getGravity(self)

    def setGravity(self, *args):
        """
        setGravity(Model self, Vec3 aGrav) -> bool

        Parameters:
            aGrav: SimTK::Vec3 const &

        """
        return _opensim.Model_setGravity(self, *args)

    def getNumMarkers(self):
        """
        getNumMarkers(Model self) -> int

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getNumMarkers(self)

    def getNumContactGeometries(self):
        """
        getNumContactGeometries(Model self) -> int

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getNumContactGeometries(self)

    def getNumBodies(self):
        """
        getNumBodies(Model self) -> int

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getNumBodies(self)

    def getNumJoints(self):
        """
        getNumJoints(Model self) -> int

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getNumJoints(self)

    def getNumCoordinates(self):
        """
        getNumCoordinates(Model self) -> int

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getNumCoordinates(self)

    def getNumSpeeds(self):
        """
        getNumSpeeds(Model self) -> int

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getNumSpeeds(self)

    def getNumProbes(self):
        """
        getNumProbes(Model self) -> int

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getNumProbes(self)

    def getActuators(self):
        """
        getActuators(Model self) -> SetActuators

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getActuators(self)

    def updActuators(self):
        """
        updActuators(Model self) -> SetActuators

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updActuators(self)

    def getMuscles(self):
        """
        getMuscles(Model self) -> SetMuscles

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getMuscles(self)

    def updMuscles(self):
        """
        updMuscles(Model self) -> SetMuscles

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updMuscles(self)

    def getForceSet(self):
        """
        getForceSet(Model self) -> ForceSet

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getForceSet(self)

    def updForceSet(self):
        """
        updForceSet(Model self) -> ForceSet

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updForceSet(self)

    def getProbeSet(self):
        """
        getProbeSet(Model self) -> ProbeSet

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getProbeSet(self)

    def updProbeSet(self):
        """
        updProbeSet(Model self) -> ProbeSet

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updProbeSet(self)

    def getMiscModelComponentSet(self):
        """
        getMiscModelComponentSet(Model self) -> ComponentSet

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getMiscModelComponentSet(self)

    def updMiscModelComponentSet(self):
        """
        updMiscModelComponentSet(Model self) -> ComponentSet

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updMiscModelComponentSet(self)

    def getNumAnalyses(self):
        """
        getNumAnalyses(Model self) -> int

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getNumAnalyses(self)

    def getNumControls(self):
        """
        getNumControls(Model self) -> int

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getNumControls(self)

    def updDefaultControls(self):
        """
        updDefaultControls(Model self) -> Vector

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_updDefaultControls(self)

    def setDefaultControls(self, *args):
        """
        setDefaultControls(Model self, Vector controls)

        Parameters:
            controls: SimTK::Vector const &

        """
        return _opensim.Model_setDefaultControls(self, *args)

    def getDefaultControls(self):
        """
        getDefaultControls(Model self) -> Vector

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getDefaultControls(self)

    def updControls(self, *args):
        """
        updControls(Model self, State s) -> Vector

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Model_updControls(self, *args)

    def markControlsAsValid(self, *args):
        """
        markControlsAsValid(Model self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Model_markControlsAsValid(self, *args)

    def setControls(self, *args):
        """
        setControls(Model self, State s, Vector controls)

        Parameters:
            s: SimTK::State const &
            controls: SimTK::Vector const &

        """
        return _opensim.Model_setControls(self, *args)

    def getControls(self, *args):
        """
        getControls(Model self, State s) -> Vector

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Model_getControls(self, *args)

    def computeControls(self, *args):
        """
        computeControls(Model self, State state, Vector controls)

        Parameters:
            state: SimTK::State const &
            controls: SimTK::Vector &

        """
        return _opensim.Model_computeControls(self, *args)

    def isControlled(self):
        """
        isControlled(Model self) -> bool

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_isControlled(self)

    def storeControls(self, *args):
        """
        storeControls(Model self, State s, int step)

        Parameters:
            s: SimTK::State const &
            step: int

        """
        return _opensim.Model_storeControls(self, *args)

    def printControlStorage(self, *args):
        """
        printControlStorage(Model self, std::string const & fileName)

        Parameters:
            fileName: std::string const &

        """
        return _opensim.Model_printControlStorage(self, *args)

    def getControllerSet(self):
        """
        getControllerSet(Model self) -> ControllerSet

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getControllerSet(self)

    def updControllerSet(self):
        """
        updControllerSet(Model self) -> ControllerSet

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updControllerSet(self)

    def getAllControllersEnabled(self):
        """
        getAllControllersEnabled(Model self) -> bool

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getAllControllersEnabled(self)

    def setAllControllersEnabled(self, *args):
        """
        setAllControllersEnabled(Model self, bool enabled)

        Parameters:
            enabled: bool

        """
        return _opensim.Model_setAllControllersEnabled(self, *args)

    def applyDefaultConfiguration(self, *args):
        """
        applyDefaultConfiguration(Model self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Model_applyDefaultConfiguration(self, *args)

    def getSimbodyEngine(self):
        """
        getSimbodyEngine(Model self) -> SimbodyEngine

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getSimbodyEngine(self)

    def updSimbodyEngine(self):
        """
        updSimbodyEngine(Model self) -> SimbodyEngine

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updSimbodyEngine(self)

    def computeStateVariableDerivatives(self, *args):
        """
        computeStateVariableDerivatives(Model self, State s) -> Vector

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Model_computeStateVariableDerivatives(self, *args)

    def getTotalMass(self, *args):
        """
        getTotalMass(Model self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Model_getTotalMass(self, *args)

    def getInertiaAboutMassCenter(self, *args):
        """
        getInertiaAboutMassCenter(Model self, State s) -> Inertia

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Model_getInertiaAboutMassCenter(self, *args)

    def calcMassCenterPosition(self, *args):
        """
        calcMassCenterPosition(Model self, State s) -> Vec3

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Model_calcMassCenterPosition(self, *args)

    def calcMassCenterVelocity(self, *args):
        """
        calcMassCenterVelocity(Model self, State s) -> Vec3

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Model_calcMassCenterVelocity(self, *args)

    def calcMassCenterAcceleration(self, *args):
        """
        calcMassCenterAcceleration(Model self, State s) -> Vec3

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Model_calcMassCenterAcceleration(self, *args)

    def getStateValues(self, *args):
        """
        getStateValues(Model self, State state, ArrayDouble stateValues)

        Parameters:
            state: SimTK::State const &
            stateValues: OpenSim::Array< double > &

        getStateValues(Model self, State s) -> Vector

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Model_getStateValues(self, *args)

    def setStateValues(self, *args):
        """
        setStateValues(Model self, State state, double const * stateValues)

        Parameters:
            state: SimTK::State &
            stateValues: double const *

        """
        return _opensim.Model_setStateValues(self, *args)

    def getNumMuscleStates(self):
        """
        getNumMuscleStates(Model self) -> int

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getNumMuscleStates(self)

    def getNumProbeStates(self):
        """
        getNumProbeStates(Model self) -> int

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getNumProbeStates(self)

    def updCoordinateSet(self):
        """
        updCoordinateSet(Model self) -> CoordinateSet

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updCoordinateSet(self)

    def getCoordinateSet(self):
        """
        getCoordinateSet(Model self) -> CoordinateSet

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getCoordinateSet(self)

    def updBodySet(self):
        """
        updBodySet(Model self) -> BodySet

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updBodySet(self)

    def getBodySet(self):
        """
        getBodySet(Model self) -> BodySet

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getBodySet(self)

    def updJointSet(self):
        """
        updJointSet(Model self) -> JointSet

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updJointSet(self)

    def getJointSet(self):
        """
        getJointSet(Model self) -> JointSet

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getJointSet(self)

    def updAnalysisSet(self):
        """
        updAnalysisSet(Model self) -> AnalysisSet

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updAnalysisSet(self)

    def getAnalysisSet(self):
        """
        getAnalysisSet(Model self) -> AnalysisSet

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getAnalysisSet(self)

    def updContactGeometrySet(self):
        """
        updContactGeometrySet(Model self) -> ContactGeometrySet

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updContactGeometrySet(self)

    def getContactGeometrySet(self):
        """
        getContactGeometrySet(Model self) -> ContactGeometrySet

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getContactGeometrySet(self)

    def getGroundBody(self):
        """
        getGroundBody(Model self) -> Body

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getGroundBody(self)

    def updConstraintSet(self):
        """
        updConstraintSet(Model self) -> ConstraintSet

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updConstraintSet(self)

    def getConstraintSet(self):
        """
        getConstraintSet(Model self) -> ConstraintSet

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getConstraintSet(self)

    def updMarkerSet(self):
        """
        updMarkerSet(Model self) -> MarkerSet

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_updMarkerSet(self)

    def getMarkerSet(self):
        """
        getMarkerSet(Model self) -> MarkerSet

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getMarkerSet(self)

    def replaceMarkerSet(self, *args):
        """
        replaceMarkerSet(Model self, State s, MarkerSet aMarkerSet) -> int

        Parameters:
            s: SimTK::State const &
            aMarkerSet: OpenSim::MarkerSet &

        """
        return _opensim.Model_replaceMarkerSet(self, *args)

    def writeMarkerFile(self, *args):
        """
        writeMarkerFile(Model self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.Model_writeMarkerFile(self, *args)

    def updateMarkerSet(self, *args):
        """
        updateMarkerSet(Model self, MarkerSet aMarkerSet)

        Parameters:
            aMarkerSet: OpenSim::MarkerSet &

        """
        return _opensim.Model_updateMarkerSet(self, *args)

    def deleteUnusedMarkers(self, *args):
        """
        deleteUnusedMarkers(Model self, ArrayStr aMarkerNames) -> int

        Parameters:
            aMarkerNames: OpenSim::Array< std::string > const &

        """
        return _opensim.Model_deleteUnusedMarkers(self, *args)

    def addAnalysis(self, *args):
        """
        addAnalysis(Model self, Analysis analysis)

        Parameters:
            analysis: OpenSim::Analysis *

        """
        val = _opensim.Model_addAnalysis(self, *args)
        args[0]._markAdopted()


        return val

    def addController(self, *args):
        """
        addController(Model self, Controller aController)

        Parameters:
            aController: OpenSim::Controller *

        """
        val = _opensim.Model_addController(self, *args)
        args[0]._markAdopted()


        return val

    def removeAnalysis(self, *args):
        """
        removeAnalysis(Model self, Analysis analysis, bool deleteIt=True)

        Parameters:
            analysis: OpenSim::Analysis *
            deleteIt: bool

        removeAnalysis(Model self, Analysis analysis)

        Parameters:
            analysis: OpenSim::Analysis *

        """
        return _opensim.Model_removeAnalysis(self, *args)

    def removeController(self, *args):
        """
        removeController(Model self, Controller aController)

        Parameters:
            aController: OpenSim::Controller *

        """
        return _opensim.Model_removeController(self, *args)

    def scale(self, *args):
        """
        scale(Model self, State state, ScaleSet scaleSet, double finalMass=-1.0, bool preserveMassDist=False) -> bool

        Parameters:
            state: SimTK::State &
            scaleSet: OpenSim::ScaleSet const &
            finalMass: double
            preserveMassDist: bool

        scale(Model self, State state, ScaleSet scaleSet, double finalMass=-1.0) -> bool

        Parameters:
            state: SimTK::State &
            scaleSet: OpenSim::ScaleSet const &
            finalMass: double

        scale(Model self, State state, ScaleSet scaleSet) -> bool

        Parameters:
            state: SimTK::State &
            scaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.Model_scale(self, *args)

    def printBasicInfo(self, *args):
        """
        printBasicInfo(Model self, std::ostream & aOStream)

        Parameters:
            aOStream: std::ostream &

        """
        return _opensim.Model_printBasicInfo(self, *args)

    def printDetailedInfo(self, *args):
        """
        printDetailedInfo(Model self, State s, std::ostream & aOStream)

        Parameters:
            s: SimTK::State const &
            aOStream: std::ostream &

        """
        return _opensim.Model_printDetailedInfo(self, *args)

    def disownAllComponents(self):
        """
        disownAllComponents(Model self)

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_disownAllComponents(self)

    def overrideAllActuators(self, *args):
        """
        overrideAllActuators(Model self, State s, bool flag)

        Parameters:
            s: SimTK::State &
            flag: bool

        """
        return _opensim.Model_overrideAllActuators(self, *args)

    def getValidationLog(self):
        """
        getValidationLog(Model self) -> std::string const &

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_getValidationLog(self)

    def clearValidationLog(self):
        """
        clearValidationLog(Model self)

        Parameters:
            self: OpenSim::Model *

        """
        return _opensim.Model_clearValidationLog(self)

    def getObjectByTypeAndName(self, *args):
        """
        getObjectByTypeAndName(Model self, std::string const & typeString, std::string const & nameString) -> OpenSimObject

        Parameters:
            typeString: std::string const &
            nameString: std::string const &

        """
        return _opensim.Model_getObjectByTypeAndName(self, *args)

    __swig_destroy__ = _opensim.delete_Model
    __del__ = lambda self : None;
    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(Model self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(Model self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.Model_updateFromXMLNode(self, *args)

    def connectToModel(self, *args):
        """
        connectToModel(Model self, Model model)

        Parameters:
            model: OpenSim::Model &

        """
        return _opensim.Model_connectToModel(self, *args)

    def addToSystem(self, *args):
        """
        addToSystem(Model self, SimTK::MultibodySystem & system)

        Parameters:
            system: SimTK::MultibodySystem &

        """
        return _opensim.Model_addToSystem(self, *args)

    def initStateFromProperties(self, *args):
        """
        initStateFromProperties(Model self, State state)

        Parameters:
            state: SimTK::State &

        """
        return _opensim.Model_initStateFromProperties(self, *args)

    def setPropertiesFromState(self, *args):
        """
        setPropertiesFromState(Model self, State state)

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.Model_setPropertiesFromState(self, *args)

    def generateDecorations(self, *args):
        """
        generateDecorations(Model self, bool fixed, ModelDisplayHints hints, State state, ArrayDecorativeGeometry appendToThis)

        Parameters:
            fixed: bool
            hints: OpenSim::ModelDisplayHints const &
            state: SimTK::State const &
            appendToThis: SimTK::Array_< SimTK::DecorativeGeometry,unsigned int > &

        """
        return _opensim.Model_generateDecorations(self, *args)

    def getStateVariableNames(self):
        """
        getStateVariableNames(Model self) -> ArrayStr

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getStateVariableNames(self)

    def getStateVariableSystemIndices(self):
        """
        getStateVariableSystemIndices(Model self) -> ArrayInt

        Parameters:
            self: OpenSim::Model const *

        """
        return _opensim.Model_getStateVariableSystemIndices(self)

    def getStateVariable(self, *args):
        """
        getStateVariable(Model self, State s, std::string const & name) -> double

        Parameters:
            s: SimTK::State const &
            name: std::string const &

        """
        return _opensim.Model_getStateVariable(self, *args)

    def setStateVariable(self, *args):
        """
        setStateVariable(Model self, State s, std::string const & name, double value)

        Parameters:
            s: SimTK::State &
            name: std::string const &
            value: double

        """
        return _opensim.Model_setStateVariable(self, *args)

    def getStateVariableSystemIndex(self, *args):
        """
        getStateVariableSystemIndex(Model self, std::string const & stateVariableName) -> SimTK::SystemYIndex

        Parameters:
            stateVariableName: std::string const &

        """
        return _opensim.Model_getStateVariableSystemIndex(self, *args)

Model_swigregister = _opensim.Model_swigregister
Model_swigregister(Model)

def Model_safeDownCast(*args):
  """
    Model_safeDownCast(OpenSimObject obj) -> Model

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Model_safeDownCast(*args)

def Model_getClassName():
  """Model_getClassName() -> std::string const &"""
  return _opensim.Model_getClassName()

class PathPoint(OpenSimObject):
    """Proxy of C++ OpenSim::PathPoint class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PathPoint, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PathPoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PathPoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PathPoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PathPoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PathPoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PathPoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PathPoint self) -> PathPoint

        Parameters:
            self: OpenSim::PathPoint const *

        """
        return _opensim.PathPoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PathPoint self) -> std::string const &

        Parameters:
            self: OpenSim::PathPoint const *

        """
        return _opensim.PathPoint_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PathPoint self) -> PathPoint
        __init__(OpenSim::PathPoint self, PathPoint aPoint) -> PathPoint

        Parameters:
            aPoint: OpenSim::PathPoint const &

        """
        this = _opensim.new_PathPoint(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_PathPoint
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(PathPoint self, PathPoint aPoint)

        Parameters:
            aPoint: OpenSim::PathPoint const &

        """
        return _opensim.PathPoint_copyData(self, *args)

    def init(self, *args):
        """
        init(PathPoint self, PathPoint aPoint)

        Parameters:
            aPoint: OpenSim::PathPoint const &

        """
        return _opensim.PathPoint_init(self, *args)

    def getLocation(self):
        """
        getLocation(PathPoint self) -> Vec3

        Parameters:
            self: OpenSim::PathPoint *

        """
        return _opensim.PathPoint_getLocation(self)

    def getLocationCoord(self, *args):
        """
        getLocationCoord(PathPoint self, int aXYZ) -> double const &

        Parameters:
            aXYZ: int

        """
        return _opensim.PathPoint_getLocationCoord(self, *args)

    def setLocationCoord(self, *args):
        """
        setLocationCoord(PathPoint self, int aXYZ, double aValue)

        Parameters:
            aXYZ: int
            aValue: double

        """
        return _opensim.PathPoint_setLocationCoord(self, *args)

    def setLocation(self, *args):
        """
        setLocation(PathPoint self, State s, Vec3 aLocation)

        Parameters:
            s: SimTK::State const &
            aLocation: SimTK::Vec3 const &

        setLocation(PathPoint self, State s, int aCoordIndex, double aLocation)

        Parameters:
            s: SimTK::State const &
            aCoordIndex: int
            aLocation: double

        setLocation(PathPoint self, State s, double [] pt)

        Parameters:
            s: SimTK::State const &
            pt: double []

        """
        return _opensim.PathPoint_setLocation(self, *args)

    def setBody(self, *args):
        """
        setBody(PathPoint self, Body aBody)

        Parameters:
            aBody: OpenSim::Body &

        """
        return _opensim.PathPoint_setBody(self, *args)

    def changeBodyPreserveLocation(self, *args):
        """
        changeBodyPreserveLocation(PathPoint self, State s, Body aBody)

        Parameters:
            s: SimTK::State const &
            aBody: OpenSim::Body &

        """
        return _opensim.PathPoint_changeBodyPreserveLocation(self, *args)

    def getBody(self):
        """
        getBody(PathPoint self) -> Body

        Parameters:
            self: OpenSim::PathPoint const *

        """
        return _opensim.PathPoint_getBody(self)

    def getBodyName(self):
        """
        getBodyName(PathPoint self) -> std::string const &

        Parameters:
            self: OpenSim::PathPoint const *

        """
        return _opensim.PathPoint_getBodyName(self)

    def getPath(self):
        """
        getPath(PathPoint self) -> GeometryPath

        Parameters:
            self: OpenSim::PathPoint const *

        """
        return _opensim.PathPoint_getPath(self)

    def scale(self, *args):
        """
        scale(PathPoint self, State s, Vec3 aScaleFactors)

        Parameters:
            s: SimTK::State const &
            aScaleFactors: SimTK::Vec3 const &

        """
        return _opensim.PathPoint_scale(self, *args)

    def getWrapObject(self):
        """
        getWrapObject(PathPoint self) -> WrapObject

        Parameters:
            self: OpenSim::PathPoint const *

        """
        return _opensim.PathPoint_getWrapObject(self)

    def isActive(self, *args):
        """
        isActive(PathPoint self, State s) -> bool

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PathPoint_isActive(self, *args)

    def connectToModelAndPath(self, *args):
        """
        connectToModelAndPath(PathPoint self, Model aModel, GeometryPath aPath)

        Parameters:
            aModel: OpenSim::Model const &
            aPath: OpenSim::GeometryPath &

        """
        return _opensim.PathPoint_connectToModelAndPath(self, *args)

    def update(self, *args):
        """
        update(PathPoint self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PathPoint_update(self, *args)

    def getVelocity(self, *args):
        """
        getVelocity(PathPoint self, State s, Vec3 aVelocity)

        Parameters:
            s: SimTK::State const &
            aVelocity: SimTK::Vec3 &

        """
        return _opensim.PathPoint_getVelocity(self, *args)

    def getdPointdQ(self, *args):
        """
        getdPointdQ(PathPoint self, State s) -> Vec3

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PathPoint_getdPointdQ(self, *args)

    def getDisplayer(self):
        """
        getDisplayer(PathPoint self) -> VisibleObject

        Parameters:
            self: OpenSim::PathPoint const *

        """
        return _opensim.PathPoint_getDisplayer(self)

    def updDisplayer(self):
        """
        updDisplayer(PathPoint self) -> VisibleObject

        Parameters:
            self: OpenSim::PathPoint *

        """
        return _opensim.PathPoint_updDisplayer(self)

    def updateGeometry(self):
        """
        updateGeometry(PathPoint self)

        Parameters:
            self: OpenSim::PathPoint *

        """
        return _opensim.PathPoint_updateGeometry(self)

    def makePathPointOfType(*args):
        """
        makePathPointOfType(PathPoint aPoint, std::string const & aNewTypeName) -> PathPoint

        Parameters:
            aPoint: OpenSim::PathPoint *
            aNewTypeName: std::string const &

        """
        return _opensim.PathPoint_makePathPointOfType(*args)

    if _newclass:makePathPointOfType = staticmethod(makePathPointOfType)
    __swig_getmethods__["makePathPointOfType"] = lambda x: makePathPointOfType
    def deletePathPoint(*args):
        """
        deletePathPoint(PathPoint aPoint)

        Parameters:
            aPoint: OpenSim::PathPoint *

        """
        return _opensim.PathPoint_deletePathPoint(*args)

    if _newclass:deletePathPoint = staticmethod(deletePathPoint)
    __swig_getmethods__["deletePathPoint"] = lambda x: deletePathPoint
PathPoint_swigregister = _opensim.PathPoint_swigregister
PathPoint_swigregister(PathPoint)

def PathPoint_safeDownCast(*args):
  """
    PathPoint_safeDownCast(OpenSimObject obj) -> PathPoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PathPoint_safeDownCast(*args)

def PathPoint_getClassName():
  """PathPoint_getClassName() -> std::string const &"""
  return _opensim.PathPoint_getClassName()

def PathPoint_makePathPointOfType(*args):
  """
    PathPoint_makePathPointOfType(PathPoint aPoint, std::string const & aNewTypeName) -> PathPoint

    Parameters:
        aPoint: OpenSim::PathPoint *
        aNewTypeName: std::string const &

    """
  return _opensim.PathPoint_makePathPointOfType(*args)

def PathPoint_deletePathPoint(*args):
  """
    PathPoint_deletePathPoint(PathPoint aPoint)

    Parameters:
        aPoint: OpenSim::PathPoint *

    """
  return _opensim.PathPoint_deletePathPoint(*args)

class PathWrapPoint(PathPoint):
    """Proxy of C++ OpenSim::PathWrapPoint class"""
    __swig_setmethods__ = {}
    for _s in [PathPoint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PathWrapPoint, name, value)
    __swig_getmethods__ = {}
    for _s in [PathPoint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PathWrapPoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PathWrapPoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PathWrapPoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PathWrapPoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PathWrapPoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PathWrapPoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PathWrapPoint self) -> PathWrapPoint

        Parameters:
            self: OpenSim::PathWrapPoint const *

        """
        return _opensim.PathWrapPoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PathWrapPoint self) -> std::string const &

        Parameters:
            self: OpenSim::PathWrapPoint const *

        """
        return _opensim.PathWrapPoint_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PathWrapPoint self) -> PathWrapPoint
        __init__(OpenSim::PathWrapPoint self, PathWrapPoint aPoint) -> PathWrapPoint

        Parameters:
            aPoint: OpenSim::PathWrapPoint const &

        """
        this = _opensim.new_PathWrapPoint(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_PathWrapPoint
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(PathWrapPoint self, PathWrapPoint aPoint)

        Parameters:
            aPoint: OpenSim::PathWrapPoint const &

        """
        return _opensim.PathWrapPoint_copyData(self, *args)

    def getWrapPath(self):
        """
        getWrapPath(PathWrapPoint self) -> OpenSim::Array< SimTK::Vec3 > &

        Parameters:
            self: OpenSim::PathWrapPoint *

        """
        return _opensim.PathWrapPoint_getWrapPath(self)

    def getWrapLength(self):
        """
        getWrapLength(PathWrapPoint self) -> double

        Parameters:
            self: OpenSim::PathWrapPoint const *

        """
        return _opensim.PathWrapPoint_getWrapLength(self)

    def setWrapLength(self, *args):
        """
        setWrapLength(PathWrapPoint self, double aLength)

        Parameters:
            aLength: double

        """
        return _opensim.PathWrapPoint_setWrapLength(self, *args)

    def getWrapObject(self):
        """
        getWrapObject(PathWrapPoint self) -> WrapObject

        Parameters:
            self: OpenSim::PathWrapPoint const *

        """
        return _opensim.PathWrapPoint_getWrapObject(self)

    def setWrapObject(self, *args):
        """
        setWrapObject(PathWrapPoint self, WrapObject aWrapObject)

        Parameters:
            aWrapObject: OpenSim::WrapObject *

        """
        return _opensim.PathWrapPoint_setWrapObject(self, *args)

PathWrapPoint_swigregister = _opensim.PathWrapPoint_swigregister
PathWrapPoint_swigregister(PathWrapPoint)

def PathWrapPoint_safeDownCast(*args):
  """
    PathWrapPoint_safeDownCast(OpenSimObject obj) -> PathWrapPoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PathWrapPoint_safeDownCast(*args)

def PathWrapPoint_getClassName():
  """PathWrapPoint_getClassName() -> std::string const &"""
  return _opensim.PathWrapPoint_getClassName()

class ConditionalPathPoint(PathPoint):
    """Proxy of C++ OpenSim::ConditionalPathPoint class"""
    __swig_setmethods__ = {}
    for _s in [PathPoint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ConditionalPathPoint, name, value)
    __swig_getmethods__ = {}
    for _s in [PathPoint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ConditionalPathPoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ConditionalPathPoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ConditionalPathPoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ConditionalPathPoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ConditionalPathPoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ConditionalPathPoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ConditionalPathPoint self) -> ConditionalPathPoint

        Parameters:
            self: OpenSim::ConditionalPathPoint const *

        """
        return _opensim.ConditionalPathPoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ConditionalPathPoint self) -> std::string const &

        Parameters:
            self: OpenSim::ConditionalPathPoint const *

        """
        return _opensim.ConditionalPathPoint_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ConditionalPathPoint self) -> ConditionalPathPoint
        __init__(OpenSim::ConditionalPathPoint self, ConditionalPathPoint aPoint) -> ConditionalPathPoint

        Parameters:
            aPoint: OpenSim::ConditionalPathPoint const &

        """
        this = _opensim.new_ConditionalPathPoint(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ConditionalPathPoint
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(ConditionalPathPoint self, ConditionalPathPoint aPoint)

        Parameters:
            aPoint: OpenSim::ConditionalPathPoint const &

        """
        return _opensim.ConditionalPathPoint_copyData(self, *args)

    def init(self, *args):
        """
        init(ConditionalPathPoint self, PathPoint aPoint)

        Parameters:
            aPoint: OpenSim::PathPoint const &

        """
        return _opensim.ConditionalPathPoint_init(self, *args)

    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(ConditionalPathPoint self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(ConditionalPathPoint self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.ConditionalPathPoint_updateFromXMLNode(self, *args)

    def getRange(self):
        """
        getRange(ConditionalPathPoint self) -> ArrayDouble

        Parameters:
            self: OpenSim::ConditionalPathPoint const *

        """
        return _opensim.ConditionalPathPoint_getRange(self)

    def getCoordinate(self):
        """
        getCoordinate(ConditionalPathPoint self) -> Coordinate

        Parameters:
            self: OpenSim::ConditionalPathPoint const *

        """
        return _opensim.ConditionalPathPoint_getCoordinate(self)

    def getCoordinateName(self):
        """
        getCoordinateName(ConditionalPathPoint self) -> std::string const &

        Parameters:
            self: OpenSim::ConditionalPathPoint const *

        """
        return _opensim.ConditionalPathPoint_getCoordinateName(self)

ConditionalPathPoint_swigregister = _opensim.ConditionalPathPoint_swigregister
ConditionalPathPoint_swigregister(ConditionalPathPoint)

def ConditionalPathPoint_safeDownCast(*args):
  """
    ConditionalPathPoint_safeDownCast(OpenSimObject obj) -> ConditionalPathPoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ConditionalPathPoint_safeDownCast(*args)

def ConditionalPathPoint_getClassName():
  """ConditionalPathPoint_getClassName() -> std::string const &"""
  return _opensim.ConditionalPathPoint_getClassName()

class MovingPathPoint(PathPoint):
    """Proxy of C++ OpenSim::MovingPathPoint class"""
    __swig_setmethods__ = {}
    for _s in [PathPoint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MovingPathPoint, name, value)
    __swig_getmethods__ = {}
    for _s in [PathPoint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MovingPathPoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MovingPathPoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MovingPathPoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MovingPathPoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MovingPathPoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MovingPathPoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MovingPathPoint self) -> MovingPathPoint

        Parameters:
            self: OpenSim::MovingPathPoint const *

        """
        return _opensim.MovingPathPoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MovingPathPoint self) -> std::string const &

        Parameters:
            self: OpenSim::MovingPathPoint const *

        """
        return _opensim.MovingPathPoint_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MovingPathPoint self) -> MovingPathPoint
        __init__(OpenSim::MovingPathPoint self, MovingPathPoint aPoint) -> MovingPathPoint

        Parameters:
            aPoint: OpenSim::MovingPathPoint const &

        """
        this = _opensim.new_MovingPathPoint(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_MovingPathPoint
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(MovingPathPoint self, MovingPathPoint aPoint)

        Parameters:
            aPoint: OpenSim::MovingPathPoint const &

        """
        return _opensim.MovingPathPoint_copyData(self, *args)

    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(MovingPathPoint self, SimTK::Xml::Element & aNode, int versionNumber)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        """
        return _opensim.MovingPathPoint_updateFromXMLNode(self, *args)

    def init(self, *args):
        """
        init(MovingPathPoint self, PathPoint aPoint)

        Parameters:
            aPoint: OpenSim::PathPoint const &

        """
        return _opensim.MovingPathPoint_init(self, *args)

    def getXCoordinate(self):
        """
        getXCoordinate(MovingPathPoint self) -> Coordinate

        Parameters:
            self: OpenSim::MovingPathPoint const *

        """
        return _opensim.MovingPathPoint_getXCoordinate(self)

    def getYCoordinate(self):
        """
        getYCoordinate(MovingPathPoint self) -> Coordinate

        Parameters:
            self: OpenSim::MovingPathPoint const *

        """
        return _opensim.MovingPathPoint_getYCoordinate(self)

    def getZCoordinate(self):
        """
        getZCoordinate(MovingPathPoint self) -> Coordinate

        Parameters:
            self: OpenSim::MovingPathPoint const *

        """
        return _opensim.MovingPathPoint_getZCoordinate(self)

    def getdPointdQ(self, *args):
        """
        getdPointdQ(MovingPathPoint self, State s) -> Vec3

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.MovingPathPoint_getdPointdQ(self, *args)

    def getXCoordinateName(self):
        """
        getXCoordinateName(MovingPathPoint self) -> std::string const &

        Parameters:
            self: OpenSim::MovingPathPoint const *

        """
        return _opensim.MovingPathPoint_getXCoordinateName(self)

    def getYCoordinateName(self):
        """
        getYCoordinateName(MovingPathPoint self) -> std::string const &

        Parameters:
            self: OpenSim::MovingPathPoint const *

        """
        return _opensim.MovingPathPoint_getYCoordinateName(self)

    def getZCoordinateName(self):
        """
        getZCoordinateName(MovingPathPoint self) -> std::string const &

        Parameters:
            self: OpenSim::MovingPathPoint const *

        """
        return _opensim.MovingPathPoint_getZCoordinateName(self)

    def getXFunction(self):
        """
        getXFunction(MovingPathPoint self) -> Function

        Parameters:
            self: OpenSim::MovingPathPoint const *

        """
        return _opensim.MovingPathPoint_getXFunction(self)

    def getYFunction(self):
        """
        getYFunction(MovingPathPoint self) -> Function

        Parameters:
            self: OpenSim::MovingPathPoint const *

        """
        return _opensim.MovingPathPoint_getYFunction(self)

    def getZFunction(self):
        """
        getZFunction(MovingPathPoint self) -> Function

        Parameters:
            self: OpenSim::MovingPathPoint const *

        """
        return _opensim.MovingPathPoint_getZFunction(self)

    def scale(self, *args):
        """
        scale(MovingPathPoint self, State s, Vec3 aScaleFactors)

        Parameters:
            s: SimTK::State const &
            aScaleFactors: SimTK::Vec3 const &

        """
        return _opensim.MovingPathPoint_scale(self, *args)

MovingPathPoint_swigregister = _opensim.MovingPathPoint_swigregister
MovingPathPoint_swigregister(MovingPathPoint)

def MovingPathPoint_safeDownCast(*args):
  """
    MovingPathPoint_safeDownCast(OpenSimObject obj) -> MovingPathPoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MovingPathPoint_safeDownCast(*args)

def MovingPathPoint_getClassName():
  """MovingPathPoint_getClassName() -> std::string const &"""
  return _opensim.MovingPathPoint_getClassName()

class SetPathPoint(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::PathPoint)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetPathPoint, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetPathPoint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetPathPoint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetPathPoint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetPathPoint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetPathPoint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetPathPoint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetPathPoint self) -> SetPathPoint

        Parameters:
            self: OpenSim::Set< OpenSim::PathPoint > const *

        """
        return _opensim.SetPathPoint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetPathPoint self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::PathPoint > const *

        """
        return _opensim.SetPathPoint_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetPathPoint
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::PathPoint)> self) -> SetPathPoint
        __init__(OpenSim::Set<(OpenSim::PathPoint)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetPathPoint

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::PathPoint)> self, std::string const & aFileName) -> SetPathPoint

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::PathPoint)> self, SetPathPoint aSet) -> SetPathPoint

        Parameters:
            aSet: OpenSim::Set< OpenSim::PathPoint > const &

        """
        this = _opensim.new_SetPathPoint(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetPathPoint self)

        Parameters:
            self: OpenSim::Set< OpenSim::PathPoint > *

        """
        return _opensim.SetPathPoint_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetPathPoint self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetPathPoint_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetPathPoint self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetPathPoint_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetPathPoint self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::PathPoint > const *

        """
        return _opensim.SetPathPoint_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetPathPoint self, PathPoint aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::PathPoint const *
            aStartIndex: int

        getIndex(SetPathPoint self, PathPoint aObject) -> int

        Parameters:
            aObject: OpenSim::PathPoint const *

        getIndex(SetPathPoint self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetPathPoint self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetPathPoint_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetPathPoint self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetPathPoint_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetPathPoint self, PathPoint aObject) -> bool

        Parameters:
            aObject: OpenSim::PathPoint *

        """
        return _opensim.SetPathPoint_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetPathPoint self, PathPoint aObject) -> bool

        Parameters:
            aObject: OpenSim::PathPoint const &

        """
        return _opensim.SetPathPoint_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetPathPoint self, int aIndex, PathPoint aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::PathPoint *

        """
        return _opensim.SetPathPoint_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetPathPoint self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetPathPoint self, PathPoint aObject) -> bool

        Parameters:
            aObject: OpenSim::PathPoint const *

        """
        return _opensim.SetPathPoint_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetPathPoint self)

        Parameters:
            self: OpenSim::Set< OpenSim::PathPoint > *

        """
        return _opensim.SetPathPoint_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetPathPoint self, int aIndex, PathPoint aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::PathPoint *
            preserveGroups: bool

        set(SetPathPoint self, int aIndex, PathPoint aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::PathPoint *

        """
        return _opensim.SetPathPoint_set(self, *args)

    def get(self, *args):
        """
        get(SetPathPoint self, int aIndex) -> PathPoint

        Parameters:
            aIndex: int

        get(SetPathPoint self, std::string const & aName) -> PathPoint

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetPathPoint_get(self, *args)

    def contains(self, *args):
        """
        contains(SetPathPoint self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetPathPoint_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetPathPoint self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetPathPoint_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetPathPoint self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::PathPoint > const *

        """
        return _opensim.SetPathPoint_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetPathPoint self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetPathPoint_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetPathPoint self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetPathPoint_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetPathPoint self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetPathPoint_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetPathPoint self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetPathPoint_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetPathPoint self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetPathPoint_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetPathPoint self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetPathPoint self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetPathPoint_getGroup(self, *args)

SetPathPoint_swigregister = _opensim.SetPathPoint_swigregister
SetPathPoint_swigregister(SetPathPoint)

def SetPathPoint_safeDownCast(*args):
  """
    SetPathPoint_safeDownCast(OpenSimObject obj) -> SetPathPoint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetPathPoint_safeDownCast(*args)

def SetPathPoint_getClassName():
  """SetPathPoint_getClassName() -> std::string const &"""
  return _opensim.SetPathPoint_getClassName()

class ArrayPathPoint(_object):
    """Proxy of C++ OpenSim::Array<(p.OpenSim::PathPoint)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayPathPoint, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayPathPoint, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_ArrayPathPoint
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Array<(p.OpenSim::PathPoint)> self, PathPoint aDefaultValue=OpenSim::PathPoint *(), int aSize=0, int aCapacity=Array_CAPMIN) -> ArrayPathPoint

        Parameters:
            aDefaultValue: OpenSim::PathPoint *const &
            aSize: int
            aCapacity: int

        __init__(OpenSim::Array<(p.OpenSim::PathPoint)> self, PathPoint aDefaultValue=OpenSim::PathPoint *(), int aSize=0) -> ArrayPathPoint

        Parameters:
            aDefaultValue: OpenSim::PathPoint *const &
            aSize: int

        __init__(OpenSim::Array<(p.OpenSim::PathPoint)> self, PathPoint aDefaultValue=OpenSim::PathPoint *()) -> ArrayPathPoint

        Parameters:
            aDefaultValue: OpenSim::PathPoint *const &

        __init__(OpenSim::Array<(p.OpenSim::PathPoint)> self) -> ArrayPathPoint
        __init__(OpenSim::Array<(p.OpenSim::PathPoint)> self, ArrayPathPoint aArray) -> ArrayPathPoint

        Parameters:
            aArray: OpenSim::Array< OpenSim::PathPoint * > const &

        """
        this = _opensim.new_ArrayPathPoint(*args)
        try: self.this.append(this)
        except: self.this = this
    def arrayEquals(self, *args):
        """
        arrayEquals(ArrayPathPoint self, ArrayPathPoint aArray) -> bool

        Parameters:
            aArray: OpenSim::Array< OpenSim::PathPoint * > const &

        """
        return _opensim.ArrayPathPoint_arrayEquals(self, *args)

    def trim(self):
        """
        trim(ArrayPathPoint self)

        Parameters:
            self: OpenSim::Array< OpenSim::PathPoint * > *

        """
        return _opensim.ArrayPathPoint_trim(self)

    def setSize(self, *args):
        """
        setSize(ArrayPathPoint self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.ArrayPathPoint_setSize(self, *args)

    def getSize(self):
        """
        getSize(ArrayPathPoint self) -> int

        Parameters:
            self: OpenSim::Array< OpenSim::PathPoint * > const *

        """
        return _opensim.ArrayPathPoint_getSize(self)

    def size(self):
        """
        size(ArrayPathPoint self) -> int

        Parameters:
            self: OpenSim::Array< OpenSim::PathPoint * > const *

        """
        return _opensim.ArrayPathPoint_size(self)

    def append(self, *args):
        """
        append(ArrayPathPoint self, PathPoint aValue) -> int

        Parameters:
            aValue: OpenSim::PathPoint *const &

        append(ArrayPathPoint self, ArrayPathPoint aArray) -> int

        Parameters:
            aArray: OpenSim::Array< OpenSim::PathPoint * > const &

        """
        return _opensim.ArrayPathPoint_append(self, *args)

    def insert(self, *args):
        """
        insert(ArrayPathPoint self, int aIndex, PathPoint aValue) -> int

        Parameters:
            aIndex: int
            aValue: OpenSim::PathPoint *const &

        """
        return _opensim.ArrayPathPoint_insert(self, *args)

    def remove(self, *args):
        """
        remove(ArrayPathPoint self, int aIndex) -> int

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayPathPoint_remove(self, *args)

    def set(self, *args):
        """
        set(ArrayPathPoint self, int aIndex, PathPoint aValue)

        Parameters:
            aIndex: int
            aValue: OpenSim::PathPoint *const &

        """
        return _opensim.ArrayPathPoint_set(self, *args)

    def get(self, *args):
        """
        get(ArrayPathPoint self, int aIndex) -> PathPoint

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayPathPoint_get(self, *args)

    def getitem(self, *args):
        """
        getitem(ArrayPathPoint self, int index) -> PathPoint

        Parameters:
            index: int

        """
        return _opensim.ArrayPathPoint_getitem(self, *args)

    def setitem(self, *args):
        """
        setitem(ArrayPathPoint self, int index, PathPoint val)

        Parameters:
            index: int
            val: OpenSim::PathPoint *

        """
        return _opensim.ArrayPathPoint_setitem(self, *args)

    def getLast(self):
        """
        getLast(ArrayPathPoint self) -> PathPoint

        Parameters:
            self: OpenSim::Array< OpenSim::PathPoint * > const *

        """
        return _opensim.ArrayPathPoint_getLast(self)

    def findIndex(self, *args):
        """
        findIndex(ArrayPathPoint self, PathPoint aValue) -> int

        Parameters:
            aValue: OpenSim::PathPoint *const &

        """
        return _opensim.ArrayPathPoint_findIndex(self, *args)

    def rfindIndex(self, *args):
        """
        rfindIndex(ArrayPathPoint self, PathPoint aValue) -> int

        Parameters:
            aValue: OpenSim::PathPoint *const &

        """
        return _opensim.ArrayPathPoint_rfindIndex(self, *args)

    def searchBinary(self, *args):
        """
        searchBinary(ArrayPathPoint self, PathPoint aValue, bool aFindFirst=False, int aLo=-1, int aHi=-1) -> int

        Parameters:
            aValue: OpenSim::PathPoint *const &
            aFindFirst: bool
            aLo: int
            aHi: int

        searchBinary(ArrayPathPoint self, PathPoint aValue, bool aFindFirst=False, int aLo=-1) -> int

        Parameters:
            aValue: OpenSim::PathPoint *const &
            aFindFirst: bool
            aLo: int

        searchBinary(ArrayPathPoint self, PathPoint aValue, bool aFindFirst=False) -> int

        Parameters:
            aValue: OpenSim::PathPoint *const &
            aFindFirst: bool

        searchBinary(ArrayPathPoint self, PathPoint aValue) -> int

        Parameters:
            aValue: OpenSim::PathPoint *const &

        """
        return _opensim.ArrayPathPoint_searchBinary(self, *args)

ArrayPathPoint_swigregister = _opensim.ArrayPathPoint_swigregister
ArrayPathPoint_swigregister(ArrayPathPoint)

class PathPointSet(SetPathPoint):
    """Proxy of C++ OpenSim::PathPointSet class"""
    __swig_setmethods__ = {}
    for _s in [SetPathPoint]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PathPointSet, name, value)
    __swig_getmethods__ = {}
    for _s in [SetPathPoint]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PathPointSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PathPointSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PathPointSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PathPointSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PathPointSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PathPointSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PathPointSet self) -> PathPointSet

        Parameters:
            self: OpenSim::PathPointSet const *

        """
        return _opensim.PathPointSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PathPointSet self) -> std::string const &

        Parameters:
            self: OpenSim::PathPointSet const *

        """
        return _opensim.PathPointSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PathPointSet self) -> PathPointSet
        __init__(OpenSim::PathPointSet self, PathPointSet aPathPointSet) -> PathPointSet

        Parameters:
            aPathPointSet: OpenSim::PathPointSet const &

        """
        this = _opensim.new_PathPointSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_PathPointSet
    __del__ = lambda self : None;
    def adoptAndAppend(self, aPathPoint):
        aPathPoint._markAdopted()
        return super(PathPointSet, self).adoptAndAppend(aPathPoint)

PathPointSet_swigregister = _opensim.PathPointSet_swigregister
PathPointSet_swigregister(PathPointSet)

def PathPointSet_safeDownCast(*args):
  """
    PathPointSet_safeDownCast(OpenSimObject obj) -> PathPointSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PathPointSet_safeDownCast(*args)

def PathPointSet_getClassName():
  """PathPointSet_getClassName() -> std::string const &"""
  return _opensim.PathPointSet_getClassName()

class PointForceDirection(_object):
    """Proxy of C++ OpenSim::PointForceDirection class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, PointForceDirection, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, PointForceDirection, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_PointForceDirection
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::PointForceDirection self, Vec3 point, Body body, Vec3 direction, double scale=1) -> PointForceDirection

        Parameters:
            point: SimTK::Vec3
            body: OpenSim::Body &
            direction: SimTK::Vec3
            scale: double

        __init__(OpenSim::PointForceDirection self, Vec3 point, Body body, Vec3 direction) -> PointForceDirection

        Parameters:
            point: SimTK::Vec3
            body: OpenSim::Body &
            direction: SimTK::Vec3

        """
        this = _opensim.new_PointForceDirection(*args)
        try: self.this.append(this)
        except: self.this = this
    def point(self):
        """
        point(PointForceDirection self) -> Vec3

        Parameters:
            self: OpenSim::PointForceDirection *

        """
        return _opensim.PointForceDirection_point(self)

    def body(self):
        """
        body(PointForceDirection self) -> Body

        Parameters:
            self: OpenSim::PointForceDirection *

        """
        return _opensim.PointForceDirection_body(self)

    def direction(self):
        """
        direction(PointForceDirection self) -> Vec3

        Parameters:
            self: OpenSim::PointForceDirection *

        """
        return _opensim.PointForceDirection_direction(self)

    def scale(self):
        """
        scale(PointForceDirection self) -> double

        Parameters:
            self: OpenSim::PointForceDirection *

        """
        return _opensim.PointForceDirection_scale(self)

    def addToDirection(self, *args):
        """
        addToDirection(PointForceDirection self, Vec3 newDirection)

        Parameters:
            newDirection: SimTK::Vec3

        """
        return _opensim.PointForceDirection_addToDirection(self, *args)

PointForceDirection_swigregister = _opensim.PointForceDirection_swigregister
PointForceDirection_swigregister(PointForceDirection)

class ArrayPointForceDirection(_object):
    """Proxy of C++ OpenSim::Array<(p.OpenSim::PointForceDirection)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayPointForceDirection, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayPointForceDirection, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_ArrayPointForceDirection
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Array<(p.OpenSim::PointForceDirection)> self, PointForceDirection aDefaultValue=OpenSim::PointForceDirection *(), int aSize=0, 
            int aCapacity=Array_CAPMIN) -> ArrayPointForceDirection

        Parameters:
            aDefaultValue: OpenSim::PointForceDirection *const &
            aSize: int
            aCapacity: int

        __init__(OpenSim::Array<(p.OpenSim::PointForceDirection)> self, PointForceDirection aDefaultValue=OpenSim::PointForceDirection *(), int aSize=0) -> ArrayPointForceDirection

        Parameters:
            aDefaultValue: OpenSim::PointForceDirection *const &
            aSize: int

        __init__(OpenSim::Array<(p.OpenSim::PointForceDirection)> self, PointForceDirection aDefaultValue=OpenSim::PointForceDirection *()) -> ArrayPointForceDirection

        Parameters:
            aDefaultValue: OpenSim::PointForceDirection *const &

        __init__(OpenSim::Array<(p.OpenSim::PointForceDirection)> self) -> ArrayPointForceDirection
        __init__(OpenSim::Array<(p.OpenSim::PointForceDirection)> self, ArrayPointForceDirection aArray) -> ArrayPointForceDirection

        Parameters:
            aArray: OpenSim::Array< OpenSim::PointForceDirection * > const &

        """
        this = _opensim.new_ArrayPointForceDirection(*args)
        try: self.this.append(this)
        except: self.this = this
    def arrayEquals(self, *args):
        """
        arrayEquals(ArrayPointForceDirection self, ArrayPointForceDirection aArray) -> bool

        Parameters:
            aArray: OpenSim::Array< OpenSim::PointForceDirection * > const &

        """
        return _opensim.ArrayPointForceDirection_arrayEquals(self, *args)

    def trim(self):
        """
        trim(ArrayPointForceDirection self)

        Parameters:
            self: OpenSim::Array< OpenSim::PointForceDirection * > *

        """
        return _opensim.ArrayPointForceDirection_trim(self)

    def setSize(self, *args):
        """
        setSize(ArrayPointForceDirection self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.ArrayPointForceDirection_setSize(self, *args)

    def getSize(self):
        """
        getSize(ArrayPointForceDirection self) -> int

        Parameters:
            self: OpenSim::Array< OpenSim::PointForceDirection * > const *

        """
        return _opensim.ArrayPointForceDirection_getSize(self)

    def size(self):
        """
        size(ArrayPointForceDirection self) -> int

        Parameters:
            self: OpenSim::Array< OpenSim::PointForceDirection * > const *

        """
        return _opensim.ArrayPointForceDirection_size(self)

    def append(self, *args):
        """
        append(ArrayPointForceDirection self, PointForceDirection aValue) -> int

        Parameters:
            aValue: OpenSim::PointForceDirection *const &

        append(ArrayPointForceDirection self, ArrayPointForceDirection aArray) -> int

        Parameters:
            aArray: OpenSim::Array< OpenSim::PointForceDirection * > const &

        """
        return _opensim.ArrayPointForceDirection_append(self, *args)

    def insert(self, *args):
        """
        insert(ArrayPointForceDirection self, int aIndex, PointForceDirection aValue) -> int

        Parameters:
            aIndex: int
            aValue: OpenSim::PointForceDirection *const &

        """
        return _opensim.ArrayPointForceDirection_insert(self, *args)

    def remove(self, *args):
        """
        remove(ArrayPointForceDirection self, int aIndex) -> int

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayPointForceDirection_remove(self, *args)

    def set(self, *args):
        """
        set(ArrayPointForceDirection self, int aIndex, PointForceDirection aValue)

        Parameters:
            aIndex: int
            aValue: OpenSim::PointForceDirection *const &

        """
        return _opensim.ArrayPointForceDirection_set(self, *args)

    def get(self, *args):
        """
        get(ArrayPointForceDirection self, int aIndex) -> PointForceDirection

        Parameters:
            aIndex: int

        """
        return _opensim.ArrayPointForceDirection_get(self, *args)

    def getitem(self, *args):
        """
        getitem(ArrayPointForceDirection self, int index) -> PointForceDirection

        Parameters:
            index: int

        """
        return _opensim.ArrayPointForceDirection_getitem(self, *args)

    def setitem(self, *args):
        """
        setitem(ArrayPointForceDirection self, int index, PointForceDirection val)

        Parameters:
            index: int
            val: OpenSim::PointForceDirection *

        """
        return _opensim.ArrayPointForceDirection_setitem(self, *args)

    def getLast(self):
        """
        getLast(ArrayPointForceDirection self) -> PointForceDirection

        Parameters:
            self: OpenSim::Array< OpenSim::PointForceDirection * > const *

        """
        return _opensim.ArrayPointForceDirection_getLast(self)

    def findIndex(self, *args):
        """
        findIndex(ArrayPointForceDirection self, PointForceDirection aValue) -> int

        Parameters:
            aValue: OpenSim::PointForceDirection *const &

        """
        return _opensim.ArrayPointForceDirection_findIndex(self, *args)

    def rfindIndex(self, *args):
        """
        rfindIndex(ArrayPointForceDirection self, PointForceDirection aValue) -> int

        Parameters:
            aValue: OpenSim::PointForceDirection *const &

        """
        return _opensim.ArrayPointForceDirection_rfindIndex(self, *args)

    def searchBinary(self, *args):
        """
        searchBinary(ArrayPointForceDirection self, PointForceDirection aValue, bool aFindFirst=False, int aLo=-1, int aHi=-1) -> int

        Parameters:
            aValue: OpenSim::PointForceDirection *const &
            aFindFirst: bool
            aLo: int
            aHi: int

        searchBinary(ArrayPointForceDirection self, PointForceDirection aValue, bool aFindFirst=False, int aLo=-1) -> int

        Parameters:
            aValue: OpenSim::PointForceDirection *const &
            aFindFirst: bool
            aLo: int

        searchBinary(ArrayPointForceDirection self, PointForceDirection aValue, bool aFindFirst=False) -> int

        Parameters:
            aValue: OpenSim::PointForceDirection *const &
            aFindFirst: bool

        searchBinary(ArrayPointForceDirection self, PointForceDirection aValue) -> int

        Parameters:
            aValue: OpenSim::PointForceDirection *const &

        """
        return _opensim.ArrayPointForceDirection_searchBinary(self, *args)

ArrayPointForceDirection_swigregister = _opensim.ArrayPointForceDirection_swigregister
ArrayPointForceDirection_swigregister(ArrayPointForceDirection)

class GeometryPath(ModelComponent):
    """Proxy of C++ OpenSim::GeometryPath class"""
    __swig_setmethods__ = {}
    for _s in [ModelComponent]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, GeometryPath, name, value)
    __swig_getmethods__ = {}
    for _s in [ModelComponent]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, GeometryPath, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> GeometryPath

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.GeometryPath_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(GeometryPath self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.GeometryPath_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.GeometryPath_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(GeometryPath self) -> GeometryPath

        Parameters:
            self: OpenSim::GeometryPath const *

        """
        return _opensim.GeometryPath_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(GeometryPath self) -> std::string const &

        Parameters:
            self: OpenSim::GeometryPath const *

        """
        return _opensim.GeometryPath_getConcreteClassName(self)

    def __init__(self): 
        """__init__(OpenSim::GeometryPath self) -> GeometryPath"""
        this = _opensim.new_GeometryPath()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_GeometryPath
    __del__ = lambda self : None;
    def getPathPointSet(self):
        """
        getPathPointSet(GeometryPath self) -> PathPointSet

        Parameters:
            self: OpenSim::GeometryPath const *

        """
        return _opensim.GeometryPath_getPathPointSet(self)

    def updPathPointSet(self):
        """
        updPathPointSet(GeometryPath self) -> PathPointSet

        Parameters:
            self: OpenSim::GeometryPath *

        """
        return _opensim.GeometryPath_updPathPointSet(self)

    def getWrapSet(self):
        """
        getWrapSet(GeometryPath self) -> PathWrapSet

        Parameters:
            self: OpenSim::GeometryPath const *

        """
        return _opensim.GeometryPath_getWrapSet(self)

    def addPathWrap(self, *args):
        """
        addPathWrap(GeometryPath self, WrapObject aWrapObject)

        Parameters:
            aWrapObject: OpenSim::WrapObject &

        """
        return _opensim.GeometryPath_addPathWrap(self, *args)

    def addPathPoint(self, *args):
        """
        addPathPoint(GeometryPath self, State s, int aIndex, Body aBody) -> PathPoint

        Parameters:
            s: SimTK::State const &
            aIndex: int
            aBody: OpenSim::Body &

        """
        return _opensim.GeometryPath_addPathPoint(self, *args)

    def appendNewPathPoint(self, *args):
        """
        appendNewPathPoint(GeometryPath self, std::string const & proposedName, Body aBody, Vec3 aPositionOnBody) -> PathPoint

        Parameters:
            proposedName: std::string const &
            aBody: OpenSim::Body &
            aPositionOnBody: SimTK::Vec3 const &

        """
        return _opensim.GeometryPath_appendNewPathPoint(self, *args)

    def canDeletePathPoint(self, *args):
        """
        canDeletePathPoint(GeometryPath self, int aIndex) -> bool

        Parameters:
            aIndex: int

        """
        return _opensim.GeometryPath_canDeletePathPoint(self, *args)

    def deletePathPoint(self, *args):
        """
        deletePathPoint(GeometryPath self, State s, int aIndex) -> bool

        Parameters:
            s: SimTK::State const &
            aIndex: int

        """
        return _opensim.GeometryPath_deletePathPoint(self, *args)

    def moveUpPathWrap(self, *args):
        """
        moveUpPathWrap(GeometryPath self, State s, int aIndex)

        Parameters:
            s: SimTK::State const &
            aIndex: int

        """
        return _opensim.GeometryPath_moveUpPathWrap(self, *args)

    def moveDownPathWrap(self, *args):
        """
        moveDownPathWrap(GeometryPath self, State s, int aIndex)

        Parameters:
            s: SimTK::State const &
            aIndex: int

        """
        return _opensim.GeometryPath_moveDownPathWrap(self, *args)

    def deletePathWrap(self, *args):
        """
        deletePathWrap(GeometryPath self, State s, int aIndex)

        Parameters:
            s: SimTK::State const &
            aIndex: int

        """
        return _opensim.GeometryPath_deletePathWrap(self, *args)

    def replacePathPoint(self, *args):
        """
        replacePathPoint(GeometryPath self, State s, PathPoint aOldPathPoint, PathPoint aNewPathPoint) -> bool

        Parameters:
            s: SimTK::State const &
            aOldPathPoint: OpenSim::PathPoint *
            aNewPathPoint: OpenSim::PathPoint *

        """
        return _opensim.GeometryPath_replacePathPoint(self, *args)

    def getOwner(self):
        """
        getOwner(GeometryPath self) -> OpenSimObject

        Parameters:
            self: OpenSim::GeometryPath const *

        """
        return _opensim.GeometryPath_getOwner(self)

    def setOwner(self, *args):
        """
        setOwner(GeometryPath self, OpenSimObject anObject)

        Parameters:
            anObject: OpenSim::Object *

        """
        return _opensim.GeometryPath_setOwner(self, *args)

    def setDefaultColor(self, *args):
        """
        setDefaultColor(GeometryPath self, Vec3 color)

        Parameters:
            color: SimTK::Vec3 const &

        """
        return _opensim.GeometryPath_setDefaultColor(self, *args)

    def getDefaultColor(self):
        """
        getDefaultColor(GeometryPath self) -> Vec3

        Parameters:
            self: OpenSim::GeometryPath const *

        """
        return _opensim.GeometryPath_getDefaultColor(self)

    def setColor(self, *args):
        """
        setColor(GeometryPath self, State s, Vec3 color)

        Parameters:
            s: SimTK::State const &
            color: SimTK::Vec3 const &

        """
        return _opensim.GeometryPath_setColor(self, *args)

    def getColor(self, *args):
        """
        getColor(GeometryPath self, State s) -> Vec3

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.GeometryPath_getColor(self, *args)

    def getLength(self, *args):
        """
        getLength(GeometryPath self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.GeometryPath_getLength(self, *args)

    def setLength(self, *args):
        """
        setLength(GeometryPath self, State s, double length)

        Parameters:
            s: SimTK::State const &
            length: double

        """
        return _opensim.GeometryPath_setLength(self, *args)

    def getPreScaleLength(self, *args):
        """
        getPreScaleLength(GeometryPath self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.GeometryPath_getPreScaleLength(self, *args)

    def setPreScaleLength(self, *args):
        """
        setPreScaleLength(GeometryPath self, State s, double preScaleLength)

        Parameters:
            s: SimTK::State const &
            preScaleLength: double

        """
        return _opensim.GeometryPath_setPreScaleLength(self, *args)

    def getCurrentPath(self, *args):
        """
        getCurrentPath(GeometryPath self, State s) -> ArrayPathPoint

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.GeometryPath_getCurrentPath(self, *args)

    def getCurrentDisplayPath(self, *args):
        """
        getCurrentDisplayPath(GeometryPath self, State s) -> ArrayPathPoint

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.GeometryPath_getCurrentDisplayPath(self, *args)

    def getLengtheningSpeed(self, *args):
        """
        getLengtheningSpeed(GeometryPath self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.GeometryPath_getLengtheningSpeed(self, *args)

    def setLengtheningSpeed(self, *args):
        """
        setLengtheningSpeed(GeometryPath self, State s, double speed)

        Parameters:
            s: SimTK::State const &
            speed: double

        """
        return _opensim.GeometryPath_setLengtheningSpeed(self, *args)

    def getPointForceDirections(self, *args):
        """
        getPointForceDirections(GeometryPath self, State s, ArrayPointForceDirection rPFDs)

        Parameters:
            s: SimTK::State const &
            rPFDs: OpenSim::Array< OpenSim::PointForceDirection * > *

        """
        return _opensim.GeometryPath_getPointForceDirections(self, *args)

    def addInEquivalentForces(self, *args):
        """
        addInEquivalentForces(GeometryPath self, State state, double const & tension, VectorOfSpatialVec bodyForces, Vector mobilityForces)

        Parameters:
            state: SimTK::State const &
            tension: double const &
            bodyForces: SimTK::Vector_< SimTK::SpatialVec > &
            mobilityForces: SimTK::Vector &

        """
        return _opensim.GeometryPath_addInEquivalentForces(self, *args)

    def computeMomentArm(self, *args):
        """
        computeMomentArm(GeometryPath self, State s, Coordinate aCoord) -> double

        Parameters:
            s: SimTK::State const &
            aCoord: OpenSim::Coordinate const &

        """
        return _opensim.GeometryPath_computeMomentArm(self, *args)

    def preScale(self, *args):
        """
        preScale(GeometryPath self, State s, ScaleSet aScaleSet)

        Parameters:
            s: SimTK::State const &
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.GeometryPath_preScale(self, *args)

    def scale(self, *args):
        """
        scale(GeometryPath self, State s, ScaleSet aScaleSet)

        Parameters:
            s: SimTK::State const &
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.GeometryPath_scale(self, *args)

    def postScale(self, *args):
        """
        postScale(GeometryPath self, State s, ScaleSet aScaleSet)

        Parameters:
            s: SimTK::State const &
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.GeometryPath_postScale(self, *args)

    def getDisplayer(self):
        """
        getDisplayer(GeometryPath self) -> VisibleObject

        Parameters:
            self: OpenSim::GeometryPath const *

        """
        return _opensim.GeometryPath_getDisplayer(self)

    def updateDisplayer(self, *args):
        """
        updateDisplayer(GeometryPath self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.GeometryPath_updateDisplayer(self, *args)

    def updateGeometry(self, *args):
        """
        updateGeometry(GeometryPath self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.GeometryPath_updateGeometry(self, *args)

GeometryPath_swigregister = _opensim.GeometryPath_swigregister
GeometryPath_swigregister(GeometryPath)

def GeometryPath_safeDownCast(*args):
  """
    GeometryPath_safeDownCast(OpenSimObject obj) -> GeometryPath

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.GeometryPath_safeDownCast(*args)

def GeometryPath_getClassName():
  """GeometryPath_getClassName() -> std::string const &"""
  return _opensim.GeometryPath_getClassName()

class Ligament(Force):
    """Proxy of C++ OpenSim::Ligament class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Ligament, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Ligament, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Ligament

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Ligament_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Ligament self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Ligament_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Ligament_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Ligament self) -> Ligament

        Parameters:
            self: OpenSim::Ligament const *

        """
        return _opensim.Ligament_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Ligament self) -> std::string const &

        Parameters:
            self: OpenSim::Ligament const *

        """
        return _opensim.Ligament_getConcreteClassName(self)

    def copyProperty_GeometryPath(self, *args):
        """
        copyProperty_GeometryPath(Ligament self, Ligament source)

        Parameters:
            source: OpenSim::Ligament::Self const &

        """
        return _opensim.Ligament_copyProperty_GeometryPath(self, *args)

    def append_GeometryPath(self, *args):
        """
        append_GeometryPath(Ligament self, GeometryPath value) -> int

        Parameters:
            value: OpenSim::GeometryPath const &

        """
        return _opensim.Ligament_append_GeometryPath(self, *args)

    def constructProperty_GeometryPath(self, *args):
        """
        constructProperty_GeometryPath(Ligament self, GeometryPath initValue)

        Parameters:
            initValue: OpenSim::GeometryPath const &

        """
        return _opensim.Ligament_constructProperty_GeometryPath(self, *args)

    def get_GeometryPath(self, *args):
        """
        get_GeometryPath(Ligament self, int i) -> GeometryPath

        Parameters:
            i: int

        get_GeometryPath(Ligament self) -> GeometryPath

        Parameters:
            self: OpenSim::Ligament const *

        """
        return _opensim.Ligament_get_GeometryPath(self, *args)

    def upd_GeometryPath(self, *args):
        """
        upd_GeometryPath(Ligament self, int i) -> GeometryPath

        Parameters:
            i: int

        upd_GeometryPath(Ligament self) -> GeometryPath

        Parameters:
            self: OpenSim::Ligament *

        """
        return _opensim.Ligament_upd_GeometryPath(self, *args)

    def set_GeometryPath(self, *args):
        """
        set_GeometryPath(Ligament self, int i, GeometryPath value)

        Parameters:
            i: int
            value: OpenSim::GeometryPath const &

        set_GeometryPath(Ligament self, GeometryPath value)

        Parameters:
            value: OpenSim::GeometryPath const &

        """
        return _opensim.Ligament_set_GeometryPath(self, *args)

    def copyProperty_resting_length(self, *args):
        """
        copyProperty_resting_length(Ligament self, Ligament source)

        Parameters:
            source: OpenSim::Ligament::Self const &

        """
        return _opensim.Ligament_copyProperty_resting_length(self, *args)

    def append_resting_length(self, *args):
        """
        append_resting_length(Ligament self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Ligament_append_resting_length(self, *args)

    def constructProperty_resting_length(self, *args):
        """
        constructProperty_resting_length(Ligament self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Ligament_constructProperty_resting_length(self, *args)

    def get_resting_length(self, *args):
        """
        get_resting_length(Ligament self, int i) -> double const

        Parameters:
            i: int

        get_resting_length(Ligament self) -> double const &

        Parameters:
            self: OpenSim::Ligament const *

        """
        return _opensim.Ligament_get_resting_length(self, *args)

    def upd_resting_length(self, *args):
        """
        upd_resting_length(Ligament self, int i) -> double

        Parameters:
            i: int

        upd_resting_length(Ligament self) -> double &

        Parameters:
            self: OpenSim::Ligament *

        """
        return _opensim.Ligament_upd_resting_length(self, *args)

    def set_resting_length(self, *args):
        """
        set_resting_length(Ligament self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_resting_length(Ligament self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Ligament_set_resting_length(self, *args)

    def copyProperty_pcsa_force(self, *args):
        """
        copyProperty_pcsa_force(Ligament self, Ligament source)

        Parameters:
            source: OpenSim::Ligament::Self const &

        """
        return _opensim.Ligament_copyProperty_pcsa_force(self, *args)

    def append_pcsa_force(self, *args):
        """
        append_pcsa_force(Ligament self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Ligament_append_pcsa_force(self, *args)

    def constructProperty_pcsa_force(self, *args):
        """
        constructProperty_pcsa_force(Ligament self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Ligament_constructProperty_pcsa_force(self, *args)

    def get_pcsa_force(self, *args):
        """
        get_pcsa_force(Ligament self, int i) -> double const

        Parameters:
            i: int

        get_pcsa_force(Ligament self) -> double const &

        Parameters:
            self: OpenSim::Ligament const *

        """
        return _opensim.Ligament_get_pcsa_force(self, *args)

    def upd_pcsa_force(self, *args):
        """
        upd_pcsa_force(Ligament self, int i) -> double

        Parameters:
            i: int

        upd_pcsa_force(Ligament self) -> double &

        Parameters:
            self: OpenSim::Ligament *

        """
        return _opensim.Ligament_upd_pcsa_force(self, *args)

    def set_pcsa_force(self, *args):
        """
        set_pcsa_force(Ligament self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_pcsa_force(Ligament self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Ligament_set_pcsa_force(self, *args)

    def copyProperty_force_length_curve(self, *args):
        """
        copyProperty_force_length_curve(Ligament self, Ligament source)

        Parameters:
            source: OpenSim::Ligament::Self const &

        """
        return _opensim.Ligament_copyProperty_force_length_curve(self, *args)

    def append_force_length_curve(self, *args):
        """
        append_force_length_curve(Ligament self, Function value) -> int

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.Ligament_append_force_length_curve(self, *args)

    def constructProperty_force_length_curve(self, *args):
        """
        constructProperty_force_length_curve(Ligament self, Function initValue)

        Parameters:
            initValue: OpenSim::Function const &

        """
        return _opensim.Ligament_constructProperty_force_length_curve(self, *args)

    def get_force_length_curve(self, *args):
        """
        get_force_length_curve(Ligament self, int i) -> Function

        Parameters:
            i: int

        get_force_length_curve(Ligament self) -> Function

        Parameters:
            self: OpenSim::Ligament const *

        """
        return _opensim.Ligament_get_force_length_curve(self, *args)

    def upd_force_length_curve(self, *args):
        """
        upd_force_length_curve(Ligament self, int i) -> Function

        Parameters:
            i: int

        upd_force_length_curve(Ligament self) -> Function

        Parameters:
            self: OpenSim::Ligament *

        """
        return _opensim.Ligament_upd_force_length_curve(self, *args)

    def set_force_length_curve(self, *args):
        """
        set_force_length_curve(Ligament self, int i, Function value)

        Parameters:
            i: int
            value: OpenSim::Function const &

        set_force_length_curve(Ligament self, Function value)

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.Ligament_set_force_length_curve(self, *args)

    def __init__(self): 
        """__init__(OpenSim::Ligament self) -> Ligament"""
        this = _opensim.new_Ligament()
        try: self.this.append(this)
        except: self.this = this
    def getGeometryPath(self):
        """
        getGeometryPath(Ligament self) -> GeometryPath

        Parameters:
            self: OpenSim::Ligament const *

        """
        return _opensim.Ligament_getGeometryPath(self)

    def updGeometryPath(self):
        """
        updGeometryPath(Ligament self) -> GeometryPath

        Parameters:
            self: OpenSim::Ligament *

        """
        return _opensim.Ligament_updGeometryPath(self)

    def hasGeometryPath(self):
        """
        hasGeometryPath(Ligament self) -> bool

        Parameters:
            self: OpenSim::Ligament const *

        """
        return _opensim.Ligament_hasGeometryPath(self)

    def getLength(self, *args):
        """
        getLength(Ligament self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Ligament_getLength(self, *args)

    def getRestingLength(self):
        """
        getRestingLength(Ligament self) -> double

        Parameters:
            self: OpenSim::Ligament const *

        """
        return _opensim.Ligament_getRestingLength(self)

    def setRestingLength(self, *args):
        """
        setRestingLength(Ligament self, double aRestingLength) -> bool

        Parameters:
            aRestingLength: double

        """
        return _opensim.Ligament_setRestingLength(self, *args)

    def getMaxIsometricForce(self):
        """
        getMaxIsometricForce(Ligament self) -> double

        Parameters:
            self: OpenSim::Ligament const *

        """
        return _opensim.Ligament_getMaxIsometricForce(self)

    def setMaxIsometricForce(self, *args):
        """
        setMaxIsometricForce(Ligament self, double aMaxIsometricForce) -> bool

        Parameters:
            aMaxIsometricForce: double

        """
        return _opensim.Ligament_setMaxIsometricForce(self, *args)

    def getForceLengthCurve(self):
        """
        getForceLengthCurve(Ligament self) -> Function

        Parameters:
            self: OpenSim::Ligament const *

        """
        return _opensim.Ligament_getForceLengthCurve(self)

    def setForceLengthCurve(self, *args):
        """
        setForceLengthCurve(Ligament self, Function aForceLengthCurve) -> bool

        Parameters:
            aForceLengthCurve: OpenSim::Function const &

        """
        return _opensim.Ligament_setForceLengthCurve(self, *args)

    def getTension(self, *args):
        """
        getTension(Ligament self, State s) -> double const &

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Ligament_getTension(self, *args)

    def computeMomentArm(self, *args):
        """
        computeMomentArm(Ligament self, State s, Coordinate aCoord) -> double

        Parameters:
            s: SimTK::State const &
            aCoord: OpenSim::Coordinate &

        """
        return _opensim.Ligament_computeMomentArm(self, *args)

    def computeForce(self, *args):
        """
        computeForce(Ligament self, State s, VectorOfSpatialVec bodyForces, Vector generalizedForces)

        Parameters:
            s: SimTK::State const &
            bodyForces: SimTK::Vector_< SimTK::SpatialVec > &
            generalizedForces: SimTK::Vector &

        """
        return _opensim.Ligament_computeForce(self, *args)

    def preScale(self, *args):
        """
        preScale(Ligament self, State s, ScaleSet aScaleSet)

        Parameters:
            s: SimTK::State const &
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.Ligament_preScale(self, *args)

    def scale(self, *args):
        """
        scale(Ligament self, State s, ScaleSet aScaleSet)

        Parameters:
            s: SimTK::State const &
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.Ligament_scale(self, *args)

    def postScale(self, *args):
        """
        postScale(Ligament self, State s, ScaleSet aScaleSet)

        Parameters:
            s: SimTK::State const &
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.Ligament_postScale(self, *args)

    def getDisplayer(self):
        """
        getDisplayer(Ligament self) -> VisibleObject

        Parameters:
            self: OpenSim::Ligament const *

        """
        return _opensim.Ligament_getDisplayer(self)

    def updateDisplayer(self, *args):
        """
        updateDisplayer(Ligament self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Ligament_updateDisplayer(self, *args)

    __swig_destroy__ = _opensim.delete_Ligament
    __del__ = lambda self : None;
Ligament_swigregister = _opensim.Ligament_swigregister
Ligament_swigregister(Ligament)

def Ligament_safeDownCast(*args):
  """
    Ligament_safeDownCast(OpenSimObject obj) -> Ligament

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Ligament_safeDownCast(*args)

def Ligament_getClassName():
  """Ligament_getClassName() -> std::string const &"""
  return _opensim.Ligament_getClassName()

class PathActuator(Actuator):
    """Proxy of C++ OpenSim::PathActuator class"""
    __swig_setmethods__ = {}
    for _s in [Actuator]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PathActuator, name, value)
    __swig_getmethods__ = {}
    for _s in [Actuator]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PathActuator, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PathActuator

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PathActuator_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PathActuator self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PathActuator_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PathActuator_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PathActuator self) -> PathActuator

        Parameters:
            self: OpenSim::PathActuator const *

        """
        return _opensim.PathActuator_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PathActuator self) -> std::string const &

        Parameters:
            self: OpenSim::PathActuator const *

        """
        return _opensim.PathActuator_getConcreteClassName(self)

    def copyProperty_GeometryPath(self, *args):
        """
        copyProperty_GeometryPath(PathActuator self, PathActuator source)

        Parameters:
            source: OpenSim::PathActuator::Self const &

        """
        return _opensim.PathActuator_copyProperty_GeometryPath(self, *args)

    def append_GeometryPath(self, *args):
        """
        append_GeometryPath(PathActuator self, GeometryPath value) -> int

        Parameters:
            value: OpenSim::GeometryPath const &

        """
        return _opensim.PathActuator_append_GeometryPath(self, *args)

    def constructProperty_GeometryPath(self, *args):
        """
        constructProperty_GeometryPath(PathActuator self, GeometryPath initValue)

        Parameters:
            initValue: OpenSim::GeometryPath const &

        """
        return _opensim.PathActuator_constructProperty_GeometryPath(self, *args)

    def get_GeometryPath(self, *args):
        """
        get_GeometryPath(PathActuator self, int i) -> GeometryPath

        Parameters:
            i: int

        get_GeometryPath(PathActuator self) -> GeometryPath

        Parameters:
            self: OpenSim::PathActuator const *

        """
        return _opensim.PathActuator_get_GeometryPath(self, *args)

    def upd_GeometryPath(self, *args):
        """
        upd_GeometryPath(PathActuator self, int i) -> GeometryPath

        Parameters:
            i: int

        upd_GeometryPath(PathActuator self) -> GeometryPath

        Parameters:
            self: OpenSim::PathActuator *

        """
        return _opensim.PathActuator_upd_GeometryPath(self, *args)

    def set_GeometryPath(self, *args):
        """
        set_GeometryPath(PathActuator self, int i, GeometryPath value)

        Parameters:
            i: int
            value: OpenSim::GeometryPath const &

        set_GeometryPath(PathActuator self, GeometryPath value)

        Parameters:
            value: OpenSim::GeometryPath const &

        """
        return _opensim.PathActuator_set_GeometryPath(self, *args)

    def copyProperty_optimal_force(self, *args):
        """
        copyProperty_optimal_force(PathActuator self, PathActuator source)

        Parameters:
            source: OpenSim::PathActuator::Self const &

        """
        return _opensim.PathActuator_copyProperty_optimal_force(self, *args)

    def append_optimal_force(self, *args):
        """
        append_optimal_force(PathActuator self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.PathActuator_append_optimal_force(self, *args)

    def constructProperty_optimal_force(self, *args):
        """
        constructProperty_optimal_force(PathActuator self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.PathActuator_constructProperty_optimal_force(self, *args)

    def get_optimal_force(self, *args):
        """
        get_optimal_force(PathActuator self, int i) -> double const

        Parameters:
            i: int

        get_optimal_force(PathActuator self) -> double const &

        Parameters:
            self: OpenSim::PathActuator const *

        """
        return _opensim.PathActuator_get_optimal_force(self, *args)

    def upd_optimal_force(self, *args):
        """
        upd_optimal_force(PathActuator self, int i) -> double

        Parameters:
            i: int

        upd_optimal_force(PathActuator self) -> double &

        Parameters:
            self: OpenSim::PathActuator *

        """
        return _opensim.PathActuator_upd_optimal_force(self, *args)

    def set_optimal_force(self, *args):
        """
        set_optimal_force(PathActuator self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_optimal_force(PathActuator self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.PathActuator_set_optimal_force(self, *args)

    def __init__(self): 
        """__init__(OpenSim::PathActuator self) -> PathActuator"""
        this = _opensim.new_PathActuator()
        try: self.this.append(this)
        except: self.this = this
    def updGeometryPath(self):
        """
        updGeometryPath(PathActuator self) -> GeometryPath

        Parameters:
            self: OpenSim::PathActuator *

        """
        return _opensim.PathActuator_updGeometryPath(self)

    def getGeometryPath(self):
        """
        getGeometryPath(PathActuator self) -> GeometryPath

        Parameters:
            self: OpenSim::PathActuator const *

        """
        return _opensim.PathActuator_getGeometryPath(self)

    def hasGeometryPath(self):
        """
        hasGeometryPath(PathActuator self) -> bool

        Parameters:
            self: OpenSim::PathActuator const *

        """
        return _opensim.PathActuator_hasGeometryPath(self)

    def setOptimalForce(self, *args):
        """
        setOptimalForce(PathActuator self, double aOptimalForce)

        Parameters:
            aOptimalForce: double

        """
        return _opensim.PathActuator_setOptimalForce(self, *args)

    def getOptimalForce(self):
        """
        getOptimalForce(PathActuator self) -> double

        Parameters:
            self: OpenSim::PathActuator const *

        """
        return _opensim.PathActuator_getOptimalForce(self)

    def getLength(self, *args):
        """
        getLength(PathActuator self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PathActuator_getLength(self, *args)

    def getLengtheningSpeed(self, *args):
        """
        getLengtheningSpeed(PathActuator self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PathActuator_getLengtheningSpeed(self, *args)

    def getPower(self, *args):
        """
        getPower(PathActuator self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PathActuator_getPower(self, *args)

    def getStress(self, *args):
        """
        getStress(PathActuator self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PathActuator_getStress(self, *args)

    def addNewPathPoint(self, *args):
        """
        addNewPathPoint(PathActuator self, std::string const & proposedName, Body aBody, Vec3 aPositionOnBody)

        Parameters:
            proposedName: std::string const &
            aBody: OpenSim::Body &
            aPositionOnBody: SimTK::Vec3 const &

        """
        return _opensim.PathActuator_addNewPathPoint(self, *args)

    def computeForce(self, *args):
        """
        computeForce(PathActuator self, State state, VectorOfSpatialVec bodyForces, Vector mobilityForces)

        Parameters:
            state: SimTK::State const &
            bodyForces: SimTK::Vector_< SimTK::SpatialVec > &
            mobilityForces: SimTK::Vector &

        """
        return _opensim.PathActuator_computeForce(self, *args)

    def computeActuation(self, *args):
        """
        computeActuation(PathActuator self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PathActuator_computeActuation(self, *args)

    def computeMomentArm(self, *args):
        """
        computeMomentArm(PathActuator self, State s, Coordinate aCoord) -> double

        Parameters:
            s: SimTK::State const &
            aCoord: OpenSim::Coordinate &

        """
        return _opensim.PathActuator_computeMomentArm(self, *args)

    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(PathActuator self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(PathActuator self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.PathActuator_updateFromXMLNode(self, *args)

    def preScale(self, *args):
        """
        preScale(PathActuator self, State s, ScaleSet aScaleSet)

        Parameters:
            s: SimTK::State const &
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.PathActuator_preScale(self, *args)

    def scale(self, *args):
        """
        scale(PathActuator self, State s, ScaleSet aScaleSet)

        Parameters:
            s: SimTK::State const &
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.PathActuator_scale(self, *args)

    def postScale(self, *args):
        """
        postScale(PathActuator self, State s, ScaleSet aScaleSet)

        Parameters:
            s: SimTK::State const &
            aScaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.PathActuator_postScale(self, *args)

    def getDisplayer(self):
        """
        getDisplayer(PathActuator self) -> VisibleObject

        Parameters:
            self: OpenSim::PathActuator const *

        """
        return _opensim.PathActuator_getDisplayer(self)

    def updateDisplayer(self, *args):
        """
        updateDisplayer(PathActuator self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PathActuator_updateDisplayer(self, *args)

    __swig_destroy__ = _opensim.delete_PathActuator
    __del__ = lambda self : None;
PathActuator_swigregister = _opensim.PathActuator_swigregister
PathActuator_swigregister(PathActuator)

def PathActuator_safeDownCast(*args):
  """
    PathActuator_safeDownCast(OpenSimObject obj) -> PathActuator

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PathActuator_safeDownCast(*args)

def PathActuator_getClassName():
  """PathActuator_getClassName() -> std::string const &"""
  return _opensim.PathActuator_getClassName()

class Muscle(PathActuator):
    """Proxy of C++ OpenSim::Muscle class"""
    __swig_setmethods__ = {}
    for _s in [PathActuator]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Muscle, name, value)
    __swig_getmethods__ = {}
    for _s in [PathActuator]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Muscle, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Muscle

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Muscle_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Muscle self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Muscle_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Muscle_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Muscle self) -> Muscle

        Parameters:
            self: OpenSim::Muscle const *

        """
        return _opensim.Muscle_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Muscle self) -> std::string const &

        Parameters:
            self: OpenSim::Muscle const *

        """
        return _opensim.Muscle_getConcreteClassName(self)

    def copyProperty_max_isometric_force(self, *args):
        """
        copyProperty_max_isometric_force(Muscle self, Muscle source)

        Parameters:
            source: OpenSim::Muscle::Self const &

        """
        return _opensim.Muscle_copyProperty_max_isometric_force(self, *args)

    def append_max_isometric_force(self, *args):
        """
        append_max_isometric_force(Muscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Muscle_append_max_isometric_force(self, *args)

    def constructProperty_max_isometric_force(self, *args):
        """
        constructProperty_max_isometric_force(Muscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Muscle_constructProperty_max_isometric_force(self, *args)

    def get_max_isometric_force(self, *args):
        """
        get_max_isometric_force(Muscle self, int i) -> double const

        Parameters:
            i: int

        get_max_isometric_force(Muscle self) -> double const &

        Parameters:
            self: OpenSim::Muscle const *

        """
        return _opensim.Muscle_get_max_isometric_force(self, *args)

    def upd_max_isometric_force(self, *args):
        """
        upd_max_isometric_force(Muscle self, int i) -> double

        Parameters:
            i: int

        upd_max_isometric_force(Muscle self) -> double &

        Parameters:
            self: OpenSim::Muscle *

        """
        return _opensim.Muscle_upd_max_isometric_force(self, *args)

    def set_max_isometric_force(self, *args):
        """
        set_max_isometric_force(Muscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_max_isometric_force(Muscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Muscle_set_max_isometric_force(self, *args)

    def copyProperty_optimal_fiber_length(self, *args):
        """
        copyProperty_optimal_fiber_length(Muscle self, Muscle source)

        Parameters:
            source: OpenSim::Muscle::Self const &

        """
        return _opensim.Muscle_copyProperty_optimal_fiber_length(self, *args)

    def append_optimal_fiber_length(self, *args):
        """
        append_optimal_fiber_length(Muscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Muscle_append_optimal_fiber_length(self, *args)

    def constructProperty_optimal_fiber_length(self, *args):
        """
        constructProperty_optimal_fiber_length(Muscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Muscle_constructProperty_optimal_fiber_length(self, *args)

    def get_optimal_fiber_length(self, *args):
        """
        get_optimal_fiber_length(Muscle self, int i) -> double const

        Parameters:
            i: int

        get_optimal_fiber_length(Muscle self) -> double const &

        Parameters:
            self: OpenSim::Muscle const *

        """
        return _opensim.Muscle_get_optimal_fiber_length(self, *args)

    def upd_optimal_fiber_length(self, *args):
        """
        upd_optimal_fiber_length(Muscle self, int i) -> double

        Parameters:
            i: int

        upd_optimal_fiber_length(Muscle self) -> double &

        Parameters:
            self: OpenSim::Muscle *

        """
        return _opensim.Muscle_upd_optimal_fiber_length(self, *args)

    def set_optimal_fiber_length(self, *args):
        """
        set_optimal_fiber_length(Muscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_optimal_fiber_length(Muscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Muscle_set_optimal_fiber_length(self, *args)

    def copyProperty_tendon_slack_length(self, *args):
        """
        copyProperty_tendon_slack_length(Muscle self, Muscle source)

        Parameters:
            source: OpenSim::Muscle::Self const &

        """
        return _opensim.Muscle_copyProperty_tendon_slack_length(self, *args)

    def append_tendon_slack_length(self, *args):
        """
        append_tendon_slack_length(Muscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Muscle_append_tendon_slack_length(self, *args)

    def constructProperty_tendon_slack_length(self, *args):
        """
        constructProperty_tendon_slack_length(Muscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Muscle_constructProperty_tendon_slack_length(self, *args)

    def get_tendon_slack_length(self, *args):
        """
        get_tendon_slack_length(Muscle self, int i) -> double const

        Parameters:
            i: int

        get_tendon_slack_length(Muscle self) -> double const &

        Parameters:
            self: OpenSim::Muscle const *

        """
        return _opensim.Muscle_get_tendon_slack_length(self, *args)

    def upd_tendon_slack_length(self, *args):
        """
        upd_tendon_slack_length(Muscle self, int i) -> double

        Parameters:
            i: int

        upd_tendon_slack_length(Muscle self) -> double &

        Parameters:
            self: OpenSim::Muscle *

        """
        return _opensim.Muscle_upd_tendon_slack_length(self, *args)

    def set_tendon_slack_length(self, *args):
        """
        set_tendon_slack_length(Muscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_tendon_slack_length(Muscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Muscle_set_tendon_slack_length(self, *args)

    def copyProperty_pennation_angle_at_optimal(self, *args):
        """
        copyProperty_pennation_angle_at_optimal(Muscle self, Muscle source)

        Parameters:
            source: OpenSim::Muscle::Self const &

        """
        return _opensim.Muscle_copyProperty_pennation_angle_at_optimal(self, *args)

    def append_pennation_angle_at_optimal(self, *args):
        """
        append_pennation_angle_at_optimal(Muscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Muscle_append_pennation_angle_at_optimal(self, *args)

    def constructProperty_pennation_angle_at_optimal(self, *args):
        """
        constructProperty_pennation_angle_at_optimal(Muscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Muscle_constructProperty_pennation_angle_at_optimal(self, *args)

    def get_pennation_angle_at_optimal(self, *args):
        """
        get_pennation_angle_at_optimal(Muscle self, int i) -> double const

        Parameters:
            i: int

        get_pennation_angle_at_optimal(Muscle self) -> double const &

        Parameters:
            self: OpenSim::Muscle const *

        """
        return _opensim.Muscle_get_pennation_angle_at_optimal(self, *args)

    def upd_pennation_angle_at_optimal(self, *args):
        """
        upd_pennation_angle_at_optimal(Muscle self, int i) -> double

        Parameters:
            i: int

        upd_pennation_angle_at_optimal(Muscle self) -> double &

        Parameters:
            self: OpenSim::Muscle *

        """
        return _opensim.Muscle_upd_pennation_angle_at_optimal(self, *args)

    def set_pennation_angle_at_optimal(self, *args):
        """
        set_pennation_angle_at_optimal(Muscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_pennation_angle_at_optimal(Muscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Muscle_set_pennation_angle_at_optimal(self, *args)

    def copyProperty_max_contraction_velocity(self, *args):
        """
        copyProperty_max_contraction_velocity(Muscle self, Muscle source)

        Parameters:
            source: OpenSim::Muscle::Self const &

        """
        return _opensim.Muscle_copyProperty_max_contraction_velocity(self, *args)

    def append_max_contraction_velocity(self, *args):
        """
        append_max_contraction_velocity(Muscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Muscle_append_max_contraction_velocity(self, *args)

    def constructProperty_max_contraction_velocity(self, *args):
        """
        constructProperty_max_contraction_velocity(Muscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Muscle_constructProperty_max_contraction_velocity(self, *args)

    def get_max_contraction_velocity(self, *args):
        """
        get_max_contraction_velocity(Muscle self, int i) -> double const

        Parameters:
            i: int

        get_max_contraction_velocity(Muscle self) -> double const &

        Parameters:
            self: OpenSim::Muscle const *

        """
        return _opensim.Muscle_get_max_contraction_velocity(self, *args)

    def upd_max_contraction_velocity(self, *args):
        """
        upd_max_contraction_velocity(Muscle self, int i) -> double

        Parameters:
            i: int

        upd_max_contraction_velocity(Muscle self) -> double &

        Parameters:
            self: OpenSim::Muscle *

        """
        return _opensim.Muscle_upd_max_contraction_velocity(self, *args)

    def set_max_contraction_velocity(self, *args):
        """
        set_max_contraction_velocity(Muscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_max_contraction_velocity(Muscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Muscle_set_max_contraction_velocity(self, *args)

    def copyProperty_ignore_tendon_compliance(self, *args):
        """
        copyProperty_ignore_tendon_compliance(Muscle self, Muscle source)

        Parameters:
            source: OpenSim::Muscle::Self const &

        """
        return _opensim.Muscle_copyProperty_ignore_tendon_compliance(self, *args)

    def append_ignore_tendon_compliance(self, *args):
        """
        append_ignore_tendon_compliance(Muscle self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Muscle_append_ignore_tendon_compliance(self, *args)

    def constructProperty_ignore_tendon_compliance(self, *args):
        """
        constructProperty_ignore_tendon_compliance(Muscle self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Muscle_constructProperty_ignore_tendon_compliance(self, *args)

    def get_ignore_tendon_compliance(self, *args):
        """
        get_ignore_tendon_compliance(Muscle self, int i) -> bool const

        Parameters:
            i: int

        get_ignore_tendon_compliance(Muscle self) -> bool const &

        Parameters:
            self: OpenSim::Muscle const *

        """
        return _opensim.Muscle_get_ignore_tendon_compliance(self, *args)

    def upd_ignore_tendon_compliance(self, *args):
        """
        upd_ignore_tendon_compliance(Muscle self, int i) -> bool

        Parameters:
            i: int

        upd_ignore_tendon_compliance(Muscle self) -> bool &

        Parameters:
            self: OpenSim::Muscle *

        """
        return _opensim.Muscle_upd_ignore_tendon_compliance(self, *args)

    def set_ignore_tendon_compliance(self, *args):
        """
        set_ignore_tendon_compliance(Muscle self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_ignore_tendon_compliance(Muscle self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Muscle_set_ignore_tendon_compliance(self, *args)

    def copyProperty_ignore_activation_dynamics(self, *args):
        """
        copyProperty_ignore_activation_dynamics(Muscle self, Muscle source)

        Parameters:
            source: OpenSim::Muscle::Self const &

        """
        return _opensim.Muscle_copyProperty_ignore_activation_dynamics(self, *args)

    def append_ignore_activation_dynamics(self, *args):
        """
        append_ignore_activation_dynamics(Muscle self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.Muscle_append_ignore_activation_dynamics(self, *args)

    def constructProperty_ignore_activation_dynamics(self, *args):
        """
        constructProperty_ignore_activation_dynamics(Muscle self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.Muscle_constructProperty_ignore_activation_dynamics(self, *args)

    def get_ignore_activation_dynamics(self, *args):
        """
        get_ignore_activation_dynamics(Muscle self, int i) -> bool const

        Parameters:
            i: int

        get_ignore_activation_dynamics(Muscle self) -> bool const &

        Parameters:
            self: OpenSim::Muscle const *

        """
        return _opensim.Muscle_get_ignore_activation_dynamics(self, *args)

    def upd_ignore_activation_dynamics(self, *args):
        """
        upd_ignore_activation_dynamics(Muscle self, int i) -> bool

        Parameters:
            i: int

        upd_ignore_activation_dynamics(Muscle self) -> bool &

        Parameters:
            self: OpenSim::Muscle *

        """
        return _opensim.Muscle_upd_ignore_activation_dynamics(self, *args)

    def set_ignore_activation_dynamics(self, *args):
        """
        set_ignore_activation_dynamics(Muscle self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_ignore_activation_dynamics(Muscle self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.Muscle_set_ignore_activation_dynamics(self, *args)

    def getMaxIsometricForce(self):
        """
        getMaxIsometricForce(Muscle self) -> double

        Parameters:
            self: OpenSim::Muscle const *

        """
        return _opensim.Muscle_getMaxIsometricForce(self)

    def setMaxIsometricForce(self, *args):
        """
        setMaxIsometricForce(Muscle self, double maxIsometricForce)

        Parameters:
            maxIsometricForce: double

        """
        return _opensim.Muscle_setMaxIsometricForce(self, *args)

    def getOptimalFiberLength(self):
        """
        getOptimalFiberLength(Muscle self) -> double

        Parameters:
            self: OpenSim::Muscle const *

        """
        return _opensim.Muscle_getOptimalFiberLength(self)

    def setOptimalFiberLength(self, *args):
        """
        setOptimalFiberLength(Muscle self, double optimalFiberLength)

        Parameters:
            optimalFiberLength: double

        """
        return _opensim.Muscle_setOptimalFiberLength(self, *args)

    def getTendonSlackLength(self):
        """
        getTendonSlackLength(Muscle self) -> double

        Parameters:
            self: OpenSim::Muscle const *

        """
        return _opensim.Muscle_getTendonSlackLength(self)

    def setTendonSlackLength(self, *args):
        """
        setTendonSlackLength(Muscle self, double tendonSlackLength)

        Parameters:
            tendonSlackLength: double

        """
        return _opensim.Muscle_setTendonSlackLength(self, *args)

    def getPennationAngleAtOptimalFiberLength(self):
        """
        getPennationAngleAtOptimalFiberLength(Muscle self) -> double

        Parameters:
            self: OpenSim::Muscle const *

        """
        return _opensim.Muscle_getPennationAngleAtOptimalFiberLength(self)

    def setPennationAngleAtOptimalFiberLength(self, *args):
        """
        setPennationAngleAtOptimalFiberLength(Muscle self, double pennationAngle)

        Parameters:
            pennationAngle: double

        """
        return _opensim.Muscle_setPennationAngleAtOptimalFiberLength(self, *args)

    def getMaxContractionVelocity(self):
        """
        getMaxContractionVelocity(Muscle self) -> double

        Parameters:
            self: OpenSim::Muscle const *

        """
        return _opensim.Muscle_getMaxContractionVelocity(self)

    def setMaxContractionVelocity(self, *args):
        """
        setMaxContractionVelocity(Muscle self, double maxContractionVelocity)

        Parameters:
            maxContractionVelocity: double

        """
        return _opensim.Muscle_setMaxContractionVelocity(self, *args)

    def getIgnoreTendonCompliance(self, *args):
        """
        getIgnoreTendonCompliance(Muscle self, State s) -> bool

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getIgnoreTendonCompliance(self, *args)

    def setIgnoreTendonCompliance(self, *args):
        """
        setIgnoreTendonCompliance(Muscle self, State s, bool ignore)

        Parameters:
            s: SimTK::State &
            ignore: bool

        """
        return _opensim.Muscle_setIgnoreTendonCompliance(self, *args)

    def getIgnoreActivationDynamics(self, *args):
        """
        getIgnoreActivationDynamics(Muscle self, State s) -> bool

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getIgnoreActivationDynamics(self, *args)

    def setIgnoreActivationDynamics(self, *args):
        """
        setIgnoreActivationDynamics(Muscle self, State s, bool ignore)

        Parameters:
            s: SimTK::State &
            ignore: bool

        """
        return _opensim.Muscle_setIgnoreActivationDynamics(self, *args)

    def getActivation(self, *args):
        """
        getActivation(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getActivation(self, *args)

    def getFiberLength(self, *args):
        """
        getFiberLength(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getFiberLength(self, *args)

    def getPennationAngle(self, *args):
        """
        getPennationAngle(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getPennationAngle(self, *args)

    def getCosPennationAngle(self, *args):
        """
        getCosPennationAngle(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getCosPennationAngle(self, *args)

    def getTendonLength(self, *args):
        """
        getTendonLength(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getTendonLength(self, *args)

    def getNormalizedFiberLength(self, *args):
        """
        getNormalizedFiberLength(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getNormalizedFiberLength(self, *args)

    def getFiberLengthAlongTendon(self, *args):
        """
        getFiberLengthAlongTendon(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getFiberLengthAlongTendon(self, *args)

    def getTendonStrain(self, *args):
        """
        getTendonStrain(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getTendonStrain(self, *args)

    def getFiberPotentialEnergy(self, *args):
        """
        getFiberPotentialEnergy(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getFiberPotentialEnergy(self, *args)

    def getTendonPotentialEnergy(self, *args):
        """
        getTendonPotentialEnergy(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getTendonPotentialEnergy(self, *args)

    def getMusclePotentialEnergy(self, *args):
        """
        getMusclePotentialEnergy(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getMusclePotentialEnergy(self, *args)

    def getPassiveForceMultiplier(self, *args):
        """
        getPassiveForceMultiplier(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getPassiveForceMultiplier(self, *args)

    def getActiveForceLengthMultiplier(self, *args):
        """
        getActiveForceLengthMultiplier(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getActiveForceLengthMultiplier(self, *args)

    def getFiberVelocity(self, *args):
        """
        getFiberVelocity(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getFiberVelocity(self, *args)

    def getNormalizedFiberVelocity(self, *args):
        """
        getNormalizedFiberVelocity(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getNormalizedFiberVelocity(self, *args)

    def getFiberVelocityAlongTendon(self, *args):
        """
        getFiberVelocityAlongTendon(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getFiberVelocityAlongTendon(self, *args)

    def getPennationAngularVelocity(self, *args):
        """
        getPennationAngularVelocity(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getPennationAngularVelocity(self, *args)

    def getTendonVelocity(self, *args):
        """
        getTendonVelocity(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getTendonVelocity(self, *args)

    def getForceVelocityMultiplier(self, *args):
        """
        getForceVelocityMultiplier(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getForceVelocityMultiplier(self, *args)

    def getFiberForce(self, *args):
        """
        getFiberForce(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getFiberForce(self, *args)

    def getFiberForceAlongTendon(self, *args):
        """
        getFiberForceAlongTendon(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getFiberForceAlongTendon(self, *args)

    def getActiveFiberForce(self, *args):
        """
        getActiveFiberForce(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getActiveFiberForce(self, *args)

    def getPassiveFiberForce(self, *args):
        """
        getPassiveFiberForce(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getPassiveFiberForce(self, *args)

    def getActiveFiberForceAlongTendon(self, *args):
        """
        getActiveFiberForceAlongTendon(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getActiveFiberForceAlongTendon(self, *args)

    def getPassiveFiberForceAlongTendon(self, *args):
        """
        getPassiveFiberForceAlongTendon(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getPassiveFiberForceAlongTendon(self, *args)

    def getTendonForce(self, *args):
        """
        getTendonForce(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getTendonForce(self, *args)

    def getFiberStiffness(self, *args):
        """
        getFiberStiffness(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getFiberStiffness(self, *args)

    def getFiberStiffnessAlongTendon(self, *args):
        """
        getFiberStiffnessAlongTendon(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getFiberStiffnessAlongTendon(self, *args)

    def getTendonStiffness(self, *args):
        """
        getTendonStiffness(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getTendonStiffness(self, *args)

    def getMuscleStiffness(self, *args):
        """
        getMuscleStiffness(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getMuscleStiffness(self, *args)

    def getFiberActivePower(self, *args):
        """
        getFiberActivePower(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getFiberActivePower(self, *args)

    def getFiberPassivePower(self, *args):
        """
        getFiberPassivePower(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getFiberPassivePower(self, *args)

    def getTendonPower(self, *args):
        """
        getTendonPower(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getTendonPower(self, *args)

    def getMusclePower(self, *args):
        """
        getMusclePower(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getMusclePower(self, *args)

    def getStress(self, *args):
        """
        getStress(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getStress(self, *args)

    def setExcitation(self, *args):
        """
        setExcitation(Muscle self, State s, double excitation)

        Parameters:
            s: SimTK::State &
            excitation: double

        """
        return _opensim.Muscle_setExcitation(self, *args)

    def getExcitation(self, *args):
        """
        getExcitation(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_getExcitation(self, *args)

    def setActivation(self, *args):
        """
        setActivation(Muscle self, State s, double activation)

        Parameters:
            s: SimTK::State &
            activation: double

        """
        return _opensim.Muscle_setActivation(self, *args)

    def computeActuation(self, *args):
        """
        computeActuation(Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Muscle_computeActuation(self, *args)

    def equilibrate(self, *args):
        """
        equilibrate(Muscle self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Muscle_equilibrate(self, *args)

    def calcInextensibleTendonActiveFiberForce(self, *args):
        """
        calcInextensibleTendonActiveFiberForce(Muscle self, State s, double aActivation) -> double

        Parameters:
            s: SimTK::State &
            aActivation: double

        """
        return _opensim.Muscle_calcInextensibleTendonActiveFiberForce(self, *args)

    __swig_destroy__ = _opensim.delete_Muscle
    __del__ = lambda self : None;
Muscle_swigregister = _opensim.Muscle_swigregister
Muscle_swigregister(Muscle)

def Muscle_safeDownCast(*args):
  """
    Muscle_safeDownCast(OpenSimObject obj) -> Muscle

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Muscle_safeDownCast(*args)

def Muscle_getClassName():
  """Muscle_getClassName() -> std::string const &"""
  return _opensim.Muscle_getClassName()

class ActivationFiberLengthMuscle(Muscle):
    """Proxy of C++ OpenSim::ActivationFiberLengthMuscle class"""
    __swig_setmethods__ = {}
    for _s in [Muscle]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ActivationFiberLengthMuscle, name, value)
    __swig_getmethods__ = {}
    for _s in [Muscle]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ActivationFiberLengthMuscle, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ActivationFiberLengthMuscle

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ActivationFiberLengthMuscle_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ActivationFiberLengthMuscle self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ActivationFiberLengthMuscle_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ActivationFiberLengthMuscle_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ActivationFiberLengthMuscle self) -> ActivationFiberLengthMuscle

        Parameters:
            self: OpenSim::ActivationFiberLengthMuscle const *

        """
        return _opensim.ActivationFiberLengthMuscle_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ActivationFiberLengthMuscle self) -> std::string const &

        Parameters:
            self: OpenSim::ActivationFiberLengthMuscle const *

        """
        return _opensim.ActivationFiberLengthMuscle_getConcreteClassName(self)

    def copyProperty_default_activation(self, *args):
        """
        copyProperty_default_activation(ActivationFiberLengthMuscle self, ActivationFiberLengthMuscle source)

        Parameters:
            source: OpenSim::ActivationFiberLengthMuscle::Self const &

        """
        return _opensim.ActivationFiberLengthMuscle_copyProperty_default_activation(self, *args)

    def append_default_activation(self, *args):
        """
        append_default_activation(ActivationFiberLengthMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ActivationFiberLengthMuscle_append_default_activation(self, *args)

    def constructProperty_default_activation(self, *args):
        """
        constructProperty_default_activation(ActivationFiberLengthMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ActivationFiberLengthMuscle_constructProperty_default_activation(self, *args)

    def get_default_activation(self, *args):
        """
        get_default_activation(ActivationFiberLengthMuscle self, int i) -> double const

        Parameters:
            i: int

        get_default_activation(ActivationFiberLengthMuscle self) -> double const &

        Parameters:
            self: OpenSim::ActivationFiberLengthMuscle const *

        """
        return _opensim.ActivationFiberLengthMuscle_get_default_activation(self, *args)

    def upd_default_activation(self, *args):
        """
        upd_default_activation(ActivationFiberLengthMuscle self, int i) -> double

        Parameters:
            i: int

        upd_default_activation(ActivationFiberLengthMuscle self) -> double &

        Parameters:
            self: OpenSim::ActivationFiberLengthMuscle *

        """
        return _opensim.ActivationFiberLengthMuscle_upd_default_activation(self, *args)

    def set_default_activation(self, *args):
        """
        set_default_activation(ActivationFiberLengthMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_default_activation(ActivationFiberLengthMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ActivationFiberLengthMuscle_set_default_activation(self, *args)

    def copyProperty_default_fiber_length(self, *args):
        """
        copyProperty_default_fiber_length(ActivationFiberLengthMuscle self, ActivationFiberLengthMuscle source)

        Parameters:
            source: OpenSim::ActivationFiberLengthMuscle::Self const &

        """
        return _opensim.ActivationFiberLengthMuscle_copyProperty_default_fiber_length(self, *args)

    def append_default_fiber_length(self, *args):
        """
        append_default_fiber_length(ActivationFiberLengthMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ActivationFiberLengthMuscle_append_default_fiber_length(self, *args)

    def constructProperty_default_fiber_length(self, *args):
        """
        constructProperty_default_fiber_length(ActivationFiberLengthMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ActivationFiberLengthMuscle_constructProperty_default_fiber_length(self, *args)

    def get_default_fiber_length(self, *args):
        """
        get_default_fiber_length(ActivationFiberLengthMuscle self, int i) -> double const

        Parameters:
            i: int

        get_default_fiber_length(ActivationFiberLengthMuscle self) -> double const &

        Parameters:
            self: OpenSim::ActivationFiberLengthMuscle const *

        """
        return _opensim.ActivationFiberLengthMuscle_get_default_fiber_length(self, *args)

    def upd_default_fiber_length(self, *args):
        """
        upd_default_fiber_length(ActivationFiberLengthMuscle self, int i) -> double

        Parameters:
            i: int

        upd_default_fiber_length(ActivationFiberLengthMuscle self) -> double &

        Parameters:
            self: OpenSim::ActivationFiberLengthMuscle *

        """
        return _opensim.ActivationFiberLengthMuscle_upd_default_fiber_length(self, *args)

    def set_default_fiber_length(self, *args):
        """
        set_default_fiber_length(ActivationFiberLengthMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_default_fiber_length(ActivationFiberLengthMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ActivationFiberLengthMuscle_set_default_fiber_length(self, *args)

    def getDefaultActivation(self):
        """
        getDefaultActivation(ActivationFiberLengthMuscle self) -> double

        Parameters:
            self: OpenSim::ActivationFiberLengthMuscle const *

        """
        return _opensim.ActivationFiberLengthMuscle_getDefaultActivation(self)

    def setDefaultActivation(self, *args):
        """
        setDefaultActivation(ActivationFiberLengthMuscle self, double activation)

        Parameters:
            activation: double

        """
        return _opensim.ActivationFiberLengthMuscle_setDefaultActivation(self, *args)

    def getDefaultFiberLength(self):
        """
        getDefaultFiberLength(ActivationFiberLengthMuscle self) -> double

        Parameters:
            self: OpenSim::ActivationFiberLengthMuscle const *

        """
        return _opensim.ActivationFiberLengthMuscle_getDefaultFiberLength(self)

    def setDefaultFiberLength(self, *args):
        """
        setDefaultFiberLength(ActivationFiberLengthMuscle self, double length)

        Parameters:
            length: double

        """
        return _opensim.ActivationFiberLengthMuscle_setDefaultFiberLength(self, *args)

    def setActivation(self, *args):
        """
        setActivation(ActivationFiberLengthMuscle self, State s, double activation)

        Parameters:
            s: SimTK::State &
            activation: double

        """
        return _opensim.ActivationFiberLengthMuscle_setActivation(self, *args)

    def setFiberLength(self, *args):
        """
        setFiberLength(ActivationFiberLengthMuscle self, State s, double fiberLength)

        Parameters:
            s: SimTK::State &
            fiberLength: double

        """
        return _opensim.ActivationFiberLengthMuscle_setFiberLength(self, *args)

    def getStateVariableNames(self):
        """
        getStateVariableNames(ActivationFiberLengthMuscle self) -> ArrayStr

        Parameters:
            self: OpenSim::ActivationFiberLengthMuscle const *

        """
        return _opensim.ActivationFiberLengthMuscle_getStateVariableNames(self)

    def getStateVariableSystemIndex(self, *args):
        """
        getStateVariableSystemIndex(ActivationFiberLengthMuscle self, std::string const & stateVariableName) -> SimTK::SystemYIndex

        Parameters:
            stateVariableName: std::string const &

        """
        return _opensim.ActivationFiberLengthMuscle_getStateVariableSystemIndex(self, *args)

    def getActivationRate(self, *args):
        """
        getActivationRate(ActivationFiberLengthMuscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.ActivationFiberLengthMuscle_getActivationRate(self, *args)

    __swig_destroy__ = _opensim.delete_ActivationFiberLengthMuscle
    __del__ = lambda self : None;
ActivationFiberLengthMuscle_swigregister = _opensim.ActivationFiberLengthMuscle_swigregister
ActivationFiberLengthMuscle_swigregister(ActivationFiberLengthMuscle)

def ActivationFiberLengthMuscle_safeDownCast(*args):
  """
    ActivationFiberLengthMuscle_safeDownCast(OpenSimObject obj) -> ActivationFiberLengthMuscle

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ActivationFiberLengthMuscle_safeDownCast(*args)

def ActivationFiberLengthMuscle_getClassName():
  """ActivationFiberLengthMuscle_getClassName() -> std::string const &"""
  return _opensim.ActivationFiberLengthMuscle_getClassName()

class PointToPointSpring(Force):
    """Proxy of C++ OpenSim::PointToPointSpring class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PointToPointSpring, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PointToPointSpring, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PointToPointSpring

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PointToPointSpring_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PointToPointSpring self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PointToPointSpring_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PointToPointSpring_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PointToPointSpring self) -> PointToPointSpring

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PointToPointSpring self) -> std::string const &

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_getConcreteClassName(self)

    def copyProperty_body1(self, *args):
        """
        copyProperty_body1(PointToPointSpring self, PointToPointSpring source)

        Parameters:
            source: OpenSim::PointToPointSpring::Self const &

        """
        return _opensim.PointToPointSpring_copyProperty_body1(self, *args)

    def append_body1(self, *args):
        """
        append_body1(PointToPointSpring self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.PointToPointSpring_append_body1(self, *args)

    def constructProperty_body1(self, *args):
        """
        constructProperty_body1(PointToPointSpring self)
        constructProperty_body1(PointToPointSpring self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.PointToPointSpring_constructProperty_body1(self, *args)

    def get_body1(self, *args):
        """
        get_body1(PointToPointSpring self, int i) -> std::string const

        Parameters:
            i: int

        get_body1(PointToPointSpring self) -> std::string const &

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_get_body1(self, *args)

    def upd_body1(self, *args):
        """
        upd_body1(PointToPointSpring self, int i) -> std::string

        Parameters:
            i: int

        upd_body1(PointToPointSpring self) -> std::string &

        Parameters:
            self: OpenSim::PointToPointSpring *

        """
        return _opensim.PointToPointSpring_upd_body1(self, *args)

    def set_body1(self, *args):
        """
        set_body1(PointToPointSpring self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body1(PointToPointSpring self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.PointToPointSpring_set_body1(self, *args)

    def copyProperty_body2(self, *args):
        """
        copyProperty_body2(PointToPointSpring self, PointToPointSpring source)

        Parameters:
            source: OpenSim::PointToPointSpring::Self const &

        """
        return _opensim.PointToPointSpring_copyProperty_body2(self, *args)

    def append_body2(self, *args):
        """
        append_body2(PointToPointSpring self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.PointToPointSpring_append_body2(self, *args)

    def constructProperty_body2(self, *args):
        """
        constructProperty_body2(PointToPointSpring self)
        constructProperty_body2(PointToPointSpring self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.PointToPointSpring_constructProperty_body2(self, *args)

    def get_body2(self, *args):
        """
        get_body2(PointToPointSpring self, int i) -> std::string const

        Parameters:
            i: int

        get_body2(PointToPointSpring self) -> std::string const &

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_get_body2(self, *args)

    def upd_body2(self, *args):
        """
        upd_body2(PointToPointSpring self, int i) -> std::string

        Parameters:
            i: int

        upd_body2(PointToPointSpring self) -> std::string &

        Parameters:
            self: OpenSim::PointToPointSpring *

        """
        return _opensim.PointToPointSpring_upd_body2(self, *args)

    def set_body2(self, *args):
        """
        set_body2(PointToPointSpring self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body2(PointToPointSpring self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.PointToPointSpring_set_body2(self, *args)

    def copyProperty_point1(self, *args):
        """
        copyProperty_point1(PointToPointSpring self, PointToPointSpring source)

        Parameters:
            source: OpenSim::PointToPointSpring::Self const &

        """
        return _opensim.PointToPointSpring_copyProperty_point1(self, *args)

    def append_point1(self, *args):
        """
        append_point1(PointToPointSpring self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointToPointSpring_append_point1(self, *args)

    def constructProperty_point1(self, *args):
        """
        constructProperty_point1(PointToPointSpring self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.PointToPointSpring_constructProperty_point1(self, *args)

    def get_point1(self, *args):
        """
        get_point1(PointToPointSpring self, int i) -> Vec3

        Parameters:
            i: int

        get_point1(PointToPointSpring self) -> Vec3

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_get_point1(self, *args)

    def upd_point1(self, *args):
        """
        upd_point1(PointToPointSpring self, int i) -> Vec3

        Parameters:
            i: int

        upd_point1(PointToPointSpring self) -> Vec3

        Parameters:
            self: OpenSim::PointToPointSpring *

        """
        return _opensim.PointToPointSpring_upd_point1(self, *args)

    def set_point1(self, *args):
        """
        set_point1(PointToPointSpring self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_point1(PointToPointSpring self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointToPointSpring_set_point1(self, *args)

    def copyProperty_point2(self, *args):
        """
        copyProperty_point2(PointToPointSpring self, PointToPointSpring source)

        Parameters:
            source: OpenSim::PointToPointSpring::Self const &

        """
        return _opensim.PointToPointSpring_copyProperty_point2(self, *args)

    def append_point2(self, *args):
        """
        append_point2(PointToPointSpring self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointToPointSpring_append_point2(self, *args)

    def constructProperty_point2(self, *args):
        """
        constructProperty_point2(PointToPointSpring self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.PointToPointSpring_constructProperty_point2(self, *args)

    def get_point2(self, *args):
        """
        get_point2(PointToPointSpring self, int i) -> Vec3

        Parameters:
            i: int

        get_point2(PointToPointSpring self) -> Vec3

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_get_point2(self, *args)

    def upd_point2(self, *args):
        """
        upd_point2(PointToPointSpring self, int i) -> Vec3

        Parameters:
            i: int

        upd_point2(PointToPointSpring self) -> Vec3

        Parameters:
            self: OpenSim::PointToPointSpring *

        """
        return _opensim.PointToPointSpring_upd_point2(self, *args)

    def set_point2(self, *args):
        """
        set_point2(PointToPointSpring self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_point2(PointToPointSpring self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointToPointSpring_set_point2(self, *args)

    def copyProperty_stiffness(self, *args):
        """
        copyProperty_stiffness(PointToPointSpring self, PointToPointSpring source)

        Parameters:
            source: OpenSim::PointToPointSpring::Self const &

        """
        return _opensim.PointToPointSpring_copyProperty_stiffness(self, *args)

    def append_stiffness(self, *args):
        """
        append_stiffness(PointToPointSpring self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.PointToPointSpring_append_stiffness(self, *args)

    def constructProperty_stiffness(self, *args):
        """
        constructProperty_stiffness(PointToPointSpring self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.PointToPointSpring_constructProperty_stiffness(self, *args)

    def get_stiffness(self, *args):
        """
        get_stiffness(PointToPointSpring self, int i) -> double const

        Parameters:
            i: int

        get_stiffness(PointToPointSpring self) -> double const &

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_get_stiffness(self, *args)

    def upd_stiffness(self, *args):
        """
        upd_stiffness(PointToPointSpring self, int i) -> double

        Parameters:
            i: int

        upd_stiffness(PointToPointSpring self) -> double &

        Parameters:
            self: OpenSim::PointToPointSpring *

        """
        return _opensim.PointToPointSpring_upd_stiffness(self, *args)

    def set_stiffness(self, *args):
        """
        set_stiffness(PointToPointSpring self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_stiffness(PointToPointSpring self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.PointToPointSpring_set_stiffness(self, *args)

    def copyProperty_rest_length(self, *args):
        """
        copyProperty_rest_length(PointToPointSpring self, PointToPointSpring source)

        Parameters:
            source: OpenSim::PointToPointSpring::Self const &

        """
        return _opensim.PointToPointSpring_copyProperty_rest_length(self, *args)

    def append_rest_length(self, *args):
        """
        append_rest_length(PointToPointSpring self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.PointToPointSpring_append_rest_length(self, *args)

    def constructProperty_rest_length(self, *args):
        """
        constructProperty_rest_length(PointToPointSpring self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.PointToPointSpring_constructProperty_rest_length(self, *args)

    def get_rest_length(self, *args):
        """
        get_rest_length(PointToPointSpring self, int i) -> double const

        Parameters:
            i: int

        get_rest_length(PointToPointSpring self) -> double const &

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_get_rest_length(self, *args)

    def upd_rest_length(self, *args):
        """
        upd_rest_length(PointToPointSpring self, int i) -> double

        Parameters:
            i: int

        upd_rest_length(PointToPointSpring self) -> double &

        Parameters:
            self: OpenSim::PointToPointSpring *

        """
        return _opensim.PointToPointSpring_upd_rest_length(self, *args)

    def set_rest_length(self, *args):
        """
        set_rest_length(PointToPointSpring self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_rest_length(PointToPointSpring self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.PointToPointSpring_set_rest_length(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PointToPointSpring self) -> PointToPointSpring
        __init__(OpenSim::PointToPointSpring self, std::string body1Name, Vec3 point1, std::string body2Name, Vec3 point2, double stiffness, 
            double restlength) -> PointToPointSpring

        Parameters:
            body1Name: std::string
            point1: SimTK::Vec3
            body2Name: std::string
            point2: SimTK::Vec3
            stiffness: double
            restlength: double

        """
        this = _opensim.new_PointToPointSpring(*args)
        try: self.this.append(this)
        except: self.this = this
    def getDisplayer(self):
        """
        getDisplayer(PointToPointSpring self) -> VisibleObject

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_getDisplayer(self)

    def updateDisplayer(self, *args):
        """
        updateDisplayer(PointToPointSpring self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PointToPointSpring_updateDisplayer(self, *args)

    def updateGeometry(self, *args):
        """
        updateGeometry(PointToPointSpring self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PointToPointSpring_updateGeometry(self, *args)

    def setBody1Name(self, *args):
        """
        setBody1Name(PointToPointSpring self, std::string const & body1Name)

        Parameters:
            body1Name: std::string const &

        """
        return _opensim.PointToPointSpring_setBody1Name(self, *args)

    def setBody2Name(self, *args):
        """
        setBody2Name(PointToPointSpring self, std::string const & body2Name)

        Parameters:
            body2Name: std::string const &

        """
        return _opensim.PointToPointSpring_setBody2Name(self, *args)

    def getBody1Name(self):
        """
        getBody1Name(PointToPointSpring self) -> std::string const &

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_getBody1Name(self)

    def getBody2Name(self):
        """
        getBody2Name(PointToPointSpring self) -> std::string const &

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_getBody2Name(self)

    def setPoint1(self, *args):
        """
        setPoint1(PointToPointSpring self, Vec3 aPosition)

        Parameters:
            aPosition: SimTK::Vec3

        """
        return _opensim.PointToPointSpring_setPoint1(self, *args)

    def getPoint1(self):
        """
        getPoint1(PointToPointSpring self) -> Vec3

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_getPoint1(self)

    def setPoint2(self, *args):
        """
        setPoint2(PointToPointSpring self, Vec3 aPosition)

        Parameters:
            aPosition: SimTK::Vec3

        """
        return _opensim.PointToPointSpring_setPoint2(self, *args)

    def getPoint2(self):
        """
        getPoint2(PointToPointSpring self) -> Vec3

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_getPoint2(self)

    def setStiffness(self, *args):
        """
        setStiffness(PointToPointSpring self, double stiffness)

        Parameters:
            stiffness: double

        """
        return _opensim.PointToPointSpring_setStiffness(self, *args)

    def getStiffness(self):
        """
        getStiffness(PointToPointSpring self) -> double

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_getStiffness(self)

    def setRestlength(self, *args):
        """
        setRestlength(PointToPointSpring self, double restLength)

        Parameters:
            restLength: double

        """
        return _opensim.PointToPointSpring_setRestlength(self, *args)

    def getRestlength(self):
        """
        getRestlength(PointToPointSpring self) -> double

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_getRestlength(self)

    def connectToModel(self, *args):
        """
        connectToModel(PointToPointSpring self, Model model)

        Parameters:
            model: OpenSim::Model &

        """
        return _opensim.PointToPointSpring_connectToModel(self, *args)

    def addToSystem(self, *args):
        """
        addToSystem(PointToPointSpring self, SimTK::MultibodySystem & system)

        Parameters:
            system: SimTK::MultibodySystem &

        """
        return _opensim.PointToPointSpring_addToSystem(self, *args)

    def getRecordLabels(self):
        """
        getRecordLabels(PointToPointSpring self) -> ArrayStr

        Parameters:
            self: OpenSim::PointToPointSpring const *

        """
        return _opensim.PointToPointSpring_getRecordLabels(self)

    def getRecordValues(self, *args):
        """
        getRecordValues(PointToPointSpring self, State state) -> ArrayDouble

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.PointToPointSpring_getRecordValues(self, *args)

    __swig_destroy__ = _opensim.delete_PointToPointSpring
    __del__ = lambda self : None;
PointToPointSpring_swigregister = _opensim.PointToPointSpring_swigregister
PointToPointSpring_swigregister(PointToPointSpring)

def PointToPointSpring_safeDownCast(*args):
  """
    PointToPointSpring_safeDownCast(OpenSimObject obj) -> PointToPointSpring

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PointToPointSpring_safeDownCast(*args)

def PointToPointSpring_getClassName():
  """PointToPointSpring_getClassName() -> std::string const &"""
  return _opensim.PointToPointSpring_getClassName()

class ExpressionBasedPointToPointForce(Force):
    """Proxy of C++ OpenSim::ExpressionBasedPointToPointForce class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ExpressionBasedPointToPointForce, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ExpressionBasedPointToPointForce, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ExpressionBasedPointToPointForce

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ExpressionBasedPointToPointForce_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ExpressionBasedPointToPointForce self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ExpressionBasedPointToPointForce_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ExpressionBasedPointToPointForce_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ExpressionBasedPointToPointForce self) -> ExpressionBasedPointToPointForce

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce const *

        """
        return _opensim.ExpressionBasedPointToPointForce_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ExpressionBasedPointToPointForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce const *

        """
        return _opensim.ExpressionBasedPointToPointForce_getConcreteClassName(self)

    def copyProperty_body1(self, *args):
        """
        copyProperty_body1(ExpressionBasedPointToPointForce self, ExpressionBasedPointToPointForce source)

        Parameters:
            source: OpenSim::ExpressionBasedPointToPointForce::Self const &

        """
        return _opensim.ExpressionBasedPointToPointForce_copyProperty_body1(self, *args)

    def append_body1(self, *args):
        """
        append_body1(ExpressionBasedPointToPointForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedPointToPointForce_append_body1(self, *args)

    def constructProperty_body1(self, *args):
        """
        constructProperty_body1(ExpressionBasedPointToPointForce self)
        constructProperty_body1(ExpressionBasedPointToPointForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExpressionBasedPointToPointForce_constructProperty_body1(self, *args)

    def get_body1(self, *args):
        """
        get_body1(ExpressionBasedPointToPointForce self, int i) -> std::string const

        Parameters:
            i: int

        get_body1(ExpressionBasedPointToPointForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce const *

        """
        return _opensim.ExpressionBasedPointToPointForce_get_body1(self, *args)

    def upd_body1(self, *args):
        """
        upd_body1(ExpressionBasedPointToPointForce self, int i) -> std::string

        Parameters:
            i: int

        upd_body1(ExpressionBasedPointToPointForce self) -> std::string &

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce *

        """
        return _opensim.ExpressionBasedPointToPointForce_upd_body1(self, *args)

    def set_body1(self, *args):
        """
        set_body1(ExpressionBasedPointToPointForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body1(ExpressionBasedPointToPointForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedPointToPointForce_set_body1(self, *args)

    def copyProperty_body2(self, *args):
        """
        copyProperty_body2(ExpressionBasedPointToPointForce self, ExpressionBasedPointToPointForce source)

        Parameters:
            source: OpenSim::ExpressionBasedPointToPointForce::Self const &

        """
        return _opensim.ExpressionBasedPointToPointForce_copyProperty_body2(self, *args)

    def append_body2(self, *args):
        """
        append_body2(ExpressionBasedPointToPointForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedPointToPointForce_append_body2(self, *args)

    def constructProperty_body2(self, *args):
        """
        constructProperty_body2(ExpressionBasedPointToPointForce self)
        constructProperty_body2(ExpressionBasedPointToPointForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExpressionBasedPointToPointForce_constructProperty_body2(self, *args)

    def get_body2(self, *args):
        """
        get_body2(ExpressionBasedPointToPointForce self, int i) -> std::string const

        Parameters:
            i: int

        get_body2(ExpressionBasedPointToPointForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce const *

        """
        return _opensim.ExpressionBasedPointToPointForce_get_body2(self, *args)

    def upd_body2(self, *args):
        """
        upd_body2(ExpressionBasedPointToPointForce self, int i) -> std::string

        Parameters:
            i: int

        upd_body2(ExpressionBasedPointToPointForce self) -> std::string &

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce *

        """
        return _opensim.ExpressionBasedPointToPointForce_upd_body2(self, *args)

    def set_body2(self, *args):
        """
        set_body2(ExpressionBasedPointToPointForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body2(ExpressionBasedPointToPointForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedPointToPointForce_set_body2(self, *args)

    def copyProperty_point1(self, *args):
        """
        copyProperty_point1(ExpressionBasedPointToPointForce self, ExpressionBasedPointToPointForce source)

        Parameters:
            source: OpenSim::ExpressionBasedPointToPointForce::Self const &

        """
        return _opensim.ExpressionBasedPointToPointForce_copyProperty_point1(self, *args)

    def append_point1(self, *args):
        """
        append_point1(ExpressionBasedPointToPointForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedPointToPointForce_append_point1(self, *args)

    def constructProperty_point1(self, *args):
        """
        constructProperty_point1(ExpressionBasedPointToPointForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedPointToPointForce_constructProperty_point1(self, *args)

    def get_point1(self, *args):
        """
        get_point1(ExpressionBasedPointToPointForce self, int i) -> Vec3

        Parameters:
            i: int

        get_point1(ExpressionBasedPointToPointForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce const *

        """
        return _opensim.ExpressionBasedPointToPointForce_get_point1(self, *args)

    def upd_point1(self, *args):
        """
        upd_point1(ExpressionBasedPointToPointForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_point1(ExpressionBasedPointToPointForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce *

        """
        return _opensim.ExpressionBasedPointToPointForce_upd_point1(self, *args)

    def set_point1(self, *args):
        """
        set_point1(ExpressionBasedPointToPointForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_point1(ExpressionBasedPointToPointForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedPointToPointForce_set_point1(self, *args)

    def copyProperty_point2(self, *args):
        """
        copyProperty_point2(ExpressionBasedPointToPointForce self, ExpressionBasedPointToPointForce source)

        Parameters:
            source: OpenSim::ExpressionBasedPointToPointForce::Self const &

        """
        return _opensim.ExpressionBasedPointToPointForce_copyProperty_point2(self, *args)

    def append_point2(self, *args):
        """
        append_point2(ExpressionBasedPointToPointForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedPointToPointForce_append_point2(self, *args)

    def constructProperty_point2(self, *args):
        """
        constructProperty_point2(ExpressionBasedPointToPointForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedPointToPointForce_constructProperty_point2(self, *args)

    def get_point2(self, *args):
        """
        get_point2(ExpressionBasedPointToPointForce self, int i) -> Vec3

        Parameters:
            i: int

        get_point2(ExpressionBasedPointToPointForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce const *

        """
        return _opensim.ExpressionBasedPointToPointForce_get_point2(self, *args)

    def upd_point2(self, *args):
        """
        upd_point2(ExpressionBasedPointToPointForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_point2(ExpressionBasedPointToPointForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce *

        """
        return _opensim.ExpressionBasedPointToPointForce_upd_point2(self, *args)

    def set_point2(self, *args):
        """
        set_point2(ExpressionBasedPointToPointForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_point2(ExpressionBasedPointToPointForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedPointToPointForce_set_point2(self, *args)

    def copyProperty_expression(self, *args):
        """
        copyProperty_expression(ExpressionBasedPointToPointForce self, ExpressionBasedPointToPointForce source)

        Parameters:
            source: OpenSim::ExpressionBasedPointToPointForce::Self const &

        """
        return _opensim.ExpressionBasedPointToPointForce_copyProperty_expression(self, *args)

    def append_expression(self, *args):
        """
        append_expression(ExpressionBasedPointToPointForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedPointToPointForce_append_expression(self, *args)

    def constructProperty_expression(self, *args):
        """
        constructProperty_expression(ExpressionBasedPointToPointForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExpressionBasedPointToPointForce_constructProperty_expression(self, *args)

    def get_expression(self, *args):
        """
        get_expression(ExpressionBasedPointToPointForce self, int i) -> std::string const

        Parameters:
            i: int

        get_expression(ExpressionBasedPointToPointForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce const *

        """
        return _opensim.ExpressionBasedPointToPointForce_get_expression(self, *args)

    def upd_expression(self, *args):
        """
        upd_expression(ExpressionBasedPointToPointForce self, int i) -> std::string

        Parameters:
            i: int

        upd_expression(ExpressionBasedPointToPointForce self) -> std::string &

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce *

        """
        return _opensim.ExpressionBasedPointToPointForce_upd_expression(self, *args)

    def set_expression(self, *args):
        """
        set_expression(ExpressionBasedPointToPointForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_expression(ExpressionBasedPointToPointForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedPointToPointForce_set_expression(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ExpressionBasedPointToPointForce self) -> ExpressionBasedPointToPointForce
        __init__(OpenSim::ExpressionBasedPointToPointForce self, std::string const & body1Name, Vec3 point1, std::string const & body2Name, Vec3 point2, 
            std::string const & expression) -> ExpressionBasedPointToPointForce

        Parameters:
            body1Name: std::string const &
            point1: SimTK::Vec3 const &
            body2Name: std::string const &
            point2: SimTK::Vec3 const &
            expression: std::string const &

        """
        this = _opensim.new_ExpressionBasedPointToPointForce(*args)
        try: self.this.append(this)
        except: self.this = this
    def setBody1Name(self, *args):
        """
        setBody1Name(ExpressionBasedPointToPointForce self, std::string const & body1Name)

        Parameters:
            body1Name: std::string const &

        """
        return _opensim.ExpressionBasedPointToPointForce_setBody1Name(self, *args)

    def setBody2Name(self, *args):
        """
        setBody2Name(ExpressionBasedPointToPointForce self, std::string const & body2Name)

        Parameters:
            body2Name: std::string const &

        """
        return _opensim.ExpressionBasedPointToPointForce_setBody2Name(self, *args)

    def getBody1Name(self):
        """
        getBody1Name(ExpressionBasedPointToPointForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce const *

        """
        return _opensim.ExpressionBasedPointToPointForce_getBody1Name(self)

    def getBody2Name(self):
        """
        getBody2Name(ExpressionBasedPointToPointForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce const *

        """
        return _opensim.ExpressionBasedPointToPointForce_getBody2Name(self)

    def setPoint1(self, *args):
        """
        setPoint1(ExpressionBasedPointToPointForce self, Vec3 aPosition)

        Parameters:
            aPosition: SimTK::Vec3

        """
        return _opensim.ExpressionBasedPointToPointForce_setPoint1(self, *args)

    def getPoint1(self):
        """
        getPoint1(ExpressionBasedPointToPointForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce const *

        """
        return _opensim.ExpressionBasedPointToPointForce_getPoint1(self)

    def setPoint2(self, *args):
        """
        setPoint2(ExpressionBasedPointToPointForce self, Vec3 aPosition)

        Parameters:
            aPosition: SimTK::Vec3

        """
        return _opensim.ExpressionBasedPointToPointForce_setPoint2(self, *args)

    def getPoint2(self):
        """
        getPoint2(ExpressionBasedPointToPointForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce const *

        """
        return _opensim.ExpressionBasedPointToPointForce_getPoint2(self)

    def setExpression(self, *args):
        """
        setExpression(ExpressionBasedPointToPointForce self, std::string const & expression)

        Parameters:
            expression: std::string const &

        """
        return _opensim.ExpressionBasedPointToPointForce_setExpression(self, *args)

    def getForceMagnitude(self, *args):
        """
        getForceMagnitude(ExpressionBasedPointToPointForce self, State state) -> double const &

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ExpressionBasedPointToPointForce_getForceMagnitude(self, *args)

    def computeForce(self, *args):
        """
        computeForce(ExpressionBasedPointToPointForce self, State state, VectorOfSpatialVec bodyForces, Vector generalizedForces)

        Parameters:
            state: SimTK::State const &
            bodyForces: SimTK::Vector_< SimTK::SpatialVec > &
            generalizedForces: SimTK::Vector &

        """
        return _opensim.ExpressionBasedPointToPointForce_computeForce(self, *args)

    def getRecordLabels(self):
        """
        getRecordLabels(ExpressionBasedPointToPointForce self) -> ArrayStr

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce const *

        """
        return _opensim.ExpressionBasedPointToPointForce_getRecordLabels(self)

    def getRecordValues(self, *args):
        """
        getRecordValues(ExpressionBasedPointToPointForce self, State state) -> ArrayDouble

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ExpressionBasedPointToPointForce_getRecordValues(self, *args)

    def getDisplayer(self):
        """
        getDisplayer(ExpressionBasedPointToPointForce self) -> VisibleObject

        Parameters:
            self: OpenSim::ExpressionBasedPointToPointForce const *

        """
        return _opensim.ExpressionBasedPointToPointForce_getDisplayer(self)

    def updateDisplayer(self, *args):
        """
        updateDisplayer(ExpressionBasedPointToPointForce self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.ExpressionBasedPointToPointForce_updateDisplayer(self, *args)

    def updateGeometry(self, *args):
        """
        updateGeometry(ExpressionBasedPointToPointForce self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.ExpressionBasedPointToPointForce_updateGeometry(self, *args)

    __swig_destroy__ = _opensim.delete_ExpressionBasedPointToPointForce
    __del__ = lambda self : None;
ExpressionBasedPointToPointForce_swigregister = _opensim.ExpressionBasedPointToPointForce_swigregister
ExpressionBasedPointToPointForce_swigregister(ExpressionBasedPointToPointForce)

def ExpressionBasedPointToPointForce_safeDownCast(*args):
  """
    ExpressionBasedPointToPointForce_safeDownCast(OpenSimObject obj) -> ExpressionBasedPointToPointForce

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ExpressionBasedPointToPointForce_safeDownCast(*args)

def ExpressionBasedPointToPointForce_getClassName():
  """ExpressionBasedPointToPointForce_getClassName() -> std::string const &"""
  return _opensim.ExpressionBasedPointToPointForce_getClassName()

class ExpressionBasedCoordinateForce(Force):
    """Proxy of C++ OpenSim::ExpressionBasedCoordinateForce class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ExpressionBasedCoordinateForce, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ExpressionBasedCoordinateForce, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ExpressionBasedCoordinateForce

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ExpressionBasedCoordinateForce_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ExpressionBasedCoordinateForce self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ExpressionBasedCoordinateForce_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ExpressionBasedCoordinateForce_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ExpressionBasedCoordinateForce self) -> ExpressionBasedCoordinateForce

        Parameters:
            self: OpenSim::ExpressionBasedCoordinateForce const *

        """
        return _opensim.ExpressionBasedCoordinateForce_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ExpressionBasedCoordinateForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedCoordinateForce const *

        """
        return _opensim.ExpressionBasedCoordinateForce_getConcreteClassName(self)

    def copyProperty_coordinate(self, *args):
        """
        copyProperty_coordinate(ExpressionBasedCoordinateForce self, ExpressionBasedCoordinateForce source)

        Parameters:
            source: OpenSim::ExpressionBasedCoordinateForce::Self const &

        """
        return _opensim.ExpressionBasedCoordinateForce_copyProperty_coordinate(self, *args)

    def append_coordinate(self, *args):
        """
        append_coordinate(ExpressionBasedCoordinateForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedCoordinateForce_append_coordinate(self, *args)

    def constructProperty_coordinate(self, *args):
        """
        constructProperty_coordinate(ExpressionBasedCoordinateForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExpressionBasedCoordinateForce_constructProperty_coordinate(self, *args)

    def get_coordinate(self, *args):
        """
        get_coordinate(ExpressionBasedCoordinateForce self, int i) -> std::string const

        Parameters:
            i: int

        get_coordinate(ExpressionBasedCoordinateForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedCoordinateForce const *

        """
        return _opensim.ExpressionBasedCoordinateForce_get_coordinate(self, *args)

    def upd_coordinate(self, *args):
        """
        upd_coordinate(ExpressionBasedCoordinateForce self, int i) -> std::string

        Parameters:
            i: int

        upd_coordinate(ExpressionBasedCoordinateForce self) -> std::string &

        Parameters:
            self: OpenSim::ExpressionBasedCoordinateForce *

        """
        return _opensim.ExpressionBasedCoordinateForce_upd_coordinate(self, *args)

    def set_coordinate(self, *args):
        """
        set_coordinate(ExpressionBasedCoordinateForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_coordinate(ExpressionBasedCoordinateForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedCoordinateForce_set_coordinate(self, *args)

    def copyProperty_expression(self, *args):
        """
        copyProperty_expression(ExpressionBasedCoordinateForce self, ExpressionBasedCoordinateForce source)

        Parameters:
            source: OpenSim::ExpressionBasedCoordinateForce::Self const &

        """
        return _opensim.ExpressionBasedCoordinateForce_copyProperty_expression(self, *args)

    def append_expression(self, *args):
        """
        append_expression(ExpressionBasedCoordinateForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedCoordinateForce_append_expression(self, *args)

    def constructProperty_expression(self, *args):
        """
        constructProperty_expression(ExpressionBasedCoordinateForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExpressionBasedCoordinateForce_constructProperty_expression(self, *args)

    def get_expression(self, *args):
        """
        get_expression(ExpressionBasedCoordinateForce self, int i) -> std::string const

        Parameters:
            i: int

        get_expression(ExpressionBasedCoordinateForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedCoordinateForce const *

        """
        return _opensim.ExpressionBasedCoordinateForce_get_expression(self, *args)

    def upd_expression(self, *args):
        """
        upd_expression(ExpressionBasedCoordinateForce self, int i) -> std::string

        Parameters:
            i: int

        upd_expression(ExpressionBasedCoordinateForce self) -> std::string &

        Parameters:
            self: OpenSim::ExpressionBasedCoordinateForce *

        """
        return _opensim.ExpressionBasedCoordinateForce_upd_expression(self, *args)

    def set_expression(self, *args):
        """
        set_expression(ExpressionBasedCoordinateForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_expression(ExpressionBasedCoordinateForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedCoordinateForce_set_expression(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ExpressionBasedCoordinateForce self) -> ExpressionBasedCoordinateForce
        __init__(OpenSim::ExpressionBasedCoordinateForce self, std::string const & coordinate, std::string const & expression) -> ExpressionBasedCoordinateForce

        Parameters:
            coordinate: std::string const &
            expression: std::string const &

        """
        this = _opensim.new_ExpressionBasedCoordinateForce(*args)
        try: self.this.append(this)
        except: self.this = this
    def setCoordinateName(self, *args):
        """
        setCoordinateName(ExpressionBasedCoordinateForce self, std::string const & coord)

        Parameters:
            coord: std::string const &

        """
        return _opensim.ExpressionBasedCoordinateForce_setCoordinateName(self, *args)

    def getCoordinateName(self):
        """
        getCoordinateName(ExpressionBasedCoordinateForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedCoordinateForce const *

        """
        return _opensim.ExpressionBasedCoordinateForce_getCoordinateName(self)

    def setExpression(self, *args):
        """
        setExpression(ExpressionBasedCoordinateForce self, std::string const & expression)

        Parameters:
            expression: std::string const &

        """
        return _opensim.ExpressionBasedCoordinateForce_setExpression(self, *args)

    def getForceMagnitude(self, *args):
        """
        getForceMagnitude(ExpressionBasedCoordinateForce self, State state) -> double const &

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ExpressionBasedCoordinateForce_getForceMagnitude(self, *args)

    def computeForce(self, *args):
        """
        computeForce(ExpressionBasedCoordinateForce self, State state, VectorOfSpatialVec bodyForces, Vector generalizedForces)

        Parameters:
            state: SimTK::State const &
            bodyForces: SimTK::Vector_< SimTK::SpatialVec > &
            generalizedForces: SimTK::Vector &

        """
        return _opensim.ExpressionBasedCoordinateForce_computeForce(self, *args)

    def calcExpressionForce(self, *args):
        """
        calcExpressionForce(ExpressionBasedCoordinateForce self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.ExpressionBasedCoordinateForce_calcExpressionForce(self, *args)

    def getRecordLabels(self):
        """
        getRecordLabels(ExpressionBasedCoordinateForce self) -> ArrayStr

        Parameters:
            self: OpenSim::ExpressionBasedCoordinateForce const *

        """
        return _opensim.ExpressionBasedCoordinateForce_getRecordLabels(self)

    def getRecordValues(self, *args):
        """
        getRecordValues(ExpressionBasedCoordinateForce self, State state) -> ArrayDouble

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ExpressionBasedCoordinateForce_getRecordValues(self, *args)

    __swig_destroy__ = _opensim.delete_ExpressionBasedCoordinateForce
    __del__ = lambda self : None;
ExpressionBasedCoordinateForce_swigregister = _opensim.ExpressionBasedCoordinateForce_swigregister
ExpressionBasedCoordinateForce_swigregister(ExpressionBasedCoordinateForce)

def ExpressionBasedCoordinateForce_safeDownCast(*args):
  """
    ExpressionBasedCoordinateForce_safeDownCast(OpenSimObject obj) -> ExpressionBasedCoordinateForce

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ExpressionBasedCoordinateForce_safeDownCast(*args)

def ExpressionBasedCoordinateForce_getClassName():
  """ExpressionBasedCoordinateForce_getClassName() -> std::string const &"""
  return _opensim.ExpressionBasedCoordinateForce_getClassName()

class PathSpring(Force):
    """Proxy of C++ OpenSim::PathSpring class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PathSpring, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PathSpring, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PathSpring

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PathSpring_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PathSpring self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PathSpring_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PathSpring_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PathSpring self) -> PathSpring

        Parameters:
            self: OpenSim::PathSpring const *

        """
        return _opensim.PathSpring_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PathSpring self) -> std::string const &

        Parameters:
            self: OpenSim::PathSpring const *

        """
        return _opensim.PathSpring_getConcreteClassName(self)

    def copyProperty_resting_length(self, *args):
        """
        copyProperty_resting_length(PathSpring self, PathSpring source)

        Parameters:
            source: OpenSim::PathSpring::Self const &

        """
        return _opensim.PathSpring_copyProperty_resting_length(self, *args)

    def append_resting_length(self, *args):
        """
        append_resting_length(PathSpring self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.PathSpring_append_resting_length(self, *args)

    def constructProperty_resting_length(self, *args):
        """
        constructProperty_resting_length(PathSpring self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.PathSpring_constructProperty_resting_length(self, *args)

    def get_resting_length(self, *args):
        """
        get_resting_length(PathSpring self, int i) -> double const

        Parameters:
            i: int

        get_resting_length(PathSpring self) -> double const &

        Parameters:
            self: OpenSim::PathSpring const *

        """
        return _opensim.PathSpring_get_resting_length(self, *args)

    def upd_resting_length(self, *args):
        """
        upd_resting_length(PathSpring self, int i) -> double

        Parameters:
            i: int

        upd_resting_length(PathSpring self) -> double &

        Parameters:
            self: OpenSim::PathSpring *

        """
        return _opensim.PathSpring_upd_resting_length(self, *args)

    def set_resting_length(self, *args):
        """
        set_resting_length(PathSpring self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_resting_length(PathSpring self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.PathSpring_set_resting_length(self, *args)

    def copyProperty_stiffness(self, *args):
        """
        copyProperty_stiffness(PathSpring self, PathSpring source)

        Parameters:
            source: OpenSim::PathSpring::Self const &

        """
        return _opensim.PathSpring_copyProperty_stiffness(self, *args)

    def append_stiffness(self, *args):
        """
        append_stiffness(PathSpring self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.PathSpring_append_stiffness(self, *args)

    def constructProperty_stiffness(self, *args):
        """
        constructProperty_stiffness(PathSpring self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.PathSpring_constructProperty_stiffness(self, *args)

    def get_stiffness(self, *args):
        """
        get_stiffness(PathSpring self, int i) -> double const

        Parameters:
            i: int

        get_stiffness(PathSpring self) -> double const &

        Parameters:
            self: OpenSim::PathSpring const *

        """
        return _opensim.PathSpring_get_stiffness(self, *args)

    def upd_stiffness(self, *args):
        """
        upd_stiffness(PathSpring self, int i) -> double

        Parameters:
            i: int

        upd_stiffness(PathSpring self) -> double &

        Parameters:
            self: OpenSim::PathSpring *

        """
        return _opensim.PathSpring_upd_stiffness(self, *args)

    def set_stiffness(self, *args):
        """
        set_stiffness(PathSpring self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_stiffness(PathSpring self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.PathSpring_set_stiffness(self, *args)

    def copyProperty_dissipation(self, *args):
        """
        copyProperty_dissipation(PathSpring self, PathSpring source)

        Parameters:
            source: OpenSim::PathSpring::Self const &

        """
        return _opensim.PathSpring_copyProperty_dissipation(self, *args)

    def append_dissipation(self, *args):
        """
        append_dissipation(PathSpring self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.PathSpring_append_dissipation(self, *args)

    def constructProperty_dissipation(self, *args):
        """
        constructProperty_dissipation(PathSpring self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.PathSpring_constructProperty_dissipation(self, *args)

    def get_dissipation(self, *args):
        """
        get_dissipation(PathSpring self, int i) -> double const

        Parameters:
            i: int

        get_dissipation(PathSpring self) -> double const &

        Parameters:
            self: OpenSim::PathSpring const *

        """
        return _opensim.PathSpring_get_dissipation(self, *args)

    def upd_dissipation(self, *args):
        """
        upd_dissipation(PathSpring self, int i) -> double

        Parameters:
            i: int

        upd_dissipation(PathSpring self) -> double &

        Parameters:
            self: OpenSim::PathSpring *

        """
        return _opensim.PathSpring_upd_dissipation(self, *args)

    def set_dissipation(self, *args):
        """
        set_dissipation(PathSpring self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_dissipation(PathSpring self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.PathSpring_set_dissipation(self, *args)

    def copyProperty_GeometryPath(self, *args):
        """
        copyProperty_GeometryPath(PathSpring self, PathSpring source)

        Parameters:
            source: OpenSim::PathSpring::Self const &

        """
        return _opensim.PathSpring_copyProperty_GeometryPath(self, *args)

    def append_GeometryPath(self, *args):
        """
        append_GeometryPath(PathSpring self, GeometryPath value) -> int

        Parameters:
            value: OpenSim::GeometryPath const &

        """
        return _opensim.PathSpring_append_GeometryPath(self, *args)

    def constructProperty_GeometryPath(self, *args):
        """
        constructProperty_GeometryPath(PathSpring self, GeometryPath initValue)

        Parameters:
            initValue: OpenSim::GeometryPath const &

        """
        return _opensim.PathSpring_constructProperty_GeometryPath(self, *args)

    def get_GeometryPath(self, *args):
        """
        get_GeometryPath(PathSpring self, int i) -> GeometryPath

        Parameters:
            i: int

        get_GeometryPath(PathSpring self) -> GeometryPath

        Parameters:
            self: OpenSim::PathSpring const *

        """
        return _opensim.PathSpring_get_GeometryPath(self, *args)

    def upd_GeometryPath(self, *args):
        """
        upd_GeometryPath(PathSpring self, int i) -> GeometryPath

        Parameters:
            i: int

        upd_GeometryPath(PathSpring self) -> GeometryPath

        Parameters:
            self: OpenSim::PathSpring *

        """
        return _opensim.PathSpring_upd_GeometryPath(self, *args)

    def set_GeometryPath(self, *args):
        """
        set_GeometryPath(PathSpring self, int i, GeometryPath value)

        Parameters:
            i: int
            value: OpenSim::GeometryPath const &

        set_GeometryPath(PathSpring self, GeometryPath value)

        Parameters:
            value: OpenSim::GeometryPath const &

        """
        return _opensim.PathSpring_set_GeometryPath(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PathSpring self) -> PathSpring
        __init__(OpenSim::PathSpring self, std::string const & name, double restLength, double stiffness, double dissipation) -> PathSpring

        Parameters:
            name: std::string const &
            restLength: double
            stiffness: double
            dissipation: double

        """
        this = _opensim.new_PathSpring(*args)
        try: self.this.append(this)
        except: self.this = this
    def getRestingLength(self):
        """
        getRestingLength(PathSpring self) -> double

        Parameters:
            self: OpenSim::PathSpring const *

        """
        return _opensim.PathSpring_getRestingLength(self)

    def setRestingLength(self, *args):
        """
        setRestingLength(PathSpring self, double restingLength)

        Parameters:
            restingLength: double

        """
        return _opensim.PathSpring_setRestingLength(self, *args)

    def getStiffness(self):
        """
        getStiffness(PathSpring self) -> double

        Parameters:
            self: OpenSim::PathSpring const *

        """
        return _opensim.PathSpring_getStiffness(self)

    def setStiffness(self, *args):
        """
        setStiffness(PathSpring self, double stiffness)

        Parameters:
            stiffness: double

        """
        return _opensim.PathSpring_setStiffness(self, *args)

    def getDissipation(self):
        """
        getDissipation(PathSpring self) -> double

        Parameters:
            self: OpenSim::PathSpring const *

        """
        return _opensim.PathSpring_getDissipation(self)

    def setDissipation(self, *args):
        """
        setDissipation(PathSpring self, double dissipation)

        Parameters:
            dissipation: double

        """
        return _opensim.PathSpring_setDissipation(self, *args)

    def getGeometryPath(self):
        """
        getGeometryPath(PathSpring self) -> GeometryPath

        Parameters:
            self: OpenSim::PathSpring const *

        """
        return _opensim.PathSpring_getGeometryPath(self)

    def updGeometryPath(self):
        """
        updGeometryPath(PathSpring self) -> GeometryPath

        Parameters:
            self: OpenSim::PathSpring *

        """
        return _opensim.PathSpring_updGeometryPath(self)

    def getLength(self, *args):
        """
        getLength(PathSpring self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PathSpring_getLength(self, *args)

    def getStretch(self, *args):
        """
        getStretch(PathSpring self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PathSpring_getStretch(self, *args)

    def getLengtheningSpeed(self, *args):
        """
        getLengtheningSpeed(PathSpring self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PathSpring_getLengtheningSpeed(self, *args)

    def getTension(self, *args):
        """
        getTension(PathSpring self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.PathSpring_getTension(self, *args)

    def computeMomentArm(self, *args):
        """
        computeMomentArm(PathSpring self, State s, Coordinate aCoord) -> double

        Parameters:
            s: SimTK::State const &
            aCoord: OpenSim::Coordinate &

        """
        return _opensim.PathSpring_computeMomentArm(self, *args)

    def preScale(self, *args):
        """
        preScale(PathSpring self, State s, ScaleSet scaleSet)

        Parameters:
            s: SimTK::State const &
            scaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.PathSpring_preScale(self, *args)

    def scale(self, *args):
        """
        scale(PathSpring self, State s, ScaleSet scaleSet)

        Parameters:
            s: SimTK::State const &
            scaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.PathSpring_scale(self, *args)

    def postScale(self, *args):
        """
        postScale(PathSpring self, State s, ScaleSet scaleSet)

        Parameters:
            s: SimTK::State const &
            scaleSet: OpenSim::ScaleSet const &

        """
        return _opensim.PathSpring_postScale(self, *args)

    __swig_destroy__ = _opensim.delete_PathSpring
    __del__ = lambda self : None;
PathSpring_swigregister = _opensim.PathSpring_swigregister
PathSpring_swigregister(PathSpring)

def PathSpring_safeDownCast(*args):
  """
    PathSpring_safeDownCast(OpenSimObject obj) -> PathSpring

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PathSpring_safeDownCast(*args)

def PathSpring_getClassName():
  """PathSpring_getClassName() -> std::string const &"""
  return _opensim.PathSpring_getClassName()

class BushingForce(Force):
    """Proxy of C++ OpenSim::BushingForce class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, BushingForce, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, BushingForce, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> BushingForce

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.BushingForce_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(BushingForce self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.BushingForce_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.BushingForce_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(BushingForce self) -> BushingForce

        Parameters:
            self: OpenSim::BushingForce const *

        """
        return _opensim.BushingForce_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(BushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::BushingForce const *

        """
        return _opensim.BushingForce_getConcreteClassName(self)

    def copyProperty_body_1(self, *args):
        """
        copyProperty_body_1(BushingForce self, BushingForce source)

        Parameters:
            source: OpenSim::BushingForce::Self const &

        """
        return _opensim.BushingForce_copyProperty_body_1(self, *args)

    def append_body_1(self, *args):
        """
        append_body_1(BushingForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.BushingForce_append_body_1(self, *args)

    def constructProperty_body_1(self, *args):
        """
        constructProperty_body_1(BushingForce self)
        constructProperty_body_1(BushingForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.BushingForce_constructProperty_body_1(self, *args)

    def get_body_1(self, *args):
        """
        get_body_1(BushingForce self, int i) -> std::string const

        Parameters:
            i: int

        get_body_1(BushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::BushingForce const *

        """
        return _opensim.BushingForce_get_body_1(self, *args)

    def upd_body_1(self, *args):
        """
        upd_body_1(BushingForce self, int i) -> std::string

        Parameters:
            i: int

        upd_body_1(BushingForce self) -> std::string &

        Parameters:
            self: OpenSim::BushingForce *

        """
        return _opensim.BushingForce_upd_body_1(self, *args)

    def set_body_1(self, *args):
        """
        set_body_1(BushingForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body_1(BushingForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.BushingForce_set_body_1(self, *args)

    def copyProperty_body_2(self, *args):
        """
        copyProperty_body_2(BushingForce self, BushingForce source)

        Parameters:
            source: OpenSim::BushingForce::Self const &

        """
        return _opensim.BushingForce_copyProperty_body_2(self, *args)

    def append_body_2(self, *args):
        """
        append_body_2(BushingForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.BushingForce_append_body_2(self, *args)

    def constructProperty_body_2(self, *args):
        """
        constructProperty_body_2(BushingForce self)
        constructProperty_body_2(BushingForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.BushingForce_constructProperty_body_2(self, *args)

    def get_body_2(self, *args):
        """
        get_body_2(BushingForce self, int i) -> std::string const

        Parameters:
            i: int

        get_body_2(BushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::BushingForce const *

        """
        return _opensim.BushingForce_get_body_2(self, *args)

    def upd_body_2(self, *args):
        """
        upd_body_2(BushingForce self, int i) -> std::string

        Parameters:
            i: int

        upd_body_2(BushingForce self) -> std::string &

        Parameters:
            self: OpenSim::BushingForce *

        """
        return _opensim.BushingForce_upd_body_2(self, *args)

    def set_body_2(self, *args):
        """
        set_body_2(BushingForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body_2(BushingForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.BushingForce_set_body_2(self, *args)

    def copyProperty_location_body_1(self, *args):
        """
        copyProperty_location_body_1(BushingForce self, BushingForce source)

        Parameters:
            source: OpenSim::BushingForce::Self const &

        """
        return _opensim.BushingForce_copyProperty_location_body_1(self, *args)

    def append_location_body_1(self, *args):
        """
        append_location_body_1(BushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_append_location_body_1(self, *args)

    def constructProperty_location_body_1(self, *args):
        """
        constructProperty_location_body_1(BushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_constructProperty_location_body_1(self, *args)

    def get_location_body_1(self, *args):
        """
        get_location_body_1(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_location_body_1(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce const *

        """
        return _opensim.BushingForce_get_location_body_1(self, *args)

    def upd_location_body_1(self, *args):
        """
        upd_location_body_1(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_location_body_1(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce *

        """
        return _opensim.BushingForce_upd_location_body_1(self, *args)

    def set_location_body_1(self, *args):
        """
        set_location_body_1(BushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location_body_1(BushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_set_location_body_1(self, *args)

    def copyProperty_orientation_body_1(self, *args):
        """
        copyProperty_orientation_body_1(BushingForce self, BushingForce source)

        Parameters:
            source: OpenSim::BushingForce::Self const &

        """
        return _opensim.BushingForce_copyProperty_orientation_body_1(self, *args)

    def append_orientation_body_1(self, *args):
        """
        append_orientation_body_1(BushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_append_orientation_body_1(self, *args)

    def constructProperty_orientation_body_1(self, *args):
        """
        constructProperty_orientation_body_1(BushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_constructProperty_orientation_body_1(self, *args)

    def get_orientation_body_1(self, *args):
        """
        get_orientation_body_1(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_orientation_body_1(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce const *

        """
        return _opensim.BushingForce_get_orientation_body_1(self, *args)

    def upd_orientation_body_1(self, *args):
        """
        upd_orientation_body_1(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_orientation_body_1(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce *

        """
        return _opensim.BushingForce_upd_orientation_body_1(self, *args)

    def set_orientation_body_1(self, *args):
        """
        set_orientation_body_1(BushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_orientation_body_1(BushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_set_orientation_body_1(self, *args)

    def copyProperty_location_body_2(self, *args):
        """
        copyProperty_location_body_2(BushingForce self, BushingForce source)

        Parameters:
            source: OpenSim::BushingForce::Self const &

        """
        return _opensim.BushingForce_copyProperty_location_body_2(self, *args)

    def append_location_body_2(self, *args):
        """
        append_location_body_2(BushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_append_location_body_2(self, *args)

    def constructProperty_location_body_2(self, *args):
        """
        constructProperty_location_body_2(BushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_constructProperty_location_body_2(self, *args)

    def get_location_body_2(self, *args):
        """
        get_location_body_2(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_location_body_2(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce const *

        """
        return _opensim.BushingForce_get_location_body_2(self, *args)

    def upd_location_body_2(self, *args):
        """
        upd_location_body_2(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_location_body_2(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce *

        """
        return _opensim.BushingForce_upd_location_body_2(self, *args)

    def set_location_body_2(self, *args):
        """
        set_location_body_2(BushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location_body_2(BushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_set_location_body_2(self, *args)

    def copyProperty_orientation_body_2(self, *args):
        """
        copyProperty_orientation_body_2(BushingForce self, BushingForce source)

        Parameters:
            source: OpenSim::BushingForce::Self const &

        """
        return _opensim.BushingForce_copyProperty_orientation_body_2(self, *args)

    def append_orientation_body_2(self, *args):
        """
        append_orientation_body_2(BushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_append_orientation_body_2(self, *args)

    def constructProperty_orientation_body_2(self, *args):
        """
        constructProperty_orientation_body_2(BushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_constructProperty_orientation_body_2(self, *args)

    def get_orientation_body_2(self, *args):
        """
        get_orientation_body_2(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_orientation_body_2(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce const *

        """
        return _opensim.BushingForce_get_orientation_body_2(self, *args)

    def upd_orientation_body_2(self, *args):
        """
        upd_orientation_body_2(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_orientation_body_2(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce *

        """
        return _opensim.BushingForce_upd_orientation_body_2(self, *args)

    def set_orientation_body_2(self, *args):
        """
        set_orientation_body_2(BushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_orientation_body_2(BushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_set_orientation_body_2(self, *args)

    def copyProperty_rotational_stiffness(self, *args):
        """
        copyProperty_rotational_stiffness(BushingForce self, BushingForce source)

        Parameters:
            source: OpenSim::BushingForce::Self const &

        """
        return _opensim.BushingForce_copyProperty_rotational_stiffness(self, *args)

    def append_rotational_stiffness(self, *args):
        """
        append_rotational_stiffness(BushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_append_rotational_stiffness(self, *args)

    def constructProperty_rotational_stiffness(self, *args):
        """
        constructProperty_rotational_stiffness(BushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_constructProperty_rotational_stiffness(self, *args)

    def get_rotational_stiffness(self, *args):
        """
        get_rotational_stiffness(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_rotational_stiffness(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce const *

        """
        return _opensim.BushingForce_get_rotational_stiffness(self, *args)

    def upd_rotational_stiffness(self, *args):
        """
        upd_rotational_stiffness(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_rotational_stiffness(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce *

        """
        return _opensim.BushingForce_upd_rotational_stiffness(self, *args)

    def set_rotational_stiffness(self, *args):
        """
        set_rotational_stiffness(BushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_rotational_stiffness(BushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_set_rotational_stiffness(self, *args)

    def copyProperty_translational_stiffness(self, *args):
        """
        copyProperty_translational_stiffness(BushingForce self, BushingForce source)

        Parameters:
            source: OpenSim::BushingForce::Self const &

        """
        return _opensim.BushingForce_copyProperty_translational_stiffness(self, *args)

    def append_translational_stiffness(self, *args):
        """
        append_translational_stiffness(BushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_append_translational_stiffness(self, *args)

    def constructProperty_translational_stiffness(self, *args):
        """
        constructProperty_translational_stiffness(BushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_constructProperty_translational_stiffness(self, *args)

    def get_translational_stiffness(self, *args):
        """
        get_translational_stiffness(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_translational_stiffness(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce const *

        """
        return _opensim.BushingForce_get_translational_stiffness(self, *args)

    def upd_translational_stiffness(self, *args):
        """
        upd_translational_stiffness(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_translational_stiffness(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce *

        """
        return _opensim.BushingForce_upd_translational_stiffness(self, *args)

    def set_translational_stiffness(self, *args):
        """
        set_translational_stiffness(BushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_translational_stiffness(BushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_set_translational_stiffness(self, *args)

    def copyProperty_rotational_damping(self, *args):
        """
        copyProperty_rotational_damping(BushingForce self, BushingForce source)

        Parameters:
            source: OpenSim::BushingForce::Self const &

        """
        return _opensim.BushingForce_copyProperty_rotational_damping(self, *args)

    def append_rotational_damping(self, *args):
        """
        append_rotational_damping(BushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_append_rotational_damping(self, *args)

    def constructProperty_rotational_damping(self, *args):
        """
        constructProperty_rotational_damping(BushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_constructProperty_rotational_damping(self, *args)

    def get_rotational_damping(self, *args):
        """
        get_rotational_damping(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_rotational_damping(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce const *

        """
        return _opensim.BushingForce_get_rotational_damping(self, *args)

    def upd_rotational_damping(self, *args):
        """
        upd_rotational_damping(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_rotational_damping(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce *

        """
        return _opensim.BushingForce_upd_rotational_damping(self, *args)

    def set_rotational_damping(self, *args):
        """
        set_rotational_damping(BushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_rotational_damping(BushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_set_rotational_damping(self, *args)

    def copyProperty_translational_damping(self, *args):
        """
        copyProperty_translational_damping(BushingForce self, BushingForce source)

        Parameters:
            source: OpenSim::BushingForce::Self const &

        """
        return _opensim.BushingForce_copyProperty_translational_damping(self, *args)

    def append_translational_damping(self, *args):
        """
        append_translational_damping(BushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_append_translational_damping(self, *args)

    def constructProperty_translational_damping(self, *args):
        """
        constructProperty_translational_damping(BushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_constructProperty_translational_damping(self, *args)

    def get_translational_damping(self, *args):
        """
        get_translational_damping(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_translational_damping(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce const *

        """
        return _opensim.BushingForce_get_translational_damping(self, *args)

    def upd_translational_damping(self, *args):
        """
        upd_translational_damping(BushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_translational_damping(BushingForce self) -> Vec3

        Parameters:
            self: OpenSim::BushingForce *

        """
        return _opensim.BushingForce_upd_translational_damping(self, *args)

    def set_translational_damping(self, *args):
        """
        set_translational_damping(BushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_translational_damping(BushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_set_translational_damping(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::BushingForce self) -> BushingForce
        __init__(OpenSim::BushingForce self, std::string const & body1Name, Vec3 point1, Vec3 orientation1, std::string const & body2Name, 
            Vec3 point2, Vec3 orientation2, Vec3 transStiffness, Vec3 rotStiffness, 
            Vec3 transDamping, Vec3 rotDamping) -> BushingForce

        Parameters:
            body1Name: std::string const &
            point1: SimTK::Vec3 const &
            orientation1: SimTK::Vec3 const &
            body2Name: std::string const &
            point2: SimTK::Vec3 const &
            orientation2: SimTK::Vec3 const &
            transStiffness: SimTK::Vec3 const &
            rotStiffness: SimTK::Vec3 const &
            transDamping: SimTK::Vec3 const &
            rotDamping: SimTK::Vec3 const &

        """
        this = _opensim.new_BushingForce(*args)
        try: self.this.append(this)
        except: self.this = this
    def setBody1ByName(self, *args):
        """
        setBody1ByName(BushingForce self, std::string const & aBodyName)

        Parameters:
            aBodyName: std::string const &

        """
        return _opensim.BushingForce_setBody1ByName(self, *args)

    def setBody1BushingLocation(self, *args):
        """
        setBody1BushingLocation(BushingForce self, Vec3 location, Vec3 orientation=SimTK::Vec3(0))

        Parameters:
            location: SimTK::Vec3 const &
            orientation: SimTK::Vec3 const &

        setBody1BushingLocation(BushingForce self, Vec3 location)

        Parameters:
            location: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_setBody1BushingLocation(self, *args)

    def setBody2ByName(self, *args):
        """
        setBody2ByName(BushingForce self, std::string const & aBodyName)

        Parameters:
            aBodyName: std::string const &

        """
        return _opensim.BushingForce_setBody2ByName(self, *args)

    def setBody2BushingLocation(self, *args):
        """
        setBody2BushingLocation(BushingForce self, Vec3 location, Vec3 orientation=SimTK::Vec3(0))

        Parameters:
            location: SimTK::Vec3 const &
            orientation: SimTK::Vec3 const &

        setBody2BushingLocation(BushingForce self, Vec3 location)

        Parameters:
            location: SimTK::Vec3 const &

        """
        return _opensim.BushingForce_setBody2BushingLocation(self, *args)

    def computePotentialEnergy(self, *args):
        """
        computePotentialEnergy(BushingForce self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.BushingForce_computePotentialEnergy(self, *args)

    def getRecordLabels(self):
        """
        getRecordLabels(BushingForce self) -> ArrayStr

        Parameters:
            self: OpenSim::BushingForce const *

        """
        return _opensim.BushingForce_getRecordLabels(self)

    def getRecordValues(self, *args):
        """
        getRecordValues(BushingForce self, State state) -> ArrayDouble

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.BushingForce_getRecordValues(self, *args)

    __swig_destroy__ = _opensim.delete_BushingForce
    __del__ = lambda self : None;
BushingForce_swigregister = _opensim.BushingForce_swigregister
BushingForce_swigregister(BushingForce)

def BushingForce_safeDownCast(*args):
  """
    BushingForce_safeDownCast(OpenSimObject obj) -> BushingForce

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.BushingForce_safeDownCast(*args)

def BushingForce_getClassName():
  """BushingForce_getClassName() -> std::string const &"""
  return _opensim.BushingForce_getClassName()

class FunctionBasedBushingForce(Force):
    """Proxy of C++ OpenSim::FunctionBasedBushingForce class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, FunctionBasedBushingForce, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, FunctionBasedBushingForce, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> FunctionBasedBushingForce

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.FunctionBasedBushingForce_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(FunctionBasedBushingForce self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.FunctionBasedBushingForce_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.FunctionBasedBushingForce_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(FunctionBasedBushingForce self) -> FunctionBasedBushingForce

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(FunctionBasedBushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_getConcreteClassName(self)

    def copyProperty_body_1(self, *args):
        """
        copyProperty_body_1(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_body_1(self, *args)

    def append_body_1(self, *args):
        """
        append_body_1(FunctionBasedBushingForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.FunctionBasedBushingForce_append_body_1(self, *args)

    def constructProperty_body_1(self, *args):
        """
        constructProperty_body_1(FunctionBasedBushingForce self)
        constructProperty_body_1(FunctionBasedBushingForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_body_1(self, *args)

    def get_body_1(self, *args):
        """
        get_body_1(FunctionBasedBushingForce self, int i) -> std::string const

        Parameters:
            i: int

        get_body_1(FunctionBasedBushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_body_1(self, *args)

    def upd_body_1(self, *args):
        """
        upd_body_1(FunctionBasedBushingForce self, int i) -> std::string

        Parameters:
            i: int

        upd_body_1(FunctionBasedBushingForce self) -> std::string &

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_body_1(self, *args)

    def set_body_1(self, *args):
        """
        set_body_1(FunctionBasedBushingForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body_1(FunctionBasedBushingForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.FunctionBasedBushingForce_set_body_1(self, *args)

    def copyProperty_body_2(self, *args):
        """
        copyProperty_body_2(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_body_2(self, *args)

    def append_body_2(self, *args):
        """
        append_body_2(FunctionBasedBushingForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.FunctionBasedBushingForce_append_body_2(self, *args)

    def constructProperty_body_2(self, *args):
        """
        constructProperty_body_2(FunctionBasedBushingForce self)
        constructProperty_body_2(FunctionBasedBushingForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_body_2(self, *args)

    def get_body_2(self, *args):
        """
        get_body_2(FunctionBasedBushingForce self, int i) -> std::string const

        Parameters:
            i: int

        get_body_2(FunctionBasedBushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_body_2(self, *args)

    def upd_body_2(self, *args):
        """
        upd_body_2(FunctionBasedBushingForce self, int i) -> std::string

        Parameters:
            i: int

        upd_body_2(FunctionBasedBushingForce self) -> std::string &

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_body_2(self, *args)

    def set_body_2(self, *args):
        """
        set_body_2(FunctionBasedBushingForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body_2(FunctionBasedBushingForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.FunctionBasedBushingForce_set_body_2(self, *args)

    def copyProperty_location_body_1(self, *args):
        """
        copyProperty_location_body_1(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_location_body_1(self, *args)

    def append_location_body_1(self, *args):
        """
        append_location_body_1(FunctionBasedBushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_append_location_body_1(self, *args)

    def constructProperty_location_body_1(self, *args):
        """
        constructProperty_location_body_1(FunctionBasedBushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_location_body_1(self, *args)

    def get_location_body_1(self, *args):
        """
        get_location_body_1(FunctionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_location_body_1(FunctionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_location_body_1(self, *args)

    def upd_location_body_1(self, *args):
        """
        upd_location_body_1(FunctionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_location_body_1(FunctionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_location_body_1(self, *args)

    def set_location_body_1(self, *args):
        """
        set_location_body_1(FunctionBasedBushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location_body_1(FunctionBasedBushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_set_location_body_1(self, *args)

    def copyProperty_orientation_body_1(self, *args):
        """
        copyProperty_orientation_body_1(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_orientation_body_1(self, *args)

    def append_orientation_body_1(self, *args):
        """
        append_orientation_body_1(FunctionBasedBushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_append_orientation_body_1(self, *args)

    def constructProperty_orientation_body_1(self, *args):
        """
        constructProperty_orientation_body_1(FunctionBasedBushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_orientation_body_1(self, *args)

    def get_orientation_body_1(self, *args):
        """
        get_orientation_body_1(FunctionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_orientation_body_1(FunctionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_orientation_body_1(self, *args)

    def upd_orientation_body_1(self, *args):
        """
        upd_orientation_body_1(FunctionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_orientation_body_1(FunctionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_orientation_body_1(self, *args)

    def set_orientation_body_1(self, *args):
        """
        set_orientation_body_1(FunctionBasedBushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_orientation_body_1(FunctionBasedBushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_set_orientation_body_1(self, *args)

    def copyProperty_location_body_2(self, *args):
        """
        copyProperty_location_body_2(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_location_body_2(self, *args)

    def append_location_body_2(self, *args):
        """
        append_location_body_2(FunctionBasedBushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_append_location_body_2(self, *args)

    def constructProperty_location_body_2(self, *args):
        """
        constructProperty_location_body_2(FunctionBasedBushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_location_body_2(self, *args)

    def get_location_body_2(self, *args):
        """
        get_location_body_2(FunctionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_location_body_2(FunctionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_location_body_2(self, *args)

    def upd_location_body_2(self, *args):
        """
        upd_location_body_2(FunctionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_location_body_2(FunctionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_location_body_2(self, *args)

    def set_location_body_2(self, *args):
        """
        set_location_body_2(FunctionBasedBushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location_body_2(FunctionBasedBushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_set_location_body_2(self, *args)

    def copyProperty_orientation_body_2(self, *args):
        """
        copyProperty_orientation_body_2(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_orientation_body_2(self, *args)

    def append_orientation_body_2(self, *args):
        """
        append_orientation_body_2(FunctionBasedBushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_append_orientation_body_2(self, *args)

    def constructProperty_orientation_body_2(self, *args):
        """
        constructProperty_orientation_body_2(FunctionBasedBushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_orientation_body_2(self, *args)

    def get_orientation_body_2(self, *args):
        """
        get_orientation_body_2(FunctionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_orientation_body_2(FunctionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_orientation_body_2(self, *args)

    def upd_orientation_body_2(self, *args):
        """
        upd_orientation_body_2(FunctionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_orientation_body_2(FunctionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_orientation_body_2(self, *args)

    def set_orientation_body_2(self, *args):
        """
        set_orientation_body_2(FunctionBasedBushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_orientation_body_2(FunctionBasedBushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_set_orientation_body_2(self, *args)

    def copyProperty_m_x_theta_x_function(self, *args):
        """
        copyProperty_m_x_theta_x_function(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_m_x_theta_x_function(self, *args)

    def append_m_x_theta_x_function(self, *args):
        """
        append_m_x_theta_x_function(FunctionBasedBushingForce self, Function value) -> int

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_append_m_x_theta_x_function(self, *args)

    def constructProperty_m_x_theta_x_function(self, *args):
        """
        constructProperty_m_x_theta_x_function(FunctionBasedBushingForce self)
        constructProperty_m_x_theta_x_function(FunctionBasedBushingForce self, Function initValue)

        Parameters:
            initValue: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_m_x_theta_x_function(self, *args)

    def get_m_x_theta_x_function(self, *args):
        """
        get_m_x_theta_x_function(FunctionBasedBushingForce self, int i) -> Function

        Parameters:
            i: int

        get_m_x_theta_x_function(FunctionBasedBushingForce self) -> Function

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_m_x_theta_x_function(self, *args)

    def upd_m_x_theta_x_function(self, *args):
        """
        upd_m_x_theta_x_function(FunctionBasedBushingForce self, int i) -> Function

        Parameters:
            i: int

        upd_m_x_theta_x_function(FunctionBasedBushingForce self) -> Function

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_m_x_theta_x_function(self, *args)

    def set_m_x_theta_x_function(self, *args):
        """
        set_m_x_theta_x_function(FunctionBasedBushingForce self, int i, Function value)

        Parameters:
            i: int
            value: OpenSim::Function const &

        set_m_x_theta_x_function(FunctionBasedBushingForce self, Function value)

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_set_m_x_theta_x_function(self, *args)

    def copyProperty_m_y_theta_y_function(self, *args):
        """
        copyProperty_m_y_theta_y_function(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_m_y_theta_y_function(self, *args)

    def append_m_y_theta_y_function(self, *args):
        """
        append_m_y_theta_y_function(FunctionBasedBushingForce self, Function value) -> int

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_append_m_y_theta_y_function(self, *args)

    def constructProperty_m_y_theta_y_function(self, *args):
        """
        constructProperty_m_y_theta_y_function(FunctionBasedBushingForce self)
        constructProperty_m_y_theta_y_function(FunctionBasedBushingForce self, Function initValue)

        Parameters:
            initValue: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_m_y_theta_y_function(self, *args)

    def get_m_y_theta_y_function(self, *args):
        """
        get_m_y_theta_y_function(FunctionBasedBushingForce self, int i) -> Function

        Parameters:
            i: int

        get_m_y_theta_y_function(FunctionBasedBushingForce self) -> Function

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_m_y_theta_y_function(self, *args)

    def upd_m_y_theta_y_function(self, *args):
        """
        upd_m_y_theta_y_function(FunctionBasedBushingForce self, int i) -> Function

        Parameters:
            i: int

        upd_m_y_theta_y_function(FunctionBasedBushingForce self) -> Function

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_m_y_theta_y_function(self, *args)

    def set_m_y_theta_y_function(self, *args):
        """
        set_m_y_theta_y_function(FunctionBasedBushingForce self, int i, Function value)

        Parameters:
            i: int
            value: OpenSim::Function const &

        set_m_y_theta_y_function(FunctionBasedBushingForce self, Function value)

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_set_m_y_theta_y_function(self, *args)

    def copyProperty_m_z_theta_z_function(self, *args):
        """
        copyProperty_m_z_theta_z_function(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_m_z_theta_z_function(self, *args)

    def append_m_z_theta_z_function(self, *args):
        """
        append_m_z_theta_z_function(FunctionBasedBushingForce self, Function value) -> int

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_append_m_z_theta_z_function(self, *args)

    def constructProperty_m_z_theta_z_function(self, *args):
        """
        constructProperty_m_z_theta_z_function(FunctionBasedBushingForce self)
        constructProperty_m_z_theta_z_function(FunctionBasedBushingForce self, Function initValue)

        Parameters:
            initValue: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_m_z_theta_z_function(self, *args)

    def get_m_z_theta_z_function(self, *args):
        """
        get_m_z_theta_z_function(FunctionBasedBushingForce self, int i) -> Function

        Parameters:
            i: int

        get_m_z_theta_z_function(FunctionBasedBushingForce self) -> Function

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_m_z_theta_z_function(self, *args)

    def upd_m_z_theta_z_function(self, *args):
        """
        upd_m_z_theta_z_function(FunctionBasedBushingForce self, int i) -> Function

        Parameters:
            i: int

        upd_m_z_theta_z_function(FunctionBasedBushingForce self) -> Function

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_m_z_theta_z_function(self, *args)

    def set_m_z_theta_z_function(self, *args):
        """
        set_m_z_theta_z_function(FunctionBasedBushingForce self, int i, Function value)

        Parameters:
            i: int
            value: OpenSim::Function const &

        set_m_z_theta_z_function(FunctionBasedBushingForce self, Function value)

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_set_m_z_theta_z_function(self, *args)

    def copyProperty_f_x_delta_x_function(self, *args):
        """
        copyProperty_f_x_delta_x_function(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_f_x_delta_x_function(self, *args)

    def append_f_x_delta_x_function(self, *args):
        """
        append_f_x_delta_x_function(FunctionBasedBushingForce self, Function value) -> int

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_append_f_x_delta_x_function(self, *args)

    def constructProperty_f_x_delta_x_function(self, *args):
        """
        constructProperty_f_x_delta_x_function(FunctionBasedBushingForce self)
        constructProperty_f_x_delta_x_function(FunctionBasedBushingForce self, Function initValue)

        Parameters:
            initValue: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_f_x_delta_x_function(self, *args)

    def get_f_x_delta_x_function(self, *args):
        """
        get_f_x_delta_x_function(FunctionBasedBushingForce self, int i) -> Function

        Parameters:
            i: int

        get_f_x_delta_x_function(FunctionBasedBushingForce self) -> Function

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_f_x_delta_x_function(self, *args)

    def upd_f_x_delta_x_function(self, *args):
        """
        upd_f_x_delta_x_function(FunctionBasedBushingForce self, int i) -> Function

        Parameters:
            i: int

        upd_f_x_delta_x_function(FunctionBasedBushingForce self) -> Function

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_f_x_delta_x_function(self, *args)

    def set_f_x_delta_x_function(self, *args):
        """
        set_f_x_delta_x_function(FunctionBasedBushingForce self, int i, Function value)

        Parameters:
            i: int
            value: OpenSim::Function const &

        set_f_x_delta_x_function(FunctionBasedBushingForce self, Function value)

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_set_f_x_delta_x_function(self, *args)

    def copyProperty_f_y_delta_y_function(self, *args):
        """
        copyProperty_f_y_delta_y_function(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_f_y_delta_y_function(self, *args)

    def append_f_y_delta_y_function(self, *args):
        """
        append_f_y_delta_y_function(FunctionBasedBushingForce self, Function value) -> int

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_append_f_y_delta_y_function(self, *args)

    def constructProperty_f_y_delta_y_function(self, *args):
        """
        constructProperty_f_y_delta_y_function(FunctionBasedBushingForce self)
        constructProperty_f_y_delta_y_function(FunctionBasedBushingForce self, Function initValue)

        Parameters:
            initValue: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_f_y_delta_y_function(self, *args)

    def get_f_y_delta_y_function(self, *args):
        """
        get_f_y_delta_y_function(FunctionBasedBushingForce self, int i) -> Function

        Parameters:
            i: int

        get_f_y_delta_y_function(FunctionBasedBushingForce self) -> Function

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_f_y_delta_y_function(self, *args)

    def upd_f_y_delta_y_function(self, *args):
        """
        upd_f_y_delta_y_function(FunctionBasedBushingForce self, int i) -> Function

        Parameters:
            i: int

        upd_f_y_delta_y_function(FunctionBasedBushingForce self) -> Function

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_f_y_delta_y_function(self, *args)

    def set_f_y_delta_y_function(self, *args):
        """
        set_f_y_delta_y_function(FunctionBasedBushingForce self, int i, Function value)

        Parameters:
            i: int
            value: OpenSim::Function const &

        set_f_y_delta_y_function(FunctionBasedBushingForce self, Function value)

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_set_f_y_delta_y_function(self, *args)

    def copyProperty_f_z_delta_z_function(self, *args):
        """
        copyProperty_f_z_delta_z_function(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_f_z_delta_z_function(self, *args)

    def append_f_z_delta_z_function(self, *args):
        """
        append_f_z_delta_z_function(FunctionBasedBushingForce self, Function value) -> int

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_append_f_z_delta_z_function(self, *args)

    def constructProperty_f_z_delta_z_function(self, *args):
        """
        constructProperty_f_z_delta_z_function(FunctionBasedBushingForce self)
        constructProperty_f_z_delta_z_function(FunctionBasedBushingForce self, Function initValue)

        Parameters:
            initValue: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_f_z_delta_z_function(self, *args)

    def get_f_z_delta_z_function(self, *args):
        """
        get_f_z_delta_z_function(FunctionBasedBushingForce self, int i) -> Function

        Parameters:
            i: int

        get_f_z_delta_z_function(FunctionBasedBushingForce self) -> Function

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_f_z_delta_z_function(self, *args)

    def upd_f_z_delta_z_function(self, *args):
        """
        upd_f_z_delta_z_function(FunctionBasedBushingForce self, int i) -> Function

        Parameters:
            i: int

        upd_f_z_delta_z_function(FunctionBasedBushingForce self) -> Function

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_f_z_delta_z_function(self, *args)

    def set_f_z_delta_z_function(self, *args):
        """
        set_f_z_delta_z_function(FunctionBasedBushingForce self, int i, Function value)

        Parameters:
            i: int
            value: OpenSim::Function const &

        set_f_z_delta_z_function(FunctionBasedBushingForce self, Function value)

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.FunctionBasedBushingForce_set_f_z_delta_z_function(self, *args)

    def copyProperty_visual_aspect_ratio(self, *args):
        """
        copyProperty_visual_aspect_ratio(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_visual_aspect_ratio(self, *args)

    def append_visual_aspect_ratio(self, *args):
        """
        append_visual_aspect_ratio(FunctionBasedBushingForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.FunctionBasedBushingForce_append_visual_aspect_ratio(self, *args)

    def constructProperty_visual_aspect_ratio(self, *args):
        """
        constructProperty_visual_aspect_ratio(FunctionBasedBushingForce self)
        constructProperty_visual_aspect_ratio(FunctionBasedBushingForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_visual_aspect_ratio(self, *args)

    def get_visual_aspect_ratio(self, *args):
        """
        get_visual_aspect_ratio(FunctionBasedBushingForce self, int i) -> double const

        Parameters:
            i: int

        get_visual_aspect_ratio(FunctionBasedBushingForce self) -> double const &

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_visual_aspect_ratio(self, *args)

    def upd_visual_aspect_ratio(self, *args):
        """
        upd_visual_aspect_ratio(FunctionBasedBushingForce self, int i) -> double

        Parameters:
            i: int

        upd_visual_aspect_ratio(FunctionBasedBushingForce self) -> double &

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_visual_aspect_ratio(self, *args)

    def set_visual_aspect_ratio(self, *args):
        """
        set_visual_aspect_ratio(FunctionBasedBushingForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_visual_aspect_ratio(FunctionBasedBushingForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.FunctionBasedBushingForce_set_visual_aspect_ratio(self, *args)

    def copyProperty_moment_visual_scale(self, *args):
        """
        copyProperty_moment_visual_scale(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_moment_visual_scale(self, *args)

    def append_moment_visual_scale(self, *args):
        """
        append_moment_visual_scale(FunctionBasedBushingForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.FunctionBasedBushingForce_append_moment_visual_scale(self, *args)

    def constructProperty_moment_visual_scale(self, *args):
        """
        constructProperty_moment_visual_scale(FunctionBasedBushingForce self)
        constructProperty_moment_visual_scale(FunctionBasedBushingForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_moment_visual_scale(self, *args)

    def get_moment_visual_scale(self, *args):
        """
        get_moment_visual_scale(FunctionBasedBushingForce self, int i) -> double const

        Parameters:
            i: int

        get_moment_visual_scale(FunctionBasedBushingForce self) -> double const &

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_moment_visual_scale(self, *args)

    def upd_moment_visual_scale(self, *args):
        """
        upd_moment_visual_scale(FunctionBasedBushingForce self, int i) -> double

        Parameters:
            i: int

        upd_moment_visual_scale(FunctionBasedBushingForce self) -> double &

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_moment_visual_scale(self, *args)

    def set_moment_visual_scale(self, *args):
        """
        set_moment_visual_scale(FunctionBasedBushingForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_moment_visual_scale(FunctionBasedBushingForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.FunctionBasedBushingForce_set_moment_visual_scale(self, *args)

    def copyProperty_force_visual_scale(self, *args):
        """
        copyProperty_force_visual_scale(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_force_visual_scale(self, *args)

    def append_force_visual_scale(self, *args):
        """
        append_force_visual_scale(FunctionBasedBushingForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.FunctionBasedBushingForce_append_force_visual_scale(self, *args)

    def constructProperty_force_visual_scale(self, *args):
        """
        constructProperty_force_visual_scale(FunctionBasedBushingForce self)
        constructProperty_force_visual_scale(FunctionBasedBushingForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_force_visual_scale(self, *args)

    def get_force_visual_scale(self, *args):
        """
        get_force_visual_scale(FunctionBasedBushingForce self, int i) -> double const

        Parameters:
            i: int

        get_force_visual_scale(FunctionBasedBushingForce self) -> double const &

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_force_visual_scale(self, *args)

    def upd_force_visual_scale(self, *args):
        """
        upd_force_visual_scale(FunctionBasedBushingForce self, int i) -> double

        Parameters:
            i: int

        upd_force_visual_scale(FunctionBasedBushingForce self) -> double &

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_force_visual_scale(self, *args)

    def set_force_visual_scale(self, *args):
        """
        set_force_visual_scale(FunctionBasedBushingForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_force_visual_scale(FunctionBasedBushingForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.FunctionBasedBushingForce_set_force_visual_scale(self, *args)

    def copyProperty_rotational_damping(self, *args):
        """
        copyProperty_rotational_damping(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_rotational_damping(self, *args)

    def append_rotational_damping(self, *args):
        """
        append_rotational_damping(FunctionBasedBushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_append_rotational_damping(self, *args)

    def constructProperty_rotational_damping(self, *args):
        """
        constructProperty_rotational_damping(FunctionBasedBushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_rotational_damping(self, *args)

    def get_rotational_damping(self, *args):
        """
        get_rotational_damping(FunctionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_rotational_damping(FunctionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_rotational_damping(self, *args)

    def upd_rotational_damping(self, *args):
        """
        upd_rotational_damping(FunctionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_rotational_damping(FunctionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_rotational_damping(self, *args)

    def set_rotational_damping(self, *args):
        """
        set_rotational_damping(FunctionBasedBushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_rotational_damping(FunctionBasedBushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_set_rotational_damping(self, *args)

    def copyProperty_translational_damping(self, *args):
        """
        copyProperty_translational_damping(FunctionBasedBushingForce self, FunctionBasedBushingForce source)

        Parameters:
            source: OpenSim::FunctionBasedBushingForce::Self const &

        """
        return _opensim.FunctionBasedBushingForce_copyProperty_translational_damping(self, *args)

    def append_translational_damping(self, *args):
        """
        append_translational_damping(FunctionBasedBushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_append_translational_damping(self, *args)

    def constructProperty_translational_damping(self, *args):
        """
        constructProperty_translational_damping(FunctionBasedBushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_constructProperty_translational_damping(self, *args)

    def get_translational_damping(self, *args):
        """
        get_translational_damping(FunctionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_translational_damping(FunctionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_get_translational_damping(self, *args)

    def upd_translational_damping(self, *args):
        """
        upd_translational_damping(FunctionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_translational_damping(FunctionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::FunctionBasedBushingForce *

        """
        return _opensim.FunctionBasedBushingForce_upd_translational_damping(self, *args)

    def set_translational_damping(self, *args):
        """
        set_translational_damping(FunctionBasedBushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_translational_damping(FunctionBasedBushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_set_translational_damping(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::FunctionBasedBushingForce self) -> FunctionBasedBushingForce
        __init__(OpenSim::FunctionBasedBushingForce self, std::string const & body1Name, Vec3 point1, Vec3 orientation1, std::string const & body2Name, 
            Vec3 point2, Vec3 orientation2) -> FunctionBasedBushingForce

        Parameters:
            body1Name: std::string const &
            point1: SimTK::Vec3 const &
            orientation1: SimTK::Vec3 const &
            body2Name: std::string const &
            point2: SimTK::Vec3 const &
            orientation2: SimTK::Vec3 const &

        __init__(OpenSim::FunctionBasedBushingForce self, std::string const & body1Name, Vec3 point1, Vec3 orientation1, std::string const & body2Name, 
            Vec3 point2, Vec3 orientation2, Vec3 transStiffness, Vec3 rotStiffness, 
            Vec3 transDamping, Vec3 rotDamping) -> FunctionBasedBushingForce

        Parameters:
            body1Name: std::string const &
            point1: SimTK::Vec3 const &
            orientation1: SimTK::Vec3 const &
            body2Name: std::string const &
            point2: SimTK::Vec3 const &
            orientation2: SimTK::Vec3 const &
            transStiffness: SimTK::Vec3 const &
            rotStiffness: SimTK::Vec3 const &
            transDamping: SimTK::Vec3 const &
            rotDamping: SimTK::Vec3 const &

        """
        this = _opensim.new_FunctionBasedBushingForce(*args)
        try: self.this.append(this)
        except: self.this = this
    def setBody1ByName(self, *args):
        """
        setBody1ByName(FunctionBasedBushingForce self, std::string const & aBodyName)

        Parameters:
            aBodyName: std::string const &

        """
        return _opensim.FunctionBasedBushingForce_setBody1ByName(self, *args)

    def setBody1BushingLocation(self, *args):
        """
        setBody1BushingLocation(FunctionBasedBushingForce self, Vec3 location, Vec3 orientation=SimTK::Vec3(0))

        Parameters:
            location: SimTK::Vec3 const &
            orientation: SimTK::Vec3 const &

        setBody1BushingLocation(FunctionBasedBushingForce self, Vec3 location)

        Parameters:
            location: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_setBody1BushingLocation(self, *args)

    def setBody2ByName(self, *args):
        """
        setBody2ByName(FunctionBasedBushingForce self, std::string const & aBodyName)

        Parameters:
            aBodyName: std::string const &

        """
        return _opensim.FunctionBasedBushingForce_setBody2ByName(self, *args)

    def setBody2BushingLocation(self, *args):
        """
        setBody2BushingLocation(FunctionBasedBushingForce self, Vec3 location, Vec3 orientation=SimTK::Vec3(0))

        Parameters:
            location: SimTK::Vec3 const &
            orientation: SimTK::Vec3 const &

        setBody2BushingLocation(FunctionBasedBushingForce self, Vec3 location)

        Parameters:
            location: SimTK::Vec3 const &

        """
        return _opensim.FunctionBasedBushingForce_setBody2BushingLocation(self, *args)

    def setMomentVisualScale(self, *args):
        """
        setMomentVisualScale(FunctionBasedBushingForce self, double scale)

        Parameters:
            scale: double

        """
        return _opensim.FunctionBasedBushingForce_setMomentVisualScale(self, *args)

    def setForceVisualScale(self, *args):
        """
        setForceVisualScale(FunctionBasedBushingForce self, double scale)

        Parameters:
            scale: double

        """
        return _opensim.FunctionBasedBushingForce_setForceVisualScale(self, *args)

    def setVisualAspectRatio(self, *args):
        """
        setVisualAspectRatio(FunctionBasedBushingForce self, double ratio)

        Parameters:
            ratio: double

        """
        return _opensim.FunctionBasedBushingForce_setVisualAspectRatio(self, *args)

    def computeDeflection(self, *args):
        """
        computeDeflection(FunctionBasedBushingForce self, State s) -> Vec6

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.FunctionBasedBushingForce_computeDeflection(self, *args)

    def computeForce(self, *args):
        """
        computeForce(FunctionBasedBushingForce self, State s, VectorOfSpatialVec bodyForces, Vector generalizedForces)

        Parameters:
            s: SimTK::State const &
            bodyForces: SimTK::Vector_< SimTK::SpatialVec > &
            generalizedForces: SimTK::Vector &

        """
        return _opensim.FunctionBasedBushingForce_computeForce(self, *args)

    def computePotentialEnergy(self, *args):
        """
        computePotentialEnergy(FunctionBasedBushingForce self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.FunctionBasedBushingForce_computePotentialEnergy(self, *args)

    def getRecordLabels(self):
        """
        getRecordLabels(FunctionBasedBushingForce self) -> ArrayStr

        Parameters:
            self: OpenSim::FunctionBasedBushingForce const *

        """
        return _opensim.FunctionBasedBushingForce_getRecordLabels(self)

    def getRecordValues(self, *args):
        """
        getRecordValues(FunctionBasedBushingForce self, State state) -> ArrayDouble

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.FunctionBasedBushingForce_getRecordValues(self, *args)

    __swig_destroy__ = _opensim.delete_FunctionBasedBushingForce
    __del__ = lambda self : None;
FunctionBasedBushingForce_swigregister = _opensim.FunctionBasedBushingForce_swigregister
FunctionBasedBushingForce_swigregister(FunctionBasedBushingForce)

def FunctionBasedBushingForce_safeDownCast(*args):
  """
    FunctionBasedBushingForce_safeDownCast(OpenSimObject obj) -> FunctionBasedBushingForce

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.FunctionBasedBushingForce_safeDownCast(*args)

def FunctionBasedBushingForce_getClassName():
  """FunctionBasedBushingForce_getClassName() -> std::string const &"""
  return _opensim.FunctionBasedBushingForce_getClassName()

class ExpressionBasedBushingForce(Force):
    """Proxy of C++ OpenSim::ExpressionBasedBushingForce class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ExpressionBasedBushingForce, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ExpressionBasedBushingForce, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ExpressionBasedBushingForce

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ExpressionBasedBushingForce_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ExpressionBasedBushingForce self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ExpressionBasedBushingForce_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ExpressionBasedBushingForce_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ExpressionBasedBushingForce self) -> ExpressionBasedBushingForce

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ExpressionBasedBushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_getConcreteClassName(self)

    def copyProperty_body_1(self, *args):
        """
        copyProperty_body_1(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_body_1(self, *args)

    def append_body_1(self, *args):
        """
        append_body_1(ExpressionBasedBushingForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_append_body_1(self, *args)

    def constructProperty_body_1(self, *args):
        """
        constructProperty_body_1(ExpressionBasedBushingForce self)
        constructProperty_body_1(ExpressionBasedBushingForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_body_1(self, *args)

    def get_body_1(self, *args):
        """
        get_body_1(ExpressionBasedBushingForce self, int i) -> std::string const

        Parameters:
            i: int

        get_body_1(ExpressionBasedBushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_body_1(self, *args)

    def upd_body_1(self, *args):
        """
        upd_body_1(ExpressionBasedBushingForce self, int i) -> std::string

        Parameters:
            i: int

        upd_body_1(ExpressionBasedBushingForce self) -> std::string &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_body_1(self, *args)

    def set_body_1(self, *args):
        """
        set_body_1(ExpressionBasedBushingForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body_1(ExpressionBasedBushingForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_set_body_1(self, *args)

    def copyProperty_body_2(self, *args):
        """
        copyProperty_body_2(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_body_2(self, *args)

    def append_body_2(self, *args):
        """
        append_body_2(ExpressionBasedBushingForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_append_body_2(self, *args)

    def constructProperty_body_2(self, *args):
        """
        constructProperty_body_2(ExpressionBasedBushingForce self)
        constructProperty_body_2(ExpressionBasedBushingForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_body_2(self, *args)

    def get_body_2(self, *args):
        """
        get_body_2(ExpressionBasedBushingForce self, int i) -> std::string const

        Parameters:
            i: int

        get_body_2(ExpressionBasedBushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_body_2(self, *args)

    def upd_body_2(self, *args):
        """
        upd_body_2(ExpressionBasedBushingForce self, int i) -> std::string

        Parameters:
            i: int

        upd_body_2(ExpressionBasedBushingForce self) -> std::string &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_body_2(self, *args)

    def set_body_2(self, *args):
        """
        set_body_2(ExpressionBasedBushingForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body_2(ExpressionBasedBushingForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_set_body_2(self, *args)

    def copyProperty_location_body_1(self, *args):
        """
        copyProperty_location_body_1(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_location_body_1(self, *args)

    def append_location_body_1(self, *args):
        """
        append_location_body_1(ExpressionBasedBushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_append_location_body_1(self, *args)

    def constructProperty_location_body_1(self, *args):
        """
        constructProperty_location_body_1(ExpressionBasedBushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_location_body_1(self, *args)

    def get_location_body_1(self, *args):
        """
        get_location_body_1(ExpressionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_location_body_1(ExpressionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_location_body_1(self, *args)

    def upd_location_body_1(self, *args):
        """
        upd_location_body_1(ExpressionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_location_body_1(ExpressionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_location_body_1(self, *args)

    def set_location_body_1(self, *args):
        """
        set_location_body_1(ExpressionBasedBushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location_body_1(ExpressionBasedBushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_set_location_body_1(self, *args)

    def copyProperty_orientation_body_1(self, *args):
        """
        copyProperty_orientation_body_1(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_orientation_body_1(self, *args)

    def append_orientation_body_1(self, *args):
        """
        append_orientation_body_1(ExpressionBasedBushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_append_orientation_body_1(self, *args)

    def constructProperty_orientation_body_1(self, *args):
        """
        constructProperty_orientation_body_1(ExpressionBasedBushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_orientation_body_1(self, *args)

    def get_orientation_body_1(self, *args):
        """
        get_orientation_body_1(ExpressionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_orientation_body_1(ExpressionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_orientation_body_1(self, *args)

    def upd_orientation_body_1(self, *args):
        """
        upd_orientation_body_1(ExpressionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_orientation_body_1(ExpressionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_orientation_body_1(self, *args)

    def set_orientation_body_1(self, *args):
        """
        set_orientation_body_1(ExpressionBasedBushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_orientation_body_1(ExpressionBasedBushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_set_orientation_body_1(self, *args)

    def copyProperty_location_body_2(self, *args):
        """
        copyProperty_location_body_2(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_location_body_2(self, *args)

    def append_location_body_2(self, *args):
        """
        append_location_body_2(ExpressionBasedBushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_append_location_body_2(self, *args)

    def constructProperty_location_body_2(self, *args):
        """
        constructProperty_location_body_2(ExpressionBasedBushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_location_body_2(self, *args)

    def get_location_body_2(self, *args):
        """
        get_location_body_2(ExpressionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_location_body_2(ExpressionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_location_body_2(self, *args)

    def upd_location_body_2(self, *args):
        """
        upd_location_body_2(ExpressionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_location_body_2(ExpressionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_location_body_2(self, *args)

    def set_location_body_2(self, *args):
        """
        set_location_body_2(ExpressionBasedBushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_location_body_2(ExpressionBasedBushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_set_location_body_2(self, *args)

    def copyProperty_orientation_body_2(self, *args):
        """
        copyProperty_orientation_body_2(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_orientation_body_2(self, *args)

    def append_orientation_body_2(self, *args):
        """
        append_orientation_body_2(ExpressionBasedBushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_append_orientation_body_2(self, *args)

    def constructProperty_orientation_body_2(self, *args):
        """
        constructProperty_orientation_body_2(ExpressionBasedBushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_orientation_body_2(self, *args)

    def get_orientation_body_2(self, *args):
        """
        get_orientation_body_2(ExpressionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_orientation_body_2(ExpressionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_orientation_body_2(self, *args)

    def upd_orientation_body_2(self, *args):
        """
        upd_orientation_body_2(ExpressionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_orientation_body_2(ExpressionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_orientation_body_2(self, *args)

    def set_orientation_body_2(self, *args):
        """
        set_orientation_body_2(ExpressionBasedBushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_orientation_body_2(ExpressionBasedBushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_set_orientation_body_2(self, *args)

    def copyProperty_Mx_expression(self, *args):
        """
        copyProperty_Mx_expression(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_Mx_expression(self, *args)

    def append_Mx_expression(self, *args):
        """
        append_Mx_expression(ExpressionBasedBushingForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_append_Mx_expression(self, *args)

    def constructProperty_Mx_expression(self, *args):
        """
        constructProperty_Mx_expression(ExpressionBasedBushingForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_Mx_expression(self, *args)

    def get_Mx_expression(self, *args):
        """
        get_Mx_expression(ExpressionBasedBushingForce self, int i) -> std::string const

        Parameters:
            i: int

        get_Mx_expression(ExpressionBasedBushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_Mx_expression(self, *args)

    def upd_Mx_expression(self, *args):
        """
        upd_Mx_expression(ExpressionBasedBushingForce self, int i) -> std::string

        Parameters:
            i: int

        upd_Mx_expression(ExpressionBasedBushingForce self) -> std::string &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_Mx_expression(self, *args)

    def set_Mx_expression(self, *args):
        """
        set_Mx_expression(ExpressionBasedBushingForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_Mx_expression(ExpressionBasedBushingForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_set_Mx_expression(self, *args)

    def copyProperty_My_expression(self, *args):
        """
        copyProperty_My_expression(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_My_expression(self, *args)

    def append_My_expression(self, *args):
        """
        append_My_expression(ExpressionBasedBushingForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_append_My_expression(self, *args)

    def constructProperty_My_expression(self, *args):
        """
        constructProperty_My_expression(ExpressionBasedBushingForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_My_expression(self, *args)

    def get_My_expression(self, *args):
        """
        get_My_expression(ExpressionBasedBushingForce self, int i) -> std::string const

        Parameters:
            i: int

        get_My_expression(ExpressionBasedBushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_My_expression(self, *args)

    def upd_My_expression(self, *args):
        """
        upd_My_expression(ExpressionBasedBushingForce self, int i) -> std::string

        Parameters:
            i: int

        upd_My_expression(ExpressionBasedBushingForce self) -> std::string &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_My_expression(self, *args)

    def set_My_expression(self, *args):
        """
        set_My_expression(ExpressionBasedBushingForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_My_expression(ExpressionBasedBushingForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_set_My_expression(self, *args)

    def copyProperty_Mz_expression(self, *args):
        """
        copyProperty_Mz_expression(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_Mz_expression(self, *args)

    def append_Mz_expression(self, *args):
        """
        append_Mz_expression(ExpressionBasedBushingForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_append_Mz_expression(self, *args)

    def constructProperty_Mz_expression(self, *args):
        """
        constructProperty_Mz_expression(ExpressionBasedBushingForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_Mz_expression(self, *args)

    def get_Mz_expression(self, *args):
        """
        get_Mz_expression(ExpressionBasedBushingForce self, int i) -> std::string const

        Parameters:
            i: int

        get_Mz_expression(ExpressionBasedBushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_Mz_expression(self, *args)

    def upd_Mz_expression(self, *args):
        """
        upd_Mz_expression(ExpressionBasedBushingForce self, int i) -> std::string

        Parameters:
            i: int

        upd_Mz_expression(ExpressionBasedBushingForce self) -> std::string &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_Mz_expression(self, *args)

    def set_Mz_expression(self, *args):
        """
        set_Mz_expression(ExpressionBasedBushingForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_Mz_expression(ExpressionBasedBushingForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_set_Mz_expression(self, *args)

    def copyProperty_Fx_expression(self, *args):
        """
        copyProperty_Fx_expression(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_Fx_expression(self, *args)

    def append_Fx_expression(self, *args):
        """
        append_Fx_expression(ExpressionBasedBushingForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_append_Fx_expression(self, *args)

    def constructProperty_Fx_expression(self, *args):
        """
        constructProperty_Fx_expression(ExpressionBasedBushingForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_Fx_expression(self, *args)

    def get_Fx_expression(self, *args):
        """
        get_Fx_expression(ExpressionBasedBushingForce self, int i) -> std::string const

        Parameters:
            i: int

        get_Fx_expression(ExpressionBasedBushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_Fx_expression(self, *args)

    def upd_Fx_expression(self, *args):
        """
        upd_Fx_expression(ExpressionBasedBushingForce self, int i) -> std::string

        Parameters:
            i: int

        upd_Fx_expression(ExpressionBasedBushingForce self) -> std::string &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_Fx_expression(self, *args)

    def set_Fx_expression(self, *args):
        """
        set_Fx_expression(ExpressionBasedBushingForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_Fx_expression(ExpressionBasedBushingForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_set_Fx_expression(self, *args)

    def copyProperty_Fy_expression(self, *args):
        """
        copyProperty_Fy_expression(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_Fy_expression(self, *args)

    def append_Fy_expression(self, *args):
        """
        append_Fy_expression(ExpressionBasedBushingForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_append_Fy_expression(self, *args)

    def constructProperty_Fy_expression(self, *args):
        """
        constructProperty_Fy_expression(ExpressionBasedBushingForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_Fy_expression(self, *args)

    def get_Fy_expression(self, *args):
        """
        get_Fy_expression(ExpressionBasedBushingForce self, int i) -> std::string const

        Parameters:
            i: int

        get_Fy_expression(ExpressionBasedBushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_Fy_expression(self, *args)

    def upd_Fy_expression(self, *args):
        """
        upd_Fy_expression(ExpressionBasedBushingForce self, int i) -> std::string

        Parameters:
            i: int

        upd_Fy_expression(ExpressionBasedBushingForce self) -> std::string &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_Fy_expression(self, *args)

    def set_Fy_expression(self, *args):
        """
        set_Fy_expression(ExpressionBasedBushingForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_Fy_expression(ExpressionBasedBushingForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_set_Fy_expression(self, *args)

    def copyProperty_Fz_expression(self, *args):
        """
        copyProperty_Fz_expression(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_Fz_expression(self, *args)

    def append_Fz_expression(self, *args):
        """
        append_Fz_expression(ExpressionBasedBushingForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_append_Fz_expression(self, *args)

    def constructProperty_Fz_expression(self, *args):
        """
        constructProperty_Fz_expression(ExpressionBasedBushingForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_Fz_expression(self, *args)

    def get_Fz_expression(self, *args):
        """
        get_Fz_expression(ExpressionBasedBushingForce self, int i) -> std::string const

        Parameters:
            i: int

        get_Fz_expression(ExpressionBasedBushingForce self) -> std::string const &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_Fz_expression(self, *args)

    def upd_Fz_expression(self, *args):
        """
        upd_Fz_expression(ExpressionBasedBushingForce self, int i) -> std::string

        Parameters:
            i: int

        upd_Fz_expression(ExpressionBasedBushingForce self) -> std::string &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_Fz_expression(self, *args)

    def set_Fz_expression(self, *args):
        """
        set_Fz_expression(ExpressionBasedBushingForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_Fz_expression(ExpressionBasedBushingForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_set_Fz_expression(self, *args)

    def copyProperty_visual_aspect_ratio(self, *args):
        """
        copyProperty_visual_aspect_ratio(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_visual_aspect_ratio(self, *args)

    def append_visual_aspect_ratio(self, *args):
        """
        append_visual_aspect_ratio(ExpressionBasedBushingForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ExpressionBasedBushingForce_append_visual_aspect_ratio(self, *args)

    def constructProperty_visual_aspect_ratio(self, *args):
        """
        constructProperty_visual_aspect_ratio(ExpressionBasedBushingForce self)
        constructProperty_visual_aspect_ratio(ExpressionBasedBushingForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_visual_aspect_ratio(self, *args)

    def get_visual_aspect_ratio(self, *args):
        """
        get_visual_aspect_ratio(ExpressionBasedBushingForce self, int i) -> double const

        Parameters:
            i: int

        get_visual_aspect_ratio(ExpressionBasedBushingForce self) -> double const &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_visual_aspect_ratio(self, *args)

    def upd_visual_aspect_ratio(self, *args):
        """
        upd_visual_aspect_ratio(ExpressionBasedBushingForce self, int i) -> double

        Parameters:
            i: int

        upd_visual_aspect_ratio(ExpressionBasedBushingForce self) -> double &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_visual_aspect_ratio(self, *args)

    def set_visual_aspect_ratio(self, *args):
        """
        set_visual_aspect_ratio(ExpressionBasedBushingForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_visual_aspect_ratio(ExpressionBasedBushingForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ExpressionBasedBushingForce_set_visual_aspect_ratio(self, *args)

    def copyProperty_moment_visual_scale(self, *args):
        """
        copyProperty_moment_visual_scale(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_moment_visual_scale(self, *args)

    def append_moment_visual_scale(self, *args):
        """
        append_moment_visual_scale(ExpressionBasedBushingForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ExpressionBasedBushingForce_append_moment_visual_scale(self, *args)

    def constructProperty_moment_visual_scale(self, *args):
        """
        constructProperty_moment_visual_scale(ExpressionBasedBushingForce self)
        constructProperty_moment_visual_scale(ExpressionBasedBushingForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_moment_visual_scale(self, *args)

    def get_moment_visual_scale(self, *args):
        """
        get_moment_visual_scale(ExpressionBasedBushingForce self, int i) -> double const

        Parameters:
            i: int

        get_moment_visual_scale(ExpressionBasedBushingForce self) -> double const &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_moment_visual_scale(self, *args)

    def upd_moment_visual_scale(self, *args):
        """
        upd_moment_visual_scale(ExpressionBasedBushingForce self, int i) -> double

        Parameters:
            i: int

        upd_moment_visual_scale(ExpressionBasedBushingForce self) -> double &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_moment_visual_scale(self, *args)

    def set_moment_visual_scale(self, *args):
        """
        set_moment_visual_scale(ExpressionBasedBushingForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_moment_visual_scale(ExpressionBasedBushingForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ExpressionBasedBushingForce_set_moment_visual_scale(self, *args)

    def copyProperty_force_visual_scale(self, *args):
        """
        copyProperty_force_visual_scale(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_force_visual_scale(self, *args)

    def append_force_visual_scale(self, *args):
        """
        append_force_visual_scale(ExpressionBasedBushingForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ExpressionBasedBushingForce_append_force_visual_scale(self, *args)

    def constructProperty_force_visual_scale(self, *args):
        """
        constructProperty_force_visual_scale(ExpressionBasedBushingForce self)
        constructProperty_force_visual_scale(ExpressionBasedBushingForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_force_visual_scale(self, *args)

    def get_force_visual_scale(self, *args):
        """
        get_force_visual_scale(ExpressionBasedBushingForce self, int i) -> double const

        Parameters:
            i: int

        get_force_visual_scale(ExpressionBasedBushingForce self) -> double const &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_force_visual_scale(self, *args)

    def upd_force_visual_scale(self, *args):
        """
        upd_force_visual_scale(ExpressionBasedBushingForce self, int i) -> double

        Parameters:
            i: int

        upd_force_visual_scale(ExpressionBasedBushingForce self) -> double &

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_force_visual_scale(self, *args)

    def set_force_visual_scale(self, *args):
        """
        set_force_visual_scale(ExpressionBasedBushingForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_force_visual_scale(ExpressionBasedBushingForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ExpressionBasedBushingForce_set_force_visual_scale(self, *args)

    def copyProperty_rotational_damping(self, *args):
        """
        copyProperty_rotational_damping(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_rotational_damping(self, *args)

    def append_rotational_damping(self, *args):
        """
        append_rotational_damping(ExpressionBasedBushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_append_rotational_damping(self, *args)

    def constructProperty_rotational_damping(self, *args):
        """
        constructProperty_rotational_damping(ExpressionBasedBushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_rotational_damping(self, *args)

    def get_rotational_damping(self, *args):
        """
        get_rotational_damping(ExpressionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_rotational_damping(ExpressionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_rotational_damping(self, *args)

    def upd_rotational_damping(self, *args):
        """
        upd_rotational_damping(ExpressionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_rotational_damping(ExpressionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_rotational_damping(self, *args)

    def set_rotational_damping(self, *args):
        """
        set_rotational_damping(ExpressionBasedBushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_rotational_damping(ExpressionBasedBushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_set_rotational_damping(self, *args)

    def copyProperty_translational_damping(self, *args):
        """
        copyProperty_translational_damping(ExpressionBasedBushingForce self, ExpressionBasedBushingForce source)

        Parameters:
            source: OpenSim::ExpressionBasedBushingForce::Self const &

        """
        return _opensim.ExpressionBasedBushingForce_copyProperty_translational_damping(self, *args)

    def append_translational_damping(self, *args):
        """
        append_translational_damping(ExpressionBasedBushingForce self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_append_translational_damping(self, *args)

    def constructProperty_translational_damping(self, *args):
        """
        constructProperty_translational_damping(ExpressionBasedBushingForce self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_constructProperty_translational_damping(self, *args)

    def get_translational_damping(self, *args):
        """
        get_translational_damping(ExpressionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        get_translational_damping(ExpressionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_get_translational_damping(self, *args)

    def upd_translational_damping(self, *args):
        """
        upd_translational_damping(ExpressionBasedBushingForce self, int i) -> Vec3

        Parameters:
            i: int

        upd_translational_damping(ExpressionBasedBushingForce self) -> Vec3

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_upd_translational_damping(self, *args)

    def set_translational_damping(self, *args):
        """
        set_translational_damping(ExpressionBasedBushingForce self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_translational_damping(ExpressionBasedBushingForce self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_set_translational_damping(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ExpressionBasedBushingForce self) -> ExpressionBasedBushingForce
        __init__(OpenSim::ExpressionBasedBushingForce self, std::string const & body1Name, Vec3 point1, Vec3 orientation1, std::string const & body2Name, 
            Vec3 point2, Vec3 orientation2) -> ExpressionBasedBushingForce

        Parameters:
            body1Name: std::string const &
            point1: SimTK::Vec3 const &
            orientation1: SimTK::Vec3 const &
            body2Name: std::string const &
            point2: SimTK::Vec3 const &
            orientation2: SimTK::Vec3 const &

        __init__(OpenSim::ExpressionBasedBushingForce self, std::string const & body1Name, Vec3 point1, Vec3 orientation1, std::string const & body2Name, 
            Vec3 point2, Vec3 orientation2, Vec3 transStiffness, Vec3 rotStiffness, 
            Vec3 transDamping, Vec3 rotDamping) -> ExpressionBasedBushingForce

        Parameters:
            body1Name: std::string const &
            point1: SimTK::Vec3 const &
            orientation1: SimTK::Vec3 const &
            body2Name: std::string const &
            point2: SimTK::Vec3 const &
            orientation2: SimTK::Vec3 const &
            transStiffness: SimTK::Vec3 const &
            rotStiffness: SimTK::Vec3 const &
            transDamping: SimTK::Vec3 const &
            rotDamping: SimTK::Vec3 const &

        """
        this = _opensim.new_ExpressionBasedBushingForce(*args)
        try: self.this.append(this)
        except: self.this = this
    def setBody1ByName(self, *args):
        """
        setBody1ByName(ExpressionBasedBushingForce self, std::string const & aBodyName)

        Parameters:
            aBodyName: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_setBody1ByName(self, *args)

    def setBody1BushingLocation(self, *args):
        """
        setBody1BushingLocation(ExpressionBasedBushingForce self, Vec3 location, Vec3 orientation=SimTK::Vec3(0))

        Parameters:
            location: SimTK::Vec3 const &
            orientation: SimTK::Vec3 const &

        setBody1BushingLocation(ExpressionBasedBushingForce self, Vec3 location)

        Parameters:
            location: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_setBody1BushingLocation(self, *args)

    def setBody2ByName(self, *args):
        """
        setBody2ByName(ExpressionBasedBushingForce self, std::string const & aBodyName)

        Parameters:
            aBodyName: std::string const &

        """
        return _opensim.ExpressionBasedBushingForce_setBody2ByName(self, *args)

    def setBody2BushingLocation(self, *args):
        """
        setBody2BushingLocation(ExpressionBasedBushingForce self, Vec3 location, Vec3 orientation=SimTK::Vec3(0))

        Parameters:
            location: SimTK::Vec3 const &
            orientation: SimTK::Vec3 const &

        setBody2BushingLocation(ExpressionBasedBushingForce self, Vec3 location)

        Parameters:
            location: SimTK::Vec3 const &

        """
        return _opensim.ExpressionBasedBushingForce_setBody2BushingLocation(self, *args)

    def setMomentVisualScale(self, *args):
        """
        setMomentVisualScale(ExpressionBasedBushingForce self, double scale)

        Parameters:
            scale: double

        """
        return _opensim.ExpressionBasedBushingForce_setMomentVisualScale(self, *args)

    def setForceVisualScale(self, *args):
        """
        setForceVisualScale(ExpressionBasedBushingForce self, double scale)

        Parameters:
            scale: double

        """
        return _opensim.ExpressionBasedBushingForce_setForceVisualScale(self, *args)

    def setVisualAspectRatio(self, *args):
        """
        setVisualAspectRatio(ExpressionBasedBushingForce self, double ratio)

        Parameters:
            ratio: double

        """
        return _opensim.ExpressionBasedBushingForce_setVisualAspectRatio(self, *args)

    def setMxExpression(self, *args):
        """
        setMxExpression(ExpressionBasedBushingForce self, std::string expression)

        Parameters:
            expression: std::string

        """
        return _opensim.ExpressionBasedBushingForce_setMxExpression(self, *args)

    def setMyExpression(self, *args):
        """
        setMyExpression(ExpressionBasedBushingForce self, std::string expression)

        Parameters:
            expression: std::string

        """
        return _opensim.ExpressionBasedBushingForce_setMyExpression(self, *args)

    def setMzExpression(self, *args):
        """
        setMzExpression(ExpressionBasedBushingForce self, std::string expression)

        Parameters:
            expression: std::string

        """
        return _opensim.ExpressionBasedBushingForce_setMzExpression(self, *args)

    def setFxExpression(self, *args):
        """
        setFxExpression(ExpressionBasedBushingForce self, std::string expression)

        Parameters:
            expression: std::string

        """
        return _opensim.ExpressionBasedBushingForce_setFxExpression(self, *args)

    def setFyExpression(self, *args):
        """
        setFyExpression(ExpressionBasedBushingForce self, std::string expression)

        Parameters:
            expression: std::string

        """
        return _opensim.ExpressionBasedBushingForce_setFyExpression(self, *args)

    def setFzExpression(self, *args):
        """
        setFzExpression(ExpressionBasedBushingForce self, std::string expression)

        Parameters:
            expression: std::string

        """
        return _opensim.ExpressionBasedBushingForce_setFzExpression(self, *args)

    def getMxExpression(self):
        """
        getMxExpression(ExpressionBasedBushingForce self) -> std::string

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_getMxExpression(self)

    def getMyExpression(self):
        """
        getMyExpression(ExpressionBasedBushingForce self) -> std::string

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_getMyExpression(self)

    def getMzExpression(self):
        """
        getMzExpression(ExpressionBasedBushingForce self) -> std::string

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_getMzExpression(self)

    def getFxExpression(self):
        """
        getFxExpression(ExpressionBasedBushingForce self) -> std::string

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_getFxExpression(self)

    def getFyExpression(self):
        """
        getFyExpression(ExpressionBasedBushingForce self) -> std::string

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_getFyExpression(self)

    def getFzExpression(self):
        """
        getFzExpression(ExpressionBasedBushingForce self) -> std::string

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce *

        """
        return _opensim.ExpressionBasedBushingForce_getFzExpression(self)

    def computeDeflection(self, *args):
        """
        computeDeflection(ExpressionBasedBushingForce self, State s) -> Vec6

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.ExpressionBasedBushingForce_computeDeflection(self, *args)

    def computeForce(self, *args):
        """
        computeForce(ExpressionBasedBushingForce self, State s, VectorOfSpatialVec bodyForces, Vector generalizedForces)

        Parameters:
            s: SimTK::State const &
            bodyForces: SimTK::Vector_< SimTK::SpatialVec > &
            generalizedForces: SimTK::Vector &

        """
        return _opensim.ExpressionBasedBushingForce_computeForce(self, *args)

    def getRecordLabels(self):
        """
        getRecordLabels(ExpressionBasedBushingForce self) -> ArrayStr

        Parameters:
            self: OpenSim::ExpressionBasedBushingForce const *

        """
        return _opensim.ExpressionBasedBushingForce_getRecordLabels(self)

    def getRecordValues(self, *args):
        """
        getRecordValues(ExpressionBasedBushingForce self, State state) -> ArrayDouble

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.ExpressionBasedBushingForce_getRecordValues(self, *args)

    __swig_destroy__ = _opensim.delete_ExpressionBasedBushingForce
    __del__ = lambda self : None;
ExpressionBasedBushingForce_swigregister = _opensim.ExpressionBasedBushingForce_swigregister
ExpressionBasedBushingForce_swigregister(ExpressionBasedBushingForce)

def ExpressionBasedBushingForce_safeDownCast(*args):
  """
    ExpressionBasedBushingForce_safeDownCast(OpenSimObject obj) -> ExpressionBasedBushingForce

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ExpressionBasedBushingForce_safeDownCast(*args)

def ExpressionBasedBushingForce_getClassName():
  """ExpressionBasedBushingForce_getClassName() -> std::string const &"""
  return _opensim.ExpressionBasedBushingForce_getClassName()

class Kinematics(Analysis):
    """Proxy of C++ OpenSim::Kinematics class"""
    __swig_setmethods__ = {}
    for _s in [Analysis]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Kinematics, name, value)
    __swig_getmethods__ = {}
    for _s in [Analysis]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Kinematics, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Kinematics

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Kinematics_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Kinematics self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Kinematics_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Kinematics_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Kinematics self) -> Kinematics

        Parameters:
            self: OpenSim::Kinematics const *

        """
        return _opensim.Kinematics_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Kinematics self) -> std::string const &

        Parameters:
            self: OpenSim::Kinematics const *

        """
        return _opensim.Kinematics_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Kinematics self, Model aModel=None) -> Kinematics

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::Kinematics self) -> Kinematics
        __init__(OpenSim::Kinematics self, std::string const & aFileName) -> Kinematics

        Parameters:
            aFileName: std::string const &

        """
        this = _opensim.new_Kinematics(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_Kinematics
    __del__ = lambda self : None;
    def setStorageCapacityIncrements(self, *args):
        """
        setStorageCapacityIncrements(Kinematics self, int aIncrement)

        Parameters:
            aIncrement: int

        """
        return _opensim.Kinematics_setStorageCapacityIncrements(self, *args)

    def getAccelerationStorage(self):
        """
        getAccelerationStorage(Kinematics self) -> Storage

        Parameters:
            self: OpenSim::Kinematics *

        """
        return _opensim.Kinematics_getAccelerationStorage(self)

    def getVelocityStorage(self):
        """
        getVelocityStorage(Kinematics self) -> Storage

        Parameters:
            self: OpenSim::Kinematics *

        """
        return _opensim.Kinematics_getVelocityStorage(self)

    def getPositionStorage(self):
        """
        getPositionStorage(Kinematics self) -> Storage

        Parameters:
            self: OpenSim::Kinematics *

        """
        return _opensim.Kinematics_getPositionStorage(self)

    def setModel(self, *args):
        """
        setModel(Kinematics self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.Kinematics_setModel(self, *args)

    def setRecordAccelerations(self, *args):
        """
        setRecordAccelerations(Kinematics self, bool aRecordAccelerations)

        Parameters:
            aRecordAccelerations: bool

        """
        return _opensim.Kinematics_setRecordAccelerations(self, *args)

    def begin(self, *args):
        """
        begin(Kinematics self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Kinematics_begin(self, *args)

    def step(self, *args):
        """
        step(Kinematics self, State s, int setNumber) -> int

        Parameters:
            s: SimTK::State const &
            setNumber: int

        """
        return _opensim.Kinematics_step(self, *args)

    def end(self, *args):
        """
        end(Kinematics self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Kinematics_end(self, *args)

    def printResults(self, *args):
        """
        printResults(Kinematics self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0, std::string const & aExtension=".sto") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(Kinematics self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0) -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double

        printResults(Kinematics self, std::string const & aBaseName, std::string const & aDir="") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &

        printResults(Kinematics self, std::string const & aBaseName) -> int

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.Kinematics_printResults(self, *args)

Kinematics_swigregister = _opensim.Kinematics_swigregister
Kinematics_swigregister(Kinematics)

def Kinematics_safeDownCast(*args):
  """
    Kinematics_safeDownCast(OpenSimObject obj) -> Kinematics

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Kinematics_safeDownCast(*args)

def Kinematics_getClassName():
  """Kinematics_getClassName() -> std::string const &"""
  return _opensim.Kinematics_getClassName()

class Actuation(Analysis):
    """Proxy of C++ OpenSim::Actuation class"""
    __swig_setmethods__ = {}
    for _s in [Analysis]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Actuation, name, value)
    __swig_getmethods__ = {}
    for _s in [Analysis]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Actuation, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Actuation

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Actuation_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Actuation self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Actuation_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Actuation_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Actuation self) -> Actuation

        Parameters:
            self: OpenSim::Actuation const *

        """
        return _opensim.Actuation_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Actuation self) -> std::string const &

        Parameters:
            self: OpenSim::Actuation const *

        """
        return _opensim.Actuation_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Actuation self, Model aModel=None) -> Actuation

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::Actuation self) -> Actuation
        __init__(OpenSim::Actuation self, std::string const & aFileName) -> Actuation

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Actuation self, Actuation aObject) -> Actuation

        Parameters:
            aObject: OpenSim::Actuation const &

        """
        this = _opensim.new_Actuation(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_Actuation
    __del__ = lambda self : None;
    def setStorageCapacityIncrements(self, *args):
        """
        setStorageCapacityIncrements(Actuation self, int aIncrement)

        Parameters:
            aIncrement: int

        """
        return _opensim.Actuation_setStorageCapacityIncrements(self, *args)

    def getForceStorage(self):
        """
        getForceStorage(Actuation self) -> Storage

        Parameters:
            self: OpenSim::Actuation const *

        """
        return _opensim.Actuation_getForceStorage(self)

    def getSpeedStorage(self):
        """
        getSpeedStorage(Actuation self) -> Storage

        Parameters:
            self: OpenSim::Actuation const *

        """
        return _opensim.Actuation_getSpeedStorage(self)

    def getPowerStorage(self):
        """
        getPowerStorage(Actuation self) -> Storage

        Parameters:
            self: OpenSim::Actuation const *

        """
        return _opensim.Actuation_getPowerStorage(self)

    def setModel(self, *args):
        """
        setModel(Actuation self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.Actuation_setModel(self, *args)

    def begin(self, *args):
        """
        begin(Actuation self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Actuation_begin(self, *args)

    def step(self, *args):
        """
        step(Actuation self, State s, int setNumber) -> int

        Parameters:
            s: SimTK::State const &
            setNumber: int

        """
        return _opensim.Actuation_step(self, *args)

    def end(self, *args):
        """
        end(Actuation self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Actuation_end(self, *args)

    def printResults(self, *args):
        """
        printResults(Actuation self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0, std::string const & aExtension=".sto") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(Actuation self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0) -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double

        printResults(Actuation self, std::string const & aBaseName, std::string const & aDir="") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &

        printResults(Actuation self, std::string const & aBaseName) -> int

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.Actuation_printResults(self, *args)

Actuation_swigregister = _opensim.Actuation_swigregister
Actuation_swigregister(Actuation)

def Actuation_safeDownCast(*args):
  """
    Actuation_safeDownCast(OpenSimObject obj) -> Actuation

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Actuation_safeDownCast(*args)

def Actuation_getClassName():
  """Actuation_getClassName() -> std::string const &"""
  return _opensim.Actuation_getClassName()

class MuscleAnalysis(Analysis):
    """Proxy of C++ OpenSim::MuscleAnalysis class"""
    __swig_setmethods__ = {}
    for _s in [Analysis]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MuscleAnalysis, name, value)
    __swig_getmethods__ = {}
    for _s in [Analysis]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MuscleAnalysis, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MuscleAnalysis

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MuscleAnalysis_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MuscleAnalysis self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MuscleAnalysis_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MuscleAnalysis_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MuscleAnalysis self) -> MuscleAnalysis

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MuscleAnalysis self) -> std::string const &

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MuscleAnalysis self, Model aModel=None) -> MuscleAnalysis

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::MuscleAnalysis self) -> MuscleAnalysis
        __init__(OpenSim::MuscleAnalysis self, std::string const & aFileName) -> MuscleAnalysis

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::MuscleAnalysis self, MuscleAnalysis aObject) -> MuscleAnalysis

        Parameters:
            aObject: OpenSim::MuscleAnalysis const &

        """
        this = _opensim.new_MuscleAnalysis(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_MuscleAnalysis
    __del__ = lambda self : None;
    def setModel(self, *args):
        """
        setModel(MuscleAnalysis self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.MuscleAnalysis_setModel(self, *args)

    def setStorageCapacityIncrements(self, *args):
        """
        setStorageCapacityIncrements(MuscleAnalysis self, int aIncrement)

        Parameters:
            aIncrement: int

        """
        return _opensim.MuscleAnalysis_setStorageCapacityIncrements(self, *args)

    def getPennationAngleStorage(self):
        """
        getPennationAngleStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getPennationAngleStorage(self)

    def getMuscleTendonLengthStorage(self):
        """
        getMuscleTendonLengthStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getMuscleTendonLengthStorage(self)

    def getFiberLengthStorage(self):
        """
        getFiberLengthStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getFiberLengthStorage(self)

    def getNormalizedFiberLengthStorage(self):
        """
        getNormalizedFiberLengthStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getNormalizedFiberLengthStorage(self)

    def getTendonLengthStorage(self):
        """
        getTendonLengthStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getTendonLengthStorage(self)

    def getFiberVelocityStorage(self):
        """
        getFiberVelocityStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getFiberVelocityStorage(self)

    def getNormalizedFiberVelocityStorage(self):
        """
        getNormalizedFiberVelocityStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getNormalizedFiberVelocityStorage(self)

    def getPennationAngularVelocityStorage(self):
        """
        getPennationAngularVelocityStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getPennationAngularVelocityStorage(self)

    def getForceStorage(self):
        """
        getForceStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getForceStorage(self)

    def getFiberForceStorage(self):
        """
        getFiberForceStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getFiberForceStorage(self)

    def getActiveFiberForceStorage(self):
        """
        getActiveFiberForceStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getActiveFiberForceStorage(self)

    def getPassiveFiberForceStorage(self):
        """
        getPassiveFiberForceStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getPassiveFiberForceStorage(self)

    def getActiveFiberForceAlongTendonStorage(self):
        """
        getActiveFiberForceAlongTendonStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getActiveFiberForceAlongTendonStorage(self)

    def getPassiveFiberForceAlongTendonStorage(self):
        """
        getPassiveFiberForceAlongTendonStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getPassiveFiberForceAlongTendonStorage(self)

    def getFiberActivePowerStorage(self):
        """
        getFiberActivePowerStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getFiberActivePowerStorage(self)

    def getFiberPassivePowerStorage(self):
        """
        getFiberPassivePowerStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getFiberPassivePowerStorage(self)

    def getTendonPowerStorage(self):
        """
        getTendonPowerStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getTendonPowerStorage(self)

    def getMusclePowerStorage(self):
        """
        getMusclePowerStorage(MuscleAnalysis self) -> Storage

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getMusclePowerStorage(self)

    def setMuscles(self, *args):
        """
        setMuscles(MuscleAnalysis self, ArrayStr aMuscles)

        Parameters:
            aMuscles: OpenSim::Array< std::string > &

        """
        return _opensim.MuscleAnalysis_setMuscles(self, *args)

    def setCoordinates(self, *args):
        """
        setCoordinates(MuscleAnalysis self, ArrayStr aCoordinates)

        Parameters:
            aCoordinates: OpenSim::Array< std::string > &

        """
        return _opensim.MuscleAnalysis_setCoordinates(self, *args)

    def setComputeMoments(self, *args):
        """
        setComputeMoments(MuscleAnalysis self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.MuscleAnalysis_setComputeMoments(self, *args)

    def getComputeMoments(self):
        """
        getComputeMoments(MuscleAnalysis self) -> bool

        Parameters:
            self: OpenSim::MuscleAnalysis const *

        """
        return _opensim.MuscleAnalysis_getComputeMoments(self)

    def begin(self, *args):
        """
        begin(MuscleAnalysis self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.MuscleAnalysis_begin(self, *args)

    def step(self, *args):
        """
        step(MuscleAnalysis self, State s, int setNumber) -> int

        Parameters:
            s: SimTK::State const &
            setNumber: int

        """
        return _opensim.MuscleAnalysis_step(self, *args)

    def end(self, *args):
        """
        end(MuscleAnalysis self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.MuscleAnalysis_end(self, *args)

    def printResults(self, *args):
        """
        printResults(MuscleAnalysis self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0, std::string const & aExtension=".sto") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(MuscleAnalysis self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0) -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double

        printResults(MuscleAnalysis self, std::string const & aBaseName, std::string const & aDir="") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &

        printResults(MuscleAnalysis self, std::string const & aBaseName) -> int

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.MuscleAnalysis_printResults(self, *args)

    def allocateStorageObjects(self):
        """
        allocateStorageObjects(MuscleAnalysis self)

        Parameters:
            self: OpenSim::MuscleAnalysis *

        """
        return _opensim.MuscleAnalysis_allocateStorageObjects(self)

MuscleAnalysis_swigregister = _opensim.MuscleAnalysis_swigregister
MuscleAnalysis_swigregister(MuscleAnalysis)

def MuscleAnalysis_safeDownCast(*args):
  """
    MuscleAnalysis_safeDownCast(OpenSimObject obj) -> MuscleAnalysis

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MuscleAnalysis_safeDownCast(*args)

def MuscleAnalysis_getClassName():
  """MuscleAnalysis_getClassName() -> std::string const &"""
  return _opensim.MuscleAnalysis_getClassName()

class InverseDynamics(Analysis):
    """Proxy of C++ OpenSim::InverseDynamics class"""
    __swig_setmethods__ = {}
    for _s in [Analysis]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, InverseDynamics, name, value)
    __swig_getmethods__ = {}
    for _s in [Analysis]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, InverseDynamics, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> InverseDynamics

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.InverseDynamics_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(InverseDynamics self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.InverseDynamics_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.InverseDynamics_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(InverseDynamics self) -> InverseDynamics

        Parameters:
            self: OpenSim::InverseDynamics const *

        """
        return _opensim.InverseDynamics_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(InverseDynamics self) -> std::string const &

        Parameters:
            self: OpenSim::InverseDynamics const *

        """
        return _opensim.InverseDynamics_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::InverseDynamics self, Model aModel=None) -> InverseDynamics

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::InverseDynamics self) -> InverseDynamics
        __init__(OpenSim::InverseDynamics self, InverseDynamics aObject) -> InverseDynamics

        Parameters:
            aObject: OpenSim::InverseDynamics const &

        """
        this = _opensim.new_InverseDynamics(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_InverseDynamics
    __del__ = lambda self : None;
    def setStorageCapacityIncrements(self, *args):
        """
        setStorageCapacityIncrements(InverseDynamics self, int aIncrement)

        Parameters:
            aIncrement: int

        """
        return _opensim.InverseDynamics_setStorageCapacityIncrements(self, *args)

    def getStorage(self):
        """
        getStorage(InverseDynamics self) -> Storage

        Parameters:
            self: OpenSim::InverseDynamics *

        """
        return _opensim.InverseDynamics_getStorage(self)

    def getUseModelForceSet(self):
        """
        getUseModelForceSet(InverseDynamics self) -> bool

        Parameters:
            self: OpenSim::InverseDynamics *

        """
        return _opensim.InverseDynamics_getUseModelForceSet(self)

    def setUseModelForceSet(self, *args):
        """
        setUseModelForceSet(InverseDynamics self, bool aUseModelForceSet)

        Parameters:
            aUseModelForceSet: bool

        """
        return _opensim.InverseDynamics_setUseModelForceSet(self, *args)

    def setModel(self, *args):
        """
        setModel(InverseDynamics self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.InverseDynamics_setModel(self, *args)

    def printResults(self, *args):
        """
        printResults(InverseDynamics self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0, std::string const & aExtension=".sto") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(InverseDynamics self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0) -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double

        printResults(InverseDynamics self, std::string const & aBaseName, std::string const & aDir="") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &

        printResults(InverseDynamics self, std::string const & aBaseName) -> int

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.InverseDynamics_printResults(self, *args)

InverseDynamics_swigregister = _opensim.InverseDynamics_swigregister
InverseDynamics_swigregister(InverseDynamics)

def InverseDynamics_safeDownCast(*args):
  """
    InverseDynamics_safeDownCast(OpenSimObject obj) -> InverseDynamics

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.InverseDynamics_safeDownCast(*args)

def InverseDynamics_getClassName():
  """InverseDynamics_getClassName() -> std::string const &"""
  return _opensim.InverseDynamics_getClassName()

class StaticOptimization(Analysis):
    """Proxy of C++ OpenSim::StaticOptimization class"""
    __swig_setmethods__ = {}
    for _s in [Analysis]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, StaticOptimization, name, value)
    __swig_getmethods__ = {}
    for _s in [Analysis]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, StaticOptimization, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> StaticOptimization

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.StaticOptimization_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(StaticOptimization self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.StaticOptimization_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.StaticOptimization_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(StaticOptimization self) -> StaticOptimization

        Parameters:
            self: OpenSim::StaticOptimization const *

        """
        return _opensim.StaticOptimization_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(StaticOptimization self) -> std::string const &

        Parameters:
            self: OpenSim::StaticOptimization const *

        """
        return _opensim.StaticOptimization_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::StaticOptimization self, Model aModel=None) -> StaticOptimization

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::StaticOptimization self) -> StaticOptimization
        __init__(OpenSim::StaticOptimization self, StaticOptimization aObject) -> StaticOptimization

        Parameters:
            aObject: OpenSim::StaticOptimization const &

        """
        this = _opensim.new_StaticOptimization(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_StaticOptimization
    __del__ = lambda self : None;
    def setStorageCapacityIncrements(self, *args):
        """
        setStorageCapacityIncrements(StaticOptimization self, int aIncrement)

        Parameters:
            aIncrement: int

        """
        return _opensim.StaticOptimization_setStorageCapacityIncrements(self, *args)

    def getActivationStorage(self):
        """
        getActivationStorage(StaticOptimization self) -> Storage

        Parameters:
            self: OpenSim::StaticOptimization *

        """
        return _opensim.StaticOptimization_getActivationStorage(self)

    def getForceStorage(self):
        """
        getForceStorage(StaticOptimization self) -> Storage

        Parameters:
            self: OpenSim::StaticOptimization *

        """
        return _opensim.StaticOptimization_getForceStorage(self)

    def getUseModelForceSet(self):
        """
        getUseModelForceSet(StaticOptimization self) -> bool

        Parameters:
            self: OpenSim::StaticOptimization *

        """
        return _opensim.StaticOptimization_getUseModelForceSet(self)

    def setUseModelForceSet(self, *args):
        """
        setUseModelForceSet(StaticOptimization self, bool aUseModelActuatorSet)

        Parameters:
            aUseModelActuatorSet: bool

        """
        return _opensim.StaticOptimization_setUseModelForceSet(self, *args)

    def setModel(self, *args):
        """
        setModel(StaticOptimization self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.StaticOptimization_setModel(self, *args)

    def setActivationExponent(self, *args):
        """
        setActivationExponent(StaticOptimization self, double const aExponent)

        Parameters:
            aExponent: double const

        """
        return _opensim.StaticOptimization_setActivationExponent(self, *args)

    def getActivationExponent(self):
        """
        getActivationExponent(StaticOptimization self) -> double

        Parameters:
            self: OpenSim::StaticOptimization const *

        """
        return _opensim.StaticOptimization_getActivationExponent(self)

    def setUseMusclePhysiology(self, *args):
        """
        setUseMusclePhysiology(StaticOptimization self, bool const useIt)

        Parameters:
            useIt: bool const

        """
        return _opensim.StaticOptimization_setUseMusclePhysiology(self, *args)

    def getUseMusclePhysiology(self):
        """
        getUseMusclePhysiology(StaticOptimization self) -> bool

        Parameters:
            self: OpenSim::StaticOptimization const *

        """
        return _opensim.StaticOptimization_getUseMusclePhysiology(self)

    def setConvergenceCriterion(self, *args):
        """
        setConvergenceCriterion(StaticOptimization self, double const tolerance)

        Parameters:
            tolerance: double const

        """
        return _opensim.StaticOptimization_setConvergenceCriterion(self, *args)

    def getConvergenceCriterion(self):
        """
        getConvergenceCriterion(StaticOptimization self) -> double

        Parameters:
            self: OpenSim::StaticOptimization *

        """
        return _opensim.StaticOptimization_getConvergenceCriterion(self)

    def setMaxIterations(self, *args):
        """
        setMaxIterations(StaticOptimization self, int const maxIt)

        Parameters:
            maxIt: int const

        """
        return _opensim.StaticOptimization_setMaxIterations(self, *args)

    def getMaxIterations(self):
        """
        getMaxIterations(StaticOptimization self) -> int

        Parameters:
            self: OpenSim::StaticOptimization *

        """
        return _opensim.StaticOptimization_getMaxIterations(self)

    def begin(self, *args):
        """
        begin(StaticOptimization self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.StaticOptimization_begin(self, *args)

    def step(self, *args):
        """
        step(StaticOptimization self, State s, int setNumber) -> int

        Parameters:
            s: SimTK::State const &
            setNumber: int

        """
        return _opensim.StaticOptimization_step(self, *args)

    def end(self, *args):
        """
        end(StaticOptimization self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.StaticOptimization_end(self, *args)

    def printResults(self, *args):
        """
        printResults(StaticOptimization self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0, std::string const & aExtension=".sto") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(StaticOptimization self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0) -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double

        printResults(StaticOptimization self, std::string const & aBaseName, std::string const & aDir="") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &

        printResults(StaticOptimization self, std::string const & aBaseName) -> int

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.StaticOptimization_printResults(self, *args)

StaticOptimization_swigregister = _opensim.StaticOptimization_swigregister
StaticOptimization_swigregister(StaticOptimization)

def StaticOptimization_safeDownCast(*args):
  """
    StaticOptimization_safeDownCast(OpenSimObject obj) -> StaticOptimization

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.StaticOptimization_safeDownCast(*args)

def StaticOptimization_getClassName():
  """StaticOptimization_getClassName() -> std::string const &"""
  return _opensim.StaticOptimization_getClassName()

class ForceReporter(Analysis):
    """Proxy of C++ OpenSim::ForceReporter class"""
    __swig_setmethods__ = {}
    for _s in [Analysis]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ForceReporter, name, value)
    __swig_getmethods__ = {}
    for _s in [Analysis]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ForceReporter, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ForceReporter

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ForceReporter_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ForceReporter self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ForceReporter_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ForceReporter_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ForceReporter self) -> ForceReporter

        Parameters:
            self: OpenSim::ForceReporter const *

        """
        return _opensim.ForceReporter_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ForceReporter self) -> std::string const &

        Parameters:
            self: OpenSim::ForceReporter const *

        """
        return _opensim.ForceReporter_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ForceReporter self, Model aModel=None) -> ForceReporter

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::ForceReporter self) -> ForceReporter
        __init__(OpenSim::ForceReporter self, std::string const & aFileName) -> ForceReporter

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::ForceReporter self, ForceReporter aObject) -> ForceReporter

        Parameters:
            aObject: OpenSim::ForceReporter const &

        """
        this = _opensim.new_ForceReporter(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ForceReporter
    __del__ = lambda self : None;
    def getForceStorage(self):
        """
        getForceStorage(ForceReporter self) -> Storage

        Parameters:
            self: OpenSim::ForceReporter const *

        """
        return _opensim.ForceReporter_getForceStorage(self)

    def updForceStorage(self):
        """
        updForceStorage(ForceReporter self) -> Storage

        Parameters:
            self: OpenSim::ForceReporter *

        """
        return _opensim.ForceReporter_updForceStorage(self)

    def setModel(self, *args):
        """
        setModel(ForceReporter self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.ForceReporter_setModel(self, *args)

    def includeConstraintForces(self, *args):
        """
        includeConstraintForces(ForceReporter self, bool flag)

        Parameters:
            flag: bool

        """
        return _opensim.ForceReporter_includeConstraintForces(self, *args)

    def begin(self, *args):
        """
        begin(ForceReporter self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.ForceReporter_begin(self, *args)

    def step(self, *args):
        """
        step(ForceReporter self, State s, int setNumber) -> int

        Parameters:
            s: SimTK::State const &
            setNumber: int

        """
        return _opensim.ForceReporter_step(self, *args)

    def end(self, *args):
        """
        end(ForceReporter self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.ForceReporter_end(self, *args)

    def printResults(self, *args):
        """
        printResults(ForceReporter self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0, std::string const & aExtension=".sto") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(ForceReporter self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0) -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double

        printResults(ForceReporter self, std::string const & aBaseName, std::string const & aDir="") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &

        printResults(ForceReporter self, std::string const & aBaseName) -> int

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.ForceReporter_printResults(self, *args)

ForceReporter_swigregister = _opensim.ForceReporter_swigregister
ForceReporter_swigregister(ForceReporter)

def ForceReporter_safeDownCast(*args):
  """
    ForceReporter_safeDownCast(OpenSimObject obj) -> ForceReporter

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ForceReporter_safeDownCast(*args)

def ForceReporter_getClassName():
  """ForceReporter_getClassName() -> std::string const &"""
  return _opensim.ForceReporter_getClassName()

class PointKinematics(Analysis):
    """Proxy of C++ OpenSim::PointKinematics class"""
    __swig_setmethods__ = {}
    for _s in [Analysis]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PointKinematics, name, value)
    __swig_getmethods__ = {}
    for _s in [Analysis]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PointKinematics, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PointKinematics

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PointKinematics_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PointKinematics self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PointKinematics_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PointKinematics_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PointKinematics self) -> PointKinematics

        Parameters:
            self: OpenSim::PointKinematics const *

        """
        return _opensim.PointKinematics_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PointKinematics self) -> std::string const &

        Parameters:
            self: OpenSim::PointKinematics const *

        """
        return _opensim.PointKinematics_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PointKinematics self, Model aModel=None) -> PointKinematics

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::PointKinematics self) -> PointKinematics
        __init__(OpenSim::PointKinematics self, std::string const & aFileName) -> PointKinematics

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::PointKinematics self, PointKinematics aObject) -> PointKinematics

        Parameters:
            aObject: OpenSim::PointKinematics const &

        """
        this = _opensim.new_PointKinematics(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_PointKinematics
    __del__ = lambda self : None;
    def setBodyPoint(self, *args):
        """
        setBodyPoint(PointKinematics self, std::string const & aBody, Vec3 aPoint)

        Parameters:
            aBody: std::string const &
            aPoint: SimTK::Vec3 const &

        """
        return _opensim.PointKinematics_setBodyPoint(self, *args)

    def setBody(self, *args):
        """
        setBody(PointKinematics self, Body aBody)

        Parameters:
            aBody: OpenSim::Body *

        """
        return _opensim.PointKinematics_setBody(self, *args)

    def setRelativeToBody(self, *args):
        """
        setRelativeToBody(PointKinematics self, Body aBody)

        Parameters:
            aBody: OpenSim::Body *

        """
        return _opensim.PointKinematics_setRelativeToBody(self, *args)

    def getBody(self):
        """
        getBody(PointKinematics self) -> Body

        Parameters:
            self: OpenSim::PointKinematics *

        """
        return _opensim.PointKinematics_getBody(self)

    def getRelativeToBody(self):
        """
        getRelativeToBody(PointKinematics self) -> Body

        Parameters:
            self: OpenSim::PointKinematics *

        """
        return _opensim.PointKinematics_getRelativeToBody(self)

    def setPoint(self, *args):
        """
        setPoint(PointKinematics self, Vec3 aPoint)

        Parameters:
            aPoint: SimTK::Vec3 const &

        """
        return _opensim.PointKinematics_setPoint(self, *args)

    def getPoint(self, *args):
        """
        getPoint(PointKinematics self, Vec3 rPoint)

        Parameters:
            rPoint: SimTK::Vec3 &

        """
        return _opensim.PointKinematics_getPoint(self, *args)

    def setPointName(self, *args):
        """
        setPointName(PointKinematics self, std::string const & aName)

        Parameters:
            aName: std::string const &

        """
        return _opensim.PointKinematics_setPointName(self, *args)

    def getPointName(self):
        """
        getPointName(PointKinematics self) -> std::string const &

        Parameters:
            self: OpenSim::PointKinematics *

        """
        return _opensim.PointKinematics_getPointName(self)

    def setModel(self, *args):
        """
        setModel(PointKinematics self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.PointKinematics_setModel(self, *args)

    def setStorageCapacityIncrements(self, *args):
        """
        setStorageCapacityIncrements(PointKinematics self, int aIncrement)

        Parameters:
            aIncrement: int

        """
        return _opensim.PointKinematics_setStorageCapacityIncrements(self, *args)

    def getAccelerationStorage(self):
        """
        getAccelerationStorage(PointKinematics self) -> Storage

        Parameters:
            self: OpenSim::PointKinematics *

        """
        return _opensim.PointKinematics_getAccelerationStorage(self)

    def getVelocityStorage(self):
        """
        getVelocityStorage(PointKinematics self) -> Storage

        Parameters:
            self: OpenSim::PointKinematics *

        """
        return _opensim.PointKinematics_getVelocityStorage(self)

    def getPositionStorage(self):
        """
        getPositionStorage(PointKinematics self) -> Storage

        Parameters:
            self: OpenSim::PointKinematics *

        """
        return _opensim.PointKinematics_getPositionStorage(self)

    def begin(self, *args):
        """
        begin(PointKinematics self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.PointKinematics_begin(self, *args)

    def step(self, *args):
        """
        step(PointKinematics self, State s, int setNumber) -> int

        Parameters:
            s: SimTK::State const &
            setNumber: int

        """
        return _opensim.PointKinematics_step(self, *args)

    def end(self, *args):
        """
        end(PointKinematics self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.PointKinematics_end(self, *args)

    def printResults(self, *args):
        """
        printResults(PointKinematics self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0, std::string const & aExtension=".sto") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(PointKinematics self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0) -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double

        printResults(PointKinematics self, std::string const & aBaseName, std::string const & aDir="") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &

        printResults(PointKinematics self, std::string const & aBaseName) -> int

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.PointKinematics_printResults(self, *args)

PointKinematics_swigregister = _opensim.PointKinematics_swigregister
PointKinematics_swigregister(PointKinematics)
PointKinematicsNAME_LENGTH = cvar.PointKinematicsNAME_LENGTH
PointKinematicsBUFFER_LENGTH = cvar.PointKinematicsBUFFER_LENGTH

def PointKinematics_safeDownCast(*args):
  """
    PointKinematics_safeDownCast(OpenSimObject obj) -> PointKinematics

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PointKinematics_safeDownCast(*args)

def PointKinematics_getClassName():
  """PointKinematics_getClassName() -> std::string const &"""
  return _opensim.PointKinematics_getClassName()
PointKinematics.NAME_LENGTH = _opensim.cvar.PointKinematics_NAME_LENGTH
PointKinematics.BUFFER_LENGTH = _opensim.cvar.PointKinematics_BUFFER_LENGTH

class BodyKinematics(Analysis):
    """Proxy of C++ OpenSim::BodyKinematics class"""
    __swig_setmethods__ = {}
    for _s in [Analysis]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, BodyKinematics, name, value)
    __swig_getmethods__ = {}
    for _s in [Analysis]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, BodyKinematics, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> BodyKinematics

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.BodyKinematics_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(BodyKinematics self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.BodyKinematics_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.BodyKinematics_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(BodyKinematics self) -> BodyKinematics

        Parameters:
            self: OpenSim::BodyKinematics const *

        """
        return _opensim.BodyKinematics_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(BodyKinematics self) -> std::string const &

        Parameters:
            self: OpenSim::BodyKinematics const *

        """
        return _opensim.BodyKinematics_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::BodyKinematics self, Model aModel=None, bool aInDegrees=True) -> BodyKinematics

        Parameters:
            aModel: OpenSim::Model *
            aInDegrees: bool

        __init__(OpenSim::BodyKinematics self, Model aModel=None) -> BodyKinematics

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::BodyKinematics self) -> BodyKinematics
        __init__(OpenSim::BodyKinematics self, std::string const & aFileName) -> BodyKinematics

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::BodyKinematics self, BodyKinematics aObject) -> BodyKinematics

        Parameters:
            aObject: OpenSim::BodyKinematics const &

        """
        this = _opensim.new_BodyKinematics(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_BodyKinematics
    __del__ = lambda self : None;
    def setStorageCapacityIncrements(self, *args):
        """
        setStorageCapacityIncrements(BodyKinematics self, int aIncrement)

        Parameters:
            aIncrement: int

        """
        return _opensim.BodyKinematics_setStorageCapacityIncrements(self, *args)

    def getAccelerationStorage(self):
        """
        getAccelerationStorage(BodyKinematics self) -> Storage

        Parameters:
            self: OpenSim::BodyKinematics *

        """
        return _opensim.BodyKinematics_getAccelerationStorage(self)

    def getVelocityStorage(self):
        """
        getVelocityStorage(BodyKinematics self) -> Storage

        Parameters:
            self: OpenSim::BodyKinematics *

        """
        return _opensim.BodyKinematics_getVelocityStorage(self)

    def getPositionStorage(self):
        """
        getPositionStorage(BodyKinematics self) -> Storage

        Parameters:
            self: OpenSim::BodyKinematics *

        """
        return _opensim.BodyKinematics_getPositionStorage(self)

    def setExpressResultsInLocalFrame(self, *args):
        """
        setExpressResultsInLocalFrame(BodyKinematics self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.BodyKinematics_setExpressResultsInLocalFrame(self, *args)

    def getExpressResultsInLocalFrame(self):
        """
        getExpressResultsInLocalFrame(BodyKinematics self) -> bool

        Parameters:
            self: OpenSim::BodyKinematics *

        """
        return _opensim.BodyKinematics_getExpressResultsInLocalFrame(self)

    def setRecordCenterOfMass(self, *args):
        """
        setRecordCenterOfMass(BodyKinematics self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.BodyKinematics_setRecordCenterOfMass(self, *args)

    def setBodiesToRecord(self, *args):
        """
        setBodiesToRecord(BodyKinematics self, ArrayStr listOfBodies)

        Parameters:
            listOfBodies: OpenSim::Array< std::string > &

        """
        return _opensim.BodyKinematics_setBodiesToRecord(self, *args)

    def setModel(self, *args):
        """
        setModel(BodyKinematics self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.BodyKinematics_setModel(self, *args)

    def begin(self, *args):
        """
        begin(BodyKinematics self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.BodyKinematics_begin(self, *args)

    def step(self, *args):
        """
        step(BodyKinematics self, State s, int setNumber) -> int

        Parameters:
            s: SimTK::State const &
            setNumber: int

        """
        return _opensim.BodyKinematics_step(self, *args)

    def end(self, *args):
        """
        end(BodyKinematics self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.BodyKinematics_end(self, *args)

    def printResults(self, *args):
        """
        printResults(BodyKinematics self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0, std::string const & aExtension=".sto") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(BodyKinematics self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0) -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double

        printResults(BodyKinematics self, std::string const & aBaseName, std::string const & aDir="") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &

        printResults(BodyKinematics self, std::string const & aBaseName) -> int

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.BodyKinematics_printResults(self, *args)

BodyKinematics_swigregister = _opensim.BodyKinematics_swigregister
BodyKinematics_swigregister(BodyKinematics)

def BodyKinematics_safeDownCast(*args):
  """
    BodyKinematics_safeDownCast(OpenSimObject obj) -> BodyKinematics

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.BodyKinematics_safeDownCast(*args)

def BodyKinematics_getClassName():
  """BodyKinematics_getClassName() -> std::string const &"""
  return _opensim.BodyKinematics_getClassName()

class JointReaction(Analysis):
    """Proxy of C++ OpenSim::JointReaction class"""
    __swig_setmethods__ = {}
    for _s in [Analysis]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, JointReaction, name, value)
    __swig_getmethods__ = {}
    for _s in [Analysis]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, JointReaction, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> JointReaction

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.JointReaction_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(JointReaction self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.JointReaction_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.JointReaction_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(JointReaction self) -> JointReaction

        Parameters:
            self: OpenSim::JointReaction const *

        """
        return _opensim.JointReaction_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(JointReaction self) -> std::string const &

        Parameters:
            self: OpenSim::JointReaction const *

        """
        return _opensim.JointReaction_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::JointReaction self, Model aModel=None) -> JointReaction

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::JointReaction self) -> JointReaction
        __init__(OpenSim::JointReaction self, std::string const & aFileName) -> JointReaction

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::JointReaction self, JointReaction aObject) -> JointReaction

        Parameters:
            aObject: OpenSim::JointReaction const &

        """
        this = _opensim.new_JointReaction(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_JointReaction
    __del__ = lambda self : None;
    def setModel(self, *args):
        """
        setModel(JointReaction self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.JointReaction_setModel(self, *args)

    def getForcesFileName(self):
        """
        getForcesFileName(JointReaction self) -> std::string const &

        Parameters:
            self: OpenSim::JointReaction *

        """
        return _opensim.JointReaction_getForcesFileName(self)

    def setForcesFileName(self, *args):
        """
        setForcesFileName(JointReaction self, std::string const newForcesFile)

        Parameters:
            newForcesFile: std::string const

        """
        return _opensim.JointReaction_setForcesFileName(self, *args)

    def getJointNames(self):
        """
        getJointNames(JointReaction self) -> ArrayStr

        Parameters:
            self: OpenSim::JointReaction const *

        """
        return _opensim.JointReaction_getJointNames(self)

    def setJointNames(self, *args):
        """
        setJointNames(JointReaction self, ArrayStr jointNames)

        Parameters:
            jointNames: OpenSim::Array< std::string > &

        """
        return _opensim.JointReaction_setJointNames(self, *args)

    def getOnBody(self):
        """
        getOnBody(JointReaction self) -> ArrayStr

        Parameters:
            self: OpenSim::JointReaction const *

        """
        return _opensim.JointReaction_getOnBody(self)

    def setOnBody(self, *args):
        """
        setOnBody(JointReaction self, ArrayStr onBody)

        Parameters:
            onBody: OpenSim::Array< std::string > &

        """
        return _opensim.JointReaction_setOnBody(self, *args)

    def getInFrame(self):
        """
        getInFrame(JointReaction self) -> ArrayStr

        Parameters:
            self: OpenSim::JointReaction const *

        """
        return _opensim.JointReaction_getInFrame(self)

    def setInFrame(self, *args):
        """
        setInFrame(JointReaction self, ArrayStr inFrame)

        Parameters:
            inFrame: OpenSim::Array< std::string > &

        """
        return _opensim.JointReaction_setInFrame(self, *args)

    def begin(self, *args):
        """
        begin(JointReaction self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.JointReaction_begin(self, *args)

    def step(self, *args):
        """
        step(JointReaction self, State s, int setNumber) -> int

        Parameters:
            s: SimTK::State const &
            setNumber: int

        """
        return _opensim.JointReaction_step(self, *args)

    def end(self, *args):
        """
        end(JointReaction self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.JointReaction_end(self, *args)

    def printResults(self, *args):
        """
        printResults(JointReaction self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0, std::string const & aExtension=".sto") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(JointReaction self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0) -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double

        printResults(JointReaction self, std::string const & aBaseName, std::string const & aDir="") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &

        printResults(JointReaction self, std::string const & aBaseName) -> int

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.JointReaction_printResults(self, *args)

JointReaction_swigregister = _opensim.JointReaction_swigregister
JointReaction_swigregister(JointReaction)

def JointReaction_safeDownCast(*args):
  """
    JointReaction_safeDownCast(OpenSimObject obj) -> JointReaction

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.JointReaction_safeDownCast(*args)

def JointReaction_getClassName():
  """JointReaction_getClassName() -> std::string const &"""
  return _opensim.JointReaction_getClassName()

class StatesReporter(Analysis):
    """Proxy of C++ OpenSim::StatesReporter class"""
    __swig_setmethods__ = {}
    for _s in [Analysis]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, StatesReporter, name, value)
    __swig_getmethods__ = {}
    for _s in [Analysis]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, StatesReporter, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> StatesReporter

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.StatesReporter_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(StatesReporter self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.StatesReporter_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.StatesReporter_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(StatesReporter self) -> StatesReporter

        Parameters:
            self: OpenSim::StatesReporter const *

        """
        return _opensim.StatesReporter_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(StatesReporter self) -> std::string const &

        Parameters:
            self: OpenSim::StatesReporter const *

        """
        return _opensim.StatesReporter_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::StatesReporter self, Model aModel=None) -> StatesReporter

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::StatesReporter self) -> StatesReporter
        __init__(OpenSim::StatesReporter self, std::string const & aFileName) -> StatesReporter

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::StatesReporter self, StatesReporter aObject) -> StatesReporter

        Parameters:
            aObject: OpenSim::StatesReporter const &

        """
        this = _opensim.new_StatesReporter(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_StatesReporter
    __del__ = lambda self : None;
    def getStatesStorage(self):
        """
        getStatesStorage(StatesReporter self) -> Storage

        Parameters:
            self: OpenSim::StatesReporter const *

        """
        return _opensim.StatesReporter_getStatesStorage(self)

    def updStatesStorage(self):
        """
        updStatesStorage(StatesReporter self) -> Storage

        Parameters:
            self: OpenSim::StatesReporter *

        """
        return _opensim.StatesReporter_updStatesStorage(self)

    def begin(self, *args):
        """
        begin(StatesReporter self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.StatesReporter_begin(self, *args)

    def step(self, *args):
        """
        step(StatesReporter self, State s, int setNumber) -> int

        Parameters:
            s: SimTK::State const &
            setNumber: int

        """
        return _opensim.StatesReporter_step(self, *args)

    def end(self, *args):
        """
        end(StatesReporter self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.StatesReporter_end(self, *args)

    def printResults(self, *args):
        """
        printResults(StatesReporter self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0, std::string const & aExtension=".sto") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(StatesReporter self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0) -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double

        printResults(StatesReporter self, std::string const & aBaseName, std::string const & aDir="") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &

        printResults(StatesReporter self, std::string const & aBaseName) -> int

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.StatesReporter_printResults(self, *args)

StatesReporter_swigregister = _opensim.StatesReporter_swigregister
StatesReporter_swigregister(StatesReporter)

def StatesReporter_safeDownCast(*args):
  """
    StatesReporter_safeDownCast(OpenSimObject obj) -> StatesReporter

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.StatesReporter_safeDownCast(*args)

def StatesReporter_getClassName():
  """StatesReporter_getClassName() -> std::string const &"""
  return _opensim.StatesReporter_getClassName()

class InducedAccelerations(Analysis):
    """Proxy of C++ OpenSim::InducedAccelerations class"""
    __swig_setmethods__ = {}
    for _s in [Analysis]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, InducedAccelerations, name, value)
    __swig_getmethods__ = {}
    for _s in [Analysis]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, InducedAccelerations, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> InducedAccelerations

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.InducedAccelerations_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(InducedAccelerations self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.InducedAccelerations_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.InducedAccelerations_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(InducedAccelerations self) -> InducedAccelerations

        Parameters:
            self: OpenSim::InducedAccelerations const *

        """
        return _opensim.InducedAccelerations_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(InducedAccelerations self) -> std::string const &

        Parameters:
            self: OpenSim::InducedAccelerations const *

        """
        return _opensim.InducedAccelerations_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::InducedAccelerations self, Model aModel=None) -> InducedAccelerations

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::InducedAccelerations self) -> InducedAccelerations
        __init__(OpenSim::InducedAccelerations self, std::string const & aFileName) -> InducedAccelerations

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::InducedAccelerations self, InducedAccelerations aObject) -> InducedAccelerations

        Parameters:
            aObject: OpenSim::InducedAccelerations const &

        """
        this = _opensim.new_InducedAccelerations(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_InducedAccelerations
    __del__ = lambda self : None;
    def setModel(self, *args):
        """
        setModel(InducedAccelerations self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.InducedAccelerations_setModel(self, *args)

    def initialize(self, *args):
        """
        initialize(InducedAccelerations self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.InducedAccelerations_initialize(self, *args)

    def begin(self, *args):
        """
        begin(InducedAccelerations self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.InducedAccelerations_begin(self, *args)

    def step(self, *args):
        """
        step(InducedAccelerations self, State s, int stepNumber) -> int

        Parameters:
            s: SimTK::State const &
            stepNumber: int

        """
        return _opensim.InducedAccelerations_step(self, *args)

    def end(self, *args):
        """
        end(InducedAccelerations self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.InducedAccelerations_end(self, *args)

    def printResults(self, *args):
        """
        printResults(InducedAccelerations self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0, std::string const & aExtension=".sto") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(InducedAccelerations self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0) -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double

        printResults(InducedAccelerations self, std::string const & aBaseName, std::string const & aDir="") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &

        printResults(InducedAccelerations self, std::string const & aBaseName) -> int

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.InducedAccelerations_printResults(self, *args)

    def addContactConstraintFromExternalForce(self, *args):
        """
        addContactConstraintFromExternalForce(InducedAccelerations self, ExternalForce externalForce)

        Parameters:
            externalForce: OpenSim::ExternalForce *

        """
        return _opensim.InducedAccelerations_addContactConstraintFromExternalForce(self, *args)

    def applyContactConstraintAccordingToExternalForces(self, *args):
        """
        applyContactConstraintAccordingToExternalForces(InducedAccelerations self, State s) -> ArrayBool

        Parameters:
            s: SimTK::State &

        """
        return _opensim.InducedAccelerations_applyContactConstraintAccordingToExternalForces(self, *args)

InducedAccelerations_swigregister = _opensim.InducedAccelerations_swigregister
InducedAccelerations_swigregister(InducedAccelerations)

def InducedAccelerations_safeDownCast(*args):
  """
    InducedAccelerations_safeDownCast(OpenSimObject obj) -> InducedAccelerations

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.InducedAccelerations_safeDownCast(*args)

def InducedAccelerations_getClassName():
  """InducedAccelerations_getClassName() -> std::string const &"""
  return _opensim.InducedAccelerations_getClassName()

class ProbeReporter(Analysis):
    """Proxy of C++ OpenSim::ProbeReporter class"""
    __swig_setmethods__ = {}
    for _s in [Analysis]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ProbeReporter, name, value)
    __swig_getmethods__ = {}
    for _s in [Analysis]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ProbeReporter, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ProbeReporter

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ProbeReporter_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ProbeReporter self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ProbeReporter_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ProbeReporter_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ProbeReporter self) -> ProbeReporter

        Parameters:
            self: OpenSim::ProbeReporter const *

        """
        return _opensim.ProbeReporter_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ProbeReporter self) -> std::string const &

        Parameters:
            self: OpenSim::ProbeReporter const *

        """
        return _opensim.ProbeReporter_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ProbeReporter self, Model aModel=None) -> ProbeReporter

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::ProbeReporter self) -> ProbeReporter
        __init__(OpenSim::ProbeReporter self, std::string const & aFileName) -> ProbeReporter

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::ProbeReporter self, ProbeReporter aObject) -> ProbeReporter

        Parameters:
            aObject: OpenSim::ProbeReporter const &

        """
        this = _opensim.new_ProbeReporter(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ProbeReporter
    __del__ = lambda self : None;
    def getProbeStorage(self):
        """
        getProbeStorage(ProbeReporter self) -> Storage

        Parameters:
            self: OpenSim::ProbeReporter const *

        """
        return _opensim.ProbeReporter_getProbeStorage(self)

    def updProbeStorage(self):
        """
        updProbeStorage(ProbeReporter self) -> Storage

        Parameters:
            self: OpenSim::ProbeReporter *

        """
        return _opensim.ProbeReporter_updProbeStorage(self)

    def setModel(self, *args):
        """
        setModel(ProbeReporter self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.ProbeReporter_setModel(self, *args)

    def begin(self, *args):
        """
        begin(ProbeReporter self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.ProbeReporter_begin(self, *args)

    def step(self, *args):
        """
        step(ProbeReporter self, State s, int setNumber) -> int

        Parameters:
            s: SimTK::State const &
            setNumber: int

        """
        return _opensim.ProbeReporter_step(self, *args)

    def end(self, *args):
        """
        end(ProbeReporter self, State s) -> int

        Parameters:
            s: SimTK::State &

        """
        return _opensim.ProbeReporter_end(self, *args)

    def disableIntegrationOnlyProbes(self):
        """
        disableIntegrationOnlyProbes(ProbeReporter self)

        Parameters:
            self: OpenSim::ProbeReporter *

        """
        return _opensim.ProbeReporter_disableIntegrationOnlyProbes(self)

    def printResults(self, *args):
        """
        printResults(ProbeReporter self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0, std::string const & aExtension=".sto") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double
            aExtension: std::string const &

        printResults(ProbeReporter self, std::string const & aBaseName, std::string const & aDir="", double aDT=-1.0) -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &
            aDT: double

        printResults(ProbeReporter self, std::string const & aBaseName, std::string const & aDir="") -> int

        Parameters:
            aBaseName: std::string const &
            aDir: std::string const &

        printResults(ProbeReporter self, std::string const & aBaseName) -> int

        Parameters:
            aBaseName: std::string const &

        """
        return _opensim.ProbeReporter_printResults(self, *args)

ProbeReporter_swigregister = _opensim.ProbeReporter_swigregister
ProbeReporter_swigregister(ProbeReporter)

def ProbeReporter_safeDownCast(*args):
  """
    ProbeReporter_safeDownCast(OpenSimObject obj) -> ProbeReporter

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ProbeReporter_safeDownCast(*args)

def ProbeReporter_getClassName():
  """ProbeReporter_getClassName() -> std::string const &"""
  return _opensim.ProbeReporter_getClassName()

class CoordinateActuator(Actuator):
    """Proxy of C++ OpenSim::CoordinateActuator class"""
    __swig_setmethods__ = {}
    for _s in [Actuator]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, CoordinateActuator, name, value)
    __swig_getmethods__ = {}
    for _s in [Actuator]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, CoordinateActuator, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> CoordinateActuator

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.CoordinateActuator_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(CoordinateActuator self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.CoordinateActuator_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.CoordinateActuator_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(CoordinateActuator self) -> CoordinateActuator

        Parameters:
            self: OpenSim::CoordinateActuator const *

        """
        return _opensim.CoordinateActuator_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(CoordinateActuator self) -> std::string const &

        Parameters:
            self: OpenSim::CoordinateActuator const *

        """
        return _opensim.CoordinateActuator_getConcreteClassName(self)

    def copyProperty_coordinate(self, *args):
        """
        copyProperty_coordinate(CoordinateActuator self, CoordinateActuator source)

        Parameters:
            source: OpenSim::CoordinateActuator::Self const &

        """
        return _opensim.CoordinateActuator_copyProperty_coordinate(self, *args)

    def append_coordinate(self, *args):
        """
        append_coordinate(CoordinateActuator self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.CoordinateActuator_append_coordinate(self, *args)

    def constructProperty_coordinate(self, *args):
        """
        constructProperty_coordinate(CoordinateActuator self)
        constructProperty_coordinate(CoordinateActuator self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.CoordinateActuator_constructProperty_coordinate(self, *args)

    def get_coordinate(self, *args):
        """
        get_coordinate(CoordinateActuator self, int i) -> std::string const

        Parameters:
            i: int

        get_coordinate(CoordinateActuator self) -> std::string const &

        Parameters:
            self: OpenSim::CoordinateActuator const *

        """
        return _opensim.CoordinateActuator_get_coordinate(self, *args)

    def upd_coordinate(self, *args):
        """
        upd_coordinate(CoordinateActuator self, int i) -> std::string

        Parameters:
            i: int

        upd_coordinate(CoordinateActuator self) -> std::string &

        Parameters:
            self: OpenSim::CoordinateActuator *

        """
        return _opensim.CoordinateActuator_upd_coordinate(self, *args)

    def set_coordinate(self, *args):
        """
        set_coordinate(CoordinateActuator self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_coordinate(CoordinateActuator self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.CoordinateActuator_set_coordinate(self, *args)

    def copyProperty_optimal_force(self, *args):
        """
        copyProperty_optimal_force(CoordinateActuator self, CoordinateActuator source)

        Parameters:
            source: OpenSim::CoordinateActuator::Self const &

        """
        return _opensim.CoordinateActuator_copyProperty_optimal_force(self, *args)

    def append_optimal_force(self, *args):
        """
        append_optimal_force(CoordinateActuator self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.CoordinateActuator_append_optimal_force(self, *args)

    def constructProperty_optimal_force(self, *args):
        """
        constructProperty_optimal_force(CoordinateActuator self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.CoordinateActuator_constructProperty_optimal_force(self, *args)

    def get_optimal_force(self, *args):
        """
        get_optimal_force(CoordinateActuator self, int i) -> double const

        Parameters:
            i: int

        get_optimal_force(CoordinateActuator self) -> double const &

        Parameters:
            self: OpenSim::CoordinateActuator const *

        """
        return _opensim.CoordinateActuator_get_optimal_force(self, *args)

    def upd_optimal_force(self, *args):
        """
        upd_optimal_force(CoordinateActuator self, int i) -> double

        Parameters:
            i: int

        upd_optimal_force(CoordinateActuator self) -> double &

        Parameters:
            self: OpenSim::CoordinateActuator *

        """
        return _opensim.CoordinateActuator_upd_optimal_force(self, *args)

    def set_optimal_force(self, *args):
        """
        set_optimal_force(CoordinateActuator self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_optimal_force(CoordinateActuator self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.CoordinateActuator_set_optimal_force(self, *args)

    def __init__(self, coordinateName=""): 
        """
        __init__(OpenSim::CoordinateActuator self, std::string const & coordinateName="") -> CoordinateActuator

        Parameters:
            coordinateName: std::string const &

        __init__(OpenSim::CoordinateActuator self) -> CoordinateActuator
        """
        this = _opensim.new_CoordinateActuator(coordinateName)
        try: self.this.append(this)
        except: self.this = this
    def setOptimalForce(self, *args):
        """
        setOptimalForce(CoordinateActuator self, double optimalForce)

        Parameters:
            optimalForce: double

        """
        return _opensim.CoordinateActuator_setOptimalForce(self, *args)

    def getOptimalForce(self):
        """
        getOptimalForce(CoordinateActuator self) -> double

        Parameters:
            self: OpenSim::CoordinateActuator const *

        """
        return _opensim.CoordinateActuator_getOptimalForce(self)

    def CreateForceSetOfCoordinateActuatorsForModel(*args):
        """
        CreateForceSetOfCoordinateActuatorsForModel(State s, Model aModel, double aOptimalForce=1, bool aIncludeLockedAndConstrainedCoordinates=True) -> ForceSet

        Parameters:
            s: SimTK::State const &
            aModel: OpenSim::Model &
            aOptimalForce: double
            aIncludeLockedAndConstrainedCoordinates: bool

        CreateForceSetOfCoordinateActuatorsForModel(State s, Model aModel, double aOptimalForce=1) -> ForceSet

        Parameters:
            s: SimTK::State const &
            aModel: OpenSim::Model &
            aOptimalForce: double

        CreateForceSetOfCoordinateActuatorsForModel(State s, Model aModel) -> ForceSet

        Parameters:
            s: SimTK::State const &
            aModel: OpenSim::Model &

        """
        return _opensim.CoordinateActuator_CreateForceSetOfCoordinateActuatorsForModel(*args)

    if _newclass:CreateForceSetOfCoordinateActuatorsForModel = staticmethod(CreateForceSetOfCoordinateActuatorsForModel)
    __swig_getmethods__["CreateForceSetOfCoordinateActuatorsForModel"] = lambda x: CreateForceSetOfCoordinateActuatorsForModel
    def isCoordinateValid(self):
        """
        isCoordinateValid(CoordinateActuator self) -> bool

        Parameters:
            self: OpenSim::CoordinateActuator const *

        """
        return _opensim.CoordinateActuator_isCoordinateValid(self)

    def getSpeed(self, *args):
        """
        getSpeed(CoordinateActuator self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.CoordinateActuator_getSpeed(self, *args)

    def setCoordinate(self, *args):
        """
        setCoordinate(CoordinateActuator self, Coordinate aCoordinate)

        Parameters:
            aCoordinate: OpenSim::Coordinate *

        """
        return _opensim.CoordinateActuator_setCoordinate(self, *args)

    def getCoordinate(self):
        """
        getCoordinate(CoordinateActuator self) -> Coordinate

        Parameters:
            self: OpenSim::CoordinateActuator const *

        """
        return _opensim.CoordinateActuator_getCoordinate(self)

    __swig_destroy__ = _opensim.delete_CoordinateActuator
    __del__ = lambda self : None;
CoordinateActuator_swigregister = _opensim.CoordinateActuator_swigregister
CoordinateActuator_swigregister(CoordinateActuator)

def CoordinateActuator_safeDownCast(*args):
  """
    CoordinateActuator_safeDownCast(OpenSimObject obj) -> CoordinateActuator

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.CoordinateActuator_safeDownCast(*args)

def CoordinateActuator_getClassName():
  """CoordinateActuator_getClassName() -> std::string const &"""
  return _opensim.CoordinateActuator_getClassName()

def CoordinateActuator_CreateForceSetOfCoordinateActuatorsForModel(*args):
  """
    CreateForceSetOfCoordinateActuatorsForModel(State s, Model aModel, double aOptimalForce=1, bool aIncludeLockedAndConstrainedCoordinates=True) -> ForceSet

    Parameters:
        s: SimTK::State const &
        aModel: OpenSim::Model &
        aOptimalForce: double
        aIncludeLockedAndConstrainedCoordinates: bool

    CreateForceSetOfCoordinateActuatorsForModel(State s, Model aModel, double aOptimalForce=1) -> ForceSet

    Parameters:
        s: SimTK::State const &
        aModel: OpenSim::Model &
        aOptimalForce: double

    CoordinateActuator_CreateForceSetOfCoordinateActuatorsForModel(State s, Model aModel) -> ForceSet

    Parameters:
        s: SimTK::State const &
        aModel: OpenSim::Model &

    """
  return _opensim.CoordinateActuator_CreateForceSetOfCoordinateActuatorsForModel(*args)

class PointActuator(Actuator):
    """Proxy of C++ OpenSim::PointActuator class"""
    __swig_setmethods__ = {}
    for _s in [Actuator]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PointActuator, name, value)
    __swig_getmethods__ = {}
    for _s in [Actuator]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PointActuator, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PointActuator

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PointActuator_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PointActuator self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PointActuator_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PointActuator_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PointActuator self) -> PointActuator

        Parameters:
            self: OpenSim::PointActuator const *

        """
        return _opensim.PointActuator_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PointActuator self) -> std::string const &

        Parameters:
            self: OpenSim::PointActuator const *

        """
        return _opensim.PointActuator_getConcreteClassName(self)

    def copyProperty_body(self, *args):
        """
        copyProperty_body(PointActuator self, PointActuator source)

        Parameters:
            source: OpenSim::PointActuator::Self const &

        """
        return _opensim.PointActuator_copyProperty_body(self, *args)

    def append_body(self, *args):
        """
        append_body(PointActuator self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.PointActuator_append_body(self, *args)

    def constructProperty_body(self, *args):
        """
        constructProperty_body(PointActuator self)
        constructProperty_body(PointActuator self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.PointActuator_constructProperty_body(self, *args)

    def get_body(self, *args):
        """
        get_body(PointActuator self, int i) -> std::string const

        Parameters:
            i: int

        get_body(PointActuator self) -> std::string const &

        Parameters:
            self: OpenSim::PointActuator const *

        """
        return _opensim.PointActuator_get_body(self, *args)

    def upd_body(self, *args):
        """
        upd_body(PointActuator self, int i) -> std::string

        Parameters:
            i: int

        upd_body(PointActuator self) -> std::string &

        Parameters:
            self: OpenSim::PointActuator *

        """
        return _opensim.PointActuator_upd_body(self, *args)

    def set_body(self, *args):
        """
        set_body(PointActuator self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_body(PointActuator self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.PointActuator_set_body(self, *args)

    def copyProperty_point(self, *args):
        """
        copyProperty_point(PointActuator self, PointActuator source)

        Parameters:
            source: OpenSim::PointActuator::Self const &

        """
        return _opensim.PointActuator_copyProperty_point(self, *args)

    def append_point(self, *args):
        """
        append_point(PointActuator self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointActuator_append_point(self, *args)

    def constructProperty_point(self, *args):
        """
        constructProperty_point(PointActuator self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.PointActuator_constructProperty_point(self, *args)

    def get_point(self, *args):
        """
        get_point(PointActuator self, int i) -> Vec3

        Parameters:
            i: int

        get_point(PointActuator self) -> Vec3

        Parameters:
            self: OpenSim::PointActuator const *

        """
        return _opensim.PointActuator_get_point(self, *args)

    def upd_point(self, *args):
        """
        upd_point(PointActuator self, int i) -> Vec3

        Parameters:
            i: int

        upd_point(PointActuator self) -> Vec3

        Parameters:
            self: OpenSim::PointActuator *

        """
        return _opensim.PointActuator_upd_point(self, *args)

    def set_point(self, *args):
        """
        set_point(PointActuator self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_point(PointActuator self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointActuator_set_point(self, *args)

    def copyProperty_point_is_global(self, *args):
        """
        copyProperty_point_is_global(PointActuator self, PointActuator source)

        Parameters:
            source: OpenSim::PointActuator::Self const &

        """
        return _opensim.PointActuator_copyProperty_point_is_global(self, *args)

    def append_point_is_global(self, *args):
        """
        append_point_is_global(PointActuator self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.PointActuator_append_point_is_global(self, *args)

    def constructProperty_point_is_global(self, *args):
        """
        constructProperty_point_is_global(PointActuator self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.PointActuator_constructProperty_point_is_global(self, *args)

    def get_point_is_global(self, *args):
        """
        get_point_is_global(PointActuator self, int i) -> bool const

        Parameters:
            i: int

        get_point_is_global(PointActuator self) -> bool const &

        Parameters:
            self: OpenSim::PointActuator const *

        """
        return _opensim.PointActuator_get_point_is_global(self, *args)

    def upd_point_is_global(self, *args):
        """
        upd_point_is_global(PointActuator self, int i) -> bool

        Parameters:
            i: int

        upd_point_is_global(PointActuator self) -> bool &

        Parameters:
            self: OpenSim::PointActuator *

        """
        return _opensim.PointActuator_upd_point_is_global(self, *args)

    def set_point_is_global(self, *args):
        """
        set_point_is_global(PointActuator self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_point_is_global(PointActuator self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.PointActuator_set_point_is_global(self, *args)

    def copyProperty_direction(self, *args):
        """
        copyProperty_direction(PointActuator self, PointActuator source)

        Parameters:
            source: OpenSim::PointActuator::Self const &

        """
        return _opensim.PointActuator_copyProperty_direction(self, *args)

    def append_direction(self, *args):
        """
        append_direction(PointActuator self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointActuator_append_direction(self, *args)

    def constructProperty_direction(self, *args):
        """
        constructProperty_direction(PointActuator self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.PointActuator_constructProperty_direction(self, *args)

    def get_direction(self, *args):
        """
        get_direction(PointActuator self, int i) -> Vec3

        Parameters:
            i: int

        get_direction(PointActuator self) -> Vec3

        Parameters:
            self: OpenSim::PointActuator const *

        """
        return _opensim.PointActuator_get_direction(self, *args)

    def upd_direction(self, *args):
        """
        upd_direction(PointActuator self, int i) -> Vec3

        Parameters:
            i: int

        upd_direction(PointActuator self) -> Vec3

        Parameters:
            self: OpenSim::PointActuator *

        """
        return _opensim.PointActuator_upd_direction(self, *args)

    def set_direction(self, *args):
        """
        set_direction(PointActuator self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_direction(PointActuator self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointActuator_set_direction(self, *args)

    def copyProperty_force_is_global(self, *args):
        """
        copyProperty_force_is_global(PointActuator self, PointActuator source)

        Parameters:
            source: OpenSim::PointActuator::Self const &

        """
        return _opensim.PointActuator_copyProperty_force_is_global(self, *args)

    def append_force_is_global(self, *args):
        """
        append_force_is_global(PointActuator self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.PointActuator_append_force_is_global(self, *args)

    def constructProperty_force_is_global(self, *args):
        """
        constructProperty_force_is_global(PointActuator self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.PointActuator_constructProperty_force_is_global(self, *args)

    def get_force_is_global(self, *args):
        """
        get_force_is_global(PointActuator self, int i) -> bool const

        Parameters:
            i: int

        get_force_is_global(PointActuator self) -> bool const &

        Parameters:
            self: OpenSim::PointActuator const *

        """
        return _opensim.PointActuator_get_force_is_global(self, *args)

    def upd_force_is_global(self, *args):
        """
        upd_force_is_global(PointActuator self, int i) -> bool

        Parameters:
            i: int

        upd_force_is_global(PointActuator self) -> bool &

        Parameters:
            self: OpenSim::PointActuator *

        """
        return _opensim.PointActuator_upd_force_is_global(self, *args)

    def set_force_is_global(self, *args):
        """
        set_force_is_global(PointActuator self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_force_is_global(PointActuator self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.PointActuator_set_force_is_global(self, *args)

    def copyProperty_optimal_force(self, *args):
        """
        copyProperty_optimal_force(PointActuator self, PointActuator source)

        Parameters:
            source: OpenSim::PointActuator::Self const &

        """
        return _opensim.PointActuator_copyProperty_optimal_force(self, *args)

    def append_optimal_force(self, *args):
        """
        append_optimal_force(PointActuator self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.PointActuator_append_optimal_force(self, *args)

    def constructProperty_optimal_force(self, *args):
        """
        constructProperty_optimal_force(PointActuator self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.PointActuator_constructProperty_optimal_force(self, *args)

    def get_optimal_force(self, *args):
        """
        get_optimal_force(PointActuator self, int i) -> double const

        Parameters:
            i: int

        get_optimal_force(PointActuator self) -> double const &

        Parameters:
            self: OpenSim::PointActuator const *

        """
        return _opensim.PointActuator_get_optimal_force(self, *args)

    def upd_optimal_force(self, *args):
        """
        upd_optimal_force(PointActuator self, int i) -> double

        Parameters:
            i: int

        upd_optimal_force(PointActuator self) -> double &

        Parameters:
            self: OpenSim::PointActuator *

        """
        return _opensim.PointActuator_upd_optimal_force(self, *args)

    def set_optimal_force(self, *args):
        """
        set_optimal_force(PointActuator self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_optimal_force(PointActuator self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.PointActuator_set_optimal_force(self, *args)

    def __init__(self, bodyName=""): 
        """
        __init__(OpenSim::PointActuator self, std::string const & bodyName="") -> PointActuator

        Parameters:
            bodyName: std::string const &

        __init__(OpenSim::PointActuator self) -> PointActuator
        """
        this = _opensim.new_PointActuator(bodyName)
        try: self.this.append(this)
        except: self.this = this
    def setOptimalForce(self, *args):
        """
        setOptimalForce(PointActuator self, double aOptimalForce)

        Parameters:
            aOptimalForce: double

        """
        return _opensim.PointActuator_setOptimalForce(self, *args)

    def getOptimalForce(self):
        """
        getOptimalForce(PointActuator self) -> double

        Parameters:
            self: OpenSim::PointActuator const *

        """
        return _opensim.PointActuator_getOptimalForce(self)

    __swig_destroy__ = _opensim.delete_PointActuator
    __del__ = lambda self : None;
PointActuator_swigregister = _opensim.PointActuator_swigregister
PointActuator_swigregister(PointActuator)

def PointActuator_safeDownCast(*args):
  """
    PointActuator_safeDownCast(OpenSimObject obj) -> PointActuator

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PointActuator_safeDownCast(*args)

def PointActuator_getClassName():
  """PointActuator_getClassName() -> std::string const &"""
  return _opensim.PointActuator_getClassName()

class TorqueActuator(Actuator):
    """Proxy of C++ OpenSim::TorqueActuator class"""
    __swig_setmethods__ = {}
    for _s in [Actuator]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, TorqueActuator, name, value)
    __swig_getmethods__ = {}
    for _s in [Actuator]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, TorqueActuator, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> TorqueActuator

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.TorqueActuator_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(TorqueActuator self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.TorqueActuator_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.TorqueActuator_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(TorqueActuator self) -> TorqueActuator

        Parameters:
            self: OpenSim::TorqueActuator const *

        """
        return _opensim.TorqueActuator_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(TorqueActuator self) -> std::string const &

        Parameters:
            self: OpenSim::TorqueActuator const *

        """
        return _opensim.TorqueActuator_getConcreteClassName(self)

    def copyProperty_bodyA(self, *args):
        """
        copyProperty_bodyA(TorqueActuator self, TorqueActuator source)

        Parameters:
            source: OpenSim::TorqueActuator::Self const &

        """
        return _opensim.TorqueActuator_copyProperty_bodyA(self, *args)

    def append_bodyA(self, *args):
        """
        append_bodyA(TorqueActuator self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.TorqueActuator_append_bodyA(self, *args)

    def constructProperty_bodyA(self, *args):
        """
        constructProperty_bodyA(TorqueActuator self)
        constructProperty_bodyA(TorqueActuator self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.TorqueActuator_constructProperty_bodyA(self, *args)

    def get_bodyA(self, *args):
        """
        get_bodyA(TorqueActuator self, int i) -> std::string const

        Parameters:
            i: int

        get_bodyA(TorqueActuator self) -> std::string const &

        Parameters:
            self: OpenSim::TorqueActuator const *

        """
        return _opensim.TorqueActuator_get_bodyA(self, *args)

    def upd_bodyA(self, *args):
        """
        upd_bodyA(TorqueActuator self, int i) -> std::string

        Parameters:
            i: int

        upd_bodyA(TorqueActuator self) -> std::string &

        Parameters:
            self: OpenSim::TorqueActuator *

        """
        return _opensim.TorqueActuator_upd_bodyA(self, *args)

    def set_bodyA(self, *args):
        """
        set_bodyA(TorqueActuator self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_bodyA(TorqueActuator self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.TorqueActuator_set_bodyA(self, *args)

    def copyProperty_bodyB(self, *args):
        """
        copyProperty_bodyB(TorqueActuator self, TorqueActuator source)

        Parameters:
            source: OpenSim::TorqueActuator::Self const &

        """
        return _opensim.TorqueActuator_copyProperty_bodyB(self, *args)

    def append_bodyB(self, *args):
        """
        append_bodyB(TorqueActuator self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.TorqueActuator_append_bodyB(self, *args)

    def constructProperty_bodyB(self, *args):
        """
        constructProperty_bodyB(TorqueActuator self)
        constructProperty_bodyB(TorqueActuator self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.TorqueActuator_constructProperty_bodyB(self, *args)

    def get_bodyB(self, *args):
        """
        get_bodyB(TorqueActuator self, int i) -> std::string const

        Parameters:
            i: int

        get_bodyB(TorqueActuator self) -> std::string const &

        Parameters:
            self: OpenSim::TorqueActuator const *

        """
        return _opensim.TorqueActuator_get_bodyB(self, *args)

    def upd_bodyB(self, *args):
        """
        upd_bodyB(TorqueActuator self, int i) -> std::string

        Parameters:
            i: int

        upd_bodyB(TorqueActuator self) -> std::string &

        Parameters:
            self: OpenSim::TorqueActuator *

        """
        return _opensim.TorqueActuator_upd_bodyB(self, *args)

    def set_bodyB(self, *args):
        """
        set_bodyB(TorqueActuator self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_bodyB(TorqueActuator self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.TorqueActuator_set_bodyB(self, *args)

    def copyProperty_torque_is_global(self, *args):
        """
        copyProperty_torque_is_global(TorqueActuator self, TorqueActuator source)

        Parameters:
            source: OpenSim::TorqueActuator::Self const &

        """
        return _opensim.TorqueActuator_copyProperty_torque_is_global(self, *args)

    def append_torque_is_global(self, *args):
        """
        append_torque_is_global(TorqueActuator self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.TorqueActuator_append_torque_is_global(self, *args)

    def constructProperty_torque_is_global(self, *args):
        """
        constructProperty_torque_is_global(TorqueActuator self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.TorqueActuator_constructProperty_torque_is_global(self, *args)

    def get_torque_is_global(self, *args):
        """
        get_torque_is_global(TorqueActuator self, int i) -> bool const

        Parameters:
            i: int

        get_torque_is_global(TorqueActuator self) -> bool const &

        Parameters:
            self: OpenSim::TorqueActuator const *

        """
        return _opensim.TorqueActuator_get_torque_is_global(self, *args)

    def upd_torque_is_global(self, *args):
        """
        upd_torque_is_global(TorqueActuator self, int i) -> bool

        Parameters:
            i: int

        upd_torque_is_global(TorqueActuator self) -> bool &

        Parameters:
            self: OpenSim::TorqueActuator *

        """
        return _opensim.TorqueActuator_upd_torque_is_global(self, *args)

    def set_torque_is_global(self, *args):
        """
        set_torque_is_global(TorqueActuator self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_torque_is_global(TorqueActuator self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.TorqueActuator_set_torque_is_global(self, *args)

    def copyProperty_axis(self, *args):
        """
        copyProperty_axis(TorqueActuator self, TorqueActuator source)

        Parameters:
            source: OpenSim::TorqueActuator::Self const &

        """
        return _opensim.TorqueActuator_copyProperty_axis(self, *args)

    def append_axis(self, *args):
        """
        append_axis(TorqueActuator self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.TorqueActuator_append_axis(self, *args)

    def constructProperty_axis(self, *args):
        """
        constructProperty_axis(TorqueActuator self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.TorqueActuator_constructProperty_axis(self, *args)

    def get_axis(self, *args):
        """
        get_axis(TorqueActuator self, int i) -> Vec3

        Parameters:
            i: int

        get_axis(TorqueActuator self) -> Vec3

        Parameters:
            self: OpenSim::TorqueActuator const *

        """
        return _opensim.TorqueActuator_get_axis(self, *args)

    def upd_axis(self, *args):
        """
        upd_axis(TorqueActuator self, int i) -> Vec3

        Parameters:
            i: int

        upd_axis(TorqueActuator self) -> Vec3

        Parameters:
            self: OpenSim::TorqueActuator *

        """
        return _opensim.TorqueActuator_upd_axis(self, *args)

    def set_axis(self, *args):
        """
        set_axis(TorqueActuator self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_axis(TorqueActuator self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.TorqueActuator_set_axis(self, *args)

    def copyProperty_optimal_force(self, *args):
        """
        copyProperty_optimal_force(TorqueActuator self, TorqueActuator source)

        Parameters:
            source: OpenSim::TorqueActuator::Self const &

        """
        return _opensim.TorqueActuator_copyProperty_optimal_force(self, *args)

    def append_optimal_force(self, *args):
        """
        append_optimal_force(TorqueActuator self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.TorqueActuator_append_optimal_force(self, *args)

    def constructProperty_optimal_force(self, *args):
        """
        constructProperty_optimal_force(TorqueActuator self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.TorqueActuator_constructProperty_optimal_force(self, *args)

    def get_optimal_force(self, *args):
        """
        get_optimal_force(TorqueActuator self, int i) -> double const

        Parameters:
            i: int

        get_optimal_force(TorqueActuator self) -> double const &

        Parameters:
            self: OpenSim::TorqueActuator const *

        """
        return _opensim.TorqueActuator_get_optimal_force(self, *args)

    def upd_optimal_force(self, *args):
        """
        upd_optimal_force(TorqueActuator self, int i) -> double

        Parameters:
            i: int

        upd_optimal_force(TorqueActuator self) -> double &

        Parameters:
            self: OpenSim::TorqueActuator *

        """
        return _opensim.TorqueActuator_upd_optimal_force(self, *args)

    def set_optimal_force(self, *args):
        """
        set_optimal_force(TorqueActuator self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_optimal_force(TorqueActuator self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.TorqueActuator_set_optimal_force(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::TorqueActuator self) -> TorqueActuator
        __init__(OpenSim::TorqueActuator self, Body bodyA, Body bodyB, Vec3 axis, bool axisInGround=True) -> TorqueActuator

        Parameters:
            bodyA: OpenSim::Body const &
            bodyB: OpenSim::Body const &
            axis: SimTK::Vec3 const &
            axisInGround: bool

        __init__(OpenSim::TorqueActuator self, Body bodyA, Body bodyB, Vec3 axis) -> TorqueActuator

        Parameters:
            bodyA: OpenSim::Body const &
            bodyB: OpenSim::Body const &
            axis: SimTK::Vec3 const &

        """
        this = _opensim.new_TorqueActuator(*args)
        try: self.this.append(this)
        except: self.this = this
    def setAxis(self, *args):
        """
        setAxis(TorqueActuator self, Vec3 axis)

        Parameters:
            axis: SimTK::Vec3 const &

        """
        return _opensim.TorqueActuator_setAxis(self, *args)

    def getAxis(self):
        """
        getAxis(TorqueActuator self) -> Vec3

        Parameters:
            self: OpenSim::TorqueActuator const *

        """
        return _opensim.TorqueActuator_getAxis(self)

    def setTorqueIsGlobal(self, *args):
        """
        setTorqueIsGlobal(TorqueActuator self, bool isGlobal)

        Parameters:
            isGlobal: bool

        """
        return _opensim.TorqueActuator_setTorqueIsGlobal(self, *args)

    def getTorqueIsGlobal(self):
        """
        getTorqueIsGlobal(TorqueActuator self) -> bool

        Parameters:
            self: OpenSim::TorqueActuator const *

        """
        return _opensim.TorqueActuator_getTorqueIsGlobal(self)

    def setOptimalForce(self, *args):
        """
        setOptimalForce(TorqueActuator self, double optimalForce)

        Parameters:
            optimalForce: double

        """
        return _opensim.TorqueActuator_setOptimalForce(self, *args)

    def getOptimalForce(self):
        """
        getOptimalForce(TorqueActuator self) -> double

        Parameters:
            self: OpenSim::TorqueActuator const *

        """
        return _opensim.TorqueActuator_getOptimalForce(self)

    def setBodyA(self, *args):
        """
        setBodyA(TorqueActuator self, Body body)

        Parameters:
            body: OpenSim::Body const &

        """
        return _opensim.TorqueActuator_setBodyA(self, *args)

    def setBodyB(self, *args):
        """
        setBodyB(TorqueActuator self, Body body)

        Parameters:
            body: OpenSim::Body const &

        """
        return _opensim.TorqueActuator_setBodyB(self, *args)

    def getBodyA(self):
        """
        getBodyA(TorqueActuator self) -> Body

        Parameters:
            self: OpenSim::TorqueActuator const *

        """
        return _opensim.TorqueActuator_getBodyA(self)

    def getBodyB(self):
        """
        getBodyB(TorqueActuator self) -> Body

        Parameters:
            self: OpenSim::TorqueActuator const *

        """
        return _opensim.TorqueActuator_getBodyB(self)

    __swig_destroy__ = _opensim.delete_TorqueActuator
    __del__ = lambda self : None;
TorqueActuator_swigregister = _opensim.TorqueActuator_swigregister
TorqueActuator_swigregister(TorqueActuator)

def TorqueActuator_safeDownCast(*args):
  """
    TorqueActuator_safeDownCast(OpenSimObject obj) -> TorqueActuator

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.TorqueActuator_safeDownCast(*args)

def TorqueActuator_getClassName():
  """TorqueActuator_getClassName() -> std::string const &"""
  return _opensim.TorqueActuator_getClassName()

class PointToPointActuator(Actuator):
    """Proxy of C++ OpenSim::PointToPointActuator class"""
    __swig_setmethods__ = {}
    for _s in [Actuator]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, PointToPointActuator, name, value)
    __swig_getmethods__ = {}
    for _s in [Actuator]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, PointToPointActuator, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> PointToPointActuator

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.PointToPointActuator_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(PointToPointActuator self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.PointToPointActuator_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.PointToPointActuator_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(PointToPointActuator self) -> PointToPointActuator

        Parameters:
            self: OpenSim::PointToPointActuator const *

        """
        return _opensim.PointToPointActuator_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(PointToPointActuator self) -> std::string const &

        Parameters:
            self: OpenSim::PointToPointActuator const *

        """
        return _opensim.PointToPointActuator_getConcreteClassName(self)

    def copyProperty_bodyA(self, *args):
        """
        copyProperty_bodyA(PointToPointActuator self, PointToPointActuator source)

        Parameters:
            source: OpenSim::PointToPointActuator::Self const &

        """
        return _opensim.PointToPointActuator_copyProperty_bodyA(self, *args)

    def append_bodyA(self, *args):
        """
        append_bodyA(PointToPointActuator self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.PointToPointActuator_append_bodyA(self, *args)

    def constructProperty_bodyA(self, *args):
        """
        constructProperty_bodyA(PointToPointActuator self)
        constructProperty_bodyA(PointToPointActuator self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.PointToPointActuator_constructProperty_bodyA(self, *args)

    def get_bodyA(self, *args):
        """
        get_bodyA(PointToPointActuator self, int i) -> std::string const

        Parameters:
            i: int

        get_bodyA(PointToPointActuator self) -> std::string const &

        Parameters:
            self: OpenSim::PointToPointActuator const *

        """
        return _opensim.PointToPointActuator_get_bodyA(self, *args)

    def upd_bodyA(self, *args):
        """
        upd_bodyA(PointToPointActuator self, int i) -> std::string

        Parameters:
            i: int

        upd_bodyA(PointToPointActuator self) -> std::string &

        Parameters:
            self: OpenSim::PointToPointActuator *

        """
        return _opensim.PointToPointActuator_upd_bodyA(self, *args)

    def set_bodyA(self, *args):
        """
        set_bodyA(PointToPointActuator self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_bodyA(PointToPointActuator self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.PointToPointActuator_set_bodyA(self, *args)

    def copyProperty_bodyB(self, *args):
        """
        copyProperty_bodyB(PointToPointActuator self, PointToPointActuator source)

        Parameters:
            source: OpenSim::PointToPointActuator::Self const &

        """
        return _opensim.PointToPointActuator_copyProperty_bodyB(self, *args)

    def append_bodyB(self, *args):
        """
        append_bodyB(PointToPointActuator self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.PointToPointActuator_append_bodyB(self, *args)

    def constructProperty_bodyB(self, *args):
        """
        constructProperty_bodyB(PointToPointActuator self)
        constructProperty_bodyB(PointToPointActuator self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.PointToPointActuator_constructProperty_bodyB(self, *args)

    def get_bodyB(self, *args):
        """
        get_bodyB(PointToPointActuator self, int i) -> std::string const

        Parameters:
            i: int

        get_bodyB(PointToPointActuator self) -> std::string const &

        Parameters:
            self: OpenSim::PointToPointActuator const *

        """
        return _opensim.PointToPointActuator_get_bodyB(self, *args)

    def upd_bodyB(self, *args):
        """
        upd_bodyB(PointToPointActuator self, int i) -> std::string

        Parameters:
            i: int

        upd_bodyB(PointToPointActuator self) -> std::string &

        Parameters:
            self: OpenSim::PointToPointActuator *

        """
        return _opensim.PointToPointActuator_upd_bodyB(self, *args)

    def set_bodyB(self, *args):
        """
        set_bodyB(PointToPointActuator self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_bodyB(PointToPointActuator self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.PointToPointActuator_set_bodyB(self, *args)

    def copyProperty_points_are_global(self, *args):
        """
        copyProperty_points_are_global(PointToPointActuator self, PointToPointActuator source)

        Parameters:
            source: OpenSim::PointToPointActuator::Self const &

        """
        return _opensim.PointToPointActuator_copyProperty_points_are_global(self, *args)

    def append_points_are_global(self, *args):
        """
        append_points_are_global(PointToPointActuator self, bool const & value) -> int

        Parameters:
            value: bool const &

        """
        return _opensim.PointToPointActuator_append_points_are_global(self, *args)

    def constructProperty_points_are_global(self, *args):
        """
        constructProperty_points_are_global(PointToPointActuator self, bool const & initValue)

        Parameters:
            initValue: bool const &

        """
        return _opensim.PointToPointActuator_constructProperty_points_are_global(self, *args)

    def get_points_are_global(self, *args):
        """
        get_points_are_global(PointToPointActuator self, int i) -> bool const

        Parameters:
            i: int

        get_points_are_global(PointToPointActuator self) -> bool const &

        Parameters:
            self: OpenSim::PointToPointActuator const *

        """
        return _opensim.PointToPointActuator_get_points_are_global(self, *args)

    def upd_points_are_global(self, *args):
        """
        upd_points_are_global(PointToPointActuator self, int i) -> bool

        Parameters:
            i: int

        upd_points_are_global(PointToPointActuator self) -> bool &

        Parameters:
            self: OpenSim::PointToPointActuator *

        """
        return _opensim.PointToPointActuator_upd_points_are_global(self, *args)

    def set_points_are_global(self, *args):
        """
        set_points_are_global(PointToPointActuator self, int i, bool const & value)

        Parameters:
            i: int
            value: bool const &

        set_points_are_global(PointToPointActuator self, bool const & value)

        Parameters:
            value: bool const &

        """
        return _opensim.PointToPointActuator_set_points_are_global(self, *args)

    def copyProperty_pointA(self, *args):
        """
        copyProperty_pointA(PointToPointActuator self, PointToPointActuator source)

        Parameters:
            source: OpenSim::PointToPointActuator::Self const &

        """
        return _opensim.PointToPointActuator_copyProperty_pointA(self, *args)

    def append_pointA(self, *args):
        """
        append_pointA(PointToPointActuator self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointToPointActuator_append_pointA(self, *args)

    def constructProperty_pointA(self, *args):
        """
        constructProperty_pointA(PointToPointActuator self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.PointToPointActuator_constructProperty_pointA(self, *args)

    def get_pointA(self, *args):
        """
        get_pointA(PointToPointActuator self, int i) -> Vec3

        Parameters:
            i: int

        get_pointA(PointToPointActuator self) -> Vec3

        Parameters:
            self: OpenSim::PointToPointActuator const *

        """
        return _opensim.PointToPointActuator_get_pointA(self, *args)

    def upd_pointA(self, *args):
        """
        upd_pointA(PointToPointActuator self, int i) -> Vec3

        Parameters:
            i: int

        upd_pointA(PointToPointActuator self) -> Vec3

        Parameters:
            self: OpenSim::PointToPointActuator *

        """
        return _opensim.PointToPointActuator_upd_pointA(self, *args)

    def set_pointA(self, *args):
        """
        set_pointA(PointToPointActuator self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_pointA(PointToPointActuator self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointToPointActuator_set_pointA(self, *args)

    def copyProperty_pointB(self, *args):
        """
        copyProperty_pointB(PointToPointActuator self, PointToPointActuator source)

        Parameters:
            source: OpenSim::PointToPointActuator::Self const &

        """
        return _opensim.PointToPointActuator_copyProperty_pointB(self, *args)

    def append_pointB(self, *args):
        """
        append_pointB(PointToPointActuator self, Vec3 value) -> int

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointToPointActuator_append_pointB(self, *args)

    def constructProperty_pointB(self, *args):
        """
        constructProperty_pointB(PointToPointActuator self, Vec3 initValue)

        Parameters:
            initValue: SimTK::Vec3 const &

        """
        return _opensim.PointToPointActuator_constructProperty_pointB(self, *args)

    def get_pointB(self, *args):
        """
        get_pointB(PointToPointActuator self, int i) -> Vec3

        Parameters:
            i: int

        get_pointB(PointToPointActuator self) -> Vec3

        Parameters:
            self: OpenSim::PointToPointActuator const *

        """
        return _opensim.PointToPointActuator_get_pointB(self, *args)

    def upd_pointB(self, *args):
        """
        upd_pointB(PointToPointActuator self, int i) -> Vec3

        Parameters:
            i: int

        upd_pointB(PointToPointActuator self) -> Vec3

        Parameters:
            self: OpenSim::PointToPointActuator *

        """
        return _opensim.PointToPointActuator_upd_pointB(self, *args)

    def set_pointB(self, *args):
        """
        set_pointB(PointToPointActuator self, int i, Vec3 value)

        Parameters:
            i: int
            value: SimTK::Vec3 const &

        set_pointB(PointToPointActuator self, Vec3 value)

        Parameters:
            value: SimTK::Vec3 const &

        """
        return _opensim.PointToPointActuator_set_pointB(self, *args)

    def copyProperty_optimal_force(self, *args):
        """
        copyProperty_optimal_force(PointToPointActuator self, PointToPointActuator source)

        Parameters:
            source: OpenSim::PointToPointActuator::Self const &

        """
        return _opensim.PointToPointActuator_copyProperty_optimal_force(self, *args)

    def append_optimal_force(self, *args):
        """
        append_optimal_force(PointToPointActuator self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.PointToPointActuator_append_optimal_force(self, *args)

    def constructProperty_optimal_force(self, *args):
        """
        constructProperty_optimal_force(PointToPointActuator self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.PointToPointActuator_constructProperty_optimal_force(self, *args)

    def get_optimal_force(self, *args):
        """
        get_optimal_force(PointToPointActuator self, int i) -> double const

        Parameters:
            i: int

        get_optimal_force(PointToPointActuator self) -> double const &

        Parameters:
            self: OpenSim::PointToPointActuator const *

        """
        return _opensim.PointToPointActuator_get_optimal_force(self, *args)

    def upd_optimal_force(self, *args):
        """
        upd_optimal_force(PointToPointActuator self, int i) -> double

        Parameters:
            i: int

        upd_optimal_force(PointToPointActuator self) -> double &

        Parameters:
            self: OpenSim::PointToPointActuator *

        """
        return _opensim.PointToPointActuator_upd_optimal_force(self, *args)

    def set_optimal_force(self, *args):
        """
        set_optimal_force(PointToPointActuator self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_optimal_force(PointToPointActuator self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.PointToPointActuator_set_optimal_force(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::PointToPointActuator self) -> PointToPointActuator
        __init__(OpenSim::PointToPointActuator self, std::string const & bodyNameA, std::string const & bodyNameB) -> PointToPointActuator

        Parameters:
            bodyNameA: std::string const &
            bodyNameB: std::string const &

        """
        this = _opensim.new_PointToPointActuator(*args)
        try: self.this.append(this)
        except: self.this = this
    def setPointA(self, *args):
        """
        setPointA(PointToPointActuator self, Vec3 pointAPos)

        Parameters:
            pointAPos: SimTK::Vec3 const &

        """
        return _opensim.PointToPointActuator_setPointA(self, *args)

    def getPointA(self):
        """
        getPointA(PointToPointActuator self) -> Vec3

        Parameters:
            self: OpenSim::PointToPointActuator const *

        """
        return _opensim.PointToPointActuator_getPointA(self)

    def setPointB(self, *args):
        """
        setPointB(PointToPointActuator self, Vec3 pointBPos)

        Parameters:
            pointBPos: SimTK::Vec3 const &

        """
        return _opensim.PointToPointActuator_setPointB(self, *args)

    def getPointB(self):
        """
        getPointB(PointToPointActuator self) -> Vec3

        Parameters:
            self: OpenSim::PointToPointActuator const *

        """
        return _opensim.PointToPointActuator_getPointB(self)

    def setPointsAreGlobal(self, *args):
        """
        setPointsAreGlobal(PointToPointActuator self, bool isGlobal)

        Parameters:
            isGlobal: bool

        """
        return _opensim.PointToPointActuator_setPointsAreGlobal(self, *args)

    def getPointsAreGlobal(self):
        """
        getPointsAreGlobal(PointToPointActuator self) -> bool

        Parameters:
            self: OpenSim::PointToPointActuator const *

        """
        return _opensim.PointToPointActuator_getPointsAreGlobal(self)

    def setOptimalForce(self, *args):
        """
        setOptimalForce(PointToPointActuator self, double optimalForce)

        Parameters:
            optimalForce: double

        """
        return _opensim.PointToPointActuator_setOptimalForce(self, *args)

    def getOptimalForce(self):
        """
        getOptimalForce(PointToPointActuator self) -> double

        Parameters:
            self: OpenSim::PointToPointActuator const *

        """
        return _opensim.PointToPointActuator_getOptimalForce(self)

    __swig_destroy__ = _opensim.delete_PointToPointActuator
    __del__ = lambda self : None;
PointToPointActuator_swigregister = _opensim.PointToPointActuator_swigregister
PointToPointActuator_swigregister(PointToPointActuator)

def PointToPointActuator_safeDownCast(*args):
  """
    PointToPointActuator_safeDownCast(OpenSimObject obj) -> PointToPointActuator

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.PointToPointActuator_safeDownCast(*args)

def PointToPointActuator_getClassName():
  """PointToPointActuator_getClassName() -> std::string const &"""
  return _opensim.PointToPointActuator_getClassName()

class ClutchedPathSpring(PathActuator):
    """Proxy of C++ OpenSim::ClutchedPathSpring class"""
    __swig_setmethods__ = {}
    for _s in [PathActuator]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ClutchedPathSpring, name, value)
    __swig_getmethods__ = {}
    for _s in [PathActuator]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ClutchedPathSpring, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ClutchedPathSpring

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ClutchedPathSpring_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ClutchedPathSpring self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ClutchedPathSpring_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ClutchedPathSpring_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ClutchedPathSpring self) -> ClutchedPathSpring

        Parameters:
            self: OpenSim::ClutchedPathSpring const *

        """
        return _opensim.ClutchedPathSpring_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ClutchedPathSpring self) -> std::string const &

        Parameters:
            self: OpenSim::ClutchedPathSpring const *

        """
        return _opensim.ClutchedPathSpring_getConcreteClassName(self)

    def copyProperty_stiffness(self, *args):
        """
        copyProperty_stiffness(ClutchedPathSpring self, ClutchedPathSpring source)

        Parameters:
            source: OpenSim::ClutchedPathSpring::Self const &

        """
        return _opensim.ClutchedPathSpring_copyProperty_stiffness(self, *args)

    def append_stiffness(self, *args):
        """
        append_stiffness(ClutchedPathSpring self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ClutchedPathSpring_append_stiffness(self, *args)

    def constructProperty_stiffness(self, *args):
        """
        constructProperty_stiffness(ClutchedPathSpring self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ClutchedPathSpring_constructProperty_stiffness(self, *args)

    def get_stiffness(self, *args):
        """
        get_stiffness(ClutchedPathSpring self, int i) -> double const

        Parameters:
            i: int

        get_stiffness(ClutchedPathSpring self) -> double const &

        Parameters:
            self: OpenSim::ClutchedPathSpring const *

        """
        return _opensim.ClutchedPathSpring_get_stiffness(self, *args)

    def upd_stiffness(self, *args):
        """
        upd_stiffness(ClutchedPathSpring self, int i) -> double

        Parameters:
            i: int

        upd_stiffness(ClutchedPathSpring self) -> double &

        Parameters:
            self: OpenSim::ClutchedPathSpring *

        """
        return _opensim.ClutchedPathSpring_upd_stiffness(self, *args)

    def set_stiffness(self, *args):
        """
        set_stiffness(ClutchedPathSpring self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_stiffness(ClutchedPathSpring self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ClutchedPathSpring_set_stiffness(self, *args)

    def copyProperty_dissipation(self, *args):
        """
        copyProperty_dissipation(ClutchedPathSpring self, ClutchedPathSpring source)

        Parameters:
            source: OpenSim::ClutchedPathSpring::Self const &

        """
        return _opensim.ClutchedPathSpring_copyProperty_dissipation(self, *args)

    def append_dissipation(self, *args):
        """
        append_dissipation(ClutchedPathSpring self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ClutchedPathSpring_append_dissipation(self, *args)

    def constructProperty_dissipation(self, *args):
        """
        constructProperty_dissipation(ClutchedPathSpring self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ClutchedPathSpring_constructProperty_dissipation(self, *args)

    def get_dissipation(self, *args):
        """
        get_dissipation(ClutchedPathSpring self, int i) -> double const

        Parameters:
            i: int

        get_dissipation(ClutchedPathSpring self) -> double const &

        Parameters:
            self: OpenSim::ClutchedPathSpring const *

        """
        return _opensim.ClutchedPathSpring_get_dissipation(self, *args)

    def upd_dissipation(self, *args):
        """
        upd_dissipation(ClutchedPathSpring self, int i) -> double

        Parameters:
            i: int

        upd_dissipation(ClutchedPathSpring self) -> double &

        Parameters:
            self: OpenSim::ClutchedPathSpring *

        """
        return _opensim.ClutchedPathSpring_upd_dissipation(self, *args)

    def set_dissipation(self, *args):
        """
        set_dissipation(ClutchedPathSpring self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_dissipation(ClutchedPathSpring self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ClutchedPathSpring_set_dissipation(self, *args)

    def copyProperty_relaxation_time_constant(self, *args):
        """
        copyProperty_relaxation_time_constant(ClutchedPathSpring self, ClutchedPathSpring source)

        Parameters:
            source: OpenSim::ClutchedPathSpring::Self const &

        """
        return _opensim.ClutchedPathSpring_copyProperty_relaxation_time_constant(self, *args)

    def append_relaxation_time_constant(self, *args):
        """
        append_relaxation_time_constant(ClutchedPathSpring self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ClutchedPathSpring_append_relaxation_time_constant(self, *args)

    def constructProperty_relaxation_time_constant(self, *args):
        """
        constructProperty_relaxation_time_constant(ClutchedPathSpring self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ClutchedPathSpring_constructProperty_relaxation_time_constant(self, *args)

    def get_relaxation_time_constant(self, *args):
        """
        get_relaxation_time_constant(ClutchedPathSpring self, int i) -> double const

        Parameters:
            i: int

        get_relaxation_time_constant(ClutchedPathSpring self) -> double const &

        Parameters:
            self: OpenSim::ClutchedPathSpring const *

        """
        return _opensim.ClutchedPathSpring_get_relaxation_time_constant(self, *args)

    def upd_relaxation_time_constant(self, *args):
        """
        upd_relaxation_time_constant(ClutchedPathSpring self, int i) -> double

        Parameters:
            i: int

        upd_relaxation_time_constant(ClutchedPathSpring self) -> double &

        Parameters:
            self: OpenSim::ClutchedPathSpring *

        """
        return _opensim.ClutchedPathSpring_upd_relaxation_time_constant(self, *args)

    def set_relaxation_time_constant(self, *args):
        """
        set_relaxation_time_constant(ClutchedPathSpring self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_relaxation_time_constant(ClutchedPathSpring self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ClutchedPathSpring_set_relaxation_time_constant(self, *args)

    def copyProperty_initial_stretch(self, *args):
        """
        copyProperty_initial_stretch(ClutchedPathSpring self, ClutchedPathSpring source)

        Parameters:
            source: OpenSim::ClutchedPathSpring::Self const &

        """
        return _opensim.ClutchedPathSpring_copyProperty_initial_stretch(self, *args)

    def append_initial_stretch(self, *args):
        """
        append_initial_stretch(ClutchedPathSpring self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ClutchedPathSpring_append_initial_stretch(self, *args)

    def constructProperty_initial_stretch(self, *args):
        """
        constructProperty_initial_stretch(ClutchedPathSpring self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ClutchedPathSpring_constructProperty_initial_stretch(self, *args)

    def get_initial_stretch(self, *args):
        """
        get_initial_stretch(ClutchedPathSpring self, int i) -> double const

        Parameters:
            i: int

        get_initial_stretch(ClutchedPathSpring self) -> double const &

        Parameters:
            self: OpenSim::ClutchedPathSpring const *

        """
        return _opensim.ClutchedPathSpring_get_initial_stretch(self, *args)

    def upd_initial_stretch(self, *args):
        """
        upd_initial_stretch(ClutchedPathSpring self, int i) -> double

        Parameters:
            i: int

        upd_initial_stretch(ClutchedPathSpring self) -> double &

        Parameters:
            self: OpenSim::ClutchedPathSpring *

        """
        return _opensim.ClutchedPathSpring_upd_initial_stretch(self, *args)

    def set_initial_stretch(self, *args):
        """
        set_initial_stretch(ClutchedPathSpring self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_initial_stretch(ClutchedPathSpring self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ClutchedPathSpring_set_initial_stretch(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ClutchedPathSpring self) -> ClutchedPathSpring
        __init__(OpenSim::ClutchedPathSpring self, std::string const & name, double stiffness, double dissipation, double relaxationTau, 
            double stretch0=0.0) -> ClutchedPathSpring

        Parameters:
            name: std::string const &
            stiffness: double
            dissipation: double
            relaxationTau: double
            stretch0: double

        __init__(OpenSim::ClutchedPathSpring self, std::string const & name, double stiffness, double dissipation, double relaxationTau) -> ClutchedPathSpring

        Parameters:
            name: std::string const &
            stiffness: double
            dissipation: double
            relaxationTau: double

        """
        this = _opensim.new_ClutchedPathSpring(*args)
        try: self.this.append(this)
        except: self.this = this
    def getStiffness(self):
        """
        getStiffness(ClutchedPathSpring self) -> double

        Parameters:
            self: OpenSim::ClutchedPathSpring const *

        """
        return _opensim.ClutchedPathSpring_getStiffness(self)

    def setStiffness(self, *args):
        """
        setStiffness(ClutchedPathSpring self, double stiffness)

        Parameters:
            stiffness: double

        """
        return _opensim.ClutchedPathSpring_setStiffness(self, *args)

    def getDissipation(self):
        """
        getDissipation(ClutchedPathSpring self) -> double

        Parameters:
            self: OpenSim::ClutchedPathSpring const *

        """
        return _opensim.ClutchedPathSpring_getDissipation(self)

    def setDissipation(self, *args):
        """
        setDissipation(ClutchedPathSpring self, double dissipation)

        Parameters:
            dissipation: double

        """
        return _opensim.ClutchedPathSpring_setDissipation(self, *args)

    def getInitialStretch(self):
        """
        getInitialStretch(ClutchedPathSpring self) -> double

        Parameters:
            self: OpenSim::ClutchedPathSpring *

        """
        return _opensim.ClutchedPathSpring_getInitialStretch(self)

    def setInitialStretch(self, *args):
        """
        setInitialStretch(ClutchedPathSpring self, double stretch0)

        Parameters:
            stretch0: double

        """
        return _opensim.ClutchedPathSpring_setInitialStretch(self, *args)

    def getStretch(self, *args):
        """
        getStretch(ClutchedPathSpring self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.ClutchedPathSpring_getStretch(self, *args)

    def getTension(self, *args):
        """
        getTension(ClutchedPathSpring self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.ClutchedPathSpring_getTension(self, *args)

    __swig_destroy__ = _opensim.delete_ClutchedPathSpring
    __del__ = lambda self : None;
ClutchedPathSpring_swigregister = _opensim.ClutchedPathSpring_swigregister
ClutchedPathSpring_swigregister(ClutchedPathSpring)

def ClutchedPathSpring_safeDownCast(*args):
  """
    ClutchedPathSpring_safeDownCast(OpenSimObject obj) -> ClutchedPathSpring

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ClutchedPathSpring_safeDownCast(*args)

def ClutchedPathSpring_getClassName():
  """ClutchedPathSpring_getClassName() -> std::string const &"""
  return _opensim.ClutchedPathSpring_getClassName()

class SpringGeneralizedForce(Force):
    """Proxy of C++ OpenSim::SpringGeneralizedForce class"""
    __swig_setmethods__ = {}
    for _s in [Force]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SpringGeneralizedForce, name, value)
    __swig_getmethods__ = {}
    for _s in [Force]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SpringGeneralizedForce, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SpringGeneralizedForce

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SpringGeneralizedForce_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SpringGeneralizedForce self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SpringGeneralizedForce_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SpringGeneralizedForce_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SpringGeneralizedForce self) -> SpringGeneralizedForce

        Parameters:
            self: OpenSim::SpringGeneralizedForce const *

        """
        return _opensim.SpringGeneralizedForce_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SpringGeneralizedForce self) -> std::string const &

        Parameters:
            self: OpenSim::SpringGeneralizedForce const *

        """
        return _opensim.SpringGeneralizedForce_getConcreteClassName(self)

    def copyProperty_coordinate(self, *args):
        """
        copyProperty_coordinate(SpringGeneralizedForce self, SpringGeneralizedForce source)

        Parameters:
            source: OpenSim::SpringGeneralizedForce::Self const &

        """
        return _opensim.SpringGeneralizedForce_copyProperty_coordinate(self, *args)

    def append_coordinate(self, *args):
        """
        append_coordinate(SpringGeneralizedForce self, std::string const & value) -> int

        Parameters:
            value: std::string const &

        """
        return _opensim.SpringGeneralizedForce_append_coordinate(self, *args)

    def constructProperty_coordinate(self, *args):
        """
        constructProperty_coordinate(SpringGeneralizedForce self)
        constructProperty_coordinate(SpringGeneralizedForce self, std::string const & initValue)

        Parameters:
            initValue: std::string const &

        """
        return _opensim.SpringGeneralizedForce_constructProperty_coordinate(self, *args)

    def get_coordinate(self, *args):
        """
        get_coordinate(SpringGeneralizedForce self, int i) -> std::string const

        Parameters:
            i: int

        get_coordinate(SpringGeneralizedForce self) -> std::string const &

        Parameters:
            self: OpenSim::SpringGeneralizedForce const *

        """
        return _opensim.SpringGeneralizedForce_get_coordinate(self, *args)

    def upd_coordinate(self, *args):
        """
        upd_coordinate(SpringGeneralizedForce self, int i) -> std::string

        Parameters:
            i: int

        upd_coordinate(SpringGeneralizedForce self) -> std::string &

        Parameters:
            self: OpenSim::SpringGeneralizedForce *

        """
        return _opensim.SpringGeneralizedForce_upd_coordinate(self, *args)

    def set_coordinate(self, *args):
        """
        set_coordinate(SpringGeneralizedForce self, int i, std::string const & value)

        Parameters:
            i: int
            value: std::string const &

        set_coordinate(SpringGeneralizedForce self, std::string const & value)

        Parameters:
            value: std::string const &

        """
        return _opensim.SpringGeneralizedForce_set_coordinate(self, *args)

    def copyProperty_stiffness(self, *args):
        """
        copyProperty_stiffness(SpringGeneralizedForce self, SpringGeneralizedForce source)

        Parameters:
            source: OpenSim::SpringGeneralizedForce::Self const &

        """
        return _opensim.SpringGeneralizedForce_copyProperty_stiffness(self, *args)

    def append_stiffness(self, *args):
        """
        append_stiffness(SpringGeneralizedForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.SpringGeneralizedForce_append_stiffness(self, *args)

    def constructProperty_stiffness(self, *args):
        """
        constructProperty_stiffness(SpringGeneralizedForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.SpringGeneralizedForce_constructProperty_stiffness(self, *args)

    def get_stiffness(self, *args):
        """
        get_stiffness(SpringGeneralizedForce self, int i) -> double const

        Parameters:
            i: int

        get_stiffness(SpringGeneralizedForce self) -> double const &

        Parameters:
            self: OpenSim::SpringGeneralizedForce const *

        """
        return _opensim.SpringGeneralizedForce_get_stiffness(self, *args)

    def upd_stiffness(self, *args):
        """
        upd_stiffness(SpringGeneralizedForce self, int i) -> double

        Parameters:
            i: int

        upd_stiffness(SpringGeneralizedForce self) -> double &

        Parameters:
            self: OpenSim::SpringGeneralizedForce *

        """
        return _opensim.SpringGeneralizedForce_upd_stiffness(self, *args)

    def set_stiffness(self, *args):
        """
        set_stiffness(SpringGeneralizedForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_stiffness(SpringGeneralizedForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.SpringGeneralizedForce_set_stiffness(self, *args)

    def copyProperty_rest_length(self, *args):
        """
        copyProperty_rest_length(SpringGeneralizedForce self, SpringGeneralizedForce source)

        Parameters:
            source: OpenSim::SpringGeneralizedForce::Self const &

        """
        return _opensim.SpringGeneralizedForce_copyProperty_rest_length(self, *args)

    def append_rest_length(self, *args):
        """
        append_rest_length(SpringGeneralizedForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.SpringGeneralizedForce_append_rest_length(self, *args)

    def constructProperty_rest_length(self, *args):
        """
        constructProperty_rest_length(SpringGeneralizedForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.SpringGeneralizedForce_constructProperty_rest_length(self, *args)

    def get_rest_length(self, *args):
        """
        get_rest_length(SpringGeneralizedForce self, int i) -> double const

        Parameters:
            i: int

        get_rest_length(SpringGeneralizedForce self) -> double const &

        Parameters:
            self: OpenSim::SpringGeneralizedForce const *

        """
        return _opensim.SpringGeneralizedForce_get_rest_length(self, *args)

    def upd_rest_length(self, *args):
        """
        upd_rest_length(SpringGeneralizedForce self, int i) -> double

        Parameters:
            i: int

        upd_rest_length(SpringGeneralizedForce self) -> double &

        Parameters:
            self: OpenSim::SpringGeneralizedForce *

        """
        return _opensim.SpringGeneralizedForce_upd_rest_length(self, *args)

    def set_rest_length(self, *args):
        """
        set_rest_length(SpringGeneralizedForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_rest_length(SpringGeneralizedForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.SpringGeneralizedForce_set_rest_length(self, *args)

    def copyProperty_viscosity(self, *args):
        """
        copyProperty_viscosity(SpringGeneralizedForce self, SpringGeneralizedForce source)

        Parameters:
            source: OpenSim::SpringGeneralizedForce::Self const &

        """
        return _opensim.SpringGeneralizedForce_copyProperty_viscosity(self, *args)

    def append_viscosity(self, *args):
        """
        append_viscosity(SpringGeneralizedForce self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.SpringGeneralizedForce_append_viscosity(self, *args)

    def constructProperty_viscosity(self, *args):
        """
        constructProperty_viscosity(SpringGeneralizedForce self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.SpringGeneralizedForce_constructProperty_viscosity(self, *args)

    def get_viscosity(self, *args):
        """
        get_viscosity(SpringGeneralizedForce self, int i) -> double const

        Parameters:
            i: int

        get_viscosity(SpringGeneralizedForce self) -> double const &

        Parameters:
            self: OpenSim::SpringGeneralizedForce const *

        """
        return _opensim.SpringGeneralizedForce_get_viscosity(self, *args)

    def upd_viscosity(self, *args):
        """
        upd_viscosity(SpringGeneralizedForce self, int i) -> double

        Parameters:
            i: int

        upd_viscosity(SpringGeneralizedForce self) -> double &

        Parameters:
            self: OpenSim::SpringGeneralizedForce *

        """
        return _opensim.SpringGeneralizedForce_upd_viscosity(self, *args)

    def set_viscosity(self, *args):
        """
        set_viscosity(SpringGeneralizedForce self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_viscosity(SpringGeneralizedForce self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.SpringGeneralizedForce_set_viscosity(self, *args)

    def __init__(self, coordinateName=""): 
        """
        __init__(OpenSim::SpringGeneralizedForce self, std::string const & coordinateName="") -> SpringGeneralizedForce

        Parameters:
            coordinateName: std::string const &

        __init__(OpenSim::SpringGeneralizedForce self) -> SpringGeneralizedForce
        """
        this = _opensim.new_SpringGeneralizedForce(coordinateName)
        try: self.this.append(this)
        except: self.this = this
    def setStiffness(self, *args):
        """
        setStiffness(SpringGeneralizedForce self, double aStiffness)

        Parameters:
            aStiffness: double

        """
        return _opensim.SpringGeneralizedForce_setStiffness(self, *args)

    def getStiffness(self):
        """
        getStiffness(SpringGeneralizedForce self) -> double

        Parameters:
            self: OpenSim::SpringGeneralizedForce const *

        """
        return _opensim.SpringGeneralizedForce_getStiffness(self)

    def setRestLength(self, *args):
        """
        setRestLength(SpringGeneralizedForce self, double aRestLength)

        Parameters:
            aRestLength: double

        """
        return _opensim.SpringGeneralizedForce_setRestLength(self, *args)

    def getRestLength(self):
        """
        getRestLength(SpringGeneralizedForce self) -> double

        Parameters:
            self: OpenSim::SpringGeneralizedForce const *

        """
        return _opensim.SpringGeneralizedForce_getRestLength(self)

    def setViscosity(self, *args):
        """
        setViscosity(SpringGeneralizedForce self, double aViscosity)

        Parameters:
            aViscosity: double

        """
        return _opensim.SpringGeneralizedForce_setViscosity(self, *args)

    def getViscosity(self):
        """
        getViscosity(SpringGeneralizedForce self) -> double

        Parameters:
            self: OpenSim::SpringGeneralizedForce const *

        """
        return _opensim.SpringGeneralizedForce_getViscosity(self)

    def getRecordLabels(self):
        """
        getRecordLabels(SpringGeneralizedForce self) -> ArrayStr

        Parameters:
            self: OpenSim::SpringGeneralizedForce const *

        """
        return _opensim.SpringGeneralizedForce_getRecordLabels(self)

    def getRecordValues(self, *args):
        """
        getRecordValues(SpringGeneralizedForce self, State state) -> ArrayDouble

        Parameters:
            state: SimTK::State const &

        """
        return _opensim.SpringGeneralizedForce_getRecordValues(self, *args)

    __swig_destroy__ = _opensim.delete_SpringGeneralizedForce
    __del__ = lambda self : None;
SpringGeneralizedForce_swigregister = _opensim.SpringGeneralizedForce_swigregister
SpringGeneralizedForce_swigregister(SpringGeneralizedForce)

def SpringGeneralizedForce_safeDownCast(*args):
  """
    SpringGeneralizedForce_safeDownCast(OpenSimObject obj) -> SpringGeneralizedForce

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SpringGeneralizedForce_safeDownCast(*args)

def SpringGeneralizedForce_getClassName():
  """SpringGeneralizedForce_getClassName() -> std::string const &"""
  return _opensim.SpringGeneralizedForce_getClassName()

class Thelen2003Muscle(ActivationFiberLengthMuscle):
    """Proxy of C++ OpenSim::Thelen2003Muscle class"""
    __swig_setmethods__ = {}
    for _s in [ActivationFiberLengthMuscle]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Thelen2003Muscle, name, value)
    __swig_getmethods__ = {}
    for _s in [ActivationFiberLengthMuscle]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Thelen2003Muscle, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Thelen2003Muscle

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Thelen2003Muscle_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Thelen2003Muscle self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Thelen2003Muscle_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Thelen2003Muscle_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Thelen2003Muscle self) -> Thelen2003Muscle

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Thelen2003Muscle self) -> std::string const &

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getConcreteClassName(self)

    def copyProperty_activation_time_constant(self, *args):
        """
        copyProperty_activation_time_constant(Thelen2003Muscle self, Thelen2003Muscle source)

        Parameters:
            source: OpenSim::Thelen2003Muscle::Self const &

        """
        return _opensim.Thelen2003Muscle_copyProperty_activation_time_constant(self, *args)

    def append_activation_time_constant(self, *args):
        """
        append_activation_time_constant(Thelen2003Muscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_append_activation_time_constant(self, *args)

    def constructProperty_activation_time_constant(self, *args):
        """
        constructProperty_activation_time_constant(Thelen2003Muscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Thelen2003Muscle_constructProperty_activation_time_constant(self, *args)

    def get_activation_time_constant(self, *args):
        """
        get_activation_time_constant(Thelen2003Muscle self, int i) -> double const

        Parameters:
            i: int

        get_activation_time_constant(Thelen2003Muscle self) -> double const &

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_get_activation_time_constant(self, *args)

    def upd_activation_time_constant(self, *args):
        """
        upd_activation_time_constant(Thelen2003Muscle self, int i) -> double

        Parameters:
            i: int

        upd_activation_time_constant(Thelen2003Muscle self) -> double &

        Parameters:
            self: OpenSim::Thelen2003Muscle *

        """
        return _opensim.Thelen2003Muscle_upd_activation_time_constant(self, *args)

    def set_activation_time_constant(self, *args):
        """
        set_activation_time_constant(Thelen2003Muscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_activation_time_constant(Thelen2003Muscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_set_activation_time_constant(self, *args)

    def copyProperty_deactivation_time_constant(self, *args):
        """
        copyProperty_deactivation_time_constant(Thelen2003Muscle self, Thelen2003Muscle source)

        Parameters:
            source: OpenSim::Thelen2003Muscle::Self const &

        """
        return _opensim.Thelen2003Muscle_copyProperty_deactivation_time_constant(self, *args)

    def append_deactivation_time_constant(self, *args):
        """
        append_deactivation_time_constant(Thelen2003Muscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_append_deactivation_time_constant(self, *args)

    def constructProperty_deactivation_time_constant(self, *args):
        """
        constructProperty_deactivation_time_constant(Thelen2003Muscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Thelen2003Muscle_constructProperty_deactivation_time_constant(self, *args)

    def get_deactivation_time_constant(self, *args):
        """
        get_deactivation_time_constant(Thelen2003Muscle self, int i) -> double const

        Parameters:
            i: int

        get_deactivation_time_constant(Thelen2003Muscle self) -> double const &

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_get_deactivation_time_constant(self, *args)

    def upd_deactivation_time_constant(self, *args):
        """
        upd_deactivation_time_constant(Thelen2003Muscle self, int i) -> double

        Parameters:
            i: int

        upd_deactivation_time_constant(Thelen2003Muscle self) -> double &

        Parameters:
            self: OpenSim::Thelen2003Muscle *

        """
        return _opensim.Thelen2003Muscle_upd_deactivation_time_constant(self, *args)

    def set_deactivation_time_constant(self, *args):
        """
        set_deactivation_time_constant(Thelen2003Muscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_deactivation_time_constant(Thelen2003Muscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_set_deactivation_time_constant(self, *args)

    def copyProperty_FmaxTendonStrain(self, *args):
        """
        copyProperty_FmaxTendonStrain(Thelen2003Muscle self, Thelen2003Muscle source)

        Parameters:
            source: OpenSim::Thelen2003Muscle::Self const &

        """
        return _opensim.Thelen2003Muscle_copyProperty_FmaxTendonStrain(self, *args)

    def append_FmaxTendonStrain(self, *args):
        """
        append_FmaxTendonStrain(Thelen2003Muscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_append_FmaxTendonStrain(self, *args)

    def constructProperty_FmaxTendonStrain(self, *args):
        """
        constructProperty_FmaxTendonStrain(Thelen2003Muscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Thelen2003Muscle_constructProperty_FmaxTendonStrain(self, *args)

    def get_FmaxTendonStrain(self, *args):
        """
        get_FmaxTendonStrain(Thelen2003Muscle self, int i) -> double const

        Parameters:
            i: int

        get_FmaxTendonStrain(Thelen2003Muscle self) -> double const &

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_get_FmaxTendonStrain(self, *args)

    def upd_FmaxTendonStrain(self, *args):
        """
        upd_FmaxTendonStrain(Thelen2003Muscle self, int i) -> double

        Parameters:
            i: int

        upd_FmaxTendonStrain(Thelen2003Muscle self) -> double &

        Parameters:
            self: OpenSim::Thelen2003Muscle *

        """
        return _opensim.Thelen2003Muscle_upd_FmaxTendonStrain(self, *args)

    def set_FmaxTendonStrain(self, *args):
        """
        set_FmaxTendonStrain(Thelen2003Muscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_FmaxTendonStrain(Thelen2003Muscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_set_FmaxTendonStrain(self, *args)

    def copyProperty_FmaxMuscleStrain(self, *args):
        """
        copyProperty_FmaxMuscleStrain(Thelen2003Muscle self, Thelen2003Muscle source)

        Parameters:
            source: OpenSim::Thelen2003Muscle::Self const &

        """
        return _opensim.Thelen2003Muscle_copyProperty_FmaxMuscleStrain(self, *args)

    def append_FmaxMuscleStrain(self, *args):
        """
        append_FmaxMuscleStrain(Thelen2003Muscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_append_FmaxMuscleStrain(self, *args)

    def constructProperty_FmaxMuscleStrain(self, *args):
        """
        constructProperty_FmaxMuscleStrain(Thelen2003Muscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Thelen2003Muscle_constructProperty_FmaxMuscleStrain(self, *args)

    def get_FmaxMuscleStrain(self, *args):
        """
        get_FmaxMuscleStrain(Thelen2003Muscle self, int i) -> double const

        Parameters:
            i: int

        get_FmaxMuscleStrain(Thelen2003Muscle self) -> double const &

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_get_FmaxMuscleStrain(self, *args)

    def upd_FmaxMuscleStrain(self, *args):
        """
        upd_FmaxMuscleStrain(Thelen2003Muscle self, int i) -> double

        Parameters:
            i: int

        upd_FmaxMuscleStrain(Thelen2003Muscle self) -> double &

        Parameters:
            self: OpenSim::Thelen2003Muscle *

        """
        return _opensim.Thelen2003Muscle_upd_FmaxMuscleStrain(self, *args)

    def set_FmaxMuscleStrain(self, *args):
        """
        set_FmaxMuscleStrain(Thelen2003Muscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_FmaxMuscleStrain(Thelen2003Muscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_set_FmaxMuscleStrain(self, *args)

    def copyProperty_KshapeActive(self, *args):
        """
        copyProperty_KshapeActive(Thelen2003Muscle self, Thelen2003Muscle source)

        Parameters:
            source: OpenSim::Thelen2003Muscle::Self const &

        """
        return _opensim.Thelen2003Muscle_copyProperty_KshapeActive(self, *args)

    def append_KshapeActive(self, *args):
        """
        append_KshapeActive(Thelen2003Muscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_append_KshapeActive(self, *args)

    def constructProperty_KshapeActive(self, *args):
        """
        constructProperty_KshapeActive(Thelen2003Muscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Thelen2003Muscle_constructProperty_KshapeActive(self, *args)

    def get_KshapeActive(self, *args):
        """
        get_KshapeActive(Thelen2003Muscle self, int i) -> double const

        Parameters:
            i: int

        get_KshapeActive(Thelen2003Muscle self) -> double const &

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_get_KshapeActive(self, *args)

    def upd_KshapeActive(self, *args):
        """
        upd_KshapeActive(Thelen2003Muscle self, int i) -> double

        Parameters:
            i: int

        upd_KshapeActive(Thelen2003Muscle self) -> double &

        Parameters:
            self: OpenSim::Thelen2003Muscle *

        """
        return _opensim.Thelen2003Muscle_upd_KshapeActive(self, *args)

    def set_KshapeActive(self, *args):
        """
        set_KshapeActive(Thelen2003Muscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_KshapeActive(Thelen2003Muscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_set_KshapeActive(self, *args)

    def copyProperty_KshapePassive(self, *args):
        """
        copyProperty_KshapePassive(Thelen2003Muscle self, Thelen2003Muscle source)

        Parameters:
            source: OpenSim::Thelen2003Muscle::Self const &

        """
        return _opensim.Thelen2003Muscle_copyProperty_KshapePassive(self, *args)

    def append_KshapePassive(self, *args):
        """
        append_KshapePassive(Thelen2003Muscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_append_KshapePassive(self, *args)

    def constructProperty_KshapePassive(self, *args):
        """
        constructProperty_KshapePassive(Thelen2003Muscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Thelen2003Muscle_constructProperty_KshapePassive(self, *args)

    def get_KshapePassive(self, *args):
        """
        get_KshapePassive(Thelen2003Muscle self, int i) -> double const

        Parameters:
            i: int

        get_KshapePassive(Thelen2003Muscle self) -> double const &

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_get_KshapePassive(self, *args)

    def upd_KshapePassive(self, *args):
        """
        upd_KshapePassive(Thelen2003Muscle self, int i) -> double

        Parameters:
            i: int

        upd_KshapePassive(Thelen2003Muscle self) -> double &

        Parameters:
            self: OpenSim::Thelen2003Muscle *

        """
        return _opensim.Thelen2003Muscle_upd_KshapePassive(self, *args)

    def set_KshapePassive(self, *args):
        """
        set_KshapePassive(Thelen2003Muscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_KshapePassive(Thelen2003Muscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_set_KshapePassive(self, *args)

    def copyProperty_Af(self, *args):
        """
        copyProperty_Af(Thelen2003Muscle self, Thelen2003Muscle source)

        Parameters:
            source: OpenSim::Thelen2003Muscle::Self const &

        """
        return _opensim.Thelen2003Muscle_copyProperty_Af(self, *args)

    def append_Af(self, *args):
        """
        append_Af(Thelen2003Muscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_append_Af(self, *args)

    def constructProperty_Af(self, *args):
        """
        constructProperty_Af(Thelen2003Muscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Thelen2003Muscle_constructProperty_Af(self, *args)

    def get_Af(self, *args):
        """
        get_Af(Thelen2003Muscle self, int i) -> double const

        Parameters:
            i: int

        get_Af(Thelen2003Muscle self) -> double const &

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_get_Af(self, *args)

    def upd_Af(self, *args):
        """
        upd_Af(Thelen2003Muscle self, int i) -> double

        Parameters:
            i: int

        upd_Af(Thelen2003Muscle self) -> double &

        Parameters:
            self: OpenSim::Thelen2003Muscle *

        """
        return _opensim.Thelen2003Muscle_upd_Af(self, *args)

    def set_Af(self, *args):
        """
        set_Af(Thelen2003Muscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_Af(Thelen2003Muscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_set_Af(self, *args)

    def copyProperty_Flen(self, *args):
        """
        copyProperty_Flen(Thelen2003Muscle self, Thelen2003Muscle source)

        Parameters:
            source: OpenSim::Thelen2003Muscle::Self const &

        """
        return _opensim.Thelen2003Muscle_copyProperty_Flen(self, *args)

    def append_Flen(self, *args):
        """
        append_Flen(Thelen2003Muscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_append_Flen(self, *args)

    def constructProperty_Flen(self, *args):
        """
        constructProperty_Flen(Thelen2003Muscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Thelen2003Muscle_constructProperty_Flen(self, *args)

    def get_Flen(self, *args):
        """
        get_Flen(Thelen2003Muscle self, int i) -> double const

        Parameters:
            i: int

        get_Flen(Thelen2003Muscle self) -> double const &

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_get_Flen(self, *args)

    def upd_Flen(self, *args):
        """
        upd_Flen(Thelen2003Muscle self, int i) -> double

        Parameters:
            i: int

        upd_Flen(Thelen2003Muscle self) -> double &

        Parameters:
            self: OpenSim::Thelen2003Muscle *

        """
        return _opensim.Thelen2003Muscle_upd_Flen(self, *args)

    def set_Flen(self, *args):
        """
        set_Flen(Thelen2003Muscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_Flen(Thelen2003Muscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_set_Flen(self, *args)

    def copyProperty_fv_linear_extrap_threshold(self, *args):
        """
        copyProperty_fv_linear_extrap_threshold(Thelen2003Muscle self, Thelen2003Muscle source)

        Parameters:
            source: OpenSim::Thelen2003Muscle::Self const &

        """
        return _opensim.Thelen2003Muscle_copyProperty_fv_linear_extrap_threshold(self, *args)

    def append_fv_linear_extrap_threshold(self, *args):
        """
        append_fv_linear_extrap_threshold(Thelen2003Muscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_append_fv_linear_extrap_threshold(self, *args)

    def constructProperty_fv_linear_extrap_threshold(self, *args):
        """
        constructProperty_fv_linear_extrap_threshold(Thelen2003Muscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Thelen2003Muscle_constructProperty_fv_linear_extrap_threshold(self, *args)

    def get_fv_linear_extrap_threshold(self, *args):
        """
        get_fv_linear_extrap_threshold(Thelen2003Muscle self, int i) -> double const

        Parameters:
            i: int

        get_fv_linear_extrap_threshold(Thelen2003Muscle self) -> double const &

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_get_fv_linear_extrap_threshold(self, *args)

    def upd_fv_linear_extrap_threshold(self, *args):
        """
        upd_fv_linear_extrap_threshold(Thelen2003Muscle self, int i) -> double

        Parameters:
            i: int

        upd_fv_linear_extrap_threshold(Thelen2003Muscle self) -> double &

        Parameters:
            self: OpenSim::Thelen2003Muscle *

        """
        return _opensim.Thelen2003Muscle_upd_fv_linear_extrap_threshold(self, *args)

    def set_fv_linear_extrap_threshold(self, *args):
        """
        set_fv_linear_extrap_threshold(Thelen2003Muscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_fv_linear_extrap_threshold(Thelen2003Muscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Thelen2003Muscle_set_fv_linear_extrap_threshold(self, *args)

    FiberActiveForceLength = _opensim.Thelen2003Muscle_FiberActiveForceLength
    FiberPassiveForceLength = _opensim.Thelen2003Muscle_FiberPassiveForceLength
    FiberForceVelocity = _opensim.Thelen2003Muscle_FiberForceVelocity
    TendonForceLength = _opensim.Thelen2003Muscle_TendonForceLength
    def __init__(self, *args): 
        """
        __init__(OpenSim::Thelen2003Muscle self) -> Thelen2003Muscle
        __init__(OpenSim::Thelen2003Muscle self, std::string const & aName, double aMaxIsometricForce, double aOptimalFiberLength, 
            double aTendonSlackLength, double aPennationAngle) -> Thelen2003Muscle

        Parameters:
            aName: std::string const &
            aMaxIsometricForce: double
            aOptimalFiberLength: double
            aTendonSlackLength: double
            aPennationAngle: double

        """
        this = _opensim.new_Thelen2003Muscle(*args)
        try: self.this.append(this)
        except: self.this = this
    def getActivationTimeConstant(self):
        """
        getActivationTimeConstant(Thelen2003Muscle self) -> double

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getActivationTimeConstant(self)

    def getMinimumActivation(self):
        """
        getMinimumActivation(Thelen2003Muscle self) -> double

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getMinimumActivation(self)

    def getDeactivationTimeConstant(self):
        """
        getDeactivationTimeConstant(Thelen2003Muscle self) -> double

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getDeactivationTimeConstant(self)

    def getFmaxTendonStrain(self):
        """
        getFmaxTendonStrain(Thelen2003Muscle self) -> double

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getFmaxTendonStrain(self)

    def getFmaxMuscleStrain(self):
        """
        getFmaxMuscleStrain(Thelen2003Muscle self) -> double

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getFmaxMuscleStrain(self)

    def getKshapeActive(self):
        """
        getKshapeActive(Thelen2003Muscle self) -> double

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getKshapeActive(self)

    def getKshapePassive(self):
        """
        getKshapePassive(Thelen2003Muscle self) -> double

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getKshapePassive(self)

    def getAf(self):
        """
        getAf(Thelen2003Muscle self) -> double

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getAf(self)

    def getFlen(self):
        """
        getFlen(Thelen2003Muscle self) -> double

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getFlen(self)

    def getForceVelocityExtrapolationThreshold(self):
        """
        getForceVelocityExtrapolationThreshold(Thelen2003Muscle self) -> double

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getForceVelocityExtrapolationThreshold(self)

    def getMinimumFiberLength(self):
        """
        getMinimumFiberLength(Thelen2003Muscle self) -> double

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getMinimumFiberLength(self)

    def getMaximumPennationAngle(self):
        """
        getMaximumPennationAngle(Thelen2003Muscle self) -> double

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getMaximumPennationAngle(self)

    def setActivationTimeConstant(self, *args):
        """
        setActivationTimeConstant(Thelen2003Muscle self, double aActivationTimeConstant) -> bool

        Parameters:
            aActivationTimeConstant: double

        """
        return _opensim.Thelen2003Muscle_setActivationTimeConstant(self, *args)

    def setDeactivationTimeConstant(self, *args):
        """
        setDeactivationTimeConstant(Thelen2003Muscle self, double aDeactivationTimeConstant) -> bool

        Parameters:
            aDeactivationTimeConstant: double

        """
        return _opensim.Thelen2003Muscle_setDeactivationTimeConstant(self, *args)

    def setMinimumActivation(self, *args):
        """
        setMinimumActivation(Thelen2003Muscle self, double aActivationMinValue) -> bool

        Parameters:
            aActivationMinValue: double

        """
        return _opensim.Thelen2003Muscle_setMinimumActivation(self, *args)

    def setFmaxTendonStrain(self, *args):
        """
        setFmaxTendonStrain(Thelen2003Muscle self, double aFmaxTendonStrain) -> bool

        Parameters:
            aFmaxTendonStrain: double

        """
        return _opensim.Thelen2003Muscle_setFmaxTendonStrain(self, *args)

    def setFmaxFiberStrain(self, *args):
        """
        setFmaxFiberStrain(Thelen2003Muscle self, double aFmaxMuscleStrain) -> bool

        Parameters:
            aFmaxMuscleStrain: double

        """
        return _opensim.Thelen2003Muscle_setFmaxFiberStrain(self, *args)

    def setKshapeActive(self, *args):
        """
        setKshapeActive(Thelen2003Muscle self, double aKShapeActive) -> bool

        Parameters:
            aKShapeActive: double

        """
        return _opensim.Thelen2003Muscle_setKshapeActive(self, *args)

    def setKshapePassive(self, *args):
        """
        setKshapePassive(Thelen2003Muscle self, double aKshapePassive) -> bool

        Parameters:
            aKshapePassive: double

        """
        return _opensim.Thelen2003Muscle_setKshapePassive(self, *args)

    def setAf(self, *args):
        """
        setAf(Thelen2003Muscle self, double aAf) -> bool

        Parameters:
            aAf: double

        """
        return _opensim.Thelen2003Muscle_setAf(self, *args)

    def setFlen(self, *args):
        """
        setFlen(Thelen2003Muscle self, double aFlen) -> bool

        Parameters:
            aFlen: double

        """
        return _opensim.Thelen2003Muscle_setFlen(self, *args)

    def setForceVelocityExtrapolationThreshold(self, *args):
        """
        setForceVelocityExtrapolationThreshold(Thelen2003Muscle self, double aFvThresh) -> bool

        Parameters:
            aFvThresh: double

        """
        return _opensim.Thelen2003Muscle_setForceVelocityExtrapolationThreshold(self, *args)

    def getActivationModel(self):
        """
        getActivationModel(Thelen2003Muscle self) -> MuscleFirstOrderActivationDynamicModel const &

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getActivationModel(self)

    def getPennationModel(self):
        """
        getPennationModel(Thelen2003Muscle self) -> MuscleFixedWidthPennationModel const &

        Parameters:
            self: OpenSim::Thelen2003Muscle const *

        """
        return _opensim.Thelen2003Muscle_getPennationModel(self)

    def printCurveToCSVFile(self, *args):
        """
        printCurveToCSVFile(Thelen2003Muscle self, OpenSim::Thelen2003Muscle::CurveType const ctype, std::string const & path)

        Parameters:
            ctype: enum OpenSim::Thelen2003Muscle::CurveType const
            path: std::string const &

        """
        return _opensim.Thelen2003Muscle_printCurveToCSVFile(self, *args)

    def computeActuation(self, *args):
        """
        computeActuation(Thelen2003Muscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Thelen2003Muscle_computeActuation(self, *args)

    def computeInitialFiberEquilibrium(self, *args):
        """
        computeInitialFiberEquilibrium(Thelen2003Muscle self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Thelen2003Muscle_computeInitialFiberEquilibrium(self, *args)

    def calcActiveFiberForceAlongTendon(self, *args):
        """
        calcActiveFiberForceAlongTendon(Thelen2003Muscle self, double activation, double fiberLength, double fiberVelocity) -> double

        Parameters:
            activation: double
            fiberLength: double
            fiberVelocity: double

        """
        return _opensim.Thelen2003Muscle_calcActiveFiberForceAlongTendon(self, *args)

    def calcInextensibleTendonActiveFiberForce(self, *args):
        """
        calcInextensibleTendonActiveFiberForce(Thelen2003Muscle self, State s, double aActivation) -> double

        Parameters:
            s: SimTK::State &
            aActivation: double

        """
        return _opensim.Thelen2003Muscle_calcInextensibleTendonActiveFiberForce(self, *args)

    __swig_destroy__ = _opensim.delete_Thelen2003Muscle
    __del__ = lambda self : None;
Thelen2003Muscle_swigregister = _opensim.Thelen2003Muscle_swigregister
Thelen2003Muscle_swigregister(Thelen2003Muscle)

def Thelen2003Muscle_safeDownCast(*args):
  """
    Thelen2003Muscle_safeDownCast(OpenSimObject obj) -> Thelen2003Muscle

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Thelen2003Muscle_safeDownCast(*args)

def Thelen2003Muscle_getClassName():
  """Thelen2003Muscle_getClassName() -> std::string const &"""
  return _opensim.Thelen2003Muscle_getClassName()

class RigidTendonMuscle(Muscle):
    """Proxy of C++ OpenSim::RigidTendonMuscle class"""
    __swig_setmethods__ = {}
    for _s in [Muscle]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, RigidTendonMuscle, name, value)
    __swig_getmethods__ = {}
    for _s in [Muscle]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, RigidTendonMuscle, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> RigidTendonMuscle

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.RigidTendonMuscle_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(RigidTendonMuscle self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.RigidTendonMuscle_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.RigidTendonMuscle_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(RigidTendonMuscle self) -> RigidTendonMuscle

        Parameters:
            self: OpenSim::RigidTendonMuscle const *

        """
        return _opensim.RigidTendonMuscle_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(RigidTendonMuscle self) -> std::string const &

        Parameters:
            self: OpenSim::RigidTendonMuscle const *

        """
        return _opensim.RigidTendonMuscle_getConcreteClassName(self)

    def copyProperty_active_force_length_curve(self, *args):
        """
        copyProperty_active_force_length_curve(RigidTendonMuscle self, RigidTendonMuscle source)

        Parameters:
            source: OpenSim::RigidTendonMuscle::Self const &

        """
        return _opensim.RigidTendonMuscle_copyProperty_active_force_length_curve(self, *args)

    def append_active_force_length_curve(self, *args):
        """
        append_active_force_length_curve(RigidTendonMuscle self, Function value) -> int

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.RigidTendonMuscle_append_active_force_length_curve(self, *args)

    def constructProperty_active_force_length_curve(self, *args):
        """
        constructProperty_active_force_length_curve(RigidTendonMuscle self, Function initValue)

        Parameters:
            initValue: OpenSim::Function const &

        """
        return _opensim.RigidTendonMuscle_constructProperty_active_force_length_curve(self, *args)

    def get_active_force_length_curve(self, *args):
        """
        get_active_force_length_curve(RigidTendonMuscle self, int i) -> Function

        Parameters:
            i: int

        get_active_force_length_curve(RigidTendonMuscle self) -> Function

        Parameters:
            self: OpenSim::RigidTendonMuscle const *

        """
        return _opensim.RigidTendonMuscle_get_active_force_length_curve(self, *args)

    def upd_active_force_length_curve(self, *args):
        """
        upd_active_force_length_curve(RigidTendonMuscle self, int i) -> Function

        Parameters:
            i: int

        upd_active_force_length_curve(RigidTendonMuscle self) -> Function

        Parameters:
            self: OpenSim::RigidTendonMuscle *

        """
        return _opensim.RigidTendonMuscle_upd_active_force_length_curve(self, *args)

    def set_active_force_length_curve(self, *args):
        """
        set_active_force_length_curve(RigidTendonMuscle self, int i, Function value)

        Parameters:
            i: int
            value: OpenSim::Function const &

        set_active_force_length_curve(RigidTendonMuscle self, Function value)

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.RigidTendonMuscle_set_active_force_length_curve(self, *args)

    def copyProperty_passive_force_length_curve(self, *args):
        """
        copyProperty_passive_force_length_curve(RigidTendonMuscle self, RigidTendonMuscle source)

        Parameters:
            source: OpenSim::RigidTendonMuscle::Self const &

        """
        return _opensim.RigidTendonMuscle_copyProperty_passive_force_length_curve(self, *args)

    def append_passive_force_length_curve(self, *args):
        """
        append_passive_force_length_curve(RigidTendonMuscle self, Function value) -> int

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.RigidTendonMuscle_append_passive_force_length_curve(self, *args)

    def constructProperty_passive_force_length_curve(self, *args):
        """
        constructProperty_passive_force_length_curve(RigidTendonMuscle self, Function initValue)

        Parameters:
            initValue: OpenSim::Function const &

        """
        return _opensim.RigidTendonMuscle_constructProperty_passive_force_length_curve(self, *args)

    def get_passive_force_length_curve(self, *args):
        """
        get_passive_force_length_curve(RigidTendonMuscle self, int i) -> Function

        Parameters:
            i: int

        get_passive_force_length_curve(RigidTendonMuscle self) -> Function

        Parameters:
            self: OpenSim::RigidTendonMuscle const *

        """
        return _opensim.RigidTendonMuscle_get_passive_force_length_curve(self, *args)

    def upd_passive_force_length_curve(self, *args):
        """
        upd_passive_force_length_curve(RigidTendonMuscle self, int i) -> Function

        Parameters:
            i: int

        upd_passive_force_length_curve(RigidTendonMuscle self) -> Function

        Parameters:
            self: OpenSim::RigidTendonMuscle *

        """
        return _opensim.RigidTendonMuscle_upd_passive_force_length_curve(self, *args)

    def set_passive_force_length_curve(self, *args):
        """
        set_passive_force_length_curve(RigidTendonMuscle self, int i, Function value)

        Parameters:
            i: int
            value: OpenSim::Function const &

        set_passive_force_length_curve(RigidTendonMuscle self, Function value)

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.RigidTendonMuscle_set_passive_force_length_curve(self, *args)

    def copyProperty_force_velocity_curve(self, *args):
        """
        copyProperty_force_velocity_curve(RigidTendonMuscle self, RigidTendonMuscle source)

        Parameters:
            source: OpenSim::RigidTendonMuscle::Self const &

        """
        return _opensim.RigidTendonMuscle_copyProperty_force_velocity_curve(self, *args)

    def append_force_velocity_curve(self, *args):
        """
        append_force_velocity_curve(RigidTendonMuscle self, Function value) -> int

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.RigidTendonMuscle_append_force_velocity_curve(self, *args)

    def constructProperty_force_velocity_curve(self, *args):
        """
        constructProperty_force_velocity_curve(RigidTendonMuscle self, Function initValue)

        Parameters:
            initValue: OpenSim::Function const &

        """
        return _opensim.RigidTendonMuscle_constructProperty_force_velocity_curve(self, *args)

    def get_force_velocity_curve(self, *args):
        """
        get_force_velocity_curve(RigidTendonMuscle self, int i) -> Function

        Parameters:
            i: int

        get_force_velocity_curve(RigidTendonMuscle self) -> Function

        Parameters:
            self: OpenSim::RigidTendonMuscle const *

        """
        return _opensim.RigidTendonMuscle_get_force_velocity_curve(self, *args)

    def upd_force_velocity_curve(self, *args):
        """
        upd_force_velocity_curve(RigidTendonMuscle self, int i) -> Function

        Parameters:
            i: int

        upd_force_velocity_curve(RigidTendonMuscle self) -> Function

        Parameters:
            self: OpenSim::RigidTendonMuscle *

        """
        return _opensim.RigidTendonMuscle_upd_force_velocity_curve(self, *args)

    def set_force_velocity_curve(self, *args):
        """
        set_force_velocity_curve(RigidTendonMuscle self, int i, Function value)

        Parameters:
            i: int
            value: OpenSim::Function const &

        set_force_velocity_curve(RigidTendonMuscle self, Function value)

        Parameters:
            value: OpenSim::Function const &

        """
        return _opensim.RigidTendonMuscle_set_force_velocity_curve(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::RigidTendonMuscle self) -> RigidTendonMuscle
        __init__(OpenSim::RigidTendonMuscle self, std::string const & name, double maxIsometricForce, double optimalFiberLength, double tendonSlackLength, 
            double pennationAngle) -> RigidTendonMuscle

        Parameters:
            name: std::string const &
            maxIsometricForce: double
            optimalFiberLength: double
            tendonSlackLength: double
            pennationAngle: double

        """
        this = _opensim.new_RigidTendonMuscle(*args)
        try: self.this.append(this)
        except: self.this = this
    def setActivation(self, *args):
        """
        setActivation(RigidTendonMuscle self, State s, double activation)

        Parameters:
            s: SimTK::State &
            activation: double

        """
        return _opensim.RigidTendonMuscle_setActivation(self, *args)

    __swig_destroy__ = _opensim.delete_RigidTendonMuscle
    __del__ = lambda self : None;
RigidTendonMuscle_swigregister = _opensim.RigidTendonMuscle_swigregister
RigidTendonMuscle_swigregister(RigidTendonMuscle)

def RigidTendonMuscle_safeDownCast(*args):
  """
    RigidTendonMuscle_safeDownCast(OpenSimObject obj) -> RigidTendonMuscle

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.RigidTendonMuscle_safeDownCast(*args)

def RigidTendonMuscle_getClassName():
  """RigidTendonMuscle_getClassName() -> std::string const &"""
  return _opensim.RigidTendonMuscle_getClassName()

class ActiveForceLengthCurve(Function):
    """Proxy of C++ OpenSim::ActiveForceLengthCurve class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ActiveForceLengthCurve, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ActiveForceLengthCurve, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ActiveForceLengthCurve

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ActiveForceLengthCurve_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ActiveForceLengthCurve self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ActiveForceLengthCurve_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ActiveForceLengthCurve_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ActiveForceLengthCurve self) -> ActiveForceLengthCurve

        Parameters:
            self: OpenSim::ActiveForceLengthCurve const *

        """
        return _opensim.ActiveForceLengthCurve_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ActiveForceLengthCurve self) -> std::string const &

        Parameters:
            self: OpenSim::ActiveForceLengthCurve const *

        """
        return _opensim.ActiveForceLengthCurve_getConcreteClassName(self)

    def copyProperty_min_norm_active_fiber_length(self, *args):
        """
        copyProperty_min_norm_active_fiber_length(ActiveForceLengthCurve self, ActiveForceLengthCurve source)

        Parameters:
            source: OpenSim::ActiveForceLengthCurve::Self const &

        """
        return _opensim.ActiveForceLengthCurve_copyProperty_min_norm_active_fiber_length(self, *args)

    def append_min_norm_active_fiber_length(self, *args):
        """
        append_min_norm_active_fiber_length(ActiveForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ActiveForceLengthCurve_append_min_norm_active_fiber_length(self, *args)

    def constructProperty_min_norm_active_fiber_length(self, *args):
        """
        constructProperty_min_norm_active_fiber_length(ActiveForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ActiveForceLengthCurve_constructProperty_min_norm_active_fiber_length(self, *args)

    def get_min_norm_active_fiber_length(self, *args):
        """
        get_min_norm_active_fiber_length(ActiveForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_min_norm_active_fiber_length(ActiveForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::ActiveForceLengthCurve const *

        """
        return _opensim.ActiveForceLengthCurve_get_min_norm_active_fiber_length(self, *args)

    def upd_min_norm_active_fiber_length(self, *args):
        """
        upd_min_norm_active_fiber_length(ActiveForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_min_norm_active_fiber_length(ActiveForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::ActiveForceLengthCurve *

        """
        return _opensim.ActiveForceLengthCurve_upd_min_norm_active_fiber_length(self, *args)

    def set_min_norm_active_fiber_length(self, *args):
        """
        set_min_norm_active_fiber_length(ActiveForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_min_norm_active_fiber_length(ActiveForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ActiveForceLengthCurve_set_min_norm_active_fiber_length(self, *args)

    def copyProperty_transition_norm_fiber_length(self, *args):
        """
        copyProperty_transition_norm_fiber_length(ActiveForceLengthCurve self, ActiveForceLengthCurve source)

        Parameters:
            source: OpenSim::ActiveForceLengthCurve::Self const &

        """
        return _opensim.ActiveForceLengthCurve_copyProperty_transition_norm_fiber_length(self, *args)

    def append_transition_norm_fiber_length(self, *args):
        """
        append_transition_norm_fiber_length(ActiveForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ActiveForceLengthCurve_append_transition_norm_fiber_length(self, *args)

    def constructProperty_transition_norm_fiber_length(self, *args):
        """
        constructProperty_transition_norm_fiber_length(ActiveForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ActiveForceLengthCurve_constructProperty_transition_norm_fiber_length(self, *args)

    def get_transition_norm_fiber_length(self, *args):
        """
        get_transition_norm_fiber_length(ActiveForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_transition_norm_fiber_length(ActiveForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::ActiveForceLengthCurve const *

        """
        return _opensim.ActiveForceLengthCurve_get_transition_norm_fiber_length(self, *args)

    def upd_transition_norm_fiber_length(self, *args):
        """
        upd_transition_norm_fiber_length(ActiveForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_transition_norm_fiber_length(ActiveForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::ActiveForceLengthCurve *

        """
        return _opensim.ActiveForceLengthCurve_upd_transition_norm_fiber_length(self, *args)

    def set_transition_norm_fiber_length(self, *args):
        """
        set_transition_norm_fiber_length(ActiveForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_transition_norm_fiber_length(ActiveForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ActiveForceLengthCurve_set_transition_norm_fiber_length(self, *args)

    def copyProperty_max_norm_active_fiber_length(self, *args):
        """
        copyProperty_max_norm_active_fiber_length(ActiveForceLengthCurve self, ActiveForceLengthCurve source)

        Parameters:
            source: OpenSim::ActiveForceLengthCurve::Self const &

        """
        return _opensim.ActiveForceLengthCurve_copyProperty_max_norm_active_fiber_length(self, *args)

    def append_max_norm_active_fiber_length(self, *args):
        """
        append_max_norm_active_fiber_length(ActiveForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ActiveForceLengthCurve_append_max_norm_active_fiber_length(self, *args)

    def constructProperty_max_norm_active_fiber_length(self, *args):
        """
        constructProperty_max_norm_active_fiber_length(ActiveForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ActiveForceLengthCurve_constructProperty_max_norm_active_fiber_length(self, *args)

    def get_max_norm_active_fiber_length(self, *args):
        """
        get_max_norm_active_fiber_length(ActiveForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_max_norm_active_fiber_length(ActiveForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::ActiveForceLengthCurve const *

        """
        return _opensim.ActiveForceLengthCurve_get_max_norm_active_fiber_length(self, *args)

    def upd_max_norm_active_fiber_length(self, *args):
        """
        upd_max_norm_active_fiber_length(ActiveForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_max_norm_active_fiber_length(ActiveForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::ActiveForceLengthCurve *

        """
        return _opensim.ActiveForceLengthCurve_upd_max_norm_active_fiber_length(self, *args)

    def set_max_norm_active_fiber_length(self, *args):
        """
        set_max_norm_active_fiber_length(ActiveForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_max_norm_active_fiber_length(ActiveForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ActiveForceLengthCurve_set_max_norm_active_fiber_length(self, *args)

    def copyProperty_shallow_ascending_slope(self, *args):
        """
        copyProperty_shallow_ascending_slope(ActiveForceLengthCurve self, ActiveForceLengthCurve source)

        Parameters:
            source: OpenSim::ActiveForceLengthCurve::Self const &

        """
        return _opensim.ActiveForceLengthCurve_copyProperty_shallow_ascending_slope(self, *args)

    def append_shallow_ascending_slope(self, *args):
        """
        append_shallow_ascending_slope(ActiveForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ActiveForceLengthCurve_append_shallow_ascending_slope(self, *args)

    def constructProperty_shallow_ascending_slope(self, *args):
        """
        constructProperty_shallow_ascending_slope(ActiveForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ActiveForceLengthCurve_constructProperty_shallow_ascending_slope(self, *args)

    def get_shallow_ascending_slope(self, *args):
        """
        get_shallow_ascending_slope(ActiveForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_shallow_ascending_slope(ActiveForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::ActiveForceLengthCurve const *

        """
        return _opensim.ActiveForceLengthCurve_get_shallow_ascending_slope(self, *args)

    def upd_shallow_ascending_slope(self, *args):
        """
        upd_shallow_ascending_slope(ActiveForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_shallow_ascending_slope(ActiveForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::ActiveForceLengthCurve *

        """
        return _opensim.ActiveForceLengthCurve_upd_shallow_ascending_slope(self, *args)

    def set_shallow_ascending_slope(self, *args):
        """
        set_shallow_ascending_slope(ActiveForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_shallow_ascending_slope(ActiveForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ActiveForceLengthCurve_set_shallow_ascending_slope(self, *args)

    def copyProperty_minimum_value(self, *args):
        """
        copyProperty_minimum_value(ActiveForceLengthCurve self, ActiveForceLengthCurve source)

        Parameters:
            source: OpenSim::ActiveForceLengthCurve::Self const &

        """
        return _opensim.ActiveForceLengthCurve_copyProperty_minimum_value(self, *args)

    def append_minimum_value(self, *args):
        """
        append_minimum_value(ActiveForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ActiveForceLengthCurve_append_minimum_value(self, *args)

    def constructProperty_minimum_value(self, *args):
        """
        constructProperty_minimum_value(ActiveForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ActiveForceLengthCurve_constructProperty_minimum_value(self, *args)

    def get_minimum_value(self, *args):
        """
        get_minimum_value(ActiveForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_minimum_value(ActiveForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::ActiveForceLengthCurve const *

        """
        return _opensim.ActiveForceLengthCurve_get_minimum_value(self, *args)

    def upd_minimum_value(self, *args):
        """
        upd_minimum_value(ActiveForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_minimum_value(ActiveForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::ActiveForceLengthCurve *

        """
        return _opensim.ActiveForceLengthCurve_upd_minimum_value(self, *args)

    def set_minimum_value(self, *args):
        """
        set_minimum_value(ActiveForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_minimum_value(ActiveForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ActiveForceLengthCurve_set_minimum_value(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ActiveForceLengthCurve self) -> ActiveForceLengthCurve
        __init__(OpenSim::ActiveForceLengthCurve self, double minActiveNormFiberLength, double transitionNormFiberLength, double maxActiveNormFiberLength, 
            double shallowAscendingSlope, double minimumValue) -> ActiveForceLengthCurve

        Parameters:
            minActiveNormFiberLength: double
            transitionNormFiberLength: double
            maxActiveNormFiberLength: double
            shallowAscendingSlope: double
            minimumValue: double

        """
        this = _opensim.new_ActiveForceLengthCurve(*args)
        try: self.this.append(this)
        except: self.this = this
    def getMinActiveFiberLength(self):
        """
        getMinActiveFiberLength(ActiveForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::ActiveForceLengthCurve const *

        """
        return _opensim.ActiveForceLengthCurve_getMinActiveFiberLength(self)

    def getTransitionFiberLength(self):
        """
        getTransitionFiberLength(ActiveForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::ActiveForceLengthCurve const *

        """
        return _opensim.ActiveForceLengthCurve_getTransitionFiberLength(self)

    def getMaxActiveFiberLength(self):
        """
        getMaxActiveFiberLength(ActiveForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::ActiveForceLengthCurve const *

        """
        return _opensim.ActiveForceLengthCurve_getMaxActiveFiberLength(self)

    def getShallowAscendingSlope(self):
        """
        getShallowAscendingSlope(ActiveForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::ActiveForceLengthCurve const *

        """
        return _opensim.ActiveForceLengthCurve_getShallowAscendingSlope(self)

    def getMinValue(self):
        """
        getMinValue(ActiveForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::ActiveForceLengthCurve const *

        """
        return _opensim.ActiveForceLengthCurve_getMinValue(self)

    def setActiveFiberLengths(self, *args):
        """
        setActiveFiberLengths(ActiveForceLengthCurve self, double minActiveNormFiberLength, double transitionNormFiberLength, double maxActiveNormFiberLength, 
            double shallowAscendingSlope)

        Parameters:
            minActiveNormFiberLength: double
            transitionNormFiberLength: double
            maxActiveNormFiberLength: double
            shallowAscendingSlope: double

        """
        return _opensim.ActiveForceLengthCurve_setActiveFiberLengths(self, *args)

    def setMinValue(self, *args):
        """
        setMinValue(ActiveForceLengthCurve self, double minimumValue)

        Parameters:
            minimumValue: double

        """
        return _opensim.ActiveForceLengthCurve_setMinValue(self, *args)

    def calcValue(self, *args):
        """
        calcValue(ActiveForceLengthCurve self, Vector x) -> double

        Parameters:
            x: SimTK::Vector const &

        calcValue(ActiveForceLengthCurve self, double normFiberLength) -> double

        Parameters:
            normFiberLength: double

        """
        return _opensim.ActiveForceLengthCurve_calcValue(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(ActiveForceLengthCurve self, double normFiberLength, int order) -> double

        Parameters:
            normFiberLength: double
            order: int

        """
        return _opensim.ActiveForceLengthCurve_calcDerivative(self, *args)

    def getCurveDomain(self):
        """
        getCurveDomain(ActiveForceLengthCurve self) -> Vec2

        Parameters:
            self: OpenSim::ActiveForceLengthCurve const *

        """
        return _opensim.ActiveForceLengthCurve_getCurveDomain(self)

    def printMuscleCurveToCSVFile(self, *args):
        """
        printMuscleCurveToCSVFile(ActiveForceLengthCurve self, std::string const & path)

        Parameters:
            path: std::string const &

        """
        return _opensim.ActiveForceLengthCurve_printMuscleCurveToCSVFile(self, *args)

    def ensureCurveUpToDate(self):
        """
        ensureCurveUpToDate(ActiveForceLengthCurve self)

        Parameters:
            self: OpenSim::ActiveForceLengthCurve *

        """
        return _opensim.ActiveForceLengthCurve_ensureCurveUpToDate(self)

    __swig_destroy__ = _opensim.delete_ActiveForceLengthCurve
    __del__ = lambda self : None;
ActiveForceLengthCurve_swigregister = _opensim.ActiveForceLengthCurve_swigregister
ActiveForceLengthCurve_swigregister(ActiveForceLengthCurve)

def ActiveForceLengthCurve_safeDownCast(*args):
  """
    ActiveForceLengthCurve_safeDownCast(OpenSimObject obj) -> ActiveForceLengthCurve

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ActiveForceLengthCurve_safeDownCast(*args)

def ActiveForceLengthCurve_getClassName():
  """ActiveForceLengthCurve_getClassName() -> std::string const &"""
  return _opensim.ActiveForceLengthCurve_getClassName()

class FiberCompressiveForceCosPennationCurve(Function):
    """Proxy of C++ OpenSim::FiberCompressiveForceCosPennationCurve class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, FiberCompressiveForceCosPennationCurve, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, FiberCompressiveForceCosPennationCurve, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> FiberCompressiveForceCosPennationCurve

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(FiberCompressiveForceCosPennationCurve self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.FiberCompressiveForceCosPennationCurve_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(FiberCompressiveForceCosPennationCurve self) -> FiberCompressiveForceCosPennationCurve

        Parameters:
            self: OpenSim::FiberCompressiveForceCosPennationCurve const *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(FiberCompressiveForceCosPennationCurve self) -> std::string const &

        Parameters:
            self: OpenSim::FiberCompressiveForceCosPennationCurve const *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_getConcreteClassName(self)

    def copyProperty_engagement_angle_in_degrees(self, *args):
        """
        copyProperty_engagement_angle_in_degrees(FiberCompressiveForceCosPennationCurve self, FiberCompressiveForceCosPennationCurve source)

        Parameters:
            source: OpenSim::FiberCompressiveForceCosPennationCurve::Self const &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_copyProperty_engagement_angle_in_degrees(self, *args)

    def append_engagement_angle_in_degrees(self, *args):
        """
        append_engagement_angle_in_degrees(FiberCompressiveForceCosPennationCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_append_engagement_angle_in_degrees(self, *args)

    def constructProperty_engagement_angle_in_degrees(self, *args):
        """
        constructProperty_engagement_angle_in_degrees(FiberCompressiveForceCosPennationCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_constructProperty_engagement_angle_in_degrees(self, *args)

    def get_engagement_angle_in_degrees(self, *args):
        """
        get_engagement_angle_in_degrees(FiberCompressiveForceCosPennationCurve self, int i) -> double const

        Parameters:
            i: int

        get_engagement_angle_in_degrees(FiberCompressiveForceCosPennationCurve self) -> double const &

        Parameters:
            self: OpenSim::FiberCompressiveForceCosPennationCurve const *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_get_engagement_angle_in_degrees(self, *args)

    def upd_engagement_angle_in_degrees(self, *args):
        """
        upd_engagement_angle_in_degrees(FiberCompressiveForceCosPennationCurve self, int i) -> double

        Parameters:
            i: int

        upd_engagement_angle_in_degrees(FiberCompressiveForceCosPennationCurve self) -> double &

        Parameters:
            self: OpenSim::FiberCompressiveForceCosPennationCurve *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_upd_engagement_angle_in_degrees(self, *args)

    def set_engagement_angle_in_degrees(self, *args):
        """
        set_engagement_angle_in_degrees(FiberCompressiveForceCosPennationCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_engagement_angle_in_degrees(FiberCompressiveForceCosPennationCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_set_engagement_angle_in_degrees(self, *args)

    def copyProperty_stiffness_at_perpendicular(self, *args):
        """
        copyProperty_stiffness_at_perpendicular(FiberCompressiveForceCosPennationCurve self, FiberCompressiveForceCosPennationCurve source)

        Parameters:
            source: OpenSim::FiberCompressiveForceCosPennationCurve::Self const &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_copyProperty_stiffness_at_perpendicular(self, *args)

    def append_stiffness_at_perpendicular(self, *args):
        """
        append_stiffness_at_perpendicular(FiberCompressiveForceCosPennationCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_append_stiffness_at_perpendicular(self, *args)

    def constructProperty_stiffness_at_perpendicular(self, *args):
        """
        constructProperty_stiffness_at_perpendicular(FiberCompressiveForceCosPennationCurve self)
        constructProperty_stiffness_at_perpendicular(FiberCompressiveForceCosPennationCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_constructProperty_stiffness_at_perpendicular(self, *args)

    def get_stiffness_at_perpendicular(self, *args):
        """
        get_stiffness_at_perpendicular(FiberCompressiveForceCosPennationCurve self, int i) -> double const

        Parameters:
            i: int

        get_stiffness_at_perpendicular(FiberCompressiveForceCosPennationCurve self) -> double const &

        Parameters:
            self: OpenSim::FiberCompressiveForceCosPennationCurve const *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_get_stiffness_at_perpendicular(self, *args)

    def upd_stiffness_at_perpendicular(self, *args):
        """
        upd_stiffness_at_perpendicular(FiberCompressiveForceCosPennationCurve self, int i) -> double

        Parameters:
            i: int

        upd_stiffness_at_perpendicular(FiberCompressiveForceCosPennationCurve self) -> double &

        Parameters:
            self: OpenSim::FiberCompressiveForceCosPennationCurve *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_upd_stiffness_at_perpendicular(self, *args)

    def set_stiffness_at_perpendicular(self, *args):
        """
        set_stiffness_at_perpendicular(FiberCompressiveForceCosPennationCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_stiffness_at_perpendicular(FiberCompressiveForceCosPennationCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_set_stiffness_at_perpendicular(self, *args)

    def copyProperty_curviness(self, *args):
        """
        copyProperty_curviness(FiberCompressiveForceCosPennationCurve self, FiberCompressiveForceCosPennationCurve source)

        Parameters:
            source: OpenSim::FiberCompressiveForceCosPennationCurve::Self const &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_copyProperty_curviness(self, *args)

    def append_curviness(self, *args):
        """
        append_curviness(FiberCompressiveForceCosPennationCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_append_curviness(self, *args)

    def constructProperty_curviness(self, *args):
        """
        constructProperty_curviness(FiberCompressiveForceCosPennationCurve self)
        constructProperty_curviness(FiberCompressiveForceCosPennationCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_constructProperty_curviness(self, *args)

    def get_curviness(self, *args):
        """
        get_curviness(FiberCompressiveForceCosPennationCurve self, int i) -> double const

        Parameters:
            i: int

        get_curviness(FiberCompressiveForceCosPennationCurve self) -> double const &

        Parameters:
            self: OpenSim::FiberCompressiveForceCosPennationCurve const *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_get_curviness(self, *args)

    def upd_curviness(self, *args):
        """
        upd_curviness(FiberCompressiveForceCosPennationCurve self, int i) -> double

        Parameters:
            i: int

        upd_curviness(FiberCompressiveForceCosPennationCurve self) -> double &

        Parameters:
            self: OpenSim::FiberCompressiveForceCosPennationCurve *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_upd_curviness(self, *args)

    def set_curviness(self, *args):
        """
        set_curviness(FiberCompressiveForceCosPennationCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_curviness(FiberCompressiveForceCosPennationCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_set_curviness(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::FiberCompressiveForceCosPennationCurve self) -> FiberCompressiveForceCosPennationCurve
        __init__(OpenSim::FiberCompressiveForceCosPennationCurve self, double engagementAngleInDegrees, double stiffnessAtPerpendicular, double curviness, 
            std::string const & muscleName) -> FiberCompressiveForceCosPennationCurve

        Parameters:
            engagementAngleInDegrees: double
            stiffnessAtPerpendicular: double
            curviness: double
            muscleName: std::string const &

        __init__(OpenSim::FiberCompressiveForceCosPennationCurve self, double engagementAngleInDegrees, std::string const & muscleName) -> FiberCompressiveForceCosPennationCurve

        Parameters:
            engagementAngleInDegrees: double
            muscleName: std::string const &

        """
        this = _opensim.new_FiberCompressiveForceCosPennationCurve(*args)
        try: self.this.append(this)
        except: self.this = this
    def getEngagementAngleInDegrees(self):
        """
        getEngagementAngleInDegrees(FiberCompressiveForceCosPennationCurve self) -> double

        Parameters:
            self: OpenSim::FiberCompressiveForceCosPennationCurve const *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_getEngagementAngleInDegrees(self)

    def getStiffnessAtPerpendicularInUse(self):
        """
        getStiffnessAtPerpendicularInUse(FiberCompressiveForceCosPennationCurve self) -> double

        Parameters:
            self: OpenSim::FiberCompressiveForceCosPennationCurve const *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_getStiffnessAtPerpendicularInUse(self)

    def getCurvinessInUse(self):
        """
        getCurvinessInUse(FiberCompressiveForceCosPennationCurve self) -> double

        Parameters:
            self: OpenSim::FiberCompressiveForceCosPennationCurve const *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_getCurvinessInUse(self)

    def isFittedCurveBeingUsed(self):
        """
        isFittedCurveBeingUsed(FiberCompressiveForceCosPennationCurve self) -> bool

        Parameters:
            self: OpenSim::FiberCompressiveForceCosPennationCurve const *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_isFittedCurveBeingUsed(self)

    def setEngagementAngleInDegrees(self, *args):
        """
        setEngagementAngleInDegrees(FiberCompressiveForceCosPennationCurve self, double aEngagementAngleInDegrees)

        Parameters:
            aEngagementAngleInDegrees: double

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_setEngagementAngleInDegrees(self, *args)

    def setOptionalProperties(self, *args):
        """
        setOptionalProperties(FiberCompressiveForceCosPennationCurve self, double aStiffnessAtPerpendicular, double aCurviness)

        Parameters:
            aStiffnessAtPerpendicular: double
            aCurviness: double

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_setOptionalProperties(self, *args)

    def calcValue(self, *args):
        """
        calcValue(FiberCompressiveForceCosPennationCurve self, double cosPennationAngle) -> double

        Parameters:
            cosPennationAngle: double

        calcValue(FiberCompressiveForceCosPennationCurve self, Vector x) -> double

        Parameters:
            x: SimTK::Vector const &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_calcValue(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(FiberCompressiveForceCosPennationCurve self, double cosPennationAngle, int order) -> double

        Parameters:
            cosPennationAngle: double
            order: int

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_calcDerivative(self, *args)

    def calcIntegral(self, *args):
        """
        calcIntegral(FiberCompressiveForceCosPennationCurve self, double cosPennationAngle) -> double

        Parameters:
            cosPennationAngle: double

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_calcIntegral(self, *args)

    def getCurveDomain(self):
        """
        getCurveDomain(FiberCompressiveForceCosPennationCurve self) -> Vec2

        Parameters:
            self: OpenSim::FiberCompressiveForceCosPennationCurve const *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_getCurveDomain(self)

    def printMuscleCurveToCSVFile(self, *args):
        """
        printMuscleCurveToCSVFile(FiberCompressiveForceCosPennationCurve self, std::string const & path)

        Parameters:
            path: std::string const &

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_printMuscleCurveToCSVFile(self, *args)

    def ensureCurveUpToDate(self):
        """
        ensureCurveUpToDate(FiberCompressiveForceCosPennationCurve self)

        Parameters:
            self: OpenSim::FiberCompressiveForceCosPennationCurve *

        """
        return _opensim.FiberCompressiveForceCosPennationCurve_ensureCurveUpToDate(self)

    __swig_destroy__ = _opensim.delete_FiberCompressiveForceCosPennationCurve
    __del__ = lambda self : None;
FiberCompressiveForceCosPennationCurve_swigregister = _opensim.FiberCompressiveForceCosPennationCurve_swigregister
FiberCompressiveForceCosPennationCurve_swigregister(FiberCompressiveForceCosPennationCurve)

def FiberCompressiveForceCosPennationCurve_safeDownCast(*args):
  """
    FiberCompressiveForceCosPennationCurve_safeDownCast(OpenSimObject obj) -> FiberCompressiveForceCosPennationCurve

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.FiberCompressiveForceCosPennationCurve_safeDownCast(*args)

def FiberCompressiveForceCosPennationCurve_getClassName():
  """FiberCompressiveForceCosPennationCurve_getClassName() -> std::string const &"""
  return _opensim.FiberCompressiveForceCosPennationCurve_getClassName()

class FiberCompressiveForceLengthCurve(Function):
    """Proxy of C++ OpenSim::FiberCompressiveForceLengthCurve class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, FiberCompressiveForceLengthCurve, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, FiberCompressiveForceLengthCurve, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> FiberCompressiveForceLengthCurve

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.FiberCompressiveForceLengthCurve_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(FiberCompressiveForceLengthCurve self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.FiberCompressiveForceLengthCurve_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.FiberCompressiveForceLengthCurve_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(FiberCompressiveForceLengthCurve self) -> FiberCompressiveForceLengthCurve

        Parameters:
            self: OpenSim::FiberCompressiveForceLengthCurve const *

        """
        return _opensim.FiberCompressiveForceLengthCurve_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(FiberCompressiveForceLengthCurve self) -> std::string const &

        Parameters:
            self: OpenSim::FiberCompressiveForceLengthCurve const *

        """
        return _opensim.FiberCompressiveForceLengthCurve_getConcreteClassName(self)

    def copyProperty_norm_length_at_zero_force(self, *args):
        """
        copyProperty_norm_length_at_zero_force(FiberCompressiveForceLengthCurve self, FiberCompressiveForceLengthCurve source)

        Parameters:
            source: OpenSim::FiberCompressiveForceLengthCurve::Self const &

        """
        return _opensim.FiberCompressiveForceLengthCurve_copyProperty_norm_length_at_zero_force(self, *args)

    def append_norm_length_at_zero_force(self, *args):
        """
        append_norm_length_at_zero_force(FiberCompressiveForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.FiberCompressiveForceLengthCurve_append_norm_length_at_zero_force(self, *args)

    def constructProperty_norm_length_at_zero_force(self, *args):
        """
        constructProperty_norm_length_at_zero_force(FiberCompressiveForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.FiberCompressiveForceLengthCurve_constructProperty_norm_length_at_zero_force(self, *args)

    def get_norm_length_at_zero_force(self, *args):
        """
        get_norm_length_at_zero_force(FiberCompressiveForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_norm_length_at_zero_force(FiberCompressiveForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::FiberCompressiveForceLengthCurve const *

        """
        return _opensim.FiberCompressiveForceLengthCurve_get_norm_length_at_zero_force(self, *args)

    def upd_norm_length_at_zero_force(self, *args):
        """
        upd_norm_length_at_zero_force(FiberCompressiveForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_norm_length_at_zero_force(FiberCompressiveForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::FiberCompressiveForceLengthCurve *

        """
        return _opensim.FiberCompressiveForceLengthCurve_upd_norm_length_at_zero_force(self, *args)

    def set_norm_length_at_zero_force(self, *args):
        """
        set_norm_length_at_zero_force(FiberCompressiveForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_norm_length_at_zero_force(FiberCompressiveForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.FiberCompressiveForceLengthCurve_set_norm_length_at_zero_force(self, *args)

    def copyProperty_stiffness_at_zero_length(self, *args):
        """
        copyProperty_stiffness_at_zero_length(FiberCompressiveForceLengthCurve self, FiberCompressiveForceLengthCurve source)

        Parameters:
            source: OpenSim::FiberCompressiveForceLengthCurve::Self const &

        """
        return _opensim.FiberCompressiveForceLengthCurve_copyProperty_stiffness_at_zero_length(self, *args)

    def append_stiffness_at_zero_length(self, *args):
        """
        append_stiffness_at_zero_length(FiberCompressiveForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.FiberCompressiveForceLengthCurve_append_stiffness_at_zero_length(self, *args)

    def constructProperty_stiffness_at_zero_length(self, *args):
        """
        constructProperty_stiffness_at_zero_length(FiberCompressiveForceLengthCurve self)
        constructProperty_stiffness_at_zero_length(FiberCompressiveForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.FiberCompressiveForceLengthCurve_constructProperty_stiffness_at_zero_length(self, *args)

    def get_stiffness_at_zero_length(self, *args):
        """
        get_stiffness_at_zero_length(FiberCompressiveForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_stiffness_at_zero_length(FiberCompressiveForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::FiberCompressiveForceLengthCurve const *

        """
        return _opensim.FiberCompressiveForceLengthCurve_get_stiffness_at_zero_length(self, *args)

    def upd_stiffness_at_zero_length(self, *args):
        """
        upd_stiffness_at_zero_length(FiberCompressiveForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_stiffness_at_zero_length(FiberCompressiveForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::FiberCompressiveForceLengthCurve *

        """
        return _opensim.FiberCompressiveForceLengthCurve_upd_stiffness_at_zero_length(self, *args)

    def set_stiffness_at_zero_length(self, *args):
        """
        set_stiffness_at_zero_length(FiberCompressiveForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_stiffness_at_zero_length(FiberCompressiveForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.FiberCompressiveForceLengthCurve_set_stiffness_at_zero_length(self, *args)

    def copyProperty_curviness(self, *args):
        """
        copyProperty_curviness(FiberCompressiveForceLengthCurve self, FiberCompressiveForceLengthCurve source)

        Parameters:
            source: OpenSim::FiberCompressiveForceLengthCurve::Self const &

        """
        return _opensim.FiberCompressiveForceLengthCurve_copyProperty_curviness(self, *args)

    def append_curviness(self, *args):
        """
        append_curviness(FiberCompressiveForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.FiberCompressiveForceLengthCurve_append_curviness(self, *args)

    def constructProperty_curviness(self, *args):
        """
        constructProperty_curviness(FiberCompressiveForceLengthCurve self)
        constructProperty_curviness(FiberCompressiveForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.FiberCompressiveForceLengthCurve_constructProperty_curviness(self, *args)

    def get_curviness(self, *args):
        """
        get_curviness(FiberCompressiveForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_curviness(FiberCompressiveForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::FiberCompressiveForceLengthCurve const *

        """
        return _opensim.FiberCompressiveForceLengthCurve_get_curviness(self, *args)

    def upd_curviness(self, *args):
        """
        upd_curviness(FiberCompressiveForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_curviness(FiberCompressiveForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::FiberCompressiveForceLengthCurve *

        """
        return _opensim.FiberCompressiveForceLengthCurve_upd_curviness(self, *args)

    def set_curviness(self, *args):
        """
        set_curviness(FiberCompressiveForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_curviness(FiberCompressiveForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.FiberCompressiveForceLengthCurve_set_curviness(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::FiberCompressiveForceLengthCurve self) -> FiberCompressiveForceLengthCurve
        __init__(OpenSim::FiberCompressiveForceLengthCurve self, double normLengthAtZeroForce, double stiffnessAtZeroLength, double curviness, std::string const & muscleName) -> FiberCompressiveForceLengthCurve

        Parameters:
            normLengthAtZeroForce: double
            stiffnessAtZeroLength: double
            curviness: double
            muscleName: std::string const &

        """
        this = _opensim.new_FiberCompressiveForceLengthCurve(*args)
        try: self.this.append(this)
        except: self.this = this
    def getNormLengthAtZeroForce(self):
        """
        getNormLengthAtZeroForce(FiberCompressiveForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::FiberCompressiveForceLengthCurve const *

        """
        return _opensim.FiberCompressiveForceLengthCurve_getNormLengthAtZeroForce(self)

    def getStiffnessAtZeroLengthInUse(self):
        """
        getStiffnessAtZeroLengthInUse(FiberCompressiveForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::FiberCompressiveForceLengthCurve const *

        """
        return _opensim.FiberCompressiveForceLengthCurve_getStiffnessAtZeroLengthInUse(self)

    def getCurvinessInUse(self):
        """
        getCurvinessInUse(FiberCompressiveForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::FiberCompressiveForceLengthCurve const *

        """
        return _opensim.FiberCompressiveForceLengthCurve_getCurvinessInUse(self)

    def setNormLengthAtZeroForce(self, *args):
        """
        setNormLengthAtZeroForce(FiberCompressiveForceLengthCurve self, double aNormLengthAtZeroForce)

        Parameters:
            aNormLengthAtZeroForce: double

        """
        return _opensim.FiberCompressiveForceLengthCurve_setNormLengthAtZeroForce(self, *args)

    def setOptionalProperties(self, *args):
        """
        setOptionalProperties(FiberCompressiveForceLengthCurve self, double aStiffnessAtZeroLength, double aCurviness)

        Parameters:
            aStiffnessAtZeroLength: double
            aCurviness: double

        """
        return _opensim.FiberCompressiveForceLengthCurve_setOptionalProperties(self, *args)

    def isFittedCurveBeingUsed(self):
        """
        isFittedCurveBeingUsed(FiberCompressiveForceLengthCurve self) -> bool

        Parameters:
            self: OpenSim::FiberCompressiveForceLengthCurve const *

        """
        return _opensim.FiberCompressiveForceLengthCurve_isFittedCurveBeingUsed(self)

    def calcValue(self, *args):
        """
        calcValue(FiberCompressiveForceLengthCurve self, double aNormLength) -> double

        Parameters:
            aNormLength: double

        calcValue(FiberCompressiveForceLengthCurve self, Vector x) -> double

        Parameters:
            x: SimTK::Vector const &

        """
        return _opensim.FiberCompressiveForceLengthCurve_calcValue(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(FiberCompressiveForceLengthCurve self, double aNormLength, int order) -> double

        Parameters:
            aNormLength: double
            order: int

        """
        return _opensim.FiberCompressiveForceLengthCurve_calcDerivative(self, *args)

    def calcIntegral(self, *args):
        """
        calcIntegral(FiberCompressiveForceLengthCurve self, double aNormLength) -> double

        Parameters:
            aNormLength: double

        """
        return _opensim.FiberCompressiveForceLengthCurve_calcIntegral(self, *args)

    def getCurveDomain(self):
        """
        getCurveDomain(FiberCompressiveForceLengthCurve self) -> Vec2

        Parameters:
            self: OpenSim::FiberCompressiveForceLengthCurve const *

        """
        return _opensim.FiberCompressiveForceLengthCurve_getCurveDomain(self)

    def printMuscleCurveToCSVFile(self, *args):
        """
        printMuscleCurveToCSVFile(FiberCompressiveForceLengthCurve self, std::string const & path)

        Parameters:
            path: std::string const &

        """
        return _opensim.FiberCompressiveForceLengthCurve_printMuscleCurveToCSVFile(self, *args)

    def ensureCurveUpToDate(self):
        """
        ensureCurveUpToDate(FiberCompressiveForceLengthCurve self)

        Parameters:
            self: OpenSim::FiberCompressiveForceLengthCurve *

        """
        return _opensim.FiberCompressiveForceLengthCurve_ensureCurveUpToDate(self)

    __swig_destroy__ = _opensim.delete_FiberCompressiveForceLengthCurve
    __del__ = lambda self : None;
FiberCompressiveForceLengthCurve_swigregister = _opensim.FiberCompressiveForceLengthCurve_swigregister
FiberCompressiveForceLengthCurve_swigregister(FiberCompressiveForceLengthCurve)

def FiberCompressiveForceLengthCurve_safeDownCast(*args):
  """
    FiberCompressiveForceLengthCurve_safeDownCast(OpenSimObject obj) -> FiberCompressiveForceLengthCurve

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.FiberCompressiveForceLengthCurve_safeDownCast(*args)

def FiberCompressiveForceLengthCurve_getClassName():
  """FiberCompressiveForceLengthCurve_getClassName() -> std::string const &"""
  return _opensim.FiberCompressiveForceLengthCurve_getClassName()

class FiberForceLengthCurve(Function):
    """Proxy of C++ OpenSim::FiberForceLengthCurve class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, FiberForceLengthCurve, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, FiberForceLengthCurve, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> FiberForceLengthCurve

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.FiberForceLengthCurve_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(FiberForceLengthCurve self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.FiberForceLengthCurve_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.FiberForceLengthCurve_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(FiberForceLengthCurve self) -> FiberForceLengthCurve

        Parameters:
            self: OpenSim::FiberForceLengthCurve const *

        """
        return _opensim.FiberForceLengthCurve_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(FiberForceLengthCurve self) -> std::string const &

        Parameters:
            self: OpenSim::FiberForceLengthCurve const *

        """
        return _opensim.FiberForceLengthCurve_getConcreteClassName(self)

    def copyProperty_strain_at_zero_force(self, *args):
        """
        copyProperty_strain_at_zero_force(FiberForceLengthCurve self, FiberForceLengthCurve source)

        Parameters:
            source: OpenSim::FiberForceLengthCurve::Self const &

        """
        return _opensim.FiberForceLengthCurve_copyProperty_strain_at_zero_force(self, *args)

    def append_strain_at_zero_force(self, *args):
        """
        append_strain_at_zero_force(FiberForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.FiberForceLengthCurve_append_strain_at_zero_force(self, *args)

    def constructProperty_strain_at_zero_force(self, *args):
        """
        constructProperty_strain_at_zero_force(FiberForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.FiberForceLengthCurve_constructProperty_strain_at_zero_force(self, *args)

    def get_strain_at_zero_force(self, *args):
        """
        get_strain_at_zero_force(FiberForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_strain_at_zero_force(FiberForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::FiberForceLengthCurve const *

        """
        return _opensim.FiberForceLengthCurve_get_strain_at_zero_force(self, *args)

    def upd_strain_at_zero_force(self, *args):
        """
        upd_strain_at_zero_force(FiberForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_strain_at_zero_force(FiberForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::FiberForceLengthCurve *

        """
        return _opensim.FiberForceLengthCurve_upd_strain_at_zero_force(self, *args)

    def set_strain_at_zero_force(self, *args):
        """
        set_strain_at_zero_force(FiberForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_strain_at_zero_force(FiberForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.FiberForceLengthCurve_set_strain_at_zero_force(self, *args)

    def copyProperty_strain_at_one_norm_force(self, *args):
        """
        copyProperty_strain_at_one_norm_force(FiberForceLengthCurve self, FiberForceLengthCurve source)

        Parameters:
            source: OpenSim::FiberForceLengthCurve::Self const &

        """
        return _opensim.FiberForceLengthCurve_copyProperty_strain_at_one_norm_force(self, *args)

    def append_strain_at_one_norm_force(self, *args):
        """
        append_strain_at_one_norm_force(FiberForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.FiberForceLengthCurve_append_strain_at_one_norm_force(self, *args)

    def constructProperty_strain_at_one_norm_force(self, *args):
        """
        constructProperty_strain_at_one_norm_force(FiberForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.FiberForceLengthCurve_constructProperty_strain_at_one_norm_force(self, *args)

    def get_strain_at_one_norm_force(self, *args):
        """
        get_strain_at_one_norm_force(FiberForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_strain_at_one_norm_force(FiberForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::FiberForceLengthCurve const *

        """
        return _opensim.FiberForceLengthCurve_get_strain_at_one_norm_force(self, *args)

    def upd_strain_at_one_norm_force(self, *args):
        """
        upd_strain_at_one_norm_force(FiberForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_strain_at_one_norm_force(FiberForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::FiberForceLengthCurve *

        """
        return _opensim.FiberForceLengthCurve_upd_strain_at_one_norm_force(self, *args)

    def set_strain_at_one_norm_force(self, *args):
        """
        set_strain_at_one_norm_force(FiberForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_strain_at_one_norm_force(FiberForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.FiberForceLengthCurve_set_strain_at_one_norm_force(self, *args)

    def copyProperty_stiffness_at_low_force(self, *args):
        """
        copyProperty_stiffness_at_low_force(FiberForceLengthCurve self, FiberForceLengthCurve source)

        Parameters:
            source: OpenSim::FiberForceLengthCurve::Self const &

        """
        return _opensim.FiberForceLengthCurve_copyProperty_stiffness_at_low_force(self, *args)

    def append_stiffness_at_low_force(self, *args):
        """
        append_stiffness_at_low_force(FiberForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.FiberForceLengthCurve_append_stiffness_at_low_force(self, *args)

    def constructProperty_stiffness_at_low_force(self, *args):
        """
        constructProperty_stiffness_at_low_force(FiberForceLengthCurve self)
        constructProperty_stiffness_at_low_force(FiberForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.FiberForceLengthCurve_constructProperty_stiffness_at_low_force(self, *args)

    def get_stiffness_at_low_force(self, *args):
        """
        get_stiffness_at_low_force(FiberForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_stiffness_at_low_force(FiberForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::FiberForceLengthCurve const *

        """
        return _opensim.FiberForceLengthCurve_get_stiffness_at_low_force(self, *args)

    def upd_stiffness_at_low_force(self, *args):
        """
        upd_stiffness_at_low_force(FiberForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_stiffness_at_low_force(FiberForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::FiberForceLengthCurve *

        """
        return _opensim.FiberForceLengthCurve_upd_stiffness_at_low_force(self, *args)

    def set_stiffness_at_low_force(self, *args):
        """
        set_stiffness_at_low_force(FiberForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_stiffness_at_low_force(FiberForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.FiberForceLengthCurve_set_stiffness_at_low_force(self, *args)

    def copyProperty_stiffness_at_one_norm_force(self, *args):
        """
        copyProperty_stiffness_at_one_norm_force(FiberForceLengthCurve self, FiberForceLengthCurve source)

        Parameters:
            source: OpenSim::FiberForceLengthCurve::Self const &

        """
        return _opensim.FiberForceLengthCurve_copyProperty_stiffness_at_one_norm_force(self, *args)

    def append_stiffness_at_one_norm_force(self, *args):
        """
        append_stiffness_at_one_norm_force(FiberForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.FiberForceLengthCurve_append_stiffness_at_one_norm_force(self, *args)

    def constructProperty_stiffness_at_one_norm_force(self, *args):
        """
        constructProperty_stiffness_at_one_norm_force(FiberForceLengthCurve self)
        constructProperty_stiffness_at_one_norm_force(FiberForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.FiberForceLengthCurve_constructProperty_stiffness_at_one_norm_force(self, *args)

    def get_stiffness_at_one_norm_force(self, *args):
        """
        get_stiffness_at_one_norm_force(FiberForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_stiffness_at_one_norm_force(FiberForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::FiberForceLengthCurve const *

        """
        return _opensim.FiberForceLengthCurve_get_stiffness_at_one_norm_force(self, *args)

    def upd_stiffness_at_one_norm_force(self, *args):
        """
        upd_stiffness_at_one_norm_force(FiberForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_stiffness_at_one_norm_force(FiberForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::FiberForceLengthCurve *

        """
        return _opensim.FiberForceLengthCurve_upd_stiffness_at_one_norm_force(self, *args)

    def set_stiffness_at_one_norm_force(self, *args):
        """
        set_stiffness_at_one_norm_force(FiberForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_stiffness_at_one_norm_force(FiberForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.FiberForceLengthCurve_set_stiffness_at_one_norm_force(self, *args)

    def copyProperty_curviness(self, *args):
        """
        copyProperty_curviness(FiberForceLengthCurve self, FiberForceLengthCurve source)

        Parameters:
            source: OpenSim::FiberForceLengthCurve::Self const &

        """
        return _opensim.FiberForceLengthCurve_copyProperty_curviness(self, *args)

    def append_curviness(self, *args):
        """
        append_curviness(FiberForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.FiberForceLengthCurve_append_curviness(self, *args)

    def constructProperty_curviness(self, *args):
        """
        constructProperty_curviness(FiberForceLengthCurve self)
        constructProperty_curviness(FiberForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.FiberForceLengthCurve_constructProperty_curviness(self, *args)

    def get_curviness(self, *args):
        """
        get_curviness(FiberForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_curviness(FiberForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::FiberForceLengthCurve const *

        """
        return _opensim.FiberForceLengthCurve_get_curviness(self, *args)

    def upd_curviness(self, *args):
        """
        upd_curviness(FiberForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_curviness(FiberForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::FiberForceLengthCurve *

        """
        return _opensim.FiberForceLengthCurve_upd_curviness(self, *args)

    def set_curviness(self, *args):
        """
        set_curviness(FiberForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_curviness(FiberForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.FiberForceLengthCurve_set_curviness(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::FiberForceLengthCurve self) -> FiberForceLengthCurve
        __init__(OpenSim::FiberForceLengthCurve self, double strainAtZeroForce, double strainAtOneNormForce, double stiffnessAtLowForce, 
            double stiffnessAtOneNormForce, double curviness) -> FiberForceLengthCurve

        Parameters:
            strainAtZeroForce: double
            strainAtOneNormForce: double
            stiffnessAtLowForce: double
            stiffnessAtOneNormForce: double
            curviness: double

        """
        this = _opensim.new_FiberForceLengthCurve(*args)
        try: self.this.append(this)
        except: self.this = this
    def getStrainAtZeroForce(self):
        """
        getStrainAtZeroForce(FiberForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::FiberForceLengthCurve const *

        """
        return _opensim.FiberForceLengthCurve_getStrainAtZeroForce(self)

    def getStrainAtOneNormForce(self):
        """
        getStrainAtOneNormForce(FiberForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::FiberForceLengthCurve const *

        """
        return _opensim.FiberForceLengthCurve_getStrainAtOneNormForce(self)

    def getStiffnessAtLowForceInUse(self):
        """
        getStiffnessAtLowForceInUse(FiberForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::FiberForceLengthCurve const *

        """
        return _opensim.FiberForceLengthCurve_getStiffnessAtLowForceInUse(self)

    def getStiffnessAtOneNormForceInUse(self):
        """
        getStiffnessAtOneNormForceInUse(FiberForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::FiberForceLengthCurve const *

        """
        return _opensim.FiberForceLengthCurve_getStiffnessAtOneNormForceInUse(self)

    def getCurvinessInUse(self):
        """
        getCurvinessInUse(FiberForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::FiberForceLengthCurve const *

        """
        return _opensim.FiberForceLengthCurve_getCurvinessInUse(self)

    def isFittedCurveBeingUsed(self):
        """
        isFittedCurveBeingUsed(FiberForceLengthCurve self) -> bool

        Parameters:
            self: OpenSim::FiberForceLengthCurve const *

        """
        return _opensim.FiberForceLengthCurve_isFittedCurveBeingUsed(self)

    def setCurveStrains(self, *args):
        """
        setCurveStrains(FiberForceLengthCurve self, double aStrainAtZeroForce, double aStrainAtOneNormForce)

        Parameters:
            aStrainAtZeroForce: double
            aStrainAtOneNormForce: double

        """
        return _opensim.FiberForceLengthCurve_setCurveStrains(self, *args)

    def setOptionalProperties(self, *args):
        """
        setOptionalProperties(FiberForceLengthCurve self, double stiffnessAtLowForce, double stiffnessAtOneNormForce, double curviness)

        Parameters:
            stiffnessAtLowForce: double
            stiffnessAtOneNormForce: double
            curviness: double

        """
        return _opensim.FiberForceLengthCurve_setOptionalProperties(self, *args)

    def calcValue(self, *args):
        """
        calcValue(FiberForceLengthCurve self, Vector x) -> double

        Parameters:
            x: SimTK::Vector const &

        calcValue(FiberForceLengthCurve self, double normFiberLength) -> double

        Parameters:
            normFiberLength: double

        """
        return _opensim.FiberForceLengthCurve_calcValue(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(FiberForceLengthCurve self, double normFiberLength, int order) -> double

        Parameters:
            normFiberLength: double
            order: int

        """
        return _opensim.FiberForceLengthCurve_calcDerivative(self, *args)

    def calcIntegral(self, *args):
        """
        calcIntegral(FiberForceLengthCurve self, double normFiberLength) -> double

        Parameters:
            normFiberLength: double

        """
        return _opensim.FiberForceLengthCurve_calcIntegral(self, *args)

    def getCurveDomain(self):
        """
        getCurveDomain(FiberForceLengthCurve self) -> Vec2

        Parameters:
            self: OpenSim::FiberForceLengthCurve const *

        """
        return _opensim.FiberForceLengthCurve_getCurveDomain(self)

    def printMuscleCurveToCSVFile(self, *args):
        """
        printMuscleCurveToCSVFile(FiberForceLengthCurve self, std::string const & path)

        Parameters:
            path: std::string const &

        """
        return _opensim.FiberForceLengthCurve_printMuscleCurveToCSVFile(self, *args)

    def ensureCurveUpToDate(self):
        """
        ensureCurveUpToDate(FiberForceLengthCurve self)

        Parameters:
            self: OpenSim::FiberForceLengthCurve *

        """
        return _opensim.FiberForceLengthCurve_ensureCurveUpToDate(self)

    __swig_destroy__ = _opensim.delete_FiberForceLengthCurve
    __del__ = lambda self : None;
FiberForceLengthCurve_swigregister = _opensim.FiberForceLengthCurve_swigregister
FiberForceLengthCurve_swigregister(FiberForceLengthCurve)

def FiberForceLengthCurve_safeDownCast(*args):
  """
    FiberForceLengthCurve_safeDownCast(OpenSimObject obj) -> FiberForceLengthCurve

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.FiberForceLengthCurve_safeDownCast(*args)

def FiberForceLengthCurve_getClassName():
  """FiberForceLengthCurve_getClassName() -> std::string const &"""
  return _opensim.FiberForceLengthCurve_getClassName()

class ForceVelocityCurve(Function):
    """Proxy of C++ OpenSim::ForceVelocityCurve class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ForceVelocityCurve, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ForceVelocityCurve, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ForceVelocityCurve

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ForceVelocityCurve_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ForceVelocityCurve self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ForceVelocityCurve_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ForceVelocityCurve_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ForceVelocityCurve self) -> ForceVelocityCurve

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ForceVelocityCurve self) -> std::string const &

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_getConcreteClassName(self)

    def copyProperty_concentric_slope_at_vmax(self, *args):
        """
        copyProperty_concentric_slope_at_vmax(ForceVelocityCurve self, ForceVelocityCurve source)

        Parameters:
            source: OpenSim::ForceVelocityCurve::Self const &

        """
        return _opensim.ForceVelocityCurve_copyProperty_concentric_slope_at_vmax(self, *args)

    def append_concentric_slope_at_vmax(self, *args):
        """
        append_concentric_slope_at_vmax(ForceVelocityCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_append_concentric_slope_at_vmax(self, *args)

    def constructProperty_concentric_slope_at_vmax(self, *args):
        """
        constructProperty_concentric_slope_at_vmax(ForceVelocityCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityCurve_constructProperty_concentric_slope_at_vmax(self, *args)

    def get_concentric_slope_at_vmax(self, *args):
        """
        get_concentric_slope_at_vmax(ForceVelocityCurve self, int i) -> double const

        Parameters:
            i: int

        get_concentric_slope_at_vmax(ForceVelocityCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_get_concentric_slope_at_vmax(self, *args)

    def upd_concentric_slope_at_vmax(self, *args):
        """
        upd_concentric_slope_at_vmax(ForceVelocityCurve self, int i) -> double

        Parameters:
            i: int

        upd_concentric_slope_at_vmax(ForceVelocityCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityCurve *

        """
        return _opensim.ForceVelocityCurve_upd_concentric_slope_at_vmax(self, *args)

    def set_concentric_slope_at_vmax(self, *args):
        """
        set_concentric_slope_at_vmax(ForceVelocityCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_concentric_slope_at_vmax(ForceVelocityCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_set_concentric_slope_at_vmax(self, *args)

    def copyProperty_concentric_slope_near_vmax(self, *args):
        """
        copyProperty_concentric_slope_near_vmax(ForceVelocityCurve self, ForceVelocityCurve source)

        Parameters:
            source: OpenSim::ForceVelocityCurve::Self const &

        """
        return _opensim.ForceVelocityCurve_copyProperty_concentric_slope_near_vmax(self, *args)

    def append_concentric_slope_near_vmax(self, *args):
        """
        append_concentric_slope_near_vmax(ForceVelocityCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_append_concentric_slope_near_vmax(self, *args)

    def constructProperty_concentric_slope_near_vmax(self, *args):
        """
        constructProperty_concentric_slope_near_vmax(ForceVelocityCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityCurve_constructProperty_concentric_slope_near_vmax(self, *args)

    def get_concentric_slope_near_vmax(self, *args):
        """
        get_concentric_slope_near_vmax(ForceVelocityCurve self, int i) -> double const

        Parameters:
            i: int

        get_concentric_slope_near_vmax(ForceVelocityCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_get_concentric_slope_near_vmax(self, *args)

    def upd_concentric_slope_near_vmax(self, *args):
        """
        upd_concentric_slope_near_vmax(ForceVelocityCurve self, int i) -> double

        Parameters:
            i: int

        upd_concentric_slope_near_vmax(ForceVelocityCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityCurve *

        """
        return _opensim.ForceVelocityCurve_upd_concentric_slope_near_vmax(self, *args)

    def set_concentric_slope_near_vmax(self, *args):
        """
        set_concentric_slope_near_vmax(ForceVelocityCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_concentric_slope_near_vmax(ForceVelocityCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_set_concentric_slope_near_vmax(self, *args)

    def copyProperty_isometric_slope(self, *args):
        """
        copyProperty_isometric_slope(ForceVelocityCurve self, ForceVelocityCurve source)

        Parameters:
            source: OpenSim::ForceVelocityCurve::Self const &

        """
        return _opensim.ForceVelocityCurve_copyProperty_isometric_slope(self, *args)

    def append_isometric_slope(self, *args):
        """
        append_isometric_slope(ForceVelocityCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_append_isometric_slope(self, *args)

    def constructProperty_isometric_slope(self, *args):
        """
        constructProperty_isometric_slope(ForceVelocityCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityCurve_constructProperty_isometric_slope(self, *args)

    def get_isometric_slope(self, *args):
        """
        get_isometric_slope(ForceVelocityCurve self, int i) -> double const

        Parameters:
            i: int

        get_isometric_slope(ForceVelocityCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_get_isometric_slope(self, *args)

    def upd_isometric_slope(self, *args):
        """
        upd_isometric_slope(ForceVelocityCurve self, int i) -> double

        Parameters:
            i: int

        upd_isometric_slope(ForceVelocityCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityCurve *

        """
        return _opensim.ForceVelocityCurve_upd_isometric_slope(self, *args)

    def set_isometric_slope(self, *args):
        """
        set_isometric_slope(ForceVelocityCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_isometric_slope(ForceVelocityCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_set_isometric_slope(self, *args)

    def copyProperty_eccentric_slope_at_vmax(self, *args):
        """
        copyProperty_eccentric_slope_at_vmax(ForceVelocityCurve self, ForceVelocityCurve source)

        Parameters:
            source: OpenSim::ForceVelocityCurve::Self const &

        """
        return _opensim.ForceVelocityCurve_copyProperty_eccentric_slope_at_vmax(self, *args)

    def append_eccentric_slope_at_vmax(self, *args):
        """
        append_eccentric_slope_at_vmax(ForceVelocityCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_append_eccentric_slope_at_vmax(self, *args)

    def constructProperty_eccentric_slope_at_vmax(self, *args):
        """
        constructProperty_eccentric_slope_at_vmax(ForceVelocityCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityCurve_constructProperty_eccentric_slope_at_vmax(self, *args)

    def get_eccentric_slope_at_vmax(self, *args):
        """
        get_eccentric_slope_at_vmax(ForceVelocityCurve self, int i) -> double const

        Parameters:
            i: int

        get_eccentric_slope_at_vmax(ForceVelocityCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_get_eccentric_slope_at_vmax(self, *args)

    def upd_eccentric_slope_at_vmax(self, *args):
        """
        upd_eccentric_slope_at_vmax(ForceVelocityCurve self, int i) -> double

        Parameters:
            i: int

        upd_eccentric_slope_at_vmax(ForceVelocityCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityCurve *

        """
        return _opensim.ForceVelocityCurve_upd_eccentric_slope_at_vmax(self, *args)

    def set_eccentric_slope_at_vmax(self, *args):
        """
        set_eccentric_slope_at_vmax(ForceVelocityCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_eccentric_slope_at_vmax(ForceVelocityCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_set_eccentric_slope_at_vmax(self, *args)

    def copyProperty_eccentric_slope_near_vmax(self, *args):
        """
        copyProperty_eccentric_slope_near_vmax(ForceVelocityCurve self, ForceVelocityCurve source)

        Parameters:
            source: OpenSim::ForceVelocityCurve::Self const &

        """
        return _opensim.ForceVelocityCurve_copyProperty_eccentric_slope_near_vmax(self, *args)

    def append_eccentric_slope_near_vmax(self, *args):
        """
        append_eccentric_slope_near_vmax(ForceVelocityCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_append_eccentric_slope_near_vmax(self, *args)

    def constructProperty_eccentric_slope_near_vmax(self, *args):
        """
        constructProperty_eccentric_slope_near_vmax(ForceVelocityCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityCurve_constructProperty_eccentric_slope_near_vmax(self, *args)

    def get_eccentric_slope_near_vmax(self, *args):
        """
        get_eccentric_slope_near_vmax(ForceVelocityCurve self, int i) -> double const

        Parameters:
            i: int

        get_eccentric_slope_near_vmax(ForceVelocityCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_get_eccentric_slope_near_vmax(self, *args)

    def upd_eccentric_slope_near_vmax(self, *args):
        """
        upd_eccentric_slope_near_vmax(ForceVelocityCurve self, int i) -> double

        Parameters:
            i: int

        upd_eccentric_slope_near_vmax(ForceVelocityCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityCurve *

        """
        return _opensim.ForceVelocityCurve_upd_eccentric_slope_near_vmax(self, *args)

    def set_eccentric_slope_near_vmax(self, *args):
        """
        set_eccentric_slope_near_vmax(ForceVelocityCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_eccentric_slope_near_vmax(ForceVelocityCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_set_eccentric_slope_near_vmax(self, *args)

    def copyProperty_max_eccentric_velocity_force_multiplier(self, *args):
        """
        copyProperty_max_eccentric_velocity_force_multiplier(ForceVelocityCurve self, ForceVelocityCurve source)

        Parameters:
            source: OpenSim::ForceVelocityCurve::Self const &

        """
        return _opensim.ForceVelocityCurve_copyProperty_max_eccentric_velocity_force_multiplier(self, *args)

    def append_max_eccentric_velocity_force_multiplier(self, *args):
        """
        append_max_eccentric_velocity_force_multiplier(ForceVelocityCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_append_max_eccentric_velocity_force_multiplier(self, *args)

    def constructProperty_max_eccentric_velocity_force_multiplier(self, *args):
        """
        constructProperty_max_eccentric_velocity_force_multiplier(ForceVelocityCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityCurve_constructProperty_max_eccentric_velocity_force_multiplier(self, *args)

    def get_max_eccentric_velocity_force_multiplier(self, *args):
        """
        get_max_eccentric_velocity_force_multiplier(ForceVelocityCurve self, int i) -> double const

        Parameters:
            i: int

        get_max_eccentric_velocity_force_multiplier(ForceVelocityCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_get_max_eccentric_velocity_force_multiplier(self, *args)

    def upd_max_eccentric_velocity_force_multiplier(self, *args):
        """
        upd_max_eccentric_velocity_force_multiplier(ForceVelocityCurve self, int i) -> double

        Parameters:
            i: int

        upd_max_eccentric_velocity_force_multiplier(ForceVelocityCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityCurve *

        """
        return _opensim.ForceVelocityCurve_upd_max_eccentric_velocity_force_multiplier(self, *args)

    def set_max_eccentric_velocity_force_multiplier(self, *args):
        """
        set_max_eccentric_velocity_force_multiplier(ForceVelocityCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_max_eccentric_velocity_force_multiplier(ForceVelocityCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_set_max_eccentric_velocity_force_multiplier(self, *args)

    def copyProperty_concentric_curviness(self, *args):
        """
        copyProperty_concentric_curviness(ForceVelocityCurve self, ForceVelocityCurve source)

        Parameters:
            source: OpenSim::ForceVelocityCurve::Self const &

        """
        return _opensim.ForceVelocityCurve_copyProperty_concentric_curviness(self, *args)

    def append_concentric_curviness(self, *args):
        """
        append_concentric_curviness(ForceVelocityCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_append_concentric_curviness(self, *args)

    def constructProperty_concentric_curviness(self, *args):
        """
        constructProperty_concentric_curviness(ForceVelocityCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityCurve_constructProperty_concentric_curviness(self, *args)

    def get_concentric_curviness(self, *args):
        """
        get_concentric_curviness(ForceVelocityCurve self, int i) -> double const

        Parameters:
            i: int

        get_concentric_curviness(ForceVelocityCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_get_concentric_curviness(self, *args)

    def upd_concentric_curviness(self, *args):
        """
        upd_concentric_curviness(ForceVelocityCurve self, int i) -> double

        Parameters:
            i: int

        upd_concentric_curviness(ForceVelocityCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityCurve *

        """
        return _opensim.ForceVelocityCurve_upd_concentric_curviness(self, *args)

    def set_concentric_curviness(self, *args):
        """
        set_concentric_curviness(ForceVelocityCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_concentric_curviness(ForceVelocityCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_set_concentric_curviness(self, *args)

    def copyProperty_eccentric_curviness(self, *args):
        """
        copyProperty_eccentric_curviness(ForceVelocityCurve self, ForceVelocityCurve source)

        Parameters:
            source: OpenSim::ForceVelocityCurve::Self const &

        """
        return _opensim.ForceVelocityCurve_copyProperty_eccentric_curviness(self, *args)

    def append_eccentric_curviness(self, *args):
        """
        append_eccentric_curviness(ForceVelocityCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_append_eccentric_curviness(self, *args)

    def constructProperty_eccentric_curviness(self, *args):
        """
        constructProperty_eccentric_curviness(ForceVelocityCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityCurve_constructProperty_eccentric_curviness(self, *args)

    def get_eccentric_curviness(self, *args):
        """
        get_eccentric_curviness(ForceVelocityCurve self, int i) -> double const

        Parameters:
            i: int

        get_eccentric_curviness(ForceVelocityCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_get_eccentric_curviness(self, *args)

    def upd_eccentric_curviness(self, *args):
        """
        upd_eccentric_curviness(ForceVelocityCurve self, int i) -> double

        Parameters:
            i: int

        upd_eccentric_curviness(ForceVelocityCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityCurve *

        """
        return _opensim.ForceVelocityCurve_upd_eccentric_curviness(self, *args)

    def set_eccentric_curviness(self, *args):
        """
        set_eccentric_curviness(ForceVelocityCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_eccentric_curviness(ForceVelocityCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityCurve_set_eccentric_curviness(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ForceVelocityCurve self) -> ForceVelocityCurve
        __init__(OpenSim::ForceVelocityCurve self, double concentricSlopeAtVmax, double concentricSlopeNearVmax, double isometricSlope, 
            double eccentricSlopeAtVmax, double eccentricSlopeNearVmax, double maxEccentricVelocityForceMultiplier, 
            double concentricCurviness, double eccentricCurviness) -> ForceVelocityCurve

        Parameters:
            concentricSlopeAtVmax: double
            concentricSlopeNearVmax: double
            isometricSlope: double
            eccentricSlopeAtVmax: double
            eccentricSlopeNearVmax: double
            maxEccentricVelocityForceMultiplier: double
            concentricCurviness: double
            eccentricCurviness: double

        """
        this = _opensim.new_ForceVelocityCurve(*args)
        try: self.this.append(this)
        except: self.this = this
    def getConcentricSlopeAtVmax(self):
        """
        getConcentricSlopeAtVmax(ForceVelocityCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_getConcentricSlopeAtVmax(self)

    def getConcentricSlopeNearVmax(self):
        """
        getConcentricSlopeNearVmax(ForceVelocityCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_getConcentricSlopeNearVmax(self)

    def getIsometricSlope(self):
        """
        getIsometricSlope(ForceVelocityCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_getIsometricSlope(self)

    def getEccentricSlopeAtVmax(self):
        """
        getEccentricSlopeAtVmax(ForceVelocityCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_getEccentricSlopeAtVmax(self)

    def getEccentricSlopeNearVmax(self):
        """
        getEccentricSlopeNearVmax(ForceVelocityCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_getEccentricSlopeNearVmax(self)

    def getMaxEccentricVelocityForceMultiplier(self):
        """
        getMaxEccentricVelocityForceMultiplier(ForceVelocityCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_getMaxEccentricVelocityForceMultiplier(self)

    def getConcentricCurviness(self):
        """
        getConcentricCurviness(ForceVelocityCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_getConcentricCurviness(self)

    def getEccentricCurviness(self):
        """
        getEccentricCurviness(ForceVelocityCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_getEccentricCurviness(self)

    def setCurveShape(self, *args):
        """
        setCurveShape(ForceVelocityCurve self, double aConcentricSlopeAtVmax, double aConcentricSlopeNearVmax, double aIsometricSlope, 
            double aEccentricSlopeAtVmax, double aEccentricSlopeNearVmax, double aMaxForceMultiplier)

        Parameters:
            aConcentricSlopeAtVmax: double
            aConcentricSlopeNearVmax: double
            aIsometricSlope: double
            aEccentricSlopeAtVmax: double
            aEccentricSlopeNearVmax: double
            aMaxForceMultiplier: double

        """
        return _opensim.ForceVelocityCurve_setCurveShape(self, *args)

    def setConcentricCurviness(self, *args):
        """
        setConcentricCurviness(ForceVelocityCurve self, double aConcentricCurviness)

        Parameters:
            aConcentricCurviness: double

        """
        return _opensim.ForceVelocityCurve_setConcentricCurviness(self, *args)

    def setEccentricCurviness(self, *args):
        """
        setEccentricCurviness(ForceVelocityCurve self, double aEccentricCurviness)

        Parameters:
            aEccentricCurviness: double

        """
        return _opensim.ForceVelocityCurve_setEccentricCurviness(self, *args)

    def calcValue(self, *args):
        """
        calcValue(ForceVelocityCurve self, Vector x) -> double

        Parameters:
            x: SimTK::Vector const &

        calcValue(ForceVelocityCurve self, double normFiberVelocity) -> double

        Parameters:
            normFiberVelocity: double

        """
        return _opensim.ForceVelocityCurve_calcValue(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(ForceVelocityCurve self, double normFiberVelocity, int order) -> double

        Parameters:
            normFiberVelocity: double
            order: int

        """
        return _opensim.ForceVelocityCurve_calcDerivative(self, *args)

    def getCurveDomain(self):
        """
        getCurveDomain(ForceVelocityCurve self) -> Vec2

        Parameters:
            self: OpenSim::ForceVelocityCurve const *

        """
        return _opensim.ForceVelocityCurve_getCurveDomain(self)

    def printMuscleCurveToCSVFile(self, *args):
        """
        printMuscleCurveToCSVFile(ForceVelocityCurve self, std::string const & path)

        Parameters:
            path: std::string const &

        """
        return _opensim.ForceVelocityCurve_printMuscleCurveToCSVFile(self, *args)

    def ensureCurveUpToDate(self):
        """
        ensureCurveUpToDate(ForceVelocityCurve self)

        Parameters:
            self: OpenSim::ForceVelocityCurve *

        """
        return _opensim.ForceVelocityCurve_ensureCurveUpToDate(self)

    __swig_destroy__ = _opensim.delete_ForceVelocityCurve
    __del__ = lambda self : None;
ForceVelocityCurve_swigregister = _opensim.ForceVelocityCurve_swigregister
ForceVelocityCurve_swigregister(ForceVelocityCurve)

def ForceVelocityCurve_safeDownCast(*args):
  """
    ForceVelocityCurve_safeDownCast(OpenSimObject obj) -> ForceVelocityCurve

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ForceVelocityCurve_safeDownCast(*args)

def ForceVelocityCurve_getClassName():
  """ForceVelocityCurve_getClassName() -> std::string const &"""
  return _opensim.ForceVelocityCurve_getClassName()

class ForceVelocityInverseCurve(Function):
    """Proxy of C++ OpenSim::ForceVelocityInverseCurve class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ForceVelocityInverseCurve, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ForceVelocityInverseCurve, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ForceVelocityInverseCurve

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ForceVelocityInverseCurve_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ForceVelocityInverseCurve self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ForceVelocityInverseCurve_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ForceVelocityInverseCurve_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ForceVelocityInverseCurve self) -> ForceVelocityInverseCurve

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ForceVelocityInverseCurve self) -> std::string const &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_getConcreteClassName(self)

    def copyProperty_concentric_slope_at_vmax(self, *args):
        """
        copyProperty_concentric_slope_at_vmax(ForceVelocityInverseCurve self, ForceVelocityInverseCurve source)

        Parameters:
            source: OpenSim::ForceVelocityInverseCurve::Self const &

        """
        return _opensim.ForceVelocityInverseCurve_copyProperty_concentric_slope_at_vmax(self, *args)

    def append_concentric_slope_at_vmax(self, *args):
        """
        append_concentric_slope_at_vmax(ForceVelocityInverseCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_append_concentric_slope_at_vmax(self, *args)

    def constructProperty_concentric_slope_at_vmax(self, *args):
        """
        constructProperty_concentric_slope_at_vmax(ForceVelocityInverseCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityInverseCurve_constructProperty_concentric_slope_at_vmax(self, *args)

    def get_concentric_slope_at_vmax(self, *args):
        """
        get_concentric_slope_at_vmax(ForceVelocityInverseCurve self, int i) -> double const

        Parameters:
            i: int

        get_concentric_slope_at_vmax(ForceVelocityInverseCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_get_concentric_slope_at_vmax(self, *args)

    def upd_concentric_slope_at_vmax(self, *args):
        """
        upd_concentric_slope_at_vmax(ForceVelocityInverseCurve self, int i) -> double

        Parameters:
            i: int

        upd_concentric_slope_at_vmax(ForceVelocityInverseCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve *

        """
        return _opensim.ForceVelocityInverseCurve_upd_concentric_slope_at_vmax(self, *args)

    def set_concentric_slope_at_vmax(self, *args):
        """
        set_concentric_slope_at_vmax(ForceVelocityInverseCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_concentric_slope_at_vmax(ForceVelocityInverseCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_set_concentric_slope_at_vmax(self, *args)

    def copyProperty_concentric_slope_near_vmax(self, *args):
        """
        copyProperty_concentric_slope_near_vmax(ForceVelocityInverseCurve self, ForceVelocityInverseCurve source)

        Parameters:
            source: OpenSim::ForceVelocityInverseCurve::Self const &

        """
        return _opensim.ForceVelocityInverseCurve_copyProperty_concentric_slope_near_vmax(self, *args)

    def append_concentric_slope_near_vmax(self, *args):
        """
        append_concentric_slope_near_vmax(ForceVelocityInverseCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_append_concentric_slope_near_vmax(self, *args)

    def constructProperty_concentric_slope_near_vmax(self, *args):
        """
        constructProperty_concentric_slope_near_vmax(ForceVelocityInverseCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityInverseCurve_constructProperty_concentric_slope_near_vmax(self, *args)

    def get_concentric_slope_near_vmax(self, *args):
        """
        get_concentric_slope_near_vmax(ForceVelocityInverseCurve self, int i) -> double const

        Parameters:
            i: int

        get_concentric_slope_near_vmax(ForceVelocityInverseCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_get_concentric_slope_near_vmax(self, *args)

    def upd_concentric_slope_near_vmax(self, *args):
        """
        upd_concentric_slope_near_vmax(ForceVelocityInverseCurve self, int i) -> double

        Parameters:
            i: int

        upd_concentric_slope_near_vmax(ForceVelocityInverseCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve *

        """
        return _opensim.ForceVelocityInverseCurve_upd_concentric_slope_near_vmax(self, *args)

    def set_concentric_slope_near_vmax(self, *args):
        """
        set_concentric_slope_near_vmax(ForceVelocityInverseCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_concentric_slope_near_vmax(ForceVelocityInverseCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_set_concentric_slope_near_vmax(self, *args)

    def copyProperty_isometric_slope(self, *args):
        """
        copyProperty_isometric_slope(ForceVelocityInverseCurve self, ForceVelocityInverseCurve source)

        Parameters:
            source: OpenSim::ForceVelocityInverseCurve::Self const &

        """
        return _opensim.ForceVelocityInverseCurve_copyProperty_isometric_slope(self, *args)

    def append_isometric_slope(self, *args):
        """
        append_isometric_slope(ForceVelocityInverseCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_append_isometric_slope(self, *args)

    def constructProperty_isometric_slope(self, *args):
        """
        constructProperty_isometric_slope(ForceVelocityInverseCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityInverseCurve_constructProperty_isometric_slope(self, *args)

    def get_isometric_slope(self, *args):
        """
        get_isometric_slope(ForceVelocityInverseCurve self, int i) -> double const

        Parameters:
            i: int

        get_isometric_slope(ForceVelocityInverseCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_get_isometric_slope(self, *args)

    def upd_isometric_slope(self, *args):
        """
        upd_isometric_slope(ForceVelocityInverseCurve self, int i) -> double

        Parameters:
            i: int

        upd_isometric_slope(ForceVelocityInverseCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve *

        """
        return _opensim.ForceVelocityInverseCurve_upd_isometric_slope(self, *args)

    def set_isometric_slope(self, *args):
        """
        set_isometric_slope(ForceVelocityInverseCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_isometric_slope(ForceVelocityInverseCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_set_isometric_slope(self, *args)

    def copyProperty_eccentric_slope_at_vmax(self, *args):
        """
        copyProperty_eccentric_slope_at_vmax(ForceVelocityInverseCurve self, ForceVelocityInverseCurve source)

        Parameters:
            source: OpenSim::ForceVelocityInverseCurve::Self const &

        """
        return _opensim.ForceVelocityInverseCurve_copyProperty_eccentric_slope_at_vmax(self, *args)

    def append_eccentric_slope_at_vmax(self, *args):
        """
        append_eccentric_slope_at_vmax(ForceVelocityInverseCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_append_eccentric_slope_at_vmax(self, *args)

    def constructProperty_eccentric_slope_at_vmax(self, *args):
        """
        constructProperty_eccentric_slope_at_vmax(ForceVelocityInverseCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityInverseCurve_constructProperty_eccentric_slope_at_vmax(self, *args)

    def get_eccentric_slope_at_vmax(self, *args):
        """
        get_eccentric_slope_at_vmax(ForceVelocityInverseCurve self, int i) -> double const

        Parameters:
            i: int

        get_eccentric_slope_at_vmax(ForceVelocityInverseCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_get_eccentric_slope_at_vmax(self, *args)

    def upd_eccentric_slope_at_vmax(self, *args):
        """
        upd_eccentric_slope_at_vmax(ForceVelocityInverseCurve self, int i) -> double

        Parameters:
            i: int

        upd_eccentric_slope_at_vmax(ForceVelocityInverseCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve *

        """
        return _opensim.ForceVelocityInverseCurve_upd_eccentric_slope_at_vmax(self, *args)

    def set_eccentric_slope_at_vmax(self, *args):
        """
        set_eccentric_slope_at_vmax(ForceVelocityInverseCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_eccentric_slope_at_vmax(ForceVelocityInverseCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_set_eccentric_slope_at_vmax(self, *args)

    def copyProperty_eccentric_slope_near_vmax(self, *args):
        """
        copyProperty_eccentric_slope_near_vmax(ForceVelocityInverseCurve self, ForceVelocityInverseCurve source)

        Parameters:
            source: OpenSim::ForceVelocityInverseCurve::Self const &

        """
        return _opensim.ForceVelocityInverseCurve_copyProperty_eccentric_slope_near_vmax(self, *args)

    def append_eccentric_slope_near_vmax(self, *args):
        """
        append_eccentric_slope_near_vmax(ForceVelocityInverseCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_append_eccentric_slope_near_vmax(self, *args)

    def constructProperty_eccentric_slope_near_vmax(self, *args):
        """
        constructProperty_eccentric_slope_near_vmax(ForceVelocityInverseCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityInverseCurve_constructProperty_eccentric_slope_near_vmax(self, *args)

    def get_eccentric_slope_near_vmax(self, *args):
        """
        get_eccentric_slope_near_vmax(ForceVelocityInverseCurve self, int i) -> double const

        Parameters:
            i: int

        get_eccentric_slope_near_vmax(ForceVelocityInverseCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_get_eccentric_slope_near_vmax(self, *args)

    def upd_eccentric_slope_near_vmax(self, *args):
        """
        upd_eccentric_slope_near_vmax(ForceVelocityInverseCurve self, int i) -> double

        Parameters:
            i: int

        upd_eccentric_slope_near_vmax(ForceVelocityInverseCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve *

        """
        return _opensim.ForceVelocityInverseCurve_upd_eccentric_slope_near_vmax(self, *args)

    def set_eccentric_slope_near_vmax(self, *args):
        """
        set_eccentric_slope_near_vmax(ForceVelocityInverseCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_eccentric_slope_near_vmax(ForceVelocityInverseCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_set_eccentric_slope_near_vmax(self, *args)

    def copyProperty_max_eccentric_velocity_force_multiplier(self, *args):
        """
        copyProperty_max_eccentric_velocity_force_multiplier(ForceVelocityInverseCurve self, ForceVelocityInverseCurve source)

        Parameters:
            source: OpenSim::ForceVelocityInverseCurve::Self const &

        """
        return _opensim.ForceVelocityInverseCurve_copyProperty_max_eccentric_velocity_force_multiplier(self, *args)

    def append_max_eccentric_velocity_force_multiplier(self, *args):
        """
        append_max_eccentric_velocity_force_multiplier(ForceVelocityInverseCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_append_max_eccentric_velocity_force_multiplier(self, *args)

    def constructProperty_max_eccentric_velocity_force_multiplier(self, *args):
        """
        constructProperty_max_eccentric_velocity_force_multiplier(ForceVelocityInverseCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityInverseCurve_constructProperty_max_eccentric_velocity_force_multiplier(self, *args)

    def get_max_eccentric_velocity_force_multiplier(self, *args):
        """
        get_max_eccentric_velocity_force_multiplier(ForceVelocityInverseCurve self, int i) -> double const

        Parameters:
            i: int

        get_max_eccentric_velocity_force_multiplier(ForceVelocityInverseCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_get_max_eccentric_velocity_force_multiplier(self, *args)

    def upd_max_eccentric_velocity_force_multiplier(self, *args):
        """
        upd_max_eccentric_velocity_force_multiplier(ForceVelocityInverseCurve self, int i) -> double

        Parameters:
            i: int

        upd_max_eccentric_velocity_force_multiplier(ForceVelocityInverseCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve *

        """
        return _opensim.ForceVelocityInverseCurve_upd_max_eccentric_velocity_force_multiplier(self, *args)

    def set_max_eccentric_velocity_force_multiplier(self, *args):
        """
        set_max_eccentric_velocity_force_multiplier(ForceVelocityInverseCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_max_eccentric_velocity_force_multiplier(ForceVelocityInverseCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_set_max_eccentric_velocity_force_multiplier(self, *args)

    def copyProperty_concentric_curviness(self, *args):
        """
        copyProperty_concentric_curviness(ForceVelocityInverseCurve self, ForceVelocityInverseCurve source)

        Parameters:
            source: OpenSim::ForceVelocityInverseCurve::Self const &

        """
        return _opensim.ForceVelocityInverseCurve_copyProperty_concentric_curviness(self, *args)

    def append_concentric_curviness(self, *args):
        """
        append_concentric_curviness(ForceVelocityInverseCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_append_concentric_curviness(self, *args)

    def constructProperty_concentric_curviness(self, *args):
        """
        constructProperty_concentric_curviness(ForceVelocityInverseCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityInverseCurve_constructProperty_concentric_curviness(self, *args)

    def get_concentric_curviness(self, *args):
        """
        get_concentric_curviness(ForceVelocityInverseCurve self, int i) -> double const

        Parameters:
            i: int

        get_concentric_curviness(ForceVelocityInverseCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_get_concentric_curviness(self, *args)

    def upd_concentric_curviness(self, *args):
        """
        upd_concentric_curviness(ForceVelocityInverseCurve self, int i) -> double

        Parameters:
            i: int

        upd_concentric_curviness(ForceVelocityInverseCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve *

        """
        return _opensim.ForceVelocityInverseCurve_upd_concentric_curviness(self, *args)

    def set_concentric_curviness(self, *args):
        """
        set_concentric_curviness(ForceVelocityInverseCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_concentric_curviness(ForceVelocityInverseCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_set_concentric_curviness(self, *args)

    def copyProperty_eccentric_curviness(self, *args):
        """
        copyProperty_eccentric_curviness(ForceVelocityInverseCurve self, ForceVelocityInverseCurve source)

        Parameters:
            source: OpenSim::ForceVelocityInverseCurve::Self const &

        """
        return _opensim.ForceVelocityInverseCurve_copyProperty_eccentric_curviness(self, *args)

    def append_eccentric_curviness(self, *args):
        """
        append_eccentric_curviness(ForceVelocityInverseCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_append_eccentric_curviness(self, *args)

    def constructProperty_eccentric_curviness(self, *args):
        """
        constructProperty_eccentric_curviness(ForceVelocityInverseCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.ForceVelocityInverseCurve_constructProperty_eccentric_curviness(self, *args)

    def get_eccentric_curviness(self, *args):
        """
        get_eccentric_curviness(ForceVelocityInverseCurve self, int i) -> double const

        Parameters:
            i: int

        get_eccentric_curviness(ForceVelocityInverseCurve self) -> double const &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_get_eccentric_curviness(self, *args)

    def upd_eccentric_curviness(self, *args):
        """
        upd_eccentric_curviness(ForceVelocityInverseCurve self, int i) -> double

        Parameters:
            i: int

        upd_eccentric_curviness(ForceVelocityInverseCurve self) -> double &

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve *

        """
        return _opensim.ForceVelocityInverseCurve_upd_eccentric_curviness(self, *args)

    def set_eccentric_curviness(self, *args):
        """
        set_eccentric_curviness(ForceVelocityInverseCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_eccentric_curviness(ForceVelocityInverseCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.ForceVelocityInverseCurve_set_eccentric_curviness(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ForceVelocityInverseCurve self) -> ForceVelocityInverseCurve
        __init__(OpenSim::ForceVelocityInverseCurve self, double concentricSlopeAtVmax, double concentricSlopeNearVmax, double isometricSlope, 
            double eccentricSlopeAtVmax, double eccentricSlopeNearVmax, double maxEccentricVelocityForceMultiplier, 
            double concentricCurviness, double eccentricCurviness) -> ForceVelocityInverseCurve

        Parameters:
            concentricSlopeAtVmax: double
            concentricSlopeNearVmax: double
            isometricSlope: double
            eccentricSlopeAtVmax: double
            eccentricSlopeNearVmax: double
            maxEccentricVelocityForceMultiplier: double
            concentricCurviness: double
            eccentricCurviness: double

        """
        this = _opensim.new_ForceVelocityInverseCurve(*args)
        try: self.this.append(this)
        except: self.this = this
    def getConcentricSlopeAtVmax(self):
        """
        getConcentricSlopeAtVmax(ForceVelocityInverseCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_getConcentricSlopeAtVmax(self)

    def getConcentricSlopeNearVmax(self):
        """
        getConcentricSlopeNearVmax(ForceVelocityInverseCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_getConcentricSlopeNearVmax(self)

    def getIsometricSlope(self):
        """
        getIsometricSlope(ForceVelocityInverseCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_getIsometricSlope(self)

    def getEccentricSlopeAtVmax(self):
        """
        getEccentricSlopeAtVmax(ForceVelocityInverseCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_getEccentricSlopeAtVmax(self)

    def getEccentricSlopeNearVmax(self):
        """
        getEccentricSlopeNearVmax(ForceVelocityInverseCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_getEccentricSlopeNearVmax(self)

    def getMaxEccentricVelocityForceMultiplier(self):
        """
        getMaxEccentricVelocityForceMultiplier(ForceVelocityInverseCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_getMaxEccentricVelocityForceMultiplier(self)

    def getConcentricCurviness(self):
        """
        getConcentricCurviness(ForceVelocityInverseCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_getConcentricCurviness(self)

    def getEccentricCurviness(self):
        """
        getEccentricCurviness(ForceVelocityInverseCurve self) -> double

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_getEccentricCurviness(self)

    def setCurveShape(self, *args):
        """
        setCurveShape(ForceVelocityInverseCurve self, double aConcentricSlopeAtVmax, double aConcentricSlopeNearVmax, double aIsometricSlope, 
            double aEccentricSlopeAtVmax, double aEccentricSlopeNearVmax, double aMaxForceMultiplier)

        Parameters:
            aConcentricSlopeAtVmax: double
            aConcentricSlopeNearVmax: double
            aIsometricSlope: double
            aEccentricSlopeAtVmax: double
            aEccentricSlopeNearVmax: double
            aMaxForceMultiplier: double

        """
        return _opensim.ForceVelocityInverseCurve_setCurveShape(self, *args)

    def setConcentricCurviness(self, *args):
        """
        setConcentricCurviness(ForceVelocityInverseCurve self, double aConcentricCurviness)

        Parameters:
            aConcentricCurviness: double

        """
        return _opensim.ForceVelocityInverseCurve_setConcentricCurviness(self, *args)

    def setEccentricCurviness(self, *args):
        """
        setEccentricCurviness(ForceVelocityInverseCurve self, double aEccentricCurviness)

        Parameters:
            aEccentricCurviness: double

        """
        return _opensim.ForceVelocityInverseCurve_setEccentricCurviness(self, *args)

    def calcValue(self, *args):
        """
        calcValue(ForceVelocityInverseCurve self, Vector x) -> double

        Parameters:
            x: SimTK::Vector const &

        calcValue(ForceVelocityInverseCurve self, double aForceVelocityMultiplier) -> double

        Parameters:
            aForceVelocityMultiplier: double

        """
        return _opensim.ForceVelocityInverseCurve_calcValue(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(ForceVelocityInverseCurve self, double aForceVelocityMultiplier, int order) -> double

        Parameters:
            aForceVelocityMultiplier: double
            order: int

        """
        return _opensim.ForceVelocityInverseCurve_calcDerivative(self, *args)

    def getCurveDomain(self):
        """
        getCurveDomain(ForceVelocityInverseCurve self) -> Vec2

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve const *

        """
        return _opensim.ForceVelocityInverseCurve_getCurveDomain(self)

    def printMuscleCurveToCSVFile(self, *args):
        """
        printMuscleCurveToCSVFile(ForceVelocityInverseCurve self, std::string const & path)

        Parameters:
            path: std::string const &

        """
        return _opensim.ForceVelocityInverseCurve_printMuscleCurveToCSVFile(self, *args)

    def ensureCurveUpToDate(self):
        """
        ensureCurveUpToDate(ForceVelocityInverseCurve self)

        Parameters:
            self: OpenSim::ForceVelocityInverseCurve *

        """
        return _opensim.ForceVelocityInverseCurve_ensureCurveUpToDate(self)

    __swig_destroy__ = _opensim.delete_ForceVelocityInverseCurve
    __del__ = lambda self : None;
ForceVelocityInverseCurve_swigregister = _opensim.ForceVelocityInverseCurve_swigregister
ForceVelocityInverseCurve_swigregister(ForceVelocityInverseCurve)

def ForceVelocityInverseCurve_safeDownCast(*args):
  """
    ForceVelocityInverseCurve_safeDownCast(OpenSimObject obj) -> ForceVelocityInverseCurve

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ForceVelocityInverseCurve_safeDownCast(*args)

def ForceVelocityInverseCurve_getClassName():
  """ForceVelocityInverseCurve_getClassName() -> std::string const &"""
  return _opensim.ForceVelocityInverseCurve_getClassName()

class TendonForceLengthCurve(Function):
    """Proxy of C++ OpenSim::TendonForceLengthCurve class"""
    __swig_setmethods__ = {}
    for _s in [Function]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, TendonForceLengthCurve, name, value)
    __swig_getmethods__ = {}
    for _s in [Function]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, TendonForceLengthCurve, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> TendonForceLengthCurve

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.TendonForceLengthCurve_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(TendonForceLengthCurve self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.TendonForceLengthCurve_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.TendonForceLengthCurve_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(TendonForceLengthCurve self) -> TendonForceLengthCurve

        Parameters:
            self: OpenSim::TendonForceLengthCurve const *

        """
        return _opensim.TendonForceLengthCurve_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(TendonForceLengthCurve self) -> std::string const &

        Parameters:
            self: OpenSim::TendonForceLengthCurve const *

        """
        return _opensim.TendonForceLengthCurve_getConcreteClassName(self)

    def copyProperty_strain_at_one_norm_force(self, *args):
        """
        copyProperty_strain_at_one_norm_force(TendonForceLengthCurve self, TendonForceLengthCurve source)

        Parameters:
            source: OpenSim::TendonForceLengthCurve::Self const &

        """
        return _opensim.TendonForceLengthCurve_copyProperty_strain_at_one_norm_force(self, *args)

    def append_strain_at_one_norm_force(self, *args):
        """
        append_strain_at_one_norm_force(TendonForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.TendonForceLengthCurve_append_strain_at_one_norm_force(self, *args)

    def constructProperty_strain_at_one_norm_force(self, *args):
        """
        constructProperty_strain_at_one_norm_force(TendonForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.TendonForceLengthCurve_constructProperty_strain_at_one_norm_force(self, *args)

    def get_strain_at_one_norm_force(self, *args):
        """
        get_strain_at_one_norm_force(TendonForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_strain_at_one_norm_force(TendonForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::TendonForceLengthCurve const *

        """
        return _opensim.TendonForceLengthCurve_get_strain_at_one_norm_force(self, *args)

    def upd_strain_at_one_norm_force(self, *args):
        """
        upd_strain_at_one_norm_force(TendonForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_strain_at_one_norm_force(TendonForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::TendonForceLengthCurve *

        """
        return _opensim.TendonForceLengthCurve_upd_strain_at_one_norm_force(self, *args)

    def set_strain_at_one_norm_force(self, *args):
        """
        set_strain_at_one_norm_force(TendonForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_strain_at_one_norm_force(TendonForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.TendonForceLengthCurve_set_strain_at_one_norm_force(self, *args)

    def copyProperty_stiffness_at_one_norm_force(self, *args):
        """
        copyProperty_stiffness_at_one_norm_force(TendonForceLengthCurve self, TendonForceLengthCurve source)

        Parameters:
            source: OpenSim::TendonForceLengthCurve::Self const &

        """
        return _opensim.TendonForceLengthCurve_copyProperty_stiffness_at_one_norm_force(self, *args)

    def append_stiffness_at_one_norm_force(self, *args):
        """
        append_stiffness_at_one_norm_force(TendonForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.TendonForceLengthCurve_append_stiffness_at_one_norm_force(self, *args)

    def constructProperty_stiffness_at_one_norm_force(self, *args):
        """
        constructProperty_stiffness_at_one_norm_force(TendonForceLengthCurve self)
        constructProperty_stiffness_at_one_norm_force(TendonForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.TendonForceLengthCurve_constructProperty_stiffness_at_one_norm_force(self, *args)

    def get_stiffness_at_one_norm_force(self, *args):
        """
        get_stiffness_at_one_norm_force(TendonForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_stiffness_at_one_norm_force(TendonForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::TendonForceLengthCurve const *

        """
        return _opensim.TendonForceLengthCurve_get_stiffness_at_one_norm_force(self, *args)

    def upd_stiffness_at_one_norm_force(self, *args):
        """
        upd_stiffness_at_one_norm_force(TendonForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_stiffness_at_one_norm_force(TendonForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::TendonForceLengthCurve *

        """
        return _opensim.TendonForceLengthCurve_upd_stiffness_at_one_norm_force(self, *args)

    def set_stiffness_at_one_norm_force(self, *args):
        """
        set_stiffness_at_one_norm_force(TendonForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_stiffness_at_one_norm_force(TendonForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.TendonForceLengthCurve_set_stiffness_at_one_norm_force(self, *args)

    def copyProperty_norm_force_at_toe_end(self, *args):
        """
        copyProperty_norm_force_at_toe_end(TendonForceLengthCurve self, TendonForceLengthCurve source)

        Parameters:
            source: OpenSim::TendonForceLengthCurve::Self const &

        """
        return _opensim.TendonForceLengthCurve_copyProperty_norm_force_at_toe_end(self, *args)

    def append_norm_force_at_toe_end(self, *args):
        """
        append_norm_force_at_toe_end(TendonForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.TendonForceLengthCurve_append_norm_force_at_toe_end(self, *args)

    def constructProperty_norm_force_at_toe_end(self, *args):
        """
        constructProperty_norm_force_at_toe_end(TendonForceLengthCurve self)
        constructProperty_norm_force_at_toe_end(TendonForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.TendonForceLengthCurve_constructProperty_norm_force_at_toe_end(self, *args)

    def get_norm_force_at_toe_end(self, *args):
        """
        get_norm_force_at_toe_end(TendonForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_norm_force_at_toe_end(TendonForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::TendonForceLengthCurve const *

        """
        return _opensim.TendonForceLengthCurve_get_norm_force_at_toe_end(self, *args)

    def upd_norm_force_at_toe_end(self, *args):
        """
        upd_norm_force_at_toe_end(TendonForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_norm_force_at_toe_end(TendonForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::TendonForceLengthCurve *

        """
        return _opensim.TendonForceLengthCurve_upd_norm_force_at_toe_end(self, *args)

    def set_norm_force_at_toe_end(self, *args):
        """
        set_norm_force_at_toe_end(TendonForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_norm_force_at_toe_end(TendonForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.TendonForceLengthCurve_set_norm_force_at_toe_end(self, *args)

    def copyProperty_curviness(self, *args):
        """
        copyProperty_curviness(TendonForceLengthCurve self, TendonForceLengthCurve source)

        Parameters:
            source: OpenSim::TendonForceLengthCurve::Self const &

        """
        return _opensim.TendonForceLengthCurve_copyProperty_curviness(self, *args)

    def append_curviness(self, *args):
        """
        append_curviness(TendonForceLengthCurve self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.TendonForceLengthCurve_append_curviness(self, *args)

    def constructProperty_curviness(self, *args):
        """
        constructProperty_curviness(TendonForceLengthCurve self)
        constructProperty_curviness(TendonForceLengthCurve self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.TendonForceLengthCurve_constructProperty_curviness(self, *args)

    def get_curviness(self, *args):
        """
        get_curviness(TendonForceLengthCurve self, int i) -> double const

        Parameters:
            i: int

        get_curviness(TendonForceLengthCurve self) -> double const &

        Parameters:
            self: OpenSim::TendonForceLengthCurve const *

        """
        return _opensim.TendonForceLengthCurve_get_curviness(self, *args)

    def upd_curviness(self, *args):
        """
        upd_curviness(TendonForceLengthCurve self, int i) -> double

        Parameters:
            i: int

        upd_curviness(TendonForceLengthCurve self) -> double &

        Parameters:
            self: OpenSim::TendonForceLengthCurve *

        """
        return _opensim.TendonForceLengthCurve_upd_curviness(self, *args)

    def set_curviness(self, *args):
        """
        set_curviness(TendonForceLengthCurve self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_curviness(TendonForceLengthCurve self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.TendonForceLengthCurve_set_curviness(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::TendonForceLengthCurve self) -> TendonForceLengthCurve
        __init__(OpenSim::TendonForceLengthCurve self, double strainAtOneNormForce, double stiffnessAtOneNormForce, double normForceAtToeEnd, 
            double curviness) -> TendonForceLengthCurve

        Parameters:
            strainAtOneNormForce: double
            stiffnessAtOneNormForce: double
            normForceAtToeEnd: double
            curviness: double

        __init__(OpenSim::TendonForceLengthCurve self, double strainAtOneNormForce) -> TendonForceLengthCurve

        Parameters:
            strainAtOneNormForce: double

        """
        this = _opensim.new_TendonForceLengthCurve(*args)
        try: self.this.append(this)
        except: self.this = this
    def getStrainAtOneNormForce(self):
        """
        getStrainAtOneNormForce(TendonForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::TendonForceLengthCurve const *

        """
        return _opensim.TendonForceLengthCurve_getStrainAtOneNormForce(self)

    def getStiffnessAtOneNormForceInUse(self):
        """
        getStiffnessAtOneNormForceInUse(TendonForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::TendonForceLengthCurve const *

        """
        return _opensim.TendonForceLengthCurve_getStiffnessAtOneNormForceInUse(self)

    def getNormForceAtToeEndInUse(self):
        """
        getNormForceAtToeEndInUse(TendonForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::TendonForceLengthCurve const *

        """
        return _opensim.TendonForceLengthCurve_getNormForceAtToeEndInUse(self)

    def getCurvinessInUse(self):
        """
        getCurvinessInUse(TendonForceLengthCurve self) -> double

        Parameters:
            self: OpenSim::TendonForceLengthCurve const *

        """
        return _opensim.TendonForceLengthCurve_getCurvinessInUse(self)

    def isFittedCurveBeingUsed(self):
        """
        isFittedCurveBeingUsed(TendonForceLengthCurve self) -> bool

        Parameters:
            self: OpenSim::TendonForceLengthCurve const *

        """
        return _opensim.TendonForceLengthCurve_isFittedCurveBeingUsed(self)

    def setStrainAtOneNormForce(self, *args):
        """
        setStrainAtOneNormForce(TendonForceLengthCurve self, double aStrainAtOneNormForce)

        Parameters:
            aStrainAtOneNormForce: double

        """
        return _opensim.TendonForceLengthCurve_setStrainAtOneNormForce(self, *args)

    def setOptionalProperties(self, *args):
        """
        setOptionalProperties(TendonForceLengthCurve self, double stiffnessAtOneNormForce, double normForceAtToeEnd, double curviness)

        Parameters:
            stiffnessAtOneNormForce: double
            normForceAtToeEnd: double
            curviness: double

        """
        return _opensim.TendonForceLengthCurve_setOptionalProperties(self, *args)

    def calcValue(self, *args):
        """
        calcValue(TendonForceLengthCurve self, Vector x) -> double

        Parameters:
            x: SimTK::Vector const &

        calcValue(TendonForceLengthCurve self, double aNormLength) -> double

        Parameters:
            aNormLength: double

        """
        return _opensim.TendonForceLengthCurve_calcValue(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(TendonForceLengthCurve self, double aNormLength, int order) -> double

        Parameters:
            aNormLength: double
            order: int

        """
        return _opensim.TendonForceLengthCurve_calcDerivative(self, *args)

    def calcIntegral(self, *args):
        """
        calcIntegral(TendonForceLengthCurve self, double aNormLength) -> double

        Parameters:
            aNormLength: double

        """
        return _opensim.TendonForceLengthCurve_calcIntegral(self, *args)

    def getCurveDomain(self):
        """
        getCurveDomain(TendonForceLengthCurve self) -> Vec2

        Parameters:
            self: OpenSim::TendonForceLengthCurve const *

        """
        return _opensim.TendonForceLengthCurve_getCurveDomain(self)

    def printMuscleCurveToCSVFile(self, *args):
        """
        printMuscleCurveToCSVFile(TendonForceLengthCurve self, std::string const & path)

        Parameters:
            path: std::string const &

        """
        return _opensim.TendonForceLengthCurve_printMuscleCurveToCSVFile(self, *args)

    def ensureCurveUpToDate(self):
        """
        ensureCurveUpToDate(TendonForceLengthCurve self)

        Parameters:
            self: OpenSim::TendonForceLengthCurve *

        """
        return _opensim.TendonForceLengthCurve_ensureCurveUpToDate(self)

    __swig_destroy__ = _opensim.delete_TendonForceLengthCurve
    __del__ = lambda self : None;
TendonForceLengthCurve_swigregister = _opensim.TendonForceLengthCurve_swigregister
TendonForceLengthCurve_swigregister(TendonForceLengthCurve)

def TendonForceLengthCurve_safeDownCast(*args):
  """
    TendonForceLengthCurve_safeDownCast(OpenSimObject obj) -> TendonForceLengthCurve

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.TendonForceLengthCurve_safeDownCast(*args)

def TendonForceLengthCurve_getClassName():
  """TendonForceLengthCurve_getClassName() -> std::string const &"""
  return _opensim.TendonForceLengthCurve_getClassName()

class MuscleFirstOrderActivationDynamicModel(OpenSimObject):
    """Proxy of C++ OpenSim::MuscleFirstOrderActivationDynamicModel class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MuscleFirstOrderActivationDynamicModel, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MuscleFirstOrderActivationDynamicModel, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MuscleFirstOrderActivationDynamicModel

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MuscleFirstOrderActivationDynamicModel self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MuscleFirstOrderActivationDynamicModel_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MuscleFirstOrderActivationDynamicModel self) -> MuscleFirstOrderActivationDynamicModel

        Parameters:
            self: OpenSim::MuscleFirstOrderActivationDynamicModel const *

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MuscleFirstOrderActivationDynamicModel self) -> std::string const &

        Parameters:
            self: OpenSim::MuscleFirstOrderActivationDynamicModel const *

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_getConcreteClassName(self)

    def copyProperty_activation_time_constant(self, *args):
        """
        copyProperty_activation_time_constant(MuscleFirstOrderActivationDynamicModel self, MuscleFirstOrderActivationDynamicModel source)

        Parameters:
            source: OpenSim::MuscleFirstOrderActivationDynamicModel::Self const &

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_copyProperty_activation_time_constant(self, *args)

    def append_activation_time_constant(self, *args):
        """
        append_activation_time_constant(MuscleFirstOrderActivationDynamicModel self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_append_activation_time_constant(self, *args)

    def constructProperty_activation_time_constant(self, *args):
        """
        constructProperty_activation_time_constant(MuscleFirstOrderActivationDynamicModel self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_constructProperty_activation_time_constant(self, *args)

    def get_activation_time_constant(self, *args):
        """
        get_activation_time_constant(MuscleFirstOrderActivationDynamicModel self, int i) -> double const

        Parameters:
            i: int

        get_activation_time_constant(MuscleFirstOrderActivationDynamicModel self) -> double const &

        Parameters:
            self: OpenSim::MuscleFirstOrderActivationDynamicModel const *

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_get_activation_time_constant(self, *args)

    def upd_activation_time_constant(self, *args):
        """
        upd_activation_time_constant(MuscleFirstOrderActivationDynamicModel self, int i) -> double

        Parameters:
            i: int

        upd_activation_time_constant(MuscleFirstOrderActivationDynamicModel self) -> double &

        Parameters:
            self: OpenSim::MuscleFirstOrderActivationDynamicModel *

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_upd_activation_time_constant(self, *args)

    def set_activation_time_constant(self, *args):
        """
        set_activation_time_constant(MuscleFirstOrderActivationDynamicModel self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_activation_time_constant(MuscleFirstOrderActivationDynamicModel self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_set_activation_time_constant(self, *args)

    def copyProperty_deactivation_time_constant(self, *args):
        """
        copyProperty_deactivation_time_constant(MuscleFirstOrderActivationDynamicModel self, MuscleFirstOrderActivationDynamicModel source)

        Parameters:
            source: OpenSim::MuscleFirstOrderActivationDynamicModel::Self const &

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_copyProperty_deactivation_time_constant(self, *args)

    def append_deactivation_time_constant(self, *args):
        """
        append_deactivation_time_constant(MuscleFirstOrderActivationDynamicModel self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_append_deactivation_time_constant(self, *args)

    def constructProperty_deactivation_time_constant(self, *args):
        """
        constructProperty_deactivation_time_constant(MuscleFirstOrderActivationDynamicModel self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_constructProperty_deactivation_time_constant(self, *args)

    def get_deactivation_time_constant(self, *args):
        """
        get_deactivation_time_constant(MuscleFirstOrderActivationDynamicModel self, int i) -> double const

        Parameters:
            i: int

        get_deactivation_time_constant(MuscleFirstOrderActivationDynamicModel self) -> double const &

        Parameters:
            self: OpenSim::MuscleFirstOrderActivationDynamicModel const *

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_get_deactivation_time_constant(self, *args)

    def upd_deactivation_time_constant(self, *args):
        """
        upd_deactivation_time_constant(MuscleFirstOrderActivationDynamicModel self, int i) -> double

        Parameters:
            i: int

        upd_deactivation_time_constant(MuscleFirstOrderActivationDynamicModel self) -> double &

        Parameters:
            self: OpenSim::MuscleFirstOrderActivationDynamicModel *

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_upd_deactivation_time_constant(self, *args)

    def set_deactivation_time_constant(self, *args):
        """
        set_deactivation_time_constant(MuscleFirstOrderActivationDynamicModel self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_deactivation_time_constant(MuscleFirstOrderActivationDynamicModel self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_set_deactivation_time_constant(self, *args)

    def copyProperty_minimum_activation(self, *args):
        """
        copyProperty_minimum_activation(MuscleFirstOrderActivationDynamicModel self, MuscleFirstOrderActivationDynamicModel source)

        Parameters:
            source: OpenSim::MuscleFirstOrderActivationDynamicModel::Self const &

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_copyProperty_minimum_activation(self, *args)

    def append_minimum_activation(self, *args):
        """
        append_minimum_activation(MuscleFirstOrderActivationDynamicModel self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_append_minimum_activation(self, *args)

    def constructProperty_minimum_activation(self, *args):
        """
        constructProperty_minimum_activation(MuscleFirstOrderActivationDynamicModel self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_constructProperty_minimum_activation(self, *args)

    def get_minimum_activation(self, *args):
        """
        get_minimum_activation(MuscleFirstOrderActivationDynamicModel self, int i) -> double const

        Parameters:
            i: int

        get_minimum_activation(MuscleFirstOrderActivationDynamicModel self) -> double const &

        Parameters:
            self: OpenSim::MuscleFirstOrderActivationDynamicModel const *

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_get_minimum_activation(self, *args)

    def upd_minimum_activation(self, *args):
        """
        upd_minimum_activation(MuscleFirstOrderActivationDynamicModel self, int i) -> double

        Parameters:
            i: int

        upd_minimum_activation(MuscleFirstOrderActivationDynamicModel self) -> double &

        Parameters:
            self: OpenSim::MuscleFirstOrderActivationDynamicModel *

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_upd_minimum_activation(self, *args)

    def set_minimum_activation(self, *args):
        """
        set_minimum_activation(MuscleFirstOrderActivationDynamicModel self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_minimum_activation(MuscleFirstOrderActivationDynamicModel self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_set_minimum_activation(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MuscleFirstOrderActivationDynamicModel self) -> MuscleFirstOrderActivationDynamicModel
        __init__(OpenSim::MuscleFirstOrderActivationDynamicModel self, double tauActivation, double tauDeactivation, double minActivation, std::string const & muscleName) -> MuscleFirstOrderActivationDynamicModel

        Parameters:
            tauActivation: double
            tauDeactivation: double
            minActivation: double
            muscleName: std::string const &

        """
        this = _opensim.new_MuscleFirstOrderActivationDynamicModel(*args)
        try: self.this.append(this)
        except: self.this = this
    def ensureModelUpToDate(self):
        """
        ensureModelUpToDate(MuscleFirstOrderActivationDynamicModel self)

        Parameters:
            self: OpenSim::MuscleFirstOrderActivationDynamicModel *

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_ensureModelUpToDate(self)

    def getActivationTimeConstant(self):
        """
        getActivationTimeConstant(MuscleFirstOrderActivationDynamicModel self) -> double

        Parameters:
            self: OpenSim::MuscleFirstOrderActivationDynamicModel const *

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_getActivationTimeConstant(self)

    def getDeactivationTimeConstant(self):
        """
        getDeactivationTimeConstant(MuscleFirstOrderActivationDynamicModel self) -> double

        Parameters:
            self: OpenSim::MuscleFirstOrderActivationDynamicModel const *

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_getDeactivationTimeConstant(self)

    def getMinimumActivation(self):
        """
        getMinimumActivation(MuscleFirstOrderActivationDynamicModel self) -> double

        Parameters:
            self: OpenSim::MuscleFirstOrderActivationDynamicModel const *

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_getMinimumActivation(self)

    def getMaximumActivation(self):
        """
        getMaximumActivation(MuscleFirstOrderActivationDynamicModel self) -> double

        Parameters:
            self: OpenSim::MuscleFirstOrderActivationDynamicModel const *

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_getMaximumActivation(self)

    def setActivationTimeConstant(self, *args):
        """
        setActivationTimeConstant(MuscleFirstOrderActivationDynamicModel self, double activationTimeConstant) -> bool

        Parameters:
            activationTimeConstant: double

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_setActivationTimeConstant(self, *args)

    def setDeactivationTimeConstant(self, *args):
        """
        setDeactivationTimeConstant(MuscleFirstOrderActivationDynamicModel self, double deactivationTimeConstant) -> bool

        Parameters:
            deactivationTimeConstant: double

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_setDeactivationTimeConstant(self, *args)

    def setMinimumActivation(self, *args):
        """
        setMinimumActivation(MuscleFirstOrderActivationDynamicModel self, double minimumActivation) -> bool

        Parameters:
            minimumActivation: double

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_setMinimumActivation(self, *args)

    def clampActivation(self, *args):
        """
        clampActivation(MuscleFirstOrderActivationDynamicModel self, double activation) -> double

        Parameters:
            activation: double

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_clampActivation(self, *args)

    def calcDerivative(self, *args):
        """
        calcDerivative(MuscleFirstOrderActivationDynamicModel self, double activation, double excitation) -> double

        Parameters:
            activation: double
            excitation: double

        """
        return _opensim.MuscleFirstOrderActivationDynamicModel_calcDerivative(self, *args)

    __swig_destroy__ = _opensim.delete_MuscleFirstOrderActivationDynamicModel
    __del__ = lambda self : None;
MuscleFirstOrderActivationDynamicModel_swigregister = _opensim.MuscleFirstOrderActivationDynamicModel_swigregister
MuscleFirstOrderActivationDynamicModel_swigregister(MuscleFirstOrderActivationDynamicModel)

def MuscleFirstOrderActivationDynamicModel_safeDownCast(*args):
  """
    MuscleFirstOrderActivationDynamicModel_safeDownCast(OpenSimObject obj) -> MuscleFirstOrderActivationDynamicModel

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MuscleFirstOrderActivationDynamicModel_safeDownCast(*args)

def MuscleFirstOrderActivationDynamicModel_getClassName():
  """MuscleFirstOrderActivationDynamicModel_getClassName() -> std::string const &"""
  return _opensim.MuscleFirstOrderActivationDynamicModel_getClassName()

class MuscleFixedWidthPennationModel(OpenSimObject):
    """Proxy of C++ OpenSim::MuscleFixedWidthPennationModel class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MuscleFixedWidthPennationModel, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MuscleFixedWidthPennationModel, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MuscleFixedWidthPennationModel

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MuscleFixedWidthPennationModel_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MuscleFixedWidthPennationModel self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MuscleFixedWidthPennationModel_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MuscleFixedWidthPennationModel_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MuscleFixedWidthPennationModel self) -> MuscleFixedWidthPennationModel

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel const *

        """
        return _opensim.MuscleFixedWidthPennationModel_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MuscleFixedWidthPennationModel self) -> std::string const &

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel const *

        """
        return _opensim.MuscleFixedWidthPennationModel_getConcreteClassName(self)

    def copyProperty_optimal_fiber_length(self, *args):
        """
        copyProperty_optimal_fiber_length(MuscleFixedWidthPennationModel self, MuscleFixedWidthPennationModel source)

        Parameters:
            source: OpenSim::MuscleFixedWidthPennationModel::Self const &

        """
        return _opensim.MuscleFixedWidthPennationModel_copyProperty_optimal_fiber_length(self, *args)

    def append_optimal_fiber_length(self, *args):
        """
        append_optimal_fiber_length(MuscleFixedWidthPennationModel self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.MuscleFixedWidthPennationModel_append_optimal_fiber_length(self, *args)

    def constructProperty_optimal_fiber_length(self, *args):
        """
        constructProperty_optimal_fiber_length(MuscleFixedWidthPennationModel self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.MuscleFixedWidthPennationModel_constructProperty_optimal_fiber_length(self, *args)

    def get_optimal_fiber_length(self, *args):
        """
        get_optimal_fiber_length(MuscleFixedWidthPennationModel self, int i) -> double const

        Parameters:
            i: int

        get_optimal_fiber_length(MuscleFixedWidthPennationModel self) -> double const &

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel const *

        """
        return _opensim.MuscleFixedWidthPennationModel_get_optimal_fiber_length(self, *args)

    def upd_optimal_fiber_length(self, *args):
        """
        upd_optimal_fiber_length(MuscleFixedWidthPennationModel self, int i) -> double

        Parameters:
            i: int

        upd_optimal_fiber_length(MuscleFixedWidthPennationModel self) -> double &

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel *

        """
        return _opensim.MuscleFixedWidthPennationModel_upd_optimal_fiber_length(self, *args)

    def set_optimal_fiber_length(self, *args):
        """
        set_optimal_fiber_length(MuscleFixedWidthPennationModel self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_optimal_fiber_length(MuscleFixedWidthPennationModel self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.MuscleFixedWidthPennationModel_set_optimal_fiber_length(self, *args)

    def copyProperty_optimal_pennation_angle(self, *args):
        """
        copyProperty_optimal_pennation_angle(MuscleFixedWidthPennationModel self, MuscleFixedWidthPennationModel source)

        Parameters:
            source: OpenSim::MuscleFixedWidthPennationModel::Self const &

        """
        return _opensim.MuscleFixedWidthPennationModel_copyProperty_optimal_pennation_angle(self, *args)

    def append_optimal_pennation_angle(self, *args):
        """
        append_optimal_pennation_angle(MuscleFixedWidthPennationModel self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.MuscleFixedWidthPennationModel_append_optimal_pennation_angle(self, *args)

    def constructProperty_optimal_pennation_angle(self, *args):
        """
        constructProperty_optimal_pennation_angle(MuscleFixedWidthPennationModel self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.MuscleFixedWidthPennationModel_constructProperty_optimal_pennation_angle(self, *args)

    def get_optimal_pennation_angle(self, *args):
        """
        get_optimal_pennation_angle(MuscleFixedWidthPennationModel self, int i) -> double const

        Parameters:
            i: int

        get_optimal_pennation_angle(MuscleFixedWidthPennationModel self) -> double const &

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel const *

        """
        return _opensim.MuscleFixedWidthPennationModel_get_optimal_pennation_angle(self, *args)

    def upd_optimal_pennation_angle(self, *args):
        """
        upd_optimal_pennation_angle(MuscleFixedWidthPennationModel self, int i) -> double

        Parameters:
            i: int

        upd_optimal_pennation_angle(MuscleFixedWidthPennationModel self) -> double &

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel *

        """
        return _opensim.MuscleFixedWidthPennationModel_upd_optimal_pennation_angle(self, *args)

    def set_optimal_pennation_angle(self, *args):
        """
        set_optimal_pennation_angle(MuscleFixedWidthPennationModel self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_optimal_pennation_angle(MuscleFixedWidthPennationModel self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.MuscleFixedWidthPennationModel_set_optimal_pennation_angle(self, *args)

    def copyProperty_maximum_pennation_angle(self, *args):
        """
        copyProperty_maximum_pennation_angle(MuscleFixedWidthPennationModel self, MuscleFixedWidthPennationModel source)

        Parameters:
            source: OpenSim::MuscleFixedWidthPennationModel::Self const &

        """
        return _opensim.MuscleFixedWidthPennationModel_copyProperty_maximum_pennation_angle(self, *args)

    def append_maximum_pennation_angle(self, *args):
        """
        append_maximum_pennation_angle(MuscleFixedWidthPennationModel self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.MuscleFixedWidthPennationModel_append_maximum_pennation_angle(self, *args)

    def constructProperty_maximum_pennation_angle(self, *args):
        """
        constructProperty_maximum_pennation_angle(MuscleFixedWidthPennationModel self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.MuscleFixedWidthPennationModel_constructProperty_maximum_pennation_angle(self, *args)

    def get_maximum_pennation_angle(self, *args):
        """
        get_maximum_pennation_angle(MuscleFixedWidthPennationModel self, int i) -> double const

        Parameters:
            i: int

        get_maximum_pennation_angle(MuscleFixedWidthPennationModel self) -> double const &

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel const *

        """
        return _opensim.MuscleFixedWidthPennationModel_get_maximum_pennation_angle(self, *args)

    def upd_maximum_pennation_angle(self, *args):
        """
        upd_maximum_pennation_angle(MuscleFixedWidthPennationModel self, int i) -> double

        Parameters:
            i: int

        upd_maximum_pennation_angle(MuscleFixedWidthPennationModel self) -> double &

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel *

        """
        return _opensim.MuscleFixedWidthPennationModel_upd_maximum_pennation_angle(self, *args)

    def set_maximum_pennation_angle(self, *args):
        """
        set_maximum_pennation_angle(MuscleFixedWidthPennationModel self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_maximum_pennation_angle(MuscleFixedWidthPennationModel self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.MuscleFixedWidthPennationModel_set_maximum_pennation_angle(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MuscleFixedWidthPennationModel self) -> MuscleFixedWidthPennationModel
        __init__(OpenSim::MuscleFixedWidthPennationModel self, double optimalFiberLength, double optimalPennationAngle, double maximumPennationAngle) -> MuscleFixedWidthPennationModel

        Parameters:
            optimalFiberLength: double
            optimalPennationAngle: double
            maximumPennationAngle: double

        """
        this = _opensim.new_MuscleFixedWidthPennationModel(*args)
        try: self.this.append(this)
        except: self.this = this
    def getParallelogramHeight(self):
        """
        getParallelogramHeight(MuscleFixedWidthPennationModel self) -> double

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel const *

        """
        return _opensim.MuscleFixedWidthPennationModel_getParallelogramHeight(self)

    def getOptimalFiberLength(self):
        """
        getOptimalFiberLength(MuscleFixedWidthPennationModel self) -> double

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel const *

        """
        return _opensim.MuscleFixedWidthPennationModel_getOptimalFiberLength(self)

    def getMinimumFiberLength(self):
        """
        getMinimumFiberLength(MuscleFixedWidthPennationModel self) -> double

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel const *

        """
        return _opensim.MuscleFixedWidthPennationModel_getMinimumFiberLength(self)

    def getMinimumFiberLengthAlongTendon(self):
        """
        getMinimumFiberLengthAlongTendon(MuscleFixedWidthPennationModel self) -> double

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel const *

        """
        return _opensim.MuscleFixedWidthPennationModel_getMinimumFiberLengthAlongTendon(self)

    def getOptimalPennationAngle(self):
        """
        getOptimalPennationAngle(MuscleFixedWidthPennationModel self) -> double

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel const *

        """
        return _opensim.MuscleFixedWidthPennationModel_getOptimalPennationAngle(self)

    def getMaximumPennationAngle(self):
        """
        getMaximumPennationAngle(MuscleFixedWidthPennationModel self) -> double

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel const *

        """
        return _opensim.MuscleFixedWidthPennationModel_getMaximumPennationAngle(self)

    def setOptimalFiberLength(self, *args):
        """
        setOptimalFiberLength(MuscleFixedWidthPennationModel self, double aOptimalFiberLength) -> bool

        Parameters:
            aOptimalFiberLength: double

        """
        return _opensim.MuscleFixedWidthPennationModel_setOptimalFiberLength(self, *args)

    def setOptimalPennationAngle(self, *args):
        """
        setOptimalPennationAngle(MuscleFixedWidthPennationModel self, double aOptimalPennationAngle) -> bool

        Parameters:
            aOptimalPennationAngle: double

        """
        return _opensim.MuscleFixedWidthPennationModel_setOptimalPennationAngle(self, *args)

    def setMaximumPennationAngle(self, *args):
        """
        setMaximumPennationAngle(MuscleFixedWidthPennationModel self, double aMaximumPennationAngle) -> bool

        Parameters:
            aMaximumPennationAngle: double

        """
        return _opensim.MuscleFixedWidthPennationModel_setMaximumPennationAngle(self, *args)

    def clampFiberLength(self, *args):
        """
        clampFiberLength(MuscleFixedWidthPennationModel self, double fiberLength) -> double

        Parameters:
            fiberLength: double

        """
        return _opensim.MuscleFixedWidthPennationModel_clampFiberLength(self, *args)

    def calcPennationAngle(self, *args):
        """
        calcPennationAngle(MuscleFixedWidthPennationModel self, double fiberLength) -> double

        Parameters:
            fiberLength: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calcPennationAngle(self, *args)

    def calcTendonLength(self, *args):
        """
        calcTendonLength(MuscleFixedWidthPennationModel self, double cosPennationAngle, double fiberLength, double muscleLength) -> double

        Parameters:
            cosPennationAngle: double
            fiberLength: double
            muscleLength: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calcTendonLength(self, *args)

    def calcFiberLengthAlongTendon(self, *args):
        """
        calcFiberLengthAlongTendon(MuscleFixedWidthPennationModel self, double fiberLength, double cosPennationAngle) -> double

        Parameters:
            fiberLength: double
            cosPennationAngle: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calcFiberLengthAlongTendon(self, *args)

    def calcPennationAngularVelocity(self, *args):
        """
        calcPennationAngularVelocity(MuscleFixedWidthPennationModel self, double tanPennationAngle, double fiberLength, double fiberVelocity) -> double

        Parameters:
            tanPennationAngle: double
            fiberLength: double
            fiberVelocity: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calcPennationAngularVelocity(self, *args)

    def calcTendonVelocity(self, *args):
        """
        calcTendonVelocity(MuscleFixedWidthPennationModel self, double cosPennationAngle, double sinPennationAngle, double pennationAngularVelocity, 
            double fiberLength, double fiberVelocity, double muscleVelocity) -> double

        Parameters:
            cosPennationAngle: double
            sinPennationAngle: double
            pennationAngularVelocity: double
            fiberLength: double
            fiberVelocity: double
            muscleVelocity: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calcTendonVelocity(self, *args)

    def calcFiberVelocityAlongTendon(self, *args):
        """
        calcFiberVelocityAlongTendon(MuscleFixedWidthPennationModel self, double fiberLength, double fiberVelocity, double sinPennationAngle, double cosPennationAngle, 
            double pennationAngularVelocity) -> double

        Parameters:
            fiberLength: double
            fiberVelocity: double
            sinPennationAngle: double
            cosPennationAngle: double
            pennationAngularVelocity: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calcFiberVelocityAlongTendon(self, *args)

    def calcPennationAngularAcceleration(self, *args):
        """
        calcPennationAngularAcceleration(MuscleFixedWidthPennationModel self, double fiberLength, double fiberVelocity, double fiberAcceleration, double sinPennationAngle, 
            double cosPennationAngle, double pennationAngularVelocity) -> double

        Parameters:
            fiberLength: double
            fiberVelocity: double
            fiberAcceleration: double
            sinPennationAngle: double
            cosPennationAngle: double
            pennationAngularVelocity: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calcPennationAngularAcceleration(self, *args)

    def calcFiberAccelerationAlongTendon(self, *args):
        """
        calcFiberAccelerationAlongTendon(MuscleFixedWidthPennationModel self, double fiberLength, double fiberVelocity, double fiberAcceleration, double sinPennationAngle, 
            double cosPennationAngle, double pennationAngularVelocity, double pennationAngularAcceleration) -> double

        Parameters:
            fiberLength: double
            fiberVelocity: double
            fiberAcceleration: double
            sinPennationAngle: double
            cosPennationAngle: double
            pennationAngularVelocity: double
            pennationAngularAcceleration: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calcFiberAccelerationAlongTendon(self, *args)

    def calc_DFiberLengthAlongTendon_DfiberLength(self, *args):
        """
        calc_DFiberLengthAlongTendon_DfiberLength(MuscleFixedWidthPennationModel self, double fiberLength, double sinPennationAngle, double cosPennationAngle, double DpennationAngle_DfiberLength) -> double

        Parameters:
            fiberLength: double
            sinPennationAngle: double
            cosPennationAngle: double
            DpennationAngle_DfiberLength: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calc_DFiberLengthAlongTendon_DfiberLength(self, *args)

    def calc_DPennationAngularVelocity_DfiberLength(self, *args):
        """
        calc_DPennationAngularVelocity_DfiberLength(MuscleFixedWidthPennationModel self, double fiberLength, double fiberVelocity, double sinPennationAngle, double cosPennationAngle, 
            double pennationAngularVelocity, double DpennationAngle_DfiberLength) -> double

        Parameters:
            fiberLength: double
            fiberVelocity: double
            sinPennationAngle: double
            cosPennationAngle: double
            pennationAngularVelocity: double
            DpennationAngle_DfiberLength: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calc_DPennationAngularVelocity_DfiberLength(self, *args)

    def calc_DFiberVelocityAlongTendon_DfiberLength(self, *args):
        """
        calc_DFiberVelocityAlongTendon_DfiberLength(MuscleFixedWidthPennationModel self, double fiberLength, double fiberVelocity, double sinPennationAngle, double cosPennationAngle, 
            double pennationAngularVelocity, double DpennationAngle_DfiberLength, 
            double DpennationAngularVelocity_DfiberLength) -> double

        Parameters:
            fiberLength: double
            fiberVelocity: double
            sinPennationAngle: double
            cosPennationAngle: double
            pennationAngularVelocity: double
            DpennationAngle_DfiberLength: double
            DpennationAngularVelocity_DfiberLength: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calc_DFiberVelocityAlongTendon_DfiberLength(self, *args)

    def calc_DPennationAngle_DfiberLength(self, *args):
        """
        calc_DPennationAngle_DfiberLength(MuscleFixedWidthPennationModel self, double fiberLength) -> double

        Parameters:
            fiberLength: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calc_DPennationAngle_DfiberLength(self, *args)

    def calc_DTendonLength_DfiberLength(self, *args):
        """
        calc_DTendonLength_DfiberLength(MuscleFixedWidthPennationModel self, double fiberLength, double sinPennationAngle, double cosPennationAngle, double DpennationAngle_DfiberLength) -> double

        Parameters:
            fiberLength: double
            sinPennationAngle: double
            cosPennationAngle: double
            DpennationAngle_DfiberLength: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calc_DTendonLength_DfiberLength(self, *args)

    def calcFiberLength(self, *args):
        """
        calcFiberLength(MuscleFixedWidthPennationModel self, double muscleLength, double tendonLength) -> double

        Parameters:
            muscleLength: double
            tendonLength: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calcFiberLength(self, *args)

    def calcFiberVelocity(self, *args):
        """
        calcFiberVelocity(MuscleFixedWidthPennationModel self, double cosPennationAngle, double muscleVelocity, double tendonVelocity) -> double

        Parameters:
            cosPennationAngle: double
            muscleVelocity: double
            tendonVelocity: double

        """
        return _opensim.MuscleFixedWidthPennationModel_calcFiberVelocity(self, *args)

    def ensureModelUpToDate(self):
        """
        ensureModelUpToDate(MuscleFixedWidthPennationModel self)

        Parameters:
            self: OpenSim::MuscleFixedWidthPennationModel *

        """
        return _opensim.MuscleFixedWidthPennationModel_ensureModelUpToDate(self)

    __swig_destroy__ = _opensim.delete_MuscleFixedWidthPennationModel
    __del__ = lambda self : None;
MuscleFixedWidthPennationModel_swigregister = _opensim.MuscleFixedWidthPennationModel_swigregister
MuscleFixedWidthPennationModel_swigregister(MuscleFixedWidthPennationModel)

def MuscleFixedWidthPennationModel_safeDownCast(*args):
  """
    MuscleFixedWidthPennationModel_safeDownCast(OpenSimObject obj) -> MuscleFixedWidthPennationModel

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MuscleFixedWidthPennationModel_safeDownCast(*args)

def MuscleFixedWidthPennationModel_getClassName():
  """MuscleFixedWidthPennationModel_getClassName() -> std::string const &"""
  return _opensim.MuscleFixedWidthPennationModel_getClassName()

class Millard2012EquilibriumMuscle(Muscle):
    """Proxy of C++ OpenSim::Millard2012EquilibriumMuscle class"""
    __swig_setmethods__ = {}
    for _s in [Muscle]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Millard2012EquilibriumMuscle, name, value)
    __swig_getmethods__ = {}
    for _s in [Muscle]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Millard2012EquilibriumMuscle, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Millard2012EquilibriumMuscle

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Millard2012EquilibriumMuscle_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Millard2012EquilibriumMuscle self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Millard2012EquilibriumMuscle_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Millard2012EquilibriumMuscle_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Millard2012EquilibriumMuscle self) -> Millard2012EquilibriumMuscle

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Millard2012EquilibriumMuscle self) -> std::string const &

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getConcreteClassName(self)

    def copyProperty_fiber_damping(self, *args):
        """
        copyProperty_fiber_damping(Millard2012EquilibriumMuscle self, Millard2012EquilibriumMuscle source)

        Parameters:
            source: OpenSim::Millard2012EquilibriumMuscle::Self const &

        """
        return _opensim.Millard2012EquilibriumMuscle_copyProperty_fiber_damping(self, *args)

    def append_fiber_damping(self, *args):
        """
        append_fiber_damping(Millard2012EquilibriumMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_append_fiber_damping(self, *args)

    def constructProperty_fiber_damping(self, *args):
        """
        constructProperty_fiber_damping(Millard2012EquilibriumMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_constructProperty_fiber_damping(self, *args)

    def get_fiber_damping(self, *args):
        """
        get_fiber_damping(Millard2012EquilibriumMuscle self, int i) -> double const

        Parameters:
            i: int

        get_fiber_damping(Millard2012EquilibriumMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_get_fiber_damping(self, *args)

    def upd_fiber_damping(self, *args):
        """
        upd_fiber_damping(Millard2012EquilibriumMuscle self, int i) -> double

        Parameters:
            i: int

        upd_fiber_damping(Millard2012EquilibriumMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle *

        """
        return _opensim.Millard2012EquilibriumMuscle_upd_fiber_damping(self, *args)

    def set_fiber_damping(self, *args):
        """
        set_fiber_damping(Millard2012EquilibriumMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_fiber_damping(Millard2012EquilibriumMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_set_fiber_damping(self, *args)

    def copyProperty_default_activation(self, *args):
        """
        copyProperty_default_activation(Millard2012EquilibriumMuscle self, Millard2012EquilibriumMuscle source)

        Parameters:
            source: OpenSim::Millard2012EquilibriumMuscle::Self const &

        """
        return _opensim.Millard2012EquilibriumMuscle_copyProperty_default_activation(self, *args)

    def append_default_activation(self, *args):
        """
        append_default_activation(Millard2012EquilibriumMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_append_default_activation(self, *args)

    def constructProperty_default_activation(self, *args):
        """
        constructProperty_default_activation(Millard2012EquilibriumMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_constructProperty_default_activation(self, *args)

    def get_default_activation(self, *args):
        """
        get_default_activation(Millard2012EquilibriumMuscle self, int i) -> double const

        Parameters:
            i: int

        get_default_activation(Millard2012EquilibriumMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_get_default_activation(self, *args)

    def upd_default_activation(self, *args):
        """
        upd_default_activation(Millard2012EquilibriumMuscle self, int i) -> double

        Parameters:
            i: int

        upd_default_activation(Millard2012EquilibriumMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle *

        """
        return _opensim.Millard2012EquilibriumMuscle_upd_default_activation(self, *args)

    def set_default_activation(self, *args):
        """
        set_default_activation(Millard2012EquilibriumMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_default_activation(Millard2012EquilibriumMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_set_default_activation(self, *args)

    def copyProperty_default_fiber_length(self, *args):
        """
        copyProperty_default_fiber_length(Millard2012EquilibriumMuscle self, Millard2012EquilibriumMuscle source)

        Parameters:
            source: OpenSim::Millard2012EquilibriumMuscle::Self const &

        """
        return _opensim.Millard2012EquilibriumMuscle_copyProperty_default_fiber_length(self, *args)

    def append_default_fiber_length(self, *args):
        """
        append_default_fiber_length(Millard2012EquilibriumMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_append_default_fiber_length(self, *args)

    def constructProperty_default_fiber_length(self, *args):
        """
        constructProperty_default_fiber_length(Millard2012EquilibriumMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_constructProperty_default_fiber_length(self, *args)

    def get_default_fiber_length(self, *args):
        """
        get_default_fiber_length(Millard2012EquilibriumMuscle self, int i) -> double const

        Parameters:
            i: int

        get_default_fiber_length(Millard2012EquilibriumMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_get_default_fiber_length(self, *args)

    def upd_default_fiber_length(self, *args):
        """
        upd_default_fiber_length(Millard2012EquilibriumMuscle self, int i) -> double

        Parameters:
            i: int

        upd_default_fiber_length(Millard2012EquilibriumMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle *

        """
        return _opensim.Millard2012EquilibriumMuscle_upd_default_fiber_length(self, *args)

    def set_default_fiber_length(self, *args):
        """
        set_default_fiber_length(Millard2012EquilibriumMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_default_fiber_length(Millard2012EquilibriumMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_set_default_fiber_length(self, *args)

    def copyProperty_activation_time_constant(self, *args):
        """
        copyProperty_activation_time_constant(Millard2012EquilibriumMuscle self, Millard2012EquilibriumMuscle source)

        Parameters:
            source: OpenSim::Millard2012EquilibriumMuscle::Self const &

        """
        return _opensim.Millard2012EquilibriumMuscle_copyProperty_activation_time_constant(self, *args)

    def append_activation_time_constant(self, *args):
        """
        append_activation_time_constant(Millard2012EquilibriumMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_append_activation_time_constant(self, *args)

    def constructProperty_activation_time_constant(self, *args):
        """
        constructProperty_activation_time_constant(Millard2012EquilibriumMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_constructProperty_activation_time_constant(self, *args)

    def get_activation_time_constant(self, *args):
        """
        get_activation_time_constant(Millard2012EquilibriumMuscle self, int i) -> double const

        Parameters:
            i: int

        get_activation_time_constant(Millard2012EquilibriumMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_get_activation_time_constant(self, *args)

    def upd_activation_time_constant(self, *args):
        """
        upd_activation_time_constant(Millard2012EquilibriumMuscle self, int i) -> double

        Parameters:
            i: int

        upd_activation_time_constant(Millard2012EquilibriumMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle *

        """
        return _opensim.Millard2012EquilibriumMuscle_upd_activation_time_constant(self, *args)

    def set_activation_time_constant(self, *args):
        """
        set_activation_time_constant(Millard2012EquilibriumMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_activation_time_constant(Millard2012EquilibriumMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_set_activation_time_constant(self, *args)

    def copyProperty_deactivation_time_constant(self, *args):
        """
        copyProperty_deactivation_time_constant(Millard2012EquilibriumMuscle self, Millard2012EquilibriumMuscle source)

        Parameters:
            source: OpenSim::Millard2012EquilibriumMuscle::Self const &

        """
        return _opensim.Millard2012EquilibriumMuscle_copyProperty_deactivation_time_constant(self, *args)

    def append_deactivation_time_constant(self, *args):
        """
        append_deactivation_time_constant(Millard2012EquilibriumMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_append_deactivation_time_constant(self, *args)

    def constructProperty_deactivation_time_constant(self, *args):
        """
        constructProperty_deactivation_time_constant(Millard2012EquilibriumMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_constructProperty_deactivation_time_constant(self, *args)

    def get_deactivation_time_constant(self, *args):
        """
        get_deactivation_time_constant(Millard2012EquilibriumMuscle self, int i) -> double const

        Parameters:
            i: int

        get_deactivation_time_constant(Millard2012EquilibriumMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_get_deactivation_time_constant(self, *args)

    def upd_deactivation_time_constant(self, *args):
        """
        upd_deactivation_time_constant(Millard2012EquilibriumMuscle self, int i) -> double

        Parameters:
            i: int

        upd_deactivation_time_constant(Millard2012EquilibriumMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle *

        """
        return _opensim.Millard2012EquilibriumMuscle_upd_deactivation_time_constant(self, *args)

    def set_deactivation_time_constant(self, *args):
        """
        set_deactivation_time_constant(Millard2012EquilibriumMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_deactivation_time_constant(Millard2012EquilibriumMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_set_deactivation_time_constant(self, *args)

    def copyProperty_minimum_activation(self, *args):
        """
        copyProperty_minimum_activation(Millard2012EquilibriumMuscle self, Millard2012EquilibriumMuscle source)

        Parameters:
            source: OpenSim::Millard2012EquilibriumMuscle::Self const &

        """
        return _opensim.Millard2012EquilibriumMuscle_copyProperty_minimum_activation(self, *args)

    def append_minimum_activation(self, *args):
        """
        append_minimum_activation(Millard2012EquilibriumMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_append_minimum_activation(self, *args)

    def constructProperty_minimum_activation(self, *args):
        """
        constructProperty_minimum_activation(Millard2012EquilibriumMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_constructProperty_minimum_activation(self, *args)

    def get_minimum_activation(self, *args):
        """
        get_minimum_activation(Millard2012EquilibriumMuscle self, int i) -> double const

        Parameters:
            i: int

        get_minimum_activation(Millard2012EquilibriumMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_get_minimum_activation(self, *args)

    def upd_minimum_activation(self, *args):
        """
        upd_minimum_activation(Millard2012EquilibriumMuscle self, int i) -> double

        Parameters:
            i: int

        upd_minimum_activation(Millard2012EquilibriumMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle *

        """
        return _opensim.Millard2012EquilibriumMuscle_upd_minimum_activation(self, *args)

    def set_minimum_activation(self, *args):
        """
        set_minimum_activation(Millard2012EquilibriumMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_minimum_activation(Millard2012EquilibriumMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012EquilibriumMuscle_set_minimum_activation(self, *args)

    def copyProperty_ActiveForceLengthCurve(self, *args):
        """
        copyProperty_ActiveForceLengthCurve(Millard2012EquilibriumMuscle self, Millard2012EquilibriumMuscle source)

        Parameters:
            source: OpenSim::Millard2012EquilibriumMuscle::Self const &

        """
        return _opensim.Millard2012EquilibriumMuscle_copyProperty_ActiveForceLengthCurve(self, *args)

    def append_ActiveForceLengthCurve(self, *args):
        """
        append_ActiveForceLengthCurve(Millard2012EquilibriumMuscle self, ActiveForceLengthCurve value) -> int

        Parameters:
            value: OpenSim::ActiveForceLengthCurve const &

        """
        return _opensim.Millard2012EquilibriumMuscle_append_ActiveForceLengthCurve(self, *args)

    def constructProperty_ActiveForceLengthCurve(self, *args):
        """
        constructProperty_ActiveForceLengthCurve(Millard2012EquilibriumMuscle self, ActiveForceLengthCurve initValue)

        Parameters:
            initValue: OpenSim::ActiveForceLengthCurve const &

        """
        return _opensim.Millard2012EquilibriumMuscle_constructProperty_ActiveForceLengthCurve(self, *args)

    def get_ActiveForceLengthCurve(self, *args):
        """
        get_ActiveForceLengthCurve(Millard2012EquilibriumMuscle self, int i) -> ActiveForceLengthCurve

        Parameters:
            i: int

        get_ActiveForceLengthCurve(Millard2012EquilibriumMuscle self) -> ActiveForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_get_ActiveForceLengthCurve(self, *args)

    def upd_ActiveForceLengthCurve(self, *args):
        """
        upd_ActiveForceLengthCurve(Millard2012EquilibriumMuscle self, int i) -> ActiveForceLengthCurve

        Parameters:
            i: int

        upd_ActiveForceLengthCurve(Millard2012EquilibriumMuscle self) -> ActiveForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle *

        """
        return _opensim.Millard2012EquilibriumMuscle_upd_ActiveForceLengthCurve(self, *args)

    def set_ActiveForceLengthCurve(self, *args):
        """
        set_ActiveForceLengthCurve(Millard2012EquilibriumMuscle self, int i, ActiveForceLengthCurve value)

        Parameters:
            i: int
            value: OpenSim::ActiveForceLengthCurve const &

        set_ActiveForceLengthCurve(Millard2012EquilibriumMuscle self, ActiveForceLengthCurve value)

        Parameters:
            value: OpenSim::ActiveForceLengthCurve const &

        """
        return _opensim.Millard2012EquilibriumMuscle_set_ActiveForceLengthCurve(self, *args)

    def copyProperty_ForceVelocityCurve(self, *args):
        """
        copyProperty_ForceVelocityCurve(Millard2012EquilibriumMuscle self, Millard2012EquilibriumMuscle source)

        Parameters:
            source: OpenSim::Millard2012EquilibriumMuscle::Self const &

        """
        return _opensim.Millard2012EquilibriumMuscle_copyProperty_ForceVelocityCurve(self, *args)

    def append_ForceVelocityCurve(self, *args):
        """
        append_ForceVelocityCurve(Millard2012EquilibriumMuscle self, ForceVelocityCurve value) -> int

        Parameters:
            value: OpenSim::ForceVelocityCurve const &

        """
        return _opensim.Millard2012EquilibriumMuscle_append_ForceVelocityCurve(self, *args)

    def constructProperty_ForceVelocityCurve(self, *args):
        """
        constructProperty_ForceVelocityCurve(Millard2012EquilibriumMuscle self, ForceVelocityCurve initValue)

        Parameters:
            initValue: OpenSim::ForceVelocityCurve const &

        """
        return _opensim.Millard2012EquilibriumMuscle_constructProperty_ForceVelocityCurve(self, *args)

    def get_ForceVelocityCurve(self, *args):
        """
        get_ForceVelocityCurve(Millard2012EquilibriumMuscle self, int i) -> ForceVelocityCurve

        Parameters:
            i: int

        get_ForceVelocityCurve(Millard2012EquilibriumMuscle self) -> ForceVelocityCurve

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_get_ForceVelocityCurve(self, *args)

    def upd_ForceVelocityCurve(self, *args):
        """
        upd_ForceVelocityCurve(Millard2012EquilibriumMuscle self, int i) -> ForceVelocityCurve

        Parameters:
            i: int

        upd_ForceVelocityCurve(Millard2012EquilibriumMuscle self) -> ForceVelocityCurve

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle *

        """
        return _opensim.Millard2012EquilibriumMuscle_upd_ForceVelocityCurve(self, *args)

    def set_ForceVelocityCurve(self, *args):
        """
        set_ForceVelocityCurve(Millard2012EquilibriumMuscle self, int i, ForceVelocityCurve value)

        Parameters:
            i: int
            value: OpenSim::ForceVelocityCurve const &

        set_ForceVelocityCurve(Millard2012EquilibriumMuscle self, ForceVelocityCurve value)

        Parameters:
            value: OpenSim::ForceVelocityCurve const &

        """
        return _opensim.Millard2012EquilibriumMuscle_set_ForceVelocityCurve(self, *args)

    def copyProperty_FiberForceLengthCurve(self, *args):
        """
        copyProperty_FiberForceLengthCurve(Millard2012EquilibriumMuscle self, Millard2012EquilibriumMuscle source)

        Parameters:
            source: OpenSim::Millard2012EquilibriumMuscle::Self const &

        """
        return _opensim.Millard2012EquilibriumMuscle_copyProperty_FiberForceLengthCurve(self, *args)

    def append_FiberForceLengthCurve(self, *args):
        """
        append_FiberForceLengthCurve(Millard2012EquilibriumMuscle self, FiberForceLengthCurve value) -> int

        Parameters:
            value: OpenSim::FiberForceLengthCurve const &

        """
        return _opensim.Millard2012EquilibriumMuscle_append_FiberForceLengthCurve(self, *args)

    def constructProperty_FiberForceLengthCurve(self, *args):
        """
        constructProperty_FiberForceLengthCurve(Millard2012EquilibriumMuscle self, FiberForceLengthCurve initValue)

        Parameters:
            initValue: OpenSim::FiberForceLengthCurve const &

        """
        return _opensim.Millard2012EquilibriumMuscle_constructProperty_FiberForceLengthCurve(self, *args)

    def get_FiberForceLengthCurve(self, *args):
        """
        get_FiberForceLengthCurve(Millard2012EquilibriumMuscle self, int i) -> FiberForceLengthCurve

        Parameters:
            i: int

        get_FiberForceLengthCurve(Millard2012EquilibriumMuscle self) -> FiberForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_get_FiberForceLengthCurve(self, *args)

    def upd_FiberForceLengthCurve(self, *args):
        """
        upd_FiberForceLengthCurve(Millard2012EquilibriumMuscle self, int i) -> FiberForceLengthCurve

        Parameters:
            i: int

        upd_FiberForceLengthCurve(Millard2012EquilibriumMuscle self) -> FiberForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle *

        """
        return _opensim.Millard2012EquilibriumMuscle_upd_FiberForceLengthCurve(self, *args)

    def set_FiberForceLengthCurve(self, *args):
        """
        set_FiberForceLengthCurve(Millard2012EquilibriumMuscle self, int i, FiberForceLengthCurve value)

        Parameters:
            i: int
            value: OpenSim::FiberForceLengthCurve const &

        set_FiberForceLengthCurve(Millard2012EquilibriumMuscle self, FiberForceLengthCurve value)

        Parameters:
            value: OpenSim::FiberForceLengthCurve const &

        """
        return _opensim.Millard2012EquilibriumMuscle_set_FiberForceLengthCurve(self, *args)

    def copyProperty_TendonForceLengthCurve(self, *args):
        """
        copyProperty_TendonForceLengthCurve(Millard2012EquilibriumMuscle self, Millard2012EquilibriumMuscle source)

        Parameters:
            source: OpenSim::Millard2012EquilibriumMuscle::Self const &

        """
        return _opensim.Millard2012EquilibriumMuscle_copyProperty_TendonForceLengthCurve(self, *args)

    def append_TendonForceLengthCurve(self, *args):
        """
        append_TendonForceLengthCurve(Millard2012EquilibriumMuscle self, TendonForceLengthCurve value) -> int

        Parameters:
            value: OpenSim::TendonForceLengthCurve const &

        """
        return _opensim.Millard2012EquilibriumMuscle_append_TendonForceLengthCurve(self, *args)

    def constructProperty_TendonForceLengthCurve(self, *args):
        """
        constructProperty_TendonForceLengthCurve(Millard2012EquilibriumMuscle self, TendonForceLengthCurve initValue)

        Parameters:
            initValue: OpenSim::TendonForceLengthCurve const &

        """
        return _opensim.Millard2012EquilibriumMuscle_constructProperty_TendonForceLengthCurve(self, *args)

    def get_TendonForceLengthCurve(self, *args):
        """
        get_TendonForceLengthCurve(Millard2012EquilibriumMuscle self, int i) -> TendonForceLengthCurve

        Parameters:
            i: int

        get_TendonForceLengthCurve(Millard2012EquilibriumMuscle self) -> TendonForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_get_TendonForceLengthCurve(self, *args)

    def upd_TendonForceLengthCurve(self, *args):
        """
        upd_TendonForceLengthCurve(Millard2012EquilibriumMuscle self, int i) -> TendonForceLengthCurve

        Parameters:
            i: int

        upd_TendonForceLengthCurve(Millard2012EquilibriumMuscle self) -> TendonForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle *

        """
        return _opensim.Millard2012EquilibriumMuscle_upd_TendonForceLengthCurve(self, *args)

    def set_TendonForceLengthCurve(self, *args):
        """
        set_TendonForceLengthCurve(Millard2012EquilibriumMuscle self, int i, TendonForceLengthCurve value)

        Parameters:
            i: int
            value: OpenSim::TendonForceLengthCurve const &

        set_TendonForceLengthCurve(Millard2012EquilibriumMuscle self, TendonForceLengthCurve value)

        Parameters:
            value: OpenSim::TendonForceLengthCurve const &

        """
        return _opensim.Millard2012EquilibriumMuscle_set_TendonForceLengthCurve(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Millard2012EquilibriumMuscle self) -> Millard2012EquilibriumMuscle
        __init__(OpenSim::Millard2012EquilibriumMuscle self, std::string const & aName, double aMaxIsometricForce, double aOptimalFiberLength, 
            double aTendonSlackLength, double aPennationAngle) -> Millard2012EquilibriumMuscle

        Parameters:
            aName: std::string const &
            aMaxIsometricForce: double
            aOptimalFiberLength: double
            aTendonSlackLength: double
            aPennationAngle: double

        """
        this = _opensim.new_Millard2012EquilibriumMuscle(*args)
        try: self.this.append(this)
        except: self.this = this
    def getUseFiberDamping(self):
        """
        getUseFiberDamping(Millard2012EquilibriumMuscle self) -> bool

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getUseFiberDamping(self)

    def getFiberDamping(self):
        """
        getFiberDamping(Millard2012EquilibriumMuscle self) -> double

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getFiberDamping(self)

    def getDefaultActivation(self):
        """
        getDefaultActivation(Millard2012EquilibriumMuscle self) -> double

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getDefaultActivation(self)

    def getDefaultFiberLength(self):
        """
        getDefaultFiberLength(Millard2012EquilibriumMuscle self) -> double

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getDefaultFiberLength(self)

    def getActivationTimeConstant(self):
        """
        getActivationTimeConstant(Millard2012EquilibriumMuscle self) -> double

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getActivationTimeConstant(self)

    def getDeactivationTimeConstant(self):
        """
        getDeactivationTimeConstant(Millard2012EquilibriumMuscle self) -> double

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getDeactivationTimeConstant(self)

    def getMinimumActivation(self):
        """
        getMinimumActivation(Millard2012EquilibriumMuscle self) -> double

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getMinimumActivation(self)

    def getActiveForceLengthCurve(self):
        """
        getActiveForceLengthCurve(Millard2012EquilibriumMuscle self) -> ActiveForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getActiveForceLengthCurve(self)

    def getForceVelocityCurve(self):
        """
        getForceVelocityCurve(Millard2012EquilibriumMuscle self) -> ForceVelocityCurve

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getForceVelocityCurve(self)

    def getFiberForceLengthCurve(self):
        """
        getFiberForceLengthCurve(Millard2012EquilibriumMuscle self) -> FiberForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getFiberForceLengthCurve(self)

    def getTendonForceLengthCurve(self):
        """
        getTendonForceLengthCurve(Millard2012EquilibriumMuscle self) -> TendonForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getTendonForceLengthCurve(self)

    def getPennationModel(self):
        """
        getPennationModel(Millard2012EquilibriumMuscle self) -> MuscleFixedWidthPennationModel

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getPennationModel(self)

    def getMaximumPennationAngle(self):
        """
        getMaximumPennationAngle(Millard2012EquilibriumMuscle self) -> double

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getMaximumPennationAngle(self)

    def getMinimumFiberLength(self):
        """
        getMinimumFiberLength(Millard2012EquilibriumMuscle self) -> double

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getMinimumFiberLength(self)

    def getMinimumFiberLengthAlongTendon(self):
        """
        getMinimumFiberLengthAlongTendon(Millard2012EquilibriumMuscle self) -> double

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getMinimumFiberLengthAlongTendon(self)

    def getTendonForceMultiplier(self, *args):
        """
        getTendonForceMultiplier(Millard2012EquilibriumMuscle self, State s) -> double

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Millard2012EquilibriumMuscle_getTendonForceMultiplier(self, *args)

    def getFiberStiffnessAlongTendon(self, *args):
        """
        getFiberStiffnessAlongTendon(Millard2012EquilibriumMuscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Millard2012EquilibriumMuscle_getFiberStiffnessAlongTendon(self, *args)

    def getFiberVelocity(self, *args):
        """
        getFiberVelocity(Millard2012EquilibriumMuscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Millard2012EquilibriumMuscle_getFiberVelocity(self, *args)

    def getActivationDerivative(self, *args):
        """
        getActivationDerivative(Millard2012EquilibriumMuscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Millard2012EquilibriumMuscle_getActivationDerivative(self, *args)

    def getStateVariableNames(self):
        """
        getStateVariableNames(Millard2012EquilibriumMuscle self) -> ArrayStr

        Parameters:
            self: OpenSim::Millard2012EquilibriumMuscle const *

        """
        return _opensim.Millard2012EquilibriumMuscle_getStateVariableNames(self)

    def getStateVariableSystemIndex(self, *args):
        """
        getStateVariableSystemIndex(Millard2012EquilibriumMuscle self, std::string const & stateVariableName) -> SimTK::SystemYIndex

        Parameters:
            stateVariableName: std::string const &

        """
        return _opensim.Millard2012EquilibriumMuscle_getStateVariableSystemIndex(self, *args)

    def setMuscleConfiguration(self, *args):
        """
        setMuscleConfiguration(Millard2012EquilibriumMuscle self, bool ignoreTendonCompliance, bool ignoreActivationDynamics, double dampingCoefficient)

        Parameters:
            ignoreTendonCompliance: bool
            ignoreActivationDynamics: bool
            dampingCoefficient: double

        """
        return _opensim.Millard2012EquilibriumMuscle_setMuscleConfiguration(self, *args)

    def setFiberDamping(self, *args):
        """
        setFiberDamping(Millard2012EquilibriumMuscle self, double dampingCoefficient)

        Parameters:
            dampingCoefficient: double

        """
        return _opensim.Millard2012EquilibriumMuscle_setFiberDamping(self, *args)

    def setDefaultActivation(self, *args):
        """
        setDefaultActivation(Millard2012EquilibriumMuscle self, double activation)

        Parameters:
            activation: double

        """
        return _opensim.Millard2012EquilibriumMuscle_setDefaultActivation(self, *args)

    def setActivation(self, *args):
        """
        setActivation(Millard2012EquilibriumMuscle self, State s, double activation)

        Parameters:
            s: SimTK::State &
            activation: double

        """
        return _opensim.Millard2012EquilibriumMuscle_setActivation(self, *args)

    def setDefaultFiberLength(self, *args):
        """
        setDefaultFiberLength(Millard2012EquilibriumMuscle self, double fiberLength)

        Parameters:
            fiberLength: double

        """
        return _opensim.Millard2012EquilibriumMuscle_setDefaultFiberLength(self, *args)

    def setActivationTimeConstant(self, *args):
        """
        setActivationTimeConstant(Millard2012EquilibriumMuscle self, double activationTimeConstant)

        Parameters:
            activationTimeConstant: double

        """
        return _opensim.Millard2012EquilibriumMuscle_setActivationTimeConstant(self, *args)

    def setDeactivationTimeConstant(self, *args):
        """
        setDeactivationTimeConstant(Millard2012EquilibriumMuscle self, double deactivationTimeConstant)

        Parameters:
            deactivationTimeConstant: double

        """
        return _opensim.Millard2012EquilibriumMuscle_setDeactivationTimeConstant(self, *args)

    def setMinimumActivation(self, *args):
        """
        setMinimumActivation(Millard2012EquilibriumMuscle self, double minimumActivation)

        Parameters:
            minimumActivation: double

        """
        return _opensim.Millard2012EquilibriumMuscle_setMinimumActivation(self, *args)

    def setActiveForceLengthCurve(self, *args):
        """
        setActiveForceLengthCurve(Millard2012EquilibriumMuscle self, ActiveForceLengthCurve aActiveForceLengthCurve)

        Parameters:
            aActiveForceLengthCurve: OpenSim::ActiveForceLengthCurve &

        """
        return _opensim.Millard2012EquilibriumMuscle_setActiveForceLengthCurve(self, *args)

    def setForceVelocityCurve(self, *args):
        """
        setForceVelocityCurve(Millard2012EquilibriumMuscle self, ForceVelocityCurve aForceVelocityCurve)

        Parameters:
            aForceVelocityCurve: OpenSim::ForceVelocityCurve &

        """
        return _opensim.Millard2012EquilibriumMuscle_setForceVelocityCurve(self, *args)

    def setFiberForceLengthCurve(self, *args):
        """
        setFiberForceLengthCurve(Millard2012EquilibriumMuscle self, FiberForceLengthCurve aFiberForceLengthCurve)

        Parameters:
            aFiberForceLengthCurve: OpenSim::FiberForceLengthCurve &

        """
        return _opensim.Millard2012EquilibriumMuscle_setFiberForceLengthCurve(self, *args)

    def setTendonForceLengthCurve(self, *args):
        """
        setTendonForceLengthCurve(Millard2012EquilibriumMuscle self, TendonForceLengthCurve aTendonForceLengthCurve)

        Parameters:
            aTendonForceLengthCurve: OpenSim::TendonForceLengthCurve &

        """
        return _opensim.Millard2012EquilibriumMuscle_setTendonForceLengthCurve(self, *args)

    def setFiberLength(self, *args):
        """
        setFiberLength(Millard2012EquilibriumMuscle self, State s, double fiberLength)

        Parameters:
            s: SimTK::State &
            fiberLength: double

        """
        return _opensim.Millard2012EquilibriumMuscle_setFiberLength(self, *args)

    def computeActuation(self, *args):
        """
        computeActuation(Millard2012EquilibriumMuscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Millard2012EquilibriumMuscle_computeActuation(self, *args)

    def computeInitialFiberEquilibrium(self, *args):
        """
        computeInitialFiberEquilibrium(Millard2012EquilibriumMuscle self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Millard2012EquilibriumMuscle_computeInitialFiberEquilibrium(self, *args)

    def computeFiberEquilibriumAtZeroVelocity(self, *args):
        """
        computeFiberEquilibriumAtZeroVelocity(Millard2012EquilibriumMuscle self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Millard2012EquilibriumMuscle_computeFiberEquilibriumAtZeroVelocity(self, *args)

    def calcActiveFiberForceAlongTendon(self, *args):
        """
        calcActiveFiberForceAlongTendon(Millard2012EquilibriumMuscle self, double activation, double fiberLength, double fiberVelocity) -> double

        Parameters:
            activation: double
            fiberLength: double
            fiberVelocity: double

        """
        return _opensim.Millard2012EquilibriumMuscle_calcActiveFiberForceAlongTendon(self, *args)

    def calcFiberStateGivenBoundaryCond(self, *args):
        """
        calcFiberStateGivenBoundaryCond(Millard2012EquilibriumMuscle self, double lengthMT, double velocityMT, double tendonForce, double dTendonForceDT) -> Vec4

        Parameters:
            lengthMT: double
            velocityMT: double
            tendonForce: double
            dTendonForceDT: double

        """
        return _opensim.Millard2012EquilibriumMuscle_calcFiberStateGivenBoundaryCond(self, *args)

    def calcInextensibleTendonActiveFiberForce(self, *args):
        """
        calcInextensibleTendonActiveFiberForce(Millard2012EquilibriumMuscle self, State s, double aActivation) -> double

        Parameters:
            s: SimTK::State &
            aActivation: double

        """
        return _opensim.Millard2012EquilibriumMuscle_calcInextensibleTendonActiveFiberForce(self, *args)

    __swig_destroy__ = _opensim.delete_Millard2012EquilibriumMuscle
    __del__ = lambda self : None;
Millard2012EquilibriumMuscle_swigregister = _opensim.Millard2012EquilibriumMuscle_swigregister
Millard2012EquilibriumMuscle_swigregister(Millard2012EquilibriumMuscle)

def Millard2012EquilibriumMuscle_safeDownCast(*args):
  """
    Millard2012EquilibriumMuscle_safeDownCast(OpenSimObject obj) -> Millard2012EquilibriumMuscle

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Millard2012EquilibriumMuscle_safeDownCast(*args)

def Millard2012EquilibriumMuscle_getClassName():
  """Millard2012EquilibriumMuscle_getClassName() -> std::string const &"""
  return _opensim.Millard2012EquilibriumMuscle_getClassName()

class Millard2012AccelerationMuscle(Muscle):
    """Proxy of C++ OpenSim::Millard2012AccelerationMuscle class"""
    __swig_setmethods__ = {}
    for _s in [Muscle]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Millard2012AccelerationMuscle, name, value)
    __swig_getmethods__ = {}
    for _s in [Muscle]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Millard2012AccelerationMuscle, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Millard2012AccelerationMuscle

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Millard2012AccelerationMuscle_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Millard2012AccelerationMuscle self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Millard2012AccelerationMuscle_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Millard2012AccelerationMuscle_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Millard2012AccelerationMuscle self) -> Millard2012AccelerationMuscle

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Millard2012AccelerationMuscle self) -> std::string const &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_getConcreteClassName(self)

    def copyProperty_default_activation(self, *args):
        """
        copyProperty_default_activation(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_default_activation(self, *args)

    def append_default_activation(self, *args):
        """
        append_default_activation(Millard2012AccelerationMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_default_activation(self, *args)

    def constructProperty_default_activation(self, *args):
        """
        constructProperty_default_activation(Millard2012AccelerationMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_default_activation(self, *args)

    def get_default_activation(self, *args):
        """
        get_default_activation(Millard2012AccelerationMuscle self, int i) -> double const

        Parameters:
            i: int

        get_default_activation(Millard2012AccelerationMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_default_activation(self, *args)

    def upd_default_activation(self, *args):
        """
        upd_default_activation(Millard2012AccelerationMuscle self, int i) -> double

        Parameters:
            i: int

        upd_default_activation(Millard2012AccelerationMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_default_activation(self, *args)

    def set_default_activation(self, *args):
        """
        set_default_activation(Millard2012AccelerationMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_default_activation(Millard2012AccelerationMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_default_activation(self, *args)

    def copyProperty_default_fiber_length(self, *args):
        """
        copyProperty_default_fiber_length(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_default_fiber_length(self, *args)

    def append_default_fiber_length(self, *args):
        """
        append_default_fiber_length(Millard2012AccelerationMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_default_fiber_length(self, *args)

    def constructProperty_default_fiber_length(self, *args):
        """
        constructProperty_default_fiber_length(Millard2012AccelerationMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_default_fiber_length(self, *args)

    def get_default_fiber_length(self, *args):
        """
        get_default_fiber_length(Millard2012AccelerationMuscle self, int i) -> double const

        Parameters:
            i: int

        get_default_fiber_length(Millard2012AccelerationMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_default_fiber_length(self, *args)

    def upd_default_fiber_length(self, *args):
        """
        upd_default_fiber_length(Millard2012AccelerationMuscle self, int i) -> double

        Parameters:
            i: int

        upd_default_fiber_length(Millard2012AccelerationMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_default_fiber_length(self, *args)

    def set_default_fiber_length(self, *args):
        """
        set_default_fiber_length(Millard2012AccelerationMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_default_fiber_length(Millard2012AccelerationMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_default_fiber_length(self, *args)

    def copyProperty_default_fiber_velocity(self, *args):
        """
        copyProperty_default_fiber_velocity(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_default_fiber_velocity(self, *args)

    def append_default_fiber_velocity(self, *args):
        """
        append_default_fiber_velocity(Millard2012AccelerationMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_default_fiber_velocity(self, *args)

    def constructProperty_default_fiber_velocity(self, *args):
        """
        constructProperty_default_fiber_velocity(Millard2012AccelerationMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_default_fiber_velocity(self, *args)

    def get_default_fiber_velocity(self, *args):
        """
        get_default_fiber_velocity(Millard2012AccelerationMuscle self, int i) -> double const

        Parameters:
            i: int

        get_default_fiber_velocity(Millard2012AccelerationMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_default_fiber_velocity(self, *args)

    def upd_default_fiber_velocity(self, *args):
        """
        upd_default_fiber_velocity(Millard2012AccelerationMuscle self, int i) -> double

        Parameters:
            i: int

        upd_default_fiber_velocity(Millard2012AccelerationMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_default_fiber_velocity(self, *args)

    def set_default_fiber_velocity(self, *args):
        """
        set_default_fiber_velocity(Millard2012AccelerationMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_default_fiber_velocity(Millard2012AccelerationMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_default_fiber_velocity(self, *args)

    def copyProperty_MuscleFirstOrderActivationDynamicModel(self, *args):
        """
        copyProperty_MuscleFirstOrderActivationDynamicModel(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_MuscleFirstOrderActivationDynamicModel(self, *args)

    def append_MuscleFirstOrderActivationDynamicModel(self, *args):
        """
        append_MuscleFirstOrderActivationDynamicModel(Millard2012AccelerationMuscle self, MuscleFirstOrderActivationDynamicModel value) -> int

        Parameters:
            value: OpenSim::MuscleFirstOrderActivationDynamicModel const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_MuscleFirstOrderActivationDynamicModel(self, *args)

    def constructProperty_MuscleFirstOrderActivationDynamicModel(self, *args):
        """
        constructProperty_MuscleFirstOrderActivationDynamicModel(Millard2012AccelerationMuscle self, MuscleFirstOrderActivationDynamicModel initValue)

        Parameters:
            initValue: OpenSim::MuscleFirstOrderActivationDynamicModel const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_MuscleFirstOrderActivationDynamicModel(self, *args)

    def get_MuscleFirstOrderActivationDynamicModel(self, *args):
        """
        get_MuscleFirstOrderActivationDynamicModel(Millard2012AccelerationMuscle self, int i) -> MuscleFirstOrderActivationDynamicModel

        Parameters:
            i: int

        get_MuscleFirstOrderActivationDynamicModel(Millard2012AccelerationMuscle self) -> MuscleFirstOrderActivationDynamicModel

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_MuscleFirstOrderActivationDynamicModel(self, *args)

    def upd_MuscleFirstOrderActivationDynamicModel(self, *args):
        """
        upd_MuscleFirstOrderActivationDynamicModel(Millard2012AccelerationMuscle self, int i) -> MuscleFirstOrderActivationDynamicModel

        Parameters:
            i: int

        upd_MuscleFirstOrderActivationDynamicModel(Millard2012AccelerationMuscle self) -> MuscleFirstOrderActivationDynamicModel

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_MuscleFirstOrderActivationDynamicModel(self, *args)

    def set_MuscleFirstOrderActivationDynamicModel(self, *args):
        """
        set_MuscleFirstOrderActivationDynamicModel(Millard2012AccelerationMuscle self, int i, MuscleFirstOrderActivationDynamicModel value)

        Parameters:
            i: int
            value: OpenSim::MuscleFirstOrderActivationDynamicModel const &

        set_MuscleFirstOrderActivationDynamicModel(Millard2012AccelerationMuscle self, MuscleFirstOrderActivationDynamicModel value)

        Parameters:
            value: OpenSim::MuscleFirstOrderActivationDynamicModel const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_MuscleFirstOrderActivationDynamicModel(self, *args)

    def copyProperty_ActiveForceLengthCurve(self, *args):
        """
        copyProperty_ActiveForceLengthCurve(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_ActiveForceLengthCurve(self, *args)

    def append_ActiveForceLengthCurve(self, *args):
        """
        append_ActiveForceLengthCurve(Millard2012AccelerationMuscle self, ActiveForceLengthCurve value) -> int

        Parameters:
            value: OpenSim::ActiveForceLengthCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_ActiveForceLengthCurve(self, *args)

    def constructProperty_ActiveForceLengthCurve(self, *args):
        """
        constructProperty_ActiveForceLengthCurve(Millard2012AccelerationMuscle self, ActiveForceLengthCurve initValue)

        Parameters:
            initValue: OpenSim::ActiveForceLengthCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_ActiveForceLengthCurve(self, *args)

    def get_ActiveForceLengthCurve(self, *args):
        """
        get_ActiveForceLengthCurve(Millard2012AccelerationMuscle self, int i) -> ActiveForceLengthCurve

        Parameters:
            i: int

        get_ActiveForceLengthCurve(Millard2012AccelerationMuscle self) -> ActiveForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_ActiveForceLengthCurve(self, *args)

    def upd_ActiveForceLengthCurve(self, *args):
        """
        upd_ActiveForceLengthCurve(Millard2012AccelerationMuscle self, int i) -> ActiveForceLengthCurve

        Parameters:
            i: int

        upd_ActiveForceLengthCurve(Millard2012AccelerationMuscle self) -> ActiveForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_ActiveForceLengthCurve(self, *args)

    def set_ActiveForceLengthCurve(self, *args):
        """
        set_ActiveForceLengthCurve(Millard2012AccelerationMuscle self, int i, ActiveForceLengthCurve value)

        Parameters:
            i: int
            value: OpenSim::ActiveForceLengthCurve const &

        set_ActiveForceLengthCurve(Millard2012AccelerationMuscle self, ActiveForceLengthCurve value)

        Parameters:
            value: OpenSim::ActiveForceLengthCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_ActiveForceLengthCurve(self, *args)

    def copyProperty_ForceVelocityCurve(self, *args):
        """
        copyProperty_ForceVelocityCurve(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_ForceVelocityCurve(self, *args)

    def append_ForceVelocityCurve(self, *args):
        """
        append_ForceVelocityCurve(Millard2012AccelerationMuscle self, ForceVelocityCurve value) -> int

        Parameters:
            value: OpenSim::ForceVelocityCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_ForceVelocityCurve(self, *args)

    def constructProperty_ForceVelocityCurve(self, *args):
        """
        constructProperty_ForceVelocityCurve(Millard2012AccelerationMuscle self, ForceVelocityCurve initValue)

        Parameters:
            initValue: OpenSim::ForceVelocityCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_ForceVelocityCurve(self, *args)

    def get_ForceVelocityCurve(self, *args):
        """
        get_ForceVelocityCurve(Millard2012AccelerationMuscle self, int i) -> ForceVelocityCurve

        Parameters:
            i: int

        get_ForceVelocityCurve(Millard2012AccelerationMuscle self) -> ForceVelocityCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_ForceVelocityCurve(self, *args)

    def upd_ForceVelocityCurve(self, *args):
        """
        upd_ForceVelocityCurve(Millard2012AccelerationMuscle self, int i) -> ForceVelocityCurve

        Parameters:
            i: int

        upd_ForceVelocityCurve(Millard2012AccelerationMuscle self) -> ForceVelocityCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_ForceVelocityCurve(self, *args)

    def set_ForceVelocityCurve(self, *args):
        """
        set_ForceVelocityCurve(Millard2012AccelerationMuscle self, int i, ForceVelocityCurve value)

        Parameters:
            i: int
            value: OpenSim::ForceVelocityCurve const &

        set_ForceVelocityCurve(Millard2012AccelerationMuscle self, ForceVelocityCurve value)

        Parameters:
            value: OpenSim::ForceVelocityCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_ForceVelocityCurve(self, *args)

    def copyProperty_FiberForceLengthCurve(self, *args):
        """
        copyProperty_FiberForceLengthCurve(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_FiberForceLengthCurve(self, *args)

    def append_FiberForceLengthCurve(self, *args):
        """
        append_FiberForceLengthCurve(Millard2012AccelerationMuscle self, FiberForceLengthCurve value) -> int

        Parameters:
            value: OpenSim::FiberForceLengthCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_FiberForceLengthCurve(self, *args)

    def constructProperty_FiberForceLengthCurve(self, *args):
        """
        constructProperty_FiberForceLengthCurve(Millard2012AccelerationMuscle self, FiberForceLengthCurve initValue)

        Parameters:
            initValue: OpenSim::FiberForceLengthCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_FiberForceLengthCurve(self, *args)

    def get_FiberForceLengthCurve(self, *args):
        """
        get_FiberForceLengthCurve(Millard2012AccelerationMuscle self, int i) -> FiberForceLengthCurve

        Parameters:
            i: int

        get_FiberForceLengthCurve(Millard2012AccelerationMuscle self) -> FiberForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_FiberForceLengthCurve(self, *args)

    def upd_FiberForceLengthCurve(self, *args):
        """
        upd_FiberForceLengthCurve(Millard2012AccelerationMuscle self, int i) -> FiberForceLengthCurve

        Parameters:
            i: int

        upd_FiberForceLengthCurve(Millard2012AccelerationMuscle self) -> FiberForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_FiberForceLengthCurve(self, *args)

    def set_FiberForceLengthCurve(self, *args):
        """
        set_FiberForceLengthCurve(Millard2012AccelerationMuscle self, int i, FiberForceLengthCurve value)

        Parameters:
            i: int
            value: OpenSim::FiberForceLengthCurve const &

        set_FiberForceLengthCurve(Millard2012AccelerationMuscle self, FiberForceLengthCurve value)

        Parameters:
            value: OpenSim::FiberForceLengthCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_FiberForceLengthCurve(self, *args)

    def copyProperty_TendonForceLengthCurve(self, *args):
        """
        copyProperty_TendonForceLengthCurve(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_TendonForceLengthCurve(self, *args)

    def append_TendonForceLengthCurve(self, *args):
        """
        append_TendonForceLengthCurve(Millard2012AccelerationMuscle self, TendonForceLengthCurve value) -> int

        Parameters:
            value: OpenSim::TendonForceLengthCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_TendonForceLengthCurve(self, *args)

    def constructProperty_TendonForceLengthCurve(self, *args):
        """
        constructProperty_TendonForceLengthCurve(Millard2012AccelerationMuscle self, TendonForceLengthCurve initValue)

        Parameters:
            initValue: OpenSim::TendonForceLengthCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_TendonForceLengthCurve(self, *args)

    def get_TendonForceLengthCurve(self, *args):
        """
        get_TendonForceLengthCurve(Millard2012AccelerationMuscle self, int i) -> TendonForceLengthCurve

        Parameters:
            i: int

        get_TendonForceLengthCurve(Millard2012AccelerationMuscle self) -> TendonForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_TendonForceLengthCurve(self, *args)

    def upd_TendonForceLengthCurve(self, *args):
        """
        upd_TendonForceLengthCurve(Millard2012AccelerationMuscle self, int i) -> TendonForceLengthCurve

        Parameters:
            i: int

        upd_TendonForceLengthCurve(Millard2012AccelerationMuscle self) -> TendonForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_TendonForceLengthCurve(self, *args)

    def set_TendonForceLengthCurve(self, *args):
        """
        set_TendonForceLengthCurve(Millard2012AccelerationMuscle self, int i, TendonForceLengthCurve value)

        Parameters:
            i: int
            value: OpenSim::TendonForceLengthCurve const &

        set_TendonForceLengthCurve(Millard2012AccelerationMuscle self, TendonForceLengthCurve value)

        Parameters:
            value: OpenSim::TendonForceLengthCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_TendonForceLengthCurve(self, *args)

    def copyProperty_FiberCompressiveForceLengthCurve(self, *args):
        """
        copyProperty_FiberCompressiveForceLengthCurve(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_FiberCompressiveForceLengthCurve(self, *args)

    def append_FiberCompressiveForceLengthCurve(self, *args):
        """
        append_FiberCompressiveForceLengthCurve(Millard2012AccelerationMuscle self, FiberCompressiveForceLengthCurve value) -> int

        Parameters:
            value: OpenSim::FiberCompressiveForceLengthCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_FiberCompressiveForceLengthCurve(self, *args)

    def constructProperty_FiberCompressiveForceLengthCurve(self, *args):
        """
        constructProperty_FiberCompressiveForceLengthCurve(Millard2012AccelerationMuscle self, FiberCompressiveForceLengthCurve initValue)

        Parameters:
            initValue: OpenSim::FiberCompressiveForceLengthCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_FiberCompressiveForceLengthCurve(self, *args)

    def get_FiberCompressiveForceLengthCurve(self, *args):
        """
        get_FiberCompressiveForceLengthCurve(Millard2012AccelerationMuscle self, int i) -> FiberCompressiveForceLengthCurve

        Parameters:
            i: int

        get_FiberCompressiveForceLengthCurve(Millard2012AccelerationMuscle self) -> FiberCompressiveForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_FiberCompressiveForceLengthCurve(self, *args)

    def upd_FiberCompressiveForceLengthCurve(self, *args):
        """
        upd_FiberCompressiveForceLengthCurve(Millard2012AccelerationMuscle self, int i) -> FiberCompressiveForceLengthCurve

        Parameters:
            i: int

        upd_FiberCompressiveForceLengthCurve(Millard2012AccelerationMuscle self) -> FiberCompressiveForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_FiberCompressiveForceLengthCurve(self, *args)

    def set_FiberCompressiveForceLengthCurve(self, *args):
        """
        set_FiberCompressiveForceLengthCurve(Millard2012AccelerationMuscle self, int i, FiberCompressiveForceLengthCurve value)

        Parameters:
            i: int
            value: OpenSim::FiberCompressiveForceLengthCurve const &

        set_FiberCompressiveForceLengthCurve(Millard2012AccelerationMuscle self, FiberCompressiveForceLengthCurve value)

        Parameters:
            value: OpenSim::FiberCompressiveForceLengthCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_FiberCompressiveForceLengthCurve(self, *args)

    def copyProperty_FiberCompressiveForceCosPennationCurve(self, *args):
        """
        copyProperty_FiberCompressiveForceCosPennationCurve(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_FiberCompressiveForceCosPennationCurve(self, *args)

    def append_FiberCompressiveForceCosPennationCurve(self, *args):
        """
        append_FiberCompressiveForceCosPennationCurve(Millard2012AccelerationMuscle self, FiberCompressiveForceCosPennationCurve value) -> int

        Parameters:
            value: OpenSim::FiberCompressiveForceCosPennationCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_FiberCompressiveForceCosPennationCurve(self, *args)

    def constructProperty_FiberCompressiveForceCosPennationCurve(self, *args):
        """
        constructProperty_FiberCompressiveForceCosPennationCurve(Millard2012AccelerationMuscle self, FiberCompressiveForceCosPennationCurve initValue)

        Parameters:
            initValue: OpenSim::FiberCompressiveForceCosPennationCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_FiberCompressiveForceCosPennationCurve(self, *args)

    def get_FiberCompressiveForceCosPennationCurve(self, *args):
        """
        get_FiberCompressiveForceCosPennationCurve(Millard2012AccelerationMuscle self, int i) -> FiberCompressiveForceCosPennationCurve

        Parameters:
            i: int

        get_FiberCompressiveForceCosPennationCurve(Millard2012AccelerationMuscle self) -> FiberCompressiveForceCosPennationCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_FiberCompressiveForceCosPennationCurve(self, *args)

    def upd_FiberCompressiveForceCosPennationCurve(self, *args):
        """
        upd_FiberCompressiveForceCosPennationCurve(Millard2012AccelerationMuscle self, int i) -> FiberCompressiveForceCosPennationCurve

        Parameters:
            i: int

        upd_FiberCompressiveForceCosPennationCurve(Millard2012AccelerationMuscle self) -> FiberCompressiveForceCosPennationCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_FiberCompressiveForceCosPennationCurve(self, *args)

    def set_FiberCompressiveForceCosPennationCurve(self, *args):
        """
        set_FiberCompressiveForceCosPennationCurve(Millard2012AccelerationMuscle self, int i, FiberCompressiveForceCosPennationCurve value)

        Parameters:
            i: int
            value: OpenSim::FiberCompressiveForceCosPennationCurve const &

        set_FiberCompressiveForceCosPennationCurve(Millard2012AccelerationMuscle self, FiberCompressiveForceCosPennationCurve value)

        Parameters:
            value: OpenSim::FiberCompressiveForceCosPennationCurve const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_FiberCompressiveForceCosPennationCurve(self, *args)

    def copyProperty_fiber_damping(self, *args):
        """
        copyProperty_fiber_damping(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_fiber_damping(self, *args)

    def append_fiber_damping(self, *args):
        """
        append_fiber_damping(Millard2012AccelerationMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_fiber_damping(self, *args)

    def constructProperty_fiber_damping(self, *args):
        """
        constructProperty_fiber_damping(Millard2012AccelerationMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_fiber_damping(self, *args)

    def get_fiber_damping(self, *args):
        """
        get_fiber_damping(Millard2012AccelerationMuscle self, int i) -> double const

        Parameters:
            i: int

        get_fiber_damping(Millard2012AccelerationMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_fiber_damping(self, *args)

    def upd_fiber_damping(self, *args):
        """
        upd_fiber_damping(Millard2012AccelerationMuscle self, int i) -> double

        Parameters:
            i: int

        upd_fiber_damping(Millard2012AccelerationMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_fiber_damping(self, *args)

    def set_fiber_damping(self, *args):
        """
        set_fiber_damping(Millard2012AccelerationMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_fiber_damping(Millard2012AccelerationMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_fiber_damping(self, *args)

    def copyProperty_fiber_force_length_damping(self, *args):
        """
        copyProperty_fiber_force_length_damping(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_fiber_force_length_damping(self, *args)

    def append_fiber_force_length_damping(self, *args):
        """
        append_fiber_force_length_damping(Millard2012AccelerationMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_fiber_force_length_damping(self, *args)

    def constructProperty_fiber_force_length_damping(self, *args):
        """
        constructProperty_fiber_force_length_damping(Millard2012AccelerationMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_fiber_force_length_damping(self, *args)

    def get_fiber_force_length_damping(self, *args):
        """
        get_fiber_force_length_damping(Millard2012AccelerationMuscle self, int i) -> double const

        Parameters:
            i: int

        get_fiber_force_length_damping(Millard2012AccelerationMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_fiber_force_length_damping(self, *args)

    def upd_fiber_force_length_damping(self, *args):
        """
        upd_fiber_force_length_damping(Millard2012AccelerationMuscle self, int i) -> double

        Parameters:
            i: int

        upd_fiber_force_length_damping(Millard2012AccelerationMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_fiber_force_length_damping(self, *args)

    def set_fiber_force_length_damping(self, *args):
        """
        set_fiber_force_length_damping(Millard2012AccelerationMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_fiber_force_length_damping(Millard2012AccelerationMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_fiber_force_length_damping(self, *args)

    def copyProperty_fiber_compressive_force_length_damping(self, *args):
        """
        copyProperty_fiber_compressive_force_length_damping(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_fiber_compressive_force_length_damping(self, *args)

    def append_fiber_compressive_force_length_damping(self, *args):
        """
        append_fiber_compressive_force_length_damping(Millard2012AccelerationMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_fiber_compressive_force_length_damping(self, *args)

    def constructProperty_fiber_compressive_force_length_damping(self, *args):
        """
        constructProperty_fiber_compressive_force_length_damping(Millard2012AccelerationMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_fiber_compressive_force_length_damping(self, *args)

    def get_fiber_compressive_force_length_damping(self, *args):
        """
        get_fiber_compressive_force_length_damping(Millard2012AccelerationMuscle self, int i) -> double const

        Parameters:
            i: int

        get_fiber_compressive_force_length_damping(Millard2012AccelerationMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_fiber_compressive_force_length_damping(self, *args)

    def upd_fiber_compressive_force_length_damping(self, *args):
        """
        upd_fiber_compressive_force_length_damping(Millard2012AccelerationMuscle self, int i) -> double

        Parameters:
            i: int

        upd_fiber_compressive_force_length_damping(Millard2012AccelerationMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_fiber_compressive_force_length_damping(self, *args)

    def set_fiber_compressive_force_length_damping(self, *args):
        """
        set_fiber_compressive_force_length_damping(Millard2012AccelerationMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_fiber_compressive_force_length_damping(Millard2012AccelerationMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_fiber_compressive_force_length_damping(self, *args)

    def copyProperty_fiber_compressive_force_cos_pennation_damping(self, *args):
        """
        copyProperty_fiber_compressive_force_cos_pennation_damping(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_fiber_compressive_force_cos_pennation_damping(self, *args)

    def append_fiber_compressive_force_cos_pennation_damping(self, *args):
        """
        append_fiber_compressive_force_cos_pennation_damping(Millard2012AccelerationMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_fiber_compressive_force_cos_pennation_damping(self, *args)

    def constructProperty_fiber_compressive_force_cos_pennation_damping(self, *args):
        """
        constructProperty_fiber_compressive_force_cos_pennation_damping(Millard2012AccelerationMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_fiber_compressive_force_cos_pennation_damping(self, *args)

    def get_fiber_compressive_force_cos_pennation_damping(self, *args):
        """
        get_fiber_compressive_force_cos_pennation_damping(Millard2012AccelerationMuscle self, int i) -> double const

        Parameters:
            i: int

        get_fiber_compressive_force_cos_pennation_damping(Millard2012AccelerationMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_fiber_compressive_force_cos_pennation_damping(self, *args)

    def upd_fiber_compressive_force_cos_pennation_damping(self, *args):
        """
        upd_fiber_compressive_force_cos_pennation_damping(Millard2012AccelerationMuscle self, int i) -> double

        Parameters:
            i: int

        upd_fiber_compressive_force_cos_pennation_damping(Millard2012AccelerationMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_fiber_compressive_force_cos_pennation_damping(self, *args)

    def set_fiber_compressive_force_cos_pennation_damping(self, *args):
        """
        set_fiber_compressive_force_cos_pennation_damping(Millard2012AccelerationMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_fiber_compressive_force_cos_pennation_damping(Millard2012AccelerationMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_fiber_compressive_force_cos_pennation_damping(self, *args)

    def copyProperty_tendon_force_length_damping(self, *args):
        """
        copyProperty_tendon_force_length_damping(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_tendon_force_length_damping(self, *args)

    def append_tendon_force_length_damping(self, *args):
        """
        append_tendon_force_length_damping(Millard2012AccelerationMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_tendon_force_length_damping(self, *args)

    def constructProperty_tendon_force_length_damping(self, *args):
        """
        constructProperty_tendon_force_length_damping(Millard2012AccelerationMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_tendon_force_length_damping(self, *args)

    def get_tendon_force_length_damping(self, *args):
        """
        get_tendon_force_length_damping(Millard2012AccelerationMuscle self, int i) -> double const

        Parameters:
            i: int

        get_tendon_force_length_damping(Millard2012AccelerationMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_tendon_force_length_damping(self, *args)

    def upd_tendon_force_length_damping(self, *args):
        """
        upd_tendon_force_length_damping(Millard2012AccelerationMuscle self, int i) -> double

        Parameters:
            i: int

        upd_tendon_force_length_damping(Millard2012AccelerationMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_tendon_force_length_damping(self, *args)

    def set_tendon_force_length_damping(self, *args):
        """
        set_tendon_force_length_damping(Millard2012AccelerationMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_tendon_force_length_damping(Millard2012AccelerationMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_tendon_force_length_damping(self, *args)

    def copyProperty_mass(self, *args):
        """
        copyProperty_mass(Millard2012AccelerationMuscle self, Millard2012AccelerationMuscle source)

        Parameters:
            source: OpenSim::Millard2012AccelerationMuscle::Self const &

        """
        return _opensim.Millard2012AccelerationMuscle_copyProperty_mass(self, *args)

    def append_mass(self, *args):
        """
        append_mass(Millard2012AccelerationMuscle self, double const & value) -> int

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_append_mass(self, *args)

    def constructProperty_mass(self, *args):
        """
        constructProperty_mass(Millard2012AccelerationMuscle self, double const & initValue)

        Parameters:
            initValue: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_constructProperty_mass(self, *args)

    def get_mass(self, *args):
        """
        get_mass(Millard2012AccelerationMuscle self, int i) -> double const

        Parameters:
            i: int

        get_mass(Millard2012AccelerationMuscle self) -> double const &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_get_mass(self, *args)

    def upd_mass(self, *args):
        """
        upd_mass(Millard2012AccelerationMuscle self, int i) -> double

        Parameters:
            i: int

        upd_mass(Millard2012AccelerationMuscle self) -> double &

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle *

        """
        return _opensim.Millard2012AccelerationMuscle_upd_mass(self, *args)

    def set_mass(self, *args):
        """
        set_mass(Millard2012AccelerationMuscle self, int i, double const & value)

        Parameters:
            i: int
            value: double const &

        set_mass(Millard2012AccelerationMuscle self, double const & value)

        Parameters:
            value: double const &

        """
        return _opensim.Millard2012AccelerationMuscle_set_mass(self, *args)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Millard2012AccelerationMuscle self) -> Millard2012AccelerationMuscle
        __init__(OpenSim::Millard2012AccelerationMuscle self, std::string const & aName, double aMaxIsometricForce, double aOptimalFiberLength, 
            double aTendonSlackLength, double aPennationAngle) -> Millard2012AccelerationMuscle

        Parameters:
            aName: std::string const &
            aMaxIsometricForce: double
            aOptimalFiberLength: double
            aTendonSlackLength: double
            aPennationAngle: double

        """
        this = _opensim.new_Millard2012AccelerationMuscle(*args)
        try: self.this.append(this)
        except: self.this = this
    def getFiberCompressiveForceLengthMultiplier(self, *args):
        """
        getFiberCompressiveForceLengthMultiplier(Millard2012AccelerationMuscle self, State s) -> double

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Millard2012AccelerationMuscle_getFiberCompressiveForceLengthMultiplier(self, *args)

    def getFiberCompressiveForceCosPennationMultiplier(self, *args):
        """
        getFiberCompressiveForceCosPennationMultiplier(Millard2012AccelerationMuscle self, State s) -> double

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Millard2012AccelerationMuscle_getFiberCompressiveForceCosPennationMultiplier(self, *args)

    def getTendonForceMultiplier(self, *args):
        """
        getTendonForceMultiplier(Millard2012AccelerationMuscle self, State s) -> double

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Millard2012AccelerationMuscle_getTendonForceMultiplier(self, *args)

    def getMass(self):
        """
        getMass(Millard2012AccelerationMuscle self) -> double

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_getMass(self)

    def getActivationModel(self):
        """
        getActivationModel(Millard2012AccelerationMuscle self) -> MuscleFirstOrderActivationDynamicModel

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_getActivationModel(self)

    def getPennationModel(self):
        """
        getPennationModel(Millard2012AccelerationMuscle self) -> MuscleFixedWidthPennationModel

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_getPennationModel(self)

    def getActiveForceLengthCurve(self):
        """
        getActiveForceLengthCurve(Millard2012AccelerationMuscle self) -> ActiveForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_getActiveForceLengthCurve(self)

    def getForceVelocityCurve(self):
        """
        getForceVelocityCurve(Millard2012AccelerationMuscle self) -> ForceVelocityCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_getForceVelocityCurve(self)

    def getFiberForceLengthCurve(self):
        """
        getFiberForceLengthCurve(Millard2012AccelerationMuscle self) -> FiberForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_getFiberForceLengthCurve(self)

    def getTendonForceLengthCurve(self):
        """
        getTendonForceLengthCurve(Millard2012AccelerationMuscle self) -> TendonForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_getTendonForceLengthCurve(self)

    def getFiberCompressiveForceLengthCurve(self):
        """
        getFiberCompressiveForceLengthCurve(Millard2012AccelerationMuscle self) -> FiberCompressiveForceLengthCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_getFiberCompressiveForceLengthCurve(self)

    def getFiberCompressiveForceCosPennationCurve(self):
        """
        getFiberCompressiveForceCosPennationCurve(Millard2012AccelerationMuscle self) -> FiberCompressiveForceCosPennationCurve

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_getFiberCompressiveForceCosPennationCurve(self)

    def getFiberStiffnessAlongTendon(self, *args):
        """
        getFiberStiffnessAlongTendon(Millard2012AccelerationMuscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Millard2012AccelerationMuscle_getFiberStiffnessAlongTendon(self, *args)

    def setActivationModel(self, *args):
        """
        setActivationModel(Millard2012AccelerationMuscle self, MuscleFirstOrderActivationDynamicModel aActivationMdl)

        Parameters:
            aActivationMdl: OpenSim::MuscleFirstOrderActivationDynamicModel &

        """
        return _opensim.Millard2012AccelerationMuscle_setActivationModel(self, *args)

    def setActiveForceLengthCurve(self, *args):
        """
        setActiveForceLengthCurve(Millard2012AccelerationMuscle self, ActiveForceLengthCurve aActiveForceLengthCurve)

        Parameters:
            aActiveForceLengthCurve: OpenSim::ActiveForceLengthCurve &

        """
        return _opensim.Millard2012AccelerationMuscle_setActiveForceLengthCurve(self, *args)

    def setForceVelocityCurve(self, *args):
        """
        setForceVelocityCurve(Millard2012AccelerationMuscle self, ForceVelocityCurve aForceVelocityCurve)

        Parameters:
            aForceVelocityCurve: OpenSim::ForceVelocityCurve &

        """
        return _opensim.Millard2012AccelerationMuscle_setForceVelocityCurve(self, *args)

    def setFiberForceLengthCurve(self, *args):
        """
        setFiberForceLengthCurve(Millard2012AccelerationMuscle self, FiberForceLengthCurve aFiberForceLengthCurve)

        Parameters:
            aFiberForceLengthCurve: OpenSim::FiberForceLengthCurve &

        """
        return _opensim.Millard2012AccelerationMuscle_setFiberForceLengthCurve(self, *args)

    def setTendonForceLengthCurve(self, *args):
        """
        setTendonForceLengthCurve(Millard2012AccelerationMuscle self, TendonForceLengthCurve aTendonForceLengthCurve)

        Parameters:
            aTendonForceLengthCurve: OpenSim::TendonForceLengthCurve &

        """
        return _opensim.Millard2012AccelerationMuscle_setTendonForceLengthCurve(self, *args)

    def setFiberCompressiveForceLengthCurve(self, *args):
        """
        setFiberCompressiveForceLengthCurve(Millard2012AccelerationMuscle self, FiberCompressiveForceLengthCurve aFiberCompressiveForceLengthCurve)

        Parameters:
            aFiberCompressiveForceLengthCurve: OpenSim::FiberCompressiveForceLengthCurve &

        """
        return _opensim.Millard2012AccelerationMuscle_setFiberCompressiveForceLengthCurve(self, *args)

    def setFiberCompressiveForceCosPennationCurve(self, *args):
        """
        setFiberCompressiveForceCosPennationCurve(Millard2012AccelerationMuscle self, FiberCompressiveForceCosPennationCurve aFiberCompressiveForceCosPennationCurve)

        Parameters:
            aFiberCompressiveForceCosPennationCurve: OpenSim::FiberCompressiveForceCosPennationCurve &

        """
        return _opensim.Millard2012AccelerationMuscle_setFiberCompressiveForceCosPennationCurve(self, *args)

    def setMass(self, *args):
        """
        setMass(Millard2012AccelerationMuscle self, double mass)

        Parameters:
            mass: double

        """
        return _opensim.Millard2012AccelerationMuscle_setMass(self, *args)

    def getDefaultActivation(self):
        """
        getDefaultActivation(Millard2012AccelerationMuscle self) -> double

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_getDefaultActivation(self)

    def getDefaultFiberLength(self):
        """
        getDefaultFiberLength(Millard2012AccelerationMuscle self) -> double

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_getDefaultFiberLength(self)

    def getDefaultFiberVelocity(self):
        """
        getDefaultFiberVelocity(Millard2012AccelerationMuscle self) -> double

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_getDefaultFiberVelocity(self)

    def getActivationRate(self, *args):
        """
        getActivationRate(Millard2012AccelerationMuscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Millard2012AccelerationMuscle_getActivationRate(self, *args)

    def getFiberVelocity(self, *args):
        """
        getFiberVelocity(Millard2012AccelerationMuscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Millard2012AccelerationMuscle_getFiberVelocity(self, *args)

    def getFiberAcceleration(self, *args):
        """
        getFiberAcceleration(Millard2012AccelerationMuscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Millard2012AccelerationMuscle_getFiberAcceleration(self, *args)

    def setDefaultActivation(self, *args):
        """
        setDefaultActivation(Millard2012AccelerationMuscle self, double activation)

        Parameters:
            activation: double

        """
        return _opensim.Millard2012AccelerationMuscle_setDefaultActivation(self, *args)

    def setDefaultFiberLength(self, *args):
        """
        setDefaultFiberLength(Millard2012AccelerationMuscle self, double fiberLength)

        Parameters:
            fiberLength: double

        """
        return _opensim.Millard2012AccelerationMuscle_setDefaultFiberLength(self, *args)

    def setDefaultFiberVelocity(self, *args):
        """
        setDefaultFiberVelocity(Millard2012AccelerationMuscle self, double fiberVelocity)

        Parameters:
            fiberVelocity: double

        """
        return _opensim.Millard2012AccelerationMuscle_setDefaultFiberVelocity(self, *args)

    def setActivation(self, *args):
        """
        setActivation(Millard2012AccelerationMuscle self, State s, double activation)

        Parameters:
            s: SimTK::State &
            activation: double

        """
        return _opensim.Millard2012AccelerationMuscle_setActivation(self, *args)

    def setFiberLength(self, *args):
        """
        setFiberLength(Millard2012AccelerationMuscle self, State s, double fiberLength)

        Parameters:
            s: SimTK::State &
            fiberLength: double

        """
        return _opensim.Millard2012AccelerationMuscle_setFiberLength(self, *args)

    def setFiberVelocity(self, *args):
        """
        setFiberVelocity(Millard2012AccelerationMuscle self, State s, double fiberVelocity)

        Parameters:
            s: SimTK::State &
            fiberVelocity: double

        """
        return _opensim.Millard2012AccelerationMuscle_setFiberVelocity(self, *args)

    def getStateVariableNames(self):
        """
        getStateVariableNames(Millard2012AccelerationMuscle self) -> ArrayStr

        Parameters:
            self: OpenSim::Millard2012AccelerationMuscle const *

        """
        return _opensim.Millard2012AccelerationMuscle_getStateVariableNames(self)

    def getStateVariableSystemIndex(self, *args):
        """
        getStateVariableSystemIndex(Millard2012AccelerationMuscle self, std::string const & stateVariableName) -> SimTK::SystemYIndex

        Parameters:
            stateVariableName: std::string const &

        """
        return _opensim.Millard2012AccelerationMuscle_getStateVariableSystemIndex(self, *args)

    def computeActuation(self, *args):
        """
        computeActuation(Millard2012AccelerationMuscle self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.Millard2012AccelerationMuscle_computeActuation(self, *args)

    def computeInitialFiberEquilibrium(self, *args):
        """
        computeInitialFiberEquilibrium(Millard2012AccelerationMuscle self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.Millard2012AccelerationMuscle_computeInitialFiberEquilibrium(self, *args)

    def calcInextensibleTendonActiveFiberForce(self, *args):
        """
        calcInextensibleTendonActiveFiberForce(Millard2012AccelerationMuscle self, State s, double aActivation) -> double

        Parameters:
            s: SimTK::State &
            aActivation: double

        """
        return _opensim.Millard2012AccelerationMuscle_calcInextensibleTendonActiveFiberForce(self, *args)

    def calcActiveFiberForceAlongTendon(self, *args):
        """
        calcActiveFiberForceAlongTendon(Millard2012AccelerationMuscle self, double activation, double fiberLength, double fiberVelocity) -> double

        Parameters:
            activation: double
            fiberLength: double
            fiberVelocity: double

        """
        return _opensim.Millard2012AccelerationMuscle_calcActiveFiberForceAlongTendon(self, *args)

    __swig_destroy__ = _opensim.delete_Millard2012AccelerationMuscle
    __del__ = lambda self : None;
Millard2012AccelerationMuscle_swigregister = _opensim.Millard2012AccelerationMuscle_swigregister
Millard2012AccelerationMuscle_swigregister(Millard2012AccelerationMuscle)

def Millard2012AccelerationMuscle_safeDownCast(*args):
  """
    Millard2012AccelerationMuscle_safeDownCast(OpenSimObject obj) -> Millard2012AccelerationMuscle

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Millard2012AccelerationMuscle_safeDownCast(*args)

def Millard2012AccelerationMuscle_getClassName():
  """Millard2012AccelerationMuscle_getClassName() -> std::string const &"""
  return _opensim.Millard2012AccelerationMuscle_getClassName()

class IKTask(OpenSimObject):
    """Proxy of C++ OpenSim::IKTask class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, IKTask, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, IKTask, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> IKTask

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.IKTask_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(IKTask self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.IKTask_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.IKTask_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(IKTask self) -> IKTask

        Parameters:
            self: OpenSim::IKTask const *

        """
        return _opensim.IKTask_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(IKTask self) -> std::string const &

        Parameters:
            self: OpenSim::IKTask const *

        """
        return _opensim.IKTask_getConcreteClassName(self)

    def getApply(self):
        """
        getApply(IKTask self) -> bool

        Parameters:
            self: OpenSim::IKTask const *

        """
        return _opensim.IKTask_getApply(self)

    def setApply(self, *args):
        """
        setApply(IKTask self, bool aApply)

        Parameters:
            aApply: bool

        """
        return _opensim.IKTask_setApply(self, *args)

    def getWeight(self):
        """
        getWeight(IKTask self) -> double

        Parameters:
            self: OpenSim::IKTask *

        """
        return _opensim.IKTask_getWeight(self)

    def setWeight(self, *args):
        """
        setWeight(IKTask self, double weight)

        Parameters:
            weight: double

        """
        return _opensim.IKTask_setWeight(self, *args)

    __swig_destroy__ = _opensim.delete_IKTask
    __del__ = lambda self : None;
IKTask_swigregister = _opensim.IKTask_swigregister
IKTask_swigregister(IKTask)

def IKTask_safeDownCast(*args):
  """
    IKTask_safeDownCast(OpenSimObject obj) -> IKTask

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.IKTask_safeDownCast(*args)

def IKTask_getClassName():
  """IKTask_getClassName() -> std::string const &"""
  return _opensim.IKTask_getClassName()

class SetIKTasks(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::IKTask)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetIKTasks, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetIKTasks, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetIKTasks

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetIKTasks_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetIKTasks self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetIKTasks_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetIKTasks_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetIKTasks self) -> SetIKTasks

        Parameters:
            self: OpenSim::Set< OpenSim::IKTask > const *

        """
        return _opensim.SetIKTasks_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetIKTasks self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::IKTask > const *

        """
        return _opensim.SetIKTasks_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetIKTasks
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::IKTask)> self) -> SetIKTasks
        __init__(OpenSim::Set<(OpenSim::IKTask)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetIKTasks

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::IKTask)> self, std::string const & aFileName) -> SetIKTasks

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::IKTask)> self, SetIKTasks aSet) -> SetIKTasks

        Parameters:
            aSet: OpenSim::Set< OpenSim::IKTask > const &

        """
        this = _opensim.new_SetIKTasks(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetIKTasks self)

        Parameters:
            self: OpenSim::Set< OpenSim::IKTask > *

        """
        return _opensim.SetIKTasks_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetIKTasks self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetIKTasks_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetIKTasks self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetIKTasks_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetIKTasks self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::IKTask > const *

        """
        return _opensim.SetIKTasks_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetIKTasks self, IKTask aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::IKTask const *
            aStartIndex: int

        getIndex(SetIKTasks self, IKTask aObject) -> int

        Parameters:
            aObject: OpenSim::IKTask const *

        getIndex(SetIKTasks self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetIKTasks self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetIKTasks_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetIKTasks self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetIKTasks_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetIKTasks self, IKTask aObject) -> bool

        Parameters:
            aObject: OpenSim::IKTask *

        """
        return _opensim.SetIKTasks_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetIKTasks self, IKTask aObject) -> bool

        Parameters:
            aObject: OpenSim::IKTask const &

        """
        return _opensim.SetIKTasks_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetIKTasks self, int aIndex, IKTask aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::IKTask *

        """
        return _opensim.SetIKTasks_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetIKTasks self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetIKTasks self, IKTask aObject) -> bool

        Parameters:
            aObject: OpenSim::IKTask const *

        """
        return _opensim.SetIKTasks_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetIKTasks self)

        Parameters:
            self: OpenSim::Set< OpenSim::IKTask > *

        """
        return _opensim.SetIKTasks_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetIKTasks self, int aIndex, IKTask aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::IKTask *
            preserveGroups: bool

        set(SetIKTasks self, int aIndex, IKTask aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::IKTask *

        """
        return _opensim.SetIKTasks_set(self, *args)

    def get(self, *args):
        """
        get(SetIKTasks self, int aIndex) -> IKTask

        Parameters:
            aIndex: int

        get(SetIKTasks self, std::string const & aName) -> IKTask

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetIKTasks_get(self, *args)

    def contains(self, *args):
        """
        contains(SetIKTasks self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetIKTasks_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetIKTasks self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetIKTasks_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetIKTasks self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::IKTask > const *

        """
        return _opensim.SetIKTasks_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetIKTasks self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetIKTasks_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetIKTasks self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetIKTasks_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetIKTasks self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetIKTasks_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetIKTasks self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetIKTasks_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetIKTasks self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetIKTasks_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetIKTasks self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetIKTasks self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetIKTasks_getGroup(self, *args)

SetIKTasks_swigregister = _opensim.SetIKTasks_swigregister
SetIKTasks_swigregister(SetIKTasks)

def SetIKTasks_safeDownCast(*args):
  """
    SetIKTasks_safeDownCast(OpenSimObject obj) -> SetIKTasks

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetIKTasks_safeDownCast(*args)

def SetIKTasks_getClassName():
  """SetIKTasks_getClassName() -> std::string const &"""
  return _opensim.SetIKTasks_getClassName()

class SetMarkerWeights(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(MarkerWeight)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetMarkerWeights, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetMarkerWeights, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetMarkerWeights

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetMarkerWeights_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetMarkerWeights self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetMarkerWeights_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetMarkerWeights_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetMarkerWeights self) -> SetMarkerWeights

        Parameters:
            self: OpenSim::Set< MarkerWeight > const *

        """
        return _opensim.SetMarkerWeights_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetMarkerWeights self) -> std::string const &

        Parameters:
            self: OpenSim::Set< MarkerWeight > const *

        """
        return _opensim.SetMarkerWeights_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetMarkerWeights
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(MarkerWeight)> self) -> SetMarkerWeights
        __init__(OpenSim::Set<(MarkerWeight)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetMarkerWeights

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(MarkerWeight)> self, std::string const & aFileName) -> SetMarkerWeights

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(MarkerWeight)> self, SetMarkerWeights aSet) -> SetMarkerWeights

        Parameters:
            aSet: OpenSim::Set< MarkerWeight > const &

        """
        this = _opensim.new_SetMarkerWeights(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetMarkerWeights self)

        Parameters:
            self: OpenSim::Set< MarkerWeight > *

        """
        return _opensim.SetMarkerWeights_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetMarkerWeights self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetMarkerWeights_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetMarkerWeights self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetMarkerWeights_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetMarkerWeights self) -> int

        Parameters:
            self: OpenSim::Set< MarkerWeight > const *

        """
        return _opensim.SetMarkerWeights_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetMarkerWeights self, MarkerWeight const * aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: MarkerWeight const *
            aStartIndex: int

        getIndex(SetMarkerWeights self, MarkerWeight const * aObject) -> int

        Parameters:
            aObject: MarkerWeight const *

        getIndex(SetMarkerWeights self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetMarkerWeights self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMarkerWeights_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetMarkerWeights self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMarkerWeights_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetMarkerWeights self, MarkerWeight * aObject) -> bool

        Parameters:
            aObject: MarkerWeight *

        """
        return _opensim.SetMarkerWeights_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetMarkerWeights self, MarkerWeight const & aObject) -> bool

        Parameters:
            aObject: MarkerWeight const &

        """
        return _opensim.SetMarkerWeights_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetMarkerWeights self, int aIndex, MarkerWeight * aObject) -> bool

        Parameters:
            aIndex: int
            aObject: MarkerWeight *

        """
        return _opensim.SetMarkerWeights_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetMarkerWeights self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetMarkerWeights self, MarkerWeight const * aObject) -> bool

        Parameters:
            aObject: MarkerWeight const *

        """
        return _opensim.SetMarkerWeights_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetMarkerWeights self)

        Parameters:
            self: OpenSim::Set< MarkerWeight > *

        """
        return _opensim.SetMarkerWeights_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetMarkerWeights self, int aIndex, MarkerWeight * aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: MarkerWeight *
            preserveGroups: bool

        set(SetMarkerWeights self, int aIndex, MarkerWeight * aObject) -> bool

        Parameters:
            aIndex: int
            aObject: MarkerWeight *

        """
        return _opensim.SetMarkerWeights_set(self, *args)

    def get(self, *args):
        """
        get(SetMarkerWeights self, int aIndex) -> MarkerWeight

        Parameters:
            aIndex: int

        get(SetMarkerWeights self, std::string const & aName) -> MarkerWeight &

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMarkerWeights_get(self, *args)

    def contains(self, *args):
        """
        contains(SetMarkerWeights self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMarkerWeights_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetMarkerWeights self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMarkerWeights_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetMarkerWeights self) -> int

        Parameters:
            self: OpenSim::Set< MarkerWeight > const *

        """
        return _opensim.SetMarkerWeights_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetMarkerWeights self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetMarkerWeights_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetMarkerWeights self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetMarkerWeights_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetMarkerWeights self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetMarkerWeights_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetMarkerWeights self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetMarkerWeights_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetMarkerWeights self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMarkerWeights_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetMarkerWeights self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetMarkerWeights self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetMarkerWeights_getGroup(self, *args)

SetMarkerWeights_swigregister = _opensim.SetMarkerWeights_swigregister
SetMarkerWeights_swigregister(SetMarkerWeights)

def SetMarkerWeights_safeDownCast(*args):
  """
    SetMarkerWeights_safeDownCast(OpenSimObject obj) -> SetMarkerWeights

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetMarkerWeights_safeDownCast(*args)

def SetMarkerWeights_getClassName():
  """SetMarkerWeights_getClassName() -> std::string const &"""
  return _opensim.SetMarkerWeights_getClassName()

class IKMarkerTask(IKTask):
    """Proxy of C++ OpenSim::IKMarkerTask class"""
    __swig_setmethods__ = {}
    for _s in [IKTask]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, IKMarkerTask, name, value)
    __swig_getmethods__ = {}
    for _s in [IKTask]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, IKMarkerTask, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> IKMarkerTask

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.IKMarkerTask_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(IKMarkerTask self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.IKMarkerTask_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.IKMarkerTask_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(IKMarkerTask self) -> IKMarkerTask

        Parameters:
            self: OpenSim::IKMarkerTask const *

        """
        return _opensim.IKMarkerTask_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(IKMarkerTask self) -> std::string const &

        Parameters:
            self: OpenSim::IKMarkerTask const *

        """
        return _opensim.IKMarkerTask_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::IKMarkerTask self) -> IKMarkerTask
        __init__(OpenSim::IKMarkerTask self, IKMarkerTask aIKMarkerTask) -> IKMarkerTask

        Parameters:
            aIKMarkerTask: OpenSim::IKMarkerTask const &

        """
        this = _opensim.new_IKMarkerTask(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_IKMarkerTask
    __del__ = lambda self : None;
IKMarkerTask_swigregister = _opensim.IKMarkerTask_swigregister
IKMarkerTask_swigregister(IKMarkerTask)

def IKMarkerTask_safeDownCast(*args):
  """
    IKMarkerTask_safeDownCast(OpenSimObject obj) -> IKMarkerTask

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.IKMarkerTask_safeDownCast(*args)

def IKMarkerTask_getClassName():
  """IKMarkerTask_getClassName() -> std::string const &"""
  return _opensim.IKMarkerTask_getClassName()

class IKCoordinateTask(IKTask):
    """Proxy of C++ OpenSim::IKCoordinateTask class"""
    __swig_setmethods__ = {}
    for _s in [IKTask]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, IKCoordinateTask, name, value)
    __swig_getmethods__ = {}
    for _s in [IKTask]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, IKCoordinateTask, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> IKCoordinateTask

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.IKCoordinateTask_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(IKCoordinateTask self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.IKCoordinateTask_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.IKCoordinateTask_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(IKCoordinateTask self) -> IKCoordinateTask

        Parameters:
            self: OpenSim::IKCoordinateTask const *

        """
        return _opensim.IKCoordinateTask_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(IKCoordinateTask self) -> std::string const &

        Parameters:
            self: OpenSim::IKCoordinateTask const *

        """
        return _opensim.IKCoordinateTask_getConcreteClassName(self)

    DefaultValue = _opensim.IKCoordinateTask_DefaultValue
    ManualValue = _opensim.IKCoordinateTask_ManualValue
    FromFile = _opensim.IKCoordinateTask_FromFile
    def __init__(self, *args): 
        """
        __init__(OpenSim::IKCoordinateTask self) -> IKCoordinateTask
        __init__(OpenSim::IKCoordinateTask self, IKCoordinateTask aIKCoordinateTask) -> IKCoordinateTask

        Parameters:
            aIKCoordinateTask: OpenSim::IKCoordinateTask const &

        """
        this = _opensim.new_IKCoordinateTask(*args)
        try: self.this.append(this)
        except: self.this = this
    def setValueType(self, *args):
        """
        setValueType(IKCoordinateTask self, OpenSim::IKCoordinateTask::ValueType type)

        Parameters:
            type: enum OpenSim::IKCoordinateTask::ValueType

        """
        return _opensim.IKCoordinateTask_setValueType(self, *args)

    def getValueType(self):
        """
        getValueType(IKCoordinateTask self) -> OpenSim::IKCoordinateTask::ValueType

        Parameters:
            self: OpenSim::IKCoordinateTask const *

        """
        return _opensim.IKCoordinateTask_getValueType(self)

    def getValue(self):
        """
        getValue(IKCoordinateTask self) -> double

        Parameters:
            self: OpenSim::IKCoordinateTask const *

        """
        return _opensim.IKCoordinateTask_getValue(self)

    def setValue(self, *args):
        """
        setValue(IKCoordinateTask self, double value)

        Parameters:
            value: double

        """
        return _opensim.IKCoordinateTask_setValue(self, *args)

    def ValueTypeToString(*args):
        """
        ValueTypeToString(OpenSim::IKCoordinateTask::ValueType type) -> std::string

        Parameters:
            type: enum OpenSim::IKCoordinateTask::ValueType

        """
        return _opensim.IKCoordinateTask_ValueTypeToString(*args)

    if _newclass:ValueTypeToString = staticmethod(ValueTypeToString)
    __swig_getmethods__["ValueTypeToString"] = lambda x: ValueTypeToString
    def StringToValueType(*args):
        """
        StringToValueType(std::string const & str) -> OpenSim::IKCoordinateTask::ValueType

        Parameters:
            str: std::string const &

        """
        return _opensim.IKCoordinateTask_StringToValueType(*args)

    if _newclass:StringToValueType = staticmethod(StringToValueType)
    __swig_getmethods__["StringToValueType"] = lambda x: StringToValueType
    __swig_destroy__ = _opensim.delete_IKCoordinateTask
    __del__ = lambda self : None;
IKCoordinateTask_swigregister = _opensim.IKCoordinateTask_swigregister
IKCoordinateTask_swigregister(IKCoordinateTask)

def IKCoordinateTask_safeDownCast(*args):
  """
    IKCoordinateTask_safeDownCast(OpenSimObject obj) -> IKCoordinateTask

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.IKCoordinateTask_safeDownCast(*args)

def IKCoordinateTask_getClassName():
  """IKCoordinateTask_getClassName() -> std::string const &"""
  return _opensim.IKCoordinateTask_getClassName()

def IKCoordinateTask_ValueTypeToString(*args):
  """
    IKCoordinateTask_ValueTypeToString(OpenSim::IKCoordinateTask::ValueType type) -> std::string

    Parameters:
        type: enum OpenSim::IKCoordinateTask::ValueType

    """
  return _opensim.IKCoordinateTask_ValueTypeToString(*args)

def IKCoordinateTask_StringToValueType(*args):
  """
    IKCoordinateTask_StringToValueType(std::string const & str) -> OpenSim::IKCoordinateTask::ValueType

    Parameters:
        str: std::string const &

    """
  return _opensim.IKCoordinateTask_StringToValueType(*args)

class IKTaskSet(SetIKTasks):
    """Proxy of C++ OpenSim::IKTaskSet class"""
    __swig_setmethods__ = {}
    for _s in [SetIKTasks]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, IKTaskSet, name, value)
    __swig_getmethods__ = {}
    for _s in [SetIKTasks]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, IKTaskSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> IKTaskSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.IKTaskSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(IKTaskSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.IKTaskSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.IKTaskSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(IKTaskSet self) -> IKTaskSet

        Parameters:
            self: OpenSim::IKTaskSet const *

        """
        return _opensim.IKTaskSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(IKTaskSet self) -> std::string const &

        Parameters:
            self: OpenSim::IKTaskSet const *

        """
        return _opensim.IKTaskSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::IKTaskSet self) -> IKTaskSet
        __init__(OpenSim::IKTaskSet self, IKTaskSet aIKTaskSet) -> IKTaskSet

        Parameters:
            aIKTaskSet: OpenSim::IKTaskSet const &

        __init__(OpenSim::IKTaskSet self, std::string const & aFileName) -> IKTaskSet

        Parameters:
            aFileName: std::string const &

        """
        this = _opensim.new_IKTaskSet(*args)
        try: self.this.append(this)
        except: self.this = this
    def createMarkerWeightSet(self, *args):
        """
        createMarkerWeightSet(IKTaskSet self, SetMarkerWeights aWeights)

        Parameters:
            aWeights: OpenSim::Set< MarkerWeight > &

        """
        return _opensim.IKTaskSet_createMarkerWeightSet(self, *args)

    def adoptAndAppend(self, aIKTask):
        aIKTask._markAdopted()
        return super(IKTaskSet, self).adoptAndAppend(aIKTask)

    __swig_destroy__ = _opensim.delete_IKTaskSet
    __del__ = lambda self : None;
IKTaskSet_swigregister = _opensim.IKTaskSet_swigregister
IKTaskSet_swigregister(IKTaskSet)

def IKTaskSet_safeDownCast(*args):
  """
    IKTaskSet_safeDownCast(OpenSimObject obj) -> IKTaskSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.IKTaskSet_safeDownCast(*args)

def IKTaskSet_getClassName():
  """IKTaskSet_getClassName() -> std::string const &"""
  return _opensim.IKTaskSet_getClassName()

class MarkerPair(OpenSimObject):
    """Proxy of C++ OpenSim::MarkerPair class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MarkerPair, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MarkerPair, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MarkerPair

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MarkerPair_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MarkerPair self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MarkerPair_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MarkerPair_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MarkerPair self) -> MarkerPair

        Parameters:
            self: OpenSim::MarkerPair const *

        """
        return _opensim.MarkerPair_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MarkerPair self) -> std::string const &

        Parameters:
            self: OpenSim::MarkerPair const *

        """
        return _opensim.MarkerPair_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MarkerPair self) -> MarkerPair
        __init__(OpenSim::MarkerPair self, MarkerPair aMarkerPair) -> MarkerPair

        Parameters:
            aMarkerPair: OpenSim::MarkerPair const &

        __init__(OpenSim::MarkerPair self, std::string const & aName1, std::string const & aName2) -> MarkerPair

        Parameters:
            aName1: std::string const &
            aName2: std::string const &

        """
        this = _opensim.new_MarkerPair(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_MarkerPair
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(MarkerPair self, MarkerPair aMarkerPair)

        Parameters:
            aMarkerPair: OpenSim::MarkerPair const &

        """
        return _opensim.MarkerPair_copyData(self, *args)

    def getMarkerNames(self, *args):
        """
        getMarkerNames(MarkerPair self, std::string & aName1, std::string & aName2)

        Parameters:
            aName1: std::string &
            aName2: std::string &

        """
        return _opensim.MarkerPair_getMarkerNames(self, *args)

    def getMarkerName(self, *args):
        """
        getMarkerName(MarkerPair self, int i) -> std::string const &

        Parameters:
            i: int

        """
        return _opensim.MarkerPair_getMarkerName(self, *args)

    def setMarkerName(self, *args):
        """
        setMarkerName(MarkerPair self, int i, std::string const & aName)

        Parameters:
            i: int
            aName: std::string const &

        """
        return _opensim.MarkerPair_setMarkerName(self, *args)

MarkerPair_swigregister = _opensim.MarkerPair_swigregister
MarkerPair_swigregister(MarkerPair)

def MarkerPair_safeDownCast(*args):
  """
    MarkerPair_safeDownCast(OpenSimObject obj) -> MarkerPair

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MarkerPair_safeDownCast(*args)

def MarkerPair_getClassName():
  """MarkerPair_getClassName() -> std::string const &"""
  return _opensim.MarkerPair_getClassName()

class SetMarkerPairs(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::MarkerPair)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetMarkerPairs, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetMarkerPairs, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetMarkerPairs

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetMarkerPairs_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetMarkerPairs self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetMarkerPairs_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetMarkerPairs_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetMarkerPairs self) -> SetMarkerPairs

        Parameters:
            self: OpenSim::Set< OpenSim::MarkerPair > const *

        """
        return _opensim.SetMarkerPairs_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetMarkerPairs self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::MarkerPair > const *

        """
        return _opensim.SetMarkerPairs_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetMarkerPairs
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::MarkerPair)> self) -> SetMarkerPairs
        __init__(OpenSim::Set<(OpenSim::MarkerPair)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetMarkerPairs

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::MarkerPair)> self, std::string const & aFileName) -> SetMarkerPairs

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::MarkerPair)> self, SetMarkerPairs aSet) -> SetMarkerPairs

        Parameters:
            aSet: OpenSim::Set< OpenSim::MarkerPair > const &

        """
        this = _opensim.new_SetMarkerPairs(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetMarkerPairs self)

        Parameters:
            self: OpenSim::Set< OpenSim::MarkerPair > *

        """
        return _opensim.SetMarkerPairs_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetMarkerPairs self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetMarkerPairs_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetMarkerPairs self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetMarkerPairs_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetMarkerPairs self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::MarkerPair > const *

        """
        return _opensim.SetMarkerPairs_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetMarkerPairs self, MarkerPair aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::MarkerPair const *
            aStartIndex: int

        getIndex(SetMarkerPairs self, MarkerPair aObject) -> int

        Parameters:
            aObject: OpenSim::MarkerPair const *

        getIndex(SetMarkerPairs self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetMarkerPairs self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMarkerPairs_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetMarkerPairs self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMarkerPairs_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetMarkerPairs self, MarkerPair aObject) -> bool

        Parameters:
            aObject: OpenSim::MarkerPair *

        """
        return _opensim.SetMarkerPairs_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetMarkerPairs self, MarkerPair aObject) -> bool

        Parameters:
            aObject: OpenSim::MarkerPair const &

        """
        return _opensim.SetMarkerPairs_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetMarkerPairs self, int aIndex, MarkerPair aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::MarkerPair *

        """
        return _opensim.SetMarkerPairs_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetMarkerPairs self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetMarkerPairs self, MarkerPair aObject) -> bool

        Parameters:
            aObject: OpenSim::MarkerPair const *

        """
        return _opensim.SetMarkerPairs_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetMarkerPairs self)

        Parameters:
            self: OpenSim::Set< OpenSim::MarkerPair > *

        """
        return _opensim.SetMarkerPairs_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetMarkerPairs self, int aIndex, MarkerPair aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::MarkerPair *
            preserveGroups: bool

        set(SetMarkerPairs self, int aIndex, MarkerPair aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::MarkerPair *

        """
        return _opensim.SetMarkerPairs_set(self, *args)

    def get(self, *args):
        """
        get(SetMarkerPairs self, int aIndex) -> MarkerPair

        Parameters:
            aIndex: int

        get(SetMarkerPairs self, std::string const & aName) -> MarkerPair

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMarkerPairs_get(self, *args)

    def contains(self, *args):
        """
        contains(SetMarkerPairs self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMarkerPairs_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetMarkerPairs self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMarkerPairs_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetMarkerPairs self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::MarkerPair > const *

        """
        return _opensim.SetMarkerPairs_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetMarkerPairs self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetMarkerPairs_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetMarkerPairs self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetMarkerPairs_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetMarkerPairs self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetMarkerPairs_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetMarkerPairs self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetMarkerPairs_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetMarkerPairs self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMarkerPairs_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetMarkerPairs self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetMarkerPairs self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetMarkerPairs_getGroup(self, *args)

SetMarkerPairs_swigregister = _opensim.SetMarkerPairs_swigregister
SetMarkerPairs_swigregister(SetMarkerPairs)

def SetMarkerPairs_safeDownCast(*args):
  """
    SetMarkerPairs_safeDownCast(OpenSimObject obj) -> SetMarkerPairs

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetMarkerPairs_safeDownCast(*args)

def SetMarkerPairs_getClassName():
  """SetMarkerPairs_getClassName() -> std::string const &"""
  return _opensim.SetMarkerPairs_getClassName()

class MarkerPairSet(SetMarkerPairs):
    """Proxy of C++ OpenSim::MarkerPairSet class"""
    __swig_setmethods__ = {}
    for _s in [SetMarkerPairs]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MarkerPairSet, name, value)
    __swig_getmethods__ = {}
    for _s in [SetMarkerPairs]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MarkerPairSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MarkerPairSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MarkerPairSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MarkerPairSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MarkerPairSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MarkerPairSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MarkerPairSet self) -> MarkerPairSet

        Parameters:
            self: OpenSim::MarkerPairSet const *

        """
        return _opensim.MarkerPairSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MarkerPairSet self) -> std::string const &

        Parameters:
            self: OpenSim::MarkerPairSet const *

        """
        return _opensim.MarkerPairSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MarkerPairSet self) -> MarkerPairSet
        __init__(OpenSim::MarkerPairSet self, MarkerPairSet aSimmMarkerPairSet) -> MarkerPairSet

        Parameters:
            aSimmMarkerPairSet: OpenSim::MarkerPairSet const &

        """
        this = _opensim.new_MarkerPairSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_MarkerPairSet
    __del__ = lambda self : None;
    def adoptAndAppend(self, aMarkerPair):
        aMarkerPair._markAdopted()
        return super(MarkerPairSet, self).adoptAndAppend(aMarkerPair)

MarkerPairSet_swigregister = _opensim.MarkerPairSet_swigregister
MarkerPairSet_swigregister(MarkerPairSet)

def MarkerPairSet_safeDownCast(*args):
  """
    MarkerPairSet_safeDownCast(OpenSimObject obj) -> MarkerPairSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MarkerPairSet_safeDownCast(*args)

def MarkerPairSet_getClassName():
  """MarkerPairSet_getClassName() -> std::string const &"""
  return _opensim.MarkerPairSet_getClassName()

class Measurement(OpenSimObject):
    """Proxy of C++ OpenSim::Measurement class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Measurement, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Measurement, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Measurement

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Measurement_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Measurement self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Measurement_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Measurement_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Measurement self) -> Measurement

        Parameters:
            self: OpenSim::Measurement const *

        """
        return _opensim.Measurement_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Measurement self) -> std::string const &

        Parameters:
            self: OpenSim::Measurement const *

        """
        return _opensim.Measurement_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::Measurement self) -> Measurement
        __init__(OpenSim::Measurement self, Measurement aMeasurement) -> Measurement

        Parameters:
            aMeasurement: OpenSim::Measurement const &

        """
        this = _opensim.new_Measurement(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_Measurement
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(Measurement self, Measurement aMeasurement)

        Parameters:
            aMeasurement: OpenSim::Measurement const &

        """
        return _opensim.Measurement_copyData(self, *args)

    def getBodyScaleSet(self):
        """
        getBodyScaleSet(Measurement self) -> BodyScaleSet

        Parameters:
            self: OpenSim::Measurement *

        """
        return _opensim.Measurement_getBodyScaleSet(self)

    def getMarkerPairSet(self):
        """
        getMarkerPairSet(Measurement self) -> MarkerPairSet

        Parameters:
            self: OpenSim::Measurement *

        """
        return _opensim.Measurement_getMarkerPairSet(self)

    def getNumMarkerPairs(self):
        """
        getNumMarkerPairs(Measurement self) -> int

        Parameters:
            self: OpenSim::Measurement const *

        """
        return _opensim.Measurement_getNumMarkerPairs(self)

    def getMarkerPair(self, *args):
        """
        getMarkerPair(Measurement self, int aIndex) -> MarkerPair

        Parameters:
            aIndex: int

        """
        return _opensim.Measurement_getMarkerPair(self, *args)

    def getApply(self):
        """
        getApply(Measurement self) -> bool

        Parameters:
            self: OpenSim::Measurement const *

        """
        return _opensim.Measurement_getApply(self)

    def setApply(self, *args):
        """
        setApply(Measurement self, bool aApply)

        Parameters:
            aApply: bool

        """
        return _opensim.Measurement_setApply(self, *args)

    def applyScaleFactor(self, *args):
        """
        applyScaleFactor(Measurement self, double aFactor, ScaleSet aScaleSet)

        Parameters:
            aFactor: double
            aScaleSet: OpenSim::ScaleSet &

        """
        return _opensim.Measurement_applyScaleFactor(self, *args)

    def registerTypes():
        """registerTypes()"""
        return _opensim.Measurement_registerTypes()

    if _newclass:registerTypes = staticmethod(registerTypes)
    __swig_getmethods__["registerTypes"] = lambda x: registerTypes
Measurement_swigregister = _opensim.Measurement_swigregister
Measurement_swigregister(Measurement)

def Measurement_safeDownCast(*args):
  """
    Measurement_safeDownCast(OpenSimObject obj) -> Measurement

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Measurement_safeDownCast(*args)

def Measurement_getClassName():
  """Measurement_getClassName() -> std::string const &"""
  return _opensim.Measurement_getClassName()

def Measurement_registerTypes():
  """Measurement_registerTypes()"""
  return _opensim.Measurement_registerTypes()

class SetMeasurements(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::Measurement)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetMeasurements, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetMeasurements, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetMeasurements

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetMeasurements_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetMeasurements self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetMeasurements_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetMeasurements_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetMeasurements self) -> SetMeasurements

        Parameters:
            self: OpenSim::Set< OpenSim::Measurement > const *

        """
        return _opensim.SetMeasurements_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetMeasurements self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::Measurement > const *

        """
        return _opensim.SetMeasurements_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetMeasurements
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::Measurement)> self) -> SetMeasurements
        __init__(OpenSim::Set<(OpenSim::Measurement)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetMeasurements

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::Measurement)> self, std::string const & aFileName) -> SetMeasurements

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::Measurement)> self, SetMeasurements aSet) -> SetMeasurements

        Parameters:
            aSet: OpenSim::Set< OpenSim::Measurement > const &

        """
        this = _opensim.new_SetMeasurements(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetMeasurements self)

        Parameters:
            self: OpenSim::Set< OpenSim::Measurement > *

        """
        return _opensim.SetMeasurements_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetMeasurements self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetMeasurements_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetMeasurements self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetMeasurements_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetMeasurements self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Measurement > const *

        """
        return _opensim.SetMeasurements_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetMeasurements self, Measurement aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::Measurement const *
            aStartIndex: int

        getIndex(SetMeasurements self, Measurement aObject) -> int

        Parameters:
            aObject: OpenSim::Measurement const *

        getIndex(SetMeasurements self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetMeasurements self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMeasurements_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetMeasurements self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMeasurements_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetMeasurements self, Measurement aObject) -> bool

        Parameters:
            aObject: OpenSim::Measurement *

        """
        return _opensim.SetMeasurements_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetMeasurements self, Measurement aObject) -> bool

        Parameters:
            aObject: OpenSim::Measurement const &

        """
        return _opensim.SetMeasurements_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetMeasurements self, int aIndex, Measurement aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Measurement *

        """
        return _opensim.SetMeasurements_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetMeasurements self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetMeasurements self, Measurement aObject) -> bool

        Parameters:
            aObject: OpenSim::Measurement const *

        """
        return _opensim.SetMeasurements_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetMeasurements self)

        Parameters:
            self: OpenSim::Set< OpenSim::Measurement > *

        """
        return _opensim.SetMeasurements_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetMeasurements self, int aIndex, Measurement aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Measurement *
            preserveGroups: bool

        set(SetMeasurements self, int aIndex, Measurement aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::Measurement *

        """
        return _opensim.SetMeasurements_set(self, *args)

    def get(self, *args):
        """
        get(SetMeasurements self, int aIndex) -> Measurement

        Parameters:
            aIndex: int

        get(SetMeasurements self, std::string const & aName) -> Measurement

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMeasurements_get(self, *args)

    def contains(self, *args):
        """
        contains(SetMeasurements self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetMeasurements_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetMeasurements self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMeasurements_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetMeasurements self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::Measurement > const *

        """
        return _opensim.SetMeasurements_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetMeasurements self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetMeasurements_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetMeasurements self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetMeasurements_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetMeasurements self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetMeasurements_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetMeasurements self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetMeasurements_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetMeasurements self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetMeasurements_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetMeasurements self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetMeasurements self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetMeasurements_getGroup(self, *args)

SetMeasurements_swigregister = _opensim.SetMeasurements_swigregister
SetMeasurements_swigregister(SetMeasurements)

def SetMeasurements_safeDownCast(*args):
  """
    SetMeasurements_safeDownCast(OpenSimObject obj) -> SetMeasurements

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetMeasurements_safeDownCast(*args)

def SetMeasurements_getClassName():
  """SetMeasurements_getClassName() -> std::string const &"""
  return _opensim.SetMeasurements_getClassName()

class MeasurementSet(SetMeasurements):
    """Proxy of C++ OpenSim::MeasurementSet class"""
    __swig_setmethods__ = {}
    for _s in [SetMeasurements]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MeasurementSet, name, value)
    __swig_getmethods__ = {}
    for _s in [SetMeasurements]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MeasurementSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MeasurementSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MeasurementSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MeasurementSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MeasurementSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MeasurementSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MeasurementSet self) -> MeasurementSet

        Parameters:
            self: OpenSim::MeasurementSet const *

        """
        return _opensim.MeasurementSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MeasurementSet self) -> std::string const &

        Parameters:
            self: OpenSim::MeasurementSet const *

        """
        return _opensim.MeasurementSet_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MeasurementSet self) -> MeasurementSet
        __init__(OpenSim::MeasurementSet self, MeasurementSet aSimmMeasurementSet) -> MeasurementSet

        Parameters:
            aSimmMeasurementSet: OpenSim::MeasurementSet const &

        """
        this = _opensim.new_MeasurementSet(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_MeasurementSet
    __del__ = lambda self : None;
    def adoptAndAppend(self, aMeasurement):
        aMeasurement._markAdopted()
        return super(MeasurementSet, self).adoptAndAppend(aMeasurement)

MeasurementSet_swigregister = _opensim.MeasurementSet_swigregister
MeasurementSet_swigregister(MeasurementSet)

def MeasurementSet_safeDownCast(*args):
  """
    MeasurementSet_safeDownCast(OpenSimObject obj) -> MeasurementSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MeasurementSet_safeDownCast(*args)

def MeasurementSet_getClassName():
  """MeasurementSet_getClassName() -> std::string const &"""
  return _opensim.MeasurementSet_getClassName()

class GenericModelMaker(OpenSimObject):
    """Proxy of C++ OpenSim::GenericModelMaker class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, GenericModelMaker, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, GenericModelMaker, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> GenericModelMaker

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.GenericModelMaker_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(GenericModelMaker self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.GenericModelMaker_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.GenericModelMaker_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(GenericModelMaker self) -> GenericModelMaker

        Parameters:
            self: OpenSim::GenericModelMaker const *

        """
        return _opensim.GenericModelMaker_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(GenericModelMaker self) -> std::string const &

        Parameters:
            self: OpenSim::GenericModelMaker const *

        """
        return _opensim.GenericModelMaker_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::GenericModelMaker self) -> GenericModelMaker
        __init__(OpenSim::GenericModelMaker self, GenericModelMaker aGenericModelMaker) -> GenericModelMaker

        Parameters:
            aGenericModelMaker: OpenSim::GenericModelMaker const &

        """
        this = _opensim.new_GenericModelMaker(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_GenericModelMaker
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(GenericModelMaker self, GenericModelMaker aGenericModelMaker)

        Parameters:
            aGenericModelMaker: OpenSim::GenericModelMaker const &

        """
        return _opensim.GenericModelMaker_copyData(self, *args)

    def processModel(self, aPathToSubject=""):
        """
        processModel(GenericModelMaker self, std::string const & aPathToSubject="") -> Model

        Parameters:
            aPathToSubject: std::string const &

        processModel(GenericModelMaker self) -> Model

        Parameters:
            self: OpenSim::GenericModelMaker *

        """
        return _opensim.GenericModelMaker_processModel(self, aPathToSubject)

    def registerTypes():
        """registerTypes()"""
        return _opensim.GenericModelMaker_registerTypes()

    if _newclass:registerTypes = staticmethod(registerTypes)
    __swig_getmethods__["registerTypes"] = lambda x: registerTypes
    def getModelFileName(self):
        """
        getModelFileName(GenericModelMaker self) -> std::string const &

        Parameters:
            self: OpenSim::GenericModelMaker const *

        """
        return _opensim.GenericModelMaker_getModelFileName(self)

    def setModelFileName(self, *args):
        """
        setModelFileName(GenericModelMaker self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.GenericModelMaker_setModelFileName(self, *args)

    def getMarkerSetFileName(self):
        """
        getMarkerSetFileName(GenericModelMaker self) -> std::string const &

        Parameters:
            self: OpenSim::GenericModelMaker const *

        """
        return _opensim.GenericModelMaker_getMarkerSetFileName(self)

    def setMarkerSetFileName(self, *args):
        """
        setMarkerSetFileName(GenericModelMaker self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.GenericModelMaker_setMarkerSetFileName(self, *args)

GenericModelMaker_swigregister = _opensim.GenericModelMaker_swigregister
GenericModelMaker_swigregister(GenericModelMaker)

def GenericModelMaker_safeDownCast(*args):
  """
    GenericModelMaker_safeDownCast(OpenSimObject obj) -> GenericModelMaker

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.GenericModelMaker_safeDownCast(*args)

def GenericModelMaker_getClassName():
  """GenericModelMaker_getClassName() -> std::string const &"""
  return _opensim.GenericModelMaker_getClassName()

def GenericModelMaker_registerTypes():
  """GenericModelMaker_registerTypes()"""
  return _opensim.GenericModelMaker_registerTypes()

class ModelScaler(OpenSimObject):
    """Proxy of C++ OpenSim::ModelScaler class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ModelScaler, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ModelScaler, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ModelScaler

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ModelScaler_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ModelScaler self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ModelScaler_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ModelScaler_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ModelScaler self) -> ModelScaler

        Parameters:
            self: OpenSim::ModelScaler const *

        """
        return _opensim.ModelScaler_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ModelScaler self) -> std::string const &

        Parameters:
            self: OpenSim::ModelScaler const *

        """
        return _opensim.ModelScaler_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ModelScaler self) -> ModelScaler
        __init__(OpenSim::ModelScaler self, ModelScaler aModelScaler) -> ModelScaler

        Parameters:
            aModelScaler: OpenSim::ModelScaler const &

        """
        this = _opensim.new_ModelScaler(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ModelScaler
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(ModelScaler self, ModelScaler aModelScaler)

        Parameters:
            aModelScaler: OpenSim::ModelScaler const &

        """
        return _opensim.ModelScaler_copyData(self, *args)

    def processModel(self, *args):
        """
        processModel(ModelScaler self, State s, Model aModel, std::string const & aPathToSubject="", double aFinalMass=-1.0) -> bool

        Parameters:
            s: SimTK::State &
            aModel: OpenSim::Model *
            aPathToSubject: std::string const &
            aFinalMass: double

        processModel(ModelScaler self, State s, Model aModel, std::string const & aPathToSubject="") -> bool

        Parameters:
            s: SimTK::State &
            aModel: OpenSim::Model *
            aPathToSubject: std::string const &

        processModel(ModelScaler self, State s, Model aModel) -> bool

        Parameters:
            s: SimTK::State &
            aModel: OpenSim::Model *

        """
        return _opensim.ModelScaler_processModel(self, *args)

    def registerTypes():
        """registerTypes()"""
        return _opensim.ModelScaler_registerTypes()

    if _newclass:registerTypes = staticmethod(registerTypes)
    __swig_getmethods__["registerTypes"] = lambda x: registerTypes
    def addMeasurement(self, *args):
        """
        addMeasurement(ModelScaler self, Measurement aMeasurement)

        Parameters:
            aMeasurement: OpenSim::Measurement *

        """
        return _opensim.ModelScaler_addMeasurement(self, *args)

    def addScale(self, *args):
        """
        addScale(ModelScaler self, Scale aScale)

        Parameters:
            aScale: OpenSim::Scale *

        """
        return _opensim.ModelScaler_addScale(self, *args)

    def getApply(self):
        """
        getApply(ModelScaler self) -> bool

        Parameters:
            self: OpenSim::ModelScaler const *

        """
        return _opensim.ModelScaler_getApply(self)

    def setApply(self, *args):
        """
        setApply(ModelScaler self, bool aApply)

        Parameters:
            aApply: bool

        """
        return _opensim.ModelScaler_setApply(self, *args)

    def getMeasurementSet(self):
        """
        getMeasurementSet(ModelScaler self) -> MeasurementSet

        Parameters:
            self: OpenSim::ModelScaler *

        """
        return _opensim.ModelScaler_getMeasurementSet(self)

    def setMeasurementSet(self, *args):
        """
        setMeasurementSet(ModelScaler self, MeasurementSet measurementSet)

        Parameters:
            measurementSet: OpenSim::MeasurementSet &

        """
        return _opensim.ModelScaler_setMeasurementSet(self, *args)

    def getScaleSet(self):
        """
        getScaleSet(ModelScaler self) -> ScaleSet

        Parameters:
            self: OpenSim::ModelScaler *

        """
        return _opensim.ModelScaler_getScaleSet(self)

    def setScaleSetFile(self, *args):
        """
        setScaleSetFile(ModelScaler self, std::string const & aScaleSetFilename)

        Parameters:
            aScaleSetFilename: std::string const &

        """
        return _opensim.ModelScaler_setScaleSetFile(self, *args)

    def getTimeRange(self):
        """
        getTimeRange(ModelScaler self) -> ArrayDouble

        Parameters:
            self: OpenSim::ModelScaler const *

        """
        return _opensim.ModelScaler_getTimeRange(self)

    def setTimeRange(self, *args):
        """
        setTimeRange(ModelScaler self, ArrayDouble timeRange)

        Parameters:
            timeRange: OpenSim::Array< double >

        """
        return _opensim.ModelScaler_setTimeRange(self, *args)

    def getPreserveMassDist(self):
        """
        getPreserveMassDist(ModelScaler self) -> bool

        Parameters:
            self: OpenSim::ModelScaler const *

        """
        return _opensim.ModelScaler_getPreserveMassDist(self)

    def setPreserveMassDist(self, *args):
        """
        setPreserveMassDist(ModelScaler self, bool preserveMassDist)

        Parameters:
            preserveMassDist: bool

        """
        return _opensim.ModelScaler_setPreserveMassDist(self, *args)

    def getScalingOrder(self):
        """
        getScalingOrder(ModelScaler self) -> ArrayStr

        Parameters:
            self: OpenSim::ModelScaler *

        """
        return _opensim.ModelScaler_getScalingOrder(self)

    def setScalingOrder(self, *args):
        """
        setScalingOrder(ModelScaler self, ArrayStr scalingOrder)

        Parameters:
            scalingOrder: OpenSim::Array< std::string > &

        """
        return _opensim.ModelScaler_setScalingOrder(self, *args)

    def getMarkerFileName(self):
        """
        getMarkerFileName(ModelScaler self) -> std::string const &

        Parameters:
            self: OpenSim::ModelScaler const *

        """
        return _opensim.ModelScaler_getMarkerFileName(self)

    def setMarkerFileName(self, *args):
        """
        setMarkerFileName(ModelScaler self, std::string const & aMarkerFileName)

        Parameters:
            aMarkerFileName: std::string const &

        """
        return _opensim.ModelScaler_setMarkerFileName(self, *args)

    def getOutputModelFileName(self):
        """
        getOutputModelFileName(ModelScaler self) -> std::string const &

        Parameters:
            self: OpenSim::ModelScaler const *

        """
        return _opensim.ModelScaler_getOutputModelFileName(self)

    def setOutputModelFileName(self, *args):
        """
        setOutputModelFileName(ModelScaler self, std::string const & aOutputModelFileName)

        Parameters:
            aOutputModelFileName: std::string const &

        """
        return _opensim.ModelScaler_setOutputModelFileName(self, *args)

    def getOutputScaleFileName(self):
        """
        getOutputScaleFileName(ModelScaler self) -> std::string const &

        Parameters:
            self: OpenSim::ModelScaler const *

        """
        return _opensim.ModelScaler_getOutputScaleFileName(self)

    def setOutputScaleFileName(self, *args):
        """
        setOutputScaleFileName(ModelScaler self, std::string const & aOutputScaleFileName)

        Parameters:
            aOutputScaleFileName: std::string const &

        """
        return _opensim.ModelScaler_setOutputScaleFileName(self, *args)

    def setPrintResultFiles(self, *args):
        """
        setPrintResultFiles(ModelScaler self, bool aToWrite)

        Parameters:
            aToWrite: bool

        """
        return _opensim.ModelScaler_setPrintResultFiles(self, *args)

    def computeMeasurementScaleFactor(self, *args):
        """
        computeMeasurementScaleFactor(ModelScaler self, State s, Model aModel, MarkerData aMarkerData, Measurement aMeasurement) -> double

        Parameters:
            s: SimTK::State const &
            aModel: OpenSim::Model const &
            aMarkerData: OpenSim::MarkerData const &
            aMeasurement: OpenSim::Measurement const &

        """
        return _opensim.ModelScaler_computeMeasurementScaleFactor(self, *args)

ModelScaler_swigregister = _opensim.ModelScaler_swigregister
ModelScaler_swigregister(ModelScaler)

def ModelScaler_safeDownCast(*args):
  """
    ModelScaler_safeDownCast(OpenSimObject obj) -> ModelScaler

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ModelScaler_safeDownCast(*args)

def ModelScaler_getClassName():
  """ModelScaler_getClassName() -> std::string const &"""
  return _opensim.ModelScaler_getClassName()

def ModelScaler_registerTypes():
  """ModelScaler_registerTypes()"""
  return _opensim.ModelScaler_registerTypes()

class MarkerPlacer(OpenSimObject):
    """Proxy of C++ OpenSim::MarkerPlacer class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MarkerPlacer, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MarkerPlacer, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MarkerPlacer

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MarkerPlacer_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MarkerPlacer self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MarkerPlacer_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MarkerPlacer_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MarkerPlacer self) -> MarkerPlacer

        Parameters:
            self: OpenSim::MarkerPlacer const *

        """
        return _opensim.MarkerPlacer_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MarkerPlacer self) -> std::string const &

        Parameters:
            self: OpenSim::MarkerPlacer const *

        """
        return _opensim.MarkerPlacer_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MarkerPlacer self) -> MarkerPlacer
        __init__(OpenSim::MarkerPlacer self, MarkerPlacer aMarkerPlacementParams) -> MarkerPlacer

        Parameters:
            aMarkerPlacementParams: OpenSim::MarkerPlacer const &

        """
        this = _opensim.new_MarkerPlacer(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_MarkerPlacer
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(MarkerPlacer self, MarkerPlacer aMarkerPlacementParams)

        Parameters:
            aMarkerPlacementParams: OpenSim::MarkerPlacer const &

        """
        return _opensim.MarkerPlacer_copyData(self, *args)

    def processModel(self, *args):
        """
        processModel(MarkerPlacer self, State s, Model aModel, std::string const & aPathToSubject="") -> bool

        Parameters:
            s: SimTK::State &
            aModel: OpenSim::Model *
            aPathToSubject: std::string const &

        processModel(MarkerPlacer self, State s, Model aModel) -> bool

        Parameters:
            s: SimTK::State &
            aModel: OpenSim::Model *

        """
        return _opensim.MarkerPlacer_processModel(self, *args)

    def getApply(self):
        """
        getApply(MarkerPlacer self) -> bool

        Parameters:
            self: OpenSim::MarkerPlacer const *

        """
        return _opensim.MarkerPlacer_getApply(self)

    def setApply(self, *args):
        """
        setApply(MarkerPlacer self, bool aApply)

        Parameters:
            aApply: bool

        """
        return _opensim.MarkerPlacer_setApply(self, *args)

    def getStaticPoseFileName(self):
        """
        getStaticPoseFileName(MarkerPlacer self) -> std::string const &

        Parameters:
            self: OpenSim::MarkerPlacer const *

        """
        return _opensim.MarkerPlacer_getStaticPoseFileName(self)

    def setStaticPoseFileName(self, *args):
        """
        setStaticPoseFileName(MarkerPlacer self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.MarkerPlacer_setStaticPoseFileName(self, *args)

    def getTimeRange(self):
        """
        getTimeRange(MarkerPlacer self) -> ArrayDouble

        Parameters:
            self: OpenSim::MarkerPlacer const *

        """
        return _opensim.MarkerPlacer_getTimeRange(self)

    def setTimeRange(self, *args):
        """
        setTimeRange(MarkerPlacer self, ArrayDouble timeRange)

        Parameters:
            timeRange: OpenSim::Array< double > const &

        """
        return _opensim.MarkerPlacer_setTimeRange(self, *args)

    def getIKTaskSet(self):
        """
        getIKTaskSet(MarkerPlacer self) -> IKTaskSet

        Parameters:
            self: OpenSim::MarkerPlacer *

        """
        return _opensim.MarkerPlacer_getIKTaskSet(self)

    def getCoordinateFileName(self):
        """
        getCoordinateFileName(MarkerPlacer self) -> std::string const &

        Parameters:
            self: OpenSim::MarkerPlacer const *

        """
        return _opensim.MarkerPlacer_getCoordinateFileName(self)

    def setCoordinateFileName(self, *args):
        """
        setCoordinateFileName(MarkerPlacer self, std::string const & aCoordinateFileName)

        Parameters:
            aCoordinateFileName: std::string const &

        """
        return _opensim.MarkerPlacer_setCoordinateFileName(self, *args)

    def getMaxMarkerMovement(self):
        """
        getMaxMarkerMovement(MarkerPlacer self) -> double

        Parameters:
            self: OpenSim::MarkerPlacer const *

        """
        return _opensim.MarkerPlacer_getMaxMarkerMovement(self)

    def setMaxMarkerMovement(self, *args):
        """
        setMaxMarkerMovement(MarkerPlacer self, double aMaxMarkerMovement)

        Parameters:
            aMaxMarkerMovement: double

        """
        return _opensim.MarkerPlacer_setMaxMarkerMovement(self, *args)

    def getOutputModelFileName(self):
        """
        getOutputModelFileName(MarkerPlacer self) -> std::string const &

        Parameters:
            self: OpenSim::MarkerPlacer const *

        """
        return _opensim.MarkerPlacer_getOutputModelFileName(self)

    def setOutputModelFileName(self, *args):
        """
        setOutputModelFileName(MarkerPlacer self, std::string const & aOutputModelFileName)

        Parameters:
            aOutputModelFileName: std::string const &

        """
        return _opensim.MarkerPlacer_setOutputModelFileName(self, *args)

    def getOutputMarkerFileName(self):
        """
        getOutputMarkerFileName(MarkerPlacer self) -> std::string const &

        Parameters:
            self: OpenSim::MarkerPlacer const *

        """
        return _opensim.MarkerPlacer_getOutputMarkerFileName(self)

    def setOutputMarkerFileName(self, *args):
        """
        setOutputMarkerFileName(MarkerPlacer self, std::string const & outputMarkerFileName)

        Parameters:
            outputMarkerFileName: std::string const &

        """
        return _opensim.MarkerPlacer_setOutputMarkerFileName(self, *args)

    def getOutputMotionFileName(self):
        """
        getOutputMotionFileName(MarkerPlacer self) -> std::string const &

        Parameters:
            self: OpenSim::MarkerPlacer const *

        """
        return _opensim.MarkerPlacer_getOutputMotionFileName(self)

    def setOutputMotionFileName(self, *args):
        """
        setOutputMotionFileName(MarkerPlacer self, std::string const & outputMotionFileName)

        Parameters:
            outputMotionFileName: std::string const &

        """
        return _opensim.MarkerPlacer_setOutputMotionFileName(self, *args)

    def setPrintResultFiles(self, *args):
        """
        setPrintResultFiles(MarkerPlacer self, bool aToWrite)

        Parameters:
            aToWrite: bool

        """
        return _opensim.MarkerPlacer_setPrintResultFiles(self, *args)

    def getMoveModelMarkers(self):
        """
        getMoveModelMarkers(MarkerPlacer self) -> bool

        Parameters:
            self: OpenSim::MarkerPlacer *

        """
        return _opensim.MarkerPlacer_getMoveModelMarkers(self)

    def setMoveModelMarkers(self, *args):
        """
        setMoveModelMarkers(MarkerPlacer self, bool aMove)

        Parameters:
            aMove: bool

        """
        return _opensim.MarkerPlacer_setMoveModelMarkers(self, *args)

    def getOutputStorage(self):
        """
        getOutputStorage(MarkerPlacer self) -> Storage

        Parameters:
            self: OpenSim::MarkerPlacer *

        """
        return _opensim.MarkerPlacer_getOutputStorage(self)

MarkerPlacer_swigregister = _opensim.MarkerPlacer_swigregister
MarkerPlacer_swigregister(MarkerPlacer)

def MarkerPlacer_safeDownCast(*args):
  """
    MarkerPlacer_safeDownCast(OpenSimObject obj) -> MarkerPlacer

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MarkerPlacer_safeDownCast(*args)

def MarkerPlacer_getClassName():
  """MarkerPlacer_getClassName() -> std::string const &"""
  return _opensim.MarkerPlacer_getClassName()

class ScaleTool(OpenSimObject):
    """Proxy of C++ OpenSim::ScaleTool class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ScaleTool, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ScaleTool, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ScaleTool

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ScaleTool_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ScaleTool self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ScaleTool_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ScaleTool_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ScaleTool self) -> ScaleTool

        Parameters:
            self: OpenSim::ScaleTool const *

        """
        return _opensim.ScaleTool_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ScaleTool self) -> std::string const &

        Parameters:
            self: OpenSim::ScaleTool const *

        """
        return _opensim.ScaleTool_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::ScaleTool self) -> ScaleTool
        __init__(OpenSim::ScaleTool self, std::string const & aFileName) -> ScaleTool

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::ScaleTool self, ScaleTool aSubject) -> ScaleTool

        Parameters:
            aSubject: OpenSim::ScaleTool const &

        """
        this = _opensim.new_ScaleTool(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ScaleTool
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(ScaleTool self, ScaleTool aSubject)

        Parameters:
            aSubject: OpenSim::ScaleTool const &

        """
        return _opensim.ScaleTool_copyData(self, *args)

    def createModel(self):
        """
        createModel(ScaleTool self) -> Model

        Parameters:
            self: OpenSim::ScaleTool *

        """
        return _opensim.ScaleTool_createModel(self)

    def getGenericModelMaker(self):
        """
        getGenericModelMaker(ScaleTool self) -> GenericModelMaker

        Parameters:
            self: OpenSim::ScaleTool *

        """
        return _opensim.ScaleTool_getGenericModelMaker(self)

    def getModelScaler(self):
        """
        getModelScaler(ScaleTool self) -> ModelScaler

        Parameters:
            self: OpenSim::ScaleTool *

        """
        return _opensim.ScaleTool_getModelScaler(self)

    def getMarkerPlacer(self):
        """
        getMarkerPlacer(ScaleTool self) -> MarkerPlacer

        Parameters:
            self: OpenSim::ScaleTool *

        """
        return _opensim.ScaleTool_getMarkerPlacer(self)

    def isDefaultGenericModelMaker(self):
        """
        isDefaultGenericModelMaker(ScaleTool self) -> bool

        Parameters:
            self: OpenSim::ScaleTool *

        """
        return _opensim.ScaleTool_isDefaultGenericModelMaker(self)

    def isDefaultModelScaler(self):
        """
        isDefaultModelScaler(ScaleTool self) -> bool

        Parameters:
            self: OpenSim::ScaleTool *

        """
        return _opensim.ScaleTool_isDefaultModelScaler(self)

    def isDefaultMarkerPlacer(self):
        """
        isDefaultMarkerPlacer(ScaleTool self) -> bool

        Parameters:
            self: OpenSim::ScaleTool *

        """
        return _opensim.ScaleTool_isDefaultMarkerPlacer(self)

    def registerTypes():
        """registerTypes()"""
        return _opensim.ScaleTool_registerTypes()

    if _newclass:registerTypes = staticmethod(registerTypes)
    __swig_getmethods__["registerTypes"] = lambda x: registerTypes
    def getSubjectMass(self):
        """
        getSubjectMass(ScaleTool self) -> double

        Parameters:
            self: OpenSim::ScaleTool *

        """
        return _opensim.ScaleTool_getSubjectMass(self)

    def getSubjectAge(self):
        """
        getSubjectAge(ScaleTool self) -> double

        Parameters:
            self: OpenSim::ScaleTool *

        """
        return _opensim.ScaleTool_getSubjectAge(self)

    def getSubjectHeight(self):
        """
        getSubjectHeight(ScaleTool self) -> double

        Parameters:
            self: OpenSim::ScaleTool *

        """
        return _opensim.ScaleTool_getSubjectHeight(self)

    def setSubjectMass(self, *args):
        """
        setSubjectMass(ScaleTool self, double mass)

        Parameters:
            mass: double

        """
        return _opensim.ScaleTool_setSubjectMass(self, *args)

    def setSubjectAge(self, *args):
        """
        setSubjectAge(ScaleTool self, double age)

        Parameters:
            age: double

        """
        return _opensim.ScaleTool_setSubjectAge(self, *args)

    def setSubjectHeight(self, *args):
        """
        setSubjectHeight(ScaleTool self, double height)

        Parameters:
            height: double

        """
        return _opensim.ScaleTool_setSubjectHeight(self, *args)

    def getPathToSubject(self):
        """
        getPathToSubject(ScaleTool self) -> std::string const &

        Parameters:
            self: OpenSim::ScaleTool *

        """
        return _opensim.ScaleTool_getPathToSubject(self)

    def setPathToSubject(self, *args):
        """
        setPathToSubject(ScaleTool self, std::string const & aPath)

        Parameters:
            aPath: std::string const &

        """
        return _opensim.ScaleTool_setPathToSubject(self, *args)

    def setPrintResultFiles(self, *args):
        """
        setPrintResultFiles(ScaleTool self, bool aToWrite)

        Parameters:
            aToWrite: bool

        """
        return _opensim.ScaleTool_setPrintResultFiles(self, *args)

ScaleTool_swigregister = _opensim.ScaleTool_swigregister
ScaleTool_swigregister(ScaleTool)

def ScaleTool_safeDownCast(*args):
  """
    ScaleTool_safeDownCast(OpenSimObject obj) -> ScaleTool

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ScaleTool_safeDownCast(*args)

def ScaleTool_getClassName():
  """ScaleTool_getClassName() -> std::string const &"""
  return _opensim.ScaleTool_getClassName()

def ScaleTool_registerTypes():
  """ScaleTool_registerTypes()"""
  return _opensim.ScaleTool_registerTypes()

class AssemblySolver(Solver):
    """Proxy of C++ OpenSim::AssemblySolver class"""
    __swig_setmethods__ = {}
    for _s in [Solver]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, AssemblySolver, name, value)
    __swig_getmethods__ = {}
    for _s in [Solver]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, AssemblySolver, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> AssemblySolver

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.AssemblySolver_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(AssemblySolver self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.AssemblySolver_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.AssemblySolver_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(AssemblySolver self) -> AssemblySolver

        Parameters:
            self: OpenSim::AssemblySolver const *

        """
        return _opensim.AssemblySolver_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(AssemblySolver self) -> std::string const &

        Parameters:
            self: OpenSim::AssemblySolver const *

        """
        return _opensim.AssemblySolver_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::AssemblySolver self, Model model, ArrayCoordinateReference coordinateReferences, double constraintWeight=SimTK::Infinity) -> AssemblySolver

        Parameters:
            model: OpenSim::Model const &
            coordinateReferences: SimTK::Array_< OpenSim::CoordinateReference,unsigned int > &
            constraintWeight: double

        __init__(OpenSim::AssemblySolver self, Model model, ArrayCoordinateReference coordinateReferences) -> AssemblySolver

        Parameters:
            model: OpenSim::Model const &
            coordinateReferences: SimTK::Array_< OpenSim::CoordinateReference,unsigned int > &

        """
        this = _opensim.new_AssemblySolver(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_AssemblySolver
    __del__ = lambda self : None;
    def setAccuracy(self, *args):
        """
        setAccuracy(AssemblySolver self, double accuracy)

        Parameters:
            accuracy: double

        """
        return _opensim.AssemblySolver_setAccuracy(self, *args)

    def setConstraintWeight(self, *args):
        """
        setConstraintWeight(AssemblySolver self, double weight)

        Parameters:
            weight: double

        """
        return _opensim.AssemblySolver_setConstraintWeight(self, *args)

    def getCoordinateReferences(self):
        """
        getCoordinateReferences(AssemblySolver self) -> ArrayCoordinateReference

        Parameters:
            self: OpenSim::AssemblySolver const *

        """
        return _opensim.AssemblySolver_getCoordinateReferences(self)

    def updateCoordinateReference(self, *args):
        """
        updateCoordinateReference(AssemblySolver self, std::string const & coordName, double value, double weight=1.0)

        Parameters:
            coordName: std::string const &
            value: double
            weight: double

        updateCoordinateReference(AssemblySolver self, std::string const & coordName, double value)

        Parameters:
            coordName: std::string const &
            value: double

        """
        return _opensim.AssemblySolver_updateCoordinateReference(self, *args)

    def assemble(self, *args):
        """
        assemble(AssemblySolver self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.AssemblySolver_assemble(self, *args)

    def track(self, *args):
        """
        track(AssemblySolver self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.AssemblySolver_track(self, *args)

AssemblySolver_swigregister = _opensim.AssemblySolver_swigregister
AssemblySolver_swigregister(AssemblySolver)

def AssemblySolver_safeDownCast(*args):
  """
    AssemblySolver_safeDownCast(OpenSimObject obj) -> AssemblySolver

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.AssemblySolver_safeDownCast(*args)

def AssemblySolver_getClassName():
  """AssemblySolver_getClassName() -> std::string const &"""
  return _opensim.AssemblySolver_getClassName()

class ReferenceVec3(OpenSimObject):
    """Proxy of C++ OpenSim::Reference_<(SimTK::Vec3)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ReferenceVec3, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ReferenceVec3, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ReferenceVec3

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ReferenceVec3_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ReferenceVec3 self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ReferenceVec3_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ReferenceVec3_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ReferenceVec3 self) -> ReferenceVec3

        Parameters:
            self: OpenSim::Reference_< SimTK::Vec3 > const *

        """
        return _opensim.ReferenceVec3_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ReferenceVec3 self) -> std::string const &

        Parameters:
            self: OpenSim::Reference_< SimTK::Vec3 > const *

        """
        return _opensim.ReferenceVec3_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_ReferenceVec3
    __del__ = lambda self : None;
    def getNumRefs(self):
        """
        getNumRefs(ReferenceVec3 self) -> int

        Parameters:
            self: OpenSim::Reference_< SimTK::Vec3 > const *

        """
        return _opensim.ReferenceVec3_getNumRefs(self)

    def getValidTimeRange(self):
        """
        getValidTimeRange(ReferenceVec3 self) -> Vec2

        Parameters:
            self: OpenSim::Reference_< SimTK::Vec3 > const *

        """
        return _opensim.ReferenceVec3_getValidTimeRange(self)

    def getNames(self):
        """
        getNames(ReferenceVec3 self) -> SimTK::Array_< std::string,unsigned int > const &

        Parameters:
            self: OpenSim::Reference_< SimTK::Vec3 > const *

        """
        return _opensim.ReferenceVec3_getNames(self)

    def getValues(self, *args):
        """
        getValues(ReferenceVec3 self, State s, SimTKArrayVec3 values)

        Parameters:
            s: SimTK::State const &
            values: SimTK::Array_< SimTK::Vec< 3,double,1 >,unsigned int > &

        getValues(ReferenceVec3 self, State s) -> SimTKArrayVec3

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.ReferenceVec3_getValues(self, *args)

    def getWeights(self, *args):
        """
        getWeights(ReferenceVec3 self, State s, SimTKArrayDouble weights)

        Parameters:
            s: SimTK::State const &
            weights: SimTK::Array_< double,unsigned int > &

        getWeights(ReferenceVec3 self, State s) -> SimTKArrayDouble

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.ReferenceVec3_getWeights(self, *args)

ReferenceVec3_swigregister = _opensim.ReferenceVec3_swigregister
ReferenceVec3_swigregister(ReferenceVec3)

def ReferenceVec3_safeDownCast(*args):
  """
    ReferenceVec3_safeDownCast(OpenSimObject obj) -> ReferenceVec3

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ReferenceVec3_safeDownCast(*args)

def ReferenceVec3_getClassName():
  """ReferenceVec3_getClassName() -> std::string const &"""
  return _opensim.ReferenceVec3_getClassName()

class ReferenceDouble(OpenSimObject):
    """Proxy of C++ OpenSim::Reference_<(double)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ReferenceDouble, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ReferenceDouble, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ReferenceDouble

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ReferenceDouble_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ReferenceDouble self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ReferenceDouble_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ReferenceDouble_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ReferenceDouble self) -> ReferenceDouble

        Parameters:
            self: OpenSim::Reference_< double > const *

        """
        return _opensim.ReferenceDouble_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ReferenceDouble self) -> std::string const &

        Parameters:
            self: OpenSim::Reference_< double > const *

        """
        return _opensim.ReferenceDouble_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_ReferenceDouble
    __del__ = lambda self : None;
    def getNumRefs(self):
        """
        getNumRefs(ReferenceDouble self) -> int

        Parameters:
            self: OpenSim::Reference_< double > const *

        """
        return _opensim.ReferenceDouble_getNumRefs(self)

    def getValidTimeRange(self):
        """
        getValidTimeRange(ReferenceDouble self) -> Vec2

        Parameters:
            self: OpenSim::Reference_< double > const *

        """
        return _opensim.ReferenceDouble_getValidTimeRange(self)

    def getNames(self):
        """
        getNames(ReferenceDouble self) -> SimTK::Array_< std::string,unsigned int > const &

        Parameters:
            self: OpenSim::Reference_< double > const *

        """
        return _opensim.ReferenceDouble_getNames(self)

    def getValues(self, *args):
        """
        getValues(ReferenceDouble self, State s, SimTKArrayDouble values)

        Parameters:
            s: SimTK::State const &
            values: SimTK::Array_< double,unsigned int > &

        getValues(ReferenceDouble self, State s) -> SimTKArrayDouble

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.ReferenceDouble_getValues(self, *args)

    def getWeights(self, *args):
        """
        getWeights(ReferenceDouble self, State s, SimTKArrayDouble weights)

        Parameters:
            s: SimTK::State const &
            weights: SimTK::Array_< double,unsigned int > &

        getWeights(ReferenceDouble self, State s) -> SimTKArrayDouble

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.ReferenceDouble_getWeights(self, *args)

ReferenceDouble_swigregister = _opensim.ReferenceDouble_swigregister
ReferenceDouble_swigregister(ReferenceDouble)

def ReferenceDouble_safeDownCast(*args):
  """
    ReferenceDouble_safeDownCast(OpenSimObject obj) -> ReferenceDouble

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ReferenceDouble_safeDownCast(*args)

def ReferenceDouble_getClassName():
  """ReferenceDouble_getClassName() -> std::string const &"""
  return _opensim.ReferenceDouble_getClassName()

class ArrayCoordinateReference(_object):
    """Proxy of C++ SimTK::Array_<(OpenSim::CoordinateReference)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, ArrayCoordinateReference, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, ArrayCoordinateReference, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::Array_<(OpenSim::CoordinateReference)> self) -> ArrayCoordinateReference
        __init__(SimTK::Array_<(OpenSim::CoordinateReference)> self, SimTK::Array_< OpenSim::CoordinateReference >::size_type n) -> ArrayCoordinateReference

        Parameters:
            n: SimTK::Array_< OpenSim::CoordinateReference >::size_type

        __init__(SimTK::Array_<(OpenSim::CoordinateReference)> self, SimTK::Array_< OpenSim::CoordinateReference >::size_type n, CoordinateReference initVal) -> ArrayCoordinateReference

        Parameters:
            n: SimTK::Array_< OpenSim::CoordinateReference >::size_type
            initVal: OpenSim::CoordinateReference const &

        __init__(SimTK::Array_<(OpenSim::CoordinateReference)> self, ArrayCoordinateReference src) -> ArrayCoordinateReference

        Parameters:
            src: SimTK::Array_< OpenSim::CoordinateReference > const &

        __init__(SimTK::Array_<(OpenSim::CoordinateReference)> self, CoordinateReference first, CoordinateReference last1, DontCopy arg4) -> ArrayCoordinateReference

        Parameters:
            first: OpenSim::CoordinateReference *
            last1: OpenSim::CoordinateReference const *
            arg4: SimTK::DontCopy const &

        """
        this = _opensim.new_ArrayCoordinateReference(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_ArrayCoordinateReference
    __del__ = lambda self : None;
    def deallocate(self):
        """
        deallocate(ArrayCoordinateReference self) -> ArrayCoordinateReference

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > *

        """
        return _opensim.ArrayCoordinateReference_deallocate(self)

    def assign(self, *args):
        """
        assign(ArrayCoordinateReference self, SimTK::Array_< OpenSim::CoordinateReference >::size_type n, CoordinateReference fillValue)

        Parameters:
            n: SimTK::Array_< OpenSim::CoordinateReference >::size_type
            fillValue: OpenSim::CoordinateReference const &

        """
        return _opensim.ArrayCoordinateReference_assign(self, *args)

    def fill(self, *args):
        """
        fill(ArrayCoordinateReference self, CoordinateReference fillValue)

        Parameters:
            fillValue: OpenSim::CoordinateReference const &

        """
        return _opensim.ArrayCoordinateReference_fill(self, *args)

    def swap(self, *args):
        """
        swap(ArrayCoordinateReference self, ArrayCoordinateReference other)

        Parameters:
            other: SimTK::Array_< OpenSim::CoordinateReference > &

        """
        return _opensim.ArrayCoordinateReference_swap(self, *args)

    def adoptData(self, *args):
        """
        adoptData(ArrayCoordinateReference self, CoordinateReference newData, SimTK::Array_< OpenSim::CoordinateReference >::size_type dataSize, 
            SimTK::Array_< OpenSim::CoordinateReference >::size_type dataCapacity) -> ArrayCoordinateReference

        Parameters:
            newData: OpenSim::CoordinateReference *
            dataSize: SimTK::Array_< OpenSim::CoordinateReference >::size_type
            dataCapacity: SimTK::Array_< OpenSim::CoordinateReference >::size_type

        adoptData(ArrayCoordinateReference self, CoordinateReference newData, SimTK::Array_< OpenSim::CoordinateReference >::size_type dataSize) -> ArrayCoordinateReference

        Parameters:
            newData: OpenSim::CoordinateReference *
            dataSize: SimTK::Array_< OpenSim::CoordinateReference >::size_type

        """
        return _opensim.ArrayCoordinateReference_adoptData(self, *args)

    def shareData(self, *args):
        """
        shareData(ArrayCoordinateReference self, CoordinateReference newData, SimTK::Array_< OpenSim::CoordinateReference >::size_type dataSize) -> ArrayCoordinateReference

        Parameters:
            newData: OpenSim::CoordinateReference *
            dataSize: SimTK::Array_< OpenSim::CoordinateReference >::size_type

        shareData(ArrayCoordinateReference self, CoordinateReference first, CoordinateReference last1) -> ArrayCoordinateReference

        Parameters:
            first: OpenSim::CoordinateReference *
            last1: OpenSim::CoordinateReference const *

        """
        return _opensim.ArrayCoordinateReference_shareData(self, *args)

    def size(self):
        """
        size(ArrayCoordinateReference self) -> SimTK::Array_< OpenSim::CoordinateReference >::size_type

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > const *

        """
        return _opensim.ArrayCoordinateReference_size(self)

    def max_size(self):
        """
        max_size(ArrayCoordinateReference self) -> SimTK::Array_< OpenSim::CoordinateReference >::size_type

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > const *

        """
        return _opensim.ArrayCoordinateReference_max_size(self)

    def empty(self):
        """
        empty(ArrayCoordinateReference self) -> bool

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > const *

        """
        return _opensim.ArrayCoordinateReference_empty(self)

    def capacity(self):
        """
        capacity(ArrayCoordinateReference self) -> SimTK::Array_< OpenSim::CoordinateReference >::size_type

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > const *

        """
        return _opensim.ArrayCoordinateReference_capacity(self)

    def resize(self, *args):
        """
        resize(ArrayCoordinateReference self, SimTK::Array_< OpenSim::CoordinateReference >::size_type n)

        Parameters:
            n: SimTK::Array_< OpenSim::CoordinateReference >::size_type

        resize(ArrayCoordinateReference self, SimTK::Array_< OpenSim::CoordinateReference >::size_type n, CoordinateReference initVal)

        Parameters:
            n: SimTK::Array_< OpenSim::CoordinateReference >::size_type
            initVal: OpenSim::CoordinateReference const &

        """
        return _opensim.ArrayCoordinateReference_resize(self, *args)

    def reserve(self, *args):
        """
        reserve(ArrayCoordinateReference self, SimTK::Array_< OpenSim::CoordinateReference >::size_type n)

        Parameters:
            n: SimTK::Array_< OpenSim::CoordinateReference >::size_type

        """
        return _opensim.ArrayCoordinateReference_reserve(self, *args)

    def shrink_to_fit(self):
        """
        shrink_to_fit(ArrayCoordinateReference self)

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > *

        """
        return _opensim.ArrayCoordinateReference_shrink_to_fit(self)

    def allocated(self):
        """
        allocated(ArrayCoordinateReference self) -> SimTK::Array_< OpenSim::CoordinateReference >::size_type

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > const *

        """
        return _opensim.ArrayCoordinateReference_allocated(self)

    def isOwner(self):
        """
        isOwner(ArrayCoordinateReference self) -> bool

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > const *

        """
        return _opensim.ArrayCoordinateReference_isOwner(self)

    def cbegin(self):
        """
        cbegin(ArrayCoordinateReference self) -> CoordinateReference

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > const *

        """
        return _opensim.ArrayCoordinateReference_cbegin(self)

    def begin(self, *args):
        """
        begin(ArrayCoordinateReference self) -> CoordinateReference
        begin(ArrayCoordinateReference self) -> CoordinateReference

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > *

        """
        return _opensim.ArrayCoordinateReference_begin(self, *args)

    def cend(self):
        """
        cend(ArrayCoordinateReference self) -> CoordinateReference

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > const *

        """
        return _opensim.ArrayCoordinateReference_cend(self)

    def end(self, *args):
        """
        end(ArrayCoordinateReference self) -> CoordinateReference
        end(ArrayCoordinateReference self) -> CoordinateReference

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > *

        """
        return _opensim.ArrayCoordinateReference_end(self, *args)

    def crbegin(self):
        """
        crbegin(ArrayCoordinateReference self) -> SimTK::Array_< OpenSim::CoordinateReference >::const_reverse_iterator

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > const *

        """
        return _opensim.ArrayCoordinateReference_crbegin(self)

    def rbegin(self, *args):
        """
        rbegin(ArrayCoordinateReference self) -> SimTK::Array_< OpenSim::CoordinateReference >::const_reverse_iterator
        rbegin(ArrayCoordinateReference self) -> SimTK::Array_< OpenSim::CoordinateReference >::reverse_iterator

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > *

        """
        return _opensim.ArrayCoordinateReference_rbegin(self, *args)

    def crend(self):
        """
        crend(ArrayCoordinateReference self) -> SimTK::Array_< OpenSim::CoordinateReference >::const_reverse_iterator

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > const *

        """
        return _opensim.ArrayCoordinateReference_crend(self)

    def rend(self, *args):
        """
        rend(ArrayCoordinateReference self) -> SimTK::Array_< OpenSim::CoordinateReference >::const_reverse_iterator
        rend(ArrayCoordinateReference self) -> SimTK::Array_< OpenSim::CoordinateReference >::reverse_iterator

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > *

        """
        return _opensim.ArrayCoordinateReference_rend(self, *args)

    def cdata(self):
        """
        cdata(ArrayCoordinateReference self) -> CoordinateReference

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > const *

        """
        return _opensim.ArrayCoordinateReference_cdata(self)

    def data(self, *args):
        """
        data(ArrayCoordinateReference self) -> CoordinateReference
        data(ArrayCoordinateReference self) -> CoordinateReference

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > *

        """
        return _opensim.ArrayCoordinateReference_data(self, *args)

    def at(self, *args):
        """
        at(ArrayCoordinateReference self, SimTK::Array_< OpenSim::CoordinateReference >::index_type i) -> CoordinateReference

        Parameters:
            i: SimTK::Array_< OpenSim::CoordinateReference >::index_type

        at(ArrayCoordinateReference self, SimTK::Array_< OpenSim::CoordinateReference >::index_type i) -> CoordinateReference

        Parameters:
            i: SimTK::Array_< OpenSim::CoordinateReference >::index_type

        """
        return _opensim.ArrayCoordinateReference_at(self, *args)

    def getElt(self, *args):
        """
        getElt(ArrayCoordinateReference self, SimTK::Array_< OpenSim::CoordinateReference >::index_type i) -> CoordinateReference

        Parameters:
            i: SimTK::Array_< OpenSim::CoordinateReference >::index_type

        """
        return _opensim.ArrayCoordinateReference_getElt(self, *args)

    def updElt(self, *args):
        """
        updElt(ArrayCoordinateReference self, SimTK::Array_< OpenSim::CoordinateReference >::index_type i) -> CoordinateReference

        Parameters:
            i: SimTK::Array_< OpenSim::CoordinateReference >::index_type

        """
        return _opensim.ArrayCoordinateReference_updElt(self, *args)

    def front(self, *args):
        """
        front(ArrayCoordinateReference self) -> CoordinateReference
        front(ArrayCoordinateReference self) -> CoordinateReference

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > *

        """
        return _opensim.ArrayCoordinateReference_front(self, *args)

    def back(self, *args):
        """
        back(ArrayCoordinateReference self) -> CoordinateReference
        back(ArrayCoordinateReference self) -> CoordinateReference

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > *

        """
        return _opensim.ArrayCoordinateReference_back(self, *args)

    def push_back(self, *args):
        """
        push_back(ArrayCoordinateReference self, CoordinateReference value)

        Parameters:
            value: OpenSim::CoordinateReference const &

        push_back(ArrayCoordinateReference self)

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > *

        """
        return _opensim.ArrayCoordinateReference_push_back(self, *args)

    def raw_push_back(self):
        """
        raw_push_back(ArrayCoordinateReference self) -> CoordinateReference

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > *

        """
        return _opensim.ArrayCoordinateReference_raw_push_back(self)

    def pop_back(self):
        """
        pop_back(ArrayCoordinateReference self)

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > *

        """
        return _opensim.ArrayCoordinateReference_pop_back(self)

    def erase(self, *args):
        """
        erase(ArrayCoordinateReference self, CoordinateReference first, CoordinateReference last1) -> CoordinateReference

        Parameters:
            first: OpenSim::CoordinateReference *
            last1: OpenSim::CoordinateReference const *

        erase(ArrayCoordinateReference self, CoordinateReference p) -> CoordinateReference

        Parameters:
            p: OpenSim::CoordinateReference *

        """
        return _opensim.ArrayCoordinateReference_erase(self, *args)

    def eraseFast(self, *args):
        """
        eraseFast(ArrayCoordinateReference self, CoordinateReference p) -> CoordinateReference

        Parameters:
            p: OpenSim::CoordinateReference *

        """
        return _opensim.ArrayCoordinateReference_eraseFast(self, *args)

    def clear(self):
        """
        clear(ArrayCoordinateReference self)

        Parameters:
            self: SimTK::Array_< OpenSim::CoordinateReference > *

        """
        return _opensim.ArrayCoordinateReference_clear(self)

    def insert(self, *args):
        """
        insert(ArrayCoordinateReference self, CoordinateReference p, SimTK::Array_< OpenSim::CoordinateReference >::size_type n, 
            CoordinateReference value) -> CoordinateReference

        Parameters:
            p: OpenSim::CoordinateReference *
            n: SimTK::Array_< OpenSim::CoordinateReference >::size_type
            value: OpenSim::CoordinateReference const &

        insert(ArrayCoordinateReference self, CoordinateReference p, CoordinateReference value) -> CoordinateReference

        Parameters:
            p: OpenSim::CoordinateReference *
            value: OpenSim::CoordinateReference const &

        """
        return _opensim.ArrayCoordinateReference_insert(self, *args)

ArrayCoordinateReference_swigregister = _opensim.ArrayCoordinateReference_swigregister
ArrayCoordinateReference_swigregister(ArrayCoordinateReference)

class SimTKArrayDouble(_object):
    """Proxy of C++ SimTK::Array_<(double)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, SimTKArrayDouble, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, SimTKArrayDouble, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::Array_<(double)> self) -> SimTKArrayDouble
        __init__(SimTK::Array_<(double)> self, SimTK::Array_< double >::size_type n) -> SimTKArrayDouble

        Parameters:
            n: SimTK::Array_< double >::size_type

        __init__(SimTK::Array_<(double)> self, SimTK::Array_< double >::size_type n, double const & initVal) -> SimTKArrayDouble

        Parameters:
            n: SimTK::Array_< double >::size_type
            initVal: double const &

        __init__(SimTK::Array_<(double)> self, SimTKArrayDouble src) -> SimTKArrayDouble

        Parameters:
            src: SimTK::Array_< double > const &

        __init__(SimTK::Array_<(double)> self, double * first, double const * last1, DontCopy arg4) -> SimTKArrayDouble

        Parameters:
            first: double *
            last1: double const *
            arg4: SimTK::DontCopy const &

        """
        this = _opensim.new_SimTKArrayDouble(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_SimTKArrayDouble
    __del__ = lambda self : None;
    def deallocate(self):
        """
        deallocate(SimTKArrayDouble self) -> SimTKArrayDouble

        Parameters:
            self: SimTK::Array_< double > *

        """
        return _opensim.SimTKArrayDouble_deallocate(self)

    def assign(self, *args):
        """
        assign(SimTKArrayDouble self, SimTK::Array_< double >::size_type n, double const & fillValue)

        Parameters:
            n: SimTK::Array_< double >::size_type
            fillValue: double const &

        """
        return _opensim.SimTKArrayDouble_assign(self, *args)

    def fill(self, *args):
        """
        fill(SimTKArrayDouble self, double const & fillValue)

        Parameters:
            fillValue: double const &

        """
        return _opensim.SimTKArrayDouble_fill(self, *args)

    def swap(self, *args):
        """
        swap(SimTKArrayDouble self, SimTKArrayDouble other)

        Parameters:
            other: SimTK::Array_< double > &

        """
        return _opensim.SimTKArrayDouble_swap(self, *args)

    def adoptData(self, *args):
        """
        adoptData(SimTKArrayDouble self, double * newData, SimTK::Array_< double >::size_type dataSize, SimTK::Array_< double >::size_type dataCapacity) -> SimTKArrayDouble

        Parameters:
            newData: double *
            dataSize: SimTK::Array_< double >::size_type
            dataCapacity: SimTK::Array_< double >::size_type

        adoptData(SimTKArrayDouble self, double * newData, SimTK::Array_< double >::size_type dataSize) -> SimTKArrayDouble

        Parameters:
            newData: double *
            dataSize: SimTK::Array_< double >::size_type

        """
        return _opensim.SimTKArrayDouble_adoptData(self, *args)

    def shareData(self, *args):
        """
        shareData(SimTKArrayDouble self, double * newData, SimTK::Array_< double >::size_type dataSize) -> SimTKArrayDouble

        Parameters:
            newData: double *
            dataSize: SimTK::Array_< double >::size_type

        shareData(SimTKArrayDouble self, double * first, double const * last1) -> SimTKArrayDouble

        Parameters:
            first: double *
            last1: double const *

        """
        return _opensim.SimTKArrayDouble_shareData(self, *args)

    def size(self):
        """
        size(SimTKArrayDouble self) -> SimTK::Array_< double >::size_type

        Parameters:
            self: SimTK::Array_< double > const *

        """
        return _opensim.SimTKArrayDouble_size(self)

    def max_size(self):
        """
        max_size(SimTKArrayDouble self) -> SimTK::Array_< double >::size_type

        Parameters:
            self: SimTK::Array_< double > const *

        """
        return _opensim.SimTKArrayDouble_max_size(self)

    def empty(self):
        """
        empty(SimTKArrayDouble self) -> bool

        Parameters:
            self: SimTK::Array_< double > const *

        """
        return _opensim.SimTKArrayDouble_empty(self)

    def capacity(self):
        """
        capacity(SimTKArrayDouble self) -> SimTK::Array_< double >::size_type

        Parameters:
            self: SimTK::Array_< double > const *

        """
        return _opensim.SimTKArrayDouble_capacity(self)

    def resize(self, *args):
        """
        resize(SimTKArrayDouble self, SimTK::Array_< double >::size_type n)

        Parameters:
            n: SimTK::Array_< double >::size_type

        resize(SimTKArrayDouble self, SimTK::Array_< double >::size_type n, double const & initVal)

        Parameters:
            n: SimTK::Array_< double >::size_type
            initVal: double const &

        """
        return _opensim.SimTKArrayDouble_resize(self, *args)

    def reserve(self, *args):
        """
        reserve(SimTKArrayDouble self, SimTK::Array_< double >::size_type n)

        Parameters:
            n: SimTK::Array_< double >::size_type

        """
        return _opensim.SimTKArrayDouble_reserve(self, *args)

    def shrink_to_fit(self):
        """
        shrink_to_fit(SimTKArrayDouble self)

        Parameters:
            self: SimTK::Array_< double > *

        """
        return _opensim.SimTKArrayDouble_shrink_to_fit(self)

    def allocated(self):
        """
        allocated(SimTKArrayDouble self) -> SimTK::Array_< double >::size_type

        Parameters:
            self: SimTK::Array_< double > const *

        """
        return _opensim.SimTKArrayDouble_allocated(self)

    def isOwner(self):
        """
        isOwner(SimTKArrayDouble self) -> bool

        Parameters:
            self: SimTK::Array_< double > const *

        """
        return _opensim.SimTKArrayDouble_isOwner(self)

    def cbegin(self):
        """
        cbegin(SimTKArrayDouble self) -> double const *

        Parameters:
            self: SimTK::Array_< double > const *

        """
        return _opensim.SimTKArrayDouble_cbegin(self)

    def begin(self, *args):
        """
        begin(SimTKArrayDouble self) -> double const
        begin(SimTKArrayDouble self) -> double *

        Parameters:
            self: SimTK::Array_< double > *

        """
        return _opensim.SimTKArrayDouble_begin(self, *args)

    def cend(self):
        """
        cend(SimTKArrayDouble self) -> double const *

        Parameters:
            self: SimTK::Array_< double > const *

        """
        return _opensim.SimTKArrayDouble_cend(self)

    def end(self, *args):
        """
        end(SimTKArrayDouble self) -> double const
        end(SimTKArrayDouble self) -> double *

        Parameters:
            self: SimTK::Array_< double > *

        """
        return _opensim.SimTKArrayDouble_end(self, *args)

    def crbegin(self):
        """
        crbegin(SimTKArrayDouble self) -> SimTK::Array_< double >::const_reverse_iterator

        Parameters:
            self: SimTK::Array_< double > const *

        """
        return _opensim.SimTKArrayDouble_crbegin(self)

    def rbegin(self, *args):
        """
        rbegin(SimTKArrayDouble self) -> SimTK::Array_< double >::const_reverse_iterator
        rbegin(SimTKArrayDouble self) -> SimTK::Array_< double >::reverse_iterator

        Parameters:
            self: SimTK::Array_< double > *

        """
        return _opensim.SimTKArrayDouble_rbegin(self, *args)

    def crend(self):
        """
        crend(SimTKArrayDouble self) -> SimTK::Array_< double >::const_reverse_iterator

        Parameters:
            self: SimTK::Array_< double > const *

        """
        return _opensim.SimTKArrayDouble_crend(self)

    def rend(self, *args):
        """
        rend(SimTKArrayDouble self) -> SimTK::Array_< double >::const_reverse_iterator
        rend(SimTKArrayDouble self) -> SimTK::Array_< double >::reverse_iterator

        Parameters:
            self: SimTK::Array_< double > *

        """
        return _opensim.SimTKArrayDouble_rend(self, *args)

    def cdata(self):
        """
        cdata(SimTKArrayDouble self) -> double const *

        Parameters:
            self: SimTK::Array_< double > const *

        """
        return _opensim.SimTKArrayDouble_cdata(self)

    def data(self, *args):
        """
        data(SimTKArrayDouble self) -> double const
        data(SimTKArrayDouble self) -> double *

        Parameters:
            self: SimTK::Array_< double > *

        """
        return _opensim.SimTKArrayDouble_data(self, *args)

    def at(self, *args):
        """
        at(SimTKArrayDouble self, SimTK::Array_< double >::index_type i) -> double const

        Parameters:
            i: SimTK::Array_< double >::index_type

        at(SimTKArrayDouble self, SimTK::Array_< double >::index_type i) -> double &

        Parameters:
            i: SimTK::Array_< double >::index_type

        """
        return _opensim.SimTKArrayDouble_at(self, *args)

    def getElt(self, *args):
        """
        getElt(SimTKArrayDouble self, SimTK::Array_< double >::index_type i) -> double const &

        Parameters:
            i: SimTK::Array_< double >::index_type

        """
        return _opensim.SimTKArrayDouble_getElt(self, *args)

    def updElt(self, *args):
        """
        updElt(SimTKArrayDouble self, SimTK::Array_< double >::index_type i) -> double &

        Parameters:
            i: SimTK::Array_< double >::index_type

        """
        return _opensim.SimTKArrayDouble_updElt(self, *args)

    def front(self, *args):
        """
        front(SimTKArrayDouble self) -> double const
        front(SimTKArrayDouble self) -> double &

        Parameters:
            self: SimTK::Array_< double > *

        """
        return _opensim.SimTKArrayDouble_front(self, *args)

    def back(self, *args):
        """
        back(SimTKArrayDouble self) -> double const
        back(SimTKArrayDouble self) -> double &

        Parameters:
            self: SimTK::Array_< double > *

        """
        return _opensim.SimTKArrayDouble_back(self, *args)

    def push_back(self, *args):
        """
        push_back(SimTKArrayDouble self, double const & value)

        Parameters:
            value: double const &

        push_back(SimTKArrayDouble self)

        Parameters:
            self: SimTK::Array_< double > *

        """
        return _opensim.SimTKArrayDouble_push_back(self, *args)

    def raw_push_back(self):
        """
        raw_push_back(SimTKArrayDouble self) -> double *

        Parameters:
            self: SimTK::Array_< double > *

        """
        return _opensim.SimTKArrayDouble_raw_push_back(self)

    def pop_back(self):
        """
        pop_back(SimTKArrayDouble self)

        Parameters:
            self: SimTK::Array_< double > *

        """
        return _opensim.SimTKArrayDouble_pop_back(self)

    def erase(self, *args):
        """
        erase(SimTKArrayDouble self, double * first, double const * last1) -> double

        Parameters:
            first: double *
            last1: double const *

        erase(SimTKArrayDouble self, double * p) -> double *

        Parameters:
            p: double *

        """
        return _opensim.SimTKArrayDouble_erase(self, *args)

    def eraseFast(self, *args):
        """
        eraseFast(SimTKArrayDouble self, double * p) -> double *

        Parameters:
            p: double *

        """
        return _opensim.SimTKArrayDouble_eraseFast(self, *args)

    def clear(self):
        """
        clear(SimTKArrayDouble self)

        Parameters:
            self: SimTK::Array_< double > *

        """
        return _opensim.SimTKArrayDouble_clear(self)

    def insert(self, *args):
        """
        insert(SimTKArrayDouble self, double * p, SimTK::Array_< double >::size_type n, double const & value) -> double

        Parameters:
            p: double *
            n: SimTK::Array_< double >::size_type
            value: double const &

        insert(SimTKArrayDouble self, double * p, double const & value) -> double *

        Parameters:
            p: double *
            value: double const &

        """
        return _opensim.SimTKArrayDouble_insert(self, *args)

SimTKArrayDouble_swigregister = _opensim.SimTKArrayDouble_swigregister
SimTKArrayDouble_swigregister(SimTKArrayDouble)

class SimTKArrayVec3(_object):
    """Proxy of C++ SimTK::Array_<(SimTK::Vec3)> class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, SimTKArrayVec3, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, SimTKArrayVec3, name)
    __repr__ = _swig_repr
    def __init__(self, *args): 
        """
        __init__(SimTK::Array_<(SimTK::Vec3)> self) -> SimTKArrayVec3
        __init__(SimTK::Array_<(SimTK::Vec3)> self, SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type n) -> SimTKArrayVec3

        Parameters:
            n: SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type

        __init__(SimTK::Array_<(SimTK::Vec3)> self, SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type n, Vec3 initVal) -> SimTKArrayVec3

        Parameters:
            n: SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type
            initVal: SimTK::Vec< 3,double,1 > const &

        __init__(SimTK::Array_<(SimTK::Vec3)> self, SimTKArrayVec3 src) -> SimTKArrayVec3

        Parameters:
            src: SimTK::Array_< SimTK::Vec3 > const &

        __init__(SimTK::Array_<(SimTK::Vec3)> self, Vec3 first, Vec3 last1, DontCopy arg4) -> SimTKArrayVec3

        Parameters:
            first: SimTK::Vec< 3,double,1 > *
            last1: SimTK::Vec< 3,double,1 > const *
            arg4: SimTK::DontCopy const &

        """
        this = _opensim.new_SimTKArrayVec3(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_SimTKArrayVec3
    __del__ = lambda self : None;
    def deallocate(self):
        """
        deallocate(SimTKArrayVec3 self) -> SimTKArrayVec3

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > *

        """
        return _opensim.SimTKArrayVec3_deallocate(self)

    def assign(self, *args):
        """
        assign(SimTKArrayVec3 self, SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type n, Vec3 fillValue)

        Parameters:
            n: SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type
            fillValue: SimTK::Vec< 3,double,1 > const &

        """
        return _opensim.SimTKArrayVec3_assign(self, *args)

    def fill(self, *args):
        """
        fill(SimTKArrayVec3 self, Vec3 fillValue)

        Parameters:
            fillValue: SimTK::Vec< 3,double,1 > const &

        """
        return _opensim.SimTKArrayVec3_fill(self, *args)

    def swap(self, *args):
        """
        swap(SimTKArrayVec3 self, SimTKArrayVec3 other)

        Parameters:
            other: SimTK::Array_< SimTK::Vec3 > &

        """
        return _opensim.SimTKArrayVec3_swap(self, *args)

    def adoptData(self, *args):
        """
        adoptData(SimTKArrayVec3 self, Vec3 newData, SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type dataSize, SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type dataCapacity) -> SimTKArrayVec3

        Parameters:
            newData: SimTK::Vec< 3,double,1 > *
            dataSize: SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type
            dataCapacity: SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type

        adoptData(SimTKArrayVec3 self, Vec3 newData, SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type dataSize) -> SimTKArrayVec3

        Parameters:
            newData: SimTK::Vec< 3,double,1 > *
            dataSize: SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type

        """
        return _opensim.SimTKArrayVec3_adoptData(self, *args)

    def shareData(self, *args):
        """
        shareData(SimTKArrayVec3 self, Vec3 newData, SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type dataSize) -> SimTKArrayVec3

        Parameters:
            newData: SimTK::Vec< 3,double,1 > *
            dataSize: SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type

        shareData(SimTKArrayVec3 self, Vec3 first, Vec3 last1) -> SimTKArrayVec3

        Parameters:
            first: SimTK::Vec< 3,double,1 > *
            last1: SimTK::Vec< 3,double,1 > const *

        """
        return _opensim.SimTKArrayVec3_shareData(self, *args)

    def size(self):
        """
        size(SimTKArrayVec3 self) -> SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > const *

        """
        return _opensim.SimTKArrayVec3_size(self)

    def max_size(self):
        """
        max_size(SimTKArrayVec3 self) -> SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > const *

        """
        return _opensim.SimTKArrayVec3_max_size(self)

    def empty(self):
        """
        empty(SimTKArrayVec3 self) -> bool

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > const *

        """
        return _opensim.SimTKArrayVec3_empty(self)

    def capacity(self):
        """
        capacity(SimTKArrayVec3 self) -> SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > const *

        """
        return _opensim.SimTKArrayVec3_capacity(self)

    def resize(self, *args):
        """
        resize(SimTKArrayVec3 self, SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type n)

        Parameters:
            n: SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type

        resize(SimTKArrayVec3 self, SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type n, Vec3 initVal)

        Parameters:
            n: SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type
            initVal: SimTK::Vec< 3,double,1 > const &

        """
        return _opensim.SimTKArrayVec3_resize(self, *args)

    def reserve(self, *args):
        """
        reserve(SimTKArrayVec3 self, SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type n)

        Parameters:
            n: SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type

        """
        return _opensim.SimTKArrayVec3_reserve(self, *args)

    def shrink_to_fit(self):
        """
        shrink_to_fit(SimTKArrayVec3 self)

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > *

        """
        return _opensim.SimTKArrayVec3_shrink_to_fit(self)

    def allocated(self):
        """
        allocated(SimTKArrayVec3 self) -> SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > const *

        """
        return _opensim.SimTKArrayVec3_allocated(self)

    def isOwner(self):
        """
        isOwner(SimTKArrayVec3 self) -> bool

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > const *

        """
        return _opensim.SimTKArrayVec3_isOwner(self)

    def cbegin(self):
        """
        cbegin(SimTKArrayVec3 self) -> Vec3

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > const *

        """
        return _opensim.SimTKArrayVec3_cbegin(self)

    def begin(self, *args):
        """
        begin(SimTKArrayVec3 self) -> Vec3
        begin(SimTKArrayVec3 self) -> Vec3

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > *

        """
        return _opensim.SimTKArrayVec3_begin(self, *args)

    def cend(self):
        """
        cend(SimTKArrayVec3 self) -> Vec3

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > const *

        """
        return _opensim.SimTKArrayVec3_cend(self)

    def end(self, *args):
        """
        end(SimTKArrayVec3 self) -> Vec3
        end(SimTKArrayVec3 self) -> Vec3

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > *

        """
        return _opensim.SimTKArrayVec3_end(self, *args)

    def crbegin(self):
        """
        crbegin(SimTKArrayVec3 self) -> SimTK::Array_< SimTK::Vec< 3,double,1 > >::const_reverse_iterator

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > const *

        """
        return _opensim.SimTKArrayVec3_crbegin(self)

    def rbegin(self, *args):
        """
        rbegin(SimTKArrayVec3 self) -> SimTK::Array_< SimTK::Vec< 3,double,1 > >::const_reverse_iterator
        rbegin(SimTKArrayVec3 self) -> SimTK::Array_< SimTK::Vec< 3,double,1 > >::reverse_iterator

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > *

        """
        return _opensim.SimTKArrayVec3_rbegin(self, *args)

    def crend(self):
        """
        crend(SimTKArrayVec3 self) -> SimTK::Array_< SimTK::Vec< 3,double,1 > >::const_reverse_iterator

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > const *

        """
        return _opensim.SimTKArrayVec3_crend(self)

    def rend(self, *args):
        """
        rend(SimTKArrayVec3 self) -> SimTK::Array_< SimTK::Vec< 3,double,1 > >::const_reverse_iterator
        rend(SimTKArrayVec3 self) -> SimTK::Array_< SimTK::Vec< 3,double,1 > >::reverse_iterator

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > *

        """
        return _opensim.SimTKArrayVec3_rend(self, *args)

    def cdata(self):
        """
        cdata(SimTKArrayVec3 self) -> Vec3

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > const *

        """
        return _opensim.SimTKArrayVec3_cdata(self)

    def data(self, *args):
        """
        data(SimTKArrayVec3 self) -> Vec3
        data(SimTKArrayVec3 self) -> Vec3

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > *

        """
        return _opensim.SimTKArrayVec3_data(self, *args)

    def at(self, *args):
        """
        at(SimTKArrayVec3 self, SimTK::Array_< SimTK::Vec< 3,double,1 > >::index_type i) -> Vec3

        Parameters:
            i: SimTK::Array_< SimTK::Vec< 3,double,1 > >::index_type

        at(SimTKArrayVec3 self, SimTK::Array_< SimTK::Vec< 3,double,1 > >::index_type i) -> Vec3

        Parameters:
            i: SimTK::Array_< SimTK::Vec< 3,double,1 > >::index_type

        """
        return _opensim.SimTKArrayVec3_at(self, *args)

    def getElt(self, *args):
        """
        getElt(SimTKArrayVec3 self, SimTK::Array_< SimTK::Vec< 3,double,1 > >::index_type i) -> Vec3

        Parameters:
            i: SimTK::Array_< SimTK::Vec< 3,double,1 > >::index_type

        """
        return _opensim.SimTKArrayVec3_getElt(self, *args)

    def updElt(self, *args):
        """
        updElt(SimTKArrayVec3 self, SimTK::Array_< SimTK::Vec< 3,double,1 > >::index_type i) -> Vec3

        Parameters:
            i: SimTK::Array_< SimTK::Vec< 3,double,1 > >::index_type

        """
        return _opensim.SimTKArrayVec3_updElt(self, *args)

    def front(self, *args):
        """
        front(SimTKArrayVec3 self) -> Vec3
        front(SimTKArrayVec3 self) -> Vec3

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > *

        """
        return _opensim.SimTKArrayVec3_front(self, *args)

    def back(self, *args):
        """
        back(SimTKArrayVec3 self) -> Vec3
        back(SimTKArrayVec3 self) -> Vec3

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > *

        """
        return _opensim.SimTKArrayVec3_back(self, *args)

    def push_back(self, *args):
        """
        push_back(SimTKArrayVec3 self, Vec3 value)

        Parameters:
            value: SimTK::Vec< 3,double,1 > const &

        push_back(SimTKArrayVec3 self)

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > *

        """
        return _opensim.SimTKArrayVec3_push_back(self, *args)

    def raw_push_back(self):
        """
        raw_push_back(SimTKArrayVec3 self) -> Vec3

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > *

        """
        return _opensim.SimTKArrayVec3_raw_push_back(self)

    def pop_back(self):
        """
        pop_back(SimTKArrayVec3 self)

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > *

        """
        return _opensim.SimTKArrayVec3_pop_back(self)

    def erase(self, *args):
        """
        erase(SimTKArrayVec3 self, Vec3 first, Vec3 last1) -> Vec3

        Parameters:
            first: SimTK::Vec< 3,double,1 > *
            last1: SimTK::Vec< 3,double,1 > const *

        erase(SimTKArrayVec3 self, Vec3 p) -> Vec3

        Parameters:
            p: SimTK::Vec< 3,double,1 > *

        """
        return _opensim.SimTKArrayVec3_erase(self, *args)

    def eraseFast(self, *args):
        """
        eraseFast(SimTKArrayVec3 self, Vec3 p) -> Vec3

        Parameters:
            p: SimTK::Vec< 3,double,1 > *

        """
        return _opensim.SimTKArrayVec3_eraseFast(self, *args)

    def clear(self):
        """
        clear(SimTKArrayVec3 self)

        Parameters:
            self: SimTK::Array_< SimTK::Vec3 > *

        """
        return _opensim.SimTKArrayVec3_clear(self)

    def insert(self, *args):
        """
        insert(SimTKArrayVec3 self, Vec3 p, SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type n, Vec3 value) -> Vec3

        Parameters:
            p: SimTK::Vec< 3,double,1 > *
            n: SimTK::Array_< SimTK::Vec< 3,double,1 > >::size_type
            value: SimTK::Vec< 3,double,1 > const &

        insert(SimTKArrayVec3 self, Vec3 p, Vec3 value) -> Vec3

        Parameters:
            p: SimTK::Vec< 3,double,1 > *
            value: SimTK::Vec< 3,double,1 > const &

        """
        return _opensim.SimTKArrayVec3_insert(self, *args)

SimTKArrayVec3_swigregister = _opensim.SimTKArrayVec3_swigregister
SimTKArrayVec3_swigregister(SimTKArrayVec3)

class MarkerWeight(OpenSimObject):
    """Proxy of C++ OpenSim::MarkerWeight class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MarkerWeight, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MarkerWeight, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MarkerWeight

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MarkerWeight_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MarkerWeight self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MarkerWeight_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MarkerWeight_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MarkerWeight self) -> MarkerWeight

        Parameters:
            self: OpenSim::MarkerWeight const *

        """
        return _opensim.MarkerWeight_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MarkerWeight self) -> std::string const &

        Parameters:
            self: OpenSim::MarkerWeight const *

        """
        return _opensim.MarkerWeight_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MarkerWeight self) -> MarkerWeight
        __init__(OpenSim::MarkerWeight self, std::string name, double weight) -> MarkerWeight

        Parameters:
            name: std::string
            weight: double

        __init__(OpenSim::MarkerWeight self, MarkerWeight source) -> MarkerWeight

        Parameters:
            source: OpenSim::MarkerWeight const &

        """
        this = _opensim.new_MarkerWeight(*args)
        try: self.this.append(this)
        except: self.this = this
    def setWeight(self, *args):
        """
        setWeight(MarkerWeight self, double weight)

        Parameters:
            weight: double

        """
        return _opensim.MarkerWeight_setWeight(self, *args)

    def getWeight(self):
        """
        getWeight(MarkerWeight self) -> double

        Parameters:
            self: OpenSim::MarkerWeight const *

        """
        return _opensim.MarkerWeight_getWeight(self)

    __swig_destroy__ = _opensim.delete_MarkerWeight
    __del__ = lambda self : None;
MarkerWeight_swigregister = _opensim.MarkerWeight_swigregister
MarkerWeight_swigregister(MarkerWeight)

def MarkerWeight_safeDownCast(*args):
  """
    MarkerWeight_safeDownCast(OpenSimObject obj) -> MarkerWeight

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MarkerWeight_safeDownCast(*args)

def MarkerWeight_getClassName():
  """MarkerWeight_getClassName() -> std::string const &"""
  return _opensim.MarkerWeight_getClassName()

class MarkersReference(ReferenceVec3):
    """Proxy of C++ OpenSim::MarkersReference class"""
    __swig_setmethods__ = {}
    for _s in [ReferenceVec3]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, MarkersReference, name, value)
    __swig_getmethods__ = {}
    for _s in [ReferenceVec3]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, MarkersReference, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> MarkersReference

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.MarkersReference_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(MarkersReference self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.MarkersReference_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.MarkersReference_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(MarkersReference self) -> MarkersReference

        Parameters:
            self: OpenSim::MarkersReference const *

        """
        return _opensim.MarkersReference_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(MarkersReference self) -> std::string const &

        Parameters:
            self: OpenSim::MarkersReference const *

        """
        return _opensim.MarkersReference_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::MarkersReference self) -> MarkersReference
        __init__(OpenSim::MarkersReference self, std::string const filename, Units modelUnits=OpenSim::Units(Units::Meters)) -> MarkersReference

        Parameters:
            filename: std::string const
            modelUnits: OpenSim::Units

        __init__(OpenSim::MarkersReference self, std::string const filename) -> MarkersReference

        Parameters:
            filename: std::string const

        __init__(OpenSim::MarkersReference self, MarkerData aMarkerData, OpenSim::Set< OpenSim::MarkerWeight > const * aMarkerWeightSet=None) -> MarkersReference

        Parameters:
            aMarkerData: OpenSim::MarkerData &
            aMarkerWeightSet: OpenSim::Set< OpenSim::MarkerWeight > const *

        __init__(OpenSim::MarkersReference self, MarkerData aMarkerData) -> MarkersReference

        Parameters:
            aMarkerData: OpenSim::MarkerData &

        """
        this = _opensim.new_MarkersReference(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_MarkersReference
    __del__ = lambda self : None;
    def copyData(self, *args):
        """
        copyData(MarkersReference self, MarkersReference aRef)

        Parameters:
            aRef: OpenSim::MarkersReference const &

        """
        return _opensim.MarkersReference_copyData(self, *args)

    def loadMarkersFile(self, *args):
        """
        loadMarkersFile(MarkersReference self, std::string const markerFile, Units modelUnits=OpenSim::Units(Units::Meters))

        Parameters:
            markerFile: std::string const
            modelUnits: OpenSim::Units

        loadMarkersFile(MarkersReference self, std::string const markerFile)

        Parameters:
            markerFile: std::string const

        """
        return _opensim.MarkersReference_loadMarkersFile(self, *args)

    def getNumRefs(self):
        """
        getNumRefs(MarkersReference self) -> int

        Parameters:
            self: OpenSim::MarkersReference const *

        """
        return _opensim.MarkersReference_getNumRefs(self)

    def getValidTimeRange(self):
        """
        getValidTimeRange(MarkersReference self) -> Vec2

        Parameters:
            self: OpenSim::MarkersReference const *

        """
        return _opensim.MarkersReference_getValidTimeRange(self)

    def getNames(self):
        """
        getNames(MarkersReference self) -> SimTK::Array_< std::string,unsigned int > const &

        Parameters:
            self: OpenSim::MarkersReference const *

        """
        return _opensim.MarkersReference_getNames(self)

    def getValues(self, *args):
        """
        getValues(MarkersReference self, State s, SimTKArrayVec3 values)

        Parameters:
            s: SimTK::State const &
            values: SimTK::Array_< SimTK::Vec3,unsigned int > &

        """
        return _opensim.MarkersReference_getValues(self, *args)

    def getSpeedValues(self, *args):
        """
        getSpeedValues(MarkersReference self, State s, SimTKArrayVec3 speedValues)

        Parameters:
            s: SimTK::State const &
            speedValues: SimTK::Array_< SimTK::Vec3,unsigned int > &

        """
        return _opensim.MarkersReference_getSpeedValues(self, *args)

    def getAccelerationValues(self, *args):
        """
        getAccelerationValues(MarkersReference self, State s, SimTKArrayVec3 accValues)

        Parameters:
            s: SimTK::State const &
            accValues: SimTK::Array_< SimTK::Vec3,unsigned int > &

        """
        return _opensim.MarkersReference_getAccelerationValues(self, *args)

    def getWeights(self, *args):
        """
        getWeights(MarkersReference self, State s, SimTKArrayDouble weights)

        Parameters:
            s: SimTK::State const &
            weights: SimTK::Array_< double,unsigned int > &

        """
        return _opensim.MarkersReference_getWeights(self, *args)

    def getSamplingFrequency(self):
        """
        getSamplingFrequency(MarkersReference self) -> double

        Parameters:
            self: OpenSim::MarkersReference *

        """
        return _opensim.MarkersReference_getSamplingFrequency(self)

    def updMarkerWeightSet(self):
        """
        updMarkerWeightSet(MarkersReference self) -> OpenSim::Set< OpenSim::MarkerWeight > &

        Parameters:
            self: OpenSim::MarkersReference *

        """
        return _opensim.MarkersReference_updMarkerWeightSet(self)

    def setMarkerWeightSet(self, *args):
        """
        setMarkerWeightSet(MarkersReference self, OpenSim::Set< OpenSim::MarkerWeight > & markerWeights)

        Parameters:
            markerWeights: OpenSim::Set< OpenSim::MarkerWeight > &

        """
        return _opensim.MarkersReference_setMarkerWeightSet(self, *args)

    def setDefaultWeight(self, *args):
        """
        setDefaultWeight(MarkersReference self, double weight)

        Parameters:
            weight: double

        """
        return _opensim.MarkersReference_setDefaultWeight(self, *args)

MarkersReference_swigregister = _opensim.MarkersReference_swigregister
MarkersReference_swigregister(MarkersReference)

def MarkersReference_safeDownCast(*args):
  """
    MarkersReference_safeDownCast(OpenSimObject obj) -> MarkersReference

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.MarkersReference_safeDownCast(*args)

def MarkersReference_getClassName():
  """MarkersReference_getClassName() -> std::string const &"""
  return _opensim.MarkersReference_getClassName()

class CoordinateReference(ReferenceDouble):
    """Proxy of C++ OpenSim::CoordinateReference class"""
    __swig_setmethods__ = {}
    for _s in [ReferenceDouble]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, CoordinateReference, name, value)
    __swig_getmethods__ = {}
    for _s in [ReferenceDouble]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, CoordinateReference, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> CoordinateReference

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.CoordinateReference_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(CoordinateReference self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.CoordinateReference_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.CoordinateReference_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(CoordinateReference self) -> CoordinateReference

        Parameters:
            self: OpenSim::CoordinateReference const *

        """
        return _opensim.CoordinateReference_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(CoordinateReference self) -> std::string const &

        Parameters:
            self: OpenSim::CoordinateReference const *

        """
        return _opensim.CoordinateReference_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::CoordinateReference self) -> CoordinateReference
        __init__(OpenSim::CoordinateReference self, std::string const name, Function ReferenceFunction) -> CoordinateReference

        Parameters:
            name: std::string const
            ReferenceFunction: OpenSim::Function &

        __init__(OpenSim::CoordinateReference self, CoordinateReference source) -> CoordinateReference

        Parameters:
            source: OpenSim::CoordinateReference const &

        """
        this = _opensim.new_CoordinateReference(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_CoordinateReference
    __del__ = lambda self : None;
    def getNumRefs(self):
        """
        getNumRefs(CoordinateReference self) -> int

        Parameters:
            self: OpenSim::CoordinateReference const *

        """
        return _opensim.CoordinateReference_getNumRefs(self)

    def getNames(self):
        """
        getNames(CoordinateReference self) -> SimTK::Array_< std::string,unsigned int > const &

        Parameters:
            self: OpenSim::CoordinateReference const *

        """
        return _opensim.CoordinateReference_getNames(self)

    def getValues(self, *args):
        """
        getValues(CoordinateReference self, State s, SimTKArrayDouble values)

        Parameters:
            s: SimTK::State const &
            values: SimTK::Array_< double,unsigned int > &

        """
        return _opensim.CoordinateReference_getValues(self, *args)

    def getWeights(self, *args):
        """
        getWeights(CoordinateReference self, State s, SimTKArrayDouble weights)

        Parameters:
            s: SimTK::State const &
            weights: SimTK::Array_< double,unsigned int > &

        """
        return _opensim.CoordinateReference_getWeights(self, *args)

    def getValue(self, *args):
        """
        getValue(CoordinateReference self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.CoordinateReference_getValue(self, *args)

    def getSpeedValue(self, *args):
        """
        getSpeedValue(CoordinateReference self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.CoordinateReference_getSpeedValue(self, *args)

    def getAccelerationValue(self, *args):
        """
        getAccelerationValue(CoordinateReference self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.CoordinateReference_getAccelerationValue(self, *args)

    def getWeight(self, *args):
        """
        getWeight(CoordinateReference self, State s) -> double

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.CoordinateReference_getWeight(self, *args)

    def setWeight(self, *args):
        """
        setWeight(CoordinateReference self, double weight)

        Parameters:
            weight: double

        """
        return _opensim.CoordinateReference_setWeight(self, *args)

    def setValueFunction(self, *args):
        """
        setValueFunction(CoordinateReference self, Function function)

        Parameters:
            function: OpenSim::Function const &

        """
        return _opensim.CoordinateReference_setValueFunction(self, *args)

CoordinateReference_swigregister = _opensim.CoordinateReference_swigregister
CoordinateReference_swigregister(CoordinateReference)

def CoordinateReference_safeDownCast(*args):
  """
    CoordinateReference_safeDownCast(OpenSimObject obj) -> CoordinateReference

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.CoordinateReference_safeDownCast(*args)

def CoordinateReference_getClassName():
  """CoordinateReference_getClassName() -> std::string const &"""
  return _opensim.CoordinateReference_getClassName()

class InverseKinematicsSolver(AssemblySolver):
    """Proxy of C++ OpenSim::InverseKinematicsSolver class"""
    __swig_setmethods__ = {}
    for _s in [AssemblySolver]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, InverseKinematicsSolver, name, value)
    __swig_getmethods__ = {}
    for _s in [AssemblySolver]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, InverseKinematicsSolver, name)
    __repr__ = _swig_repr
    __swig_destroy__ = _opensim.delete_InverseKinematicsSolver
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::InverseKinematicsSolver self, Model model, MarkersReference markersReference, ArrayCoordinateReference coordinateReferences, 
            double constraintWeight=SimTK::Infinity) -> InverseKinematicsSolver

        Parameters:
            model: OpenSim::Model const &
            markersReference: OpenSim::MarkersReference &
            coordinateReferences: SimTK::Array_< OpenSim::CoordinateReference,unsigned int > &
            constraintWeight: double

        __init__(OpenSim::InverseKinematicsSolver self, Model model, MarkersReference markersReference, ArrayCoordinateReference coordinateReferences) -> InverseKinematicsSolver

        Parameters:
            model: OpenSim::Model const &
            markersReference: OpenSim::MarkersReference &
            coordinateReferences: SimTK::Array_< OpenSim::CoordinateReference,unsigned int > &

        """
        this = _opensim.new_InverseKinematicsSolver(*args)
        try: self.this.append(this)
        except: self.this = this
    def updateMarkerWeight(self, *args):
        """
        updateMarkerWeight(InverseKinematicsSolver self, std::string const & markerName, double value)

        Parameters:
            markerName: std::string const &
            value: double

        updateMarkerWeight(InverseKinematicsSolver self, int markerIndex, double value)

        Parameters:
            markerIndex: int
            value: double

        """
        return _opensim.InverseKinematicsSolver_updateMarkerWeight(self, *args)

    def updateMarkerWeights(self, *args):
        """
        updateMarkerWeights(InverseKinematicsSolver self, SimTKArrayDouble weights)

        Parameters:
            weights: SimTK::Array_< double,unsigned int > const &

        """
        return _opensim.InverseKinematicsSolver_updateMarkerWeights(self, *args)

    def computeCurrentMarkerLocation(self, *args):
        """
        computeCurrentMarkerLocation(InverseKinematicsSolver self, std::string const & markerName) -> Vec3

        Parameters:
            markerName: std::string const &

        computeCurrentMarkerLocation(InverseKinematicsSolver self, int markerIndex) -> Vec3

        Parameters:
            markerIndex: int

        """
        return _opensim.InverseKinematicsSolver_computeCurrentMarkerLocation(self, *args)

    def computeCurrentMarkerLocations(self, *args):
        """
        computeCurrentMarkerLocations(InverseKinematicsSolver self, SimTKArrayVec3 markerLocations)

        Parameters:
            markerLocations: SimTK::Array_< SimTK::Vec3,unsigned int > &

        """
        return _opensim.InverseKinematicsSolver_computeCurrentMarkerLocations(self, *args)

    def computeCurrentMarkerError(self, *args):
        """
        computeCurrentMarkerError(InverseKinematicsSolver self, std::string const & markerName) -> double

        Parameters:
            markerName: std::string const &

        computeCurrentMarkerError(InverseKinematicsSolver self, int markerIndex) -> double

        Parameters:
            markerIndex: int

        """
        return _opensim.InverseKinematicsSolver_computeCurrentMarkerError(self, *args)

    def computeCurrentMarkerErrors(self, *args):
        """
        computeCurrentMarkerErrors(InverseKinematicsSolver self, SimTKArrayDouble markerErrors)

        Parameters:
            markerErrors: SimTK::Array_< double,unsigned int > &

        """
        return _opensim.InverseKinematicsSolver_computeCurrentMarkerErrors(self, *args)

    def computeCurrentSquaredMarkerError(self, *args):
        """
        computeCurrentSquaredMarkerError(InverseKinematicsSolver self, std::string const & markerName) -> double

        Parameters:
            markerName: std::string const &

        computeCurrentSquaredMarkerError(InverseKinematicsSolver self, int markerIndex) -> double

        Parameters:
            markerIndex: int

        """
        return _opensim.InverseKinematicsSolver_computeCurrentSquaredMarkerError(self, *args)

    def computeCurrentSquaredMarkerErrors(self, *args):
        """
        computeCurrentSquaredMarkerErrors(InverseKinematicsSolver self, SimTKArrayDouble markerErrors)

        Parameters:
            markerErrors: SimTK::Array_< double,unsigned int > &

        """
        return _opensim.InverseKinematicsSolver_computeCurrentSquaredMarkerErrors(self, *args)

    def getMarkerNameForIndex(self, *args):
        """
        getMarkerNameForIndex(InverseKinematicsSolver self, int markerIndex) -> std::string

        Parameters:
            markerIndex: int

        """
        return _opensim.InverseKinematicsSolver_getMarkerNameForIndex(self, *args)

InverseKinematicsSolver_swigregister = _opensim.InverseKinematicsSolver_swigregister
InverseKinematicsSolver_swigregister(InverseKinematicsSolver)

class Tool(OpenSimObject):
    """Proxy of C++ OpenSim::Tool class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, Tool, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, Tool, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> Tool

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.Tool_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(Tool self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.Tool_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.Tool_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(Tool self) -> Tool

        Parameters:
            self: OpenSim::Tool const *

        """
        return _opensim.Tool_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(Tool self) -> std::string const &

        Parameters:
            self: OpenSim::Tool const *

        """
        return _opensim.Tool_getConcreteClassName(self)

    Quiet = _opensim.Tool_Quiet
    Progress = _opensim.Tool_Progress
    DetailedProgress = _opensim.Tool_DetailedProgress
    Debug = _opensim.Tool_Debug
    __swig_destroy__ = _opensim.delete_Tool
    __del__ = lambda self : None;
    def run(self):
        """
        run(Tool self) -> bool

        Parameters:
            self: OpenSim::Tool *

        """
        return _opensim.Tool_run(self)

    def getInputsDir(self):
        """
        getInputsDir(Tool self) -> std::string const &

        Parameters:
            self: OpenSim::Tool const *

        """
        return _opensim.Tool_getInputsDir(self)

    def setInputsDir(self, *args):
        """
        setInputsDir(Tool self, std::string const & aString)

        Parameters:
            aString: std::string const &

        """
        return _opensim.Tool_setInputsDir(self, *args)

    def getResultsDir(self):
        """
        getResultsDir(Tool self) -> std::string const &

        Parameters:
            self: OpenSim::Tool const *

        """
        return _opensim.Tool_getResultsDir(self)

    def setResultsDir(self, *args):
        """
        setResultsDir(Tool self, std::string const & aString)

        Parameters:
            aString: std::string const &

        """
        return _opensim.Tool_setResultsDir(self, *args)

    def getVerboseLevel(self):
        """
        getVerboseLevel(Tool self) -> OpenSim::Tool::VerboseLevel const

        Parameters:
            self: OpenSim::Tool const *

        """
        return _opensim.Tool_getVerboseLevel(self)

    def setVerboseLevel(self, *args):
        """
        setVerboseLevel(Tool self, OpenSim::Tool::VerboseLevel const aVerboseLevel)

        Parameters:
            aVerboseLevel: enum OpenSim::Tool::VerboseLevel const

        """
        return _opensim.Tool_setVerboseLevel(self, *args)

Tool_swigregister = _opensim.Tool_swigregister
Tool_swigregister(Tool)

def Tool_safeDownCast(*args):
  """
    Tool_safeDownCast(OpenSimObject obj) -> Tool

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.Tool_safeDownCast(*args)

def Tool_getClassName():
  """Tool_getClassName() -> std::string const &"""
  return _opensim.Tool_getClassName()

class DynamicsTool(Tool):
    """Proxy of C++ OpenSim::DynamicsTool class"""
    __swig_setmethods__ = {}
    for _s in [Tool]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, DynamicsTool, name, value)
    __swig_getmethods__ = {}
    for _s in [Tool]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, DynamicsTool, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> DynamicsTool

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.DynamicsTool_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(DynamicsTool self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.DynamicsTool_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.DynamicsTool_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(DynamicsTool self) -> DynamicsTool

        Parameters:
            self: OpenSim::DynamicsTool const *

        """
        return _opensim.DynamicsTool_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(DynamicsTool self) -> std::string const &

        Parameters:
            self: OpenSim::DynamicsTool const *

        """
        return _opensim.DynamicsTool_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_DynamicsTool
    __del__ = lambda self : None;
    def disableModelForces(self, *args):
        """
        disableModelForces(DynamicsTool self, Model model, State s, ArrayStr forcesByNameOrGroup)

        Parameters:
            model: OpenSim::Model &
            s: SimTK::State &
            forcesByNameOrGroup: OpenSim::Array< std::string > const &

        """
        return _opensim.DynamicsTool_disableModelForces(self, *args)

    def getExternalLoads(self):
        """
        getExternalLoads(DynamicsTool self) -> ExternalLoads

        Parameters:
            self: OpenSim::DynamicsTool const *

        """
        return _opensim.DynamicsTool_getExternalLoads(self)

    def updExternalLoads(self):
        """
        updExternalLoads(DynamicsTool self) -> ExternalLoads

        Parameters:
            self: OpenSim::DynamicsTool *

        """
        return _opensim.DynamicsTool_updExternalLoads(self)

    def getExternalLoadsFileName(self):
        """
        getExternalLoadsFileName(DynamicsTool self) -> std::string const &

        Parameters:
            self: OpenSim::DynamicsTool const *

        """
        return _opensim.DynamicsTool_getExternalLoadsFileName(self)

    def setExternalLoadsFileName(self, *args):
        """
        setExternalLoadsFileName(DynamicsTool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.DynamicsTool_setExternalLoadsFileName(self, *args)

    def setModelFileName(self, *args):
        """
        setModelFileName(DynamicsTool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.DynamicsTool_setModelFileName(self, *args)

    def getModelFileName(self):
        """
        getModelFileName(DynamicsTool self) -> std::string

        Parameters:
            self: OpenSim::DynamicsTool const *

        """
        return _opensim.DynamicsTool_getModelFileName(self)

    def setStartTime(self, *args):
        """
        setStartTime(DynamicsTool self, double d)

        Parameters:
            d: double

        """
        return _opensim.DynamicsTool_setStartTime(self, *args)

    def getStartTime(self):
        """
        getStartTime(DynamicsTool self) -> double

        Parameters:
            self: OpenSim::DynamicsTool const *

        """
        return _opensim.DynamicsTool_getStartTime(self)

    def setEndTime(self, *args):
        """
        setEndTime(DynamicsTool self, double d)

        Parameters:
            d: double

        """
        return _opensim.DynamicsTool_setEndTime(self, *args)

    def getEndTime(self):
        """
        getEndTime(DynamicsTool self) -> double

        Parameters:
            self: OpenSim::DynamicsTool const *

        """
        return _opensim.DynamicsTool_getEndTime(self)

    def setModel(self, *args):
        """
        setModel(DynamicsTool self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.DynamicsTool_setModel(self, *args)

    def setExcludedForces(self, *args):
        """
        setExcludedForces(DynamicsTool self, ArrayStr aExcluded)

        Parameters:
            aExcluded: OpenSim::Array< std::string > const &

        """
        return _opensim.DynamicsTool_setExcludedForces(self, *args)

    def createExternalLoads(self, *args):
        """
        createExternalLoads(DynamicsTool self, std::string const & aExternalLoadsFileName, Model aModel, Storage loadKinematics=None) -> bool

        Parameters:
            aExternalLoadsFileName: std::string const &
            aModel: OpenSim::Model &
            loadKinematics: OpenSim::Storage const *

        createExternalLoads(DynamicsTool self, std::string const & aExternalLoadsFileName, Model aModel) -> bool

        Parameters:
            aExternalLoadsFileName: std::string const &
            aModel: OpenSim::Model &

        """
        return _opensim.DynamicsTool_createExternalLoads(self, *args)

    def run(self):
        """
        run(DynamicsTool self) -> bool

        Parameters:
            self: OpenSim::DynamicsTool *

        """
        return _opensim.DynamicsTool_run(self)

DynamicsTool_swigregister = _opensim.DynamicsTool_swigregister
DynamicsTool_swigregister(DynamicsTool)

def DynamicsTool_safeDownCast(*args):
  """
    DynamicsTool_safeDownCast(OpenSimObject obj) -> DynamicsTool

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.DynamicsTool_safeDownCast(*args)

def DynamicsTool_getClassName():
  """DynamicsTool_getClassName() -> std::string const &"""
  return _opensim.DynamicsTool_getClassName()

class InverseDynamicsTool(DynamicsTool):
    """Proxy of C++ OpenSim::InverseDynamicsTool class"""
    __swig_setmethods__ = {}
    for _s in [DynamicsTool]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, InverseDynamicsTool, name, value)
    __swig_getmethods__ = {}
    for _s in [DynamicsTool]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, InverseDynamicsTool, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> InverseDynamicsTool

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.InverseDynamicsTool_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(InverseDynamicsTool self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.InverseDynamicsTool_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.InverseDynamicsTool_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(InverseDynamicsTool self) -> InverseDynamicsTool

        Parameters:
            self: OpenSim::InverseDynamicsTool const *

        """
        return _opensim.InverseDynamicsTool_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(InverseDynamicsTool self) -> std::string const &

        Parameters:
            self: OpenSim::InverseDynamicsTool const *

        """
        return _opensim.InverseDynamicsTool_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_InverseDynamicsTool
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::InverseDynamicsTool self) -> InverseDynamicsTool
        __init__(OpenSim::InverseDynamicsTool self, std::string const & aFileName, bool aLoadModel=True) -> InverseDynamicsTool

        Parameters:
            aFileName: std::string const &
            aLoadModel: bool

        __init__(OpenSim::InverseDynamicsTool self, std::string const & aFileName) -> InverseDynamicsTool

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::InverseDynamicsTool self, InverseDynamicsTool aObject) -> InverseDynamicsTool

        Parameters:
            aObject: OpenSim::InverseDynamicsTool const &

        """
        this = _opensim.new_InverseDynamicsTool(*args)
        try: self.this.append(this)
        except: self.this = this
    def registerTypes():
        """registerTypes()"""
        return _opensim.InverseDynamicsTool_registerTypes()

    if _newclass:registerTypes = staticmethod(registerTypes)
    __swig_getmethods__["registerTypes"] = lambda x: registerTypes
    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(InverseDynamicsTool self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(InverseDynamicsTool self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.InverseDynamicsTool_updateFromXMLNode(self, *args)

    def setCoordinateValues(self, *args):
        """
        setCoordinateValues(InverseDynamicsTool self, Storage aStorage)

        Parameters:
            aStorage: OpenSim::Storage const &

        """
        return _opensim.InverseDynamicsTool_setCoordinateValues(self, *args)

    def getOutputGenForceFileName(self):
        """
        getOutputGenForceFileName(InverseDynamicsTool self) -> std::string

        Parameters:
            self: OpenSim::InverseDynamicsTool const *

        """
        return _opensim.InverseDynamicsTool_getOutputGenForceFileName(self)

    def setOutputGenForceFileName(self, *args):
        """
        setOutputGenForceFileName(InverseDynamicsTool self, std::string const & desiredOutputFileName)

        Parameters:
            desiredOutputFileName: std::string const &

        """
        return _opensim.InverseDynamicsTool_setOutputGenForceFileName(self, *args)

    def getCoordinatesFileName(self):
        """
        getCoordinatesFileName(InverseDynamicsTool self) -> std::string const &

        Parameters:
            self: OpenSim::InverseDynamicsTool const *

        """
        return _opensim.InverseDynamicsTool_getCoordinatesFileName(self)

    def setCoordinatesFileName(self, *args):
        """
        setCoordinatesFileName(InverseDynamicsTool self, std::string const & aCoordinateFile)

        Parameters:
            aCoordinateFile: std::string const &

        """
        return _opensim.InverseDynamicsTool_setCoordinatesFileName(self, *args)

    def getLowpassCutoffFrequency(self):
        """
        getLowpassCutoffFrequency(InverseDynamicsTool self) -> double const

        Parameters:
            self: OpenSim::InverseDynamicsTool const *

        """
        return _opensim.InverseDynamicsTool_getLowpassCutoffFrequency(self)

    def setLowpassCutoffFrequency(self, *args):
        """
        setLowpassCutoffFrequency(InverseDynamicsTool self, double aFrequency)

        Parameters:
            aFrequency: double

        """
        return _opensim.InverseDynamicsTool_setLowpassCutoffFrequency(self, *args)

    def run(self):
        """
        run(InverseDynamicsTool self) -> bool

        Parameters:
            self: OpenSim::InverseDynamicsTool *

        """
        return _opensim.InverseDynamicsTool_run(self)

InverseDynamicsTool_swigregister = _opensim.InverseDynamicsTool_swigregister
InverseDynamicsTool_swigregister(InverseDynamicsTool)

def InverseDynamicsTool_safeDownCast(*args):
  """
    InverseDynamicsTool_safeDownCast(OpenSimObject obj) -> InverseDynamicsTool

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.InverseDynamicsTool_safeDownCast(*args)

def InverseDynamicsTool_getClassName():
  """InverseDynamicsTool_getClassName() -> std::string const &"""
  return _opensim.InverseDynamicsTool_getClassName()

def InverseDynamicsTool_registerTypes():
  """InverseDynamicsTool_registerTypes()"""
  return _opensim.InverseDynamicsTool_registerTypes()

class ForwardTool(AbstractTool):
    """Proxy of C++ OpenSim::ForwardTool class"""
    __swig_setmethods__ = {}
    for _s in [AbstractTool]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, ForwardTool, name, value)
    __swig_getmethods__ = {}
    for _s in [AbstractTool]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, ForwardTool, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> ForwardTool

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.ForwardTool_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(ForwardTool self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.ForwardTool_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.ForwardTool_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(ForwardTool self) -> ForwardTool

        Parameters:
            self: OpenSim::ForwardTool const *

        """
        return _opensim.ForwardTool_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(ForwardTool self) -> std::string const &

        Parameters:
            self: OpenSim::ForwardTool const *

        """
        return _opensim.ForwardTool_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_ForwardTool
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::ForwardTool self) -> ForwardTool
        __init__(OpenSim::ForwardTool self, std::string const & aFileName, bool aUpdateFromXMLNode=True, bool aLoadModel=True) -> ForwardTool

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool
            aLoadModel: bool

        __init__(OpenSim::ForwardTool self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> ForwardTool

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::ForwardTool self, std::string const & aFileName) -> ForwardTool

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::ForwardTool self, ForwardTool aObject) -> ForwardTool

        Parameters:
            aObject: OpenSim::ForwardTool const &

        """
        this = _opensim.new_ForwardTool(*args)
        try: self.this.append(this)
        except: self.this = this
    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(ForwardTool self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(ForwardTool self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.ForwardTool_updateFromXMLNode(self, *args)

    def setManager(self, *args):
        """
        setManager(ForwardTool self, Manager m)

        Parameters:
            m: OpenSim::Manager &

        """
        return _opensim.ForwardTool_setManager(self, *args)

    def getManager(self):
        """
        getManager(ForwardTool self) -> Manager

        Parameters:
            self: OpenSim::ForwardTool const *

        """
        return _opensim.ForwardTool_getManager(self)

    def getStatesFileName(self):
        """
        getStatesFileName(ForwardTool self) -> std::string const &

        Parameters:
            self: OpenSim::ForwardTool const *

        """
        return _opensim.ForwardTool_getStatesFileName(self)

    def setStatesFileName(self, *args):
        """
        setStatesFileName(ForwardTool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.ForwardTool_setStatesFileName(self, *args)

    def getUseSpecifiedDt(self):
        """
        getUseSpecifiedDt(ForwardTool self) -> bool

        Parameters:
            self: OpenSim::ForwardTool const *

        """
        return _opensim.ForwardTool_getUseSpecifiedDt(self)

    def setUseSpecifiedDt(self, *args):
        """
        setUseSpecifiedDt(ForwardTool self, bool aUseSpecifiedDt)

        Parameters:
            aUseSpecifiedDt: bool

        """
        return _opensim.ForwardTool_setUseSpecifiedDt(self, *args)

    def setPrintResultFiles(self, *args):
        """
        setPrintResultFiles(ForwardTool self, bool aToWrite)

        Parameters:
            aToWrite: bool

        """
        return _opensim.ForwardTool_setPrintResultFiles(self, *args)

    def run(self):
        """
        run(ForwardTool self) -> bool

        Parameters:
            self: OpenSim::ForwardTool *

        """
        return _opensim.ForwardTool_run(self)

    def printResults(self):
        """
        printResults(ForwardTool self)

        Parameters:
            self: OpenSim::ForwardTool *

        """
        return _opensim.ForwardTool_printResults(self)

    def Step(*args):
        """
        Step(double t, double t0, double t1) -> double

        Parameters:
            t: double
            t0: double
            t1: double

        """
        return _opensim.ForwardTool_Step(*args)

    if _newclass:Step = staticmethod(Step)
    __swig_getmethods__["Step"] = lambda x: Step
    def SigmaUp(*args):
        """
        SigmaUp(double tau, double to, double t) -> double

        Parameters:
            tau: double
            to: double
            t: double

        """
        return _opensim.ForwardTool_SigmaUp(*args)

    if _newclass:SigmaUp = staticmethod(SigmaUp)
    __swig_getmethods__["SigmaUp"] = lambda x: SigmaUp
    def SigmaDn(*args):
        """
        SigmaDn(double tau, double to, double t) -> double

        Parameters:
            tau: double
            to: double
            t: double

        """
        return _opensim.ForwardTool_SigmaDn(*args)

    if _newclass:SigmaDn = staticmethod(SigmaDn)
    __swig_getmethods__["SigmaDn"] = lambda x: SigmaDn
    def loadStatesStorage(self, *args):
        """
        loadStatesStorage(ForwardTool self, std::string & statesFileName, OpenSim::Storage *& rYStore)

        Parameters:
            statesFileName: std::string &
            rYStore: OpenSim::Storage *&

        """
        return _opensim.ForwardTool_loadStatesStorage(self, *args)

    def getParsingLog(self):
        """
        getParsingLog(ForwardTool self) -> std::string const &

        Parameters:
            self: OpenSim::ForwardTool *

        """
        return _opensim.ForwardTool_getParsingLog(self)

ForwardTool_swigregister = _opensim.ForwardTool_swigregister
ForwardTool_swigregister(ForwardTool)

def ForwardTool_safeDownCast(*args):
  """
    ForwardTool_safeDownCast(OpenSimObject obj) -> ForwardTool

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.ForwardTool_safeDownCast(*args)

def ForwardTool_getClassName():
  """ForwardTool_getClassName() -> std::string const &"""
  return _opensim.ForwardTool_getClassName()

def ForwardTool_Step(*args):
  """
    ForwardTool_Step(double t, double t0, double t1) -> double

    Parameters:
        t: double
        t0: double
        t1: double

    """
  return _opensim.ForwardTool_Step(*args)

def ForwardTool_SigmaUp(*args):
  """
    ForwardTool_SigmaUp(double tau, double to, double t) -> double

    Parameters:
        tau: double
        to: double
        t: double

    """
  return _opensim.ForwardTool_SigmaUp(*args)

def ForwardTool_SigmaDn(*args):
  """
    ForwardTool_SigmaDn(double tau, double to, double t) -> double

    Parameters:
        tau: double
        to: double
        t: double

    """
  return _opensim.ForwardTool_SigmaDn(*args)

class TrackingTask(OpenSimObject):
    """Proxy of C++ OpenSim::TrackingTask class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, TrackingTask, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, TrackingTask, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> TrackingTask

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.TrackingTask_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(TrackingTask self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.TrackingTask_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.TrackingTask_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(TrackingTask self) -> TrackingTask

        Parameters:
            self: OpenSim::TrackingTask const *

        """
        return _opensim.TrackingTask_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(TrackingTask self) -> std::string const &

        Parameters:
            self: OpenSim::TrackingTask const *

        """
        return _opensim.TrackingTask_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_TrackingTask
    __del__ = lambda self : None;
    def setModel(self, *args):
        """
        setModel(TrackingTask self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.TrackingTask_setModel(self, *args)

    def getModel(self):
        """
        getModel(TrackingTask self) -> Model

        Parameters:
            self: OpenSim::TrackingTask const *

        """
        return _opensim.TrackingTask_getModel(self)

    def setOn(self, *args):
        """
        setOn(TrackingTask self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.TrackingTask_setOn(self, *args)

    def getOn(self):
        """
        getOn(TrackingTask self) -> bool

        Parameters:
            self: OpenSim::TrackingTask const *

        """
        return _opensim.TrackingTask_getOn(self)

    def setWeight(self, *args):
        """
        setWeight(TrackingTask self, double aW0, double aW1=0.0, double aW2=0.0)

        Parameters:
            aW0: double
            aW1: double
            aW2: double

        setWeight(TrackingTask self, double aW0, double aW1=0.0)

        Parameters:
            aW0: double
            aW1: double

        setWeight(TrackingTask self, double aW0)

        Parameters:
            aW0: double

        """
        return _opensim.TrackingTask_setWeight(self, *args)

    def setWeights(self, *args):
        """
        setWeights(TrackingTask self, ArrayDouble aWeights)

        Parameters:
            aWeights: OpenSim::Array< double > const &

        """
        return _opensim.TrackingTask_setWeights(self, *args)

    def getWeight(self, *args):
        """
        getWeight(TrackingTask self, int aWhich) -> double

        Parameters:
            aWhich: int

        """
        return _opensim.TrackingTask_getWeight(self, *args)

    def getWeights(self):
        """
        getWeights(TrackingTask self) -> ArrayDouble

        Parameters:
            self: OpenSim::TrackingTask const *

        """
        return _opensim.TrackingTask_getWeights(self)

    def getNumTaskFunctions(self):
        """
        getNumTaskFunctions(TrackingTask self) -> int

        Parameters:
            self: OpenSim::TrackingTask const *

        """
        return _opensim.TrackingTask_getNumTaskFunctions(self)

    def setTaskFunctions(self, *args):
        """
        setTaskFunctions(TrackingTask self, Function aF0, Function aF1=None, Function aF2=None)

        Parameters:
            aF0: OpenSim::Function *
            aF1: OpenSim::Function *
            aF2: OpenSim::Function *

        setTaskFunctions(TrackingTask self, Function aF0, Function aF1=None)

        Parameters:
            aF0: OpenSim::Function *
            aF1: OpenSim::Function *

        setTaskFunctions(TrackingTask self, Function aF0)

        Parameters:
            aF0: OpenSim::Function *

        """
        return _opensim.TrackingTask_setTaskFunctions(self, *args)

TrackingTask_swigregister = _opensim.TrackingTask_swigregister
TrackingTask_swigregister(TrackingTask)

def TrackingTask_safeDownCast(*args):
  """
    TrackingTask_safeDownCast(OpenSimObject obj) -> TrackingTask

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.TrackingTask_safeDownCast(*args)

def TrackingTask_getClassName():
  """TrackingTask_getClassName() -> std::string const &"""
  return _opensim.TrackingTask_getClassName()

class CMC_Task(TrackingTask):
    """Proxy of C++ OpenSim::CMC_Task class"""
    __swig_setmethods__ = {}
    for _s in [TrackingTask]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, CMC_Task, name, value)
    __swig_getmethods__ = {}
    for _s in [TrackingTask]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, CMC_Task, name)
    def __init__(self, *args, **kwargs): raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> CMC_Task

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.CMC_Task_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(CMC_Task self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.CMC_Task_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.CMC_Task_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(CMC_Task self) -> CMC_Task

        Parameters:
            self: OpenSim::CMC_Task const *

        """
        return _opensim.CMC_Task_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(CMC_Task self) -> std::string const &

        Parameters:
            self: OpenSim::CMC_Task const *

        """
        return _opensim.CMC_Task_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_CMC_Task
    __del__ = lambda self : None;
    def setWRTBodyName(self, *args):
        """
        setWRTBodyName(CMC_Task self, std::string aBodyName)

        Parameters:
            aBodyName: std::string

        """
        return _opensim.CMC_Task_setWRTBodyName(self, *args)

    def getWRTBodyName(self):
        """
        getWRTBodyName(CMC_Task self) -> std::string

        Parameters:
            self: OpenSim::CMC_Task const *

        """
        return _opensim.CMC_Task_getWRTBodyName(self)

    def setExpressBodyName(self, *args):
        """
        setExpressBodyName(CMC_Task self, std::string aBodyName)

        Parameters:
            aBodyName: std::string

        """
        return _opensim.CMC_Task_setExpressBodyName(self, *args)

    def getExpressBodyName(self):
        """
        getExpressBodyName(CMC_Task self) -> std::string

        Parameters:
            self: OpenSim::CMC_Task const *

        """
        return _opensim.CMC_Task_getExpressBodyName(self)

    def setActive(self, *args):
        """
        setActive(CMC_Task self, bool a0, bool a1=False, bool a2=False)

        Parameters:
            a0: bool
            a1: bool
            a2: bool

        setActive(CMC_Task self, bool a0, bool a1=False)

        Parameters:
            a0: bool
            a1: bool

        setActive(CMC_Task self, bool a0)

        Parameters:
            a0: bool

        """
        return _opensim.CMC_Task_setActive(self, *args)

    def getActive(self, *args):
        """
        getActive(CMC_Task self, int aWhich) -> bool

        Parameters:
            aWhich: int

        """
        return _opensim.CMC_Task_getActive(self, *args)

    def setWeight(self, *args):
        """
        setWeight(CMC_Task self, double aW0, double aW1=0.0, double aW2=0.0)

        Parameters:
            aW0: double
            aW1: double
            aW2: double

        setWeight(CMC_Task self, double aW0, double aW1=0.0)

        Parameters:
            aW0: double
            aW1: double

        setWeight(CMC_Task self, double aW0)

        Parameters:
            aW0: double

        """
        return _opensim.CMC_Task_setWeight(self, *args)

    def getWeight(self, *args):
        """
        getWeight(CMC_Task self, int aWhich) -> double

        Parameters:
            aWhich: int

        """
        return _opensim.CMC_Task_getWeight(self, *args)

    def setKP(self, *args):
        """
        setKP(CMC_Task self, double aK0, double aK1=0.0, double aK2=0.0)

        Parameters:
            aK0: double
            aK1: double
            aK2: double

        setKP(CMC_Task self, double aK0, double aK1=0.0)

        Parameters:
            aK0: double
            aK1: double

        setKP(CMC_Task self, double aK0)

        Parameters:
            aK0: double

        """
        return _opensim.CMC_Task_setKP(self, *args)

    def getKP(self, *args):
        """
        getKP(CMC_Task self, int aWhich) -> double

        Parameters:
            aWhich: int

        """
        return _opensim.CMC_Task_getKP(self, *args)

    def setKV(self, *args):
        """
        setKV(CMC_Task self, double aK0, double aK1=0.0, double aK2=0.0)

        Parameters:
            aK0: double
            aK1: double
            aK2: double

        setKV(CMC_Task self, double aK0, double aK1=0.0)

        Parameters:
            aK0: double
            aK1: double

        setKV(CMC_Task self, double aK0)

        Parameters:
            aK0: double

        """
        return _opensim.CMC_Task_setKV(self, *args)

    def getKV(self, *args):
        """
        getKV(CMC_Task self, int aWhich) -> double

        Parameters:
            aWhich: int

        """
        return _opensim.CMC_Task_getKV(self, *args)

    def setKA(self, *args):
        """
        setKA(CMC_Task self, double aK0, double aK1=0.0, double aK2=0.0)

        Parameters:
            aK0: double
            aK1: double
            aK2: double

        setKA(CMC_Task self, double aK0, double aK1=0.0)

        Parameters:
            aK0: double
            aK1: double

        setKA(CMC_Task self, double aK0)

        Parameters:
            aK0: double

        """
        return _opensim.CMC_Task_setKA(self, *args)

    def getKA(self, *args):
        """
        getKA(CMC_Task self, int aWhich) -> double

        Parameters:
            aWhich: int

        """
        return _opensim.CMC_Task_getKA(self, *args)

    def setDirection_0(self, *args):
        """
        setDirection_0(CMC_Task self, Vec3 aR)

        Parameters:
            aR: SimTK::Vec3 const &

        """
        return _opensim.CMC_Task_setDirection_0(self, *args)

    def getDirection_0(self, *args):
        """
        getDirection_0(CMC_Task self, Vec3 rR)

        Parameters:
            rR: SimTK::Vec3 &

        """
        return _opensim.CMC_Task_getDirection_0(self, *args)

    def setDirection_1(self, *args):
        """
        setDirection_1(CMC_Task self, Vec3 aR)

        Parameters:
            aR: SimTK::Vec3 const &

        """
        return _opensim.CMC_Task_setDirection_1(self, *args)

    def getDirection_1(self, *args):
        """
        getDirection_1(CMC_Task self, Vec3 rR)

        Parameters:
            rR: SimTK::Vec3 &

        """
        return _opensim.CMC_Task_getDirection_1(self, *args)

    def setDirection_2(self, *args):
        """
        setDirection_2(CMC_Task self, Vec3 aR)

        Parameters:
            aR: SimTK::Vec3 const &

        """
        return _opensim.CMC_Task_setDirection_2(self, *args)

    def getDirection_2(self, *args):
        """
        getDirection_2(CMC_Task self, Vec3 rR)

        Parameters:
            rR: SimTK::Vec3 &

        """
        return _opensim.CMC_Task_getDirection_2(self, *args)

    def getTaskFunction(self, *args):
        """
        getTaskFunction(CMC_Task self, int aWhich) -> Function

        Parameters:
            aWhich: int

        """
        return _opensim.CMC_Task_getTaskFunction(self, *args)

    def setTaskFunctionsForVelocity(self, *args):
        """
        setTaskFunctionsForVelocity(CMC_Task self, Function aF0, Function aF1=None, Function aF2=None)

        Parameters:
            aF0: OpenSim::Function *
            aF1: OpenSim::Function *
            aF2: OpenSim::Function *

        setTaskFunctionsForVelocity(CMC_Task self, Function aF0, Function aF1=None)

        Parameters:
            aF0: OpenSim::Function *
            aF1: OpenSim::Function *

        setTaskFunctionsForVelocity(CMC_Task self, Function aF0)

        Parameters:
            aF0: OpenSim::Function *

        """
        return _opensim.CMC_Task_setTaskFunctionsForVelocity(self, *args)

    def getTaskFunctionForVelocity(self, *args):
        """
        getTaskFunctionForVelocity(CMC_Task self, int aWhich) -> Function

        Parameters:
            aWhich: int

        """
        return _opensim.CMC_Task_getTaskFunctionForVelocity(self, *args)

    def setTaskFunctionsForAcceleration(self, *args):
        """
        setTaskFunctionsForAcceleration(CMC_Task self, Function aF0, Function aF1=None, Function aF2=None)

        Parameters:
            aF0: OpenSim::Function *
            aF1: OpenSim::Function *
            aF2: OpenSim::Function *

        setTaskFunctionsForAcceleration(CMC_Task self, Function aF0, Function aF1=None)

        Parameters:
            aF0: OpenSim::Function *
            aF1: OpenSim::Function *

        setTaskFunctionsForAcceleration(CMC_Task self, Function aF0)

        Parameters:
            aF0: OpenSim::Function *

        """
        return _opensim.CMC_Task_setTaskFunctionsForAcceleration(self, *args)

    def getTaskFunctionForAcceleration(self, *args):
        """
        getTaskFunctionForAcceleration(CMC_Task self, int aWhich) -> Function

        Parameters:
            aWhich: int

        """
        return _opensim.CMC_Task_getTaskFunctionForAcceleration(self, *args)

    def getTaskPosition(self, *args):
        """
        getTaskPosition(CMC_Task self, int aWhich, double aT) -> double

        Parameters:
            aWhich: int
            aT: double

        """
        return _opensim.CMC_Task_getTaskPosition(self, *args)

    def getTaskVelocity(self, *args):
        """
        getTaskVelocity(CMC_Task self, int aWhich, double aT) -> double

        Parameters:
            aWhich: int
            aT: double

        """
        return _opensim.CMC_Task_getTaskVelocity(self, *args)

    def getTaskAcceleration(self, *args):
        """
        getTaskAcceleration(CMC_Task self, int aWhich, double aT) -> double

        Parameters:
            aWhich: int
            aT: double

        """
        return _opensim.CMC_Task_getTaskAcceleration(self, *args)

    def setPositionErrorLast(self, *args):
        """
        setPositionErrorLast(CMC_Task self, double aE0, double aE1=0.0, double aE2=0.0)

        Parameters:
            aE0: double
            aE1: double
            aE2: double

        setPositionErrorLast(CMC_Task self, double aE0, double aE1=0.0)

        Parameters:
            aE0: double
            aE1: double

        setPositionErrorLast(CMC_Task self, double aE0)

        Parameters:
            aE0: double

        """
        return _opensim.CMC_Task_setPositionErrorLast(self, *args)

    def getPositionErrorLast(self, *args):
        """
        getPositionErrorLast(CMC_Task self, int aWhich) -> double

        Parameters:
            aWhich: int

        """
        return _opensim.CMC_Task_getPositionErrorLast(self, *args)

    def setVelocityErrorLast(self, *args):
        """
        setVelocityErrorLast(CMC_Task self, double aE0, double aE1=0.0, double aE2=0.0)

        Parameters:
            aE0: double
            aE1: double
            aE2: double

        setVelocityErrorLast(CMC_Task self, double aE0, double aE1=0.0)

        Parameters:
            aE0: double
            aE1: double

        setVelocityErrorLast(CMC_Task self, double aE0)

        Parameters:
            aE0: double

        """
        return _opensim.CMC_Task_setVelocityErrorLast(self, *args)

    def getVelocityErrorLast(self, *args):
        """
        getVelocityErrorLast(CMC_Task self, int aWhich) -> double

        Parameters:
            aWhich: int

        """
        return _opensim.CMC_Task_getVelocityErrorLast(self, *args)

    def getPositionError(self, *args):
        """
        getPositionError(CMC_Task self, int aWhich) -> double

        Parameters:
            aWhich: int

        """
        return _opensim.CMC_Task_getPositionError(self, *args)

    def getVelocityError(self, *args):
        """
        getVelocityError(CMC_Task self, int aWhich) -> double

        Parameters:
            aWhich: int

        """
        return _opensim.CMC_Task_getVelocityError(self, *args)

    def getDesiredAcceleration(self, *args):
        """
        getDesiredAcceleration(CMC_Task self, int aWhich) -> double

        Parameters:
            aWhich: int

        """
        return _opensim.CMC_Task_getDesiredAcceleration(self, *args)

    def getAcceleration(self, *args):
        """
        getAcceleration(CMC_Task self, int aWhich) -> double

        Parameters:
            aWhich: int

        """
        return _opensim.CMC_Task_getAcceleration(self, *args)

    def computeErrors(self, *args):
        """
        computeErrors(CMC_Task self, State s, double aT)

        Parameters:
            s: SimTK::State const &
            aT: double

        """
        return _opensim.CMC_Task_computeErrors(self, *args)

    def computeDesiredAccelerations(self, *args):
        """
        computeDesiredAccelerations(CMC_Task self, State s, double aT)

        Parameters:
            s: SimTK::State const &
            aT: double

        computeDesiredAccelerations(CMC_Task self, State s, double aTI, double aTF)

        Parameters:
            s: SimTK::State const &
            aTI: double
            aTF: double

        """
        return _opensim.CMC_Task_computeDesiredAccelerations(self, *args)

    def computeAccelerations(self, *args):
        """
        computeAccelerations(CMC_Task self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.CMC_Task_computeAccelerations(self, *args)

    def computeJacobian(self):
        """
        computeJacobian(CMC_Task self)

        Parameters:
            self: OpenSim::CMC_Task *

        """
        return _opensim.CMC_Task_computeJacobian(self)

    def computeEffectiveMassMatrix(self):
        """
        computeEffectiveMassMatrix(CMC_Task self)

        Parameters:
            self: OpenSim::CMC_Task *

        """
        return _opensim.CMC_Task_computeEffectiveMassMatrix(self)

    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(CMC_Task self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(CMC_Task self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.CMC_Task_updateFromXMLNode(self, *args)

CMC_Task_swigregister = _opensim.CMC_Task_swigregister
CMC_Task_swigregister(CMC_Task)

def CMC_Task_safeDownCast(*args):
  """
    CMC_Task_safeDownCast(OpenSimObject obj) -> CMC_Task

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.CMC_Task_safeDownCast(*args)

def CMC_Task_getClassName():
  """CMC_Task_getClassName() -> std::string const &"""
  return _opensim.CMC_Task_getClassName()

class CMC_Joint(CMC_Task):
    """Proxy of C++ OpenSim::CMC_Joint class"""
    __swig_setmethods__ = {}
    for _s in [CMC_Task]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, CMC_Joint, name, value)
    __swig_getmethods__ = {}
    for _s in [CMC_Task]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, CMC_Joint, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> CMC_Joint

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.CMC_Joint_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(CMC_Joint self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.CMC_Joint_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.CMC_Joint_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(CMC_Joint self) -> CMC_Joint

        Parameters:
            self: OpenSim::CMC_Joint const *

        """
        return _opensim.CMC_Joint_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(CMC_Joint self) -> std::string const &

        Parameters:
            self: OpenSim::CMC_Joint const *

        """
        return _opensim.CMC_Joint_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::CMC_Joint self, std::string const & aCoordinateName="") -> CMC_Joint

        Parameters:
            aCoordinateName: std::string const &

        __init__(OpenSim::CMC_Joint self) -> CMC_Joint
        __init__(OpenSim::CMC_Joint self, CMC_Joint aTask) -> CMC_Joint

        Parameters:
            aTask: OpenSim::CMC_Joint const &

        """
        this = _opensim.new_CMC_Joint(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_CMC_Joint
    __del__ = lambda self : None;
    def setModel(self, *args):
        """
        setModel(CMC_Joint self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.CMC_Joint_setModel(self, *args)

    def setCoordinateName(self, *args):
        """
        setCoordinateName(CMC_Joint self, std::string const & aName)

        Parameters:
            aName: std::string const &

        """
        return _opensim.CMC_Joint_setCoordinateName(self, *args)

    def getCoordinateName(self):
        """
        getCoordinateName(CMC_Joint self) -> std::string

        Parameters:
            self: OpenSim::CMC_Joint const *

        """
        return _opensim.CMC_Joint_getCoordinateName(self)

    def getLimit(self):
        """
        getLimit(CMC_Joint self) -> double

        Parameters:
            self: OpenSim::CMC_Joint const *

        """
        return _opensim.CMC_Joint_getLimit(self)

    def computeErrors(self, *args):
        """
        computeErrors(CMC_Joint self, State s, double aT)

        Parameters:
            s: SimTK::State const &
            aT: double

        """
        return _opensim.CMC_Joint_computeErrors(self, *args)

    def computeDesiredAccelerations(self, *args):
        """
        computeDesiredAccelerations(CMC_Joint self, State s, double aT)

        Parameters:
            s: SimTK::State const &
            aT: double

        computeDesiredAccelerations(CMC_Joint self, State s, double aTI, double aTF)

        Parameters:
            s: SimTK::State const &
            aTI: double
            aTF: double

        """
        return _opensim.CMC_Joint_computeDesiredAccelerations(self, *args)

    def computeAccelerations(self, *args):
        """
        computeAccelerations(CMC_Joint self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.CMC_Joint_computeAccelerations(self, *args)

    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(CMC_Joint self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(CMC_Joint self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.CMC_Joint_updateFromXMLNode(self, *args)

CMC_Joint_swigregister = _opensim.CMC_Joint_swigregister
CMC_Joint_swigregister(CMC_Joint)

def CMC_Joint_safeDownCast(*args):
  """
    CMC_Joint_safeDownCast(OpenSimObject obj) -> CMC_Joint

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.CMC_Joint_safeDownCast(*args)

def CMC_Joint_getClassName():
  """CMC_Joint_getClassName() -> std::string const &"""
  return _opensim.CMC_Joint_getClassName()

class CMC_Point(CMC_Task):
    """Proxy of C++ OpenSim::CMC_Point class"""
    __swig_setmethods__ = {}
    for _s in [CMC_Task]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, CMC_Point, name, value)
    __swig_getmethods__ = {}
    for _s in [CMC_Task]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, CMC_Point, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> CMC_Point

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.CMC_Point_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(CMC_Point self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.CMC_Point_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.CMC_Point_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(CMC_Point self) -> CMC_Point

        Parameters:
            self: OpenSim::CMC_Point const *

        """
        return _opensim.CMC_Point_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(CMC_Point self) -> std::string const &

        Parameters:
            self: OpenSim::CMC_Point const *

        """
        return _opensim.CMC_Point_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::CMC_Point self, Vec3 aPoint=SimTK::Vec3(0)) -> CMC_Point

        Parameters:
            aPoint: SimTK::Vec3 const &

        __init__(OpenSim::CMC_Point self) -> CMC_Point
        __init__(OpenSim::CMC_Point self, CMC_Point aTask) -> CMC_Point

        Parameters:
            aTask: OpenSim::CMC_Point const &

        """
        this = _opensim.new_CMC_Point(*args)
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_CMC_Point
    __del__ = lambda self : None;
    def setModel(self, *args):
        """
        setModel(CMC_Point self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.CMC_Point_setModel(self, *args)

    def setPoint(self, *args):
        """
        setPoint(CMC_Point self, Vec3 aPoint)

        Parameters:
            aPoint: SimTK::Vec3 const &

        """
        return _opensim.CMC_Point_setPoint(self, *args)

    def getPoint(self):
        """
        getPoint(CMC_Point self) -> Vec3

        Parameters:
            self: OpenSim::CMC_Point const *

        """
        return _opensim.CMC_Point_getPoint(self)

    def computeErrors(self, *args):
        """
        computeErrors(CMC_Point self, State s, double aT)

        Parameters:
            s: SimTK::State const &
            aT: double

        """
        return _opensim.CMC_Point_computeErrors(self, *args)

    def computeDesiredAccelerations(self, *args):
        """
        computeDesiredAccelerations(CMC_Point self, State s, double aT)

        Parameters:
            s: SimTK::State const &
            aT: double

        computeDesiredAccelerations(CMC_Point self, State s, double aTI, double aTF)

        Parameters:
            s: SimTK::State const &
            aTI: double
            aTF: double

        """
        return _opensim.CMC_Point_computeDesiredAccelerations(self, *args)

    def computeAccelerations(self, *args):
        """
        computeAccelerations(CMC_Point self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.CMC_Point_computeAccelerations(self, *args)

    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(CMC_Point self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(CMC_Point self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.CMC_Point_updateFromXMLNode(self, *args)

CMC_Point_swigregister = _opensim.CMC_Point_swigregister
CMC_Point_swigregister(CMC_Point)

def CMC_Point_safeDownCast(*args):
  """
    CMC_Point_safeDownCast(OpenSimObject obj) -> CMC_Point

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.CMC_Point_safeDownCast(*args)

def CMC_Point_getClassName():
  """CMC_Point_getClassName() -> std::string const &"""
  return _opensim.CMC_Point_getClassName()

class SetTrackingTasks(OpenSimObject):
    """Proxy of C++ OpenSim::Set<(OpenSim::TrackingTask)> class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, SetTrackingTasks, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, SetTrackingTasks, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> SetTrackingTasks

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.SetTrackingTasks_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(SetTrackingTasks self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.SetTrackingTasks_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.SetTrackingTasks_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(SetTrackingTasks self) -> SetTrackingTasks

        Parameters:
            self: OpenSim::Set< OpenSim::TrackingTask > const *

        """
        return _opensim.SetTrackingTasks_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(SetTrackingTasks self) -> std::string const &

        Parameters:
            self: OpenSim::Set< OpenSim::TrackingTask > const *

        """
        return _opensim.SetTrackingTasks_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_SetTrackingTasks
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::Set<(OpenSim::TrackingTask)> self) -> SetTrackingTasks
        __init__(OpenSim::Set<(OpenSim::TrackingTask)> self, std::string const & aFileName, bool aUpdateFromXMLNode=True) -> SetTrackingTasks

        Parameters:
            aFileName: std::string const &
            aUpdateFromXMLNode: bool

        __init__(OpenSim::Set<(OpenSim::TrackingTask)> self, std::string const & aFileName) -> SetTrackingTasks

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::Set<(OpenSim::TrackingTask)> self, SetTrackingTasks aSet) -> SetTrackingTasks

        Parameters:
            aSet: OpenSim::Set< OpenSim::TrackingTask > const &

        """
        this = _opensim.new_SetTrackingTasks(*args)
        try: self.this.append(this)
        except: self.this = this
    def setupGroups(self):
        """
        setupGroups(SetTrackingTasks self)

        Parameters:
            self: OpenSim::Set< OpenSim::TrackingTask > *

        """
        return _opensim.SetTrackingTasks_setupGroups(self)

    def setMemoryOwner(self, *args):
        """
        setMemoryOwner(SetTrackingTasks self, bool aTrueFalse)

        Parameters:
            aTrueFalse: bool

        """
        return _opensim.SetTrackingTasks_setMemoryOwner(self, *args)

    def setSize(self, *args):
        """
        setSize(SetTrackingTasks self, int aSize) -> bool

        Parameters:
            aSize: int

        """
        return _opensim.SetTrackingTasks_setSize(self, *args)

    def getSize(self):
        """
        getSize(SetTrackingTasks self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::TrackingTask > const *

        """
        return _opensim.SetTrackingTasks_getSize(self)

    def getIndex(self, *args):
        """
        getIndex(SetTrackingTasks self, TrackingTask aObject, int aStartIndex=0) -> int

        Parameters:
            aObject: OpenSim::TrackingTask const *
            aStartIndex: int

        getIndex(SetTrackingTasks self, TrackingTask aObject) -> int

        Parameters:
            aObject: OpenSim::TrackingTask const *

        getIndex(SetTrackingTasks self, std::string const & aName, int aStartIndex=0) -> int

        Parameters:
            aName: std::string const &
            aStartIndex: int

        getIndex(SetTrackingTasks self, std::string const & aName) -> int

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetTrackingTasks_getIndex(self, *args)

    def getGroupNamesContaining(self, *args):
        """
        getGroupNamesContaining(SetTrackingTasks self, std::string const & aObjectName, ArrayStr rGroupNames)

        Parameters:
            aObjectName: std::string const &
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetTrackingTasks_getGroupNamesContaining(self, *args)

    def adoptAndAppend(self, *args):
        """
        adoptAndAppend(SetTrackingTasks self, TrackingTask aObject) -> bool

        Parameters:
            aObject: OpenSim::TrackingTask *

        """
        return _opensim.SetTrackingTasks_adoptAndAppend(self, *args)

    def cloneAndAppend(self, *args):
        """
        cloneAndAppend(SetTrackingTasks self, TrackingTask aObject) -> bool

        Parameters:
            aObject: OpenSim::TrackingTask const &

        """
        return _opensim.SetTrackingTasks_cloneAndAppend(self, *args)

    def insert(self, *args):
        """
        insert(SetTrackingTasks self, int aIndex, TrackingTask aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::TrackingTask *

        """
        return _opensim.SetTrackingTasks_insert(self, *args)

    def remove(self, *args):
        """
        remove(SetTrackingTasks self, int aIndex) -> bool

        Parameters:
            aIndex: int

        remove(SetTrackingTasks self, TrackingTask aObject) -> bool

        Parameters:
            aObject: OpenSim::TrackingTask const *

        """
        return _opensim.SetTrackingTasks_remove(self, *args)

    def clearAndDestroy(self):
        """
        clearAndDestroy(SetTrackingTasks self)

        Parameters:
            self: OpenSim::Set< OpenSim::TrackingTask > *

        """
        return _opensim.SetTrackingTasks_clearAndDestroy(self)

    def set(self, *args):
        """
        set(SetTrackingTasks self, int aIndex, TrackingTask aObject, bool preserveGroups=False) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::TrackingTask *
            preserveGroups: bool

        set(SetTrackingTasks self, int aIndex, TrackingTask aObject) -> bool

        Parameters:
            aIndex: int
            aObject: OpenSim::TrackingTask *

        """
        return _opensim.SetTrackingTasks_set(self, *args)

    def get(self, *args):
        """
        get(SetTrackingTasks self, int aIndex) -> TrackingTask

        Parameters:
            aIndex: int

        get(SetTrackingTasks self, std::string const & aName) -> TrackingTask

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetTrackingTasks_get(self, *args)

    def contains(self, *args):
        """
        contains(SetTrackingTasks self, std::string const & aName) -> bool

        Parameters:
            aName: std::string const &

        """
        return _opensim.SetTrackingTasks_contains(self, *args)

    def getNames(self, *args):
        """
        getNames(SetTrackingTasks self, ArrayStr rNames)

        Parameters:
            rNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetTrackingTasks_getNames(self, *args)

    def getNumGroups(self):
        """
        getNumGroups(SetTrackingTasks self) -> int

        Parameters:
            self: OpenSim::Set< OpenSim::TrackingTask > const *

        """
        return _opensim.SetTrackingTasks_getNumGroups(self)

    def addGroup(self, *args):
        """
        addGroup(SetTrackingTasks self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetTrackingTasks_addGroup(self, *args)

    def removeGroup(self, *args):
        """
        removeGroup(SetTrackingTasks self, std::string const & aGroupName)

        Parameters:
            aGroupName: std::string const &

        """
        return _opensim.SetTrackingTasks_removeGroup(self, *args)

    def renameGroup(self, *args):
        """
        renameGroup(SetTrackingTasks self, std::string const & oldGroupName, std::string const & newGroupName)

        Parameters:
            oldGroupName: std::string const &
            newGroupName: std::string const &

        """
        return _opensim.SetTrackingTasks_renameGroup(self, *args)

    def addObjectToGroup(self, *args):
        """
        addObjectToGroup(SetTrackingTasks self, std::string const & aGroupName, std::string const & aObjectName)

        Parameters:
            aGroupName: std::string const &
            aObjectName: std::string const &

        """
        return _opensim.SetTrackingTasks_addObjectToGroup(self, *args)

    def getGroupNames(self, *args):
        """
        getGroupNames(SetTrackingTasks self, ArrayStr rGroupNames)

        Parameters:
            rGroupNames: OpenSim::Array< std::string > &

        """
        return _opensim.SetTrackingTasks_getGroupNames(self, *args)

    def getGroup(self, *args):
        """
        getGroup(SetTrackingTasks self, std::string const & aGroupName) -> ObjectGroup

        Parameters:
            aGroupName: std::string const &

        getGroup(SetTrackingTasks self, int aIndex) -> ObjectGroup

        Parameters:
            aIndex: int

        """
        return _opensim.SetTrackingTasks_getGroup(self, *args)

SetTrackingTasks_swigregister = _opensim.SetTrackingTasks_swigregister
SetTrackingTasks_swigregister(SetTrackingTasks)

def SetTrackingTasks_safeDownCast(*args):
  """
    SetTrackingTasks_safeDownCast(OpenSimObject obj) -> SetTrackingTasks

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.SetTrackingTasks_safeDownCast(*args)

def SetTrackingTasks_getClassName():
  """SetTrackingTasks_getClassName() -> std::string const &"""
  return _opensim.SetTrackingTasks_getClassName()

class CMC_TaskSet(SetTrackingTasks):
    """Proxy of C++ OpenSim::CMC_TaskSet class"""
    __swig_setmethods__ = {}
    for _s in [SetTrackingTasks]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, CMC_TaskSet, name, value)
    __swig_getmethods__ = {}
    for _s in [SetTrackingTasks]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, CMC_TaskSet, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> CMC_TaskSet

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.CMC_TaskSet_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(CMC_TaskSet self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.CMC_TaskSet_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.CMC_TaskSet_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(CMC_TaskSet self) -> CMC_TaskSet

        Parameters:
            self: OpenSim::CMC_TaskSet const *

        """
        return _opensim.CMC_TaskSet_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(CMC_TaskSet self) -> std::string const &

        Parameters:
            self: OpenSim::CMC_TaskSet const *

        """
        return _opensim.CMC_TaskSet_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_CMC_TaskSet
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::CMC_TaskSet self) -> CMC_TaskSet
        __init__(OpenSim::CMC_TaskSet self, std::string const & aFileName) -> CMC_TaskSet

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::CMC_TaskSet self, CMC_TaskSet aCMCTaskSet) -> CMC_TaskSet

        Parameters:
            aCMCTaskSet: OpenSim::CMC_TaskSet const &

        """
        this = _opensim.new_CMC_TaskSet(*args)
        try: self.this.append(this)
        except: self.this = this
    def setModel(self, *args):
        """
        setModel(CMC_TaskSet self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.CMC_TaskSet_setModel(self, *args)

    def getModel(self):
        """
        getModel(CMC_TaskSet self) -> Model

        Parameters:
            self: OpenSim::CMC_TaskSet const *

        """
        return _opensim.CMC_TaskSet_getModel(self)

    def getDataFileName(self):
        """
        getDataFileName(CMC_TaskSet self) -> std::string const &

        Parameters:
            self: OpenSim::CMC_TaskSet const *

        """
        return _opensim.CMC_TaskSet_getDataFileName(self)

    def setFunctions(self, *args):
        """
        setFunctions(CMC_TaskSet self, FunctionSet aFuncSet)

        Parameters:
            aFuncSet: OpenSim::FunctionSet &

        """
        return _opensim.CMC_TaskSet_setFunctions(self, *args)

    def setFunctionsForVelocity(self, *args):
        """
        setFunctionsForVelocity(CMC_TaskSet self, FunctionSet aFuncSet)

        Parameters:
            aFuncSet: OpenSim::FunctionSet &

        """
        return _opensim.CMC_TaskSet_setFunctionsForVelocity(self, *args)

    def setFunctionsForAcceleration(self, *args):
        """
        setFunctionsForAcceleration(CMC_TaskSet self, FunctionSet aFuncSet)

        Parameters:
            aFuncSet: OpenSim::FunctionSet &

        """
        return _opensim.CMC_TaskSet_setFunctionsForAcceleration(self, *args)

    def getNumActiveTaskFunctions(self):
        """
        getNumActiveTaskFunctions(CMC_TaskSet self) -> int

        Parameters:
            self: OpenSim::CMC_TaskSet const *

        """
        return _opensim.CMC_TaskSet_getNumActiveTaskFunctions(self)

    def getTaskPositions(self, *args):
        """
        getTaskPositions(CMC_TaskSet self, double aT) -> ArrayDouble

        Parameters:
            aT: double

        """
        return _opensim.CMC_TaskSet_getTaskPositions(self, *args)

    def getTaskVelocities(self, *args):
        """
        getTaskVelocities(CMC_TaskSet self, double aT) -> ArrayDouble

        Parameters:
            aT: double

        """
        return _opensim.CMC_TaskSet_getTaskVelocities(self, *args)

    def getTaskAccelerations(self, *args):
        """
        getTaskAccelerations(CMC_TaskSet self, double aT) -> ArrayDouble

        Parameters:
            aT: double

        """
        return _opensim.CMC_TaskSet_getTaskAccelerations(self, *args)

    def getPositionGains(self):
        """
        getPositionGains(CMC_TaskSet self) -> ArrayDouble

        Parameters:
            self: OpenSim::CMC_TaskSet *

        """
        return _opensim.CMC_TaskSet_getPositionGains(self)

    def getVelocityGains(self):
        """
        getVelocityGains(CMC_TaskSet self) -> ArrayDouble

        Parameters:
            self: OpenSim::CMC_TaskSet *

        """
        return _opensim.CMC_TaskSet_getVelocityGains(self)

    def getAccelerationGains(self):
        """
        getAccelerationGains(CMC_TaskSet self) -> ArrayDouble

        Parameters:
            self: OpenSim::CMC_TaskSet *

        """
        return _opensim.CMC_TaskSet_getAccelerationGains(self)

    def getPositionErrorsLast(self):
        """
        getPositionErrorsLast(CMC_TaskSet self) -> ArrayDouble

        Parameters:
            self: OpenSim::CMC_TaskSet *

        """
        return _opensim.CMC_TaskSet_getPositionErrorsLast(self)

    def getPositionErrors(self):
        """
        getPositionErrors(CMC_TaskSet self) -> ArrayDouble

        Parameters:
            self: OpenSim::CMC_TaskSet *

        """
        return _opensim.CMC_TaskSet_getPositionErrors(self)

    def getVelocityErrorsLast(self):
        """
        getVelocityErrorsLast(CMC_TaskSet self) -> ArrayDouble

        Parameters:
            self: OpenSim::CMC_TaskSet *

        """
        return _opensim.CMC_TaskSet_getVelocityErrorsLast(self)

    def getVelocityErrors(self):
        """
        getVelocityErrors(CMC_TaskSet self) -> ArrayDouble

        Parameters:
            self: OpenSim::CMC_TaskSet *

        """
        return _opensim.CMC_TaskSet_getVelocityErrors(self)

    def getWeights(self):
        """
        getWeights(CMC_TaskSet self) -> ArrayDouble

        Parameters:
            self: OpenSim::CMC_TaskSet *

        """
        return _opensim.CMC_TaskSet_getWeights(self)

    def getDesiredAccelerations(self):
        """
        getDesiredAccelerations(CMC_TaskSet self) -> ArrayDouble

        Parameters:
            self: OpenSim::CMC_TaskSet *

        """
        return _opensim.CMC_TaskSet_getDesiredAccelerations(self)

    def getAccelerations(self):
        """
        getAccelerations(CMC_TaskSet self) -> ArrayDouble

        Parameters:
            self: OpenSim::CMC_TaskSet *

        """
        return _opensim.CMC_TaskSet_getAccelerations(self)

    def recordErrorsAsLastErrors(self):
        """
        recordErrorsAsLastErrors(CMC_TaskSet self)

        Parameters:
            self: OpenSim::CMC_TaskSet *

        """
        return _opensim.CMC_TaskSet_recordErrorsAsLastErrors(self)

    def computeErrors(self, *args):
        """
        computeErrors(CMC_TaskSet self, State s, double aT)

        Parameters:
            s: SimTK::State const &
            aT: double

        """
        return _opensim.CMC_TaskSet_computeErrors(self, *args)

    def computeDesiredAccelerations(self, *args):
        """
        computeDesiredAccelerations(CMC_TaskSet self, State s, double aT)

        Parameters:
            s: SimTK::State const &
            aT: double

        computeDesiredAccelerations(CMC_TaskSet self, State s, double aTCurrent, double aTFuture)

        Parameters:
            s: SimTK::State const &
            aTCurrent: double
            aTFuture: double

        """
        return _opensim.CMC_TaskSet_computeDesiredAccelerations(self, *args)

    def computeAccelerations(self, *args):
        """
        computeAccelerations(CMC_TaskSet self, State s)

        Parameters:
            s: SimTK::State const &

        """
        return _opensim.CMC_TaskSet_computeAccelerations(self, *args)

CMC_TaskSet_swigregister = _opensim.CMC_TaskSet_swigregister
CMC_TaskSet_swigregister(CMC_TaskSet)

def CMC_TaskSet_safeDownCast(*args):
  """
    CMC_TaskSet_safeDownCast(OpenSimObject obj) -> CMC_TaskSet

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.CMC_TaskSet_safeDownCast(*args)

def CMC_TaskSet_getClassName():
  """CMC_TaskSet_getClassName() -> std::string const &"""
  return _opensim.CMC_TaskSet_getClassName()

class CMCTool(AbstractTool):
    """Proxy of C++ OpenSim::CMCTool class"""
    __swig_setmethods__ = {}
    for _s in [AbstractTool]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, CMCTool, name, value)
    __swig_getmethods__ = {}
    for _s in [AbstractTool]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, CMCTool, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> CMCTool

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.CMCTool_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(CMCTool self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.CMCTool_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.CMCTool_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(CMCTool self) -> CMCTool

        Parameters:
            self: OpenSim::CMCTool const *

        """
        return _opensim.CMCTool_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(CMCTool self) -> std::string const &

        Parameters:
            self: OpenSim::CMCTool const *

        """
        return _opensim.CMCTool_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_CMCTool
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::CMCTool self) -> CMCTool
        __init__(OpenSim::CMCTool self, std::string const & aFileName, bool aLoadModel=True) -> CMCTool

        Parameters:
            aFileName: std::string const &
            aLoadModel: bool

        __init__(OpenSim::CMCTool self, std::string const & aFileName) -> CMCTool

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::CMCTool self, CMCTool aObject) -> CMCTool

        Parameters:
            aObject: OpenSim::CMCTool const &

        """
        this = _opensim.new_CMCTool(*args)
        try: self.this.append(this)
        except: self.this = this
    def getExcludedActuators(self):
        """
        getExcludedActuators(CMCTool self) -> ArrayStr

        Parameters:
            self: OpenSim::CMCTool const *

        """
        return _opensim.CMCTool_getExcludedActuators(self)

    def setExcludedActuators(self, *args):
        """
        setExcludedActuators(CMCTool self, ArrayStr excludedActs)

        Parameters:
            excludedActs: OpenSim::Array< std::string > const &

        """
        return _opensim.CMCTool_setExcludedActuators(self, *args)

    def getDesiredPointsFileName(self):
        """
        getDesiredPointsFileName(CMCTool self) -> std::string const &

        Parameters:
            self: OpenSim::CMCTool *

        """
        return _opensim.CMCTool_getDesiredPointsFileName(self)

    def setDesiredPointsFileName(self, *args):
        """
        setDesiredPointsFileName(CMCTool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.CMCTool_setDesiredPointsFileName(self, *args)

    def getDesiredKinematicsFileName(self):
        """
        getDesiredKinematicsFileName(CMCTool self) -> std::string const &

        Parameters:
            self: OpenSim::CMCTool *

        """
        return _opensim.CMCTool_getDesiredKinematicsFileName(self)

    def setDesiredKinematicsFileName(self, *args):
        """
        setDesiredKinematicsFileName(CMCTool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.CMCTool_setDesiredKinematicsFileName(self, *args)

    def getConstraintsFileName(self):
        """
        getConstraintsFileName(CMCTool self) -> std::string const &

        Parameters:
            self: OpenSim::CMCTool *

        """
        return _opensim.CMCTool_getConstraintsFileName(self)

    def setConstraintsFileName(self, *args):
        """
        setConstraintsFileName(CMCTool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.CMCTool_setConstraintsFileName(self, *args)

    def getTaskSetFileName(self):
        """
        getTaskSetFileName(CMCTool self) -> std::string const &

        Parameters:
            self: OpenSim::CMCTool *

        """
        return _opensim.CMCTool_getTaskSetFileName(self)

    def setTaskSetFileName(self, *args):
        """
        setTaskSetFileName(CMCTool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.CMCTool_setTaskSetFileName(self, *args)

    def getRRAControlsFileName(self):
        """
        getRRAControlsFileName(CMCTool self) -> std::string const &

        Parameters:
            self: OpenSim::CMCTool *

        """
        return _opensim.CMCTool_getRRAControlsFileName(self)

    def setRRAControlsFileName(self, *args):
        """
        setRRAControlsFileName(CMCTool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.CMCTool_setRRAControlsFileName(self, *args)

    def getLowpassCutoffFrequency(self):
        """
        getLowpassCutoffFrequency(CMCTool self) -> double

        Parameters:
            self: OpenSim::CMCTool const *

        """
        return _opensim.CMCTool_getLowpassCutoffFrequency(self)

    def setLowpassCutoffFrequency(self, *args):
        """
        setLowpassCutoffFrequency(CMCTool self, double aLowpassCutoffFrequency)

        Parameters:
            aLowpassCutoffFrequency: double

        """
        return _opensim.CMCTool_setLowpassCutoffFrequency(self, *args)

    def getTimeWindow(self):
        """
        getTimeWindow(CMCTool self) -> double

        Parameters:
            self: OpenSim::CMCTool const *

        """
        return _opensim.CMCTool_getTimeWindow(self)

    def setTimeWindow(self, *args):
        """
        setTimeWindow(CMCTool self, double aTargetDT)

        Parameters:
            aTargetDT: double

        """
        return _opensim.CMCTool_setTimeWindow(self, *args)

    def getExternalLoadsFileName(self):
        """
        getExternalLoadsFileName(CMCTool self) -> std::string const &

        Parameters:
            self: OpenSim::CMCTool const *

        """
        return _opensim.CMCTool_getExternalLoadsFileName(self)

    def setExternalLoadsFileName(self, *args):
        """
        setExternalLoadsFileName(CMCTool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.CMCTool_setExternalLoadsFileName(self, *args)

    def getUseFastTarget(self):
        """
        getUseFastTarget(CMCTool self) -> bool

        Parameters:
            self: OpenSim::CMCTool const *

        """
        return _opensim.CMCTool_getUseFastTarget(self)

    def setUseFastTarget(self, *args):
        """
        setUseFastTarget(CMCTool self, bool useFastTarget)

        Parameters:
            useFastTarget: bool

        """
        return _opensim.CMCTool_setUseFastTarget(self, *args)

    def run(self):
        """
        run(CMCTool self) -> bool

        Parameters:
            self: OpenSim::CMCTool *

        """
        return _opensim.CMCTool_run(self)

    def getForceStorage(self):
        """
        getForceStorage(CMCTool self) -> Storage

        Parameters:
            self: OpenSim::CMCTool *

        """
        return _opensim.CMCTool_getForceStorage(self)

    def setOriginalForceSet(self, *args):
        """
        setOriginalForceSet(CMCTool self, ForceSet aForceSet)

        Parameters:
            aForceSet: OpenSim::ForceSet const &

        """
        return _opensim.CMCTool_setOriginalForceSet(self, *args)

CMCTool_swigregister = _opensim.CMCTool_swigregister
CMCTool_swigregister(CMCTool)

def CMCTool_safeDownCast(*args):
  """
    CMCTool_safeDownCast(OpenSimObject obj) -> CMCTool

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.CMCTool_safeDownCast(*args)

def CMCTool_getClassName():
  """CMCTool_getClassName() -> std::string const &"""
  return _opensim.CMCTool_getClassName()

class RRATool(AbstractTool):
    """Proxy of C++ OpenSim::RRATool class"""
    __swig_setmethods__ = {}
    for _s in [AbstractTool]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, RRATool, name, value)
    __swig_getmethods__ = {}
    for _s in [AbstractTool]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, RRATool, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> RRATool

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.RRATool_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(RRATool self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.RRATool_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.RRATool_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(RRATool self) -> RRATool

        Parameters:
            self: OpenSim::RRATool const *

        """
        return _opensim.RRATool_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(RRATool self) -> std::string const &

        Parameters:
            self: OpenSim::RRATool const *

        """
        return _opensim.RRATool_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_RRATool
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::RRATool self) -> RRATool
        __init__(OpenSim::RRATool self, std::string const & aFileName, bool aLoadModel=True) -> RRATool

        Parameters:
            aFileName: std::string const &
            aLoadModel: bool

        __init__(OpenSim::RRATool self, std::string const & aFileName) -> RRATool

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::RRATool self, RRATool aObject) -> RRATool

        Parameters:
            aObject: OpenSim::RRATool const &

        """
        this = _opensim.new_RRATool(*args)
        try: self.this.append(this)
        except: self.this = this
    def getDesiredPointsFileName(self):
        """
        getDesiredPointsFileName(RRATool self) -> std::string const &

        Parameters:
            self: OpenSim::RRATool *

        """
        return _opensim.RRATool_getDesiredPointsFileName(self)

    def setDesiredPointsFileName(self, *args):
        """
        setDesiredPointsFileName(RRATool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.RRATool_setDesiredPointsFileName(self, *args)

    def getDesiredKinematicsFileName(self):
        """
        getDesiredKinematicsFileName(RRATool self) -> std::string const &

        Parameters:
            self: OpenSim::RRATool *

        """
        return _opensim.RRATool_getDesiredKinematicsFileName(self)

    def setDesiredKinematicsFileName(self, *args):
        """
        setDesiredKinematicsFileName(RRATool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.RRATool_setDesiredKinematicsFileName(self, *args)

    def getConstraintsFileName(self):
        """
        getConstraintsFileName(RRATool self) -> std::string const &

        Parameters:
            self: OpenSim::RRATool *

        """
        return _opensim.RRATool_getConstraintsFileName(self)

    def setConstraintsFileName(self, *args):
        """
        setConstraintsFileName(RRATool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.RRATool_setConstraintsFileName(self, *args)

    def getTaskSetFileName(self):
        """
        getTaskSetFileName(RRATool self) -> std::string const &

        Parameters:
            self: OpenSim::RRATool *

        """
        return _opensim.RRATool_getTaskSetFileName(self)

    def setTaskSetFileName(self, *args):
        """
        setTaskSetFileName(RRATool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.RRATool_setTaskSetFileName(self, *args)

    def getOutputModelFileName(self):
        """
        getOutputModelFileName(RRATool self) -> std::string const &

        Parameters:
            self: OpenSim::RRATool *

        """
        return _opensim.RRATool_getOutputModelFileName(self)

    def setOutputModelFileName(self, *args):
        """
        setOutputModelFileName(RRATool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.RRATool_setOutputModelFileName(self, *args)

    def getAdjustCOMToReduceResiduals(self):
        """
        getAdjustCOMToReduceResiduals(RRATool self) -> bool

        Parameters:
            self: OpenSim::RRATool *

        """
        return _opensim.RRATool_getAdjustCOMToReduceResiduals(self)

    def setAdjustCOMToReduceResiduals(self, *args):
        """
        setAdjustCOMToReduceResiduals(RRATool self, bool aAdjust)

        Parameters:
            aAdjust: bool

        """
        return _opensim.RRATool_setAdjustCOMToReduceResiduals(self, *args)

    def getAdjustedCOMBody(self):
        """
        getAdjustedCOMBody(RRATool self) -> std::string const &

        Parameters:
            self: OpenSim::RRATool *

        """
        return _opensim.RRATool_getAdjustedCOMBody(self)

    def setAdjustedCOMBody(self, *args):
        """
        setAdjustedCOMBody(RRATool self, std::string const & aBody)

        Parameters:
            aBody: std::string const &

        """
        return _opensim.RRATool_setAdjustedCOMBody(self, *args)

    def getLowpassCutoffFrequency(self):
        """
        getLowpassCutoffFrequency(RRATool self) -> double

        Parameters:
            self: OpenSim::RRATool const *

        """
        return _opensim.RRATool_getLowpassCutoffFrequency(self)

    def setLowpassCutoffFrequency(self, *args):
        """
        setLowpassCutoffFrequency(RRATool self, double aLowpassCutoffFrequency)

        Parameters:
            aLowpassCutoffFrequency: double

        """
        return _opensim.RRATool_setLowpassCutoffFrequency(self, *args)

    def getExternalLoadsFileName(self):
        """
        getExternalLoadsFileName(RRATool self) -> std::string const &

        Parameters:
            self: OpenSim::RRATool const *

        """
        return _opensim.RRATool_getExternalLoadsFileName(self)

    def setExternalLoadsFileName(self, *args):
        """
        setExternalLoadsFileName(RRATool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.RRATool_setExternalLoadsFileName(self, *args)

    def run(self):
        """
        run(RRATool self) -> bool

        Parameters:
            self: OpenSim::RRATool *

        """
        return _opensim.RRATool_run(self)

    def getForceStorage(self):
        """
        getForceStorage(RRATool self) -> Storage

        Parameters:
            self: OpenSim::RRATool *

        """
        return _opensim.RRATool_getForceStorage(self)

    def setOriginalForceSet(self, *args):
        """
        setOriginalForceSet(RRATool self, ForceSet aForceSet)

        Parameters:
            aForceSet: OpenSim::ForceSet const &

        """
        return _opensim.RRATool_setOriginalForceSet(self, *args)

    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(RRATool self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(RRATool self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.RRATool_updateFromXMLNode(self, *args)

RRATool_swigregister = _opensim.RRATool_swigregister
RRATool_swigregister(RRATool)

def RRATool_safeDownCast(*args):
  """
    RRATool_safeDownCast(OpenSimObject obj) -> RRATool

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.RRATool_safeDownCast(*args)

def RRATool_getClassName():
  """RRATool_getClassName() -> std::string const &"""
  return _opensim.RRATool_getClassName()

class AnalyzeTool(AbstractTool):
    """Proxy of C++ OpenSim::AnalyzeTool class"""
    __swig_setmethods__ = {}
    for _s in [AbstractTool]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, AnalyzeTool, name, value)
    __swig_getmethods__ = {}
    for _s in [AbstractTool]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, AnalyzeTool, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> AnalyzeTool

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.AnalyzeTool_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(AnalyzeTool self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.AnalyzeTool_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.AnalyzeTool_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(AnalyzeTool self) -> AnalyzeTool

        Parameters:
            self: OpenSim::AnalyzeTool const *

        """
        return _opensim.AnalyzeTool_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(AnalyzeTool self) -> std::string const &

        Parameters:
            self: OpenSim::AnalyzeTool const *

        """
        return _opensim.AnalyzeTool_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_AnalyzeTool
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::AnalyzeTool self) -> AnalyzeTool
        __init__(OpenSim::AnalyzeTool self, std::string const & aFileName, bool aLoadModelAndInput=True) -> AnalyzeTool

        Parameters:
            aFileName: std::string const &
            aLoadModelAndInput: bool

        __init__(OpenSim::AnalyzeTool self, std::string const & aFileName) -> AnalyzeTool

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::AnalyzeTool self, AnalyzeTool aObject) -> AnalyzeTool

        Parameters:
            aObject: OpenSim::AnalyzeTool const &

        __init__(OpenSim::AnalyzeTool self, Model aModel) -> AnalyzeTool

        Parameters:
            aModel: OpenSim::Model &

        """
        this = _opensim.new_AnalyzeTool(*args)
        try: self.this.append(this)
        except: self.this = this
    def setStatesStorage(self, *args):
        """
        setStatesStorage(AnalyzeTool self, Storage aStore)

        Parameters:
            aStore: OpenSim::Storage &

        """
        return _opensim.AnalyzeTool_setStatesStorage(self, *args)

    def createStatesStorageFromCoordinatesAndSpeeds(*args):
        """
        createStatesStorageFromCoordinatesAndSpeeds(Model aModel, Storage aQStore, Storage aUStore) -> Storage

        Parameters:
            aModel: OpenSim::Model const &
            aQStore: OpenSim::Storage const &
            aUStore: OpenSim::Storage const &

        """
        return _opensim.AnalyzeTool_createStatesStorageFromCoordinatesAndSpeeds(*args)

    if _newclass:createStatesStorageFromCoordinatesAndSpeeds = staticmethod(createStatesStorageFromCoordinatesAndSpeeds)
    __swig_getmethods__["createStatesStorageFromCoordinatesAndSpeeds"] = lambda x: createStatesStorageFromCoordinatesAndSpeeds
    def getStatesStorage(self):
        """
        getStatesStorage(AnalyzeTool self) -> Storage

        Parameters:
            self: OpenSim::AnalyzeTool *

        """
        return _opensim.AnalyzeTool_getStatesStorage(self)

    def getStatesFileName(self):
        """
        getStatesFileName(AnalyzeTool self) -> std::string const &

        Parameters:
            self: OpenSim::AnalyzeTool const *

        """
        return _opensim.AnalyzeTool_getStatesFileName(self)

    def setStatesFileName(self, *args):
        """
        setStatesFileName(AnalyzeTool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.AnalyzeTool_setStatesFileName(self, *args)

    def getCoordinatesFileName(self):
        """
        getCoordinatesFileName(AnalyzeTool self) -> std::string const &

        Parameters:
            self: OpenSim::AnalyzeTool const *

        """
        return _opensim.AnalyzeTool_getCoordinatesFileName(self)

    def setCoordinatesFileName(self, *args):
        """
        setCoordinatesFileName(AnalyzeTool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.AnalyzeTool_setCoordinatesFileName(self, *args)

    def getSpeedsFileName(self):
        """
        getSpeedsFileName(AnalyzeTool self) -> std::string const &

        Parameters:
            self: OpenSim::AnalyzeTool const *

        """
        return _opensim.AnalyzeTool_getSpeedsFileName(self)

    def setSpeedsFileName(self, *args):
        """
        setSpeedsFileName(AnalyzeTool self, std::string const & aFileName)

        Parameters:
            aFileName: std::string const &

        """
        return _opensim.AnalyzeTool_setSpeedsFileName(self, *args)

    def getLowpassCutoffFrequency(self):
        """
        getLowpassCutoffFrequency(AnalyzeTool self) -> double

        Parameters:
            self: OpenSim::AnalyzeTool const *

        """
        return _opensim.AnalyzeTool_getLowpassCutoffFrequency(self)

    def setLowpassCutoffFrequency(self, *args):
        """
        setLowpassCutoffFrequency(AnalyzeTool self, double aLowpassCutoffFrequency)

        Parameters:
            aLowpassCutoffFrequency: double

        """
        return _opensim.AnalyzeTool_setLowpassCutoffFrequency(self, *args)

    def getLoadModelAndInput(self):
        """
        getLoadModelAndInput(AnalyzeTool self) -> bool const

        Parameters:
            self: OpenSim::AnalyzeTool const *

        """
        return _opensim.AnalyzeTool_getLoadModelAndInput(self)

    def setLoadModelAndInput(self, *args):
        """
        setLoadModelAndInput(AnalyzeTool self, bool b)

        Parameters:
            b: bool

        """
        return _opensim.AnalyzeTool_setLoadModelAndInput(self, *args)

    def setStatesFromMotion(self, *args):
        """
        setStatesFromMotion(AnalyzeTool self, State s, Storage aMotion, bool aInDegrees)

        Parameters:
            s: SimTK::State const &
            aMotion: OpenSim::Storage const &
            aInDegrees: bool

        """
        return _opensim.AnalyzeTool_setStatesFromMotion(self, *args)

    def loadStatesFromFile(self, *args):
        """
        loadStatesFromFile(AnalyzeTool self, State s)

        Parameters:
            s: SimTK::State &

        """
        return _opensim.AnalyzeTool_loadStatesFromFile(self, *args)

    def verifyControlsStates(self):
        """
        verifyControlsStates(AnalyzeTool self)

        Parameters:
            self: OpenSim::AnalyzeTool *

        """
        return _opensim.AnalyzeTool_verifyControlsStates(self)

    def setPrintResultFiles(self, *args):
        """
        setPrintResultFiles(AnalyzeTool self, bool aToWrite)

        Parameters:
            aToWrite: bool

        """
        return _opensim.AnalyzeTool_setPrintResultFiles(self, *args)

    def disableIntegrationOnlyProbes(self):
        """
        disableIntegrationOnlyProbes(AnalyzeTool self)

        Parameters:
            self: OpenSim::AnalyzeTool *

        """
        return _opensim.AnalyzeTool_disableIntegrationOnlyProbes(self)

    def run(self, *args):
        """
        run(AnalyzeTool self) -> bool
        run(AnalyzeTool self, bool plotting) -> bool

        Parameters:
            plotting: bool

        """
        return _opensim.AnalyzeTool_run(self, *args)

AnalyzeTool_swigregister = _opensim.AnalyzeTool_swigregister
AnalyzeTool_swigregister(AnalyzeTool)

def AnalyzeTool_safeDownCast(*args):
  """
    AnalyzeTool_safeDownCast(OpenSimObject obj) -> AnalyzeTool

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.AnalyzeTool_safeDownCast(*args)

def AnalyzeTool_getClassName():
  """AnalyzeTool_getClassName() -> std::string const &"""
  return _opensim.AnalyzeTool_getClassName()

def AnalyzeTool_createStatesStorageFromCoordinatesAndSpeeds(*args):
  """
    AnalyzeTool_createStatesStorageFromCoordinatesAndSpeeds(Model aModel, Storage aQStore, Storage aUStore) -> Storage

    Parameters:
        aModel: OpenSim::Model const &
        aQStore: OpenSim::Storage const &
        aUStore: OpenSim::Storage const &

    """
  return _opensim.AnalyzeTool_createStatesStorageFromCoordinatesAndSpeeds(*args)

class InverseKinematicsTool(Tool):
    """Proxy of C++ OpenSim::InverseKinematicsTool class"""
    __swig_setmethods__ = {}
    for _s in [Tool]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, InverseKinematicsTool, name, value)
    __swig_getmethods__ = {}
    for _s in [Tool]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, InverseKinematicsTool, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> InverseKinematicsTool

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.InverseKinematicsTool_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(InverseKinematicsTool self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.InverseKinematicsTool_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.InverseKinematicsTool_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(InverseKinematicsTool self) -> InverseKinematicsTool

        Parameters:
            self: OpenSim::InverseKinematicsTool const *

        """
        return _opensim.InverseKinematicsTool_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(InverseKinematicsTool self) -> std::string const &

        Parameters:
            self: OpenSim::InverseKinematicsTool const *

        """
        return _opensim.InverseKinematicsTool_getConcreteClassName(self)

    __swig_destroy__ = _opensim.delete_InverseKinematicsTool
    __del__ = lambda self : None;
    def __init__(self, *args): 
        """
        __init__(OpenSim::InverseKinematicsTool self) -> InverseKinematicsTool
        __init__(OpenSim::InverseKinematicsTool self, std::string const & aFileName, bool aLoadModel=True) -> InverseKinematicsTool

        Parameters:
            aFileName: std::string const &
            aLoadModel: bool

        __init__(OpenSim::InverseKinematicsTool self, std::string const & aFileName) -> InverseKinematicsTool

        Parameters:
            aFileName: std::string const &

        __init__(OpenSim::InverseKinematicsTool self, InverseKinematicsTool aObject) -> InverseKinematicsTool

        Parameters:
            aObject: OpenSim::InverseKinematicsTool const &

        """
        this = _opensim.new_InverseKinematicsTool(*args)
        try: self.this.append(this)
        except: self.this = this
    def registerTypes():
        """registerTypes()"""
        return _opensim.InverseKinematicsTool_registerTypes()

    if _newclass:registerTypes = staticmethod(registerTypes)
    __swig_getmethods__["registerTypes"] = lambda x: registerTypes
    def updateFromXMLNode(self, *args):
        """
        updateFromXMLNode(InverseKinematicsTool self, SimTK::Xml::Element & aNode, int versionNumber=-1)

        Parameters:
            aNode: SimTK::Xml::Element &
            versionNumber: int

        updateFromXMLNode(InverseKinematicsTool self, SimTK::Xml::Element & aNode)

        Parameters:
            aNode: SimTK::Xml::Element &

        """
        return _opensim.InverseKinematicsTool_updateFromXMLNode(self, *args)

    def setModel(self, *args):
        """
        setModel(InverseKinematicsTool self, Model aModel)

        Parameters:
            aModel: OpenSim::Model &

        """
        return _opensim.InverseKinematicsTool_setModel(self, *args)

    def setStartTime(self, *args):
        """
        setStartTime(InverseKinematicsTool self, double d)

        Parameters:
            d: double

        """
        return _opensim.InverseKinematicsTool_setStartTime(self, *args)

    def getStartTime(self):
        """
        getStartTime(InverseKinematicsTool self) -> double

        Parameters:
            self: OpenSim::InverseKinematicsTool const *

        """
        return _opensim.InverseKinematicsTool_getStartTime(self)

    def setEndTime(self, *args):
        """
        setEndTime(InverseKinematicsTool self, double d)

        Parameters:
            d: double

        """
        return _opensim.InverseKinematicsTool_setEndTime(self, *args)

    def getEndTime(self):
        """
        getEndTime(InverseKinematicsTool self) -> double

        Parameters:
            self: OpenSim::InverseKinematicsTool const *

        """
        return _opensim.InverseKinematicsTool_getEndTime(self)

    def setMarkerDataFileName(self, *args):
        """
        setMarkerDataFileName(InverseKinematicsTool self, std::string const & markerDataFileName)

        Parameters:
            markerDataFileName: std::string const &

        """
        return _opensim.InverseKinematicsTool_setMarkerDataFileName(self, *args)

    def getMarkerDataFileName(self):
        """
        getMarkerDataFileName(InverseKinematicsTool self) -> std::string const &

        Parameters:
            self: OpenSim::InverseKinematicsTool const *

        """
        return _opensim.InverseKinematicsTool_getMarkerDataFileName(self)

    def setCoordinateFileName(self, *args):
        """
        setCoordinateFileName(InverseKinematicsTool self, std::string const & coordDataFileName)

        Parameters:
            coordDataFileName: std::string const &

        """
        return _opensim.InverseKinematicsTool_setCoordinateFileName(self, *args)

    def getCoordinateFileName(self):
        """
        getCoordinateFileName(InverseKinematicsTool self) -> std::string const &

        Parameters:
            self: OpenSim::InverseKinematicsTool const *

        """
        return _opensim.InverseKinematicsTool_getCoordinateFileName(self)

    def setOutputMotionFileName(self, *args):
        """
        setOutputMotionFileName(InverseKinematicsTool self, std::string const aOutputMotionFileName)

        Parameters:
            aOutputMotionFileName: std::string const

        """
        return _opensim.InverseKinematicsTool_setOutputMotionFileName(self, *args)

    def getOutputMotionFileName(self):
        """
        getOutputMotionFileName(InverseKinematicsTool self) -> std::string

        Parameters:
            self: OpenSim::InverseKinematicsTool *

        """
        return _opensim.InverseKinematicsTool_getOutputMotionFileName(self)

    def getIKTaskSet(self):
        """
        getIKTaskSet(InverseKinematicsTool self) -> IKTaskSet

        Parameters:
            self: OpenSim::InverseKinematicsTool *

        """
        return _opensim.InverseKinematicsTool_getIKTaskSet(self)

    def run(self):
        """
        run(InverseKinematicsTool self) -> bool

        Parameters:
            self: OpenSim::InverseKinematicsTool *

        """
        return _opensim.InverseKinematicsTool_run(self)

InverseKinematicsTool_swigregister = _opensim.InverseKinematicsTool_swigregister
InverseKinematicsTool_swigregister(InverseKinematicsTool)

def InverseKinematicsTool_safeDownCast(*args):
  """
    InverseKinematicsTool_safeDownCast(OpenSimObject obj) -> InverseKinematicsTool

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.InverseKinematicsTool_safeDownCast(*args)

def InverseKinematicsTool_getClassName():
  """InverseKinematicsTool_getClassName() -> std::string const &"""
  return _opensim.InverseKinematicsTool_getClassName()

def InverseKinematicsTool_registerTypes():
  """InverseKinematicsTool_registerTypes()"""
  return _opensim.InverseKinematicsTool_registerTypes()

class OpenSimContext(OpenSimObject):
    """Proxy of C++ OpenSim::OpenSimContext class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, OpenSimContext, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, OpenSimContext, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> OpenSimContext

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.OpenSimContext_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(OpenSimContext self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.OpenSimContext_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.OpenSimContext_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(OpenSimContext self) -> OpenSimContext

        Parameters:
            self: OpenSim::OpenSimContext const *

        """
        return _opensim.OpenSimContext_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(OpenSimContext self) -> std::string const &

        Parameters:
            self: OpenSim::OpenSimContext const *

        """
        return _opensim.OpenSimContext_getConcreteClassName(self)

    def __init__(self, *args): 
        """
        __init__(OpenSim::OpenSimContext self, State s, Model model) -> OpenSimContext

        Parameters:
            s: SimTK::State *
            model: OpenSim::Model *

        """
        this = _opensim.new_OpenSimContext(*args)
        try: self.this.append(this)
        except: self.this = this
    def setState(self, *args):
        """
        setState(OpenSimContext self, State s)

        Parameters:
            s: SimTK::State *

        """
        return _opensim.OpenSimContext_setState(self, *args)

    def setModel(self, *args):
        """
        setModel(OpenSimContext self, Model m)

        Parameters:
            m: OpenSim::Model *

        """
        return _opensim.OpenSimContext_setModel(self, *args)

    def setStates(self, *args):
        """
        setStates(OpenSimContext self, ArrayDouble states)

        Parameters:
            states: OpenSim::Array< double > &

        setStates(OpenSimContext self, double [] statesBuffer)

        Parameters:
            statesBuffer: double []

        """
        return _opensim.OpenSimContext_setStates(self, *args)

    def computeConstrainedCoordinates(self, *args):
        """
        computeConstrainedCoordinates(OpenSimContext self, double [] statesBuffer)

        Parameters:
            statesBuffer: double []

        """
        return _opensim.OpenSimContext_computeConstrainedCoordinates(self, *args)

    def getStates(self, *args):
        """
        getStates(OpenSimContext self, double [] statesBuffer)

        Parameters:
            statesBuffer: double []

        getStates(OpenSimContext self, ArrayDouble rStates)

        Parameters:
            rStates: OpenSim::Array< double > &

        """
        return _opensim.OpenSimContext_getStates(self, *args)

    def getCurrentStateRef(self):
        """
        getCurrentStateRef(OpenSimContext self) -> State

        Parameters:
            self: OpenSim::OpenSimContext const *

        """
        return _opensim.OpenSimContext_getCurrentStateRef(self)

    def getCurrentStateCopy(self):
        """
        getCurrentStateCopy(OpenSimContext self) -> State

        Parameters:
            self: OpenSim::OpenSimContext const *

        """
        return _opensim.OpenSimContext_getCurrentStateCopy(self)

    def recreateSystemAfterSystemExistsKeepStage(self):
        """
        recreateSystemAfterSystemExistsKeepStage(OpenSimContext self)

        Parameters:
            self: OpenSim::OpenSimContext *

        """
        return _opensim.OpenSimContext_recreateSystemAfterSystemExistsKeepStage(self)

    def recreateSystemAfterSystemExists(self):
        """
        recreateSystemAfterSystemExists(OpenSimContext self)

        Parameters:
            self: OpenSim::OpenSimContext *

        """
        return _opensim.OpenSimContext_recreateSystemAfterSystemExists(self)

    def resetStateToDefault(self):
        """
        resetStateToDefault(OpenSimContext self)

        Parameters:
            self: OpenSim::OpenSimContext *

        """
        return _opensim.OpenSimContext_resetStateToDefault(self)

    def transformPosition(self, *args):
        """
        transformPosition(OpenSimContext self, Body body, double [] offset, double [] gOffset)

        Parameters:
            body: OpenSim::Body const &
            offset: double []
            gOffset: double []

        """
        return _opensim.OpenSimContext_transformPosition(self, *args)

    def getTransform(self, *args):
        """
        getTransform(OpenSimContext self, Body body) -> Transform

        Parameters:
            body: OpenSim::Body const &

        """
        return _opensim.OpenSimContext_getTransform(self, *args)

    def transform(self, *args):
        """
        transform(OpenSimContext self, Body ground, double [] d, Body body, double [] dragVectorBody)

        Parameters:
            ground: OpenSim::Body const &
            d: double []
            body: OpenSim::Body &
            dragVectorBody: double []

        """
        return _opensim.OpenSimContext_transform(self, *args)

    def getValue(self, *args):
        """
        getValue(OpenSimContext self, Coordinate coord) -> double

        Parameters:
            coord: OpenSim::Coordinate const &

        """
        return _opensim.OpenSimContext_getValue(self, *args)

    def getLocked(self, *args):
        """
        getLocked(OpenSimContext self, Coordinate coord) -> bool

        Parameters:
            coord: OpenSim::Coordinate const &

        """
        return _opensim.OpenSimContext_getLocked(self, *args)

    def setValue(self, *args):
        """
        setValue(OpenSimContext self, Coordinate coord, double d, bool enforceConstraints=True)

        Parameters:
            coord: OpenSim::Coordinate const &
            d: double
            enforceConstraints: bool

        setValue(OpenSimContext self, Coordinate coord, double d)

        Parameters:
            coord: OpenSim::Coordinate const &
            d: double

        """
        return _opensim.OpenSimContext_setValue(self, *args)

    def setClamped(self, *args):
        """
        setClamped(OpenSimContext self, Coordinate coord, bool newValue)

        Parameters:
            coord: OpenSim::Coordinate &
            newValue: bool

        """
        return _opensim.OpenSimContext_setClamped(self, *args)

    def getClamped(self, *args):
        """
        getClamped(OpenSimContext self, Coordinate coord) -> bool

        Parameters:
            coord: OpenSim::Coordinate const &

        """
        return _opensim.OpenSimContext_getClamped(self, *args)

    def setLocked(self, *args):
        """
        setLocked(OpenSimContext self, Coordinate coord, bool newValue)

        Parameters:
            coord: OpenSim::Coordinate &
            newValue: bool

        """
        return _opensim.OpenSimContext_setLocked(self, *args)

    def isPrescribed(self, *args):
        """
        isPrescribed(OpenSimContext self, Coordinate coord) -> bool

        Parameters:
            coord: OpenSim::Coordinate const &

        """
        return _opensim.OpenSimContext_isPrescribed(self, *args)

    def isConstrained(self, *args):
        """
        isConstrained(OpenSimContext self, Coordinate coord) -> bool

        Parameters:
            coord: OpenSim::Coordinate const &

        """
        return _opensim.OpenSimContext_isConstrained(self, *args)

    def isDisabled(self, *args):
        """
        isDisabled(OpenSimContext self, Constraint constraint) -> bool

        Parameters:
            constraint: OpenSim::Constraint const &

        isDisabled(OpenSimContext self, Force force) -> bool

        Parameters:
            force: OpenSim::Force const &

        """
        return _opensim.OpenSimContext_isDisabled(self, *args)

    def setDisabled(self, *args):
        """
        setDisabled(OpenSimContext self, Constraint constraint, bool disable)

        Parameters:
            constraint: OpenSim::Constraint &
            disable: bool

        setDisabled(OpenSimContext self, Force force, bool disable)

        Parameters:
            force: OpenSim::Force &
            disable: bool

        """
        return _opensim.OpenSimContext_setDisabled(self, *args)

    def getActivation(self, *args):
        """
        getActivation(OpenSimContext self, Muscle act) -> double

        Parameters:
            act: OpenSim::Muscle &

        """
        return _opensim.OpenSimContext_getActivation(self, *args)

    def getMuscleLength(self, *args):
        """
        getMuscleLength(OpenSimContext self, Muscle act) -> double

        Parameters:
            act: OpenSim::Muscle &

        """
        return _opensim.OpenSimContext_getMuscleLength(self, *args)

    def getCurrentPath(self, *args):
        """
        getCurrentPath(OpenSimContext self, Muscle act) -> ArrayPathPoint

        Parameters:
            act: OpenSim::Muscle &

        """
        return _opensim.OpenSimContext_getCurrentPath(self, *args)

    def getCurrentDisplayPath(self, *args):
        """
        getCurrentDisplayPath(OpenSimContext self, GeometryPath path) -> ArrayPathPoint

        Parameters:
            path: OpenSim::GeometryPath &

        """
        return _opensim.OpenSimContext_getCurrentDisplayPath(self, *args)

    def updateDisplayer(self, *args):
        """
        updateDisplayer(OpenSimContext self, Force f)

        Parameters:
            f: OpenSim::Force &

        """
        return _opensim.OpenSimContext_updateDisplayer(self, *args)

    def copyMuscle(self, *args):
        """
        copyMuscle(OpenSimContext self, Muscle _from, Muscle to)

        Parameters:
            from: OpenSim::Muscle &
            to: OpenSim::Muscle &

        """
        return _opensim.OpenSimContext_copyMuscle(self, *args)

    def replacePropertyFunction(self, *args):
        """
        replacePropertyFunction(OpenSimContext self, OpenSimObject obj, Function aOldFunction, Function aNewFunction)

        Parameters:
            obj: OpenSim::Object &
            aOldFunction: OpenSim::Function *
            aNewFunction: OpenSim::Function *

        """
        return _opensim.OpenSimContext_replacePropertyFunction(self, *args)

    def setXFunction(self, *args):
        """
        setXFunction(OpenSimContext self, MovingPathPoint mmp, Function newFunction)

        Parameters:
            mmp: OpenSim::MovingPathPoint &
            newFunction: OpenSim::Function &

        """
        return _opensim.OpenSimContext_setXFunction(self, *args)

    def setYFunction(self, *args):
        """
        setYFunction(OpenSimContext self, MovingPathPoint mmp, Function newFunction)

        Parameters:
            mmp: OpenSim::MovingPathPoint &
            newFunction: OpenSim::Function &

        """
        return _opensim.OpenSimContext_setYFunction(self, *args)

    def setZFunction(self, *args):
        """
        setZFunction(OpenSimContext self, MovingPathPoint mmp, Function newFunction)

        Parameters:
            mmp: OpenSim::MovingPathPoint &
            newFunction: OpenSim::Function &

        """
        return _opensim.OpenSimContext_setZFunction(self, *args)

    def setXCoordinate(self, *args):
        """
        setXCoordinate(OpenSimContext self, MovingPathPoint mmp, Coordinate newCoord)

        Parameters:
            mmp: OpenSim::MovingPathPoint &
            newCoord: OpenSim::Coordinate &

        """
        return _opensim.OpenSimContext_setXCoordinate(self, *args)

    def setYCoordinate(self, *args):
        """
        setYCoordinate(OpenSimContext self, MovingPathPoint mmp, Coordinate newCoord)

        Parameters:
            mmp: OpenSim::MovingPathPoint &
            newCoord: OpenSim::Coordinate &

        """
        return _opensim.OpenSimContext_setYCoordinate(self, *args)

    def setZCoordinate(self, *args):
        """
        setZCoordinate(OpenSimContext self, MovingPathPoint mmp, Coordinate newCoord)

        Parameters:
            mmp: OpenSim::MovingPathPoint &
            newCoord: OpenSim::Coordinate &

        """
        return _opensim.OpenSimContext_setZCoordinate(self, *args)

    def setCoordinate(self, *args):
        """
        setCoordinate(OpenSimContext self, ConditionalPathPoint via, Coordinate newCoord)

        Parameters:
            via: OpenSim::ConditionalPathPoint &
            newCoord: OpenSim::Coordinate &

        """
        return _opensim.OpenSimContext_setCoordinate(self, *args)

    def setRangeMin(self, *args):
        """
        setRangeMin(OpenSimContext self, ConditionalPathPoint via, double d)

        Parameters:
            via: OpenSim::ConditionalPathPoint &
            d: double

        """
        return _opensim.OpenSimContext_setRangeMin(self, *args)

    def setRangeMax(self, *args):
        """
        setRangeMax(OpenSimContext self, ConditionalPathPoint via, double d)

        Parameters:
            via: OpenSim::ConditionalPathPoint &
            d: double

        """
        return _opensim.OpenSimContext_setRangeMax(self, *args)

    def replacePathPoint(self, *args):
        """
        replacePathPoint(OpenSimContext self, GeometryPath p, PathPoint mp, PathPoint newPoint) -> bool

        Parameters:
            p: OpenSim::GeometryPath &
            mp: OpenSim::PathPoint &
            newPoint: OpenSim::PathPoint &

        """
        return _opensim.OpenSimContext_replacePathPoint(self, *args)

    def setLocation(self, *args):
        """
        setLocation(OpenSimContext self, PathPoint mp, int i, double d)

        Parameters:
            mp: OpenSim::PathPoint &
            i: int
            d: double

        """
        return _opensim.OpenSimContext_setLocation(self, *args)

    def setEndPoint(self, *args):
        """
        setEndPoint(OpenSimContext self, PathWrap mw, int newEndPt)

        Parameters:
            mw: OpenSim::PathWrap &
            newEndPt: int

        """
        return _opensim.OpenSimContext_setEndPoint(self, *args)

    def addPathPoint(self, *args):
        """
        addPathPoint(OpenSimContext self, GeometryPath p, int menuChoice, Body body)

        Parameters:
            p: OpenSim::GeometryPath &
            menuChoice: int
            body: OpenSim::Body &

        """
        return _opensim.OpenSimContext_addPathPoint(self, *args)

    def deletePathPoint(self, *args):
        """
        deletePathPoint(OpenSimContext self, GeometryPath p, int menuChoice) -> bool

        Parameters:
            p: OpenSim::GeometryPath &
            menuChoice: int

        """
        return _opensim.OpenSimContext_deletePathPoint(self, *args)

    def isActivePathPoint(self, *args):
        """
        isActivePathPoint(OpenSimContext self, PathPoint mp) -> bool

        Parameters:
            mp: OpenSim::PathPoint &

        """
        return _opensim.OpenSimContext_isActivePathPoint(self, *args)

    def setStartPoint(self, *args):
        """
        setStartPoint(OpenSimContext self, PathWrap mw, int newStartPt)

        Parameters:
            mw: OpenSim::PathWrap &
            newStartPt: int

        """
        return _opensim.OpenSimContext_setStartPoint(self, *args)

    def addPathWrap(self, *args):
        """
        addPathWrap(OpenSimContext self, GeometryPath p, WrapObject awo)

        Parameters:
            p: OpenSim::GeometryPath &
            awo: OpenSim::WrapObject &

        """
        return _opensim.OpenSimContext_addPathWrap(self, *args)

    def moveUpPathWrap(self, *args):
        """
        moveUpPathWrap(OpenSimContext self, GeometryPath p, int num)

        Parameters:
            p: OpenSim::GeometryPath &
            num: int

        """
        return _opensim.OpenSimContext_moveUpPathWrap(self, *args)

    def moveDownPathWrap(self, *args):
        """
        moveDownPathWrap(OpenSimContext self, GeometryPath p, int num)

        Parameters:
            p: OpenSim::GeometryPath &
            num: int

        """
        return _opensim.OpenSimContext_moveDownPathWrap(self, *args)

    def deletePathWrap(self, *args):
        """
        deletePathWrap(OpenSimContext self, GeometryPath p, int num)

        Parameters:
            p: OpenSim::GeometryPath &
            num: int

        """
        return _opensim.OpenSimContext_deletePathWrap(self, *args)

    def setBody(self, *args):
        """
        setBody(OpenSimContext self, PathPoint pathPoint, Body newBody)

        Parameters:
            pathPoint: OpenSim::PathPoint &
            newBody: OpenSim::Body &

        setBody(OpenSimContext self, Marker currentMarker, Body newBody, bool b)

        Parameters:
            currentMarker: OpenSim::Marker &
            newBody: OpenSim::Body &
            b: bool

        """
        return _opensim.OpenSimContext_setBody(self, *args)

    def replaceMarkerSet(self, *args):
        """
        replaceMarkerSet(OpenSimContext self, Model model, MarkerSet aMarkerSet) -> int

        Parameters:
            model: OpenSim::Model &
            aMarkerSet: OpenSim::MarkerSet &

        """
        return _opensim.OpenSimContext_replaceMarkerSet(self, *args)

    def getCenterOfMassInGround(self, *args):
        """
        getCenterOfMassInGround(OpenSimContext self, double [3] com)

        Parameters:
            com: double [3]

        """
        return _opensim.OpenSimContext_getCenterOfMassInGround(self, *args)

    def step(self, *args):
        """
        step(OpenSimContext self, Analysis analysis) -> int

        Parameters:
            analysis: OpenSim::Analysis &

        """
        return _opensim.OpenSimContext_step(self, *args)

    def solveInverseKinematics(self, *args):
        """
        solveInverseKinematics(OpenSimContext self, InverseKinematicsTool ikTool) -> bool

        Parameters:
            ikTool: OpenSim::InverseKinematicsTool &

        """
        return _opensim.OpenSimContext_solveInverseKinematics(self, *args)

    def setStatesFromMotion(self, *args):
        """
        setStatesFromMotion(OpenSimContext self, AnalyzeTool analyzeTool, Storage aMotion, bool aInDegrees)

        Parameters:
            analyzeTool: OpenSim::AnalyzeTool &
            aMotion: OpenSim::Storage const &
            aInDegrees: bool

        """
        return _opensim.OpenSimContext_setStatesFromMotion(self, *args)

    def loadStatesFromFile(self, *args):
        """
        loadStatesFromFile(OpenSimContext self, AnalyzeTool analyzeTool)

        Parameters:
            analyzeTool: OpenSim::AnalyzeTool &

        """
        return _opensim.OpenSimContext_loadStatesFromFile(self, *args)

    def processModelScale(self, *args):
        """
        processModelScale(OpenSimContext self, ModelScaler modelScaler, Model aModel, std::string const & aPathToSubject="", double aFinalMass=-1.0) -> bool

        Parameters:
            modelScaler: OpenSim::ModelScaler &
            aModel: OpenSim::Model *
            aPathToSubject: std::string const &
            aFinalMass: double

        processModelScale(OpenSimContext self, ModelScaler modelScaler, Model aModel, std::string const & aPathToSubject="") -> bool

        Parameters:
            modelScaler: OpenSim::ModelScaler &
            aModel: OpenSim::Model *
            aPathToSubject: std::string const &

        processModelScale(OpenSimContext self, ModelScaler modelScaler, Model aModel) -> bool

        Parameters:
            modelScaler: OpenSim::ModelScaler &
            aModel: OpenSim::Model *

        """
        return _opensim.OpenSimContext_processModelScale(self, *args)

    def processModelMarkerPlacer(self, *args):
        """
        processModelMarkerPlacer(OpenSimContext self, MarkerPlacer markerPlacer, Model aModel, std::string const & aPathToSubject="") -> bool

        Parameters:
            markerPlacer: OpenSim::MarkerPlacer &
            aModel: OpenSim::Model *
            aPathToSubject: std::string const &

        processModelMarkerPlacer(OpenSimContext self, MarkerPlacer markerPlacer, Model aModel) -> bool

        Parameters:
            markerPlacer: OpenSim::MarkerPlacer &
            aModel: OpenSim::Model *

        """
        return _opensim.OpenSimContext_processModelMarkerPlacer(self, *args)

    def computeMeasurementScaleFactor(self, *args):
        """
        computeMeasurementScaleFactor(OpenSimContext self, ModelScaler modelScaler, Model aModel, MarkerData aMarkerData, Measurement aMeasurement) -> double

        Parameters:
            modelScaler: OpenSim::ModelScaler &
            aModel: OpenSim::Model const &
            aMarkerData: OpenSim::MarkerData const &
            aMeasurement: OpenSim::Measurement const &

        """
        return _opensim.OpenSimContext_computeMeasurementScaleFactor(self, *args)

    def replaceTransformAxisFunction(self, *args):
        """
        replaceTransformAxisFunction(OpenSimContext self, TransformAxis aDof, Function aFunction)

        Parameters:
            aDof: OpenSim::TransformAxis &
            aFunction: OpenSim::Function &

        """
        return _opensim.OpenSimContext_replaceTransformAxisFunction(self, *args)

    def isNaN(*args):
        """
        isNaN(double v) -> bool

        Parameters:
            v: double

        """
        return _opensim.OpenSimContext_isNaN(*args)

    if _newclass:isNaN = staticmethod(isNaN)
    __swig_getmethods__["isNaN"] = lambda x: isNaN
    def getTime(self):
        """
        getTime(OpenSimContext self) -> double

        Parameters:
            self: OpenSim::OpenSimContext *

        """
        return _opensim.OpenSimContext_getTime(self)

    def getTransformAsDouble16(*args):
        """
        getTransformAsDouble16(Transform aTransform, double [] flattened)

        Parameters:
            aTransform: SimTK::Transform const &
            flattened: double []

        """
        return _opensim.OpenSimContext_getTransformAsDouble16(*args)

    if _newclass:getTransformAsDouble16 = staticmethod(getTransformAsDouble16)
    __swig_getmethods__["getTransformAsDouble16"] = lambda x: getTransformAsDouble16
    def setPropertiesFromState(self):
        """
        setPropertiesFromState(OpenSimContext self)

        Parameters:
            self: OpenSim::OpenSimContext *

        """
        return _opensim.OpenSimContext_setPropertiesFromState(self)

    def recreateSystemKeepStage(self):
        """
        recreateSystemKeepStage(OpenSimContext self)

        Parameters:
            self: OpenSim::OpenSimContext *

        """
        return _opensim.OpenSimContext_recreateSystemKeepStage(self)

    def realizePosition(self):
        """
        realizePosition(OpenSimContext self)

        Parameters:
            self: OpenSim::OpenSimContext *

        """
        return _opensim.OpenSimContext_realizePosition(self)

    def realizeVelocity(self):
        """
        realizeVelocity(OpenSimContext self)

        Parameters:
            self: OpenSim::OpenSimContext *

        """
        return _opensim.OpenSimContext_realizeVelocity(self)

    __swig_destroy__ = _opensim.delete_OpenSimContext
    __del__ = lambda self : None;
OpenSimContext_swigregister = _opensim.OpenSimContext_swigregister
OpenSimContext_swigregister(OpenSimContext)

def OpenSimContext_safeDownCast(*args):
  """
    OpenSimContext_safeDownCast(OpenSimObject obj) -> OpenSimContext

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.OpenSimContext_safeDownCast(*args)

def OpenSimContext_getClassName():
  """OpenSimContext_getClassName() -> std::string const &"""
  return _opensim.OpenSimContext_getClassName()

def OpenSimContext_isNaN(*args):
  """
    OpenSimContext_isNaN(double v) -> bool

    Parameters:
        v: double

    """
  return _opensim.OpenSimContext_isNaN(*args)

def OpenSimContext_getTransformAsDouble16(*args):
  """
    OpenSimContext_getTransformAsDouble16(Transform aTransform, double [] flattened)

    Parameters:
        aTransform: SimTK::Transform const &
        flattened: double []

    """
  return _opensim.OpenSimContext_getTransformAsDouble16(*args)

class OpenSimJavaObject(OpenSimObject):
    """Proxy of C++ OpenSim::OpenSimJavaObject class"""
    __swig_setmethods__ = {}
    for _s in [OpenSimObject]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, OpenSimJavaObject, name, value)
    __swig_getmethods__ = {}
    for _s in [OpenSimObject]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, OpenSimJavaObject, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> OpenSimJavaObject

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.OpenSimJavaObject_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(OpenSimJavaObject self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.OpenSimJavaObject_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.OpenSimJavaObject_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(OpenSimJavaObject self) -> OpenSimJavaObject

        Parameters:
            self: OpenSim::OpenSimJavaObject const *

        """
        return _opensim.OpenSimJavaObject_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(OpenSimJavaObject self) -> std::string const &

        Parameters:
            self: OpenSim::OpenSimJavaObject const *

        """
        return _opensim.OpenSimJavaObject_getConcreteClassName(self)

    def __init__(self): 
        """__init__(OpenSim::OpenSimJavaObject self) -> OpenSimJavaObject"""
        this = _opensim.new_OpenSimJavaObject()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_OpenSimJavaObject
    __del__ = lambda self : None;
OpenSimJavaObject_swigregister = _opensim.OpenSimJavaObject_swigregister
OpenSimJavaObject_swigregister(OpenSimJavaObject)

def OpenSimJavaObject_safeDownCast(*args):
  """
    OpenSimJavaObject_safeDownCast(OpenSimObject obj) -> OpenSimJavaObject

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.OpenSimJavaObject_safeDownCast(*args)

def OpenSimJavaObject_getClassName():
  """OpenSimJavaObject_getClassName() -> std::string const &"""
  return _opensim.OpenSimJavaObject_getClassName()

class AnalysisWrapper(Analysis):
    """Proxy of C++ OpenSim::AnalysisWrapper class"""
    __swig_setmethods__ = {}
    for _s in [Analysis]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, AnalysisWrapper, name, value)
    __swig_getmethods__ = {}
    for _s in [Analysis]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, AnalysisWrapper, name)
    __repr__ = _swig_repr
    def safeDownCast(*args):
        """
        safeDownCast(OpenSimObject obj) -> AnalysisWrapper

        Parameters:
            obj: OpenSim::Object *

        """
        return _opensim.AnalysisWrapper_safeDownCast(*args)

    if _newclass:safeDownCast = staticmethod(safeDownCast)
    __swig_getmethods__["safeDownCast"] = lambda x: safeDownCast
    def assign(self, *args):
        """
        assign(AnalysisWrapper self, OpenSimObject aObject)

        Parameters:
            aObject: OpenSim::Object &

        """
        return _opensim.AnalysisWrapper_assign(self, *args)

    def getClassName():
        """getClassName() -> std::string const &"""
        return _opensim.AnalysisWrapper_getClassName()

    if _newclass:getClassName = staticmethod(getClassName)
    __swig_getmethods__["getClassName"] = lambda x: getClassName
    def clone(self):
        """
        clone(AnalysisWrapper self) -> AnalysisWrapper

        Parameters:
            self: OpenSim::AnalysisWrapper const *

        """
        return _opensim.AnalysisWrapper_clone(self)

    def getConcreteClassName(self):
        """
        getConcreteClassName(AnalysisWrapper self) -> std::string const &

        Parameters:
            self: OpenSim::AnalysisWrapper const *

        """
        return _opensim.AnalysisWrapper_getConcreteClassName(self)

    def __init__(self, aModel=None): 
        """
        __init__(OpenSim::AnalysisWrapper self, Model aModel=None) -> AnalysisWrapper

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::AnalysisWrapper self) -> AnalysisWrapper

        Parameters:
            self: PyObject *

        """
        if self.__class__ == AnalysisWrapper:
            _self = None
        else:
            _self = self
        this = _opensim.new_AnalysisWrapper(_self, aModel)
        try: self.this.append(this)
        except: self.this = this
    def step(self, *args):
        """
        step(AnalysisWrapper self, State s, int stepNumber) -> int

        Parameters:
            s: SimTK::State const &
            stepNumber: int

        """
        return _opensim.AnalysisWrapper_step(self, *args)

    def getStates(self, *args):
        """
        getStates(AnalysisWrapper self, double [] statesBuffer)

        Parameters:
            statesBuffer: double []

        """
        return _opensim.AnalysisWrapper_getStates(self, *args)

    def getSimulationTime(self):
        """
        getSimulationTime(AnalysisWrapper self) -> double

        Parameters:
            self: OpenSim::AnalysisWrapper *

        """
        return _opensim.AnalysisWrapper_getSimulationTime(self)

    __swig_destroy__ = _opensim.delete_AnalysisWrapper
    __del__ = lambda self : None;
    def __disown__(self):
        self.this.disown()
        _opensim.disown_AnalysisWrapper(self)
        return weakref_proxy(self)
AnalysisWrapper_swigregister = _opensim.AnalysisWrapper_swigregister
AnalysisWrapper_swigregister(AnalysisWrapper)

def AnalysisWrapper_safeDownCast(*args):
  """
    AnalysisWrapper_safeDownCast(OpenSimObject obj) -> AnalysisWrapper

    Parameters:
        obj: OpenSim::Object *

    """
  return _opensim.AnalysisWrapper_safeDownCast(*args)

def AnalysisWrapper_getClassName():
  """AnalysisWrapper_getClassName() -> std::string const &"""
  return _opensim.AnalysisWrapper_getClassName()

class InterruptCallback(AnalysisWrapper):
    """Proxy of C++ OpenSim::InterruptCallback class"""
    __swig_setmethods__ = {}
    for _s in [AnalysisWrapper]: __swig_setmethods__.update(getattr(_s,'__swig_setmethods__',{}))
    __setattr__ = lambda self, name, value: _swig_setattr(self, InterruptCallback, name, value)
    __swig_getmethods__ = {}
    for _s in [AnalysisWrapper]: __swig_getmethods__.update(getattr(_s,'__swig_getmethods__',{}))
    __getattr__ = lambda self, name: _swig_getattr(self, InterruptCallback, name)
    __repr__ = _swig_repr
    def __init__(self, aModel=None): 
        """
        __init__(OpenSim::InterruptCallback self, Model aModel=None) -> InterruptCallback

        Parameters:
            aModel: OpenSim::Model *

        __init__(OpenSim::InterruptCallback self) -> InterruptCallback
        """
        this = _opensim.new_InterruptCallback(aModel)
        try: self.this.append(this)
        except: self.this = this
    def interrupt(self):
        """
        interrupt(InterruptCallback self)

        Parameters:
            self: OpenSim::InterruptCallback *

        """
        return _opensim.InterruptCallback_interrupt(self)

    def step(self, *args):
        """
        step(InterruptCallback self, State s, int stepNumber) -> int

        Parameters:
            s: SimTK::State const &
            stepNumber: int

        """
        return _opensim.InterruptCallback_step(self, *args)

    __swig_destroy__ = _opensim.delete_InterruptCallback
    __del__ = lambda self : None;
InterruptCallback_swigregister = _opensim.InterruptCallback_swigregister
InterruptCallback_swigregister(InterruptCallback)

class PropertyHelper(_object):
    """Proxy of C++ OpenSim::PropertyHelper class"""
    __swig_setmethods__ = {}
    __setattr__ = lambda self, name, value: _swig_setattr(self, PropertyHelper, name, value)
    __swig_getmethods__ = {}
    __getattr__ = lambda self, name: _swig_getattr(self, PropertyHelper, name)
    __repr__ = _swig_repr
    def getValueBool(*args):
        """
        getValueBool(AbstractProperty p, int index=-1) -> bool

        Parameters:
            p: OpenSim::AbstractProperty const &
            index: int

        getValueBool(AbstractProperty p) -> bool

        Parameters:
            p: OpenSim::AbstractProperty const &

        """
        return _opensim.PropertyHelper_getValueBool(*args)

    if _newclass:getValueBool = staticmethod(getValueBool)
    __swig_getmethods__["getValueBool"] = lambda x: getValueBool
    def setValueBool(*args):
        """
        setValueBool(bool v, AbstractProperty p, int index=-1)

        Parameters:
            v: bool
            p: OpenSim::AbstractProperty &
            index: int

        setValueBool(bool v, AbstractProperty p)

        Parameters:
            v: bool
            p: OpenSim::AbstractProperty &

        """
        return _opensim.PropertyHelper_setValueBool(*args)

    if _newclass:setValueBool = staticmethod(setValueBool)
    __swig_getmethods__["setValueBool"] = lambda x: setValueBool
    def appendValueBool(*args):
        """
        appendValueBool(bool v, AbstractProperty p)

        Parameters:
            v: bool
            p: OpenSim::AbstractProperty &

        """
        return _opensim.PropertyHelper_appendValueBool(*args)

    if _newclass:appendValueBool = staticmethod(appendValueBool)
    __swig_getmethods__["appendValueBool"] = lambda x: appendValueBool
    def getValueInt(*args):
        """
        getValueInt(AbstractProperty p, int index=-1) -> int

        Parameters:
            p: OpenSim::AbstractProperty const &
            index: int

        getValueInt(AbstractProperty p) -> int

        Parameters:
            p: OpenSim::AbstractProperty const &

        """
        return _opensim.PropertyHelper_getValueInt(*args)

    if _newclass:getValueInt = staticmethod(getValueInt)
    __swig_getmethods__["getValueInt"] = lambda x: getValueInt
    def setValueInt(*args):
        """
        setValueInt(int v, AbstractProperty p, int index=-1)

        Parameters:
            v: int
            p: OpenSim::AbstractProperty &
            index: int

        setValueInt(int v, AbstractProperty p)

        Parameters:
            v: int
            p: OpenSim::AbstractProperty &

        """
        return _opensim.PropertyHelper_setValueInt(*args)

    if _newclass:setValueInt = staticmethod(setValueInt)
    __swig_getmethods__["setValueInt"] = lambda x: setValueInt
    def appendValueInt(*args):
        """
        appendValueInt(int v, AbstractProperty p)

        Parameters:
            v: int
            p: OpenSim::AbstractProperty &

        """
        return _opensim.PropertyHelper_appendValueInt(*args)

    if _newclass:appendValueInt = staticmethod(appendValueInt)
    __swig_getmethods__["appendValueInt"] = lambda x: appendValueInt
    def getValueDouble(*args):
        """
        getValueDouble(AbstractProperty p, int index=-1) -> double

        Parameters:
            p: OpenSim::AbstractProperty const &
            index: int

        getValueDouble(AbstractProperty p) -> double

        Parameters:
            p: OpenSim::AbstractProperty const &

        """
        return _opensim.PropertyHelper_getValueDouble(*args)

    if _newclass:getValueDouble = staticmethod(getValueDouble)
    __swig_getmethods__["getValueDouble"] = lambda x: getValueDouble
    def setValueDouble(*args):
        """
        setValueDouble(double v, AbstractProperty p, int index=-1)

        Parameters:
            v: double
            p: OpenSim::AbstractProperty &
            index: int

        setValueDouble(double v, AbstractProperty p)

        Parameters:
            v: double
            p: OpenSim::AbstractProperty &

        """
        return _opensim.PropertyHelper_setValueDouble(*args)

    if _newclass:setValueDouble = staticmethod(setValueDouble)
    __swig_getmethods__["setValueDouble"] = lambda x: setValueDouble
    def appendValueDouble(*args):
        """
        appendValueDouble(double v, AbstractProperty p)

        Parameters:
            v: double
            p: OpenSim::AbstractProperty &

        """
        return _opensim.PropertyHelper_appendValueDouble(*args)

    if _newclass:appendValueDouble = staticmethod(appendValueDouble)
    __swig_getmethods__["appendValueDouble"] = lambda x: appendValueDouble
    def getValueString(*args):
        """
        getValueString(AbstractProperty p, int index=-1) -> std::string

        Parameters:
            p: OpenSim::AbstractProperty const &
            index: int

        getValueString(AbstractProperty p) -> std::string

        Parameters:
            p: OpenSim::AbstractProperty const &

        """
        return _opensim.PropertyHelper_getValueString(*args)

    if _newclass:getValueString = staticmethod(getValueString)
    __swig_getmethods__["getValueString"] = lambda x: getValueString
    def setValueString(*args):
        """
        setValueString(std::string const & v, AbstractProperty p, int index=-1)

        Parameters:
            v: std::string const &
            p: OpenSim::AbstractProperty &
            index: int

        setValueString(std::string const & v, AbstractProperty p)

        Parameters:
            v: std::string const &
            p: OpenSim::AbstractProperty &

        """
        return _opensim.PropertyHelper_setValueString(*args)

    if _newclass:setValueString = staticmethod(setValueString)
    __swig_getmethods__["setValueString"] = lambda x: setValueString
    def appendValueString(*args):
        """
        appendValueString(std::string const & v, AbstractProperty p)

        Parameters:
            v: std::string const &
            p: OpenSim::AbstractProperty &

        """
        return _opensim.PropertyHelper_appendValueString(*args)

    if _newclass:appendValueString = staticmethod(appendValueString)
    __swig_getmethods__["appendValueString"] = lambda x: appendValueString
    def getValueTransform(*args):
        """
        getValueTransform(AbstractProperty p, int index) -> double

        Parameters:
            p: OpenSim::AbstractProperty const &
            index: int

        """
        return _opensim.PropertyHelper_getValueTransform(*args)

    if _newclass:getValueTransform = staticmethod(getValueTransform)
    __swig_getmethods__["getValueTransform"] = lambda x: getValueTransform
    def setValueTransform(*args):
        """
        setValueTransform(double v, AbstractProperty p, int index)

        Parameters:
            v: double
            p: OpenSim::AbstractProperty &
            index: int

        """
        return _opensim.PropertyHelper_setValueTransform(*args)

    if _newclass:setValueTransform = staticmethod(setValueTransform)
    __swig_getmethods__["setValueTransform"] = lambda x: setValueTransform
    def getValueVec3(*args):
        """
        getValueVec3(AbstractProperty p, int index) -> double

        Parameters:
            p: OpenSim::AbstractProperty const &
            index: int

        """
        return _opensim.PropertyHelper_getValueVec3(*args)

    if _newclass:getValueVec3 = staticmethod(getValueVec3)
    __swig_getmethods__["getValueVec3"] = lambda x: getValueVec3
    def setValueVec3(*args):
        """
        setValueVec3(double v, AbstractProperty p, int index)

        Parameters:
            v: double
            p: OpenSim::AbstractProperty &
            index: int

        """
        return _opensim.PropertyHelper_setValueVec3(*args)

    if _newclass:setValueVec3 = staticmethod(setValueVec3)
    __swig_getmethods__["setValueVec3"] = lambda x: setValueVec3
    def getValueStringArray(*args):
        """
        getValueStringArray(AbstractProperty p) -> ArrayStr

        Parameters:
            p: OpenSim::AbstractProperty const &

        """
        return _opensim.PropertyHelper_getValueStringArray(*args)

    if _newclass:getValueStringArray = staticmethod(getValueStringArray)
    __swig_getmethods__["getValueStringArray"] = lambda x: getValueStringArray
    def setValueStringArray(*args):
        """
        setValueStringArray(AbstractProperty p, ArrayStr aStringArray)

        Parameters:
            p: OpenSim::AbstractProperty &
            aStringArray: OpenSim::Array< std::string > &

        """
        return _opensim.PropertyHelper_setValueStringArray(*args)

    if _newclass:setValueStringArray = staticmethod(setValueStringArray)
    __swig_getmethods__["setValueStringArray"] = lambda x: setValueStringArray
    def removeItem(*args):
        """
        removeItem(AbstractProperty p, int index)

        Parameters:
            p: OpenSim::AbstractProperty &
            index: int

        """
        return _opensim.PropertyHelper_removeItem(*args)

    if _newclass:removeItem = staticmethod(removeItem)
    __swig_getmethods__["removeItem"] = lambda x: removeItem
    def __init__(self): 
        """__init__(OpenSim::PropertyHelper self) -> PropertyHelper"""
        this = _opensim.new_PropertyHelper()
        try: self.this.append(this)
        except: self.this = this
    __swig_destroy__ = _opensim.delete_PropertyHelper
    __del__ = lambda self : None;
PropertyHelper_swigregister = _opensim.PropertyHelper_swigregister
PropertyHelper_swigregister(PropertyHelper)

def PropertyHelper_getValueBool(*args):
  """
    getValueBool(AbstractProperty p, int index=-1) -> bool

    Parameters:
        p: OpenSim::AbstractProperty const &
        index: int

    PropertyHelper_getValueBool(AbstractProperty p) -> bool

    Parameters:
        p: OpenSim::AbstractProperty const &

    """
  return _opensim.PropertyHelper_getValueBool(*args)

def PropertyHelper_setValueBool(*args):
  """
    setValueBool(bool v, AbstractProperty p, int index=-1)

    Parameters:
        v: bool
        p: OpenSim::AbstractProperty &
        index: int

    PropertyHelper_setValueBool(bool v, AbstractProperty p)

    Parameters:
        v: bool
        p: OpenSim::AbstractProperty &

    """
  return _opensim.PropertyHelper_setValueBool(*args)

def PropertyHelper_appendValueBool(*args):
  """
    PropertyHelper_appendValueBool(bool v, AbstractProperty p)

    Parameters:
        v: bool
        p: OpenSim::AbstractProperty &

    """
  return _opensim.PropertyHelper_appendValueBool(*args)

def PropertyHelper_getValueInt(*args):
  """
    getValueInt(AbstractProperty p, int index=-1) -> int

    Parameters:
        p: OpenSim::AbstractProperty const &
        index: int

    PropertyHelper_getValueInt(AbstractProperty p) -> int

    Parameters:
        p: OpenSim::AbstractProperty const &

    """
  return _opensim.PropertyHelper_getValueInt(*args)

def PropertyHelper_setValueInt(*args):
  """
    setValueInt(int v, AbstractProperty p, int index=-1)

    Parameters:
        v: int
        p: OpenSim::AbstractProperty &
        index: int

    PropertyHelper_setValueInt(int v, AbstractProperty p)

    Parameters:
        v: int
        p: OpenSim::AbstractProperty &

    """
  return _opensim.PropertyHelper_setValueInt(*args)

def PropertyHelper_appendValueInt(*args):
  """
    PropertyHelper_appendValueInt(int v, AbstractProperty p)

    Parameters:
        v: int
        p: OpenSim::AbstractProperty &

    """
  return _opensim.PropertyHelper_appendValueInt(*args)

def PropertyHelper_getValueDouble(*args):
  """
    getValueDouble(AbstractProperty p, int index=-1) -> double

    Parameters:
        p: OpenSim::AbstractProperty const &
        index: int

    PropertyHelper_getValueDouble(AbstractProperty p) -> double

    Parameters:
        p: OpenSim::AbstractProperty const &

    """
  return _opensim.PropertyHelper_getValueDouble(*args)

def PropertyHelper_setValueDouble(*args):
  """
    setValueDouble(double v, AbstractProperty p, int index=-1)

    Parameters:
        v: double
        p: OpenSim::AbstractProperty &
        index: int

    PropertyHelper_setValueDouble(double v, AbstractProperty p)

    Parameters:
        v: double
        p: OpenSim::AbstractProperty &

    """
  return _opensim.PropertyHelper_setValueDouble(*args)

def PropertyHelper_appendValueDouble(*args):
  """
    PropertyHelper_appendValueDouble(double v, AbstractProperty p)

    Parameters:
        v: double
        p: OpenSim::AbstractProperty &

    """
  return _opensim.PropertyHelper_appendValueDouble(*args)

def PropertyHelper_getValueString(*args):
  """
    getValueString(AbstractProperty p, int index=-1) -> std::string

    Parameters:
        p: OpenSim::AbstractProperty const &
        index: int

    PropertyHelper_getValueString(AbstractProperty p) -> std::string

    Parameters:
        p: OpenSim::AbstractProperty const &

    """
  return _opensim.PropertyHelper_getValueString(*args)

def PropertyHelper_setValueString(*args):
  """
    setValueString(std::string const & v, AbstractProperty p, int index=-1)

    Parameters:
        v: std::string const &
        p: OpenSim::AbstractProperty &
        index: int

    PropertyHelper_setValueString(std::string const & v, AbstractProperty p)

    Parameters:
        v: std::string const &
        p: OpenSim::AbstractProperty &

    """
  return _opensim.PropertyHelper_setValueString(*args)

def PropertyHelper_appendValueString(*args):
  """
    PropertyHelper_appendValueString(std::string const & v, AbstractProperty p)

    Parameters:
        v: std::string const &
        p: OpenSim::AbstractProperty &

    """
  return _opensim.PropertyHelper_appendValueString(*args)

def PropertyHelper_getValueTransform(*args):
  """
    PropertyHelper_getValueTransform(AbstractProperty p, int index) -> double

    Parameters:
        p: OpenSim::AbstractProperty const &
        index: int

    """
  return _opensim.PropertyHelper_getValueTransform(*args)

def PropertyHelper_setValueTransform(*args):
  """
    PropertyHelper_setValueTransform(double v, AbstractProperty p, int index)

    Parameters:
        v: double
        p: OpenSim::AbstractProperty &
        index: int

    """
  return _opensim.PropertyHelper_setValueTransform(*args)

def PropertyHelper_getValueVec3(*args):
  """
    PropertyHelper_getValueVec3(AbstractProperty p, int index) -> double

    Parameters:
        p: OpenSim::AbstractProperty const &
        index: int

    """
  return _opensim.PropertyHelper_getValueVec3(*args)

def PropertyHelper_setValueVec3(*args):
  """
    PropertyHelper_setValueVec3(double v, AbstractProperty p, int index)

    Parameters:
        v: double
        p: OpenSim::AbstractProperty &
        index: int

    """
  return _opensim.PropertyHelper_setValueVec3(*args)

def PropertyHelper_getValueStringArray(*args):
  """
    PropertyHelper_getValueStringArray(AbstractProperty p) -> ArrayStr

    Parameters:
        p: OpenSim::AbstractProperty const &

    """
  return _opensim.PropertyHelper_getValueStringArray(*args)

def PropertyHelper_setValueStringArray(*args):
  """
    PropertyHelper_setValueStringArray(AbstractProperty p, ArrayStr aStringArray)

    Parameters:
        p: OpenSim::AbstractProperty &
        aStringArray: OpenSim::Array< std::string > &

    """
  return _opensim.PropertyHelper_setValueStringArray(*args)

def PropertyHelper_removeItem(*args):
  """
    PropertyHelper_removeItem(AbstractProperty p, int index)

    Parameters:
        p: OpenSim::AbstractProperty &
        index: int

    """
  return _opensim.PropertyHelper_removeItem(*args)

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


