from IDialoglar.IFikoTakimci.kok.ITakim import ITakim


class ITakimFreze(ITakim):
    """
    
    """

    def __init__(self, *args, **kwargs):
        super(ITakimFreze, self).__init__(*args, **kwargs)
        self.__nominalDiameter: float = 0.0
        self.__cornerRadius: float = 0.0
        self.__overallLength: float = 0.0
        self.__cuttingLength: float = 0.0
        self.__length: float = 0.0
        self.__bodyDiameter: float = 0.0
        # --->
        self.__disSayisi: int = 0
        self.__donusYonu: int = 0
        self.__islemeKalitesi: int = 0
        self.__takimYapisi: int = 0
        self.__disMalzemesi: int = 0
        self.__disAciklamasi: str = ""
        self.__disMalzemeAciklamasi: str = ""
        self.__dikeyMeyilAcisi: float = 0.0
        self.__yanalMeyilAcisi: float = 0.0
        self.__maksGagalamaAcisi: float = 0.0
        self.__maksIslemeUzunlugu: float = 0.0
        self.__maksIslemeSuresi: float = 0.0
        self.__sogutmaSimgesi: str = ""
        self.__agirlikSimgesi: str = ""
        self.__finisKesmeHizi: float = 0.0
        self.__finisKafaHizi: float = 0.0
        self.__finisDisBasinaIlerleme: float = 0.0
        self.__finisIlerleme: float = 0.0
        self.__finisDikeyAdim: float = 0.0
        self.__finisYanalAdim: float = 0.0
        # ->
        self.__kabaKesmeHizi: float = 0.0
        self.__kabaKafaHizi: float = 0.0
        self.__kabaDisBasinaIlerleme: float = 0.0
        self.__kabaIlerleme: float = 0.0
        self.__kabaDikeyAdim: float = 0.0
        self.__kabaYanalAdim: float = 0.0
        self.__maksIslemeIlerlemesi: float = 0.0
        # --->
        self.__name: str = ""
        self.__comment: str = ""
        self.__toolNo: int = 0
        self.__magazinSira:list=[["P1",1,1]]

    @property
    def name(self) -> str:
        return self.__name

    @name.setter
    def name(self, value: str):
        self.__name = value

    @property
    def comment(self) -> str:
        return self.__comment

    @comment.setter
    def comment(self, value: str):
        self.__comment = value

    @property
    def toolNo(self) -> int:
        return self.__toolNo

    @toolNo.setter
    def toolNo(self, value: int):
        self.__toolNo = value

    @property
    def D(self) -> float:
        return self.__nominalDiameter

    @D.setter
    def D(self, value: float):
        self.__nominalDiameter = value

    @property
    def Rc(self) -> float:
        return self.__cornerRadius

    @Rc.setter
    def Rc(self, value: float):
        self.__cornerRadius = value

    @property
    def L(self) -> float:
        return self.__overallLength

    @L.setter
    def L(self, value: float):
        self.__overallLength = value

    @property
    def Lc(self) -> float:
        return self.__cuttingLength

    @Lc.setter
    def Lc(self, value: float):
        self.__cuttingLength = value

    @property
    def l(self) -> float:
        return self.__length

    @l.setter
    def l(self, value: float):
        self.__length = value

    @property
    def db(self) -> float:
        return self.__bodyDiameter

    @db.setter
    def db(self, value: float):
        self.__bodyDiameter = value

    @property
    def Dnc(self) -> float:
        return self.__nonCuttingDiameter

    @Dnc.setter
    def Dnc(self, value: float):
        self.__nonCuttingDiameter = value

    @property
    def disSayisi(self) -> int:
        """Number Of Flutes"""
        return self.__disSayisi

    @disSayisi.setter
    def disSayisi(self, value: int):
        self.__disSayisi = value

    @property
    def donusYonu(self) -> int:
        """ Way Of Rotation 0: left Hand 1:right Hand """
        return self.__donusYonu

    @donusYonu.setter
    def donusYonu(self, value: int):
        self.__donusYonu = value

    @property
    def islemeKalitesi(self) -> int:
        """ Machginig Quality 0:rough 1:either 2:finish """
        return self.__islemeKalitesi

    @islemeKalitesi.setter
    def islemeKalitesi(self, value: int):
        self.__islemeKalitesi = value

    @property
    def takimYapisi(self) -> int:
        """ Composition 0=One Piece 1=İnsert Holder """
        return self.__takimYapisi

    @takimYapisi.setter
    def takimYapisi(self, value: int):
        self.__takimYapisi = value

    @property
    def disMalzemesi(self) -> int:
        """
        Tooth Material
        0:High Speed Steel
        1:Coated High Speed Steel
        2:Carbide
        3:Coated Carbide
        4:Other
        :return: 
        """
        return self.__disMalzemesi

    @disMalzemesi.setter
    def disMalzemesi(self, value: int):
        self.__disMalzemesi = value

    @property
    def disAciklamasi(self) -> str:
        """ Tooth Description """
        return self.__disAciklamasi

    @disAciklamasi.setter
    def disAciklamasi(self, value: str):
        self.__disAciklamasi = value

    @property
    def disMalzemeAciklamasi(self) -> str:
        """ Tooth Material Description """
        return self.__disMalzemeAciklamasi

    @disMalzemeAciklamasi.setter
    def disMalzemeAciklamasi(self, value: str):
        self.__disMalzemeAciklamasi = value

    @property
    def dikeyMeyilAcisi(self) -> float:
        """ Axial Tool Rake Angle """
        return self.__dikeyMeyilAcisi

    @dikeyMeyilAcisi.setter
    def dikeyMeyilAcisi(self, value: float):
        self.__dikeyMeyilAcisi = value

    @property
    def yanalMeyilAcisi(self) -> float:
        """ Radial Tool Rake Angle """
        return self.__yanalMeyilAcisi

    @yanalMeyilAcisi.setter
    def yanalMeyilAcisi(self, value: float):
        self.__yanalMeyilAcisi = value

    @property
    def maksGagalamaAcisi(self) -> float:
        """ Max Olunge Angle """
        return self.__maksGagalamaAcisi

    @maksGagalamaAcisi.setter
    def maksGagalamaAcisi(self, value: float):
        self.__maksGagalamaAcisi = value

    @property
    def maksIslemeUzunlugu(self) -> float:
        return self.__maksIslemeUzunlugu

    @maksIslemeUzunlugu.setter
    def maksIslemeUzunlugu(self, value: float):
        self.__maksIslemeUzunlugu = value

    @property
    def maksIslemeSuresi(self) -> float:
        return self.__maksIslemeSuresi

    @maksIslemeSuresi.setter
    def maksIslemeSuresi(self, value: float):
        self.__maksIslemeSuresi = value

    @property
    def sogutmaSimgesi(self) -> str:
        return self.__sogutmaSimgesi

    @sogutmaSimgesi.setter
    def sogutmaSimgesi(self, value: str):
        self.__sogutmaSimgesi = value

    @property
    def agirlikSimgesi(self) -> str:
        return self.__agirlikSimgesi

    @agirlikSimgesi.setter
    def agirlikSimgesi(self, value: str):
        self.__agirlikSimgesi = value

    @property
    def finisKesmeHizi(self) -> float:
        return self.__finisKesmeHizi

    @finisKesmeHizi.setter
    def finisKesmeHizi(self, value: float):
        self.__finisKesmeHizi = value

    @property
    def finisKafaHizi(self) -> float:
        return self.__finisKafaHizi

    @finisKafaHizi.setter
    def finisKafaHizi(self, value: float):
        self.__finisKafaHizi = value

    @property
    def finisDisBasinaIlerleme(self) -> float:
        return self.__finisDisBasinaIlerleme

    @finisDisBasinaIlerleme.setter
    def finisDisBasinaIlerleme(self, value: float):
        self.__finisDisBasinaIlerleme = value

    @property
    def finisIlerleme(self) -> float:
        return self.__finisIlerleme

    @finisIlerleme.setter
    def finisIlerleme(self, value: float):
        self.__finisIlerleme = value

    @property
    def finisDikeyAdim(self) -> float:
        return self.__finisDikeyAdim

    @finisDikeyAdim.setter
    def finisDikeyAdim(self, value: float):
        self.__finisDikeyAdim = value

    @property
    def finisYanalAdim(self) -> float:
        return self.__finisYanalAdim

    @finisYanalAdim.setter
    def finisYanalAdim(self, value: float):
        self.__finisYanalAdim = value

    # --->
    @property
    def kabaKesmeHizi(self) -> float:
        return self.__kabaKesmeHizi

    @kabaKesmeHizi.setter
    def kabaKesmeHizi(self, value: float):
        self.__kabaKesmeHizi = value

    @property
    def kabaKafaHizi(self) -> float:
        return self.__kabaKafaHizi

    @kabaKafaHizi.setter
    def kabaKafaHizi(self, value: float):
        self.__kabaKafaHizi = value

    @property
    def kabaDisBasinaIlerleme(self) -> float:
        return self.__kabaDisBasinaIlerleme

    @kabaDisBasinaIlerleme.setter
    def kabaDisBasinaIlerleme(self, value: float):
        self.__kabaDisBasinaIlerleme = value

    @property
    def kabaIlerleme(self) -> float:
        return self.__kabaIlerleme

    @kabaIlerleme.setter
    def kabaIlerleme(self, value: float):
        self.__kabaIlerleme = value

    @property
    def kabaDikeyAdim(self) -> float:
        return self.__kabaDikeyAdim

    @kabaDikeyAdim.setter
    def kabaDikeyAdim(self, value: float):
        self.__kabaDikeyAdim = value

    @property
    def kabaYanalAdim(self) -> float:
        return self.__kabaYanalAdim

    @kabaYanalAdim.setter
    def kabaYanalAdim(self, value: float):
        self.__kabaYanalAdim = value

    @property
    def maksIslemeIlerlemesi(self) -> float:
        return self.__maksIslemeIlerlemesi

    @maksIslemeIlerlemesi.setter
    def maksIslemeIlerlemesi(self, value: float):
        self.__maksIslemeIlerlemesi = value

    @property
    def magazinSira(self) -> list:
        return self.__magazinSira

    @magazinSira.setter
    def magazinSira(self, value: list):
        self.__magazinSira = value


