12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- #pragma once
- #include "Array.h"
- namespace Framework
- {
- class Model3DData; //! Model3D.h
- class Text; //! Text.h
- class Model3D; //! Model3D.h
- namespace Standart3DTypes
- {
- extern const char* cube; //! = "f_würfel"; Die Modeldaten eines Würfels der 100 * 100 * 100 groß ist
- extern const char* texturModel; //! = "f_würfel"; Die Modeldaten eines Würfels der 100 * 100 * 100 groß ist
- };
- //! Verwaltet alle geladenen Modeldaten, so dass mehrere Zeichnungen die selben Daten benutzen können
- class Model3DList : public virtual ReferenceCounter
- {
- private:
- RCArray< Model3DData >* models;
- RCArray< Text >* names;
- public:
- //! Konstruktor
- DLLEXPORT Model3DList();
- //! Destruktor
- DLLEXPORT ~Model3DList();
- //! Fügt der Liste ein Model Hinzu
- //! \param mdl Das Model
- //! \param name Der name, unter dem das Model in der Liste gespeichert wird
- DLLEXPORT bool addModel( Model3DData* mdl, const char* name );
- //! Entfernt ein Model aus der Liste
- //! \param name Der Name des Models
- DLLEXPORT void removeModel( const char* name );
- //! Überprüft, ob unter einem bestimmten Namen ein Model abgespeichert wurde
- //! \param name Der Name
- //! \return true, wenn ein Model mit dem Namen existiert
- DLLEXPORT bool hatModel( const char* name ) const;
- //! Gibt ein bestimmtes Model zurück
- //! \param name Der Name des Models
- DLLEXPORT Model3DData* getModel( const char* name ) const;
- //! Gibt ein bestimmtes Model ohne erhöhten Reference Counter zurück
- //! \param name Der Name des Models
- DLLEXPORT Model3DData* zModel( const char* name ) const;
- //! remove All models
- DLLEXPORT void removeAll();
- };
- }
|