# This an autogenerated file
# 
# Generated with SupportVesselMotionScalingItem
from __future__ import annotations
from typing import Dict,Sequence,List
from dmt.entity import Entity
from dmt.blueprint import Blueprint
from .blueprints.supportvesselmotionscalingitem import SupportVesselMotionScalingItemBlueprint
from typing import Dict
from sima.sima.moao import MOAO
from sima.sima.scriptablevalue import ScriptableValue
from typing import TYPE_CHECKING
if TYPE_CHECKING:
    from sima.riflex.supportvessel import SupportVessel

class SupportVesselMotionScalingItem(MOAO):
    """
    Keyword arguments
    -----------------
    name : str
         (default "")
    description : str
         (default "")
    _id : str
         (default "")
    scriptableValues : List[ScriptableValue]
    supportVessel : SupportVessel
    scalx : float
         Scaling for global X-motion(default 1.0)
    scaly : float
         Scaling for global Y-motion(default 1.0)
    scalz : float
         Scaling for global Z-motion(default 1.0)
    scalxr : float
         Scaling for global X-rotation(default 1.0)
    scalyr : float
         Scaling for global Y-rotation(default 1.0)
    scalzr : float
         Scaling for global Z-rotation(default 1.0)
    """

    def __init__(self , name="", description="", _id="", scalx=1.0, scaly=1.0, scalz=1.0, scalxr=1.0, scalyr=1.0, scalzr=1.0, **kwargs):
        super().__init__(**kwargs)
        self.name = name
        self.description = description
        self._id = _id
        self.scriptableValues = list()
        self.supportVessel = None
        self.scalx = scalx
        self.scaly = scaly
        self.scalz = scalz
        self.scalxr = scalxr
        self.scalyr = scalyr
        self.scalzr = scalzr
        for key, value in kwargs.items():
            if not isinstance(value, Dict):
                setattr(self, key, value)


    @property
    def blueprint(self) -> Blueprint:
        """Return blueprint that this entity represents"""
        return SupportVesselMotionScalingItemBlueprint()


    @property
    def name(self) -> str:
        """"""
        return self.__name

    @name.setter
    def name(self, value: str):
        """Set name"""
        self.__name = str(value)

    @property
    def description(self) -> str:
        """"""
        return self.__description

    @description.setter
    def description(self, value: str):
        """Set description"""
        self.__description = str(value)

    @property
    def _id(self) -> str:
        """"""
        return self.___id

    @_id.setter
    def _id(self, value: str):
        """Set _id"""
        self.___id = str(value)

    @property
    def scriptableValues(self) -> List[ScriptableValue]:
        """"""
        return self.__scriptableValues

    @scriptableValues.setter
    def scriptableValues(self, value: List[ScriptableValue]):
        """Set scriptableValues"""
        if not isinstance(value, Sequence):
            raise Exception("Expected sequense, but was " , type(value))
        self.__scriptableValues = value

    @property
    def supportVessel(self) -> SupportVessel:
        """"""
        return self.__supportVessel

    @supportVessel.setter
    def supportVessel(self, value: SupportVessel):
        """Set supportVessel"""
        self.__supportVessel = value

    @property
    def scalx(self) -> float:
        """Scaling for global X-motion"""
        return self.__scalx

    @scalx.setter
    def scalx(self, value: float):
        """Set scalx"""
        self.__scalx = float(value)

    @property
    def scaly(self) -> float:
        """Scaling for global Y-motion"""
        return self.__scaly

    @scaly.setter
    def scaly(self, value: float):
        """Set scaly"""
        self.__scaly = float(value)

    @property
    def scalz(self) -> float:
        """Scaling for global Z-motion"""
        return self.__scalz

    @scalz.setter
    def scalz(self, value: float):
        """Set scalz"""
        self.__scalz = float(value)

    @property
    def scalxr(self) -> float:
        """Scaling for global X-rotation"""
        return self.__scalxr

    @scalxr.setter
    def scalxr(self, value: float):
        """Set scalxr"""
        self.__scalxr = float(value)

    @property
    def scalyr(self) -> float:
        """Scaling for global Y-rotation"""
        return self.__scalyr

    @scalyr.setter
    def scalyr(self, value: float):
        """Set scalyr"""
        self.__scalyr = float(value)

    @property
    def scalzr(self) -> float:
        """Scaling for global Z-rotation"""
        return self.__scalzr

    @scalzr.setter
    def scalzr(self, value: float):
        """Set scalzr"""
        self.__scalzr = float(value)

# This an autogenerated file
# 
# Generated with SupportVesselMotionScalingItem
from __future__ import annotations
from typing import Dict,Sequence,List
from dmt.entity import Entity
from dmt.blueprint import Blueprint
from .blueprints.supportvesselmotionscalingitem import SupportVesselMotionScalingItemBlueprint
from typing import Dict
from sima.sima.moao import MOAO
from sima.sima.scriptablevalue import ScriptableValue
from typing import TYPE_CHECKING
if TYPE_CHECKING:
    from sima.riflex.supportvessel import SupportVessel

class SupportVesselMotionScalingItem(MOAO):
    """
    Keyword arguments
    -----------------
    name : str
         (default "")
    description : str
         (default "")
    _id : str
         (default "")
    scriptableValues : List[ScriptableValue]
    supportVessel : SupportVessel
    scalx : float
         Scaling for global X-motion(default 1.0)
    scaly : float
         Scaling for global Y-motion(default 1.0)
    scalz : float
         Scaling for global Z-motion(default 1.0)
    scalxr : float
         Scaling for global X-rotation(default 1.0)
    scalyr : float
         Scaling for global Y-rotation(default 1.0)
    scalzr : float
         Scaling for global Z-rotation(default 1.0)
    """

    def __init__(self , name="", description="", _id="", scalx=1.0, scaly=1.0, scalz=1.0, scalxr=1.0, scalyr=1.0, scalzr=1.0, **kwargs):
        super().__init__(**kwargs)
        self.name = name
        self.description = description
        self._id = _id
        self.scriptableValues = list()
        self.supportVessel = None
        self.scalx = scalx
        self.scaly = scaly
        self.scalz = scalz
        self.scalxr = scalxr
        self.scalyr = scalyr
        self.scalzr = scalzr
        for key, value in kwargs.items():
            if not isinstance(value, Dict):
                setattr(self, key, value)


    @property
    def blueprint(self) -> Blueprint:
        """Return blueprint that this entity represents"""
        return SupportVesselMotionScalingItemBlueprint()


    @property
    def name(self) -> str:
        """"""
        return self.__name

    @name.setter
    def name(self, value: str):
        """Set name"""
        self.__name = str(value)

    @property
    def description(self) -> str:
        """"""
        return self.__description

    @description.setter
    def description(self, value: str):
        """Set description"""
        self.__description = str(value)

    @property
    def _id(self) -> str:
        """"""
        return self.___id

    @_id.setter
    def _id(self, value: str):
        """Set _id"""
        self.___id = str(value)

    @property
    def scriptableValues(self) -> List[ScriptableValue]:
        """"""
        return self.__scriptableValues

    @scriptableValues.setter
    def scriptableValues(self, value: List[ScriptableValue]):
        """Set scriptableValues"""
        if not isinstance(value, Sequence):
            raise Exception("Expected sequense, but was " , type(value))
        self.__scriptableValues = value

    @property
    def supportVessel(self) -> SupportVessel:
        """"""
        return self.__supportVessel

    @supportVessel.setter
    def supportVessel(self, value: SupportVessel):
        """Set supportVessel"""
        self.__supportVessel = value

    @property
    def scalx(self) -> float:
        """Scaling for global X-motion"""
        return self.__scalx

    @scalx.setter
    def scalx(self, value: float):
        """Set scalx"""
        self.__scalx = float(value)

    @property
    def scaly(self) -> float:
        """Scaling for global Y-motion"""
        return self.__scaly

    @scaly.setter
    def scaly(self, value: float):
        """Set scaly"""
        self.__scaly = float(value)

    @property
    def scalz(self) -> float:
        """Scaling for global Z-motion"""
        return self.__scalz

    @scalz.setter
    def scalz(self, value: float):
        """Set scalz"""
        self.__scalz = float(value)

    @property
    def scalxr(self) -> float:
        """Scaling for global X-rotation"""
        return self.__scalxr

    @scalxr.setter
    def scalxr(self, value: float):
        """Set scalxr"""
        self.__scalxr = float(value)

    @property
    def scalyr(self) -> float:
        """Scaling for global Y-rotation"""
        return self.__scalyr

    @scalyr.setter
    def scalyr(self, value: float):
        """Set scalyr"""
        self.__scalyr = float(value)

    @property
    def scalzr(self) -> float:
        """Scaling for global Z-rotation"""
        return self.__scalzr

    @scalzr.setter
    def scalzr(self, value: float):
        """Set scalzr"""
        self.__scalzr = float(value)

# This an autogenerated file # # Generated with SupportVesselMotionScalingItem Keyword arguments     -----------------     name : str          (default "")     description : str          (default "")     _id : str          (default "")     scriptableValues : List[ScriptableValue]     supportVessel : SupportVessel     scalx : float          Scaling for global X-motion(default 1.0)     scaly : float          Scaling for global Y-motion(default 1.0)     scalz : float          Scaling for global Z-motion(default 1.0)     scalxr : float          Scaling for global X-rotation(default 1.0)     scalyr : float          Scaling for global Y-rotation(default 1.0)     scalzr : float          Scaling for global Z-rotation(default 1.0) Return blueprint that this entity represents Set name Set description Set _id Set scriptableValues Set supportVessel Scaling for global X-motion Set scalx Scaling for global Y-motion Set scaly Scaling for global Z-motion Set scalz Scaling for global X-rotation Set scalxr Scaling for global Y-rotation Set scalyr Scaling for global Z-rotation Set scalzr