
'''
THIS FILE IS AUTOGENERATED, DO NOT EDIT!!!
'''

from datetime import datetime
import uuid

from opcua import ua

# Depending on Python Version might not required
from enum import IntEnum

class CRCL_StopConditionEnumDataType(IntEnum):

    '''
    CRCL_StopConditionEnumDataType EnumInt autogenerated from xml
    '''

    IMMEDIATE = 0
    FAST = 1
    NORMAL = 2


class CRCL_AngleUnitEnumDataType(IntEnum):

    '''
    CRCL_AngleUnitEnumDataType EnumInt autogenerated from xml
    '''

    DEGREE = 0
    RADIAN = 1


class CRCL_ForceUnitEnumDataType(IntEnum):

    '''
    CRCL_ForceUnitEnumDataType EnumInt autogenerated from xml
    '''

    NEWTON = 0
    POUND = 1
    OUNCE = 2


class CRCL_LengthUnitEnumDataType(IntEnum):

    '''
    CRCL_LengthUnitEnumDataType EnumInt autogenerated from xml
    '''

    METER = 0
    MILLIMETER = 1
    INCH = 2


class CRCL_TorqueUnitEnumDataType(IntEnum):

    '''
    CRCL_TorqueUnitEnumDataType EnumInt autogenerated from xml
    '''

    NEWTONMETER = 0
    FOOTPOUND = 1


class CRCL_GuardLimitEnumDataType(IntEnum):

    '''
    CRCL_GuardLimitEnumDataType EnumInt autogenerated from xml
    '''

    OVER_MAX = 0
    UNDER_MIN = 1
    INCREASE_OVER_LIMIT = 2
    DECREASE_BEYOND_LIMIT = 3


class CRCL_CommandStateEnumDataType(IntEnum):

    '''
    CRCL_CommandStateEnumDataType EnumInt autogenerated from xml
    '''

    CRCL_DONE = 0
    CRCL_ERROR = 1
    CRCL_WORKING = 2
    CRCL_READY = 3


class CRCL_FractionDataType(object):

    '''
    CRCL_FractionDataType structure autogenerated from xml
    '''

    ua_types = [
        ('fraction', 'Double'),
        ('fractionMax', 'Double'),
        ('fractionMin', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.fraction = 0
        self.fractionMax = 0
        self.fractionMin = 0


class CRCL_DataThingDataType(object):

    '''
    CRCL_DataThingDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None


class CRCL_PointDataType(object):

    '''
    CRCL_PointDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('x', 'Double'),
        ('y', 'Double'),
        ('z', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.x = 0
        self.y = 0
        self.z = 0


class CRCL_VectorDataType(object):

    '''
    CRCL_VectorDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('i', 'Double'),
        ('j', 'Double'),
        ('k', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.i = 0
        self.j = 0
        self.k = 0


class CRCL_PoseDataType(object):

    '''
    CRCL_PoseDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('point', 'CRCL_PointDataType'),
        ('xAxis', 'CRCL_VectorDataType'),
        ('zAxis', 'CRCL_VectorDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.point = ua.CRCL_PointDataType()
        self.xAxis = ua.CRCL_VectorDataType()
        self.zAxis = ua.CRCL_VectorDataType()


class CRCL_TwistDataType(object):

    '''
    CRCL_TwistDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('linearVelocity', 'CRCL_VectorDataType'),
        ('angularVelocity', 'CRCL_VectorDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.linearVelocity = ua.CRCL_VectorDataType()
        self.angularVelocity = ua.CRCL_VectorDataType()


class CRCL_WrenchDataType(object):

    '''
    CRCL_WrenchDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('force', 'CRCL_VectorDataType'),
        ('moment', 'CRCL_VectorDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.force = ua.CRCL_VectorDataType()
        self.moment = ua.CRCL_VectorDataType()


class CRCL_PoseToleranceDataType(object):

    '''
    CRCL_PoseToleranceDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('xPointTolerance', 'Double'),
        ('yPointTolerance', 'Double'),
        ('zPointTolerance', 'Double'),
        ('xAxisTolerance', 'Double'),
        ('zAxisTolerance', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.xPointTolerance = 0
        self.yPointTolerance = 0
        self.zPointTolerance = 0
        self.xAxisTolerance = 0
        self.zAxisTolerance = 0


class CRCL_ParameterSettingDataType(object):

    '''
    CRCL_ParameterSettingDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('parameterName', 'String'),
        ('parameterValue', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.parameterName = None
        self.parameterValue = None


class CRCL_RotAccelAbsoluteDataType(object):

    '''
    CRCL_RotAccelAbsoluteDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('setting', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.setting = 0


class CRCL_RotAccelRelativeDataType(object):

    '''
    CRCL_RotAccelRelativeDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('fraction', 'CRCL_FractionDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.fraction = ua.CRCL_FractionDataType()


class CRCL_RotAccelDataType(object):

    '''
    CRCL_RotAccelDataType structure autogenerated from xml
    '''

    ua_types = [
        ('SwitchField', 'UInt32'),
        ('RotAccelAbsoluteDataType', 'CRCL_RotAccelAbsoluteDataType'),
        ('RotAccelRelativeDataType', 'CRCL_RotAccelRelativeDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.SwitchField = 0
        self.RotAccelAbsoluteDataType = ua.CRCL_RotAccelAbsoluteDataType()
        self.RotAccelRelativeDataType = ua.CRCL_RotAccelRelativeDataType()


class CRCL_RotSpeedAbsoluteDataType(object):

    '''
    CRCL_RotSpeedAbsoluteDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('setting', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.setting = 0


class CRCL_RotSpeedRelativeDataType(object):

    '''
    CRCL_RotSpeedRelativeDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('fraction', 'CRCL_FractionDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.fraction = ua.CRCL_FractionDataType()


class CRCL_RotSpeedDataType(object):

    '''
    CRCL_RotSpeedDataType structure autogenerated from xml
    '''

    ua_types = [
        ('SwitchField', 'UInt32'),
        ('RotSpeedAbsoluteDataType', 'CRCL_RotSpeedAbsoluteDataType'),
        ('RotSpeedRelativeDataType', 'CRCL_RotSpeedRelativeDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.SwitchField = 0
        self.RotSpeedAbsoluteDataType = ua.CRCL_RotSpeedAbsoluteDataType()
        self.RotSpeedRelativeDataType = ua.CRCL_RotSpeedRelativeDataType()


class CRCL_TransAccelAbsoluteDataType(object):

    '''
    CRCL_TransAccelAbsoluteDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('setting', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.setting = 0


class CRCL_TransAccelRelativeDataType(object):

    '''
    CRCL_TransAccelRelativeDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('fraction', 'CRCL_FractionDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.fraction = ua.CRCL_FractionDataType()


class CRCL_TransAccelDataType(object):

    '''
    CRCL_TransAccelDataType structure autogenerated from xml
    '''

    ua_types = [
        ('SwitchField', 'UInt32'),
        ('TransAccelAbsoluteDataType', 'CRCL_TransAccelAbsoluteDataType'),
        ('TransAccelRelativeDataType', 'CRCL_TransAccelRelativeDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.SwitchField = 0
        self.TransAccelAbsoluteDataType = ua.CRCL_TransAccelAbsoluteDataType()
        self.TransAccelRelativeDataType = ua.CRCL_TransAccelRelativeDataType()


class CRCL_TransSpeedAbsoluteDataType(object):

    '''
    CRCL_TransSpeedAbsoluteDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('setting', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.setting = 0


class CRCL_TransSpeedRelativeDataType(object):

    '''
    CRCL_TransSpeedRelativeDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('fraction', 'CRCL_FractionDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.fraction = ua.CRCL_FractionDataType()


class CRCL_TransSpeedDataType(object):

    '''
    CRCL_TransSpeedDataType structure autogenerated from xml
    '''

    ua_types = [
        ('SwitchField', 'UInt32'),
        ('TransSpeedAbsoluteDataType', 'CRCL_TransSpeedAbsoluteDataType'),
        ('TransSpeedRelativeDataType', 'CRCL_TransSpeedRelativeDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.SwitchField = 0
        self.TransSpeedAbsoluteDataType = ua.CRCL_TransSpeedAbsoluteDataType()
        self.TransSpeedRelativeDataType = ua.CRCL_TransSpeedRelativeDataType()


class CRCL_ConfigureJointReportDataType(object):

    '''
    CRCL_ConfigureJointReportDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('JointNumber', 'Int32'),
        ('ReportPosition', 'Boolean'),
        ('ReportTorqueOrForce', 'Boolean'),
        ('ReportVelocity', 'Boolean'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.JointNumber = 0
        self.ReportPosition = True
        self.ReportTorqueOrForce = True
        self.ReportVelocity = True


class CRCL_GuardDataType(object):

    '''
    CRCL_GuardDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('sensorID', 'String'),
        ('subField', 'String'),
        ('limitType', 'CRCL_GuardLimitEnumDataType'),
        ('limitValue', 'Double'),
        ('recheckTimeMicroSeconds', 'UInt32'),
        ('checkCount', 'UInt32'),
        ('lastCheckTime', 'UInt32'),
        ('lastCheckValue', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.sensorID = None
        self.subField = None
        self.limitType = ua.CRCL_GuardLimitEnumDataType(3)
        self.limitValue = 0
        self.recheckTimeMicroSeconds = 0
        self.checkCount = 0
        self.lastCheckTime = 0
        self.lastCheckValue = 0


class CRCL_JointPositionToleranceSettingDataType(object):

    '''
    CRCL_JointPositionToleranceSettingDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('JointNumber', 'Int32'),
        ('JointPositionTolerance', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.JointNumber = 0
        self.JointPositionTolerance = 0


class CRCL_JointPositionsTolerancesDataType(object):

    '''
    CRCL_JointPositionsTolerancesDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('Setting', 'ListOfCRCL_JointPositionToleranceSettingDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.Setting = []


class CRCL_PoseAndSetDataType(object):

    '''
    CRCL_PoseAndSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('point', 'CRCL_PointDataType'),
        ('xAxis', 'CRCL_VectorDataType'),
        ('zAxis', 'CRCL_VectorDataType'),
        ('Coordinated', 'Boolean'),
        ('TransSpeed', 'CRCL_TransSpeedDataType'),
        ('RotSpeed', 'CRCL_RotSpeedDataType'),
        ('TransAccel', 'CRCL_TransAccelDataType'),
        ('RotAccel', 'CRCL_RotAccelDataType'),
        ('PoseTolerance', 'CRCL_PoseToleranceDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.point = ua.CRCL_PointDataType()
        self.xAxis = ua.CRCL_VectorDataType()
        self.zAxis = ua.CRCL_VectorDataType()
        self.Coordinated = True
        self.TransSpeed = ua.CRCL_TransSpeedDataType()
        self.RotSpeed = ua.CRCL_RotSpeedDataType()
        self.TransAccel = ua.CRCL_TransAccelDataType()
        self.RotAccel = ua.CRCL_RotAccelDataType()
        self.PoseTolerance = ua.CRCL_PoseToleranceDataType()


class CRCLCommandDataType(object):

    '''
    CRCLCommandDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []


class MiddleCommandDataType(object):

    '''
    MiddleCommandDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []


class EndCanonDataType(object):

    '''
    EndCanonDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []


class InitCanonDataType(object):

    '''
    InitCanonDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []


class CRCL_JointDetailsDataType(object):

    '''
    CRCL_JointDetailsDataType structure autogenerated from xml
    '''

    ua_types = [
        ('SwitchField', 'UInt32'),
        ('JointSpeedAccel', 'CRCL_JointSpeedAccelDataType'),
        ('JointForceTorque', 'CRCL_JointForceTorqueDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.SwitchField = 0
        self.JointSpeedAccel = ua.CRCL_JointSpeedAccelDataType()
        self.JointForceTorque = ua.CRCL_JointForceTorqueDataType()


class CRCL_ActuateJointDataType(object):

    '''
    CRCL_ActuateJointDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('JointNumber', 'Int32'),
        ('JointPosition', 'Double'),
        ('JointDetails', 'CRCL_JointDetailsDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.JointNumber = 0
        self.JointPosition = 0
        self.JointDetails = ua.CRCL_JointDetailsDataType()


class CRCL_JointForceTorqueDataType(object):

    '''
    CRCL_JointForceTorqueDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('Setting', 'Double'),
        ('ChangeRate', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.Setting = 0
        self.ChangeRate = 0


class CRCL_JointSpeedAccelDataType(object):

    '''
    CRCL_JointSpeedAccelDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('JointSpeed', 'Double'),
        ('JointAccel', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.JointSpeed = 0
        self.JointAccel = 0


class ActuateJointsDataType(object):

    '''
    ActuateJointsDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('ActuateJoint', 'ListOfCRCL_ActuateJointDataType'),
        ('JointTolerances', 'CRCL_JointPositionsTolerancesDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.ActuateJoint = []
        self.JointTolerances = ua.CRCL_JointPositionsTolerancesDataType()


class MoveToDataType(object):

    '''
    MoveToDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('MoveStraight', 'Boolean'),
        ('EndPosition', 'CRCL_PoseDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.MoveStraight = True
        self.EndPosition = ua.CRCL_PoseDataType()


class CloseToolChangerDataType(object):

    '''
    CloseToolChangerDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []


class DwellDataType(object):

    '''
    DwellDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('DwellTime', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.DwellTime = 0


class GetStatusDataType(object):

    '''
    GetStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []


class MessageDataType(object):

    '''
    MessageDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('Message', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.Message = None


class MoveScrewDataType(object):

    '''
    MoveScrewDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('StartPosition', 'CRCL_PoseDataType'),
        ('AxisPoint', 'CRCL_PointDataType'),
        ('AxialDistanceFree', 'Double'),
        ('AxialDistanceScrew', 'Double'),
        ('Turn', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.StartPosition = ua.CRCL_PoseDataType()
        self.AxisPoint = ua.CRCL_PointDataType()
        self.AxialDistanceFree = 0
        self.AxialDistanceScrew = 0
        self.Turn = 0


class MoveThroughToDataType(object):

    '''
    MoveThroughToDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('MoveStraight', 'Boolean'),
        ('Waypoint', 'ListOfCRCL_PoseDataType'),
        ('NumPositions', 'UInt32'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.MoveStraight = True
        self.Waypoint = []
        self.NumPositions = 0


class OpenToolChangerDataType(object):

    '''
    OpenToolChangerDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []


class RunProgramDataType(object):

    '''
    RunProgramDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('ProgramText', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.ProgramText = None


class SetAngleUnitsDataType(object):

    '''
    SetAngleUnitsDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('UnitName', 'CRCL_AngleUnitEnumDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.UnitName = ua.CRCL_AngleUnitEnumDataType(1)


class SetEndeffectorParametersDataType(object):

    '''
    SetEndeffectorParametersDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('ParameterSetting', 'ListOfCRCL_ParameterSettingDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.ParameterSetting = []


class SetEndeffectorDataType(object):

    '''
    SetEndeffectorDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('Setting', 'CRCL_FractionDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.Setting = ua.CRCL_FractionDataType()


class SetEndPoseToleranceDataType(object):

    '''
    SetEndPoseToleranceDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('Tolerance', 'CRCL_PoseToleranceDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.Tolerance = ua.CRCL_PoseToleranceDataType()


class SetForceUnitsDataType(object):

    '''
    SetForceUnitsDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('UnitName', 'CRCL_ForceUnitEnumDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.UnitName = ua.CRCL_ForceUnitEnumDataType(2)


class SetIntermediatePoseToleranceDataType(object):

    '''
    SetIntermediatePoseToleranceDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('Tolerance', 'CRCL_PoseToleranceDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.Tolerance = ua.CRCL_PoseToleranceDataType()


class SetLengthUnitsDataType(object):

    '''
    SetLengthUnitsDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('UnitName', 'CRCL_LengthUnitEnumDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.UnitName = ua.CRCL_LengthUnitEnumDataType(2)


class SetMotionCoordinationDataType(object):

    '''
    SetMotionCoordinationDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('Coordinated', 'Boolean'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.Coordinated = True


class SetRobotParametersDataType(object):

    '''
    SetRobotParametersDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('ParameterSetting', 'ListOfCRCL_ParameterSettingDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.ParameterSetting = []


class SetTorqueUnitsDataType(object):

    '''
    SetTorqueUnitsDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('UnitName', 'CRCL_TorqueUnitEnumDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.UnitName = ua.CRCL_TorqueUnitEnumDataType(1)


class StopMotionDataType(object):

    '''
    StopMotionDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('StopCondition', 'CRCL_StopConditionEnumDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.StopCondition = ua.CRCL_StopConditionEnumDataType(2)


class ConfigureStatusReportDataType(object):

    '''
    ConfigureStatusReportDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('ReportJointStatuses', 'Boolean'),
        ('ReportPoseStatus', 'Boolean'),
        ('ReportGripperStatus', 'Boolean'),
        ('ReportSettingsStatus', 'Boolean'),
        ('ReportSensorsStatus', 'Boolean'),
        ('ReportGuardsStatus', 'Boolean'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.ReportJointStatuses = True
        self.ReportPoseStatus = True
        self.ReportGripperStatus = True
        self.ReportSettingsStatus = True
        self.ReportSensorsStatus = True
        self.ReportGuardsStatus = True


class EnableSensorDataType(object):

    '''
    EnableSensorDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('SensorID', 'String'),
        ('SensorOption', 'ListOfCRCL_ParameterSettingDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.SensorID = None
        self.SensorOption = []


class DisableSensorDataType(object):

    '''
    DisableSensorDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('SensorID', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.SensorID = None


class EnableGripperDataType(object):

    '''
    EnableGripperDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('GripperName', 'String'),
        ('GripperOption', 'ListOfCRCL_ParameterSettingDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.GripperName = None
        self.GripperOption = []


class DisableGripperDataType(object):

    '''
    DisableGripperDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('GripperName', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.GripperName = None


class EnableRobotParameterStatusDataType(object):

    '''
    EnableRobotParameterStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('RobotParameterName', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.RobotParameterName = None


class DisableRobotParameterStatusDataType(object):

    '''
    DisableRobotParameterStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('RobotParameterName', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.RobotParameterName = None


class SetDefaultJointPositionsTolerancesDataType(object):

    '''
    SetDefaultJointPositionsTolerancesDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('JointTolerances', 'CRCL_JointPositionsTolerancesDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.JointTolerances = ua.CRCL_JointPositionsTolerancesDataType()


class SetRotAccelDataType(object):

    '''
    SetRotAccelDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('RotAccel', 'CRCL_RotAccelDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.RotAccel = ua.CRCL_RotAccelDataType()


class SetTransAccelDataType(object):

    '''
    SetTransAccelDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('TransAccel', 'CRCL_TransAccelDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.TransAccel = ua.CRCL_TransAccelDataType()


class SetRotSpeedDataType(object):

    '''
    SetRotSpeedDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('RotSpeed', 'CRCL_RotSpeedDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.RotSpeed = ua.CRCL_RotSpeedDataType()


class SetTransSpeedDataType(object):

    '''
    SetTransSpeedDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('TransSpeed', 'CRCL_TransSpeedDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.TransSpeed = ua.CRCL_TransSpeedDataType()


class ConfigureJointReportsDataType(object):

    '''
    ConfigureJointReportsDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('RealTimeCommand', 'Boolean'),
        ('RealTimeParameterNode', 'NodeId'),
        ('Guard', 'ListOfCRCL_GuardDataType'),
        ('ResetAll', 'Boolean'),
        ('ConfigureJointReport', 'ListOfCRCL_ConfigureJointReportDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.RealTimeCommand = True
        self.RealTimeParameterNode = ua.NodeId()
        self.Guard = []
        self.ResetAll = True
        self.ConfigureJointReport = []


class CRCL_CommandStatusDataType(object):

    '''
    CRCL_CommandStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandID', 'UInt32'),
        ('statusID', 'UInt32'),
        ('commandState', 'CRCL_CommandStateEnumDataType'),
        ('stateDescription', 'String'),
        ('programmFile', 'String'),
        ('programmIndex', 'UInt32'),
        ('programmLength', 'UInt32'),
        ('overridePercent', 'UInt32'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandID = 0
        self.statusID = 0
        self.commandState = ua.CRCL_CommandStateEnumDataType(3)
        self.stateDescription = None
        self.programmFile = None
        self.programmIndex = 0
        self.programmLength = 0
        self.overridePercent = 0


class CRCL_SensorStatusDataType(object):

    '''
    CRCL_SensorStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('sensorID', 'String'),
        ('readCount', 'UInt32'),
        ('lastReadTime', 'UInt32'),
        ('sensorParameterSetting', 'ListOfCRCL_ParameterSettingDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.sensorID = None
        self.readCount = 0
        self.lastReadTime = 0
        self.sensorParameterSetting = []


class CRCL_CountSensorStatusDataType(object):

    '''
    CRCL_CountSensorStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('sensorID', 'String'),
        ('readCount', 'UInt32'),
        ('lastReadTime', 'UInt32'),
        ('sensorParameterSetting', 'ListOfCRCL_ParameterSettingDataType'),
        ('countValue', 'UInt32'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.sensorID = None
        self.readCount = 0
        self.lastReadTime = 0
        self.sensorParameterSetting = []
        self.countValue = 0


class CRCL_OnOffSensorStatusDataType(object):

    '''
    CRCL_OnOffSensorStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('sensorID', 'String'),
        ('readCount', 'UInt32'),
        ('lastReadTime', 'UInt32'),
        ('sensorParameterSetting', 'ListOfCRCL_ParameterSettingDataType'),
        ('on', 'Boolean'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.sensorID = None
        self.readCount = 0
        self.lastReadTime = 0
        self.sensorParameterSetting = []
        self.on = True


class CRCL_ScalarSensorStatusDataType(object):

    '''
    CRCL_ScalarSensorStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('sensorID', 'String'),
        ('readCount', 'UInt32'),
        ('lastReadTime', 'UInt32'),
        ('sensorParameterSetting', 'ListOfCRCL_ParameterSettingDataType'),
        ('scalarValue', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.sensorID = None
        self.readCount = 0
        self.lastReadTime = 0
        self.sensorParameterSetting = []
        self.scalarValue = 0


class CRCL_ForceTorqueSensorStatusDataType(object):

    '''
    CRCL_ForceTorqueSensorStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('sensorID', 'String'),
        ('readCount', 'UInt32'),
        ('lastReadTime', 'UInt32'),
        ('sensorParameterSetting', 'ListOfCRCL_ParameterSettingDataType'),
        ('fx', 'Double'),
        ('fy', 'Double'),
        ('fz', 'Double'),
        ('tx', 'Double'),
        ('ty', 'Double'),
        ('tz', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.sensorID = None
        self.readCount = 0
        self.lastReadTime = 0
        self.sensorParameterSetting = []
        self.fx = 0
        self.fy = 0
        self.fz = 0
        self.tx = 0
        self.ty = 0
        self.tz = 0


class CRCL_SensorStatusesDataType(object):

    '''
    CRCL_SensorStatusesDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('onOffSensorStatus', 'ListOfCRCL_OnOffSensorStatusDataType'),
        ('scalarSensorStatus', 'ListOfCRCL_ScalarSensorStatusDataType'),
        ('countSensorStatus', 'ListOfCRCL_CountSensorStatusDataType'),
        ('forceTorqueSensorStatus', 'ListOfCRCL_ForceTorqueSensorStatusDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.onOffSensorStatus = []
        self.scalarSensorStatus = []
        self.countSensorStatus = []
        self.forceTorqueSensorStatus = []


class CRCL_GripperStatusDataType(object):

    '''
    CRCL_GripperStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('gripperName', 'String'),
        ('gripperOption', 'ListOfCRCL_ParameterSettingDataType'),
        ('holdingObject', 'Boolean'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.gripperName = None
        self.gripperOption = []
        self.holdingObject = True


class CRCL_ParallelGripperStatusDataType(object):

    '''
    CRCL_ParallelGripperStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('gripperName', 'String'),
        ('gripperOption', 'ListOfCRCL_ParameterSettingDataType'),
        ('holdingObject', 'Boolean'),
        ('seperation', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.gripperName = None
        self.gripperOption = []
        self.holdingObject = True
        self.seperation = 0


class CRCL_ThreeFingerGripperStatusDataType(object):

    '''
    CRCL_ThreeFingerGripperStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('gripperName', 'String'),
        ('gripperOption', 'ListOfCRCL_ParameterSettingDataType'),
        ('holdingObject', 'Boolean'),
        ('finger1Position', 'CRCL_FractionDataType'),
        ('finger2Position', 'CRCL_FractionDataType'),
        ('finger3Position', 'CRCL_FractionDataType'),
        ('finger1Force', 'Double'),
        ('finger2Force', 'Double'),
        ('finger3Force', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.gripperName = None
        self.gripperOption = []
        self.holdingObject = True
        self.finger1Position = ua.CRCL_FractionDataType()
        self.finger2Position = ua.CRCL_FractionDataType()
        self.finger3Position = ua.CRCL_FractionDataType()
        self.finger1Force = 0
        self.finger2Force = 0
        self.finger3Force = 0


class CRCL_VacuumGripperStatusDataType(object):

    '''
    CRCL_VacuumGripperStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('gripperName', 'String'),
        ('gripperOption', 'ListOfCRCL_ParameterSettingDataType'),
        ('holdingObject', 'Boolean'),
        ('isPowered', 'Boolean'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.gripperName = None
        self.gripperOption = []
        self.holdingObject = True
        self.isPowered = True


class CRCL_SettingsStatusDataType(object):

    '''
    CRCL_SettingsStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('angleUnitName', 'CRCL_AngleUnitEnumDataType'),
        ('endEffectorParameterSetting', 'ListOfCRCL_ParameterSettingDataType'),
        ('endEffectorSetting', 'CRCL_FractionDataType'),
        ('forceUnitName', 'CRCL_ForceUnitEnumDataType'),
        ('jointLimits', 'ListOfCRCL_JointLimitDataType'),
        ('intermediatePoseTolernace', 'CRCL_PoseToleranceDataType'),
        ('lengthUnitName', 'CRCL_LengthUnitEnumDataType'),
        ('maxCartesianLimit', 'CRCL_PointDataType'),
        ('minCartesianLimit', 'CRCL_PointDataType'),
        ('motionCoorinated', 'Boolean'),
        ('poseTolerance', 'CRCL_PoseToleranceDataType'),
        ('robotParameterSetting', 'ListOfCRCL_ParameterSettingDataType'),
        ('rotAccelAbsolute', 'CRCL_RotAccelAbsoluteDataType'),
        ('rotAccelRelative', 'CRCL_RotAccelRelativeDataType'),
        ('rotSpeedAbsolute', 'CRCL_RotSpeedAbsoluteDataType'),
        ('rotSpeedRelative', 'CRCL_RotSpeedRelativeDataType'),
        ('torqueUnitName', 'CRCL_TorqueUnitEnumDataType'),
        ('transAccelAbsolute', 'CRCL_TransAccelAbsoluteDataType'),
        ('transAccelRelative', 'CRCL_TransAccelRelativeDataType'),
        ('transSpeedAbsolute', 'CRCL_TransSpeedAbsoluteDataType'),
        ('transSpeedRelative', 'CRCL_TransSpeedRelativeDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.angleUnitName = ua.CRCL_AngleUnitEnumDataType(1)
        self.endEffectorParameterSetting = []
        self.endEffectorSetting = ua.CRCL_FractionDataType()
        self.forceUnitName = ua.CRCL_ForceUnitEnumDataType(2)
        self.jointLimits = []
        self.intermediatePoseTolernace = ua.CRCL_PoseToleranceDataType()
        self.lengthUnitName = ua.CRCL_LengthUnitEnumDataType(2)
        self.maxCartesianLimit = ua.CRCL_PointDataType()
        self.minCartesianLimit = ua.CRCL_PointDataType()
        self.motionCoorinated = True
        self.poseTolerance = ua.CRCL_PoseToleranceDataType()
        self.robotParameterSetting = []
        self.rotAccelAbsolute = ua.CRCL_RotAccelAbsoluteDataType()
        self.rotAccelRelative = ua.CRCL_RotAccelRelativeDataType()
        self.rotSpeedAbsolute = ua.CRCL_RotSpeedAbsoluteDataType()
        self.rotSpeedRelative = ua.CRCL_RotSpeedRelativeDataType()
        self.torqueUnitName = ua.CRCL_TorqueUnitEnumDataType(1)
        self.transAccelAbsolute = ua.CRCL_TransAccelAbsoluteDataType()
        self.transAccelRelative = ua.CRCL_TransAccelRelativeDataType()
        self.transSpeedAbsolute = ua.CRCL_TransSpeedAbsoluteDataType()
        self.transSpeedRelative = ua.CRCL_TransSpeedRelativeDataType()


class CRCL_PoseStatusDataType(object):

    '''
    CRCL_PoseStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('pose', 'CRCL_PoseDataType'),
        ('twist', 'CRCL_TwistDataType'),
        ('wrench', 'CRCL_WrenchDataType'),
        ('configuration', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.pose = ua.CRCL_PoseDataType()
        self.twist = ua.CRCL_TwistDataType()
        self.wrench = ua.CRCL_WrenchDataType()
        self.configuration = None


class CRCL_JointLimitDataType(object):

    '''
    CRCL_JointLimitDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('jointNumber', 'UInt32'),
        ('jointMinPosition', 'Double'),
        ('jointMaxPosition', 'Double'),
        ('jointMaxTorqueOrForce', 'Double'),
        ('jointMaxVelocity', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.jointNumber = 0
        self.jointMinPosition = 0
        self.jointMaxPosition = 0
        self.jointMaxTorqueOrForce = 0
        self.jointMaxVelocity = 0


class CRCL_JointStatusDataType(object):

    '''
    CRCL_JointStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('jointNumber', 'UInt32'),
        ('jointPosition', 'Double'),
        ('jointTorqueOrForce', 'Double'),
        ('jointVelocity', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.jointNumber = 0
        self.jointPosition = 0
        self.jointTorqueOrForce = 0
        self.jointVelocity = 0


class CRCL_JointStatusesDataType(object):

    '''
    CRCL_JointStatusesDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('jointStatus', 'ListOfCRCL_JointStatusDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.jointStatus = []


class CRCLStatusDataType(object):

    '''
    CRCLStatusDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('commandStatus', 'CRCL_CommandStatusDataType'),
        ('jointStatus', 'CRCL_JointStatusesDataType'),
        ('poseStatus', 'CRCL_PoseStatusDataType'),
        ('gripperStatus', 'CRCL_GripperStatusDataType'),
        ('settingsStatus', 'CRCL_SettingsStatusDataType'),
        ('sensorStatuses', 'CRCL_SensorStatusesDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.commandStatus = ua.CRCL_CommandStatusDataType()
        self.jointStatus = ua.CRCL_JointStatusesDataType()
        self.poseStatus = ua.CRCL_PoseStatusDataType()
        self.gripperStatus = ua.CRCL_GripperStatusDataType()
        self.settingsStatus = ua.CRCL_SettingsStatusDataType()
        self.sensorStatuses = ua.CRCL_SensorStatusesDataType()


class PubSubIPAddresses(object):

    '''
    PubSubIPAddresses structure autogenerated from xml
    '''

    ua_types = [
        ('IPAddress_Skill', 'String'),
        ('IPAddress_Status', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.IPAddress_Skill = None
        self.IPAddress_Status = None


class SAMYRobotDataType(object):

    '''
    SAMYRobotDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('Requested_Skill', 'CRCLSkillDataType'),
        ('Requested_Skill_Success', 'Boolean'),
        ('Active', 'Boolean'),
        ('Online', 'Boolean'),
        ('IPAddresses', 'PubSubIPAddresses'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.Requested_Skill = ua.CRCLSkillDataType()
        self.Requested_Skill_Success = True
        self.Active = True
        self.Online = True
        self.IPAddresses = ua.PubSubIPAddresses()


class CRCLCommandsUnionDataType(object):

    '''
    CRCLCommandsUnionDataType structure autogenerated from xml
    '''

    ua_types = [
        ('SwitchField', 'UInt32'),
        ('InitCanonCommand', 'InitCanonDataType'),
        ('EndCanonCommand', 'EndCanonDataType'),
        ('MessageCommand', 'MessageDataType'),
        ('MoveToCommand', 'MoveToDataType'),
        ('MoveScrewCommand', 'MoveScrewDataType'),
        ('MoveThroughToCommand', 'MoveThroughToDataType'),
        ('DwellCommand', 'DwellDataType'),
        ('ActuateJointsCommand', 'ActuateJointsDataType'),
        ('ConfigureJointReportsCommand', 'ConfigureJointReportsDataType'),
        ('SetDefaultJointPositionsTolerancesCommand', 'SetDefaultJointPositionsTolerancesDataType'),
        ('GetStatusCommand', 'GetStatusDataType'),
        ('CloseToolChangerCommand', 'CloseToolChangerDataType'),
        ('OpenToolChangerCommand', 'OpenToolChangerDataType'),
        ('SetRobotParametersCommand', 'SetRobotParametersDataType'),
        ('SetEndeffectorParametersCommand', 'SetEndeffectorParametersDataType'),
        ('SetEndeffectorCommand', 'SetEndeffectorDataType'),
        ('SetTransAccelCommand', 'SetTransAccelDataType'),
        ('SetTransSpeedCommand', 'SetTransSpeedDataType'),
        ('SetRotAccelCommand', 'SetRotAccelDataType'),
        ('SetRotSpeedCommand', 'SetRotSpeedDataType'),
        ('SetAngleUnitsCommand', 'SetAngleUnitsDataType'),
        ('SetEndPoseToleranceCommand', 'SetEndPoseToleranceDataType'),
        ('SetForceUnitsCommand', 'SetForceUnitsDataType'),
        ('SetIntermediatePoseToleranceCommand', 'SetIntermediatePoseToleranceDataType'),
        ('SetLengthUnitsCommand', 'SetLengthUnitsDataType'),
        ('SetMotionCoordinationCommand', 'SetMotionCoordinationDataType'),
        ('SetTorqueUnitsCommand', 'SetTorqueUnitsDataType'),
        ('StopMotionCommand', 'StopMotionDataType'),
        ('ConfigureStatusReportCommand', 'ConfigureStatusReportDataType'),
        ('EnableSensorCommand', 'EnableSensorDataType'),
        ('DisableSensorCommand', 'DisableSensorDataType'),
        ('EnableGripperCommand', 'EnableGripperDataType'),
        ('DisableGripperCommand', 'DisableGripperDataType'),
        ('EnableRobotParameterStatusCommand', 'EnableRobotParameterStatusDataType'),
        ('DisableRobotParameterStatusCommand', 'DisableRobotParameterStatusDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.SwitchField = 0
        self.InitCanonCommand = ua.InitCanonDataType()
        self.EndCanonCommand = ua.EndCanonDataType()
        self.MessageCommand = ua.MessageDataType()
        self.MoveToCommand = ua.MoveToDataType()
        self.MoveScrewCommand = ua.MoveScrewDataType()
        self.MoveThroughToCommand = ua.MoveThroughToDataType()
        self.DwellCommand = ua.DwellDataType()
        self.ActuateJointsCommand = ua.ActuateJointsDataType()
        self.ConfigureJointReportsCommand = ua.ConfigureJointReportsDataType()
        self.SetDefaultJointPositionsTolerancesCommand = ua.SetDefaultJointPositionsTolerancesDataType()
        self.GetStatusCommand = ua.GetStatusDataType()
        self.CloseToolChangerCommand = ua.CloseToolChangerDataType()
        self.OpenToolChangerCommand = ua.OpenToolChangerDataType()
        self.SetRobotParametersCommand = ua.SetRobotParametersDataType()
        self.SetEndeffectorParametersCommand = ua.SetEndeffectorParametersDataType()
        self.SetEndeffectorCommand = ua.SetEndeffectorDataType()
        self.SetTransAccelCommand = ua.SetTransAccelDataType()
        self.SetTransSpeedCommand = ua.SetTransSpeedDataType()
        self.SetRotAccelCommand = ua.SetRotAccelDataType()
        self.SetRotSpeedCommand = ua.SetRotSpeedDataType()
        self.SetAngleUnitsCommand = ua.SetAngleUnitsDataType()
        self.SetEndPoseToleranceCommand = ua.SetEndPoseToleranceDataType()
        self.SetForceUnitsCommand = ua.SetForceUnitsDataType()
        self.SetIntermediatePoseToleranceCommand = ua.SetIntermediatePoseToleranceDataType()
        self.SetLengthUnitsCommand = ua.SetLengthUnitsDataType()
        self.SetMotionCoordinationCommand = ua.SetMotionCoordinationDataType()
        self.SetTorqueUnitsCommand = ua.SetTorqueUnitsDataType()
        self.StopMotionCommand = ua.StopMotionDataType()
        self.ConfigureStatusReportCommand = ua.ConfigureStatusReportDataType()
        self.EnableSensorCommand = ua.EnableSensorDataType()
        self.DisableSensorCommand = ua.DisableSensorDataType()
        self.EnableGripperCommand = ua.EnableGripperDataType()
        self.DisableGripperCommand = ua.DisableGripperDataType()
        self.EnableRobotParameterStatusCommand = ua.EnableRobotParameterStatusDataType()
        self.DisableRobotParameterStatusCommand = ua.DisableRobotParameterStatusDataType()


class CRCLSkillDataType(object):

    '''
    CRCLSkillDataType structure autogenerated from xml
    '''

    ua_types = [
        ('id', 'UInt32'),
        ('name', 'String'),
        ('CRCLCommands', 'ListOfCRCLCommandsUnionDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.id = 0
        self.name = None
        self.CRCLCommands = []


class CRCLCommandParametersSetDataType(object):

    '''
    CRCLCommandParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True


class InitCanonParametersSetDataType(object):

    '''
    InitCanonParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True


class EndCanonParametersSetDataType(object):

    '''
    EndCanonParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True


class GetStatusParametersSetDataType(object):

    '''
    GetStatusParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True


class CloseToolChangerParametersSetDataType(object):

    '''
    CloseToolChangerParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True


class OpenToolChangerParametersSetDataType(object):

    '''
    OpenToolChangerParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True


class MessageParametersSetDataType(object):

    '''
    MessageParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('Message', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.Message = None


class MoveToParametersSetDataType(object):

    '''
    MoveToParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('MoveStraight', 'Boolean'),
        ('EndPosition', 'CRCL_PoseDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.MoveStraight = True
        self.EndPosition = ua.CRCL_PoseDataType()


class MoveScrewParametersSetDataType(object):

    '''
    MoveScrewParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('StartPosition', 'CRCL_PoseDataType'),
        ('AxisPoint', 'CRCL_PointDataType'),
        ('AxialDistanceFree', 'Double'),
        ('AxialDistanceScrew', 'Double'),
        ('Turn', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.StartPosition = ua.CRCL_PoseDataType()
        self.AxisPoint = ua.CRCL_PointDataType()
        self.AxialDistanceFree = 0
        self.AxialDistanceScrew = 0
        self.Turn = 0


class MoveThroughToParametersSetDataType(object):

    '''
    MoveThroughToParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('MoveStraight', 'Boolean'),
        ('Waypoint', 'ListOfCRCL_PoseDataType'),
        ('NumPositions', 'Int32'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.MoveStraight = True
        self.Waypoint = []
        self.NumPositions = 0


class DwellParametersSetDataType(object):

    '''
    DwellParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('DwellTime', 'Double'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.DwellTime = 0


class ActuateJointsParametersSetDataType(object):

    '''
    ActuateJointsParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('ActuateJoint', 'ListOfCRCL_ActuateJointDataType'),
        ('JointTolerances', 'CRCL_JointPositionsTolerancesDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.ActuateJoint = []
        self.JointTolerances = ua.CRCL_JointPositionsTolerancesDataType()


class ConfigureJointReportsParametersSetDataType(object):

    '''
    ConfigureJointReportsParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('ResetAll', 'Boolean'),
        ('ConfigureJointReport', 'ListOfCRCL_ConfigureJointReportDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.ResetAll = True
        self.ConfigureJointReport = []


class SetDefaultJointPositionsTolerancesParametersSetDataType(object):

    '''
    SetDefaultJointPositionsTolerancesParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('JointTolerances', 'CRCL_JointPositionsTolerancesDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.JointTolerances = ua.CRCL_JointPositionsTolerancesDataType()


class SetRobotParametersParametersSetDataType(object):

    '''
    SetRobotParametersParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('ParameterSetting', 'ListOfCRCL_ParameterSettingDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.ParameterSetting = []


class SetEndeffectorParametersParametersSetDataType(object):

    '''
    SetEndeffectorParametersParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('ParameterSetting', 'ListOfCRCL_ParameterSettingDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.ParameterSetting = []


class SetEndeffectorParametersSetDataType(object):

    '''
    SetEndeffectorParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('Setting', 'CRCL_FractionDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.Setting = ua.CRCL_FractionDataType()


class SetTransSpeedParametersSetDataType(object):

    '''
    SetTransSpeedParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('TransSpeed', 'CRCL_TransSpeedDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.TransSpeed = ua.CRCL_TransSpeedDataType()


class SetTransAccelParametersSetDataType(object):

    '''
    SetTransAccelParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('TransAccel', 'CRCL_TransAccelDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.TransAccel = ua.CRCL_TransAccelDataType()


class SetRotSpeedParametersSetDataType(object):

    '''
    SetRotSpeedParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('RotSpeed', 'CRCL_RotSpeedDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.RotSpeed = ua.CRCL_RotSpeedDataType()


class SetRotAccelParametersSetDataType(object):

    '''
    SetRotAccelParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('RotAccel', 'CRCL_RotAccelDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.RotAccel = ua.CRCL_RotAccelDataType()


class SetAngleUnitsParametersSetDataType(object):

    '''
    SetAngleUnitsParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('UnitName', 'CRCL_AngleUnitEnumDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.UnitName = ua.CRCL_AngleUnitEnumDataType(1)


class SetEndPoseToleranceParametersSetDataType(object):

    '''
    SetEndPoseToleranceParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('Tolerance', 'CRCL_PoseToleranceDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.Tolerance = ua.CRCL_PoseToleranceDataType()


class SetForceUnitsParametersSetDataType(object):

    '''
    SetForceUnitsParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('UnitName', 'CRCL_ForceUnitEnumDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.UnitName = ua.CRCL_ForceUnitEnumDataType(2)


class SetIntermediatePoseToleranceParametersSetDataType(object):

    '''
    SetIntermediatePoseToleranceParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('Tolerance', 'CRCL_PoseToleranceDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.Tolerance = ua.CRCL_PoseToleranceDataType()


class SetLengthUnitsParametersSetDataType(object):

    '''
    SetLengthUnitsParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('UnitName', 'CRCL_LengthUnitEnumDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.UnitName = ua.CRCL_LengthUnitEnumDataType(2)


class SetMotionCoordinationParametersSetDataType(object):

    '''
    SetMotionCoordinationParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('Coordinated', 'Boolean'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.Coordinated = True


class SetTorqueUnitsParametersSetDataType(object):

    '''
    SetTorqueUnitsParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('UnitName', 'CRCL_TorqueUnitEnumDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.UnitName = ua.CRCL_TorqueUnitEnumDataType(1)


class StopMotionParametersSetDataType(object):

    '''
    StopMotionParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('StopCondition', 'CRCL_StopConditionEnumDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.StopCondition = ua.CRCL_StopConditionEnumDataType(2)


class ConfigureStatusReportParametersSetDataType(object):

    '''
    ConfigureStatusReportParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('ReportJointStatuses', 'Boolean'),
        ('ReportPoseStatus', 'Boolean'),
        ('ReportGripperStatus', 'Boolean'),
        ('ReportSettingsStatus', 'Boolean'),
        ('ReportSensorsStatus', 'Boolean'),
        ('ReportGuardsStatus', 'Boolean'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.ReportJointStatuses = True
        self.ReportPoseStatus = True
        self.ReportGripperStatus = True
        self.ReportSettingsStatus = True
        self.ReportSensorsStatus = True
        self.ReportGuardsStatus = True


class EnableSensorParametersSetDataType(object):

    '''
    EnableSensorParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('SensorID', 'String'),
        ('SensorOption', 'ListOfCRCL_ParameterSettingDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.SensorID = None
        self.SensorOption = []


class DisableSensorParametersSetDataType(object):

    '''
    DisableSensorParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('SensorID', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.SensorID = None


class EnableGripperParametersSetDataType(object):

    '''
    EnableGripperParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('GripperName', 'String'),
        ('GripperOption', 'ListOfCRCL_ParameterSettingDataType'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.GripperName = None
        self.GripperOption = []


class DisableGripperParametersSetDataType(object):

    '''
    DisableGripperParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('GripperName', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.GripperName = None


class EnableRobotParameterStatusParametersSetDataType(object):

    '''
    EnableRobotParameterStatusParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('RobotParameterName', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.RobotParameterName = None


class DisableRobotParameterStatusParametersSetDataType(object):

    '''
    DisableRobotParameterStatusParametersSetDataType structure autogenerated from xml
    '''

    ua_types = [
        ('Name', 'String'),
        ('RealTimeParameter', 'Boolean'),
        ('RobotParameterName', 'String'),
    ]
    def __str__(self):
        vals = [name + ": " + str(val) for name, val in self.__dict__.items()]
        return self.__class__.__name__ + "(" + ", ".join(vals) + ")"

    __repr__ = __str__

    def __init__(self):
        self.Name = None
        self.RealTimeParameter = True
        self.RobotParameterName = None
