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

from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if getattr(globals().get("__spec__"), "parent", None) or __package__ or "." in __name__:
    from . import _cmsdk3
else:
    import _cmsdk3

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

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


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


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


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


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


class SwigPyIterator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _cmsdk3.delete_SwigPyIterator

    def value(self):
        return _cmsdk3.SwigPyIterator_value(self)

    def incr(self, n=1):
        return _cmsdk3.SwigPyIterator_incr(self, n)

    def decr(self, n=1):
        return _cmsdk3.SwigPyIterator_decr(self, n)

    def distance(self, x):
        return _cmsdk3.SwigPyIterator_distance(self, x)

    def equal(self, x):
        return _cmsdk3.SwigPyIterator_equal(self, x)

    def copy(self):
        return _cmsdk3.SwigPyIterator_copy(self)

    def next(self):
        return _cmsdk3.SwigPyIterator_next(self)

    def __next__(self):
        return _cmsdk3.SwigPyIterator___next__(self)

    def previous(self):
        return _cmsdk3.SwigPyIterator_previous(self)

    def advance(self, n):
        return _cmsdk3.SwigPyIterator_advance(self, n)

    def __eq__(self, x):
        return _cmsdk3.SwigPyIterator___eq__(self, x)

    def __ne__(self, x):
        return _cmsdk3.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n):
        return _cmsdk3.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n):
        return _cmsdk3.SwigPyIterator___isub__(self, n)

    def __add__(self, n):
        return _cmsdk3.SwigPyIterator___add__(self, n)

    def __sub__(self, *args):
        return _cmsdk3.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

# Register SwigPyIterator in _cmsdk3:
_cmsdk3.SwigPyIterator_swigregister(SwigPyIterator)
CNSPRIORITY = _cmsdk3.CNSPRIORITY
FACTORYPRIORITY = _cmsdk3.FACTORYPRIORITY
BITFREE = _cmsdk3.BITFREE
BITOCCUPIED = _cmsdk3.BITOCCUPIED
INT32_NOVALUE = _cmsdk3.INT32_NOVALUE
INT64_NOVALUE = _cmsdk3.INT64_NOVALUE
FLOAT64_NOVALUE = _cmsdk3.FLOAT64_NOVALUE
PSYTYPELEVELS = _cmsdk3.PSYTYPELEVELS
class PsyType(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    levels = property(_cmsdk3.PsyType_levels_get, _cmsdk3.PsyType_levels_set)

    def isValid(self):
        return _cmsdk3.PsyType_isValid(self)

    def __eq__(self, othertype):
        return _cmsdk3.PsyType___eq__(self, othertype)

    def __ne__(self, othertype):
        return _cmsdk3.PsyType___ne__(self, othertype)

    def __lt__(self, othertype):
        return _cmsdk3.PsyType___lt__(self, othertype)

    def __gt__(self, othertype):
        return _cmsdk3.PsyType___gt__(self, othertype)

    def setLevel(self, i, value):
        return _cmsdk3.PsyType_setLevel(self, i, value)

    def matches(self, otherType):
        return _cmsdk3.PsyType_matches(self, otherType)

    def toString(self, *args):
        return _cmsdk3.PsyType_toString(self, *args)

    def fromString(self, text):
        return _cmsdk3.PsyType_fromString(self, text)

    def __init__(self):
        _cmsdk3.PsyType_swiginit(self, _cmsdk3.new_PsyType())
    __swig_destroy__ = _cmsdk3.delete_PsyType

# Register PsyType in _cmsdk3:
_cmsdk3.PsyType_swigregister(PsyType)
PSYCONTEXTLEVELS = _cmsdk3.PSYCONTEXTLEVELS
class PsyContext(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    levels = property(_cmsdk3.PsyContext_levels_get, _cmsdk3.PsyContext_levels_set)

    def isValid(self):
        return _cmsdk3.PsyContext_isValid(self)

    def __eq__(self, othercontext):
        return _cmsdk3.PsyContext___eq__(self, othercontext)

    def __ne__(self, othercontext):
        return _cmsdk3.PsyContext___ne__(self, othercontext)

    def __lt__(self, othercontext):
        return _cmsdk3.PsyContext___lt__(self, othercontext)

    def __gt__(self, othercontext):
        return _cmsdk3.PsyContext___gt__(self, othercontext)

    def setLevel(self, i, value):
        return _cmsdk3.PsyContext_setLevel(self, i, value)

    def matches(self, othercontext):
        return _cmsdk3.PsyContext_matches(self, othercontext)

    def toString(self, *args):
        return _cmsdk3.PsyContext_toString(self, *args)

    def fromString(self, text):
        return _cmsdk3.PsyContext_fromString(self, text)

    def compare(self, othercontext):
        return _cmsdk3.PsyContext_compare(self, othercontext)

    def __init__(self):
        _cmsdk3.PsyContext_swiginit(self, _cmsdk3.new_PsyContext())
    __swig_destroy__ = _cmsdk3.delete_PsyContext

# Register PsyContext in _cmsdk3:
_cmsdk3.PsyContext_swigregister(PsyContext)
CONTEXT_OTHER_ROOT = _cmsdk3.CONTEXT_OTHER_ROOT
CONTEXT_EQUAL = _cmsdk3.CONTEXT_EQUAL
CONTEXT_SUPERSEDES = _cmsdk3.CONTEXT_SUPERSEDES
CONTEXT_INCLUDED = _cmsdk3.CONTEXT_INCLUDED

UNUSEDID = _cmsdk3.UNUSEDID
CONSTCHARID = _cmsdk3.CONSTCHARID
TIMEID = _cmsdk3.TIMEID
CHARDATAID = _cmsdk3.CHARDATAID
INTID = _cmsdk3.INTID
DOUBLEID = _cmsdk3.DOUBLEID
CONSTCHARINFOID = _cmsdk3.CONSTCHARINFOID
CHARDATAINFOID = _cmsdk3.CHARDATAINFOID
PSYCLONEINDEXID = _cmsdk3.PSYCLONEINDEXID
PSYCLONEMASTERID = _cmsdk3.PSYCLONEMASTERID
TEMPORALMEMORYID = _cmsdk3.TEMPORALMEMORYID
PROCESSMEMORYID = _cmsdk3.PROCESSMEMORYID
COMPONENTMEMORYID = _cmsdk3.COMPONENTMEMORYID
DATAMAPSMEMORYID = _cmsdk3.DATAMAPSMEMORYID
DATAMESSAGEOLDID = _cmsdk3.DATAMESSAGEOLDID
CONTROLMESSAGEID = _cmsdk3.CONTROLMESSAGEID
LOGENTRYID = _cmsdk3.LOGENTRYID
TIMESYNCDATA = _cmsdk3.TIMESYNCDATA
TRIGGERDATA = _cmsdk3.TRIGGERDATA
RETRIEVEDATA = _cmsdk3.RETRIEVEDATA
POSTDATA = _cmsdk3.POSTDATA
COMPONENTSETUPDATA = _cmsdk3.COMPONENTSETUPDATA
IDRESERVATION = _cmsdk3.IDRESERVATION
TYPELEVELID = _cmsdk3.TYPELEVELID
CONTEXTLEVELID = _cmsdk3.CONTEXTLEVELID
CRANKID = _cmsdk3.CRANKID
COMPONENTID = _cmsdk3.COMPONENTID
TAGID = _cmsdk3.TAGID
NODEINFOPACKID = _cmsdk3.NODEINFOPACKID
NODEMAPID = _cmsdk3.NODEMAPID
DATAMESSAGEINFOID = _cmsdk3.DATAMESSAGEINFOID
DATAMESSAGEDRAFTID = _cmsdk3.DATAMESSAGEDRAFTID
MEMORYREQUESTSERVERID = _cmsdk3.MEMORYREQUESTSERVERID
DYNAMICMEMORYID = _cmsdk3.DYNAMICMEMORYID
OBSERVATIONID = _cmsdk3.OBSERVATIONID
DATAMESSAGEID = _cmsdk3.DATAMESSAGEID
TRIGGERGROUPDATA = _cmsdk3.TRIGGERGROUPDATA
WINSHMEMSPACE = _cmsdk3.WINSHMEMSPACE
MAXKEYNAMELEN = _cmsdk3.MAXKEYNAMELEN
MAXVALUENAMELEN = _cmsdk3.MAXVALUENAMELEN
MAXCONTENTLEN = _cmsdk3.MAXCONTENTLEN
MAXCOMMANDLINELEN = _cmsdk3.MAXCOMMANDLINELEN
MAXFILENAMELEN = _cmsdk3.MAXFILENAMELEN
MAXSHMEMNAMELEN = _cmsdk3.MAXSHMEMNAMELEN
MAXSCRIPTLEN = _cmsdk3.MAXSCRIPTLEN
THREAD_NONE = _cmsdk3.THREAD_NONE
THREAD_TERMINATED = _cmsdk3.THREAD_TERMINATED
THREAD_INIT = _cmsdk3.THREAD_INIT
THREAD_RUNNING = _cmsdk3.THREAD_RUNNING
THREAD_PAUSED = _cmsdk3.THREAD_PAUSED
THREAD_INTERRUPTED = _cmsdk3.THREAD_INTERRUPTED
THREAD_STATS_OFF = _cmsdk3.THREAD_STATS_OFF
THREAD_STATS_AUTO = _cmsdk3.THREAD_STATS_AUTO
THREAD_STATS_ADHOC = _cmsdk3.THREAD_STATS_ADHOC
MUTEX_INVALID = _cmsdk3.MUTEX_INVALID
SOCKET_ERROR = _cmsdk3.SOCKET_ERROR
INVALID_SOCKET = _cmsdk3.INVALID_SOCKET
MUTEXMEMSIZE = _cmsdk3.MUTEXMEMSIZE
EVENTMEMSIZE = _cmsdk3.EVENTMEMSIZE
SEMAPHOREMEMSIZE = _cmsdk3.SEMAPHOREMEMSIZE
SD_BOTH = _cmsdk3.SD_BOTH
OSCPU_UNKNOWN = _cmsdk3.OSCPU_UNKNOWN
OSCPU_X86 = _cmsdk3.OSCPU_X86
OSCPU_AMD64 = _cmsdk3.OSCPU_AMD64
OSCPU_IA64 = _cmsdk3.OSCPU_IA64
ERROR64 = _cmsdk3.ERROR64
ERROR32 = _cmsdk3.ERROR32
ERROR16 = _cmsdk3.ERROR16
ERROR8 = _cmsdk3.ERROR8
class CleanShutdown(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _cmsdk3.CleanShutdown_swiginit(self, _cmsdk3.new_CleanShutdown())
    __swig_destroy__ = _cmsdk3.delete_CleanShutdown

# Register CleanShutdown in _cmsdk3:
_cmsdk3.CleanShutdown_swigregister(CleanShutdown)
cvar = _cmsdk3.cvar


def ClearUtilsMaps():
    return _cmsdk3.ClearUtilsMaps()
LOG_NOTOPIC = _cmsdk3.LOG_NOTOPIC
LOG_SYSTEM = _cmsdk3.LOG_SYSTEM
LOG_NETWORK = _cmsdk3.LOG_NETWORK
LOG_MEMORY = _cmsdk3.LOG_MEMORY
LOG_PROCESS = _cmsdk3.LOG_PROCESS
LOG_TOPIC5 = _cmsdk3.LOG_TOPIC5
LOG_TOPIC6 = _cmsdk3.LOG_TOPIC6
LOG_TOPIC7 = _cmsdk3.LOG_TOPIC7
LOG_TOPIC8 = _cmsdk3.LOG_TOPIC8
LOG_TOPIC9 = _cmsdk3.LOG_TOPIC9
LOG_TOPIC10 = _cmsdk3.LOG_TOPIC10
LOG_TOPIC11 = _cmsdk3.LOG_TOPIC11
LOG_MAXCOUNT = _cmsdk3.LOG_MAXCOUNT
LOGPRINT = _cmsdk3.LOGPRINT
LOGDEBUG = _cmsdk3.LOGDEBUG

def GetDataTypeName(datatype):
    return _cmsdk3.GetDataTypeName(datatype)

def GetDataTypeID(typeName):
    return _cmsdk3.GetDataTypeID(typeName)
class LogEntry(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    size = property(_cmsdk3.LogEntry_size_get, _cmsdk3.LogEntry_size_set)
    cid = property(_cmsdk3.LogEntry_cid_get, _cmsdk3.LogEntry_cid_set)
    time = property(_cmsdk3.LogEntry_time_get, _cmsdk3.LogEntry_time_set)
    source = property(_cmsdk3.LogEntry_source_get, _cmsdk3.LogEntry_source_set)
    subject = property(_cmsdk3.LogEntry_subject_get, _cmsdk3.LogEntry_subject_set)
    level = property(_cmsdk3.LogEntry_level_get, _cmsdk3.LogEntry_level_set)
    type = property(_cmsdk3.LogEntry_type_get, _cmsdk3.LogEntry_type_set)

    def getText(self, len):
        return _cmsdk3.LogEntry_getText(self, len)

    def setText(self, text, len):
        return _cmsdk3.LogEntry_setText(self, text, len)

    def toJSON(self):
        return _cmsdk3.LogEntry_toJSON(self)

    def toXML(self):
        return _cmsdk3.LogEntry_toXML(self)

    def __init__(self):
        _cmsdk3.LogEntry_swiginit(self, _cmsdk3.new_LogEntry())
    __swig_destroy__ = _cmsdk3.delete_LogEntry

# Register LogEntry in _cmsdk3:
_cmsdk3.LogEntry_swigregister(LogEntry)
class LogReceiver(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr

    def logEntry(self, entry):
        return _cmsdk3.LogReceiver_logEntry(self, entry)
    __swig_destroy__ = _cmsdk3.delete_LogReceiver

# Register LogReceiver in _cmsdk3:
_cmsdk3.LogReceiver_swigregister(LogReceiver)
class LogSystem(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _cmsdk3.LogSystem_swiginit(self, _cmsdk3.new_LogSystem())
    __swig_destroy__ = _cmsdk3.delete_LogSystem
    LogSingleton = property(_cmsdk3.LogSystem_LogSingleton_get, _cmsdk3.LogSystem_LogSingleton_set)

    @staticmethod
    def SetLogReceiver(rec):
        return _cmsdk3.LogSystem_SetLogReceiver(rec)

    @staticmethod
    def SetLogFileOutput(logfile, printOut=True):
        return _cmsdk3.LogSystem_SetLogFileOutput(logfile, printOut)

    @staticmethod
    def SetLogLevelDebug(*args):
        return _cmsdk3.LogSystem_SetLogLevelDebug(*args)

    @staticmethod
    def SetLogLevelVerbose(*args):
        return _cmsdk3.LogSystem_SetLogLevelVerbose(*args)

    @staticmethod
    def LogSystemPrint(*args):
        return _cmsdk3.LogSystem_LogSystemPrint(*args)

    @staticmethod
    def LogSystemDebug(*args):
        return _cmsdk3.LogSystem_LogSystemDebug(*args)
    logLevelVerbose = property(_cmsdk3.LogSystem_logLevelVerbose_get, _cmsdk3.LogSystem_logLevelVerbose_set)
    logLevelDebug = property(_cmsdk3.LogSystem_logLevelDebug_get, _cmsdk3.LogSystem_logLevelDebug_set)
    logReceiverObj = property(_cmsdk3.LogSystem_logReceiverObj_get, _cmsdk3.LogSystem_logReceiverObj_set)
    logfile = property(_cmsdk3.LogSystem_logfile_get, _cmsdk3.LogSystem_logfile_set)
    printToStdOut = property(_cmsdk3.LogSystem_printToStdOut_get, _cmsdk3.LogSystem_printToStdOut_set)

# Register LogSystem in _cmsdk3:
_cmsdk3.LogSystem_swigregister(LogSystem)

def UtilsTest():
    return _cmsdk3.UtilsTest()

def SetSharedSystemInstance(inst):
    return _cmsdk3.SetSharedSystemInstance(inst)

def GetSharedSystemInstance():
    return _cmsdk3.GetSharedSystemInstance()

def SignalEvent(name):
    return _cmsdk3.SignalEvent(name)

def DestroyEvent(name):
    return _cmsdk3.DestroyEvent(name)

def UnitTest_Utils():
    return _cmsdk3.UnitTest_Utils()

def CreateSharedMemorySegment(name, size, force=False):
    return _cmsdk3.CreateSharedMemorySegment(name, size, force)

def OpenSharedMemorySegment(name, size):
    return _cmsdk3.OpenSharedMemorySegment(name, size)

def CloseSharedMemorySegment(data, size):
    return _cmsdk3.CloseSharedMemorySegment(data, size)

def ntoh64(input):
    return _cmsdk3.ntoh64(input)

def hton64(input):
    return _cmsdk3.hton64(input)

def Calc32BitFieldSize(bitsize):
    return _cmsdk3.Calc32BitFieldSize(bitsize)

def Reset32BitField(bitfield, bytesize):
    return _cmsdk3.Reset32BitField(bitfield, bytesize)

def GetFirstFreeBitLoc(bitfield, bytesize, loc):
    return _cmsdk3.GetFirstFreeBitLoc(bitfield, bytesize, loc)

def GetFirstFreeBitLocN(bitfield, bytesize, num, loc):
    return _cmsdk3.GetFirstFreeBitLocN(bitfield, bytesize, num, loc)

def SetBit(loc, value, bitfield, bytesize):
    return _cmsdk3.SetBit(loc, value, bitfield, bytesize)

def SetBitN(loc, num, value, bitfield, bytesize):
    return _cmsdk3.SetBitN(loc, num, value, bitfield, bytesize)

def GetBit(loc, bitfield, bytesize, val):
    return _cmsdk3.GetBit(loc, bitfield, bytesize, val)

def GetLastOccupiedBitLoc(bitfield, bytesize, loc):
    return _cmsdk3.GetLastOccupiedBitLoc(bitfield, bytesize, loc)

def GetBitFieldAsString(bitfield, bytesize, size):
    return _cmsdk3.GetBitFieldAsString(bitfield, bytesize, size)

def PrintBitFieldString(bitfield, bytesize, size, title):
    return _cmsdk3.PrintBitFieldString(bitfield, bytesize, size, title)

def PrintProgramTrace(startLine=0, endLine=0):
    return _cmsdk3.PrintProgramTrace(startLine, endLine)

def GetProgramTrace():
    return _cmsdk3.GetProgramTrace()

def AtomicIncrement32(v):
    return _cmsdk3.AtomicIncrement32(v)

def AtomicIncrement64(v):
    return _cmsdk3.AtomicIncrement64(v)

def AtomicDecrement32(v):
    return _cmsdk3.AtomicDecrement32(v)

def AtomicDecrement64(v):
    return _cmsdk3.AtomicDecrement64(v)

def Sleep(ms):
    return _cmsdk3.Sleep(ms)

def GetCurrentThreadUniqueID(tid):
    return _cmsdk3.GetCurrentThreadUniqueID(tid)

def GetCurrentThreadOSID(tid):
    return _cmsdk3.GetCurrentThreadOSID(tid)

def GetThreadStatColAbility():
    return _cmsdk3.GetThreadStatColAbility()

def GetProcessCPUTicks(*args):
    return _cmsdk3.GetProcessCPUTicks(*args)

def GetProcAndOSCPUUsage(*args):
    return _cmsdk3.GetProcAndOSCPUUsage(*args)

def GetOSCPUUsage(percentUse):
    return _cmsdk3.GetOSCPUUsage(percentUse)

def ToOSPriority(pri):
    return _cmsdk3.ToOSPriority(pri)

def FromOSPriority(pri):
    return _cmsdk3.FromOSPriority(pri)

def GetDesktopSize(width, height):
    return _cmsdk3.GetDesktopSize(width, height)

def RenameConsoleWindow(name, prepend=False):
    return _cmsdk3.RenameConsoleWindow(name, prepend)

def MoveConsoleWindow(x=-1, y=-1, w=-1, h=-1):
    return _cmsdk3.MoveConsoleWindow(x, y, w, h)
PROC_ERROR = _cmsdk3.PROC_ERROR
PROC_TERMINATED = _cmsdk3.PROC_TERMINATED
PROC_NOTSTARTED = _cmsdk3.PROC_NOTSTARTED
PROC_RUNNING = _cmsdk3.PROC_RUNNING
PROC_TIMEOUT = _cmsdk3.PROC_TIMEOUT
NUM_PIPES = _cmsdk3.NUM_PIPES
PARENT_WRITE_PIPE = _cmsdk3.PARENT_WRITE_PIPE
PARENT_READ_PIPE = _cmsdk3.PARENT_READ_PIPE
READ_FD = _cmsdk3.READ_FD
WRITE_FD = _cmsdk3.WRITE_FD
PROCBUFSIZE = _cmsdk3.PROCBUFSIZE

def RunOSCommand(cmdline, initdir, timeout, stdoutString, stderrString):
    return _cmsdk3.RunOSCommand(cmdline, initdir, timeout, stdoutString, stderrString)

def NewProcess(cmdline, initdir=None, title=None, x=-1, y=-1, w=-1, h=-1):
    return _cmsdk3.NewProcess(cmdline, initdir, title, x, y, w, h)

def GetProcessStatus(proc, returncode):
    return _cmsdk3.GetProcessStatus(proc, returncode)

def EndProcess(proc):
    return _cmsdk3.EndProcess(proc)

def NewProcessEx(cmdline, initdir, title, env, captureOutput, ignoreOutput, newProcessGroup):
    return _cmsdk3.NewProcessEx(cmdline, initdir, title, env, captureOutput, ignoreOutput, newProcessGroup)

def ReadProcessOutput(proc, out, err):
    return _cmsdk3.ReadProcessOutput(proc, out, err)

def SendProcessBreak(proc, sig):
    return _cmsdk3.SendProcessBreak(proc, sig)

def WaitForProcess(proc, timeout, returncode):
    return _cmsdk3.WaitForProcess(proc, timeout, returncode)

def GetLocalProcessID():
    return _cmsdk3.GetLocalProcessID()
class CommandLineInfo(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    CommandLineInfoSingleton = property(_cmsdk3.CommandLineInfo_CommandLineInfoSingleton_get, _cmsdk3.CommandLineInfo_CommandLineInfoSingleton_set)

    def __init__(self):
        _cmsdk3.CommandLineInfo_swiginit(self, _cmsdk3.new_CommandLineInfo())
    CommandLineString = property(_cmsdk3.CommandLineInfo_CommandLineString_get, _cmsdk3.CommandLineInfo_CommandLineString_set)
    CommandLineExec = property(_cmsdk3.CommandLineInfo_CommandLineExec_get, _cmsdk3.CommandLineInfo_CommandLineExec_set)
    CommandLineExecOnly = property(_cmsdk3.CommandLineInfo_CommandLineExecOnly_get, _cmsdk3.CommandLineInfo_CommandLineExecOnly_set)
    CommandLineExecPath = property(_cmsdk3.CommandLineInfo_CommandLineExecPath_get, _cmsdk3.CommandLineInfo_CommandLineExecPath_set)
    CommandLineItems = property(_cmsdk3.CommandLineInfo_CommandLineItems_get, _cmsdk3.CommandLineInfo_CommandLineItems_set)
    CommandLineArgs = property(_cmsdk3.CommandLineInfo_CommandLineArgs_get, _cmsdk3.CommandLineInfo_CommandLineArgs_set)
    __swig_destroy__ = _cmsdk3.delete_CommandLineInfo

# Register CommandLineInfo in _cmsdk3:
_cmsdk3.CommandLineInfo_swigregister(CommandLineInfo)

def SetCommandLine(argc, argv):
    return _cmsdk3.SetCommandLine(argc, argv)

def GetCommandLine():
    return _cmsdk3.GetCommandLine()

def GetCommandLinePath():
    return _cmsdk3.GetCommandLinePath()

def GetCommandLineExecutable():
    return _cmsdk3.GetCommandLineExecutable()

def GetCommandLineExecutableOnly():
    return _cmsdk3.GetCommandLineExecutableOnly()

def GetCommandLineArgCount():
    return _cmsdk3.GetCommandLineArgCount()

def GetCommandLineArg(*args):
    return _cmsdk3.GetCommandLineArg(*args)

def HasCommandLineArg(key, value):
    return _cmsdk3.HasCommandLineArg(key, value)
class Library(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def patchLibraryFilename(filename, path=None):
        return _cmsdk3.Library_patchLibraryFilename(filename, path)

    def __init__(self):
        _cmsdk3.Library_swiginit(self, _cmsdk3.new_Library())
    __swig_destroy__ = _cmsdk3.delete_Library

    def load(self, filename):
        return _cmsdk3.Library_load(self, filename)

    def getFunction(self, funcName):
        return _cmsdk3.Library_getFunction(self, funcName)

# Register Library in _cmsdk3:
_cmsdk3.Library_swigregister(Library)

def OpenLibrary(libName):
    return _cmsdk3.OpenLibrary(libName)

def GetComputerName():
    return _cmsdk3.GetComputerName()

def GetProcessMemoryUsage():
    return _cmsdk3.GetProcessMemoryUsage()

def GetPeakProcessMemoryUsage():
    return _cmsdk3.GetPeakProcessMemoryUsage()

def GetCPUCount():
    return _cmsdk3.GetCPUCount()

def GetCPUArchitecture():
    return _cmsdk3.GetCPUArchitecture()

def GetCPUSpeed():
    return _cmsdk3.GetCPUSpeed()

def GetSystemMemorySize():
    return _cmsdk3.GetSystemMemorySize()

def GetSystemMemoryUsage(totalRAM, freeRAM):
    return _cmsdk3.GetSystemMemoryUsage(totalRAM, freeRAM)

def GetSystemArchitecture():
    return _cmsdk3.GetSystemArchitecture()

def GetSystemOSName():
    return _cmsdk3.GetSystemOSName()

def GetSystemOSVersion(major, minor, build, text, textSize):
    return _cmsdk3.GetSystemOSVersion(major, minor, build, text, textSize)

def GetSocketError(wsaError, errorString, errorStringMaxSize, isRecoverable):
    return _cmsdk3.GetSocketError(wsaError, errorString, errorStringMaxSize, isRecoverable)

def GetLastOSErrorNumber():
    return _cmsdk3.GetLastOSErrorNumber()

def GetLastOSErrorMessage():
    return _cmsdk3.GetLastOSErrorMessage()

def WaitForSocketReadability(s, timeout):
    return _cmsdk3.WaitForSocketReadability(s, timeout)

def WaitForSocketWriteability(s, timeout):
    return _cmsdk3.WaitForSocketWriteability(s, timeout)

def SetSocketNonBlockingMode(s):
    return _cmsdk3.SetSocketNonBlockingMode(s)

def SetSocketBlockingMode(s):
    return _cmsdk3.SetSocketBlockingMode(s)
class NetworkInterfaces(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    address = property(_cmsdk3.NetworkInterfaces_address_get, _cmsdk3.NetworkInterfaces_address_set)
    mac = property(_cmsdk3.NetworkInterfaces_mac_get, _cmsdk3.NetworkInterfaces_mac_set)
    name = property(_cmsdk3.NetworkInterfaces_name_get, _cmsdk3.NetworkInterfaces_name_set)
    friendlyName = property(_cmsdk3.NetworkInterfaces_friendlyName_get, _cmsdk3.NetworkInterfaces_friendlyName_set)

    def __init__(self):
        _cmsdk3.NetworkInterfaces_swiginit(self, _cmsdk3.new_NetworkInterfaces())
    __swig_destroy__ = _cmsdk3.delete_NetworkInterfaces

# Register NetworkInterfaces in _cmsdk3:
_cmsdk3.NetworkInterfaces_swigregister(NetworkInterfaces)

def LookupIPAddress(name, address):
    return _cmsdk3.LookupIPAddress(name, address)

def LookupHostname(address, name, maxSize):
    return _cmsdk3.LookupHostname(address, name, maxSize)

def GetLocalHostnameString():
    return _cmsdk3.GetLocalHostnameString()

def GetLocalHostname(name, maxSize):
    return _cmsdk3.GetLocalHostname(name, maxSize)

def IsLocalIPAddress(*args):
    return _cmsdk3.IsLocalIPAddress(*args)

def GetLocalIPAddress(address):
    return _cmsdk3.GetLocalIPAddress(address)

def GetLocalIPAddresses(count):
    return _cmsdk3.GetLocalIPAddresses(count)

def GetLocalMACAddress(address):
    return _cmsdk3.GetLocalMACAddress(address)

def GetLocalMACAddresses(count):
    return _cmsdk3.GetLocalMACAddresses(count)

def GetLocalInterfaces(count):
    return _cmsdk3.GetLocalInterfaces(count)

def GetNextAvailableLocalPort(lastPort, nextPort):
    return _cmsdk3.GetNextAvailableLocalPort(lastPort, nextPort)
LOCALHOSTIP = _cmsdk3.LOCALHOSTIP

def PrintBinary(p, size, asInt, title):
    return _cmsdk3.PrintBinary(p, size, asInt, title)

def stristr(str, substr, len=0):
    return _cmsdk3.stristr(str, substr, len)

def GetNextLineEnd(str, size, len, crSize):
    return _cmsdk3.GetNextLineEnd(str, size, len, crSize)

def TextReplaceCharsInPlace(str, size, find, replace):
    return _cmsdk3.TextReplaceCharsInPlace(str, size, find, replace)

def TextEndsWith(str, end, caseSensitive=True):
    return _cmsdk3.TextEndsWith(str, end, caseSensitive)

def TextStartsWith(str, start, caseSensitive=True):
    return _cmsdk3.TextStartsWith(str, start, caseSensitive)

def strcpyavail(dst, src, maxlen, copyAvailable):
    return _cmsdk3.strcpyavail(dst, src, maxlen, copyAvailable)

def laststrstr(str1, str2):
    return _cmsdk3.laststrstr(str1, str2)

def laststristr(str1, str2):
    return _cmsdk3.laststristr(str1, str2)

def StringSingleReplace(text, key, value, onlyFirst):
    return _cmsdk3.StringSingleReplace(text, key, value, onlyFirst)

def StringMultiReplace(text, map, onlyFirst):
    return _cmsdk3.StringMultiReplace(text, map, onlyFirst)

def StringScriptReplace(text, name, list):
    return _cmsdk3.StringScriptReplace(text, name, list)

def TextCapitalise(text):
    return _cmsdk3.TextCapitalise(text)

def TextUppercase(text):
    return _cmsdk3.TextUppercase(text)

def TextLowercase(text):
    return _cmsdk3.TextLowercase(text)

def TextIndent(text, indent):
    return _cmsdk3.TextIndent(text, indent)

def TextUnindent(text):
    return _cmsdk3.TextUnindent(text)

def TextTrimQuotes(text):
    return _cmsdk3.TextTrimQuotes(text)

def TextTrim(text):
    return _cmsdk3.TextTrim(text)

def TextMultiMapSplit(text, outersplit, innersplit):
    return _cmsdk3.TextMultiMapSplit(text, outersplit, innersplit)

def TextMapSplit(text, outersplit, innersplit):
    return _cmsdk3.TextMapSplit(text, outersplit, innersplit)

def TextJoin(*args):
    return _cmsdk3.TextJoin(*args)

def TextJoinJSON(map):
    return _cmsdk3.TextJoinJSON(map)

def TextJoinXML(map, innernodeName, outernodeName):
    return _cmsdk3.TextJoinXML(map, innernodeName, outernodeName)

def TextListSplit(text, split, keepEmpty=True, autoTrim=False):
    return _cmsdk3.TextListSplit(text, split, keepEmpty, autoTrim)

def TextListSplitLines(text, keepEmpty=True, autoTrim=False):
    return _cmsdk3.TextListSplitLines(text, keepEmpty, autoTrim)

def TextListBreakLines(*args):
    return _cmsdk3.TextListBreakLines(*args)

def TextVectorConcat(arg1, sep, allowEmpty=True):
    return _cmsdk3.TextVectorConcat(arg1, sep, allowEmpty)

def TextCommandlineSplit(cmdline):
    return _cmsdk3.TextCommandlineSplit(cmdline)

def SplitCommandline(cmdline, argc):
    return _cmsdk3.SplitCommandline(cmdline, argc)

def SplitCommandlineW(cmdline, argc):
    return _cmsdk3.SplitCommandlineW(cmdline, argc)

def DeleteCommandline(argv, argc):
    return _cmsdk3.DeleteCommandline(argv, argc)

def StringFormat(*args):
    return _cmsdk3.StringFormat(*args)

def StringFormatInto(*args):
    return _cmsdk3.StringFormatInto(*args)

def Hex2Char(str):
    return _cmsdk3.Hex2Char(str)

def Dec2Char(str):
    return _cmsdk3.Dec2Char(str)

def CRC32(addr, length, crc=0):
    return _cmsdk3.CRC32(addr, length, crc)

def CompareFloats(a, b):
    return _cmsdk3.CompareFloats(a, b)
class FileDetails(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    doesExist = property(_cmsdk3.FileDetails_doesExist_get, _cmsdk3.FileDetails_doesExist_set)
    isDirectory = property(_cmsdk3.FileDetails_isDirectory_get, _cmsdk3.FileDetails_isDirectory_set)
    isReadable = property(_cmsdk3.FileDetails_isReadable_get, _cmsdk3.FileDetails_isReadable_set)
    isWritable = property(_cmsdk3.FileDetails_isWritable_get, _cmsdk3.FileDetails_isWritable_set)
    isExecutable = property(_cmsdk3.FileDetails_isExecutable_get, _cmsdk3.FileDetails_isExecutable_set)
    size = property(_cmsdk3.FileDetails_size_get, _cmsdk3.FileDetails_size_set)
    lastAccessTime = property(_cmsdk3.FileDetails_lastAccessTime_get, _cmsdk3.FileDetails_lastAccessTime_set)
    lastModifyTime = property(_cmsdk3.FileDetails_lastModifyTime_get, _cmsdk3.FileDetails_lastModifyTime_set)
    creationTime = property(_cmsdk3.FileDetails_creationTime_get, _cmsdk3.FileDetails_creationTime_set)

    def __init__(self):
        _cmsdk3.FileDetails_swiginit(self, _cmsdk3.new_FileDetails())
    __swig_destroy__ = _cmsdk3.delete_FileDetails

# Register FileDetails in _cmsdk3:
_cmsdk3.FileDetails_swigregister(FileDetails)
NOSUCHFILE = _cmsdk3.NOSUCHFILE
STANDARDFILE = _cmsdk3.STANDARDFILE
STANDARDDIR = _cmsdk3.STANDARDDIR

def ReadAFileString(filename):
    return _cmsdk3.ReadAFileString(filename)

def ReadAFile(*args):
    return _cmsdk3.ReadAFile(*args)

def WriteAFile(*args):
    return _cmsdk3.WriteAFile(*args)

def AppendToAFile(*args):
    return _cmsdk3.AppendToAFile(*args)

def GetFileList(dirname, ext, count, fullpath, maxNameLen=256):
    return _cmsdk3.GetFileList(dirname, ext, count, fullpath, maxNameLen)

def GetFileDetails(filename):
    return _cmsdk3.GetFileDetails(filename)

def GetFilePath(filename):
    return _cmsdk3.GetFilePath(filename)

def GetFileBasename(filename):
    return _cmsdk3.GetFileBasename(filename)

def GetCurrentDir():
    return _cmsdk3.GetCurrentDir()

def DeleteAFile(*args):
    return _cmsdk3.DeleteAFile(*args)

def DeleteADir(dirname, force):
    return _cmsdk3.DeleteADir(dirname, force)

def CreateADir(dirname):
    return _cmsdk3.CreateADir(dirname)

def DoesADirExist(dirname):
    return _cmsdk3.DoesADirExist(dirname)

def DoesAFileExist(filename):
    return _cmsdk3.DoesAFileExist(filename)

def DeleteFilesInADir(dirname, force):
    return _cmsdk3.DeleteFilesInADir(dirname, force)

def ChangeAFileAttr(filename, read, write):
    return _cmsdk3.ChangeAFileAttr(filename, read, write)

def MoveAFile(*args):
    return _cmsdk3.MoveAFile(*args)

def CopyAFile(*args):
    return _cmsdk3.CopyAFile(*args)

def Int2Ascii(value, result, size, base):
    return _cmsdk3.Int2Ascii(value, result, size, base)

def Uint2Ascii(value, result, size, base):
    return _cmsdk3.Uint2Ascii(value, result, size, base)

def Ascii2UTF16LE(ascii, len, size):
    return _cmsdk3.Ascii2UTF16LE(ascii, len, size)

def IsTextNumeric(ascii, start=0, end=0):
    return _cmsdk3.IsTextNumeric(ascii, start, end)

def Ascii2Int64(ascii, start=0, end=0):
    return _cmsdk3.Ascii2Int64(ascii, start, end)

def Ascii2Uint64(ascii, start=0, end=0):
    return _cmsdk3.Ascii2Uint64(ascii, start, end)

def AsciiHex2Uint64(ascii, start=0, end=0):
    return _cmsdk3.AsciiHex2Uint64(ascii, start, end)

def Ascii2Int32(ascii, start=0, end=0):
    return _cmsdk3.Ascii2Int32(ascii, start, end)

def Ascii2Uint32(ascii, start=0, end=0):
    return _cmsdk3.Ascii2Uint32(ascii, start, end)

def AsciiHex2Uint32(ascii, start=0, end=0):
    return _cmsdk3.AsciiHex2Uint32(ascii, start, end)

def Ascii2Float64(ascii, start=0, end=0):
    return _cmsdk3.Ascii2Float64(ascii, start, end)

def TextSubstringCopy(ascii, start, end):
    return _cmsdk3.TextSubstringCopy(ascii, start, end)

def DecodeJSON(str):
    return _cmsdk3.DecodeJSON(str)

def EncodeJSON(str):
    return _cmsdk3.EncodeJSON(str)

def SeedRandomValues(seedvalue=0):
    return _cmsdk3.SeedRandomValues(seedvalue)

def RandomValue(*args):
    return _cmsdk3.RandomValue(*args)

def RandomInt(_from=0, to=100):
    return _cmsdk3.RandomInt(_from, to)

def BytifySize(val):
    return _cmsdk3.BytifySize(val)

def BytifySizes(val1, val2):
    return _cmsdk3.BytifySizes(val1, val2)

def BytifyRate(val):
    return _cmsdk3.BytifyRate(val)

def BytifyRates(val1, val2):
    return _cmsdk3.BytifyRates(val1, val2)
USEC_YEAR_0_TO_1970 = _cmsdk3.USEC_YEAR_0_TO_1970
SECS_PER_YEAR = _cmsdk3.SECS_PER_YEAR
SECS_PER_MONTH = _cmsdk3.SECS_PER_MONTH
SECS_PER_WEEK = _cmsdk3.SECS_PER_WEEK
SECS_PER_DAY = _cmsdk3.SECS_PER_DAY
SECS_PER_HOUR = _cmsdk3.SECS_PER_HOUR
SECS_PER_MIN = _cmsdk3.SECS_PER_MIN
TIME_YEAR_1970 = _cmsdk3.TIME_YEAR_1970
SECOND_MS = _cmsdk3.SECOND_MS
MINUTE_MS = _cmsdk3.MINUTE_MS
HOUR_MS = _cmsdk3.HOUR_MS
DAY_MS = _cmsdk3.DAY_MS
WEEK_MS = _cmsdk3.WEEK_MS
class PsyDateAndTime(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    usec = property(_cmsdk3.PsyDateAndTime_usec_get, _cmsdk3.PsyDateAndTime_usec_set)
    msec = property(_cmsdk3.PsyDateAndTime_msec_get, _cmsdk3.PsyDateAndTime_msec_set)
    sec = property(_cmsdk3.PsyDateAndTime_sec_get, _cmsdk3.PsyDateAndTime_sec_set)
    min = property(_cmsdk3.PsyDateAndTime_min_get, _cmsdk3.PsyDateAndTime_min_set)
    hour = property(_cmsdk3.PsyDateAndTime_hour_get, _cmsdk3.PsyDateAndTime_hour_set)
    day = property(_cmsdk3.PsyDateAndTime_day_get, _cmsdk3.PsyDateAndTime_day_set)
    mon = property(_cmsdk3.PsyDateAndTime_mon_get, _cmsdk3.PsyDateAndTime_mon_set)
    year = property(_cmsdk3.PsyDateAndTime_year_get, _cmsdk3.PsyDateAndTime_year_set)
    wday = property(_cmsdk3.PsyDateAndTime_wday_get, _cmsdk3.PsyDateAndTime_wday_set)
    yday = property(_cmsdk3.PsyDateAndTime_yday_get, _cmsdk3.PsyDateAndTime_yday_set)
    negative = property(_cmsdk3.PsyDateAndTime_negative_get, _cmsdk3.PsyDateAndTime_negative_set)
    dst = property(_cmsdk3.PsyDateAndTime_dst_get, _cmsdk3.PsyDateAndTime_dst_set)
    dstsec = property(_cmsdk3.PsyDateAndTime_dstsec_get, _cmsdk3.PsyDateAndTime_dstsec_set)
    tzsec = property(_cmsdk3.PsyDateAndTime_tzsec_get, _cmsdk3.PsyDateAndTime_tzsec_set)
    zonename = property(_cmsdk3.PsyDateAndTime_zonename_get, _cmsdk3.PsyDateAndTime_zonename_set)

    def __init__(self):
        _cmsdk3.PsyDateAndTime_swiginit(self, _cmsdk3.new_PsyDateAndTime())
    __swig_destroy__ = _cmsdk3.delete_PsyDateAndTime

# Register PsyDateAndTime in _cmsdk3:
_cmsdk3.PsyDateAndTime_swigregister(PsyDateAndTime)

def GetTimeNow():
    return _cmsdk3.GetTimeNow()

def SyncToHardwareClock():
    return _cmsdk3.SyncToHardwareClock()

def SetCurrentNetSyncDif(netTimeDif):
    return _cmsdk3.SetCurrentNetSyncDif(netTimeDif)

def SetCurrentTimeSyncData(tmc, netTimeAdjust):
    return _cmsdk3.SetCurrentTimeSyncData(tmc, netTimeAdjust)

def GetCurrentTimeSyncData(tmc, netTimeAdjust):
    return _cmsdk3.GetCurrentTimeSyncData(tmc, netTimeAdjust)
TMC_MASTER = _cmsdk3.TMC_MASTER
TMC_SLAVE = _cmsdk3.TMC_SLAVE
TMC_SYNC_INTERVAL = _cmsdk3.TMC_SYNC_INTERVAL

def EstNextTMCWrap():
    return _cmsdk3.EstNextTMCWrap()

def GetTimeAge(t):
    return _cmsdk3.GetTimeAge(t)

def GetTimeAgeMS(t):
    return _cmsdk3.GetTimeAgeMS(t)

def GetTimeFromString(str):
    return _cmsdk3.GetTimeFromString(str)

def GetHTTPTime(time, buffer, size):
    return _cmsdk3.GetHTTPTime(time, buffer, size)

def GetTimeFromPsyDateAndTime(tad):
    return _cmsdk3.GetTimeFromPsyDateAndTime(tad)

def GetTimeOffsetGMT():
    return _cmsdk3.GetTimeOffsetGMT()

def GetDateAndTime(t, local=True):
    return _cmsdk3.GetDateAndTime(t, local)

def GetDateAndTimeUTC(t):
    return _cmsdk3.GetDateAndTimeUTC(t)

def GetTimeDifference(*args):
    return _cmsdk3.GetTimeDifference(*args)

def PrintTime(t, local=True, us=True, ms=True):
    return _cmsdk3.PrintTime(t, local, us, ms)

def PrintTimeOnly(t, local=True, us=True, ms=True):
    return _cmsdk3.PrintTimeOnly(t, local, us, ms)

def PrintTimeDif(t, us=True, ms=True):
    return _cmsdk3.PrintTimeDif(t, us, ms)

def PrintDate(t, local=True):
    return _cmsdk3.PrintDate(t, local)

def PrintDateSortable(t, local=True):
    return _cmsdk3.PrintDateSortable(t, local)

def PrintDateSortableDelimiter(t, _del, local=True):
    return _cmsdk3.PrintDateSortableDelimiter(t, _del, local)

def PrintTimeSortable(t, local):
    return _cmsdk3.PrintTimeSortable(t, local)

def PrintTimeSortableMillisec(t, local):
    return _cmsdk3.PrintTimeSortableMillisec(t, local)

def PrintTimeSortableMicrosec(t, local):
    return _cmsdk3.PrintTimeSortableMicrosec(t, local)

def PrintTimeNowString(local=True, us=True, ms=True):
    return _cmsdk3.PrintTimeNowString(local, us, ms)

def PrintTimeString(t, local=True, us=True, ms=True):
    return _cmsdk3.PrintTimeString(t, local, us, ms)

def PrintTimeOnlyString(t, local=True, us=True, ms=True):
    return _cmsdk3.PrintTimeOnlyString(t, local, us, ms)

def PrintTimeDifString(t, us=True, ms=True):
    return _cmsdk3.PrintTimeDifString(t, us, ms)

def PrintDateString(t, local=True):
    return _cmsdk3.PrintDateString(t, local)

def PrintDateStringSortable(t, local=True):
    return _cmsdk3.PrintDateStringSortable(t, local)

def PrintDateStringSortableDelimiter(t, _del, local=True):
    return _cmsdk3.PrintDateStringSortableDelimiter(t, _del, local)

def PrintTimeSortableString(t, local=True):
    return _cmsdk3.PrintTimeSortableString(t, local)

def PrintTimeSortableMillisecString(t, local=True):
    return _cmsdk3.PrintTimeSortableMillisecString(t, local)

def PrintTimeSortableMicrosecString(t, local=True):
    return _cmsdk3.PrintTimeSortableMicrosecString(t, local)

def FTime2PsyTime(t):
    return _cmsdk3.FTime2PsyTime(t)

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

    @staticmethod
    def UnitTest():
        return _cmsdk3.Stats_UnitTest()

    def __init__(self, maxCount=10000):
        _cmsdk3.Stats_swiginit(self, _cmsdk3.new_Stats(maxCount))
    __swig_destroy__ = _cmsdk3.delete_Stats

    def clear(self):
        return _cmsdk3.Stats_clear(self)

    def add(self, val):
        return _cmsdk3.Stats_add(self, val)

    def getAverage(self):
        return _cmsdk3.Stats_getAverage(self)

    def getSum(self):
        return _cmsdk3.Stats_getSum(self)

    def getCount(self):
        return _cmsdk3.Stats_getCount(self)

    def getVariance(self):
        return _cmsdk3.Stats_getVariance(self)

    def getStdDev(self):
        return _cmsdk3.Stats_getStdDev(self)

    def getMedian(self):
        return _cmsdk3.Stats_getMedian(self)

# Register Stats in _cmsdk3:
_cmsdk3.Stats_swigregister(Stats)
class StatEntry(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    count = property(_cmsdk3.StatEntry_count_get, _cmsdk3.StatEntry_count_set)
    value = property(_cmsdk3.StatEntry_value_get, _cmsdk3.StatEntry_value_set)

    def __init__(self):
        _cmsdk3.StatEntry_swiginit(self, _cmsdk3.new_StatEntry())
    __swig_destroy__ = _cmsdk3.delete_StatEntry

# Register StatEntry in _cmsdk3:
_cmsdk3.StatEntry_swigregister(StatEntry)
class MovingAverage(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def UnitTest():
        return _cmsdk3.MovingAverage_UnitTest()

    def __init__(self, binTimeMS=100, binCount=600):
        _cmsdk3.MovingAverage_swiginit(self, _cmsdk3.new_MovingAverage(binTimeMS, binCount))
    __swig_destroy__ = _cmsdk3.delete_MovingAverage

    def add(self, *args):
        return _cmsdk3.MovingAverage_add(self, *args)

    def getThroughput(self, *args):
        return _cmsdk3.MovingAverage_getThroughput(self, *args)

    def getThroughputMulti(self, *args):
        return _cmsdk3.MovingAverage_getThroughputMulti(self, *args)

    def getAverage(self, *args):
        return _cmsdk3.MovingAverage_getAverage(self, *args)

    def getAverageMulti(self, *args):
        return _cmsdk3.MovingAverage_getAverageMulti(self, *args)

    def getSum(self, *args):
        return _cmsdk3.MovingAverage_getSum(self, *args)

    def getSumMulti(self, *args):
        return _cmsdk3.MovingAverage_getSumMulti(self, *args)

    def getTotal(self, val, count):
        return _cmsdk3.MovingAverage_getTotal(self, val, count)

    def getPerfXML(self, binMS=1000, binNum=60):
        return _cmsdk3.MovingAverage_getPerfXML(self, binMS, binNum)

    def getPerfJSON(self, binMS=1000, binNum=60):
        return _cmsdk3.MovingAverage_getPerfJSON(self, binMS, binNum)

# Register MovingAverage in _cmsdk3:
_cmsdk3.MovingAverage_swigregister(MovingAverage)

def base64_encode(*args):
    return _cmsdk3.base64_encode(*args)

def base64_decode(*args):
    return _cmsdk3.base64_decode(*args)

def Base64_UnitTest():
    return _cmsdk3.Base64_UnitTest()

def DecodeHTML(str):
    return _cmsdk3.DecodeHTML(str)

def EncodeHTML(str):
    return _cmsdk3.EncodeHTML(str)

def HTML2Char(str):
    return _cmsdk3.HTML2Char(str)

def GetMimeType(*args):
    return _cmsdk3.GetMimeType(*args)

def IsMimeBinary(type):
    return _cmsdk3.IsMimeBinary(type)

def GetUsernameFromURL(url):
    return _cmsdk3.GetUsernameFromURL(url)

def GetPasswordFromURL(url):
    return _cmsdk3.GetPasswordFromURL(url)

def GetAuthenticationFromURL(url):
    return _cmsdk3.GetAuthenticationFromURL(url)

def GetHostFromURL(url):
    return _cmsdk3.GetHostFromURL(url)

def GetPortFromURL(url):
    return _cmsdk3.GetPortFromURL(url)

def GetProtocolFromURL(url):
    return _cmsdk3.GetProtocolFromURL(url)

def GetURIFromURL(url):
    return _cmsdk3.GetURIFromURL(url)

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

    def __init__(self, *args):
        _cmsdk3.Color_swiginit(self, _cmsdk3.new_Color(*args))
    __swig_destroy__ = _cmsdk3.delete_Color

    def mixOn(self, color, weight):
        return _cmsdk3.Color_mixOn(self, color, weight)

    def getReverseColor(self):
        return _cmsdk3.Color_getReverseColor(self)

    def getGreyValue(self):
        return _cmsdk3.Color_getGreyValue(self)
    r = property(_cmsdk3.Color_r_get, _cmsdk3.Color_r_set)
    g = property(_cmsdk3.Color_g_get, _cmsdk3.Color_g_set)
    b = property(_cmsdk3.Color_b_get, _cmsdk3.Color_b_set)
    size = property(_cmsdk3.Color_size_get, _cmsdk3.Color_size_set)

    def distance(self, otherColor):
        return _cmsdk3.Color_distance(self, otherColor)

    @staticmethod
    def createColorsMaxDifference(count, mix=False):
        return _cmsdk3.Color_createColorsMaxDifference(count, mix)

    def toRGBString(self):
        return _cmsdk3.Color_toRGBString(self)

# Register Color in _cmsdk3:
_cmsdk3.Color_swigregister(Color)
ColorMap = cvar.ColorMap

class Size(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _cmsdk3.Size_swiginit(self, _cmsdk3.new_Size(*args))
    __swig_destroy__ = _cmsdk3.delete_Size
    w = property(_cmsdk3.Size_w_get, _cmsdk3.Size_w_set)
    h = property(_cmsdk3.Size_h_get, _cmsdk3.Size_h_set)
    d = property(_cmsdk3.Size_d_get, _cmsdk3.Size_d_set)

    def equals(self, size):
        return _cmsdk3.Size_equals(self, size)

    def __eq__(self, p):
        return _cmsdk3.Size___eq__(self, p)

    def __mul__(self, v):
        return _cmsdk3.Size___mul__(self, v)

    def getHeight(self):
        return _cmsdk3.Size_getHeight(self)

    def getWidth(self):
        return _cmsdk3.Size_getWidth(self)

    def getDepth(self):
        return _cmsdk3.Size_getDepth(self)

    def setHeight(self, height):
        return _cmsdk3.Size_setHeight(self, height)

    def setWidth(self, width):
        return _cmsdk3.Size_setWidth(self, width)

    def setDepth(self, depth):
        return _cmsdk3.Size_setDepth(self, depth)

    def isNonZero(self):
        return _cmsdk3.Size_isNonZero(self)

    def getArea(self):
        return _cmsdk3.Size_getArea(self)

    def getDiagonalLenth(self):
        return _cmsdk3.Size_getDiagonalLenth(self)

    def _print(self):
        return _cmsdk3.Size__print(self)

# Register Size in _cmsdk3:
_cmsdk3.Size_swigregister(Size)
class Point(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _cmsdk3.Point_swiginit(self, _cmsdk3.new_Point(*args))
    __swig_destroy__ = _cmsdk3.delete_Point
    x = property(_cmsdk3.Point_x_get, _cmsdk3.Point_x_set)
    y = property(_cmsdk3.Point_y_get, _cmsdk3.Point_y_set)
    z = property(_cmsdk3.Point_z_get, _cmsdk3.Point_z_set)
    size = property(_cmsdk3.Point_size_get, _cmsdk3.Point_size_set)

    def __eq__(self, *args):
        return _cmsdk3.Point___eq__(self, *args)

    def __sub__(self, *args):
        return _cmsdk3.Point___sub__(self, *args)

    def __add__(self, *args):
        return _cmsdk3.Point___add__(self, *args)

    def __mul__(self, *args):
        return _cmsdk3.Point___mul__(self, *args)

    def getX(self):
        return _cmsdk3.Point_getX(self)

    def getY(self):
        return _cmsdk3.Point_getY(self)

    def getZ(self):
        return _cmsdk3.Point_getZ(self)

    def getSize(self):
        return _cmsdk3.Point_getSize(self)

    def set(self, x, y, z=0):
        return _cmsdk3.Point_set(self, x, y, z)

    def setX(self, n):
        return _cmsdk3.Point_setX(self, n)

    def setY(self, n):
        return _cmsdk3.Point_setY(self, n)

    def setZ(self, n):
        return _cmsdk3.Point_setZ(self, n)

    def setSize(self, s):
        return _cmsdk3.Point_setSize(self, s)

    def getDistanceTo(self, *args):
        return _cmsdk3.Point_getDistanceTo(self, *args)

    def _print(self):
        return _cmsdk3.Point__print(self)

# Register Point in _cmsdk3:
_cmsdk3.Point_swigregister(Point)
class PointFloat(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _cmsdk3.PointFloat_swiginit(self, _cmsdk3.new_PointFloat(*args))
    __swig_destroy__ = _cmsdk3.delete_PointFloat
    x = property(_cmsdk3.PointFloat_x_get, _cmsdk3.PointFloat_x_set)
    y = property(_cmsdk3.PointFloat_y_get, _cmsdk3.PointFloat_y_set)
    z = property(_cmsdk3.PointFloat_z_get, _cmsdk3.PointFloat_z_set)
    size = property(_cmsdk3.PointFloat_size_get, _cmsdk3.PointFloat_size_set)

    def __eq__(self, *args):
        return _cmsdk3.PointFloat___eq__(self, *args)

    def __sub__(self, *args):
        return _cmsdk3.PointFloat___sub__(self, *args)

    def __add__(self, *args):
        return _cmsdk3.PointFloat___add__(self, *args)

    def __mul__(self, *args):
        return _cmsdk3.PointFloat___mul__(self, *args)

    def getX(self):
        return _cmsdk3.PointFloat_getX(self)

    def getY(self):
        return _cmsdk3.PointFloat_getY(self)

    def getZ(self):
        return _cmsdk3.PointFloat_getZ(self)

    def getSize(self):
        return _cmsdk3.PointFloat_getSize(self)

    def set(self, x, y, z=0):
        return _cmsdk3.PointFloat_set(self, x, y, z)

    def setX(self, v):
        return _cmsdk3.PointFloat_setX(self, v)

    def setY(self, v):
        return _cmsdk3.PointFloat_setY(self, v)

    def setZ(self, v):
        return _cmsdk3.PointFloat_setZ(self, v)

    def setSize(self, s):
        return _cmsdk3.PointFloat_setSize(self, s)

    def getDistanceTo(self, *args):
        return _cmsdk3.PointFloat_getDistanceTo(self, *args)

    def _print(self):
        return _cmsdk3.PointFloat__print(self)

# Register PointFloat in _cmsdk3:
_cmsdk3.PointFloat_swigregister(PointFloat)
class Line(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _cmsdk3.Line_swiginit(self, _cmsdk3.new_Line(*args))
    __swig_destroy__ = _cmsdk3.delete_Line
    startPoint = property(_cmsdk3.Line_startPoint_get, _cmsdk3.Line_startPoint_set)
    endPoint = property(_cmsdk3.Line_endPoint_get, _cmsdk3.Line_endPoint_set)
    lineWidth = property(_cmsdk3.Line_lineWidth_get, _cmsdk3.Line_lineWidth_set)

    def getStartPoint(self):
        return _cmsdk3.Line_getStartPoint(self)

    def getEndPoint(self):
        return _cmsdk3.Line_getEndPoint(self)

    def getLineWidth(self):
        return _cmsdk3.Line_getLineWidth(self)

    def setStartPoint(self, point):
        return _cmsdk3.Line_setStartPoint(self, point)

    def setEndPoint(self, point):
        return _cmsdk3.Line_setEndPoint(self, point)

    def setLineWidth(self, width):
        return _cmsdk3.Line_setLineWidth(self, width)

    def _print(self):
        return _cmsdk3.Line__print(self)

# Register Line in _cmsdk3:
_cmsdk3.Line_swigregister(Line)
class PolyLine(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _cmsdk3.PolyLine_swiginit(self, _cmsdk3.new_PolyLine())
    __swig_destroy__ = _cmsdk3.delete_PolyLine
    lines = property(_cmsdk3.PolyLine_lines_get, _cmsdk3.PolyLine_lines_set)

    def getLineCount(self):
        return _cmsdk3.PolyLine_getLineCount(self)

    def getLine(self, pos):
        return _cmsdk3.PolyLine_getLine(self, pos)

    def addLine(self, line):
        return _cmsdk3.PolyLine_addLine(self, line)

    def replaceLine(self, pos, newline):
        return _cmsdk3.PolyLine_replaceLine(self, pos, newline)

    def removeLine(self, pos):
        return _cmsdk3.PolyLine_removeLine(self, pos)

    def _print(self):
        return _cmsdk3.PolyLine__print(self)

# Register PolyLine in _cmsdk3:
_cmsdk3.PolyLine_swigregister(PolyLine)
class Box(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _cmsdk3.Box_swiginit(self, _cmsdk3.new_Box(*args))
    __swig_destroy__ = _cmsdk3.delete_Box
    upperLeft = property(_cmsdk3.Box_upperLeft_get, _cmsdk3.Box_upperLeft_set)
    size = property(_cmsdk3.Box_size_get, _cmsdk3.Box_size_set)
    lineWidth = property(_cmsdk3.Box_lineWidth_get, _cmsdk3.Box_lineWidth_set)
    name = property(_cmsdk3.Box_name_get, _cmsdk3.Box_name_set)
    comment = property(_cmsdk3.Box_comment_get, _cmsdk3.Box_comment_set)
    orientation = property(_cmsdk3.Box_orientation_get, _cmsdk3.Box_orientation_set)

    def getUpperY(self):
        return _cmsdk3.Box_getUpperY(self)

    def getLowerY(self):
        return _cmsdk3.Box_getLowerY(self)

    def getLeftX(self):
        return _cmsdk3.Box_getLeftX(self)

    def getRightX(self):
        return _cmsdk3.Box_getRightX(self)

    def getArea(self):
        return _cmsdk3.Box_getArea(self)

    def getCMX(self):
        return _cmsdk3.Box_getCMX(self)

    def getCMY(self):
        return _cmsdk3.Box_getCMY(self)

    def getCM(self):
        return _cmsdk3.Box_getCM(self)

    def getUpperLeft(self):
        return _cmsdk3.Box_getUpperLeft(self)

    def getUpperRight(self):
        return _cmsdk3.Box_getUpperRight(self)

    def getLowerLeft(self):
        return _cmsdk3.Box_getLowerLeft(self)

    def getLowerRight(self):
        return _cmsdk3.Box_getLowerRight(self)

    def getLineWidth(self):
        return _cmsdk3.Box_getLineWidth(self)

    def getSize(self):
        return _cmsdk3.Box_getSize(self)

    def getWidth(self):
        return _cmsdk3.Box_getWidth(self)

    def getHeight(self):
        return _cmsdk3.Box_getHeight(self)

    def __sub__(self, *args):
        return _cmsdk3.Box___sub__(self, *args)

    def __add__(self, *args):
        return _cmsdk3.Box___add__(self, *args)

    def move(self, dx, dy):
        return _cmsdk3.Box_move(self, dx, dy)

    def moveTo(self, x, y):
        return _cmsdk3.Box_moveTo(self, x, y)

    def set(self, x, y, w, h, linewidth=0):
        return _cmsdk3.Box_set(self, x, y, w, h, linewidth)

    def setUpperLeft(self, point):
        return _cmsdk3.Box_setUpperLeft(self, point)

    def setSize(self, boxsize):
        return _cmsdk3.Box_setSize(self, boxsize)

    def setLineWidth(self, width):
        return _cmsdk3.Box_setLineWidth(self, width)

    def grow(self, dw, dh):
        return _cmsdk3.Box_grow(self, dw, dh)

    def isPointWithin(self, *args):
        return _cmsdk3.Box_isPointWithin(self, *args)

    def getCentreMass(self):
        return _cmsdk3.Box_getCentreMass(self)

    def hasZeroSize(self):
        return _cmsdk3.Box_hasZeroSize(self)

    def equals(self, *args):
        return _cmsdk3.Box_equals(self, *args)

    def getBoundingBox(self, otherbox):
        return _cmsdk3.Box_getBoundingBox(self, otherbox)

    def growToBoundingBox(self, otherbox):
        return _cmsdk3.Box_growToBoundingBox(self, otherbox)

    def growToIncludePoint(self, point, padX=0, padY=0):
        return _cmsdk3.Box_growToIncludePoint(self, point, padX, padY)

    def getOverlapBox(self, otherbox):
        return _cmsdk3.Box_getOverlapBox(self, otherbox)

    def percentOverlap(self, otherbox):
        return _cmsdk3.Box_percentOverlap(self, otherbox)

    def getDoubleSizeSameCenter(self):
        return _cmsdk3.Box_getDoubleSizeSameCenter(self)

    def constrainTo(self, *args):
        return _cmsdk3.Box_constrainTo(self, *args)

    def getConstrainedCopy(self, *args):
        return _cmsdk3.Box_getConstrainedCopy(self, *args)

    def _print(self):
        return _cmsdk3.Box__print(self)

# Register Box in _cmsdk3:
_cmsdk3.Box_swigregister(Box)
class Vector2D(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _cmsdk3.Vector2D_swiginit(self, _cmsdk3.new_Vector2D(*args))
    __swig_destroy__ = _cmsdk3.delete_Vector2D
    x = property(_cmsdk3.Vector2D_x_get, _cmsdk3.Vector2D_x_set)
    y = property(_cmsdk3.Vector2D_y_get, _cmsdk3.Vector2D_y_set)

    def __eq__(self, v):
        return _cmsdk3.Vector2D___eq__(self, v)

    def __sub__(self, *args):
        return _cmsdk3.Vector2D___sub__(self, *args)

    def __add__(self, *args):
        return _cmsdk3.Vector2D___add__(self, *args)

    def __mul__(self, *args):
        return _cmsdk3.Vector2D___mul__(self, *args)

    def __isub__(self, *args):
        return _cmsdk3.Vector2D___isub__(self, *args)

    def __iadd__(self, *args):
        return _cmsdk3.Vector2D___iadd__(self, *args)

    def __imul__(self, a):
        return _cmsdk3.Vector2D___imul__(self, a)

    def getX(self):
        return _cmsdk3.Vector2D_getX(self)

    def getY(self):
        return _cmsdk3.Vector2D_getY(self)

    def set(self, *args):
        return _cmsdk3.Vector2D_set(self, *args)

    def setX(self, v):
        return _cmsdk3.Vector2D_setX(self, v)

    def setY(self, v):
        return _cmsdk3.Vector2D_setY(self, v)

    def setLength(self, l):
        return _cmsdk3.Vector2D_setLength(self, l)

    def makeUnitVector(self):
        return _cmsdk3.Vector2D_makeUnitVector(self)

    def length(self):
        return _cmsdk3.Vector2D_length(self)

    def det(self, v):
        return _cmsdk3.Vector2D_det(self, v)

    def isOrthogonalWith(self, v):
        return _cmsdk3.Vector2D_isOrthogonalWith(self, v)

    def isParallelWith(self, v):
        return _cmsdk3.Vector2D_isParallelWith(self, v)

    def getProjectionOn(self, v):
        return _cmsdk3.Vector2D_getProjectionOn(self, v)

    def getUnitVector(self):
        return _cmsdk3.Vector2D_getUnitVector(self)

    def getOrthogonalVector(self):
        return _cmsdk3.Vector2D_getOrthogonalVector(self)

    def getAngle(self, v):
        return _cmsdk3.Vector2D_getAngle(self, v)

    def getArea(self, v):
        return _cmsdk3.Vector2D_getArea(self, v)

    def rotate(self, angle):
        return _cmsdk3.Vector2D_rotate(self, angle)

    def rotateIt(self, angle):
        return _cmsdk3.Vector2D_rotateIt(self, angle)

    def _print(self):
        return _cmsdk3.Vector2D__print(self)

# Register Vector2D in _cmsdk3:
_cmsdk3.Vector2D_swigregister(Vector2D)
class Vector3D(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _cmsdk3.Vector3D_swiginit(self, _cmsdk3.new_Vector3D(*args))
    __swig_destroy__ = _cmsdk3.delete_Vector3D
    x = property(_cmsdk3.Vector3D_x_get, _cmsdk3.Vector3D_x_set)
    y = property(_cmsdk3.Vector3D_y_get, _cmsdk3.Vector3D_y_set)
    z = property(_cmsdk3.Vector3D_z_get, _cmsdk3.Vector3D_z_set)

    def __eq__(self, v):
        return _cmsdk3.Vector3D___eq__(self, v)

    def __sub__(self, *args):
        return _cmsdk3.Vector3D___sub__(self, *args)

    def __add__(self, *args):
        return _cmsdk3.Vector3D___add__(self, *args)

    def __mul__(self, *args):
        return _cmsdk3.Vector3D___mul__(self, *args)

    def __isub__(self, *args):
        return _cmsdk3.Vector3D___isub__(self, *args)

    def __iadd__(self, *args):
        return _cmsdk3.Vector3D___iadd__(self, *args)

    def __imul__(self, a):
        return _cmsdk3.Vector3D___imul__(self, a)

    def getX(self):
        return _cmsdk3.Vector3D_getX(self)

    def getY(self):
        return _cmsdk3.Vector3D_getY(self)

    def getZ(self):
        return _cmsdk3.Vector3D_getZ(self)

    def set(self, *args):
        return _cmsdk3.Vector3D_set(self, *args)

    def setX(self, v):
        return _cmsdk3.Vector3D_setX(self, v)

    def setY(self, v):
        return _cmsdk3.Vector3D_setY(self, v)

    def setZ(self, v):
        return _cmsdk3.Vector3D_setZ(self, v)

    def length(self):
        return _cmsdk3.Vector3D_length(self)

    def product(self, v):
        return _cmsdk3.Vector3D_product(self, v)

    def isOrthogonalWith(self, v):
        return _cmsdk3.Vector3D_isOrthogonalWith(self, v)

    def isParallelWith(self, v):
        return _cmsdk3.Vector3D_isParallelWith(self, v)

    def getProjectionOn(self, v):
        return _cmsdk3.Vector3D_getProjectionOn(self, v)

    def getUnitVector(self):
        return _cmsdk3.Vector3D_getUnitVector(self)

    def getAngle(self, v):
        return _cmsdk3.Vector3D_getAngle(self, v)

    def getArea(self, v):
        return _cmsdk3.Vector3D_getArea(self, v)

    def _print(self):
        return _cmsdk3.Vector3D__print(self)

# Register Vector3D in _cmsdk3:
_cmsdk3.Vector3D_swigregister(Vector3D)
class RandomPathGenerator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _cmsdk3.RandomPathGenerator_swiginit(self, _cmsdk3.new_RandomPathGenerator())
    __swig_destroy__ = _cmsdk3.delete_RandomPathGenerator

    def setStartPoint(self, x, y):
        return _cmsdk3.RandomPathGenerator_setStartPoint(self, x, y)

    def setDirection(self, dx, dy):
        return _cmsdk3.RandomPathGenerator_setDirection(self, dx, dy)

    def setVariation(self, var):
        return _cmsdk3.RandomPathGenerator_setVariation(self, var)

    def generateNextPoint(self):
        return _cmsdk3.RandomPathGenerator_generateNextPoint(self)
    lastPointTime = property(_cmsdk3.RandomPathGenerator_lastPointTime_get, _cmsdk3.RandomPathGenerator_lastPointTime_set)
    lastPoint = property(_cmsdk3.RandomPathGenerator_lastPoint_get, _cmsdk3.RandomPathGenerator_lastPoint_set)
    direction = property(_cmsdk3.RandomPathGenerator_direction_get, _cmsdk3.RandomPathGenerator_direction_set)
    variation = property(_cmsdk3.RandomPathGenerator_variation_get, _cmsdk3.RandomPathGenerator_variation_set)

# Register RandomPathGenerator in _cmsdk3:
_cmsdk3.RandomPathGenerator_swigregister(RandomPathGenerator)

def MathClasses_UnitTest():
    return _cmsdk3.MathClasses_UnitTest()
DATACTRL = _cmsdk3.DATACTRL
RLECTRL = _cmsdk3.RLECTRL
DIFCTRL = _cmsdk3.DIFCTRL
class BITMAPFILEHEADER_CM(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    bfType = property(_cmsdk3.BITMAPFILEHEADER_CM_bfType_get, _cmsdk3.BITMAPFILEHEADER_CM_bfType_set)
    bfSize = property(_cmsdk3.BITMAPFILEHEADER_CM_bfSize_get, _cmsdk3.BITMAPFILEHEADER_CM_bfSize_set)
    bfReserved1 = property(_cmsdk3.BITMAPFILEHEADER_CM_bfReserved1_get, _cmsdk3.BITMAPFILEHEADER_CM_bfReserved1_set)
    bfReserved2 = property(_cmsdk3.BITMAPFILEHEADER_CM_bfReserved2_get, _cmsdk3.BITMAPFILEHEADER_CM_bfReserved2_set)
    bfOffBits = property(_cmsdk3.BITMAPFILEHEADER_CM_bfOffBits_get, _cmsdk3.BITMAPFILEHEADER_CM_bfOffBits_set)

    def __init__(self):
        _cmsdk3.BITMAPFILEHEADER_CM_swiginit(self, _cmsdk3.new_BITMAPFILEHEADER_CM())
    __swig_destroy__ = _cmsdk3.delete_BITMAPFILEHEADER_CM

# Register BITMAPFILEHEADER_CM in _cmsdk3:
_cmsdk3.BITMAPFILEHEADER_CM_swigregister(BITMAPFILEHEADER_CM)
class BITMAPINFOHEADER_CM(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    biSize = property(_cmsdk3.BITMAPINFOHEADER_CM_biSize_get, _cmsdk3.BITMAPINFOHEADER_CM_biSize_set)
    biWidth = property(_cmsdk3.BITMAPINFOHEADER_CM_biWidth_get, _cmsdk3.BITMAPINFOHEADER_CM_biWidth_set)
    biHeight = property(_cmsdk3.BITMAPINFOHEADER_CM_biHeight_get, _cmsdk3.BITMAPINFOHEADER_CM_biHeight_set)
    biPlanes = property(_cmsdk3.BITMAPINFOHEADER_CM_biPlanes_get, _cmsdk3.BITMAPINFOHEADER_CM_biPlanes_set)
    biBitCount = property(_cmsdk3.BITMAPINFOHEADER_CM_biBitCount_get, _cmsdk3.BITMAPINFOHEADER_CM_biBitCount_set)
    biCompression = property(_cmsdk3.BITMAPINFOHEADER_CM_biCompression_get, _cmsdk3.BITMAPINFOHEADER_CM_biCompression_set)
    biSizeImage = property(_cmsdk3.BITMAPINFOHEADER_CM_biSizeImage_get, _cmsdk3.BITMAPINFOHEADER_CM_biSizeImage_set)
    biXPelsPerMeter = property(_cmsdk3.BITMAPINFOHEADER_CM_biXPelsPerMeter_get, _cmsdk3.BITMAPINFOHEADER_CM_biXPelsPerMeter_set)
    biYPelsPerMeter = property(_cmsdk3.BITMAPINFOHEADER_CM_biYPelsPerMeter_get, _cmsdk3.BITMAPINFOHEADER_CM_biYPelsPerMeter_set)
    biClrUsed = property(_cmsdk3.BITMAPINFOHEADER_CM_biClrUsed_get, _cmsdk3.BITMAPINFOHEADER_CM_biClrUsed_set)
    biClrImportant = property(_cmsdk3.BITMAPINFOHEADER_CM_biClrImportant_get, _cmsdk3.BITMAPINFOHEADER_CM_biClrImportant_set)

    def __init__(self):
        _cmsdk3.BITMAPINFOHEADER_CM_swiginit(self, _cmsdk3.new_BITMAPINFOHEADER_CM())
    __swig_destroy__ = _cmsdk3.delete_BITMAPINFOHEADER_CM

# Register BITMAPINFOHEADER_CM in _cmsdk3:
_cmsdk3.BITMAPINFOHEADER_CM_swigregister(BITMAPINFOHEADER_CM)
class valRGBA(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    red = property(_cmsdk3.valRGBA_red_get, _cmsdk3.valRGBA_red_set)
    green = property(_cmsdk3.valRGBA_green_get, _cmsdk3.valRGBA_green_set)
    blue = property(_cmsdk3.valRGBA_blue_get, _cmsdk3.valRGBA_blue_set)
    alpha = property(_cmsdk3.valRGBA_alpha_get, _cmsdk3.valRGBA_alpha_set)

    def __init__(self):
        _cmsdk3.valRGBA_swiginit(self, _cmsdk3.new_valRGBA())
    __swig_destroy__ = _cmsdk3.delete_valRGBA

# Register valRGBA in _cmsdk3:
_cmsdk3.valRGBA_swigregister(valRGBA)
class Pixel(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _cmsdk3.Pixel_swiginit(self, _cmsdk3.new_Pixel())
    x = property(_cmsdk3.Pixel_x_get, _cmsdk3.Pixel_x_set)
    y = property(_cmsdk3.Pixel_y_get, _cmsdk3.Pixel_y_set)
    value = property(_cmsdk3.Pixel_value_get, _cmsdk3.Pixel_value_set)
    __swig_destroy__ = _cmsdk3.delete_Pixel

# Register Pixel in _cmsdk3:
_cmsdk3.Pixel_swigregister(Pixel)
class Bitmap(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _cmsdk3.Bitmap_swiginit(self, _cmsdk3.new_Bitmap(*args))
    __swig_destroy__ = _cmsdk3.delete_Bitmap

    def init(self, *args):
        return _cmsdk3.Bitmap_init(self, *args)

    def toMessage(self):
        return _cmsdk3.Bitmap_toMessage(self)

    def __sub__(self, bitmap):
        return _cmsdk3.Bitmap___sub__(self, bitmap)

    def updateBitmap(self, update, takeData):
        return _cmsdk3.Bitmap_updateBitmap(self, update, takeData)

    def runLengthEncode(self):
        return _cmsdk3.Bitmap_runLengthEncode(self)

    def runLengthDestructiveEncode(self):
        return _cmsdk3.Bitmap_runLengthDestructiveEncode(self)

    def reset(self):
        return _cmsdk3.Bitmap_reset(self)

    def mirror(self, horizontal, vertical):
        return _cmsdk3.Bitmap_mirror(self, horizontal, vertical)

    def setPixel(self, *args):
        return _cmsdk3.Bitmap_setPixel(self, *args)

    def setPixelXOR(self, *args):
        return _cmsdk3.Bitmap_setPixelXOR(self, *args)

    def getPixel(self, *args):
        return _cmsdk3.Bitmap_getPixel(self, *args)

    def getPos(self, x, y):
        return _cmsdk3.Bitmap_getPos(self, x, y)

    def getDPos(self, x, y):
        return _cmsdk3.Bitmap_getDPos(self, x, y)

    def getXY(self, pos):
        return _cmsdk3.Bitmap_getXY(self, pos)

    def getPixelColor(self, x, y):
        return _cmsdk3.Bitmap_getPixelColor(self, x, y)

    def eraseBitmap(self, *args):
        return _cmsdk3.Bitmap_eraseBitmap(self, *args)

    def replaceColor(self, oldColor, newColor):
        return _cmsdk3.Bitmap_replaceColor(self, oldColor, newColor)

    def fillBox(self, *args):
        return _cmsdk3.Bitmap_fillBox(self, *args)

    def putTransPixel(self, x, y, color, weight):
        return _cmsdk3.Bitmap_putTransPixel(self, x, y, color, weight)

    def drawLine(self, *args):
        return _cmsdk3.Bitmap_drawLine(self, *args)

    def drawBox(self, box, color):
        return _cmsdk3.Bitmap_drawBox(self, box, color)

    def drawCircle(self, xCenter, yCenter, radius, color, weight, lineWidth, filled=False):
        return _cmsdk3.Bitmap_drawCircle(self, xCenter, yCenter, radius, color, weight, lineWidth, filled)

    def putQuadPixel(self, xCenter, yCenter, x, y, color, weight):
        return _cmsdk3.Bitmap_putQuadPixel(self, xCenter, yCenter, x, y, color, weight)

    def drawBitmap(self, *args):
        return _cmsdk3.Bitmap_drawBitmap(self, *args)

    def getCopy(self, box):
        return _cmsdk3.Bitmap_getCopy(self, box)

    def canBeResizedTo(self, width, height):
        return _cmsdk3.Bitmap_canBeResizedTo(self, width, height)

    def getResizedCopy(self, *args):
        return _cmsdk3.Bitmap_getResizedCopy(self, *args)

    def resizeTo(self, w, h, proportional):
        return _cmsdk3.Bitmap_resizeTo(self, w, h, proportional)

    def copyDataFromBitmap(self, bitmap, shouldResize=False):
        return _cmsdk3.Bitmap_copyDataFromBitmap(self, bitmap, shouldResize)

    def takeDataFromBitmap(self, bitmap):
        return _cmsdk3.Bitmap_takeDataFromBitmap(self, bitmap)

    def getBestResizeFactor(self, factor):
        return _cmsdk3.Bitmap_getBestResizeFactor(self, factor)

    def getBestResizeFactors(self, factor, scaleUp, scaleDown, scale66):
        return _cmsdk3.Bitmap_getBestResizeFactors(self, factor, scaleUp, scaleDown, scale66)

    def createResizedData(self, newWidth, newHeight, scaleUp, scaleDown, scale66):
        return _cmsdk3.Bitmap_createResizedData(self, newWidth, newHeight, scaleUp, scaleDown, scale66)

    def readFromMemory(self, data, size):
        return _cmsdk3.Bitmap_readFromMemory(self, data, size)

    def readFromFile(self, filename):
        return _cmsdk3.Bitmap_readFromFile(self, filename)

    def saveToFile(self, filename):
        return _cmsdk3.Bitmap_saveToFile(self, filename)

    @staticmethod
    def convertBitmapFileData(src, width, height, depth, dst, dstlen):
        return _cmsdk3.Bitmap_convertBitmapFileData(src, width, height, depth, dst, dstlen)

    @staticmethod
    def convertBitmapFileDataRunLength(src, width, height, depth, dstlen):
        return _cmsdk3.Bitmap_convertBitmapFileDataRunLength(src, width, height, depth, dstlen)

    @staticmethod
    def differenceBitmapFileData(orig, src, width, height, depth, dstlen):
        return _cmsdk3.Bitmap_differenceBitmapFileData(orig, src, width, height, depth, dstlen)

    @staticmethod
    def differenceBitmapFileDataRunLength(orig, src, width, height, depth, dstlen):
        return _cmsdk3.Bitmap_differenceBitmapFileDataRunLength(orig, src, width, height, depth, dstlen)

    def getCompressedUpdate(self, destructive):
        return _cmsdk3.Bitmap_getCompressedUpdate(self, destructive)

    def getGrayScaleDataCopy(self, len):
        return _cmsdk3.Bitmap_getGrayScaleDataCopy(self, len)

    def copyGrayScaleData(self, src, len):
        return _cmsdk3.Bitmap_copyGrayScaleData(self, src, len)

    def resetBitmapUpdates(self):
        return _cmsdk3.Bitmap_resetBitmapUpdates(self)

    def setBitmapUpdated(self):
        return _cmsdk3.Bitmap_setBitmapUpdated(self)

    def addBitmapUpdateRegion(self, updateBox):
        return _cmsdk3.Bitmap_addBitmapUpdateRegion(self, updateBox)

    def hasBitmapBeenUpdated(self):
        return _cmsdk3.Bitmap_hasBitmapBeenUpdated(self)

    def hasBitmapBeenTotallyChanged(self):
        return _cmsdk3.Bitmap_hasBitmapBeenTotallyChanged(self)
    width = property(_cmsdk3.Bitmap_width_get, _cmsdk3.Bitmap_width_set)
    height = property(_cmsdk3.Bitmap_height_get, _cmsdk3.Bitmap_height_set)
    size = property(_cmsdk3.Bitmap_size_get, _cmsdk3.Bitmap_size_set)
    data = property(_cmsdk3.Bitmap_data_get, _cmsdk3.Bitmap_data_set)
    updateRegion = property(_cmsdk3.Bitmap_updateRegion_get, _cmsdk3.Bitmap_updateRegion_set)

    def round(self, d):
        return _cmsdk3.Bitmap_round(self, d)

    def toBitmapFileFormat(self, len):
        return _cmsdk3.Bitmap_toBitmapFileFormat(self, len)

    @staticmethod
    def DataToBitmapFileFormat(*args):
        return _cmsdk3.Bitmap_DataToBitmapFileFormat(*args)

    @staticmethod
    def DataToEncodingFormat(data, size, width, height, srcEncoding, linestep, targetEncoding, len):
        return _cmsdk3.Bitmap_DataToEncodingFormat(data, size, width, height, srcEncoding, linestep, targetEncoding, len)

    @staticmethod
    def UnitTest():
        return _cmsdk3.Bitmap_UnitTest()

# Register Bitmap in _cmsdk3:
_cmsdk3.Bitmap_swigregister(Bitmap)

def ImageResizeDown66(bytesource, cols, rows):
    return _cmsdk3.ImageResizeDown66(bytesource, cols, rows)

def ImageResizeDown(bytesource, cols, rows, factor):
    return _cmsdk3.ImageResizeDown(bytesource, cols, rows, factor)

def ImageResizeUp66(bytesource, cols, rows):
    return _cmsdk3.ImageResizeUp66(bytesource, cols, rows)

def ImageResizeUp(bytesource, cols, rows, factor):
    return _cmsdk3.ImageResizeUp(bytesource, cols, rows, factor)
class BitmapUpdate(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    FULL = _cmsdk3.BitmapUpdate_FULL
    RUNLENGTH = _cmsdk3.BitmapUpdate_RUNLENGTH
    RL16 = _cmsdk3.BitmapUpdate_RL16
    DIF = _cmsdk3.BitmapUpdate_DIF
    DIFRUNLENGTH = _cmsdk3.BitmapUpdate_DIFRUNLENGTH
    NONE = _cmsdk3.BitmapUpdate_NONE
    type = property(_cmsdk3.BitmapUpdate_type_get, _cmsdk3.BitmapUpdate_type_set)

    def __init__(self, *args):
        _cmsdk3.BitmapUpdate_swiginit(self, _cmsdk3.new_BitmapUpdate(*args))
    __swig_destroy__ = _cmsdk3.delete_BitmapUpdate

    def init(self, w, h):
        return _cmsdk3.BitmapUpdate_init(self, w, h)

    def reset(self):
        return _cmsdk3.BitmapUpdate_reset(self)

    def update(self, update):
        return _cmsdk3.BitmapUpdate_update(self, update)

    def toBitmap(self):
        return _cmsdk3.BitmapUpdate_toBitmap(self)

    def setUpdateType(self, updateType):
        return _cmsdk3.BitmapUpdate_setUpdateType(self, updateType)

    def getUpdateType(self):
        return _cmsdk3.BitmapUpdate_getUpdateType(self)

    def setFullUpdate(self, bitmap):
        return _cmsdk3.BitmapUpdate_setFullUpdate(self, bitmap)

    def readFromFile(self, filename):
        return _cmsdk3.BitmapUpdate_readFromFile(self, filename)

    def readFromFileRLE(self, filename):
        return _cmsdk3.BitmapUpdate_readFromFileRLE(self, filename)

    def readFromFileDiff(self, filename, oldBitmap):
        return _cmsdk3.BitmapUpdate_readFromFileDiff(self, filename, oldBitmap)

    def readFromFileRLEDiff(self, filename, oldBitmap):
        return _cmsdk3.BitmapUpdate_readFromFileRLEDiff(self, filename, oldBitmap)
    width = property(_cmsdk3.BitmapUpdate_width_get, _cmsdk3.BitmapUpdate_width_set)
    height = property(_cmsdk3.BitmapUpdate_height_get, _cmsdk3.BitmapUpdate_height_set)
    size = property(_cmsdk3.BitmapUpdate_size_get, _cmsdk3.BitmapUpdate_size_set)
    data = property(_cmsdk3.BitmapUpdate_data_get, _cmsdk3.BitmapUpdate_data_set)

# Register BitmapUpdate in _cmsdk3:
_cmsdk3.BitmapUpdate_swigregister(BitmapUpdate)
CURRENTDATAMESSAGEVERSION = _cmsdk3.CURRENTDATAMESSAGEVERSION
class DataMessageEntryHeader(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    size = property(_cmsdk3.DataMessageEntryHeader_size_get, _cmsdk3.DataMessageEntryHeader_size_set)
    cid = property(_cmsdk3.DataMessageEntryHeader_cid_get, _cmsdk3.DataMessageEntryHeader_cid_set)

    def __init__(self):
        _cmsdk3.DataMessageEntryHeader_swiginit(self, _cmsdk3.new_DataMessageEntryHeader())
    __swig_destroy__ = _cmsdk3.delete_DataMessageEntryHeader

# Register DataMessageEntryHeader in _cmsdk3:
_cmsdk3.DataMessageEntryHeader_swigregister(DataMessageEntryHeader)
class DataMessageHeader_Old(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    size = property(_cmsdk3.DataMessageHeader_Old_size_get, _cmsdk3.DataMessageHeader_Old_size_set)
    cid = property(_cmsdk3.DataMessageHeader_Old_cid_get, _cmsdk3.DataMessageHeader_Old_cid_set)
    memid = property(_cmsdk3.DataMessageHeader_Old_memid_get, _cmsdk3.DataMessageHeader_Old_memid_set)
    time = property(_cmsdk3.DataMessageHeader_Old_time_get, _cmsdk3.DataMessageHeader_Old_time_set)
    sendtime = property(_cmsdk3.DataMessageHeader_Old_sendtime_get, _cmsdk3.DataMessageHeader_Old_sendtime_set)
    recvtime = property(_cmsdk3.DataMessageHeader_Old_recvtime_get, _cmsdk3.DataMessageHeader_Old_recvtime_set)
    origin = property(_cmsdk3.DataMessageHeader_Old_origin_get, _cmsdk3.DataMessageHeader_Old_origin_set)
    destination = property(_cmsdk3.DataMessageHeader_Old_destination_get, _cmsdk3.DataMessageHeader_Old_destination_set)
    ttl = property(_cmsdk3.DataMessageHeader_Old_ttl_get, _cmsdk3.DataMessageHeader_Old_ttl_set)
    priority = property(_cmsdk3.DataMessageHeader_Old_priority_get, _cmsdk3.DataMessageHeader_Old_priority_set)
    policy = property(_cmsdk3.DataMessageHeader_Old_policy_get, _cmsdk3.DataMessageHeader_Old_policy_set)
    _from = property(_cmsdk3.DataMessageHeader_Old__from_get, _cmsdk3.DataMessageHeader_Old__from_set)
    to = property(_cmsdk3.DataMessageHeader_Old_to_get, _cmsdk3.DataMessageHeader_Old_to_set)
    type = property(_cmsdk3.DataMessageHeader_Old_type_get, _cmsdk3.DataMessageHeader_Old_type_set)
    tag = property(_cmsdk3.DataMessageHeader_Old_tag_get, _cmsdk3.DataMessageHeader_Old_tag_set)
    status = property(_cmsdk3.DataMessageHeader_Old_status_get, _cmsdk3.DataMessageHeader_Old_status_set)
    reference = property(_cmsdk3.DataMessageHeader_Old_reference_get, _cmsdk3.DataMessageHeader_Old_reference_set)
    serial = property(_cmsdk3.DataMessageHeader_Old_serial_get, _cmsdk3.DataMessageHeader_Old_serial_set)
    contextchange = property(_cmsdk3.DataMessageHeader_Old_contextchange_get, _cmsdk3.DataMessageHeader_Old_contextchange_set)
    userSize = property(_cmsdk3.DataMessageHeader_Old_userSize_get, _cmsdk3.DataMessageHeader_Old_userSize_set)
    userCount = property(_cmsdk3.DataMessageHeader_Old_userCount_get, _cmsdk3.DataMessageHeader_Old_userCount_set)

    def __init__(self):
        _cmsdk3.DataMessageHeader_Old_swiginit(self, _cmsdk3.new_DataMessageHeader_Old())
    __swig_destroy__ = _cmsdk3.delete_DataMessageHeader_Old

# Register DataMessageHeader_Old in _cmsdk3:
_cmsdk3.DataMessageHeader_Old_swigregister(DataMessageHeader_Old)
class DataMessageHeader(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    size = property(_cmsdk3.DataMessageHeader_size_get, _cmsdk3.DataMessageHeader_size_set)
    cid = property(_cmsdk3.DataMessageHeader_cid_get, _cmsdk3.DataMessageHeader_cid_set)
    cver = property(_cmsdk3.DataMessageHeader_cver_get, _cmsdk3.DataMessageHeader_cver_set)
    cenc = property(_cmsdk3.DataMessageHeader_cenc_get, _cmsdk3.DataMessageHeader_cenc_set)
    memid = property(_cmsdk3.DataMessageHeader_memid_get, _cmsdk3.DataMessageHeader_memid_set)
    time = property(_cmsdk3.DataMessageHeader_time_get, _cmsdk3.DataMessageHeader_time_set)
    sendtime = property(_cmsdk3.DataMessageHeader_sendtime_get, _cmsdk3.DataMessageHeader_sendtime_set)
    recvtime = property(_cmsdk3.DataMessageHeader_recvtime_get, _cmsdk3.DataMessageHeader_recvtime_set)
    origin = property(_cmsdk3.DataMessageHeader_origin_get, _cmsdk3.DataMessageHeader_origin_set)
    destination = property(_cmsdk3.DataMessageHeader_destination_get, _cmsdk3.DataMessageHeader_destination_set)
    ttl = property(_cmsdk3.DataMessageHeader_ttl_get, _cmsdk3.DataMessageHeader_ttl_set)
    priority = property(_cmsdk3.DataMessageHeader_priority_get, _cmsdk3.DataMessageHeader_priority_set)
    policy = property(_cmsdk3.DataMessageHeader_policy_get, _cmsdk3.DataMessageHeader_policy_set)
    _from = property(_cmsdk3.DataMessageHeader__from_get, _cmsdk3.DataMessageHeader__from_set)
    to = property(_cmsdk3.DataMessageHeader_to_get, _cmsdk3.DataMessageHeader_to_set)
    type = property(_cmsdk3.DataMessageHeader_type_get, _cmsdk3.DataMessageHeader_type_set)
    tag = property(_cmsdk3.DataMessageHeader_tag_get, _cmsdk3.DataMessageHeader_tag_set)
    status = property(_cmsdk3.DataMessageHeader_status_get, _cmsdk3.DataMessageHeader_status_set)
    reference = property(_cmsdk3.DataMessageHeader_reference_get, _cmsdk3.DataMessageHeader_reference_set)
    serial = property(_cmsdk3.DataMessageHeader_serial_get, _cmsdk3.DataMessageHeader_serial_set)
    contextchange = property(_cmsdk3.DataMessageHeader_contextchange_get, _cmsdk3.DataMessageHeader_contextchange_set)
    userSize = property(_cmsdk3.DataMessageHeader_userSize_get, _cmsdk3.DataMessageHeader_userSize_set)
    userCount = property(_cmsdk3.DataMessageHeader_userCount_get, _cmsdk3.DataMessageHeader_userCount_set)
    cyclecputime = property(_cmsdk3.DataMessageHeader_cyclecputime_get, _cmsdk3.DataMessageHeader_cyclecputime_set)
    cyclewalltime = property(_cmsdk3.DataMessageHeader_cyclewalltime_get, _cmsdk3.DataMessageHeader_cyclewalltime_set)
    chaincputime = property(_cmsdk3.DataMessageHeader_chaincputime_get, _cmsdk3.DataMessageHeader_chaincputime_set)
    chainwalltime = property(_cmsdk3.DataMessageHeader_chainwalltime_get, _cmsdk3.DataMessageHeader_chainwalltime_set)
    chaincount = property(_cmsdk3.DataMessageHeader_chaincount_get, _cmsdk3.DataMessageHeader_chaincount_set)
    systemid = property(_cmsdk3.DataMessageHeader_systemid_get, _cmsdk3.DataMessageHeader_systemid_set)

    def toJSON(self, subtypes=None, subcontexts=None, compNames=None):
        return _cmsdk3.DataMessageHeader_toJSON(self, subtypes, subcontexts, compNames)

    def toXML(self, subtypes=None, subcontexts=None, compNames=None):
        return _cmsdk3.DataMessageHeader_toXML(self, subtypes, subcontexts, compNames)

    def __init__(self):
        _cmsdk3.DataMessageHeader_swiginit(self, _cmsdk3.new_DataMessageHeader())
    __swig_destroy__ = _cmsdk3.delete_DataMessageHeader

# Register DataMessageHeader in _cmsdk3:
_cmsdk3.DataMessageHeader_swigregister(DataMessageHeader)
class DataMessage(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def FindClosestMessage(t, messages):
        return _cmsdk3.DataMessage_FindClosestMessage(t, messages)

    @staticmethod
    def ConvertDataFromOlderMessageFormat(data, newData):
        return _cmsdk3.DataMessage_ConvertDataFromOlderMessageFormat(data, newData)

    @staticmethod
    def UnitTest():
        return _cmsdk3.DataMessage_UnitTest()

    def __init__(self, *args):
        _cmsdk3.DataMessage_swiginit(self, _cmsdk3.new_DataMessage(*args))
    __swig_destroy__ = _cmsdk3.delete_DataMessage

    def copy(self):
        return _cmsdk3.DataMessage_copy(self)

    def swapMessageData(self, data):
        return _cmsdk3.DataMessage_swapMessageData(self, data)

    def fillInDraftUserDataFrom(self, data, maxDraftSize):
        return _cmsdk3.DataMessage_fillInDraftUserDataFrom(self, data, maxDraftSize)

    def isValid(self):
        return _cmsdk3.DataMessage_isValid(self)

    def getAsBool(self, key):
        return _cmsdk3.DataMessage_getAsBool(self, key)

    def getUserSize(self):
        return _cmsdk3.DataMessage_getUserSize(self)

    def getUserCount(self):
        return _cmsdk3.DataMessage_getUserCount(self)
    NONE = _cmsdk3.DataMessage_NONE
    SINGLE = _cmsdk3.DataMessage_SINGLE
    ARRAY = _cmsdk3.DataMessage_ARRAY
    MAP = _cmsdk3.DataMessage_MAP

    def getKeyType(self, key):
        return _cmsdk3.DataMessage_getKeyType(self, key)

    def isArrayContent(self, key):
        return _cmsdk3.DataMessage_isArrayContent(self, key)

    def isMapContent(self, key):
        return _cmsdk3.DataMessage_isMapContent(self, key)

    def isSingleValue(self, key):
        return _cmsdk3.DataMessage_isSingleValue(self, key)

    def hasKey(self, key):
        return _cmsdk3.DataMessage_hasKey(self, key)

    def hasString(self, key):
        return _cmsdk3.DataMessage_hasString(self, key)

    def hasInteger(self, key):
        return _cmsdk3.DataMessage_hasInteger(self, key)

    def hasFloat(self, key):
        return _cmsdk3.DataMessage_hasFloat(self, key)

    def hasTime(self, key):
        return _cmsdk3.DataMessage_hasTime(self, key)

    def hasData(self, key):
        return _cmsdk3.DataMessage_hasData(self, key)

    def hasMessage(self, key):
        return _cmsdk3.DataMessage_hasMessage(self, key)

    def getTimeArray(self, key):
        return _cmsdk3.DataMessage_getTimeArray(self, key)

    def getAsStringArray(self, key):
        return _cmsdk3.DataMessage_getAsStringArray(self, key)

    def getAsIntArray(self, key):
        return _cmsdk3.DataMessage_getAsIntArray(self, key)

    def getAsFloatArray(self, key):
        return _cmsdk3.DataMessage_getAsFloatArray(self, key)

    def getStringArray(self, key):
        return _cmsdk3.DataMessage_getStringArray(self, key)

    def getIntArray(self, key):
        return _cmsdk3.DataMessage_getIntArray(self, key)

    def getDoubleArray(self, key):
        return _cmsdk3.DataMessage_getDoubleArray(self, key)

    def getFloatArray(self, key):
        return _cmsdk3.DataMessage_getFloatArray(self, key)

    def getAttachedMessageArray(self, key):
        return _cmsdk3.DataMessage_getAttachedMessageArray(self, key)

    def getArraySize(self, key):
        return _cmsdk3.DataMessage_getArraySize(self, key)

    def getArrayCount(self, key):
        return _cmsdk3.DataMessage_getArrayCount(self, key)

    def getMapSize(self, key):
        return _cmsdk3.DataMessage_getMapSize(self, key)

    def getMapCount(self, key):
        return _cmsdk3.DataMessage_getMapCount(self, key)

    def setTimeArray(self, key, map):
        return _cmsdk3.DataMessage_setTimeArray(self, key, map)

    def setStringArray(self, key, map):
        return _cmsdk3.DataMessage_setStringArray(self, key, map)

    def setIntArray(self, key, map):
        return _cmsdk3.DataMessage_setIntArray(self, key, map)

    def setDoubleArray(self, key, map):
        return _cmsdk3.DataMessage_setDoubleArray(self, key, map)

    def setFloatArray(self, key, map):
        return _cmsdk3.DataMessage_setFloatArray(self, key, map)

    def setAttachedMessageArray(self, key, map):
        return _cmsdk3.DataMessage_setAttachedMessageArray(self, key, map)

    def getContentType(self, *args):
        return _cmsdk3.DataMessage_getContentType(self, *args)

    def getContentSize(self, *args):
        return _cmsdk3.DataMessage_getContentSize(self, *args)

    def getTime(self, *args):
        return _cmsdk3.DataMessage_getTime(self, *args)

    def getAsString(self, *args):
        return _cmsdk3.DataMessage_getAsString(self, *args)

    def getAsInt(self, *args):
        return _cmsdk3.DataMessage_getAsInt(self, *args)

    def getAsTime(self, *args):
        return _cmsdk3.DataMessage_getAsTime(self, *args)

    def getAsFloat(self, *args):
        return _cmsdk3.DataMessage_getAsFloat(self, *args)

    def getString(self, *args):
        return _cmsdk3.DataMessage_getString(self, *args)

    def getInt(self, *args):
        return _cmsdk3.DataMessage_getInt(self, *args)

    def getDouble(self, *args):
        return _cmsdk3.DataMessage_getDouble(self, *args)

    def getFloat(self, *args):
        return _cmsdk3.DataMessage_getFloat(self, *args)

    def getData(self, *args):
        return _cmsdk3.DataMessage_getData(self, *args)

    def getDataCopy(self, *args):
        return _cmsdk3.DataMessage_getDataCopy(self, *args)

    def getAttachedMessageCopy(self, *args):
        return _cmsdk3.DataMessage_getAttachedMessageCopy(self, *args)

    def setTime(self, *args):
        return _cmsdk3.DataMessage_setTime(self, *args)

    def setString(self, *args):
        return _cmsdk3.DataMessage_setString(self, *args)

    def setInt(self, *args):
        return _cmsdk3.DataMessage_setInt(self, *args)

    def setDouble(self, *args):
        return _cmsdk3.DataMessage_setDouble(self, *args)

    def setFloat(self, *args):
        return _cmsdk3.DataMessage_setFloat(self, *args)

    def setData(self, *args):
        return _cmsdk3.DataMessage_setData(self, *args)

    def setAttachedMessage(self, *args):
        return _cmsdk3.DataMessage_setAttachedMessage(self, *args)

    def getTimeMap(self, key):
        return _cmsdk3.DataMessage_getTimeMap(self, key)

    def getAsStringMap(self, key):
        return _cmsdk3.DataMessage_getAsStringMap(self, key)

    def getAsIntMap(self, key):
        return _cmsdk3.DataMessage_getAsIntMap(self, key)

    def getAsFloatMap(self, key):
        return _cmsdk3.DataMessage_getAsFloatMap(self, key)

    def getStringMap(self, key):
        return _cmsdk3.DataMessage_getStringMap(self, key)

    def getIntMap(self, key):
        return _cmsdk3.DataMessage_getIntMap(self, key)

    def getDoubleMap(self, key):
        return _cmsdk3.DataMessage_getDoubleMap(self, key)

    def getFloatMap(self, key):
        return _cmsdk3.DataMessage_getFloatMap(self, key)

    def getAttachedMessageMap(self, key):
        return _cmsdk3.DataMessage_getAttachedMessageMap(self, key)

    def setTimeMap(self, key, map):
        return _cmsdk3.DataMessage_setTimeMap(self, key, map)

    def setStringMap(self, key, map):
        return _cmsdk3.DataMessage_setStringMap(self, key, map)

    def setIntMap(self, key, map):
        return _cmsdk3.DataMessage_setIntMap(self, key, map)

    def setDoubleMap(self, key, map):
        return _cmsdk3.DataMessage_setDoubleMap(self, key, map)

    def setFloatMap(self, key, map):
        return _cmsdk3.DataMessage_setFloatMap(self, key, map)

    def setAttachedMessageMap(self, key, map):
        return _cmsdk3.DataMessage_setAttachedMessageMap(self, key, map)

    def toJSON(self, subtypes=None, subcontexts=None, compNames=None):
        return _cmsdk3.DataMessage_toJSON(self, subtypes, subcontexts, compNames)

    def toXML(self, subtypes=None, subcontexts=None, compNames=None):
        return _cmsdk3.DataMessage_toXML(self, subtypes, subcontexts, compNames)

    def toCSV(self, separator=None, preample=None, subtypes=None, subcontexts=None, compNames=None):
        return _cmsdk3.DataMessage_toCSV(self, separator, preample, subtypes, subcontexts, compNames)

    @staticmethod
    def GetCSVHeader(separator=None, preample=None):
        return _cmsdk3.DataMessage_GetCSVHeader(separator, preample)

    def copyUserEntriesFromMessage(self, msg):
        return _cmsdk3.DataMessage_copyUserEntriesFromMessage(self, msg)

    def getUserEntriesAsString(self):
        return _cmsdk3.DataMessage_getUserEntriesAsString(self)

    def getUserEntriesAsJSON(self, asText):
        return _cmsdk3.DataMessage_getUserEntriesAsJSON(self, asText)

    def getRawData(self):
        return _cmsdk3.DataMessage_getRawData(self)

    def getOrigin(self):
        return _cmsdk3.DataMessage_getOrigin(self)

    def getDestination(self):
        return _cmsdk3.DataMessage_getDestination(self)

    def setOrigin(self, addr):
        return _cmsdk3.DataMessage_setOrigin(self, addr)

    def setDestination(self, addr):
        return _cmsdk3.DataMessage_setDestination(self, addr)

    def getSize(self):
        return _cmsdk3.DataMessage_getSize(self)

    def setMultiple(self, _from, to, tag, ttl, policy, sendtime):
        return _cmsdk3.DataMessage_setMultiple(self, _from, to, tag, ttl, policy, sendtime)

    def getTag(self):
        return _cmsdk3.DataMessage_getTag(self)

    def setTag(self, tag):
        return _cmsdk3.DataMessage_setTag(self, tag)

    def getReference(self):
        return _cmsdk3.DataMessage_getReference(self)

    def setReference(self, ref):
        return _cmsdk3.DataMessage_setReference(self, ref)

    def getSystemID(self):
        return _cmsdk3.DataMessage_getSystemID(self)

    def setSystemID(self, id):
        return _cmsdk3.DataMessage_setSystemID(self, id)

    def getMemID(self):
        return _cmsdk3.DataMessage_getMemID(self)

    def setMemID(self, id):
        return _cmsdk3.DataMessage_setMemID(self, id)

    def getFrom(self):
        return _cmsdk3.DataMessage_getFrom(self)

    def setFrom(self, _from):
        return _cmsdk3.DataMessage_setFrom(self, _from)

    def getTo(self):
        return _cmsdk3.DataMessage_getTo(self)

    def setTo(self, to):
        return _cmsdk3.DataMessage_setTo(self, to)

    def getType(self):
        return _cmsdk3.DataMessage_getType(self)

    def setType(self, type):
        return _cmsdk3.DataMessage_setType(self, type)

    def getContextChange(self):
        return _cmsdk3.DataMessage_getContextChange(self)

    def setContextChange(self, context):
        return _cmsdk3.DataMessage_setContextChange(self, context)

    def getTTL(self):
        return _cmsdk3.DataMessage_getTTL(self)

    def getEOL(self):
        return _cmsdk3.DataMessage_getEOL(self)

    def setTTL(self, ttl):
        return _cmsdk3.DataMessage_setTTL(self, ttl)

    def setEOL(self, eol):
        return _cmsdk3.DataMessage_setEOL(self, eol)

    def getPriority(self):
        return _cmsdk3.DataMessage_getPriority(self)

    def setPriority(self, priority):
        return _cmsdk3.DataMessage_setPriority(self, priority)

    def getPolicy(self):
        return _cmsdk3.DataMessage_getPolicy(self)

    def setPolicy(self, policy):
        return _cmsdk3.DataMessage_setPolicy(self, policy)

    def getSendTime(self):
        return _cmsdk3.DataMessage_getSendTime(self)

    def setSendTime(self, time):
        return _cmsdk3.DataMessage_setSendTime(self, time)

    def getRecvTime(self):
        return _cmsdk3.DataMessage_getRecvTime(self)

    def setRecvTime(self, time):
        return _cmsdk3.DataMessage_setRecvTime(self, time)

    def getCreatedTime(self):
        return _cmsdk3.DataMessage_getCreatedTime(self)

    def setCreatedTime(self, t):
        return _cmsdk3.DataMessage_setCreatedTime(self, t)

    def getStatus(self):
        return _cmsdk3.DataMessage_getStatus(self)

    def setStatus(self, status):
        return _cmsdk3.DataMessage_setStatus(self, status)

    def getSerial(self):
        return _cmsdk3.DataMessage_getSerial(self)

    def setSerial(self, serial):
        return _cmsdk3.DataMessage_setSerial(self, serial)

    def addTimeUsage(self, cycleCPUTime, cycleWallTime, chainCPUTime=0, chainWallTime=0, chainCount=0):
        return _cmsdk3.DataMessage_addTimeUsage(self, cycleCPUTime, cycleWallTime, chainCPUTime, chainWallTime, chainCount)

    def getCycleCPUTime(self):
        return _cmsdk3.DataMessage_getCycleCPUTime(self)

    def setCycleCPUTime(self, t):
        return _cmsdk3.DataMessage_setCycleCPUTime(self, t)

    def getCycleWallTime(self):
        return _cmsdk3.DataMessage_getCycleWallTime(self)

    def setCycleWallTime(self, t):
        return _cmsdk3.DataMessage_setCycleWallTime(self, t)

    def getChainCPUTime(self):
        return _cmsdk3.DataMessage_getChainCPUTime(self)

    def setChainCPUTime(self, t):
        return _cmsdk3.DataMessage_setChainCPUTime(self, t)

    def getChainWallTime(self):
        return _cmsdk3.DataMessage_getChainWallTime(self)

    def setChainWallTime(self, t):
        return _cmsdk3.DataMessage_setChainWallTime(self, t)

    def getChainCount(self):
        return _cmsdk3.DataMessage_getChainCount(self)

    def setChainCount(self, count):
        return _cmsdk3.DataMessage_setChainCount(self, count)

    def deleteEntry(self, key):
        return _cmsdk3.DataMessage_deleteEntry(self, key)
    data = property(_cmsdk3.DataMessage_data_get, _cmsdk3.DataMessage_data_set)
    _lastFindKey = property(_cmsdk3.DataMessage__lastFindKey_get, _cmsdk3.DataMessage__lastFindKey_set)
    _lastFindKeyResult = property(_cmsdk3.DataMessage__lastFindKeyResult_get, _cmsdk3.DataMessage__lastFindKeyResult_set)

    def invalidateFindKeyCache(self):
        return _cmsdk3.DataMessage_invalidateFindKeyCache(self)

# Register DataMessage in _cmsdk3:
_cmsdk3.DataMessage_swigregister(DataMessage)
class MessageIndex(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def UnitTest():
        return _cmsdk3.MessageIndex_UnitTest()

    def __init__(self):
        _cmsdk3.MessageIndex_swiginit(self, _cmsdk3.new_MessageIndex())
    __swig_destroy__ = _cmsdk3.delete_MessageIndex

    def setDefaultTTL(self, defaultTTL):
        return _cmsdk3.MessageIndex_setDefaultTTL(self, defaultTTL)

    def addIndexKey(self, key, type):
        return _cmsdk3.MessageIndex_addIndexKey(self, key, type)

    def removeIndexKey(self, key, type):
        return _cmsdk3.MessageIndex_removeIndexKey(self, key, type)

    def setFileStorage(self, *args):
        return _cmsdk3.MessageIndex_setFileStorage(self, *args)

    def addMessage(self, msg):
        return _cmsdk3.MessageIndex_addMessage(self, msg)

    def queryMessages(self, spec, size, count):
        return _cmsdk3.MessageIndex_queryMessages(self, spec, size, count)

    def getCount(self):
        return _cmsdk3.MessageIndex_getCount(self)

    def doMaintenance(self):
        return _cmsdk3.MessageIndex_doMaintenance(self)

# Register MessageIndex in _cmsdk3:
_cmsdk3.MessageIndex_swigregister(MessageIndex)
COMP_WHITEBOARD = _cmsdk3.COMP_WHITEBOARD
COMP_CATALOG = _cmsdk3.COMP_CATALOG
COMP_STREAM = _cmsdk3.COMP_STREAM
COMP_FEED = _cmsdk3.COMP_FEED
COMP_SERVICE = _cmsdk3.COMP_SERVICE
COMP_MODULE = _cmsdk3.COMP_MODULE
COMP_INTERNAL = _cmsdk3.COMP_INTERNAL
COMP_EXTERNAL = _cmsdk3.COMP_EXTERNAL
COMP_MIGRATE_NO = _cmsdk3.COMP_MIGRATE_NO
COMP_MIGRATE_ALLOW = _cmsdk3.COMP_MIGRATE_ALLOW
TRIGGERFILTER_HASKEY = _cmsdk3.TRIGGERFILTER_HASKEY
TRIGGERFILTER_EQUALS = _cmsdk3.TRIGGERFILTER_EQUALS
TRIGGERFILTER_NOTEQUALS = _cmsdk3.TRIGGERFILTER_NOTEQUALS
TRIGGERFILTER_EQUALSNUMERIC = _cmsdk3.TRIGGERFILTER_EQUALSNUMERIC
TRIGGERFILTER_NOTEQUALSNUMERIC = _cmsdk3.TRIGGERFILTER_NOTEQUALSNUMERIC
TRIGGERFILTER_GREATERTHAN = _cmsdk3.TRIGGERFILTER_GREATERTHAN
TRIGGERFILTER_LESSTHAN = _cmsdk3.TRIGGERFILTER_LESSTHAN
TRIGGERFILTER_MAXAGE = _cmsdk3.TRIGGERFILTER_MAXAGE
INDEX_TIME = _cmsdk3.INDEX_TIME
INDEX_STRING = _cmsdk3.INDEX_STRING
INDEX_INTEGER = _cmsdk3.INDEX_INTEGER
INDEX_FLOAT = _cmsdk3.INDEX_FLOAT
class FilterSpec(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    filter = property(_cmsdk3.FilterSpec_filter_get, _cmsdk3.FilterSpec_filter_set)
    time = property(_cmsdk3.FilterSpec_time_get, _cmsdk3.FilterSpec_time_set)
    key = property(_cmsdk3.FilterSpec_key_get, _cmsdk3.FilterSpec_key_set)
    value = property(_cmsdk3.FilterSpec_value_get, _cmsdk3.FilterSpec_value_set)

    def toXML(self):
        return _cmsdk3.FilterSpec_toXML(self)

    def fromXML(self, *args):
        return _cmsdk3.FilterSpec_fromXML(self, *args)

    def __init__(self):
        _cmsdk3.FilterSpec_swiginit(self, _cmsdk3.new_FilterSpec())
    __swig_destroy__ = _cmsdk3.delete_FilterSpec

# Register FilterSpec in _cmsdk3:
_cmsdk3.FilterSpec_swigregister(FilterSpec)
class QuerySpec(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    source = property(_cmsdk3.QuerySpec_source_get, _cmsdk3.QuerySpec_source_set)
    origin = property(_cmsdk3.QuerySpec_origin_get, _cmsdk3.QuerySpec_origin_set)
    maxage = property(_cmsdk3.QuerySpec_maxage_get, _cmsdk3.QuerySpec_maxage_set)
    maxcount = property(_cmsdk3.QuerySpec_maxcount_get, _cmsdk3.QuerySpec_maxcount_set)
    context = property(_cmsdk3.QuerySpec_context_get, _cmsdk3.QuerySpec_context_set)
    binary = property(_cmsdk3.QuerySpec_binary_get, _cmsdk3.QuerySpec_binary_set)
    ipHost = property(_cmsdk3.QuerySpec_ipHost_get, _cmsdk3.QuerySpec_ipHost_set)
    ipPort = property(_cmsdk3.QuerySpec_ipPort_get, _cmsdk3.QuerySpec_ipPort_set)
    sourceName = property(_cmsdk3.QuerySpec_sourceName_get, _cmsdk3.QuerySpec_sourceName_set)
    hostName = property(_cmsdk3.QuerySpec_hostName_get, _cmsdk3.QuerySpec_hostName_set)
    name = property(_cmsdk3.QuerySpec_name_get, _cmsdk3.QuerySpec_name_set)
    key = property(_cmsdk3.QuerySpec_key_get, _cmsdk3.QuerySpec_key_set)
    value = property(_cmsdk3.QuerySpec_value_get, _cmsdk3.QuerySpec_value_set)
    type = property(_cmsdk3.QuerySpec_type_get, _cmsdk3.QuerySpec_type_set)
    subdir = property(_cmsdk3.QuerySpec_subdir_get, _cmsdk3.QuerySpec_subdir_set)
    ext = property(_cmsdk3.QuerySpec_ext_get, _cmsdk3.QuerySpec_ext_set)
    operation = property(_cmsdk3.QuerySpec_operation_get, _cmsdk3.QuerySpec_operation_set)

    def toXML(self):
        return _cmsdk3.QuerySpec_toXML(self)

    def fromXML(self, *args):
        return _cmsdk3.QuerySpec_fromXML(self, *args)

    def __init__(self):
        _cmsdk3.QuerySpec_swiginit(self, _cmsdk3.new_QuerySpec())
    __swig_destroy__ = _cmsdk3.delete_QuerySpec

# Register QuerySpec in _cmsdk3:
_cmsdk3.QuerySpec_swigregister(QuerySpec)
class RetrieveSpec(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    source = property(_cmsdk3.RetrieveSpec_source_get, _cmsdk3.RetrieveSpec_source_set)
    origin = property(_cmsdk3.RetrieveSpec_origin_get, _cmsdk3.RetrieveSpec_origin_set)
    maxage = property(_cmsdk3.RetrieveSpec_maxage_get, _cmsdk3.RetrieveSpec_maxage_set)
    maxcount = property(_cmsdk3.RetrieveSpec_maxcount_get, _cmsdk3.RetrieveSpec_maxcount_set)
    type = property(_cmsdk3.RetrieveSpec_type_get, _cmsdk3.RetrieveSpec_type_set)
    context = property(_cmsdk3.RetrieveSpec_context_get, _cmsdk3.RetrieveSpec_context_set)
    tag = property(_cmsdk3.RetrieveSpec_tag_get, _cmsdk3.RetrieveSpec_tag_set)
    name = property(_cmsdk3.RetrieveSpec_name_get, _cmsdk3.RetrieveSpec_name_set)
    key = property(_cmsdk3.RetrieveSpec_key_get, _cmsdk3.RetrieveSpec_key_set)
    keytype = property(_cmsdk3.RetrieveSpec_keytype_get, _cmsdk3.RetrieveSpec_keytype_set)
    _from = property(_cmsdk3.RetrieveSpec__from_get, _cmsdk3.RetrieveSpec__from_set)
    to = property(_cmsdk3.RetrieveSpec_to_get, _cmsdk3.RetrieveSpec_to_set)
    startTime = property(_cmsdk3.RetrieveSpec_startTime_get, _cmsdk3.RetrieveSpec_startTime_set)
    endTime = property(_cmsdk3.RetrieveSpec_endTime_get, _cmsdk3.RetrieveSpec_endTime_set)
    startInt = property(_cmsdk3.RetrieveSpec_startInt_get, _cmsdk3.RetrieveSpec_startInt_set)
    endInt = property(_cmsdk3.RetrieveSpec_endInt_get, _cmsdk3.RetrieveSpec_endInt_set)
    startFloat = property(_cmsdk3.RetrieveSpec_startFloat_get, _cmsdk3.RetrieveSpec_startFloat_set)
    endFloat = property(_cmsdk3.RetrieveSpec_endFloat_get, _cmsdk3.RetrieveSpec_endFloat_set)
    startString = property(_cmsdk3.RetrieveSpec_startString_get, _cmsdk3.RetrieveSpec_startString_set)
    endString = property(_cmsdk3.RetrieveSpec_endString_get, _cmsdk3.RetrieveSpec_endString_set)

    def toXML(self):
        return _cmsdk3.RetrieveSpec_toXML(self)

    def fromXML(self, *args):
        return _cmsdk3.RetrieveSpec_fromXML(self, *args)

    def __init__(self):
        _cmsdk3.RetrieveSpec_swiginit(self, _cmsdk3.new_RetrieveSpec())
    __swig_destroy__ = _cmsdk3.delete_RetrieveSpec

# Register RetrieveSpec in _cmsdk3:
_cmsdk3.RetrieveSpec_swigregister(RetrieveSpec)
MESSAGE_NON_GUARANTEED = _cmsdk3.MESSAGE_NON_GUARANTEED
class PostSpec(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    to = property(_cmsdk3.PostSpec_to_get, _cmsdk3.PostSpec_to_set)
    type = property(_cmsdk3.PostSpec_type_get, _cmsdk3.PostSpec_type_set)
    context = property(_cmsdk3.PostSpec_context_get, _cmsdk3.PostSpec_context_set)
    contextchange = property(_cmsdk3.PostSpec_contextchange_get, _cmsdk3.PostSpec_contextchange_set)
    tag = property(_cmsdk3.PostSpec_tag_get, _cmsdk3.PostSpec_tag_set)
    ttl = property(_cmsdk3.PostSpec_ttl_get, _cmsdk3.PostSpec_ttl_set)
    policy = property(_cmsdk3.PostSpec_policy_get, _cmsdk3.PostSpec_policy_set)
    contentCount = property(_cmsdk3.PostSpec_contentCount_get, _cmsdk3.PostSpec_contentCount_set)
    name = property(_cmsdk3.PostSpec_name_get, _cmsdk3.PostSpec_name_set)
    content = property(_cmsdk3.PostSpec_content_get, _cmsdk3.PostSpec_content_set)

    def toXML(self):
        return _cmsdk3.PostSpec_toXML(self)

    def fromXML(self, *args):
        return _cmsdk3.PostSpec_fromXML(self, *args)

    def contentFromXML(self, node):
        return _cmsdk3.PostSpec_contentFromXML(self, node)

    def addContentToMsg(self, msg):
        return _cmsdk3.PostSpec_addContentToMsg(self, msg)

    def __init__(self):
        _cmsdk3.PostSpec_swiginit(self, _cmsdk3.new_PostSpec())
    __swig_destroy__ = _cmsdk3.delete_PostSpec

# Register PostSpec in _cmsdk3:
_cmsdk3.PostSpec_swigregister(PostSpec)
class SignalSpec(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    type = property(_cmsdk3.SignalSpec_type_get, _cmsdk3.SignalSpec_type_set)
    name = property(_cmsdk3.SignalSpec_name_get, _cmsdk3.SignalSpec_name_set)

    def toXML(self):
        return _cmsdk3.SignalSpec_toXML(self)

    def fromXML(self, *args):
        return _cmsdk3.SignalSpec_fromXML(self, *args)

    def __init__(self):
        _cmsdk3.SignalSpec_swiginit(self, _cmsdk3.new_SignalSpec())
    __swig_destroy__ = _cmsdk3.delete_SignalSpec

# Register SignalSpec in _cmsdk3:
_cmsdk3.SignalSpec_swigregister(SignalSpec)
class TriggerSpec(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def reset(self, s=0):
        return _cmsdk3.TriggerSpec_reset(self, s)

    def getFilterSpec(self, n):
        return _cmsdk3.TriggerSpec_getFilterSpec(self, n)

    def getRetrieveSpec(self, *args):
        return _cmsdk3.TriggerSpec_getRetrieveSpec(self, *args)

    def getQuerySpec(self, *args):
        return _cmsdk3.TriggerSpec_getQuerySpec(self, *args)

    def getPostSpecs(self, *args):
        return _cmsdk3.TriggerSpec_getPostSpecs(self, *args)

    def getPostSpec(self, *args):
        return _cmsdk3.TriggerSpec_getPostSpec(self, *args)

    def getSignalSpec(self, *args):
        return _cmsdk3.TriggerSpec_getSignalSpec(self, *args)

    def toXML(self):
        return _cmsdk3.TriggerSpec_toXML(self)

    @staticmethod
    def UnitTest():
        return _cmsdk3.TriggerSpec_UnitTest()
    size = property(_cmsdk3.TriggerSpec_size_get, _cmsdk3.TriggerSpec_size_set)
    cid = property(_cmsdk3.TriggerSpec_cid_get, _cmsdk3.TriggerSpec_cid_set)
    id = property(_cmsdk3.TriggerSpec_id_get, _cmsdk3.TriggerSpec_id_set)
    componentID = property(_cmsdk3.TriggerSpec_componentID_get, _cmsdk3.TriggerSpec_componentID_set)
    interval = property(_cmsdk3.TriggerSpec_interval_get, _cmsdk3.TriggerSpec_interval_set)
    _from = property(_cmsdk3.TriggerSpec__from_get, _cmsdk3.TriggerSpec__from_set)
    to = property(_cmsdk3.TriggerSpec_to_get, _cmsdk3.TriggerSpec_to_set)
    tag = property(_cmsdk3.TriggerSpec_tag_get, _cmsdk3.TriggerSpec_tag_set)
    delay = property(_cmsdk3.TriggerSpec_delay_get, _cmsdk3.TriggerSpec_delay_set)
    grouppolicy = property(_cmsdk3.TriggerSpec_grouppolicy_get, _cmsdk3.TriggerSpec_grouppolicy_set)
    groupparam = property(_cmsdk3.TriggerSpec_groupparam_get, _cmsdk3.TriggerSpec_groupparam_set)
    crankID = property(_cmsdk3.TriggerSpec_crankID_get, _cmsdk3.TriggerSpec_crankID_set)
    group = property(_cmsdk3.TriggerSpec_group_get, _cmsdk3.TriggerSpec_group_set)
    type = property(_cmsdk3.TriggerSpec_type_get, _cmsdk3.TriggerSpec_type_set)
    context = property(_cmsdk3.TriggerSpec_context_get, _cmsdk3.TriggerSpec_context_set)
    triggerContext = property(_cmsdk3.TriggerSpec_triggerContext_get, _cmsdk3.TriggerSpec_triggerContext_set)
    name = property(_cmsdk3.TriggerSpec_name_get, _cmsdk3.TriggerSpec_name_set)
    filterCount = property(_cmsdk3.TriggerSpec_filterCount_get, _cmsdk3.TriggerSpec_filterCount_set)
    retrieveCount = property(_cmsdk3.TriggerSpec_retrieveCount_get, _cmsdk3.TriggerSpec_retrieveCount_set)
    queryCount = property(_cmsdk3.TriggerSpec_queryCount_get, _cmsdk3.TriggerSpec_queryCount_set)
    postCount = property(_cmsdk3.TriggerSpec_postCount_get, _cmsdk3.TriggerSpec_postCount_set)
    signalCount = property(_cmsdk3.TriggerSpec_signalCount_get, _cmsdk3.TriggerSpec_signalCount_set)

    def __init__(self):
        _cmsdk3.TriggerSpec_swiginit(self, _cmsdk3.new_TriggerSpec())
    __swig_destroy__ = _cmsdk3.delete_TriggerSpec

# Register TriggerSpec in _cmsdk3:
_cmsdk3.TriggerSpec_swigregister(TriggerSpec)
TRIGGERGROUP_COUNT_ALL = _cmsdk3.TRIGGERGROUP_COUNT_ALL
TRIGGERGROUP_DUP_LATEST = _cmsdk3.TRIGGERGROUP_DUP_LATEST
TRIGGERGROUP_DUP_KEEP = _cmsdk3.TRIGGERGROUP_DUP_KEEP
TRIGGERGROUP_ORDER_NONE = _cmsdk3.TRIGGERGROUP_ORDER_NONE
TRIGGERGROUP_ORDER_STRICT = _cmsdk3.TRIGGERGROUP_ORDER_STRICT
TRIGGERGROUP_MODE_NORMAL = _cmsdk3.TRIGGERGROUP_MODE_NORMAL
TRIGGERGROUP_MODE_SNAPSHOT = _cmsdk3.TRIGGERGROUP_MODE_SNAPSHOT
TRIGGERGROUP_ONTIMEOUT_FIRE = _cmsdk3.TRIGGERGROUP_ONTIMEOUT_FIRE
TRIGGERGROUP_ONTIMEOUT_DISCARD = _cmsdk3.TRIGGERGROUP_ONTIMEOUT_DISCARD
class GroupMemberSpec(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    name = property(_cmsdk3.GroupMemberSpec_name_get, _cmsdk3.GroupMemberSpec_name_set)
    maxage = property(_cmsdk3.GroupMemberSpec_maxage_get, _cmsdk3.GroupMemberSpec_maxage_set)
    optional = property(_cmsdk3.GroupMemberSpec_optional_get, _cmsdk3.GroupMemberSpec_optional_set)
    primary = property(_cmsdk3.GroupMemberSpec_primary_get, _cmsdk3.GroupMemberSpec_primary_set)
    pad = property(_cmsdk3.GroupMemberSpec_pad_get, _cmsdk3.GroupMemberSpec_pad_set)

    def __init__(self):
        _cmsdk3.GroupMemberSpec_swiginit(self, _cmsdk3.new_GroupMemberSpec())
    __swig_destroy__ = _cmsdk3.delete_GroupMemberSpec

# Register GroupMemberSpec in _cmsdk3:
_cmsdk3.GroupMemberSpec_swigregister(GroupMemberSpec)
class TriggerGroupSpec(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def reset(self, s=0):
        return _cmsdk3.TriggerGroupSpec_reset(self, s)

    def getMemberSpec(self, *args):
        return _cmsdk3.TriggerGroupSpec_getMemberSpec(self, *args)
    size = property(_cmsdk3.TriggerGroupSpec_size_get, _cmsdk3.TriggerGroupSpec_size_set)
    cid = property(_cmsdk3.TriggerGroupSpec_cid_get, _cmsdk3.TriggerGroupSpec_cid_set)
    id = property(_cmsdk3.TriggerGroupSpec_id_get, _cmsdk3.TriggerGroupSpec_id_set)
    componentID = property(_cmsdk3.TriggerGroupSpec_componentID_get, _cmsdk3.TriggerGroupSpec_componentID_set)
    crankID = property(_cmsdk3.TriggerGroupSpec_crankID_get, _cmsdk3.TriggerGroupSpec_crankID_set)
    name = property(_cmsdk3.TriggerGroupSpec_name_get, _cmsdk3.TriggerGroupSpec_name_set)
    maxage = property(_cmsdk3.TriggerGroupSpec_maxage_get, _cmsdk3.TriggerGroupSpec_maxage_set)
    count = property(_cmsdk3.TriggerGroupSpec_count_get, _cmsdk3.TriggerGroupSpec_count_set)
    minCount = property(_cmsdk3.TriggerGroupSpec_minCount_get, _cmsdk3.TriggerGroupSpec_minCount_set)
    within = property(_cmsdk3.TriggerGroupSpec_within_get, _cmsdk3.TriggerGroupSpec_within_set)
    timeWindow = property(_cmsdk3.TriggerGroupSpec_timeWindow_get, _cmsdk3.TriggerGroupSpec_timeWindow_set)
    debounce = property(_cmsdk3.TriggerGroupSpec_debounce_get, _cmsdk3.TriggerGroupSpec_debounce_set)
    timeout = property(_cmsdk3.TriggerGroupSpec_timeout_get, _cmsdk3.TriggerGroupSpec_timeout_set)
    hasTimeWindow = property(_cmsdk3.TriggerGroupSpec_hasTimeWindow_get, _cmsdk3.TriggerGroupSpec_hasTimeWindow_set)
    mode = property(_cmsdk3.TriggerGroupSpec_mode_get, _cmsdk3.TriggerGroupSpec_mode_set)
    slide = property(_cmsdk3.TriggerGroupSpec_slide_get, _cmsdk3.TriggerGroupSpec_slide_set)
    dup = property(_cmsdk3.TriggerGroupSpec_dup_get, _cmsdk3.TriggerGroupSpec_dup_set)
    order = property(_cmsdk3.TriggerGroupSpec_order_get, _cmsdk3.TriggerGroupSpec_order_set)
    ontimeout = property(_cmsdk3.TriggerGroupSpec_ontimeout_get, _cmsdk3.TriggerGroupSpec_ontimeout_set)
    memberCount = property(_cmsdk3.TriggerGroupSpec_memberCount_get, _cmsdk3.TriggerGroupSpec_memberCount_set)

    def __init__(self):
        _cmsdk3.TriggerGroupSpec_swiginit(self, _cmsdk3.new_TriggerGroupSpec())
    __swig_destroy__ = _cmsdk3.delete_TriggerGroupSpec

# Register TriggerGroupSpec in _cmsdk3:
_cmsdk3.TriggerGroupSpec_swigregister(TriggerGroupSpec)
class ComponentSetup(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def reset(self):
        return _cmsdk3.ComponentSetup_reset(self)
    size = property(_cmsdk3.ComponentSetup_size_get, _cmsdk3.ComponentSetup_size_set)
    cid = property(_cmsdk3.ComponentSetup_cid_get, _cmsdk3.ComponentSetup_cid_set)
    componentID = property(_cmsdk3.ComponentSetup_componentID_get, _cmsdk3.ComponentSetup_componentID_set)
    spaceID = property(_cmsdk3.ComponentSetup_spaceID_get, _cmsdk3.ComponentSetup_spaceID_set)
    tag = property(_cmsdk3.ComponentSetup_tag_get, _cmsdk3.ComponentSetup_tag_set)
    type = property(_cmsdk3.ComponentSetup_type_get, _cmsdk3.ComponentSetup_type_set)
    name = property(_cmsdk3.ComponentSetup_name_get, _cmsdk3.ComponentSetup_name_set)
    logfile = property(_cmsdk3.ComponentSetup_logfile_get, _cmsdk3.ComponentSetup_logfile_set)
    verbose = property(_cmsdk3.ComponentSetup_verbose_get, _cmsdk3.ComponentSetup_verbose_set)
    debug = property(_cmsdk3.ComponentSetup_debug_get, _cmsdk3.ComponentSetup_debug_set)
    migration = property(_cmsdk3.ComponentSetup_migration_get, _cmsdk3.ComponentSetup_migration_set)
    priority = property(_cmsdk3.ComponentSetup_priority_get, _cmsdk3.ComponentSetup_priority_set)
    function = property(_cmsdk3.ComponentSetup_function_get, _cmsdk3.ComponentSetup_function_set)
    root = property(_cmsdk3.ComponentSetup_root_get, _cmsdk3.ComponentSetup_root_set)
    rotate = property(_cmsdk3.ComponentSetup_rotate_get, _cmsdk3.ComponentSetup_rotate_set)
    consoleOutput = property(_cmsdk3.ComponentSetup_consoleOutput_get, _cmsdk3.ComponentSetup_consoleOutput_set)
    autoRestart = property(_cmsdk3.ComponentSetup_autoRestart_get, _cmsdk3.ComponentSetup_autoRestart_set)
    subdir = property(_cmsdk3.ComponentSetup_subdir_get, _cmsdk3.ComponentSetup_subdir_set)
    extension = property(_cmsdk3.ComponentSetup_extension_get, _cmsdk3.ComponentSetup_extension_set)
    base = property(_cmsdk3.ComponentSetup_base_get, _cmsdk3.ComponentSetup_base_set)
    keys = property(_cmsdk3.ComponentSetup_keys_get, _cmsdk3.ComponentSetup_keys_set)
    value = property(_cmsdk3.ComponentSetup_value_get, _cmsdk3.ComponentSetup_value_set)
    operation = property(_cmsdk3.ComponentSetup_operation_get, _cmsdk3.ComponentSetup_operation_set)
    timeout = property(_cmsdk3.ComponentSetup_timeout_get, _cmsdk3.ComponentSetup_timeout_set)
    maxcount = property(_cmsdk3.ComponentSetup_maxcount_get, _cmsdk3.ComponentSetup_maxcount_set)
    maxsize = property(_cmsdk3.ComponentSetup_maxsize_get, _cmsdk3.ComponentSetup_maxsize_set)
    interval = property(_cmsdk3.ComponentSetup_interval_get, _cmsdk3.ComponentSetup_interval_set)
    cmdline = property(_cmsdk3.ComponentSetup_cmdline_get, _cmsdk3.ComponentSetup_cmdline_set)
    setup = property(_cmsdk3.ComponentSetup_setup_get, _cmsdk3.ComponentSetup_setup_set)

    def __init__(self):
        _cmsdk3.ComponentSetup_swiginit(self, _cmsdk3.new_ComponentSetup())
    __swig_destroy__ = _cmsdk3.delete_ComponentSetup

# Register ComponentSetup in _cmsdk3:
_cmsdk3.ComponentSetup_swigregister(ComponentSetup)
class CustomView(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    compID = property(_cmsdk3.CustomView_compID_get, _cmsdk3.CustomView_compID_set)
    name = property(_cmsdk3.CustomView_name_get, _cmsdk3.CustomView_name_set)
    templateURL = property(_cmsdk3.CustomView_templateURL_get, _cmsdk3.CustomView_templateURL_set)

    def __init__(self):
        _cmsdk3.CustomView_swiginit(self, _cmsdk3.new_CustomView())
    __swig_destroy__ = _cmsdk3.delete_CustomView

# Register CustomView in _cmsdk3:
_cmsdk3.CustomView_swigregister(CustomView)
class ComponentSpec(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _cmsdk3.ComponentSpec_swiginit(self, _cmsdk3.new_ComponentSpec())
    __swig_destroy__ = _cmsdk3.delete_ComponentSpec
    setup = property(_cmsdk3.ComponentSpec_setup_get, _cmsdk3.ComponentSpec_setup_set)
    triggers = property(_cmsdk3.ComponentSpec_triggers_get, _cmsdk3.ComponentSpec_triggers_set)
    triggerGroups = property(_cmsdk3.ComponentSpec_triggerGroups_get, _cmsdk3.ComponentSpec_triggerGroups_set)
    customViews = property(_cmsdk3.ComponentSpec_customViews_get, _cmsdk3.ComponentSpec_customViews_set)

# Register ComponentSpec in _cmsdk3:
_cmsdk3.ComponentSpec_swigregister(ComponentSpec)
CRANKAPI_FAILED = _cmsdk3.CRANKAPI_FAILED
CRANKAPI_INUSE = _cmsdk3.CRANKAPI_INUSE
CRANKAPI_RUNNING = _cmsdk3.CRANKAPI_RUNNING
CRANKAPI_IDLE = _cmsdk3.CRANKAPI_IDLE
POST_FAILED = _cmsdk3.POST_FAILED
POST_NOSPEC = _cmsdk3.POST_NOSPEC
POST_OUTOFCONTEXT = _cmsdk3.POST_OUTOFCONTEXT
QUERY_FAILED = _cmsdk3.QUERY_FAILED
QUERY_TIMEOUT = _cmsdk3.QUERY_TIMEOUT
QUERY_NAME_UNKNOWN = _cmsdk3.QUERY_NAME_UNKNOWN
QUERY_COMPONENT_UNKNOWN = _cmsdk3.QUERY_COMPONENT_UNKNOWN
QUERY_QUERYFAILED = _cmsdk3.QUERY_QUERYFAILED
QUERY_SUCCESS = _cmsdk3.QUERY_SUCCESS
QUERY_NOT_AVAILABLE = _cmsdk3.QUERY_NOT_AVAILABLE
QUERY_NOT_REACHABLE = _cmsdk3.QUERY_NOT_REACHABLE
LOG_COMPONENT = _cmsdk3.LOG_COMPONENT
class PsyAPI(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    CTRL_SYSTEM_READY = property(_cmsdk3.PsyAPI_CTRL_SYSTEM_READY_get, _cmsdk3.PsyAPI_CTRL_SYSTEM_READY_set)
    CTRL_PROCESS_INITIALISE = property(_cmsdk3.PsyAPI_CTRL_PROCESS_INITIALISE_get, _cmsdk3.PsyAPI_CTRL_PROCESS_INITIALISE_set)
    CTRL_PROCESS_GREETING = property(_cmsdk3.PsyAPI_CTRL_PROCESS_GREETING_get, _cmsdk3.PsyAPI_CTRL_PROCESS_GREETING_set)
    CTRL_PROCESS_SHUTDOWN = property(_cmsdk3.PsyAPI_CTRL_PROCESS_SHUTDOWN_get, _cmsdk3.PsyAPI_CTRL_PROCESS_SHUTDOWN_set)
    CTRL_CONTEXT_CHANGE = property(_cmsdk3.PsyAPI_CTRL_CONTEXT_CHANGE_get, _cmsdk3.PsyAPI_CTRL_CONTEXT_CHANGE_set)
    CTRL_SYSTEM_SHUTDOWN = property(_cmsdk3.PsyAPI_CTRL_SYSTEM_SHUTDOWN_get, _cmsdk3.PsyAPI_CTRL_SYSTEM_SHUTDOWN_set)
    CTRL_SYSTEM_SHUTTINGDOWN = property(_cmsdk3.PsyAPI_CTRL_SYSTEM_SHUTTINGDOWN_get, _cmsdk3.PsyAPI_CTRL_SYSTEM_SHUTTINGDOWN_set)
    CTRL_TRIGGER = property(_cmsdk3.PsyAPI_CTRL_TRIGGER_get, _cmsdk3.PsyAPI_CTRL_TRIGGER_set)
    CTRL_TRIGGER_GROUP = property(_cmsdk3.PsyAPI_CTRL_TRIGGER_GROUP_get, _cmsdk3.PsyAPI_CTRL_TRIGGER_GROUP_set)
    CTRL_QUERY = property(_cmsdk3.PsyAPI_CTRL_QUERY_get, _cmsdk3.PsyAPI_CTRL_QUERY_set)
    CTRL_QUERY_REPLY = property(_cmsdk3.PsyAPI_CTRL_QUERY_REPLY_get, _cmsdk3.PsyAPI_CTRL_QUERY_REPLY_set)
    CTRL_PULLCOMPONENTDATA = property(_cmsdk3.PsyAPI_CTRL_PULLCOMPONENTDATA_get, _cmsdk3.PsyAPI_CTRL_PULLCOMPONENTDATA_set)
    CTRL_CREATECUSTOMPAGE = property(_cmsdk3.PsyAPI_CTRL_CREATECUSTOMPAGE_get, _cmsdk3.PsyAPI_CTRL_CREATECUSTOMPAGE_set)
    CTRL_ADDSUBSCRIPTION = property(_cmsdk3.PsyAPI_CTRL_ADDSUBSCRIPTION_get, _cmsdk3.PsyAPI_CTRL_ADDSUBSCRIPTION_set)
    CTRL_RETRIEVESYSTEMIDS = property(_cmsdk3.PsyAPI_CTRL_RETRIEVESYSTEMIDS_get, _cmsdk3.PsyAPI_CTRL_RETRIEVESYSTEMIDS_set)
    CTRL_INTERSYSTEM_QUERY = property(_cmsdk3.PsyAPI_CTRL_INTERSYSTEM_QUERY_get, _cmsdk3.PsyAPI_CTRL_INTERSYSTEM_QUERY_set)
    CTRL_INTERSYSTEM_QUERY_REPLY = property(_cmsdk3.PsyAPI_CTRL_INTERSYSTEM_QUERY_REPLY_get, _cmsdk3.PsyAPI_CTRL_INTERSYSTEM_QUERY_REPLY_set)

    def __init__(self, space):
        _cmsdk3.PsyAPI_swiginit(self, _cmsdk3.new_PsyAPI(space))
    __swig_destroy__ = _cmsdk3.delete_PsyAPI

    @staticmethod
    def fromPython(ptr):
        return _cmsdk3.PsyAPI_fromPython(ptr)

    @staticmethod
    def fromPythonAddressOf(ptr):
        return _cmsdk3.PsyAPI_fromPythonAddressOf(ptr)

    def setAutoDelete(self, autodel):
        return _cmsdk3.PsyAPI_setAutoDelete(self, autodel)

    def isRunning(self):
        return _cmsdk3.PsyAPI_isRunning(self)

    def shouldContinue(self):
        return _cmsdk3.PsyAPI_shouldContinue(self)

    def getCommandlineBasedir(self):
        return _cmsdk3.PsyAPI_getCommandlineBasedir(self)

    def setCommandlineBasedir(self, cmdlineBasedir):
        return _cmsdk3.PsyAPI_setCommandlineBasedir(self, cmdlineBasedir)

    def getModuleName(self, *args):
        return _cmsdk3.PsyAPI_getModuleName(self, *args)

    def getOtherModuleName(self, id):
        return _cmsdk3.PsyAPI_getOtherModuleName(self, id)

    def getInputQueueSize(self):
        return _cmsdk3.PsyAPI_getInputQueueSize(self)

    def typeToText(self, type):
        return _cmsdk3.PsyAPI_typeToText(self, type)

    def contextToText(self, context):
        return _cmsdk3.PsyAPI_contextToText(self, context)

    def getCurrentScriptLanguage(self, *args):
        return _cmsdk3.PsyAPI_getCurrentScriptLanguage(self, *args)

    def getCurrentScript(self, *args):
        return _cmsdk3.PsyAPI_getCurrentScript(self, *args)

    def getCurrentScriptFilename(self, *args):
        return _cmsdk3.PsyAPI_getCurrentScriptFilename(self, *args)

    def getCurrentPostNames(self):
        return _cmsdk3.PsyAPI_getCurrentPostNames(self)

    def hasCurrentSignalName(self, name):
        return _cmsdk3.PsyAPI_hasCurrentSignalName(self, name)

    def hasCurrentQueryName(self, name):
        return _cmsdk3.PsyAPI_hasCurrentQueryName(self, name)

    def hasCurrentRetrieveName(self, name):
        return _cmsdk3.PsyAPI_hasCurrentRetrieveName(self, name)

    def hasCurrentPostName(self, name):
        return _cmsdk3.PsyAPI_hasCurrentPostName(self, name)

    def waitForNewMessageGroup(self, ms, groupName):
        return _cmsdk3.PsyAPI_waitForNewMessageGroup(self, ms, groupName)

    def getCurrentTriggerName(self):
        return _cmsdk3.PsyAPI_getCurrentTriggerName(self)

    def getCurrentTriggerContext(self):
        return _cmsdk3.PsyAPI_getCurrentTriggerContext(self)

    def waitForNewMessage(self, *args):
        return _cmsdk3.PsyAPI_waitForNewMessage(self, *args)

    def getCurrentMessageReceiveTime(self):
        return _cmsdk3.PsyAPI_getCurrentMessageReceiveTime(self)

    def postOutputMessage(self, *args):
        return _cmsdk3.PsyAPI_postOutputMessage(self, *args)

    def emitSignal(self, name, msg=None):
        return _cmsdk3.PsyAPI_emitSignal(self, name, msg)

    def waitForSignal(self, name, timeout, lastReceivedTime=0):
        return _cmsdk3.PsyAPI_waitForSignal(self, name, timeout, lastReceivedTime)

    def retrieveAllSystemIDs(self):
        return _cmsdk3.PsyAPI_retrieveAllSystemIDs(self)

    def addSubscription(self, xml):
        return _cmsdk3.PsyAPI_addSubscription(self, xml)

    def addPsyProbeCustomView(self, name, templateURL):
        return _cmsdk3.PsyAPI_addPsyProbeCustomView(self, name, templateURL)

    def removePsyProbeCustomView(self, name):
        return _cmsdk3.PsyAPI_removePsyProbeCustomView(self, name)

    def setPrivateData(self, name, data, size, mimetype=None):
        return _cmsdk3.PsyAPI_setPrivateData(self, name, data, size, mimetype)

    def getPrivateDataSize(self, name):
        return _cmsdk3.PsyAPI_getPrivateDataSize(self, name)

    def getPrivateDataCopy(self, name, size):
        return _cmsdk3.PsyAPI_getPrivateDataCopy(self, name, size)

    def getPrivateData(self, name, data, maxSize):
        return _cmsdk3.PsyAPI_getPrivateData(self, name, data, maxSize)

    def deletePrivateData(self, name):
        return _cmsdk3.PsyAPI_deletePrivateData(self, name)

    def createParameter(self, *args):
        return _cmsdk3.PsyAPI_createParameter(self, *args)

    def hasParameter(self, name):
        return _cmsdk3.PsyAPI_hasParameter(self, name)

    def deleteParameter(self, name):
        return _cmsdk3.PsyAPI_deleteParameter(self, name)

    def getParameterDataType(self, name):
        return _cmsdk3.PsyAPI_getParameterDataType(self, name)

    def getParameterValueSize(self, name):
        return _cmsdk3.PsyAPI_getParameterValueSize(self, name)

    def getParameterString(self, name):
        return _cmsdk3.PsyAPI_getParameterString(self, name)

    def getParameterAsBool(self, name):
        return _cmsdk3.PsyAPI_getParameterAsBool(self, name)

    def getParameterInt(self, name):
        return _cmsdk3.PsyAPI_getParameterInt(self, name)

    def getParameterFloat(self, name):
        return _cmsdk3.PsyAPI_getParameterFloat(self, name)

    def getParameter(self, *args):
        return _cmsdk3.PsyAPI_getParameter(self, *args)

    def setParameter(self, *args):
        return _cmsdk3.PsyAPI_setParameter(self, *args)

    def resetParameter(self, name):
        return _cmsdk3.PsyAPI_resetParameter(self, name)

    def tweakParameter(self, name, tweak):
        return _cmsdk3.PsyAPI_tweakParameter(self, name, tweak)

    def retrieveTimeParam(self, result, name, startTime, endTime=0, maxcount=0, maxage=0, timeout=5000):
        return _cmsdk3.PsyAPI_retrieveTimeParam(self, result, name, startTime, endTime, maxcount, maxage, timeout)

    def retrieveStringParam(self, result, name, startString, endString=None, maxcount=0, maxage=0, timeout=5000):
        return _cmsdk3.PsyAPI_retrieveStringParam(self, result, name, startString, endString, maxcount, maxage, timeout)

    def retrieveIntegerParam(self, *args):
        return _cmsdk3.PsyAPI_retrieveIntegerParam(self, *args)

    def retrieveFloatParam(self, result, name, startFloat, endFloat=0.123456789123456789, maxcount=0, maxage=0, timeout=5000):
        return _cmsdk3.PsyAPI_retrieveFloatParam(self, result, name, startFloat, endFloat, maxcount, maxage, timeout)

    def retrieve(self, *args):
        return _cmsdk3.PsyAPI_retrieve(self, *args)

    def queryCatalog(self, *args):
        return _cmsdk3.PsyAPI_queryCatalog(self, *args)

    def queryRemoteCatalog(self, *args):
        return _cmsdk3.PsyAPI_queryRemoteCatalog(self, *args)

    def queryReply(self, *args):
        return _cmsdk3.PsyAPI_queryReply(self, *args)

    def logPrint(self, level, formatstring):
        return _cmsdk3.PsyAPI_logPrint(self, level, formatstring)

# Register PsyAPI in _cmsdk3:
_cmsdk3.PsyAPI_swigregister(PsyAPI)
LOG_SPACE = _cmsdk3.LOG_SPACE
class TimeQueueSchedule(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, interval, start=0, end=0):
        _cmsdk3.TimeQueueSchedule_swiginit(self, _cmsdk3.new_TimeQueueSchedule(interval, start, end))
    __swig_destroy__ = _cmsdk3.delete_TimeQueueSchedule
    id = property(_cmsdk3.TimeQueueSchedule_id_get, _cmsdk3.TimeQueueSchedule_id_set)
    nextTrigger = property(_cmsdk3.TimeQueueSchedule_nextTrigger_get, _cmsdk3.TimeQueueSchedule_nextTrigger_set)
    interval = property(_cmsdk3.TimeQueueSchedule_interval_get, _cmsdk3.TimeQueueSchedule_interval_set)
    start = property(_cmsdk3.TimeQueueSchedule_start_get, _cmsdk3.TimeQueueSchedule_start_set)
    end = property(_cmsdk3.TimeQueueSchedule_end_get, _cmsdk3.TimeQueueSchedule_end_set)
    msgType = property(_cmsdk3.TimeQueueSchedule_msgType_get, _cmsdk3.TimeQueueSchedule_msgType_set)
    msgTag = property(_cmsdk3.TimeQueueSchedule_msgTag_get, _cmsdk3.TimeQueueSchedule_msgTag_set)

# Register TimeQueueSchedule in _cmsdk3:
_cmsdk3.TimeQueueSchedule_swigregister(TimeQueueSchedule)
class TimeQueue(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _cmsdk3.TimeQueue_swiginit(self, _cmsdk3.new_TimeQueue())
    __swig_destroy__ = _cmsdk3.delete_TimeQueue

    def addSchedule(self, schedule):
        return _cmsdk3.TimeQueue_addSchedule(self, schedule)

    def removeSchedule(self, id):
        return _cmsdk3.TimeQueue_removeSchedule(self, id)

    def waitForNextEvent(self, ms):
        return _cmsdk3.TimeQueue_waitForNextEvent(self, ms)

# Register TimeQueue in _cmsdk3:
_cmsdk3.TimeQueue_swigregister(TimeQueue)
class SignalStruct(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    lastSignalMsg = property(_cmsdk3.SignalStruct_lastSignalMsg_get, _cmsdk3.SignalStruct_lastSignalMsg_set)
    event = property(_cmsdk3.SignalStruct_event_get, _cmsdk3.SignalStruct_event_set)
    mutex = property(_cmsdk3.SignalStruct_mutex_get, _cmsdk3.SignalStruct_mutex_set)

    def __init__(self):
        _cmsdk3.SignalStruct_swiginit(self, _cmsdk3.new_SignalStruct())
    __swig_destroy__ = _cmsdk3.delete_SignalStruct

# Register SignalStruct in _cmsdk3:
_cmsdk3.SignalStruct_swigregister(SignalStruct)
PROCMESSAGE = _cmsdk3.PROCMESSAGE
PROCSIGNAL = _cmsdk3.PROCSIGNAL
PROCREQUEST = _cmsdk3.PROCREQUEST
class PsySpace(LogReceiver):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, name=None, isAdHoc=True, procID=0, isLocal=False):
        _cmsdk3.PsySpace_swiginit(self, _cmsdk3.new_PsySpace(name, isAdHoc, procID, isLocal))
    __swig_destroy__ = _cmsdk3.delete_PsySpace

    def connect(self, systemID, isMaster=False, cmdline=None):
        return _cmsdk3.PsySpace_connect(self, systemID, isMaster, cmdline)

    def isConnected(self, timeoutMS=5000):
        return _cmsdk3.PsySpace_isConnected(self, timeoutMS)

    def reset(self):
        return _cmsdk3.PsySpace_reset(self)

    def start(self, threadCount=5):
        return _cmsdk3.PsySpace_start(self, threadCount)

    def shutdown(self):
        return _cmsdk3.PsySpace_shutdown(self)

    def hasShutdown(self):
        return _cmsdk3.PsySpace_hasShutdown(self)

    def getID(self):
        return _cmsdk3.PsySpace_getID(self)

    def postMessage(self, msg):
        return _cmsdk3.PsySpace_postMessage(self, msg)

    def emitSignal(self, type, msg):
        return _cmsdk3.PsySpace_emitSignal(self, type, msg)

    def waitForSignal(self, type, timeout, lastReceivedTime=0):
        return _cmsdk3.PsySpace_waitForSignal(self, type, timeout, lastReceivedTime)

    def query(self, msg, result, timeout):
        return _cmsdk3.PsySpace_query(self, msg, result, timeout)

    def queryReply(self, id, status, result):
        return _cmsdk3.PsySpace_queryReply(self, id, status, result)

    def getComponentID(self, name):
        return _cmsdk3.PsySpace_getComponentID(self, name)

    def getCrankAPI(self, name):
        return _cmsdk3.PsySpace_getCrankAPI(self, name)

    def registerCrankCallback(self, name, func):
        return _cmsdk3.PsySpace_registerCrankCallback(self, name, func)

    def addPsyProbeCustomView(self, compID, name, templateURL):
        return _cmsdk3.PsySpace_addPsyProbeCustomView(self, compID, name, templateURL)

    def logEntry(self, entry):
        return _cmsdk3.PsySpace_logEntry(self, entry)
    manager = property(_cmsdk3.PsySpace_manager_get, _cmsdk3.PsySpace_manager_set)

# Register PsySpace in _cmsdk3:
_cmsdk3.PsySpace_swigregister(PsySpace)

def PsySpaceRun(arg):
    return _cmsdk3.PsySpaceRun(arg)

def PsySpacePoolRun(arg):
    return _cmsdk3.PsySpacePoolRun(arg)

def PsySpaceContinuousRun(arg):
    return _cmsdk3.PsySpaceContinuousRun(arg)

class ReplayIndexEntry(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    cid = property(_cmsdk3.ReplayIndexEntry_cid_get, _cmsdk3.ReplayIndexEntry_cid_set)
    serial = property(_cmsdk3.ReplayIndexEntry_serial_get, _cmsdk3.ReplayIndexEntry_serial_set)
    msgTime = property(_cmsdk3.ReplayIndexEntry_msgTime_get, _cmsdk3.ReplayIndexEntry_msgTime_set)
    size = property(_cmsdk3.ReplayIndexEntry_size_get, _cmsdk3.ReplayIndexEntry_size_set)
    msgTriggerName = property(_cmsdk3.ReplayIndexEntry_msgTriggerName_get, _cmsdk3.ReplayIndexEntry_msgTriggerName_set)
    msg = property(_cmsdk3.ReplayIndexEntry_msg_get, _cmsdk3.ReplayIndexEntry_msg_set)

    def reset(self):
        return _cmsdk3.ReplayIndexEntry_reset(self)

    def isValid(self):
        return _cmsdk3.ReplayIndexEntry_isValid(self)

    def __init__(self):
        _cmsdk3.ReplayIndexEntry_swiginit(self, _cmsdk3.new_ReplayIndexEntry())
    __swig_destroy__ = _cmsdk3.delete_ReplayIndexEntry

# Register ReplayIndexEntry in _cmsdk3:
_cmsdk3.ReplayIndexEntry_swigregister(ReplayIndexEntry)
class MessagePlayer(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self):
        _cmsdk3.MessagePlayer_swiginit(self, _cmsdk3.new_MessagePlayer())
    __swig_destroy__ = _cmsdk3.delete_MessagePlayer

    def initRead(self, *args):
        return _cmsdk3.MessagePlayer_initRead(self, *args)

    def initWrite(self, root, maxCount, maxSize):
        return _cmsdk3.MessagePlayer_initWrite(self, root, maxCount, maxSize)

    def setSubTypeList(self, subtypes):
        return _cmsdk3.MessagePlayer_setSubTypeList(self, subtypes)

    def setSubContextList(self, subcontexts):
        return _cmsdk3.MessagePlayer_setSubContextList(self, subcontexts)

    def setComponentNameList(self, names):
        return _cmsdk3.MessagePlayer_setComponentNameList(self, names)

    def writeMetadata(self):
        return _cmsdk3.MessagePlayer_writeMetadata(self)

    def readMetadata(self):
        return _cmsdk3.MessagePlayer_readMetadata(self)

    def setSystemIDs(self, msg):
        return _cmsdk3.MessagePlayer_setSystemIDs(self, msg)

    def exportToCSVFile(self, filename, separator=None):
        return _cmsdk3.MessagePlayer_exportToCSVFile(self, filename, separator)

    def exportToCSV(self, separator=None):
        return _cmsdk3.MessagePlayer_exportToCSV(self, separator)

    def addMessage(self, name, msg):
        return _cmsdk3.MessagePlayer_addMessage(self, name, msg)

    def waitForNextMessage(self, *args):
        return _cmsdk3.MessagePlayer_waitForNextMessage(self, *args)

    def getCurrentTriggerName(self):
        return _cmsdk3.MessagePlayer_getCurrentTriggerName(self)

    def flushToDisk(self):
        return _cmsdk3.MessagePlayer_flushToDisk(self)

    def printAllString(self, format=None):
        return _cmsdk3.MessagePlayer_printAllString(self, format)

# Register MessagePlayer in _cmsdk3:
_cmsdk3.MessagePlayer_swigregister(MessagePlayer)
class StringVector(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def iterator(self):
        return _cmsdk3.StringVector_iterator(self)
    def __iter__(self):
        return self.iterator()

    def __nonzero__(self):
        return _cmsdk3.StringVector___nonzero__(self)

    def __bool__(self):
        return _cmsdk3.StringVector___bool__(self)

    def __len__(self):
        return _cmsdk3.StringVector___len__(self)

    def __getslice__(self, i, j):
        return _cmsdk3.StringVector___getslice__(self, i, j)

    def __setslice__(self, *args):
        return _cmsdk3.StringVector___setslice__(self, *args)

    def __delslice__(self, i, j):
        return _cmsdk3.StringVector___delslice__(self, i, j)

    def __delitem__(self, *args):
        return _cmsdk3.StringVector___delitem__(self, *args)

    def __getitem__(self, *args):
        return _cmsdk3.StringVector___getitem__(self, *args)

    def __setitem__(self, *args):
        return _cmsdk3.StringVector___setitem__(self, *args)

    def pop(self):
        return _cmsdk3.StringVector_pop(self)

    def append(self, x):
        return _cmsdk3.StringVector_append(self, x)

    def empty(self):
        return _cmsdk3.StringVector_empty(self)

    def size(self):
        return _cmsdk3.StringVector_size(self)

    def swap(self, v):
        return _cmsdk3.StringVector_swap(self, v)

    def begin(self):
        return _cmsdk3.StringVector_begin(self)

    def end(self):
        return _cmsdk3.StringVector_end(self)

    def rbegin(self):
        return _cmsdk3.StringVector_rbegin(self)

    def rend(self):
        return _cmsdk3.StringVector_rend(self)

    def clear(self):
        return _cmsdk3.StringVector_clear(self)

    def get_allocator(self):
        return _cmsdk3.StringVector_get_allocator(self)

    def pop_back(self):
        return _cmsdk3.StringVector_pop_back(self)

    def erase(self, *args):
        return _cmsdk3.StringVector_erase(self, *args)

    def __init__(self, *args):
        _cmsdk3.StringVector_swiginit(self, _cmsdk3.new_StringVector(*args))

    def push_back(self, x):
        return _cmsdk3.StringVector_push_back(self, x)

    def front(self):
        return _cmsdk3.StringVector_front(self)

    def back(self):
        return _cmsdk3.StringVector_back(self)

    def assign(self, n, x):
        return _cmsdk3.StringVector_assign(self, n, x)

    def resize(self, *args):
        return _cmsdk3.StringVector_resize(self, *args)

    def insert(self, *args):
        return _cmsdk3.StringVector_insert(self, *args)

    def reserve(self, n):
        return _cmsdk3.StringVector_reserve(self, n)

    def capacity(self):
        return _cmsdk3.StringVector_capacity(self)
    __swig_destroy__ = _cmsdk3.delete_StringVector

# Register StringVector in _cmsdk3:
_cmsdk3.StringVector_swigregister(StringVector)
class IntVector(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def iterator(self):
        return _cmsdk3.IntVector_iterator(self)
    def __iter__(self):
        return self.iterator()

    def __nonzero__(self):
        return _cmsdk3.IntVector___nonzero__(self)

    def __bool__(self):
        return _cmsdk3.IntVector___bool__(self)

    def __len__(self):
        return _cmsdk3.IntVector___len__(self)

    def __getslice__(self, i, j):
        return _cmsdk3.IntVector___getslice__(self, i, j)

    def __setslice__(self, *args):
        return _cmsdk3.IntVector___setslice__(self, *args)

    def __delslice__(self, i, j):
        return _cmsdk3.IntVector___delslice__(self, i, j)

    def __delitem__(self, *args):
        return _cmsdk3.IntVector___delitem__(self, *args)

    def __getitem__(self, *args):
        return _cmsdk3.IntVector___getitem__(self, *args)

    def __setitem__(self, *args):
        return _cmsdk3.IntVector___setitem__(self, *args)

    def pop(self):
        return _cmsdk3.IntVector_pop(self)

    def append(self, x):
        return _cmsdk3.IntVector_append(self, x)

    def empty(self):
        return _cmsdk3.IntVector_empty(self)

    def size(self):
        return _cmsdk3.IntVector_size(self)

    def swap(self, v):
        return _cmsdk3.IntVector_swap(self, v)

    def begin(self):
        return _cmsdk3.IntVector_begin(self)

    def end(self):
        return _cmsdk3.IntVector_end(self)

    def rbegin(self):
        return _cmsdk3.IntVector_rbegin(self)

    def rend(self):
        return _cmsdk3.IntVector_rend(self)

    def clear(self):
        return _cmsdk3.IntVector_clear(self)

    def get_allocator(self):
        return _cmsdk3.IntVector_get_allocator(self)

    def pop_back(self):
        return _cmsdk3.IntVector_pop_back(self)

    def erase(self, *args):
        return _cmsdk3.IntVector_erase(self, *args)

    def __init__(self, *args):
        _cmsdk3.IntVector_swiginit(self, _cmsdk3.new_IntVector(*args))

    def push_back(self, x):
        return _cmsdk3.IntVector_push_back(self, x)

    def front(self):
        return _cmsdk3.IntVector_front(self)

    def back(self):
        return _cmsdk3.IntVector_back(self)

    def assign(self, n, x):
        return _cmsdk3.IntVector_assign(self, n, x)

    def resize(self, *args):
        return _cmsdk3.IntVector_resize(self, *args)

    def insert(self, *args):
        return _cmsdk3.IntVector_insert(self, *args)

    def reserve(self, n):
        return _cmsdk3.IntVector_reserve(self, n)

    def capacity(self):
        return _cmsdk3.IntVector_capacity(self)
    __swig_destroy__ = _cmsdk3.delete_IntVector

# Register IntVector in _cmsdk3:
_cmsdk3.IntVector_swigregister(IntVector)
class FloatVector(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def iterator(self):
        return _cmsdk3.FloatVector_iterator(self)
    def __iter__(self):
        return self.iterator()

    def __nonzero__(self):
        return _cmsdk3.FloatVector___nonzero__(self)

    def __bool__(self):
        return _cmsdk3.FloatVector___bool__(self)

    def __len__(self):
        return _cmsdk3.FloatVector___len__(self)

    def __getslice__(self, i, j):
        return _cmsdk3.FloatVector___getslice__(self, i, j)

    def __setslice__(self, *args):
        return _cmsdk3.FloatVector___setslice__(self, *args)

    def __delslice__(self, i, j):
        return _cmsdk3.FloatVector___delslice__(self, i, j)

    def __delitem__(self, *args):
        return _cmsdk3.FloatVector___delitem__(self, *args)

    def __getitem__(self, *args):
        return _cmsdk3.FloatVector___getitem__(self, *args)

    def __setitem__(self, *args):
        return _cmsdk3.FloatVector___setitem__(self, *args)

    def pop(self):
        return _cmsdk3.FloatVector_pop(self)

    def append(self, x):
        return _cmsdk3.FloatVector_append(self, x)

    def empty(self):
        return _cmsdk3.FloatVector_empty(self)

    def size(self):
        return _cmsdk3.FloatVector_size(self)

    def swap(self, v):
        return _cmsdk3.FloatVector_swap(self, v)

    def begin(self):
        return _cmsdk3.FloatVector_begin(self)

    def end(self):
        return _cmsdk3.FloatVector_end(self)

    def rbegin(self):
        return _cmsdk3.FloatVector_rbegin(self)

    def rend(self):
        return _cmsdk3.FloatVector_rend(self)

    def clear(self):
        return _cmsdk3.FloatVector_clear(self)

    def get_allocator(self):
        return _cmsdk3.FloatVector_get_allocator(self)

    def pop_back(self):
        return _cmsdk3.FloatVector_pop_back(self)

    def erase(self, *args):
        return _cmsdk3.FloatVector_erase(self, *args)

    def __init__(self, *args):
        _cmsdk3.FloatVector_swiginit(self, _cmsdk3.new_FloatVector(*args))

    def push_back(self, x):
        return _cmsdk3.FloatVector_push_back(self, x)

    def front(self):
        return _cmsdk3.FloatVector_front(self)

    def back(self):
        return _cmsdk3.FloatVector_back(self)

    def assign(self, n, x):
        return _cmsdk3.FloatVector_assign(self, n, x)

    def resize(self, *args):
        return _cmsdk3.FloatVector_resize(self, *args)

    def insert(self, *args):
        return _cmsdk3.FloatVector_insert(self, *args)

    def reserve(self, n):
        return _cmsdk3.FloatVector_reserve(self, n)

    def capacity(self):
        return _cmsdk3.FloatVector_capacity(self)
    __swig_destroy__ = _cmsdk3.delete_FloatVector

# Register FloatVector in _cmsdk3:
_cmsdk3.FloatVector_swigregister(FloatVector)

