NewDecoderSize creates and inits a new decoder for the known size.
(size, chunkLen int)
| 27 | |
| 28 | // NewDecoderSize creates and inits a new decoder for the known size. |
| 29 | func NewDecoderSize(size, chunkLen int) *Decoder { |
| 30 | numChunks := numberOfChunks(size, chunkLen) |
| 31 | codec := fountain.NewLubyCodec(numChunks, rand.New(fountain.NewMersenneTwister(200)), solitonDistribution(numChunks)) |
| 32 | return &Decoder{ |
| 33 | codec: codec, |
| 34 | fd: codec.NewDecoder(size), |
| 35 | total: size, |
| 36 | chunkLen: chunkLen, |
| 37 | cache: make(map[string]struct{}), |
| 38 | } |
| 39 | } |
| 40 | |
| 41 | // Decode takes a single chunk of data and decodes it. |
| 42 | // Chunk expected to be validated (see Validate) before. |
nothing calls this directly
no test coverage detected