"""
Klasse zur Manipulation eines Strichcodes

@version 1.0 vom 18.11.2023
@autor AAK Informatik
"""

class Codemanipulation:

    """
    Konstruktor
    """
    def __init__(self):
        self.__strichcode = "s1"
        self.__erweiterterStrichcode = ""
        self.__alternativerStrichcode = ""

    # Anfang Methoden
    """
    Getter-Methode Strichcode
    @return strichcode
    """
    def getStrichcode(self):
        return self.__strichcode

    """
    Setter-Methode Strichcode
    @param strichcode
    """
    def setStrichcode(self, pStrichcode):
        self.__strichcode = pStrichcode

    """
    Getter-Methode ErweiterterStrichcode
    @return erweiterterStrichcode
    """
    def getErweiterterStrichcode(self):
        return self.__erweiterterStrichcode

    """
    Getter-Methode AlternativerStrichcode
    @return alternativerStrichcode
    """
    def getAlternativerStrichcode(self):
        return self.__alternativerStrichcode

    """
    Methode erweitern
    """
    def erweitern(self):
        self.__erweiterterStrichcode = self.__strichcode + "w4"
        for i in range(len(self.__strichcode) - 2, -1, -2):
            strichangabe = self.__strichcode[i:i+2]
            self.__erweiterterStrichcode = self.__erweiterterStrichcode + strichangabe

    """
    Methode transformieren
    """
    def transformieren(self):
        farbe = ''
        anzahl = ''
        code = ''
        # Quelltext hier ergaenzen
        
        
    # Ende Methoden
