streams
Class SHOutputStream
java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
streams.SHOutputStream
- All Implemented Interfaces:
- java.io.Closeable, java.io.Flushable
public class SHOutputStream
- extends java.io.FilterOutputStream
Trida, ktera umoznuje zakodovani dat statickym Huffmanovym kodovanim.
Pouziva se semiadaptivni verze algoritmu, datovy model je
odeslan jako cetnosti jednotlivych bytu zakodovanych Fibonacciho kodem
radu 2.
Fields inherited from class java.io.FilterOutputStream |
out |
Constructor Summary |
SHOutputStream(java.io.OutputStream os)
Vytvori koder statickeho Huffmanova kodu. |
Method Summary |
protected static ByteInfoSH |
buildHuffmanTree(ByteInfoSH[] byteTable)
|
void |
close()
Provede flush a uzavre stream. |
void |
flush()
Vypise do vystupu statisticky model, vytvori kody znaku a zapise zakodovana data. |
void |
write(int b)
Zapise data - vytvari statisticky model a zapisovana data uklada
do docasneho souboru. |
Methods inherited from class java.io.FilterOutputStream |
write, write |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SHOutputStream
public SHOutputStream(java.io.OutputStream os)
throws pradny.UnsupportedOutputException,
java.io.IOException
- Vytvori koder statickeho Huffmanova kodu.
- Parameters:
os
- vystup pro data
- Throws:
pradny.UnsupportedOutputException
- pri nevhodnem vystupu
java.io.IOException
- pri I/O chybe
write
public void write(int b)
throws java.io.IOException
- Zapise data - vytvari statisticky model a zapisovana data uklada
do docasneho souboru.
- Overrides:
write
in class java.io.FilterOutputStream
- Parameters:
b
- zapisovana data
- Throws:
java.io.IOException
- pri I/O chybe
flush
public void flush()
throws java.io.IOException
- Vypise do vystupu statisticky model, vytvori kody znaku a zapise zakodovana data.
Po flush uz neni dalsi zapis mozny.
- Specified by:
flush
in interface java.io.Flushable
- Overrides:
flush
in class java.io.FilterOutputStream
- Throws:
java.io.IOException
- pri I/O chybe
buildHuffmanTree
protected static ByteInfoSH buildHuffmanTree(ByteInfoSH[] byteTable)
close
public void close()
throws java.io.IOException
- Provede flush a uzavre stream.
- Specified by:
close
in interface java.io.Closeable
- Overrides:
close
in class java.io.FilterOutputStream
- Throws:
java.io.IOException
- pri I/O chybe