Esempio n. 1
0
    def __init__(self, symbolSize, messageBytes, rsExpansionFactor):
        logging.info('RS EXPANSION FACTOR %s' % rsExpansionFactor)
        assert rsExpansionFactor > 1
        self.width = symbolSize
        self.messageSymbols = int(
            math.ceil(float(messageBytes) * 8 / symbolSize))
        self.encodedSize = int(
            math.ceil(float(self.messageSymbols) * rsExpansionFactor))

        self.c = IntegerCodec(self.encodedSize,
                              self.messageSymbols,
                              symsize=symbolSize)

        self.extraSymbols = self.encodedSize - self.messageSymbols

        self.n = 3

        self.messageBytes = int(messageBytes)
        self.encodedBits = math.ceil(
            float(self.encodedSize) * self.width * self.n)
        logging.info('ENCODED BITS %s' % self.encodedBits)