X-Git-Url: https://hackdaworld.org/gitweb/?p=physik%2Fnlsop.git;a=blobdiff_plain;f=nlsop_gui.c;h=0c56147ce2ba525925efea3ba6679635303c50ff;hp=7949c55558c5a56cfe1d1f6e32ba34fb04b2e1ab;hb=5246e11671ef0cceef2086f1c9d75c35198683e2;hpb=e7f9c4ef1dd8eb2a19fe98091db7d06834643ea9 diff --git a/nlsop_gui.c b/nlsop_gui.c index 7949c55..0c56147 100644 --- a/nlsop_gui.c +++ b/nlsop_gui.c @@ -75,6 +75,85 @@ int send_and_wait_for_answer(t_net *net,t_display *display) { int send_job(t_net *net,t_input *input,t_display *display) { + char command[MAX_CONTENT]; + int x,y,z; + info info; + + /* default values */ + x=X; + y=Y; + z=Z; + info.cc=CC; + info.steps=STEPS; + info.range=RANGE; + info.diff_rate=DIFF_RATE; + info.cpi=CPI; + info.s_rate=S_RATE; + info.save_rate=RESAVE; + info.s=S_D; + info.b=B_D; + info.c=C_D; + info.dr_ac=DR_AC; + + strncpy(command,input->content,MAX_CONTENT); + + strtok(command," "); + while(strtok(NULL," ")!=NULL) { + switch(command[0]) { + case 'b': + info.b=atof(command+1); + break; + case 'c': + info.c=atof(command+1); + break; + case 's': + info.s=atof(command+1); + break; + case 'd': + info.diff_rate=atoi(command+1); + break; + case 'D': + info.dr_ac=atof(command+1); + break; + case 'S': + info.steps=atoi(command+1); + break; + case 'C': + info.cpi=atoi(command+1); + break; + case 'r': + info.range=atoi(command+1); + break; + case 'R': + info.s_rate=atoi(command+1); + break; + case 'x': + info.save_rate=atoi(command+1); + break; + case 'X': + x=atoi(command+1); + break; + case 'Y': + y=atoi(command+1); + break; + case 'Z': + z=atoi(command+1); + break; + default: + display_new_line(display,"unknown command"); + break; + } + } + + command[0]=GUI_ADDJOB; + network_send_chan(net,0,data,1); + + network_send_chan(net,0,(unsigned char *)&x,sizeof(int)); + network_send_chan(net,0,(unsigned char *)&y,sizeof(int)); + network_send_chan(net,0,(unsigned char *)&z,sizeof(int)); + + network_send_chan(net,0,(unsigned char *)&info,sizeof(info)); + return 1; }