Bonjour,

j'utilise une bibliothèque de moteur 3D nommé Irrlicht.
Il existe une classe nommée IVideoDriver avec un certains nombre de fonctions. J'aimerais en rajouter une particulière pour mon programme mais sans avoir à modifier le code d'Irrlicht.
Pour cela je crée une classe MyVideoDriver déclaré de cette façon :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
class MyVideoDriver : public video::IVideoDriver
Le problème est que normalement pour instancier la classe IVideoDriver il faut procéder de la façon suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
video::IVideoDriver* _driver;
_driver = _device->getVideoDriver();
Le prototype de la fonction getVideoDriver() est le suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
virtual video::IVideoDriver* getVideoDriver() = 0;
Ce que je voudrais faire c'est de pouvoir instancier ma classe via la fonction getVideoDriver, donc :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
MyVideoDriver* _driver;
_driver = _device->getVideoDriver();
Est ce que c'est conceptuellement parlant faisable ? Si oui, commment ? Sinon, je me débrouillerai autrement...