Salut,

je me pose une petit question de conception, je fais du code glu pour wrapper une api.
Par exemple j'ai ma classe MyWindow qui instancie des fenetres et qui fait appel à une API de mon choix(QT, SDL, glut,...) via par exemple une factory, peu importe.

Je me demande s'il y a un moyen judicieux de faire matcher un enum que je définit avec un enum de l'API, je m'explique:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
enum displayMode{
RGBA = 0,
RGB,
...
};
 
class MyWindow
{
public:
MyWindow(displayMode dm)
...
Je définit un enum displayMode et dans le constructeur je vais faire appel à une fonction d'initialisation de fenetre en utilisant ce parametre via une autre classe WrapperQTAPI par exemple, mais évidement l'enum ne match pas avec un enum équivalent de l'api.

Ma seule idée est de faire une map de correspondance pour chaque wrapper d'api.

Si vous avez un design plus judicieux une meilleure idée, des ref ou autre doc, je vous écoute.