Ejemplo n.º 1
0
def splitbuf(buf):
    b = buf.peek(buf.used())
    (ofs, bits) = _helpers.splitbuf(b)
    if ofs:
        buf.eat(ofs)
        return (buffer(b, 0, ofs), bits)
    return (None, 0)
Ejemplo n.º 2
0
def main():
    buf = open(sys.argv[1]).read()
    ofs = 0
    while ofs < len(buf):
        count, bits = _helpers.splitbuf(buffer(buf, ofs))
        print "%s %s" % (count, bits)
        if count == 0:
            break
        ofs += count
Ejemplo n.º 3
0
def _splitbuf(buf, basebits, fanbits):
    while 1:
        b = buf.peek(buf.used())
        (ofs, bits) = _helpers.splitbuf(b)
        if ofs > BLOB_MAX:
            ofs = BLOB_MAX
        if ofs:
            buf.eat(ofs)
            level = (bits-basebits)//fanbits  # integer division
            yield buffer(b, 0, ofs), level
        else:
            break
    while buf.used() >= BLOB_MAX:
        # limit max blob size
        yield buf.get(BLOB_MAX), 0
Ejemplo n.º 4
0
def _splitbuf(buf, basebits, fanbits):
    while 1:
        b = buf.peek(buf.used())
        (ofs, bits) = _helpers.splitbuf(b)
        if ofs > BLOB_MAX:
            ofs = BLOB_MAX
        if ofs:
            buf.eat(ofs)
            level = (bits - basebits) // fanbits  # integer division
            yield buffer(b, 0, ofs), level
        else:
            break
    while buf.used() >= BLOB_MAX:
        # limit max blob size
        yield buf.get(BLOB_MAX), 0