void PL_SoftStSp::BuildDataDefn(DataDefnBlk & DDB) { DDB.Byte("Mode", "", DC_, "", &iMode, this, isParm, DDBPmpStartMode); DDB.Byte("FwdRevMode", "", DC_, "", &iFwdRev, this, isParm, DDBFwdRevMode ); switch (iMode) { case 0: DDB.CheckBoxBtn("Enable", "Run", DC_, "", &bOn, this, isParm, DDBOnOff); DDB.CheckBoxBtn("Invert", "", DC_, "", &bStartInv,this, isParm, DDBOnOff); break; case 1: case 2: DDB.CheckBoxBtn("Permissive", "", DC_, "", &bOn, this, isParm, DDBOnOff); DDB.CheckBoxBtn("Start", "", DC_, "", &bStart, this, isParm, DDBOnOff); DDB.CheckBoxBtn("Stop", "", DC_, "", &bStop, this, isParm, DDBOnOff); DDB.CheckBoxBtn("StartInvert","", DC_, "", &bStartInv,this, isParm, DDBOnOff); DDB.CheckBoxBtn("StopInvert", "", DC_, "", &bStopInv, this, isParm, DDBOnOff); break; } if (iFwdRev==PLSS_FwdRevLogic) DDB.CheckBoxBtn("Reverse", "", DC_, "", &bRunRev, this, isParm, DDBOnOff); DDB.CheckBoxBtn("Running", "", DC_, "", &bRunning, this, 0, DDBOnOff); DDB.CheckBoxBtn("Tripped", "", DC_, "", &bTripped, this, isParm, DDBOnOff); DDB.Double("StartTime", "StrtTime", DC_Time, "s", &dStartTime, this, isParm); DDB.Double("StopTime", "StopTime", DC_Time, "s", &dStopTime, this, isParm); DDB.Double("LocalY", "Manual", DC_Frac, "%", &m_dManualSpeed, this, isParm|NAN_OK); DDB.Double("Required", "Reqd", DC_Frac, "%", &m_dSpeedReqd, this, isParm); DDB.Double("Actual", "Actual", DC_Frac, "%", &m_dSpeed, this, isResult|0); DDB.Double("", "Regulated", DC_Frac, "%", &m_dSpeedReg, this, isResult); DDB.Double("MapLo", "", DC_Frac, "%", &dMapLo, this, isParm); DDB.Double("MapHi", "", DC_Frac, "%", &dMapHi, this, isParm); DDB.Double("MapSpeed", "", DC_Frac, "%", &m_dMapSpeed, this, isResult|0); DDB.Bool ("LoSpeed", "", DC_, "", &bLoSpeed, this, isResult); DDB.Bool ("HiSpeed", "", DC_, "", &bHiSpeed, this, isResult); DDB.Float ("LoSpeedLimit", "", DC_Frac, "%", &dLoSpeedLimit,this, isParm|InitHidden); DDB.Float ("HiSpeedLimit", "", DC_Frac, "%", &dHiSpeedLimit,this, isParm|InitHidden); DDB.CheckBoxBtn("AutoReStart", "", DC_, "", &m_bAutoRestart, this, isParm, DDBOnOff); DDB.Byte("FailMode", "", DC_, "", &iFailMode, this, isParm, DDBPmpFailMode); DDB.CheckBoxBtn("RunMemory", "", DC_, "", &bRunMemory, this, InitHidden, DDBOnOff); //if (m_pPwr) // m_pPwr->BuildDataDefn(DDB); };
void PL_FwdRev::BuildDataDefn(DataDefnBlk & DDB) { DDB.Byte("Mode", "", DC_, "", &iMode, this, isParm, DDBPmpStartMode); switch (iMode) { case 0: DDB.CheckBoxBtn("Enable", "Run", DC_, "", &bOn, this, isParm, DDBOnOff); DDB.CheckBoxBtn("Invert", "", DC_, "", &bStartInv,this, isParm, DDBOnOff); break; case 1: case 2: DDB.CheckBoxBtn("Permissive", "", DC_, "", &bOn, this, isParm, DDBOnOff); DDB.CheckBoxBtn("Start", "", DC_, "", &bStart, this, isParm, DDBOnOff); DDB.CheckBoxBtn("Stop", "", DC_, "", &bStop, this, isParm, DDBOnOff); DDB.CheckBoxBtn("StartInvert","", DC_, "", &bStartInv,this, isParm, DDBOnOff); DDB.CheckBoxBtn("StopInvert", "", DC_, "", &bStopInv, this, isParm, DDBOnOff); break; } DDB.CheckBoxBtn("Running", "", DC_, "", &bRunning, this, 0, DDBOnOff); DDB.CheckBoxBtn("Tripped", "", DC_, "", &bTripped, this, isParm, DDBOnOff); //DDB.Add_OnOff("State", &bOn, False, this); //DDB.Add_YesNo("Forward", &bFwd, False, this); DDB.CheckBoxBtn("Forward", "", DC_, "", &bFwd, this, isParm, DDBYesNo); DDB.Double("LocalY", "Manual", DC_Frac, "%", &m_dManualSpeed, this, isParm|NAN_OK); DDB.Double("Speed", "Reqd", DC_Frac, "%", &m_dSpeedReqd, this, isParm); DDB.Double("", "Actual", DC_Frac, "%", &m_dSpeed, this, 0); DDB.Double("", "Regulated", DC_Frac, "%", &m_dSpeedReg, this, isResult); DDB.Bool ("LoSpeed", "", DC_, "", &bLoSpeed, this, isResult); DDB.Bool ("HiSpeed", "", DC_, "", &bHiSpeed, this, isResult); DDB.Float ("LoSpeedLimit", "", DC_Frac, "%", &dLoSpeedLimit,this, isParm|InitHidden); DDB.Float ("HiSpeedLimit", "", DC_Frac, "%", &dHiSpeedLimit,this, isParm|InitHidden); DDB.CheckBoxBtn("AutoReStart", "", DC_, "", &m_bAutoRestart, this, isParm, DDBOnOff); DDB.Byte("FailMode", "", DC_, "", &iFailMode, this, isParm, DDBPmpFailMode); DDB.CheckBoxBtn("RunMemory", "", DC_, "", &bRunMemory, this, InitHidden, DDBOnOff); //if (m_pPwr) // m_pPwr->BuildDataDefn(DDB); }
void CActuator::BuildDataDefn(DataDefnBlk & DDB) { DDB.BeginStruct(this, "CActuator", NULL, DDB_NoPage); DDB.Text(""); DDB.CheckBoxBtn("On", "", DC_, "", &bOn, this, isParmStopped, DDBYesNo); DDB.CheckBoxBtn("ShowCnv", "", DC_, "", &bWithCnvComment,this, isParmStopped, DDBYesNo); DDB.Visibility(); DDB.Long("", "Ac_Cnt", DC_, "", idmCount, this, isParmStopped/*|AffectsStruct*/); DDB.Text(""); if (m_DataBlk.GetSize()>0) { DDB.Button("Check_tags", "", DC_, "", idmCheckBtn, this, isParmStopped); DDB.Text(""); DDB.String("State", "", DC_, "", &m_StateLine[0], this, noSnap|noFile); DDB.Text("Error:"); DDB.String("Msg_1", "", DC_, "", &m_StateLine[1], this, noSnap|noFile); DDB.String("Msg_2", "", DC_, "", &m_StateLine[2], this, noSnap|noFile); DDB.Text(""); } DDB.Text("----------------------------------------"); static DDBValueLst DDBFail[]={ {Fail_None, "None" }, {Fail_Hold, "Hold" }, {Fail_Hold|Fail_Noise, "Hold,Noise" }, {Fail_MinVal, "MinVal" }, {Fail_MaxVal, "MaxVal" }, {Fail_LoVal, "LoVal" }, {Fail_HiVal, "HiVal" }, {Fail_MinVal|Fail_Ramp, "MinVal,Ramp" }, {Fail_MaxVal|Fail_Ramp, "MaxVal,Ramp" }, {Fail_LoVal|Fail_Ramp, "LoVal,Ramp" }, {Fail_HiVal|Fail_Ramp, "HiVal,Ramp" }, {Fail_MinVal|Fail_Noise, "MinVal,Noise" }, {Fail_MaxVal|Fail_Noise, "MaxVal,Noise" }, {Fail_LoVal|Fail_Noise, "LoVal,Noise" }, {Fail_HiVal|Fail_Noise, "HiVal,Noise" }, {Fail_MinVal|Fail_Ramp|Fail_Noise, "MinVal,Ramp,Noise"}, {Fail_MaxVal|Fail_Ramp|Fail_Noise, "MaxVal,Ramp,Noise"}, {Fail_LoVal|Fail_Ramp|Fail_Noise, "LoVal,Ramp,Noise" }, {Fail_HiVal|Fail_Ramp|Fail_Noise, "HiVal,Ramp,Noise" }, {0}}; static DDBValueLst DDBXForms[]={ {XF_None, "None" }, {XF_Linear, "Linear" }, //{XF_Sqr, "Sqr" }, //{XF_Sqrt, "Sqrt" }, {0}}; static DDBValueLst DDBFilters[]={ {Flt_None, "None" }, {Flt_FirstOrder, "FirstOrder" }, {0}}; static DDBValueLst DDBRawXLates[]={ {XL_None, "None" }, {XL_AtoD, "AtoD" }, {XL_Linear, "Linear" }, //{XL_PulseEncode "PulseWidth" }, {0}}; char Buff[128]; Strng Tag; if (DDB.BeginArray(this, "Cfg", "Ac_Cfg", m_DataBlk.GetSize())) { for (int i=0; i<m_DataBlk.GetSize(); i++) { if (1)// i>0 && (i % 2)==1) { sprintf(Buff, "%d", i); DDB.Page(Buff, DDB_OptPage); } DDB.BeginElement(this, i); CActuatorBlk * T = m_DataBlk[i]; Strng CnvTxt; if (bWithCnvComment && XRefsValid() && T->m_bValid) GetValidCnvTxt(T->m_OutputVar, CnvTxt); DDB.String("ID", "", DC_, "", idmCfgTags+(i*NoOfCfgTags)+1, this, isParmStopped|isTag); DDB.String("OutputTag", "", DC_, "", idmCfgTags+(i*NoOfCfgTags)+2, this, isParmStopped|isTag); //DDB.Double("RequiredValue", "ReqdVal", DC_, "", &T->m_dReqdValue, this, isResult|noFileAtAll); DDB.Double("RequiredValue", "Rqd", DC_, "", &T->m_dReqdValue, this, isResult|noFileAtAll); if (CnvTxt.Len()) DDB.TagComment(CnvTxt()); // DDB.Byte ("Transform", "", DC_, "", &T->m_Xform.m_iType, this, isParm|SetOnChange, DDBXForms); // DDB.Visibility(NSHM_All, T->m_Xform.m_iType); // DDB.Float ("Xf.Factor", "", DC_, "", &T->m_Xform.m_dFactor, this, isParm); // DDB.Float ("Xf.Bias", "", DC_, "", &T->m_Xform.m_dBias, this, isParm); // // DDB.Visibility(); // // DDB.Byte ("Filter", "", DC_, "", &T->m_Flt.m_iType, this, isParm|SetOnChange, DDBFilters); // DDB.Visibility(NSHM_All, T->m_Flt.m_iType == Flt_FirstOrder); // DDB.Float ("Flt.TimeConst", "Flt.Tau", DC_Time, "s", &T->m_Flt.m_dTau, this, isParm); // DDB.Double("Flt.PrevValue", "", DC_, "", &T->m_Flt.m_dPrevValue, this, InitHidden); // DDB.Visibility(); // // DDB.Byte ("Fail.Mode", "", DC_, "", &T->m_Fail.m_iType, this, isParm|SetOnChange, DDBFail); // DDB.Float ("Fail.LoValue", "", DC_, "", &T->m_Fail.m_dLoValue, this, isParm); // DDB.Float ("Fail.HiValue", "", DC_, "", &T->m_Fail.m_dHiValue, this, isParm); // DDB.Float ("Fail.NoiseStdDev", "", DC_, "%", &T->m_Fail.m_dNoiseStdDevFrac, this, isParm); // DDB.Float ("Fail.SlewTime", "", DC_Time, "s", &T->m_Fail.m_dSlewTime, this, isParm); // // // DDB.Float ("MinValue", "MinV", DC_, "", &T->m_dMinValue, this, isParm); // DDB.Float ("MaxValue", "MaxV", DC_, "", &T->m_dMaxValue, this, isParm); // DDB.Double("Value", "", DC_, "", &T->m_dValue, this, isResult); // // DDB.Float ("LoLimit", "LL", DC_, "", &T->m_dLoLimit, this, isParm); // DDB.Float ("HiLimit", "HL", DC_, "", &T->m_dHiLimit, this, isParm); // flag ff=0; DDB.CheckBox ("LoInvert", "", DC_, "", &T->m_bLoInvert, this, isParm|SetOnChange); DDB.CheckBox ("HiInvert", "", DC_, "", &T->m_bHiInvert, this, isParm|SetOnChange); DDB.Bool ("", "Lo", DC_, "", &T->m_bLo, this, isResult); DDB.Bool ("", "Hi", DC_, "", &T->m_bHi, this, isResult); // DDB.Byte ("RawTransform", "", DC_, "", &T->m_RawXform.m_iType, this, isParm|SetOnChange, DDBRawXLates); // DDB.Visibility(NSHM_All, T->m_RawXform.m_iType>=XL_AtoD); // DDB.Float ("Raw.MinValue", "", DC_, "", &T->m_RawXform.m_dMinValue, this, isParm); // DDB.Float ("Raw.MaxValue", "", DC_, "", &T->m_RawXform.m_dMaxValue, this, isParm); // DDB.Visibility(); // //DDB.Double ("OutputValue", "Output", DC_, "", &T->m_dOutputValue, this, isResult); DDB.Double ("OutputValue", "Out", DC_, "", &T->m_dOutputValue, this, isResult); DDB.String ("PLCAddess", "", DC_, "", &T->m_sPLCAddress, this, isParmStopped|InitHidden); DDB.Long ("Priority", "", DC_, "", idmCfgTags+(i*NoOfCfgTags)+4, this, isParmStopped|InitHidden); DDB.Text("----------------------------------------"); } } DDB.EndArray(); DDB.EndStruct(); }
/*#F:This provides access to the variables of the model and calls the BuildDataDefn for objects Tled by the model.*/ void Flot::BuildDataDefn(DataDefnBlk & DDB) { DDB.BeginStruct(this); DDB.Visibility(); GSM.Add_OnOff(DDB); DDB.Visibility(DYNMODE); DDB.Text (""); //DDB.Double ("Datum_Rqd", "Z_Rqd", DC_L , "m", &Z_Rqd, this, isParm|NAN_OK); //DDB.Double ("Datum", "Z", DC_L, "m", &Z, this, 0); DDB.Double ("Pressure", "P", DC_P, "kPag", xidPMean, this, noFile|noSnap); DDB.Double ("Temperature", "T", DC_T, "C", xidTemp, this, noFile|noSnap); DDB.Double ("Density", "Rho", DC_Rho, "kg/m^3", xidRho, this, noFile|noSnap); DDB.Double ("Level", "Lvl", DC_Frac, "%", xidLevel, this, noFile|noSnap); DDB.Double ("Mass_Accum", "QmAcc", DC_Qm, "kg/s", &QmAcc, this, noFile|noSnap); DDB.Double ("Vol_Accum", "QvAcc", DC_Qv, "L/s", &QvAcc, this, noFile|noSnap); DDB.Visibility(); DDB.Text (""); static DDBValueLst DDB1[]={ {(int)True, "SizeRecovery"}, {(int)False, "NoSizeRecovery" }, {0}}; DDB.Bool ("RecoveryMethod", "Method", DC_, "", &RM, this, isParm, DDB1); DDB.Long ("Float", "Flot?", DC_, "", &iFlot, this, isParm, SDB.DDBSolSpList()); if (!RM) { DDB.Double("Recovery", "Recovery", DC_Frac, "%", &Eff, this, isParm); DDB.Double("Grade", "Grade", DC_Frac, "%", &Grd, this, isParm); DDB.Text (""); static DDBValueLst DDB0[]={ {(int)True, "Yes"}, {(int)False, "No" }, {0}}; DDB.Bool ("SecondFloat?", "SecFloat?", DC_, "", &SecFlot, this, isParm, DDB0); if (SecFlot) { DDB.Long ("SecondFloat", "SecFlot", DC_, "", &iSec, this, isParm, SDB.DDBSolSpList()); DDB.Double("SecondGrade", "SecGrade", DC_Frac, "%", &Grade2, this, isParm); } } if (RM) { DDB.Double("TotalRec", "TotalRec", DC_Frac, "%", &TotRecover, this, 0); DDB.Double("Grade", "Grade", DC_Frac, "%", &Grade, this, 0); } DDB.Text(""); DDB.Text (""); //DDB.Double ("SS_Lvl", "", DC_Frac, "%", &SS_Lvl, this, isParm); DDB.Double ("WaterInConc", "FlotWater", DC_Frac, "%", &Rec, this, isParm); DDB.Visibility(DYNMODE); DDB.Byte ("Collect", "Coll?", DC_, "", &iColl, this, isParm, SDB.DDBSpList()); DDB.Visibility(); RB.Add_OnOff(DDB); BuildDataDefnShowIOs(DDB); if (RM) DDB.Object(&SizeRec, this, NULL, NULL, DDB_RqdPage); RB.BuildDataDefn(DDB, NULL, NULL, DDB_RqdPage, 0); GSM.BuildDataDefn(DDB); if (SolveMode()==DYNMODE) { DDB.Object(&Contents, this, NULL, NULL, DDB_RqdPage); DDB.Object(&PresetImg, this, NULL, NULL, DDB_RqdPage); } DDB.Visibility(DYNMODE); DDB.Object(&FlotFn, this, NULL, NULL, DDB_RqdPage); DDB.Visibility(); DDB.EndStruct(); };
void CCWasher::BuildDataDefn(DataDefnBlk & DDB) { DDB.BeginStruct(this); BuildDataDefnElevation(DDB); DDB.Visibility(); DDB.Text (""); static DDBValueLst DDB0[]={ {(int)MEM_Scandrett, "ScandrettEff"}, {(int)MEM_Mixing, "MixingEff", MDD_Hidden }, //this has bugs, keep hidden! {0}}; static DDBValueLst DDB1[]={ {(int)True, "g/L_Solids"}, {(int)False, "%_Solids" }, {0}}; if (PrjFileVerNo()<49) { DDB.Text ("Requirements"); DDB.CheckBox("On", "", DC_, "", &fOn, this, isParm); DDB.Byte ("Eff_Specie", "RqdSpecie", DC_, "", &iScanEffSpecie, this, isParm, SDB.DDBLiqSpList()); DDB.Double ("Scandrett_wash_eff", "ScandrettEff", DC_Frac, "%", &ScandrettEff, this, isParm); DDB.Bool ("U/FMethod", "SolidSpec", DC_, "", &SA, this, isParm, DDB1); if (SA) DDB.Double("Reqd_UFlowSolids", "R_USol", DC_Conc, "g/L", &RqdUFSolidsConc25, this, isParm); else DDB.Double("U/F_Solids", "U/FSolids", DC_Frac, "%", &RqdUFSolids, this, isParm); DDB.Text ("Results"); DDB.Double ("UnderFlow_Solids", "UFSolids", DC_Frac, "%", &UFSolids, this, isResult|0); DDB.Double ("UnderFlow_Specie", "UFSpecie", DC_Conc, "g/L", &UFCaustic, this, isResult|0); DDB.Double ("OverFlow_Specie", "OFSpecie", DC_Conc, "g/L", &OFCaustic, this, isResult|InitHidden); } else { DDB.Text ("Requirements"); DDB.CheckBox("On", "", DC_, "", &fOn, this, isParm); DDB.Byte ("", "ScanEffSpecie", DC_, "", &iScanEffSpecie, this, isParm, SDB.DDBLiqSpList()); DDB.Byte ("Wash_Eff_Method", "EffMethod", DC_, "", &iEffMethod, this, isParm, DDB0); DDB.Visibility(NSHM_All, iEffMethod==MEM_Mixing); DDB.Double ("Mixing_Efficiency", "MixingEff", DC_Frac, "%", &MixEff, this, isParm); DDB.Visibility(NSHM_All, iEffMethod==MEM_Scandrett); DDB.Double ("Rqd_Scandrett_Wash_Eff", "RqdScandrettEff", DC_Frac, "%", &ScandrettEff, this, isParm); DDB.Visibility(); DDB.Bool ("UnderFlow_Method", "Method", DC_, "", &SA, this, isParm, DDB1); DDB.Visibility(NSHM_All, SA); DDB.Double ("Rqd_U/F_SolidsConc@25", "RqdUFSolConc25", DC_Conc, "g/L", &RqdUFSolidsConc25, this, isParm); DDB.Visibility(NSHM_All, !SA); DDB.Double ("Rqd_UnderFlow_Solids", "RqdUFSolids", DC_Frac, "%", &RqdUFSolids, this, isParm); DDB.Visibility(); DDB.Text (""); DDB.Text ("Results"); DDB.Double ("UnderFlow_Solids", "UFSolids", DC_Frac, "%", &UFSolids, this, isResult|0); //DDB.Double ("OverFlow_Solids", "OFSolids", DC_Frac, "%", &OFSolids, this, isResult|InitHidden); DDB.Double ("UnderFlow_SolidsConc@25", "UFSolConc25", DC_Conc, "g/L", &ActUFSolidsConc25, this, isResult|InitHidden); //DDB.Double ("OverFlow_SolidsConc@25", "OFSolConc25", DC_Conc, "g/L", &ActOFSolidsConc25, this, isResult|InitHidden); DDB.Double ("Scandrett_Wash_Eff", "ScandrettEff", DC_Frac, "%", &ActScandrettEff, this, isResult);//|noFile|noSnap); DDB.Double ("UnderFlow_Specie", "UFSpecie", DC_Conc, "g/L", &UFCaustic, this, isResult|0); DDB.Double ("OverFlow_Specie", "OFSpecie", DC_Conc, "g/L", &OFCaustic, this, isResult|0); DDB.Double ("ByPassGuess", "", DC_, "", &ByPassGuess, this, noView|isParm|NAN_OK); DDB.Double ("WashByPassGuess", "", DC_, "", &WashByPassGuess, this, noView|isParm|NAN_OK); } DDB.Text (""); m_RB.Add_OnOff(DDB); m_EHX.Add_OnOff(DDB); DDB.Text (""); BuildDataDefnShowIOs(DDB); m_RB.BuildDataDefn(DDB); m_EHX.BuildDataDefn(DDB); DDB.Visibility(); if (SolveSurgeMethod()) { DDB.Object(&Contents, this, NULL, NULL, DDB_RqdPage); DDB.Object(&m_PresetImg, this, NULL, NULL, DDB_RqdPage); } DDB.EndStruct(); }
void Sys13::BuildDataDefn(DataDefnBlk & DDB) { DDB.BeginStruct(this); DDB.Page("Page 1"); DDB.Bool ("PKA1301A.Auto", "", DC_, "", &bPKA1301A ,this ,isParm); DDB.Bool ("PKA1301B.Auto", "", DC_, "", &bPKA1301B ,this ,isParm); DDB.Bool ("UHA1301A.Auto", "", DC_, "", &bUHA1301A ,this ,isParm); DDB.Bool ("UHA1301B.Auto", "", DC_, "", &bUHA1301B ,this ,isParm); DDB.Text(" "); DDB.Double ("VLVin_Posn", "", DC_Frac, "%", &VLVin_Posn ,this ,isParm); DDB.Text(" "); DDB.Double ("VGA1301.LvlSet", "", DC_Frac, "%", &VGA1301_LvlSet,this ,isParm); DDB.Double ("VGA1301.Lvl", "", DC_Frac, "%", &VGA1301_Lvl ,this ,0); DDB.Double ("VGA1301.P", "", DC_P, "kPa", &VGA1301_P ,this ,0); DDB.Double ("VGA1301.T", "", DC_T, "C", &VGA1301_T ,this ,0); DDB.Text(" "); DDB.Double ("HBA1301.LvlSet", "", DC_Frac, "%", &HBA1301_LvlSet,this ,isParm); DDB.Double ("HBA1301.Lvl", "", DC_Frac, "%", &HBA1301_Lvl ,this ,0); DDB.Double ("HBA1301.P", "", DC_P, "kPa", &HBA1301_P ,this ,0); DDB.Double ("HBA1301.T", "", DC_T, "C", &HBA1301_T ,this ,0); DDB.Text(" "); DDB.Double ("VBA1301.Lvl", "", DC_Frac, "%", &VBA1301_Lvl ,this ,0); DDB.Double ("VBA1301.T", "", DC_T, "C", &VBA1301_T ,this ,0); DDB.Text(" "); //DDB.Double ("VB1001.LvlSet", "", DC_Frac, "%", &VB1001_LvlSet ,this ,isParm); //DDB.Double ("VB1001.Lvl", "", DC_Frac, "%", &VB1001_Lvl ,this ,0); //DDB.Double ("FEA13050.Qm", "", DC_Qm, "kg/s", &FEA13050_Qm ,this ,0); DDB.Text(" "); DDB.Double ("QmBoil", "", DC_Qm, "kg/s", &QmBoil ,this ,isParm); DDB.Double ("QmCirc", "", DC_Qm, "kg/s", &QmCirc ,this ,isParm); DDB.Double ("QmXfer", "", DC_Qm, "kg/s", &QmXfer ,this ,isParm); DDB.Double ("QmFill", "", DC_Qm, "kg/s", &QmFill ,this ,isParm); DDB.Double ("QmSetl", "", DC_Qm, "kg/s", &QmSetl ,this ,isParm); DDB.Double ("QmRich", "", DC_Qm, "kg/s", &QmRich ,this ,0); DDB.Double ("QmLean", "", DC_Qm, "kg/s", &QmLean ,this ,0); DDB.Text(" "); DDB.Double ("Q1m", "", DC_Qm, "kg/s", &Q1m ,this ,0); DDB.Double ("Q2m", "", DC_Qm, "kg/s", &Q2m ,this ,0); DDB.Double ("Q3m", "", DC_Qm, "kg/s", &Q3m ,this ,0); DDB.Double ("Q4m", "", DC_Qm, "kg/s", &Q4m ,this ,0); DDB.Double ("Q5m", "", DC_Qm, "kg/s", &Q5m ,this ,0); DDB.Double ("Q6m", "", DC_Qm, "kg/s", &Q6m ,this ,0); DDB.Double ("Q7m", "", DC_Qm, "kg/s", &Q7m ,this ,0); DDB.Text(" "); DDB.Page("Page 2"); DDB.Bool ("LC13111.Auto", "", DC_, "", &bLC13111 ,this ,isParm); DDB.Bool ("LC13114.Auto", "", DC_, "", &bLC13114 ,this ,isParm); DDB.Bool ("LC13117.Auto", "", DC_, "", &bLC13117 ,this ,isParm); DDB.Bool ("LC13120.Auto", "", DC_, "", &bLC13120 ,this ,isParm); DDB.Bool ("PK1302A.Auto", "", DC_, "", &bPK1302A ,this ,isParm); DDB.Bool ("PK1302B.Auto", "", DC_, "", &bPK1302B ,this ,isParm); DDB.Text(" "); DDB.Text(" "); DDB.Double ("VH1301.Lvl", "", DC_Frac, "%", &VH1301_Lvl ,this ,0); DDB.Double ("VH1301.T", "", DC_T, "C", &VH1301_T ,this ,0); DDB.Double ("VH1302.Lvl", "", DC_Frac, "%", &VH1302_Lvl ,this ,0); DDB.Double ("VH1302.T", "", DC_T, "C", &VH1302_T ,this ,0); DDB.Text(" "); DDB.Double ("Q8m", "", DC_Qm, "kg/s", &Q8m ,this ,0); DDB.Double ("Q9m", "", DC_Qm, "kg/s", &Q9m ,this ,0); DDB.Double ("Qam", "", DC_Qm, "kg/s", &Qam ,this ,0); DDB.Double ("Qbm", "", DC_Qm, "kg/s", &Qbm ,this ,0); DDB.Double ("Qcm", "", DC_Qm, "kg/s", &Qcm ,this ,0); DDB.Text(" "); // if (PrjFileVerNo()<24) // { VGA1301.BuildDataDefn(DDB); HBA1301.BuildDataDefn(DDB); VBA1301.BuildDataDefn(DDB); VH1301.BuildDataDefn(DDB); VH1302.BuildDataDefn(DDB); TEGStore.BuildDataDefn(DDB); // } // else // { // DDB.Object(&VGA1301 , this, NULL, NULL, DDB_OptPage); // DDB.Object(&HBA1301 , this, NULL, NULL, DDB_OptPage); // DDB.Object(&VBA1301 , this, NULL, NULL, DDB_OptPage); // DDB.Object(&VH1301 , this, NULL, NULL, DDB_OptPage); // DDB.Object(&VH1302 , this, NULL, NULL, DDB_OptPage); // DDB.Object(&TEGStore, this, NULL, NULL, DDB_OptPage); // } DDB.EndStruct(); };