Bonjour,

J'inclus une lib et un header issu du projet 'openkinect'.
Dans les exemples proposés ils utilisent beaucoup les variables globales que ce soit en c ou en c++.

Je veux faire du vrai objet avec des constructeurs, des pointeurs intelligents ...

Je me suis donc écrit une classe basée sur les exemples proposés mais je me retrouve avec presque tous mes membres en statics de partout.
Si mes variables/fonctions ne sont plus static dans la classe, le compliateur me jette avec :

"invalid use of non-statics member function"

par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
void Kinect::init_loop() {
 
    int freenect_angle = 0;
    freenect_set_tilt_degs(f_dev,freenect_angle);
    freenect_set_led(f_dev,LED_RED);
 
    freenect_set_depth_callback(f_dev, depth_cb);
 
    freenect_set_depth_mode(f_dev, freenect_find_depth_mode(FREENECT_RESOLUTION_MEDIUM, FREENECT_DEPTH_11BIT));
 
    freenect_start_depth(f_dev);
}
depth_cb doit être static sinon ça ne complie pas :-(

Je me retrouve aussi avec des pointeurs où je fais un malloc en dehors du constructeur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
uint8_t *Kinect::rgb_back = (uint8_t*)malloc(WIDTH*HEIGHT*3);
J'ai l'impression de lire du c et non plus du c++, comment faire ? Merci