123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- #ifndef M2Datei_H
- #define M2Datei_H
- #include "Array.h"
- namespace Framework
- {
- class Model2DData; //! Model2D.h
- class Text; //! Text.h
- //! Diese Klasse verwaltet das Framework eigenen Dateivormat für 2D Modell Daten
- //! Es können mehrere 2D Modell Daten in einer Datei gespeichert werden
- class M2Datei : public virtual ReferenceCounter
- {
- private:
- Text *pfad;
- RCArray< Text > *modelName;
- Array< __int64 > *modelPos;
- public:
- //! Konstruktor
- DLLEXPORT M2Datei();
- //! Konstruktor
- //! \param pfad Der Pfad zur Datei
- DLLEXPORT M2Datei( const char *pfad );
- //! Konstruktor
- //! \param pfad Der Pfad zur Datei
- DLLEXPORT M2Datei( Text *pfad );
- //! Destruktor
- DLLEXPORT ~M2Datei();
- //! Setzt den Pfad zur Datei
- //! \param pfad Pfad zur Datei
- DLLEXPORT void setPfad( const char *pfad );
- //! Setzt einen Zeiger auf den Pfad zur Datei
- //! \param pfad Zeiger auf den Pfad zur Datei
- DLLEXPORT void setPfadZ( Text *pfad );
- //! Ließt grundlegende Informationen aus der Datei, die für ihre Verwendung benötigt werden
- DLLEXPORT void leseDaten();
- //! Speichert 2D Modell Daten in der Datei
- //! \param zMdr Ein Zeiger auf die zu speichernden Daten ohne erhöhtem Reference Counter
- //! \param name Der Name, unter dem die Daten in der Datei gespeichert werden sollen
- //! \return 1, falls das Modell gespeichert wurde. 0, falls ein fehler beim speichern auftrat
- DLLEXPORT bool saveModel( Model2DData *zMdr, Text *name );
- //! Speichert 2D Modell Daten in der Datei
- //! \param zMdr Ein Zeiger auf die zu speichernden Daten ohne erhöhtem Reference Counter
- //! \param name Der Name, unter dem die Daten in der Datei gespeichert werden sollen
- //! \return 1, falls das Modell gespeichert wurde. 0, falls ein fehler beim speichern auftrat
- DLLEXPORT bool saveModel( Model2DData *zMdr, const char *name );
- //! Löscht ein 2D Modell aus der Datei
- //! \param name Der Name des Modells
- //! \return 1, wenn das Modell gelöscht wurde. 0, wenn das Modell nicht gefunden wurde, oder ein fehler beim speichern auftrat
- DLLEXPORT bool removeModel( Text *name );
- //! Löscht ein 2D Modell aus der Datei
- //! \param name Der Name des Modells
- //! \return 1, wenn das Modell gelöscht wurde. 0, wenn das Modell nicht gefunden wurde, oder ein fehler beim speichern auftrat
- DLLEXPORT bool removeModel( const char *name );
- //! Lähd ein 2D Modell aus der Datei
- //! \param name Der name des zu ladenden Modells
- //! \return Die geladenen Daten
- DLLEXPORT Model2DData *ladeModel( Text *name ) const;
- //! Lähd ein 2D Modell aus der Datei
- //! \param name Der name des zu ladenden Modells
- //! \return Die geladenen Daten
- DLLEXPORT Model2DData *ladeModel( const char *name ) const;
- //! überprft, ob ein bestimmtes 2D Modell in der Datei existiert
- //! \param name Der Name des zu suchenden 2D Modells
- //! \return 1, wenn das Modell gefunden wurde. 0 sonst
- DLLEXPORT bool hatModel( const char *name ) const;
- //! ügibt die Anzahl der gespeicherten Modelle zurück
- DLLEXPORT int getModelAnzahl() const;
- //! Gibt den Namen eines Bestimmten Modells zurück
- //! \param i Der Index des Modells
- //! \return Ein Zeiger aud den Namen des Modells ohne erhöhten Reference Counter
- DLLEXPORT Text *zModelName( int i ) const;
- };
- }
- #endif
|