This commit is contained in:
AlgaLaptop
2025-12-13 22:17:10 +01:00
parent b11823a83c
commit 3f06069c1e
+59 -59
View File
@@ -30,44 +30,43 @@ Objectif : Mise en place des fondations techniques
| US-P2 | AD | TODO | 🟥 | Interface simple daffichage Huffman |
| US-P3 | AA | TODO | 🟥 | Interface simple daffichage canoniques |
## Fichiers à créer Sprint 1
## Fichiers à créer Sprint 1
### `src/mimage/`
| Nom du fichier | Rôle |
|----------------|-------|
| `Pixel.java` | Représente un pixel (r, g, b) |
| `RGBImage.java` | Matrice de pixels + utilitaires |
| Nom du fichier | Rôle | US |
|----------------|-------|----|
| `Pixel.java` | Représente un pixel (r, g, b) | US-D8 |
| `RGBImage.java` | Matrice de pixels + utilitaires | US-D8, US-U5 |
### `src/mhuffman/`
| Nom du fichier | Rôle |
|----------------|-------|
| `FrequencyTable.java` | Stocke les fréquences R/G/B |
| `HuffmanNode.java` | Nœud darbre Huffman |
| `HuffmanTree.java` | Construction de larbre + génération des codes |
| `CanonicalCode.java` | Génération des codes canoniques |
### `src/mhuffman/`
| Nom du fichier | Rôle | US |
|----------------|-------|----|
| `FrequencyTable.java` | Stocke les fréquences R/G/B | US-D3 |
| `HuffmanNode.java` | Nœud darbre Huffman | US-D4 |
| `HuffmanTree.java` | Construction arbre + génération des codes | US-D4, US-D5 |
| `CanonicalCode.java` | Génération des codes canoniques | US-D6 |
### `src/util/`
| Nom du fichier | Rôle |
|----------------|-------|
| `BitInputStream.java` | Lecture bit par bit |
| `BitOutputStream.java` | Écriture bit par bit |
| `ByteUtils.java` | Conversions entiers ↔ octets |
| `FileUtils.java` | Méthodes utilitaires fichiers |
### `src/util/`
| Nom du fichier | Rôle | US |
|----------------|-------|----|
| `BitInputStream.java` | Lecture bit par bit | US-D1 |
| `BitOutputStream.java` | Écriture bit par bit | US-D2 |
| `ByteUtils.java` | Conversion int ↔ octets | — |
| `FileUtils.java` | Méthodes utilitaires fichiers | US-U5 (indirect) |
### `src/vconverter/`
| Nom du fichier | Rôle |
|----------------|-------|
| `ConverterWindow.java` | Fenêtre du convertisseur |
| `PreviewPanel.java` | Aperçu de limage chargée |
| `FrequencyTablePanel.java` | Affichage fréquences RGB |
| `CodeTablePanel.java` | Affichage Huffman + canoniques |
### `src/` (racine)
| Nom du fichier | Rôle |
|----------------|-------|
| `ConverterController.java` | Contrôleur du convertisseur |
| `Main.java` | Lancement du convertisseur (Sprint 1) |
### `src/vconverter/`
| Nom du fichier | Rôle | US |
|----------------|-------|----|
| `ConverterWindow.java` | Fenêtre du convertisseur | US-P1, US-P2, US-P3 |
| `PreviewPanel.java` | Aperçu de limage chargée | US-U5 |
| `FrequencyTablePanel.java` | Affichage fréquences RGB | US-P1 |
| `CodeTablePanel.java` | Affichage Huffman + canoniques | US-P2, US-P3 |
### `src/` (racine)
| Nom du fichier | Rôle | US |
|----------------|-------|----|
| `ConverterController.java` | Contrôleur du convertisseur | US-U5, US-D3..D6, US-P1..P3 |
| `Main.java` | Lancement du convertisseur | — |
---
### Résultat attendu Sprint 1
@@ -93,22 +92,23 @@ Objectif : Écriture du format `.pif` + finalisation convertisseur
| US-U7 | YB | TODO | 🟥 | Implémenter laperçu (PreviewPanel) |
| US-D3..D6 | YB | TODO | 🟥 | Lier interface convertisseur ↔ compression |
## Fichiers à créer Sprint 2
## Fichiers à créer Sprint 2
### `src/mpif/`
| Nom du fichier | Rôle |
|----------------|-------|
| `PIFWriter.java` | Écriture du fichier `.pif` |
### `src/mpif/`
| Nom du fichier | Rôle | US |
|----------------|-------|----|
| `PIFWriter.java` | Écriture du fichier `.pif` | US-C5, US-U6 |
### `src/vconverter/` (complément)
| Nom du fichier | Rôle |
|----------------|-------|
| `SavePanel.java` (optionnel) | UI pour sauvegarde `.pif` |
### `src/vconverter/` (complément)
| Nom du fichier | Rôle | US |
|----------------|-------|----|
| `SavePanel.java` *(optionnel)* | Interface de sauvegarde `.pif` | US-U6 |
### `src/`
| Nom du fichier | Rôle | US |
|----------------|-------|----|
| *(aucun nouveau fichier obligatoire)* | — | — |
### `src/`
| Nom du fichier | Rôle |
|----------------|-------|
| *(aucun nouveau fichier obligatoire)* | Le reste se fait dans les fichiers existants |
---
@@ -136,22 +136,22 @@ Objectif : Lecture du fichier `.pif` + visualisateur opérationnel
## Fichiers à créer Sprint 3
### `src/mpif/`
| Nom du fichier | Rôle |
|----------------|-------|
| `PIFReader.java` | Lecture et décodage du `.pif` |
## Fichiers à créer Sprint 2
### `src/vviewer/`
| Nom du fichier | Rôle |
|----------------|-------|
| `ViewerWindow.java` | Fenêtre principale |
| `ImagePanel.java` | Affichage + déplacement de limage |
### `src/mpif/`
| Nom du fichier | Rôle | US |
|----------------|-------|----|
| `PIFWriter.java` | Écriture du fichier `.pif` | US-C5, US-U6 |
### `src/`
| Nom du fichier | Rôle |
|----------------|-------|
| `ViewerController.java` | Contrôleur du visualisateur |
| `MainViewer.java` | Programme principal visualisateur |
### `src/vconverter/` (complément)
| Nom du fichier | Rôle | US |
|----------------|-------|----|
| `SavePanel.java` *(optionnel)* | Interface de sauvegarde `.pif` | US-U6 |
### `src/`
| Nom du fichier | Rôle | US |
|----------------|-------|----|
| *(aucun nouveau fichier obligatoire)* | — | — |
---