File: WORKFLOW\TCalculateCmd.cpp
1 #include "workflow\TCalculateCmd.h"
2
3 extern TSteering Steering;
4
5 TCalculateCmd::TCalculateCmd ( TCmdTag ct ) : TCmd(ct)
6 {
7 bNoMeasure= TRUE;
8 float hwb;
9 switch ((ECmdParam)ct.P1)
10 {
11 case Difference:
12 Steering.dCalcResult= Steering.dCalcArg[2] - Steering.dCalcArg[1];
13 break;
14
15 case Opposite:
16 Steering.dCalcResult= 2.0 * Steering.dPeakPoint - Steering.dCalcArg[1];
17 break;
18
19 case Hwb:
20 hwb= Steering.dCalcArg[2] - Steering.dCalcArg[1];
21 if ( (mGetUnit() == utGrad) || (mGetUnit() == utMinuten) )
22 hwb *= 60.0;// FEHLER? muss bei Grad nicht mit 3600 multipliziert werden
23 Steering.SetHwb( hwb );
24 break;
25
26 case Middle:
27 Steering.dCalcResult= (Steering.dCalcArg[1] + Steering.dCalcArg[2]) / 2.0;
28 break;
29 }
30 eStep= CReady;
31 }
32
33 bool TCalculateCmd::GetShowData ( LPSTR buffer )
34 {
35 buffer[0]= 0;
36 if ( eStep == CReady )
37 {
38 #ifdef GermanVersion
39 sprintf(buffer, "\"Calculate\"-Kommando erfolgreich.");
42 #endif
43 }
44 return true;
45 }
46
47 void TCalculateCmd::GetName ( LPSTR aName )
48 {
49 strcpy( aName, "Calculate" );
50 }
51