|
igraphic 0.2.0
Contrats graphiques chargeables : IGraphic2Module / IGraphic3Module
|
A vendor's 3D factory. Extends IGraphic2Module : implementing it means implementing all of the 2D too, and the window it returns is an IWindow3, hence usable as an IWindow2. More...
#include <IGraphic3Module.hpp>


Public Member Functions | |
| virtual | ~IGraphic3Module ()=default |
| virtual graphic::IWindow3 * | createWindow (int32_t screenWidth, int32_t screenHeight, std::string title)=0 |
| virtual graphic::ICamera * | createCamera (Vector3f position, Vector3f target, float fov)=0 |
| virtual void | deleteCamera (graphic::ICamera *)=0 |
| virtual graphic::IMesh * | createMesh (std::string path)=0 |
| virtual void | deleteMesh (graphic::IMesh *mesh)=0 |
| virtual graphic::IAnimationSet * | createAnimationSet (std::string path)=0 |
| virtual void | deleteAnimationSet (graphic::IAnimationSet *animations)=0 |
| virtual graphic::IModel * | createModel (graphic::IMesh *mesh)=0 |
| virtual void | deleteModel (graphic::IModel *model)=0 |
Public Member Functions inherited from IGraphic2Module | |
| virtual | ~IGraphic2Module ()=default |
| virtual void | deleteWindow (graphic::IWindow2 *)=0 |
| virtual graphic::IWindow2 * | window ()=0 |
| La fenetre ouverte de ce vendor, nullptr s'il n'y en a pas. | |
| virtual graphic::IKeyboard * | createKeyboard (graphic::IWindow *window)=0 |
| virtual void | deleteKeyboard (graphic::IKeyboard *keyboard)=0 |
| virtual graphic::IMouse * | createMouse (graphic::IWindow *window)=0 |
| virtual void | deleteMouse (graphic::IMouse *mouse)=0 |
| virtual graphic::IGamepad * | createGamepad (graphic::IWindow *window)=0 |
| virtual void | deleteGamepad (graphic::IGamepad *gamepad)=0 |
| virtual graphic::ITexture * | createTexture (std::string path)=0 |
| virtual void | deleteTexture (graphic::ITexture *texture)=0 |
| virtual graphic::IFont * | createFont (std::string path)=0 |
| virtual void | deleteFont (graphic::IFont *font)=0 |
| virtual graphic::IPolygon * | createPolygon (std::vector< Vector2f > points)=0 |
| virtual void | deletePolygon (graphic::IPolygon *polygon)=0 |
| virtual graphic::ISprite * | createSprite (graphic::ITexture *texture)=0 |
| virtual void | deleteSprite (graphic::ISprite *sprite)=0 |
| virtual graphic::IText * | createText (std::string text, graphic::IFont *font)=0 |
| virtual void | deleteText (graphic::IText *text)=0 |
Static Public Attributes | |
| static constexpr const char * | entry = "getGraphic3Module" |
| Symbol the loader looks up : present = this vendor can draw 3D. | |
| static constexpr const char * | contract = "graphic3" |
| static constexpr const char * | accepts [] = {"graphic3", nullptr} |
| Rien d'autre ne fait de la 3D : je ne m'accepte que moi. | |
Static Public Attributes inherited from IGraphic2Module | |
| static constexpr const char * | entry = "getGraphic2Module" |
| Symbol the loader looks up : present = this vendor can draw 2D. | |
| static constexpr const char * | contract = "graphic2" |
| static constexpr const char * | accepts [] = {"graphic2", "graphic3", nullptr} |
| Les contrats qui me satisfont, du plus general au plus precis. | |
A vendor's 3D factory. Extends IGraphic2Module : implementing it means implementing all of the 2D too, and the window it returns is an IWindow3, hence usable as an IWindow2.
A vendor without 3D DOES NOT EXPORT this symbol, rather than returning empty objects : the missing symbol is the only way the loader learns the capability is absent.
|
virtualdefault |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
Implements IGraphic2Module.
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
staticconstexpr |
Rien d'autre ne fait de la 3D : je ne m'accepte que moi.
|
staticconstexpr |
Le contrat le PLUS PRECIS que ce module remplit. Un IGraphic3Module EST un IGraphic2Module, mais type() n'en rend qu'un seul : c'est a l'appelant de savoir que chercher de la 2D veut dire regarder les deux lignes. La table, elle, ignore la chaine d'heritage.
|
staticconstexpr |
Symbol the loader looks up : present = this vendor can draw 3D.