41 lines
978 B
Plaintext
41 lines
978 B
Plaintext
|
|
@startuml
|
||
|
|
skinparam classAttributeIconSize 0
|
||
|
|
skinparam packageStyle rectangle
|
||
|
|
skinparam dpi 50
|
||
|
|
|
||
|
|
package "Model - Huffman & Compression" {
|
||
|
|
class FrequencyTable #64B5F6
|
||
|
|
class HuffmanTree #64B5F6
|
||
|
|
class CanonicalCode #64B5F6
|
||
|
|
}
|
||
|
|
|
||
|
|
package "Model - Images & Fichiers" {
|
||
|
|
class RGBImage #64B5F6
|
||
|
|
class BitOutputStream #64B5F6
|
||
|
|
class PIFWriter #64B5F6
|
||
|
|
}
|
||
|
|
|
||
|
|
package "Controller" {
|
||
|
|
class ConverterController #FFA500
|
||
|
|
class ThreadSauvegardePIF #FFA500
|
||
|
|
}
|
||
|
|
|
||
|
|
package "View - Interface" {
|
||
|
|
class ConverterWindow #66BB6A
|
||
|
|
}
|
||
|
|
|
||
|
|
' Relations principales
|
||
|
|
ConverterController --> RGBImage : charge
|
||
|
|
ConverterController --> FrequencyTable : calcule
|
||
|
|
ConverterController --> HuffmanTree : génère
|
||
|
|
ConverterController --> CanonicalCode : construit
|
||
|
|
ConverterController --> ConverterWindow : met à jour
|
||
|
|
|
||
|
|
ConverterWindow --> ThreadSauvegardePIF : lance
|
||
|
|
|
||
|
|
ThreadSauvegardePIF --> PIFWriter : déclenche
|
||
|
|
PIFWriter --> BitOutputStream : utilise
|
||
|
|
PIFWriter --> RGBImage : encode
|
||
|
|
|
||
|
|
@enduml
|