Bonjour à tous


Dans le cadre d'un projet pour fac, j'utilise ODE et drawstuff dans un projet en C++.

Pour ceux qui ne connaissent pas ODE est un moteur physique www.ode.org, et drawstuff est une bibliothèque qu'ils ont utilisé dans leurs exemples.

Pour faire fonctionner drawstuff j'ai besoin d'un pointeur de fonction de type void (*)(int), mais je n'ai qu'une méthode non static de classe.

Comment je pourrais faire pour passer cette méthode ? avec un simple cast ?


J'avais eu un problème similaire pour un thread et je l'avais résolu comme ça

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
 
void GeneticAlgorithm::genetic()
{
///bla bla
}
 
void launch(void* data)
{
GeneticAlgorithm* algo = (GeneticAlgorithm*)data;
algo->genetic();
}
void GeneticAlgorithm::start()
{
pthread_create(&thread,...,launch,this);
}
mais là je ne peux pas faire pareil.

Avez vous une idée?


Merci d'avance.