Bonjour,
Voila je vous explique mon problème.
Je développe une application en MFC qui récupère les données d'un spectromètre. Ce spectromètre est fourni avec une librairie qui me renvoi un spectre dans un tableau de 2048 valeur par l'intermédiaire d'un Message pour me dire que les données son prêtes.
Jusqu'à la pas de problème je récupère bien mais données dans ma fonction OnDataReady qui correspond bien prototype demandé :
LONG OnDataReady(UINT wParam,LONG lParam);
Maintenant mon problème est de savoir comment faire pour que la fonction OnDataReady me prévienne que les données sont stockées et que je peux lancer le traitement.
Voici mon code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| void CSpectre::Scan()
{
OnSingleScan(); //appelle la fonction qui lance lacquisition du spectre
//ici je voudrais avoir une solution qui me permette de rendre la main au
//système et qui me prévienne que OnDataReady a reçu mais données a ce
//moment la je reprendrai mon traitement.
...
...
}
//fonction qui récupère le message et qui stocke le spectre dans ma classe
LONG CSpectre::OnDataReady(UINT wParam,LONG lParam)
{
for (int i=0;i<=2047;i++)
{
m_arSpectre[wParam][i]=ooip.chdat[wParam][i];
}
OOI_BufferEmpty(hInstance,wParam);
return true;
} |
Je vous remercie de bien vouloir m’aider car la je bloque je ne vois pas comment résoudre ce problème.
Partager