1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
| int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInst, LPSTR cmdline, int Show)
{
//unsigned short **amplitude_tmp, **phase_tmp;
amplitude_tmp=(unsigned short **)malloc(4*sizeof(unsigned short*));
phase_tmp=(unsigned short **)malloc(4*sizeof(unsigned short*));
Nom_signal=(char **)malloc(4*sizeof(char*));
for(int i=0; i<4; i++)
{
amplitude_tmp[i]=(unsigned short*)malloc(90*sizeof(unsigned short));
phase_tmp[i]=(unsigned short*)malloc(90*sizeof(unsigned short));
Nom_signal[i]=(char*)malloc(20*sizeof(char));
}
for(int i=0; i<4; i++)
{
for(int j=0; j<90; j++)
{amplitude_tmp[i][j]=0;
phase_tmp[i][j]=0;}
for(int j=0; j<20; j++)
Nom_signal[i][j]=0;
}
show=Show; //Initialisation de la variable globale
hinst = hInstance; //Initialisation de la variable globale
//MessageBox(0,cmdline,"",0);
//for(int i=0; i<90; i++)
//{ amplitude[i]=tmp_amplitude[i]*0.0205; //Normalisation de l'amplitude en dB
// phase[i]=tmp_phase[i]*360/4095;} //Normalisation de la phase en degré
MSG msg; //Varaible de type message permettant d'intercepter les message windows
WNDCLASSEX wc; //Variable de type Windows permettant de créé la fentre
wc.cbSize = sizeof(WNDCLASSEX); //On redimensionne la fenetre
HMENU hMenu;
wc.style =CS_HREDRAW | CS_VREDRAW; //Donne le style de la fenetre
wc.lpfnWndProc = MainWndProc; //Indique le programme à executer
wc.cbClsExtra = 0; //Allocation de memoire supplementaire pour la classe de la fentre
wc.cbWndExtra = 0; //Allocation de memoire supplementaire pour l'identifiant de la fentre
wc.hInstance = hinst; //Identifiant de la fenetre
wc.hIcon =LoadIcon(hinst, (LPCTSTR)IDI_GSE_FINAL); //Icone du point exe
wc.hCursor = LoadCursor(NULL, IDC_ARROW); //Curseur utiliser pour la fenetre
wc.hbrBackground = (HBRUSH)(1 + COLOR_BTNFACE); //Arriere plan de la fenetre
wc.lpszMenuName = NULL; //Nom de la variable du menu de la fentre
wc.lpszClassName = "GSE-Data"; //Nom de la classe de la fenetre
wc.hIconSm = LoadIcon(hinst, (LPCTSTR)IDI_SMALLGSE); //Icone apparaissante dans le bandeau de la fenetre
if(!RegisterClassEx(&wc)) return FALSE; //Sert à mémorisser la classe
/////Creation de la fenetre d'application
Frame = CreateWindow("GSE-Data", "Spectre et Phase du Signal", WS_SYSMENU|WS_BORDER,
340,312, 600,400, NULL, NULL, hinst, NULL);
if (!Frame) return FALSE; //Si impossible de créer la fentre retour au programme avec une erreur
ShowWindow(Frame, show); //Affichage de la fenetre
hMenu = LoadMenu(hinst, "Menu");
SetMenu(Frame, hMenu);
UpdateWindow(Frame); //Sert à rafraichir la fenetre
while (GetMessage(&msg, NULL, 0, 0)) //Reception des messages Si message = WM_QUIT ->GetMessage==NULL
{
TranslateMessage(&msg); //Traduit le message de type WM_KEYDOWN en WM_CHAR
DispatchMessage(&msg); //Envoyer le message à la procédure de fenêtre.
}
free(amplitude_tmp);
free(phase_tmp);
free(Nom_signal); |
Partager