- Page principale
- Espaces de nommage
- Classes
- Fichiers

- Liste des fichiers
- Membres de fichier

# src/SfoFile/SfoFile.hpp

Aller à la documentation de ce fichier.

    00001 #ifndef SFOFILE_HPP
    00002 #define SFOFILE_HPP
    00003
    00004 // Détection du système cible...
    00005 #include "usgeDetectSystem.h"
    00006
    00007 namespace USpeedGameEngine
    00008 {
    00009
    00010 class SfoFile
    00011 {
    00012     /****************
    00013     * Les attributs *
    00014     ****************/
    00015     public :
    00019         struct SfoSection
    00020         {
    00021             unsigned char label[2];
    00022             unsigned char rfu001;
    00023             unsigned char dataType;
    00024             unsigned long int datafieldUsed;
    00025             unsigned long int datafieldSize;
    00026             unsigned long int data;
    00027         };
    00028
    00029     protected :
    00030     private :
    00031         unsigned long int sectionsCount;
    00032         struct SfoFile::SfoSection *sections;
    00033         unsigned long int dataPosition;
    00034         unsigned char *data;
    00035         unsigned long int dataSize;
    00036         unsigned long int currentSection;
    00037         bool nextFirstCall;
    00038
    00039     /***************
    00040     * Les méthodes *
    00041     ***************/
    00042     public :
    00043         // Constructeur de la classe
    00044         SfoFile();
    00045         // Destructeur de la classe
    00046         ~SfoFile();
    00047         // Charge le fichier SFO spécifié
    00048         bool load(const char *filename);
    00049         // Retourne le nombre de sections SFO disponibles à la lecture
    00050         unsigned long int getSectionsCount();
    00051         // Remet le pointeur de parcours des sections à zéro
    00052         void resetIterator();
    00053         // Sélectionne la section suivante (retourne "false" si c'est la dernière section)
    00054         bool nextSection();
    00055         // Choisit la section courante
    00056         bool selectSection(unsigned long int mySection);
    00057         // Retourne les données SFO de la section courante
    00058         const unsigned char *getData();
    00059         // Retourne le type de données de la section courante
    00060         unsigned char getDataType();
    00061         // Retourne la taille des données de la section courante
    00062         unsigned long int getDataSize();
    00063     protected :
    00064     private :
    00065         // Efface tout
    00066         void reset();
    00067 };
    00068
    00069 }        // Fin "namespace USpeedGameEngine"
    00070
    00071 #endif