本文整理汇总了C++中DataDefnBlk::Object方法的典型用法代码示例。如果您正苦于以下问题:C++ DataDefnBlk::Object方法的具体用法?C++ DataDefnBlk::Object怎么用?C++ DataDefnBlk::Object使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DataDefnBlk
的用法示例。
在下文中一共展示了DataDefnBlk::Object方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: BuildDataDefn
/*This provides access to the variables of the model and calls the
BuildDataDefn for objects used by the model.*/
void CentrifugeMB::BuildDataDefn(DataDefnBlk & DDB)
{
DDB.BeginStruct(this);
DDB.Visibility(NM_Dynamic|SM_All|HM_All);
BuildDataDefnElevation(DDB);
DDB.Text (" ");
DDB.Double ("Density", "Rho", DC_Rho, "kg/m^3", xidRho, this, isResult|0);
DDB.Double ("Level", "Lvl", DC_Frac, "%", xidLevel, this, isResult|0);
DDB.Double ("Mass_Accum", "QmAcc", DC_Qm, "kg/s", &m_QmAcc, this, isResult|0);
DDB.Double ("Vol_Accum", "QvAcc", DC_Qv, "L/s", &m_QvAcc, this, isResult|0);
DDB.Visibility();
DDB.Text ("");
DDB.Text ("Requirements");
DDB.CheckBox("On", "", DC_, "", &fOn, this, isParm);
if (PrjFileVerNo()<49)
DDB.Double ("", "SolidLoss", DC_Frac, "%", &RqdSolidsToFiltrate, this, isParm);//SolidLoss
else
DDB.Double ("Rqd_Solids_To_Filtrate", "RqdSolToFilt", DC_Frac, "%", &RqdSolidsToFiltrate,this, isParm);//SolidLoss
DDB.Double ("Rqd_Cake_Moisture", "RqdCakeMoist", DC_Frac, "%", &RqdCakeMoist, this, isParm);
DDB.Double ("Rqd_Wash_Efficiency", "RqdWashEff", DC_Frac, "%", &WashEff, this, isParm);
DDB.Text ("");
DDB.Text ("Results");
//DDB.Double ("Wash_Efficiency", "WashEff", DC_Frac, "%", &ActWashEff, this, isResult);//|noFile|noSnap);
DDB.Double ("Cake_Moisture", "CakeMoist", DC_Frac, "%", &ActCakeLiq, this, isResult);//|noFile|noSnap);
DDB.Double ("Cake_Solids", "CakeSolids", DC_Frac, "%", &ActCakeSolids, this, isResult);//|noFile|noSnap);
DDB.Double ("Filtrate_Solids", "FiltSolids", DC_Frac, "%", &ActFiltSolids, this, isResult);//|noFile|noSnap);
DDB.Double ("[email protected]", "FiltSolConc25", DC_Conc, "g/L", &ActFiltSolConc, this, isResult);//|noFile|noSnap);
DDB.Double ("[email protected]", "[email protected]", DC_Conc, "g/L", &ActFiltSolConcT, this, isResult);//|noFile|noSnap|InitHidden);
DDB.Visibility(NM_Probal|SM_All|HM_All);
//DDB.Byte ("", "ScanEffSpecie", DC_, "", &iScanEffSpecie, this, isParm, SDB.DDBLiqSpList());
//DDB.Double ("Scandrett_Wash_Eff", "ScandrettEff", DC_Frac, "%", &ActScandrettEff, this, isResult);//|noFile|noSnap);
DDB.Byte ("", "WashComp", DC_, "", &iWashEffSpecie, this, isParm, SDB.DDBLiqSpList());
DDB.Double ("", "CompWashEff1", DC_Frac, "%", &dSpWashEff, this, isResult);//|noFile|noSnap);
DDB.Double ("", "CompWashEff2", DC_Frac, "%", &dSpWashEff2, this, isResult);//|noFile|noSnap);
//DDB.Visibility(NM_Dynamic|SM_All|HM_All);
//DDB.Bool ("", "CakeDisch?", DC_ , "", &Disch, this, isParm, DDBYesNo);
DDB.Visibility();
DDB.Text (" ");
m_RB.Add_OnOff(DDB);
m_EHX.Add_OnOff(DDB);
DDB.Text (" ");
BuildDataDefnShowIOs(DDB);
m_RB.BuildDataDefn(DDB);
m_EHX.BuildDataDefn(DDB);
if (SolveSurgeMethod())
{
DDB.Object(&Contents, this, NULL, NULL, DDB_RqdPage);
DDB.Object(&m_PresetImg, this, NULL, NULL, DDB_RqdPage);
}
DDB.EndStruct();
}
示例2: BuildDataDefn
/*#F:This provides access to the variables of the model.*/
void X_Comp::BuildDataDefn(DataDefnBlk & DDB)
{
DDB.BeginStruct(this);
DDB.Text("");
DDB.Double ("","PowerMaximum", DC_Pwr, "kW", &P_MaxPower, this ,isParm);
DDB.Double ("","Psetpoint", DC_P, "kPag", &P_SetpointPressure, this ,isParm);
DDB.Double ("","Polytropic_Eff", DC_Frac, "%", &P_PolytropicEff, this ,isParm);
DDB.Double ("","Compressability", DC_, "", &P_Compressability, this ,isParm);
DDB.Text("");
DDB.Byte ("","Status", DC_, "", &P_Status, this ,isParm, DDBOnOff);
DDB.Text("");
static DDBValueLst DDB0[] = {
{0, "Pressure"},
{1, "Speed"},
{0}};
DDB.Byte ("","Control", DC_, "", &Control, this ,isParm|SetOnChange|AffectsStruct, DDB0);
dword IsPress=Control==0;
dword IsSpeed=Control==1;
DDB.Double ("","MinSpeed", DC_pS, "rpm", &MinSpeed, this ,(IsSpeed?0:noView)|isParm);
DDB.Double ("","MaxSpeed", DC_pS, "rpm", &MaxSpeed, this ,(IsSpeed?0:noView)|isParm);
DDB.Double ("","SpdTC", DC_Time, "s", &SpdTau, this ,(IsSpeed?0:noView)|isParm);
DDB.Double ("","SpdSpt", DC_Frac, "%", &SpdSpt, this ,(IsSpeed?0:noView)|isParm);
DDB.Double ("","SpdFbk", DC_Frac, "%", &SpdFbk, this ,(IsSpeed?0:noView));
DDB.Double ("","Speed", DC_pS, "rpm", &ActSpeed, this ,(IsSpeed?0:noView));
DDB.Double ("","NetBoost", DC_DP, "kPa", &TheBoost, this ,(IsSpeed?0:noView)|InitHidden);
DDB.Double ("","SpeedRatio", DC_Frac, "%", &SpeedRatio, this ,(IsPress?0:noView)|isParm|NAN_OK); // Why? - CNM
DDB.Text("");
DDB.Text("");
DDB.Double ("","SpecificHheaRat", DC_Frac, "%", &P_SpecificHeatRatio, this ,0);
DDB.Double ("","MolecularWeight", DC_, "", &P_MolecularWeight, this ,0);
DDB.Double ("","MMSCFD", DC_, "", &MFlow, this ,0);
DDB.Double ("","Pin", DC_P, "kPag", &Pin, this ,0);
DDB.Double ("","Pout", DC_P, "kPag", &Pout, this ,0);
DDB.Double ("","Qin", DC_Qm, "kg/s", &QinFlange, this ,0);
DDB.Double ("","Qout", DC_Qm, "kg/s", &QoutFlange, this ,0);
DDB.Double ("","QvSrg", DC_Qv, "m^3/s",&QvSrg, this ,0);
DDB.Double ("","QvIn", DC_Qv, "m^3/s",&QvIn, this ,0);
DDB.Double ("","Tin", DC_T, "C", &Tin, this ,0);
DDB.Double ("","Tout", DC_T, "C", &Tout, this ,0);
DDB.Double ("","PowerUsage", DC_Pwr, "kW", &CurrentPow, this ,0);
DDB.Text("");
DDB.Object(&SurgeCondition, this, NULL, "TestComment 1",DDB_RqdPage);
DDB.Object(&Efficiency, this, NULL, "TestComment 2",DDB_RqdPage);
DDB.Object(&Speed, this, NULL, "TestComment 3",DDB_RqdPage);
DDB.EndStruct();
};
示例3: BuildDataDefn
/*#F:This provides access to the variables of the model and calls the
BuildDataDefn for objects used by the model.*/
void CElectroCell::BuildDataDefn(DataDefnBlk & DDB)
{
DDB.BeginStruct(this);
DDB.Visibility(NM_Dynamic|SM_All|HM_All);
BuildDataDefnElevation(DDB);
DDB.Double ("Density", "Rho", DC_Rho, "kg/m^3", xidRho, this, isResult|0);
DDB.Double ("Level", "Lvl", DC_Frac, "%", xidLevel, this, isResult|0);
DDB.Double ("Mass_Accum", "QmAcc", DC_Qm, "kg/s", &m_QmAcc, this, isResult|0);
DDB.Double ("Vol_Accum", "QvAcc", DC_Qv, "L/s", &m_QvAcc, this, isResult|0);
DDB.Text ("");
DDB.Byte ("Plated_Metal?", "Metal?", DC_, "", &iMetal, this, isParm, SDB.DDBSolSpList());
DDB.Double ("Cathode_Mass", "Cathodes", DC_, "", &CathMass, this, isResult|0);
DDB.Visibility();
DDB.Text ("");
DDB.Double ("CellEfficiency","Cell_Eff", DC_Frac, "%", &dCellEff, this, isParm);
//DDB.Double ("", "PreHeatFrac", DC_Frac, "%", &dPreHeatFrac, this, isParm); //possibly not needed?
//DDB.Double ("", "EnergyRqd", DC_Pwr, "kW", &dHeatFlow, this, isResult|noFileAtAll|InitHidden);
//DDB.Double ("", "HeatFlow", DC_Pwr, "kW", &dHeatFlow, this, isResult|0);
DDB.Double ("", "ElecEnergyTotal", DC_Pwr, "kW", &m_dElecEnergyTotal, this, isResult|0);
DDB.Double ("", "ElecEnergyReact", DC_Pwr, "kW", &m_dElecEnergyReact, this, isResult|0);
DDB.Double ("", "ElecEnergyHeat", DC_Pwr, "kW", &m_dElecEnergyHeat , this, isResult|0);
DDB.Text ("");
DDB.Double ("TempFeed", "Feed.T", DC_T, "C", &m_TempKFeed, this, isResult);//|noFileAtAll);
DDB.Double ("FinalT", "", DC_T, "C", &m_TempKProd, this, isResult|0);
DDB.Text ("");
m_RB.Add_OnOff(DDB);
DDB.Visibility();
DDB.Text ("");
BuildDataDefnShowIOs(DDB, true);
BuildDataDefnIOOpts(DDB);
m_RB.BuildDataDefn(DDB);
if (SolveSurgeMethod())
{
DDB.Object(&Contents, this, NULL, NULL, DDB_RqdPage);
DDB.Object(&m_PresetImg, this, NULL, NULL, DDB_RqdPage);
}
DDB.Visibility(NM_Dynamic|SM_All|HM_All);
//if (Contents.SpillExists())
// DDB.Object(&Contents.OverFlow, this, NULL, NULL, DDB_RqdPage);
DDB.Visibility();
DDB.EndStruct();
};
示例4: BuildDataDefnElevation
void Crush1::BuildDataDefn(DataDefnBlk & DDB)
{
DDB.BeginStruct(this);
DDB.Text("");
DDB.CheckBox("On", "", DC_, "", &bOnLine, this, isParm);
DDB.Text("Power");
DDB.Double("Bond_WI", "BondWI", DC_WI , "kWh/t", &BWI, this, isParm);
DDB.Double("Calc_Power", "UsedPower", DC_Pwr, "kW", &Power, this, isResult|0);
DDB.Text("");
DDB.Double("Density", "Rho", DC_Rho, "kg/m^3", xidRho, this, isResult|0);
BuildDataDefnElevation(DDB);
CB.Add_StandardDataDefn(DDB, true);
DDB.Visibility(NM_Dynamic|SM_All|HM_All);
DDB.Text("");
DDB.Double("DischOnSpeed", "", DC_Frac, "%", &DischOnSpeed, this, isParm);
MSB.BuildDataDefn(DDB, this, "Speed", 1);
m_Pwr.BuildDataDefn(DDB);
DDB.Visibility();
DDB.Text("");
BuildDataDefnShowIOs(DDB);
CB.Add_ObjectDataDefn(DDB, true);
DDB.Object(&Disch, this, NULL, NULL, DDB_RqdPage);
DDB.EndStruct();
}
示例5: BuildDataDefn
void FlashTank::BuildDataDefn(DataDefnBlk &DDB)
{
DDB.BeginStruct(this);
DDB.Double ("Pressure", "P", DC_P, "kPag", xidPMean, this, 0);
DDB.Double ("Temperature", "T", DC_T, "C", xidTemp, this, 0);
DDB.Double ("Density", "Rho", DC_Rho, "kg/m^3", xidRho, this, 0);
DDB.Double ("Level", "Lvl", DC_Frac, "%", xidLevel, this, 0);
DDB.Text ("Datum");
DDB.Double ("Datum", "Z", DC_L , "m", &dDatum, this, isResult|0 | DYNMODE);
DDB.Double ("Datum_Rqd", "Z_Rqd",DC_L , "m", &dDatum_Rqd, this, isParmStopped | DYNMODE|NAN_OK);
DDB.Text (" ");
DDB.Double ("POffset", "", DC_DP, "kPa", &POffset, this, 0);
DDB.Text ("");
DDB.CheckBoxBtn("Closed", "", DC_ , "", xidClosed, this,
isParmStopped|(!gs_Environment.OK() ? noView|noFile|noSnap|noScenario:0) , DDBYesNo);
DDB.CheckBoxBtn("Networked", "", DC_ , "", xidNetPressDamp, this,
isParmStopped|(!gs_Environment.OK() || !Contents.Closed() ? noView|noFile|noSnap|noScenario:0) , DDBYesNo);
VLE.Add_OnOff(DDB);
VLE.BuildDataDefn(DDB, NULL, NULL, DDB_RqdPage, 0);
if (SolveMode()==DYNMODE)
{
DDB.Object(&Contents, this, NULL, NULL, DDB_RqdPage);
DDB.Object(&PresetImg, this, NULL, NULL, DDB_RqdPage);
}
DDB.Page("IOs");
Strng Commnt, Nm;
for (int i=0; i<NoFlwIOs(); i++)
{
Nm.Set("IO_%02i", i);
DDB.Double(Nm(), "", DC_Qm , "kg/s", xidIO_Qm0+i, this, 0);
#ifndef UsingZTagObj
DDB.VolatileTags(Nm(), Nm());
#endif
Commnt.Set("%s", Nd_Rmt(i)->FullObjTag());
DDB.TagComment(Commnt());
}
DDB.Double("IO_Sigma", "", DC_Qm , "kg/s", xidIO_QmSigma, this, 0);
DDB.EndStruct();
};
示例6: BuildDataDefnElevation
void Mill1::BuildDataDefn(DataDefnBlk & DDB)
{
DDB.BeginStruct(this);
DDB.Text("");
DDB.CheckBox("On", "", DC_, "", &bOnLine, this, isParm);
DDB.Text("Power");
DDB.Double("InstalledPower", "Motor", DC_Pwr, "kW", &Motor, this, isParm);
DDB.Double("PercentHeat", "HeatPerc", DC_Frac, "%", &Eff, this, isParm);
DDB.Double("Bond_WI", "BondWI", DC_WI , "kWh/t", &BWI, this, isParm);
DDB.Double("Calc_Power", "UsedPower", DC_Pwr, "kW", &Power, this, isResult|0);
DDB.Double("Calc_Heat", "HeatPower", DC_Pwr, "kW", &Heat, this, isResult|0);
DDB.Text("");
DDB.Double("Density", "Rho", DC_Rho, "kg/m^3", xidRho, this, isResult|0);
BuildDataDefnElevation(DDB);
CB.Add_StandardDataDefn(DDB, true);
DDB.Visibility(NM_Dynamic|SM_All|HM_All);
DDB.Text("");
DDB.Double("DischOnSpeed", "", DC_Frac, "%", &DischOnSpeed, this, isParm);
MSB.BuildDataDefn(DDB, this, "Speed", 1);
m_Pwr.BuildDataDefn(DDB);
DDB.Visibility();
m_RB.Add_OnOff(DDB);
DDB.Text("");
BuildDataDefnShowIOs(DDB);
CB.Add_ObjectDataDefn(DDB, true);
m_RB.BuildDataDefn(DDB);
if (NetDynamicMethod())
{
DDB.Object(&Contents, this, NULL, NULL, DDB_RqdPage);
DDB.Object(&m_PresetImg, this, NULL, NULL, DDB_RqdPage);
}
DDB.Object(&Disch, this, NULL, NULL, DDB_RqdPage);
DDB.EndStruct();
}
示例7: Add_ObjectDataDefn
void CrushBlk::Add_ObjectDataDefn(DataDefnBlk & DDB, flag Vis)
{
DDEF_Flags Old = DDB.GetVisibility();
DDB.Visibility(NSHM_All, Vis);
switch (iMethod)
{
case CM_PartCrv_Overall:
case CM_PartCrv_Individ:
DDB.Object(&DischParts, this, NULL, NULL, DDB_RqdPage);
break;
case CM_SelBreak:
case CM_JK:
DDB.Object(&SelBrk, this, NULL, NULL, DDB_RqdPage);
break;
case CM_TestData_Overall:
case CM_TestData_Individ:
if (!bEnterExtents)
DDB.Object(&DataParts, this, NULL, NULL, DDB_RqdPage);
DDB.Object(&Extents, this, NULL, NULL, DDB_RqdPage);
break;
}
DDB.SetVisibility(Old);
}
示例8: BuildDataDefn
void Crusher::BuildDataDefn(DataDefnBlk & DDB)
{
DDB.BeginStruct(this);
BuildDataDefnElevation(DDB);
DDB.Text("");
DDB.Text("");
static DDBValueLst DDB0[]={
{CM_PartCrv, "PartitionCrv"},
{CM_SelBreak, "Select/Break"},
{0}};
DDB.Byte ("Method", "", DC_, "", &iMethod, this, isParm|DDEF_SETONCHANGE, DDB0);
//? DDB.Bool("UseSelBrk", "", DC_, "", &fUseSelBrk, this, isParm, DDBYesNo);
DDB.Text("");
DDB.Double("Bond_WI", "Bond_WI", DC_WI , "kWh/t", &BWI , this, isParm);
DDB.Double("Calc_Power", "CalcPower", DC_Pwr, "kW", &Power, this, isResult|0);
//DDB.Double("Density", "Rho", DC_Rho, "kg/m^3", xidRho, this, 0);
//DDB.Double("Level", "Lvl", DC_Frac, "%", xidLevel, this, 0);
MSB.BuildDataDefn(DDB, this, "Speed", 1);
m_Pwr.BuildDataDefn(DDB);
//DDB.Object(&BWDist, this);
//DDB.Object(&EDist, this);
if (iMethod==CM_SelBreak)
DDB.Object(&SelBrk, this);
else
DDB.Object(&DischPart, this);
DDB.Object(&Disch, this, NULL, NULL, DDB_RqdPage);
DDB.EndStruct();
};
示例9: BuildDataDefn
void HydroCyclone::BuildDataDefn(DataDefnBlk & DDB)
{
DDB.BeginStruct(this);
DDB.Double("ByePass2Grits", "", DC_Frac, "%", &ByePass2Grits, this,isParm);
DDB.Double("OreToGrits", "", DC_Frac, "%", &Ore2Grit, this, DynMode() ? 0 : isParm);
DDB.Double("LiqToGrits", "", DC_Frac, "%", &Liq2Grit, this, DynMode() ? 0 : isParm);
DDB.Text("");
GSM.Add_OnOff(DDB);
GSM.BuildDataDefn(DDB, NULL, NULL, DDB_OptPage);
DDB.Object(&PartCrv, this, NULL, NULL, DDB_RqdPage);
DDB.EndStruct();
};
示例10: BuildDataDefn
void CPipeTerm::BuildDataDefn(DataDefnBlk &DDB)
{
DDB.BeginStruct(this, NULL, NULL, DDB_NoPage);
DDB.Text ("Flow Conditions");
DDB.Double ("Mass_Flow", "Qm", DC_Qm, "kg/s", xidQm, this, isResult|noFile|noSnap);
DDB.Double ("Vol_Flow", "Qv", DC_Qv, "L/s", xidQv, this, isResult|noFile|noSnap);
DDB.Double ("NVol_Flow", "NQv", DC_NQv, "NL/s", xidNQv, this, isResult|noFile|noSnap);
DDB.Double ("Temperature", "T", DC_T, "C", xidTemp, this, isResult|noFile|noSnap);
DDB.Double ("Density", "Rho", DC_Rho, "kg/m^3", xidRho, this, isResult|noFile|noSnap);
DDB.Double ("NDensity", "NRho", DC_Rho, "kg/m^3", xidNRho, this, isResult|noFile|noSnap);
DDB.Double ("PressureIn", "PIn", DC_P, "kPag", xidPIn, this, isResult|noFile|noSnap);
DDB.Double ("PressureOut", "POut", DC_P, "kPag", xidPOut, this, isResult|noFile|noSnap);
DDB.Visibility(NSHM_All);
flag ParmOK=true;
DDB.Visibility();
DDB.Text ("");
DDB.Double("PressureOutRqd","POutRqd", DC_P, "kPag", &m_dPOut, this, isParm);
DDB.Double("Head", "", DC_L, "m", &m_dHead, this, isParm);
BuildDataDefnElevation(DDB);
DDB.Text ("");
m_FRB.BuildDataDefn(DDB, this, true);
DDB.Visibility(NM_Dynamic|SM_All|HM_All);
DDB.Text ("");
m_VPB.BuildDataDefn(DDB, this, "Posn", 1);
DDB.Visibility(NSHM_All);
if (NoFlwIOs()>0 && !DDB.ForFileSnpScn())
IOFB(0,0)->BuildDataDefn(FBDDOpt_WithAll, DDB, this, "CtrlEqn", 2);
DDB.Visibility();
DDB.Object(&m_Flows, this, NULL, NULL, DDB_RqdPage);
DDB.Text("");
DDB.EndStruct();
}
示例11: BuildDataDefn
//.........这里部分代码省略.........
{MCT_KaVL, "KaV/L"},
{MCT_TOut, "OutletT"},
{0}};
static DDBValueLst DDB2[]={
{WLM_None, "None"},
{WLM_Frac, "MassFrac"},
{WLM_Qm, "MassFlow"},
{WLM_DriftBlowdown, "Drift&Blowdown"},
{0}};
//TODO: many of these variables should be calculated using xid_xxx rather than storing everything!
DDB.Text ("");
DDB.Byte ("Method", "", DC_, "", &iMethod, this, isParm|SetOnChange, DDB0);
DDB.Text ("");
DDB.Text ("Characteristics");
DDB.Visibility(NM_Probal|SM_All|HM_All, iMethod==CTM_Merkel);
DDB.Byte ("CalcType", "", DC_, "", &iMerkelCalcType,this, isParm|SetOnChange, DDB1);
DDB.Visibility(NM_Probal|SM_All|HM_All);
DDB.Double ("AirWetBulbT", "", DC_T, "C", &dAirWetBulbT, this, isParm);
DDB.Double ("ApproachTemp","ApproachT", DC_dT, "C", &dApproachT, this, (iMethod==CTM_Merkel && iMerkelCalcType==MCT_TOut) ? isResult : isParm);
DDB.Visibility(NM_Probal|SM_All|HM_All, iMethod==CTM_Merkel);
DDB.Double ("LG_Ratio", "", DC_, "", &dLGRatio, this, isParm);
DDB.Double ("KaVL", "", DC_, "", &dKaVL, this, (iMethod==CTM_Merkel && iMerkelCalcType==MCT_TOut) ? isParm : isResult);
DDB.Visibility(NM_Probal|SM_All|HM_All);
DDB.Double ("FeedQm", "", DC_Qm, "kg/s", &dQmIn, this, isResult);
DDB.Double ("TempFeed", "Feed.T", DC_T, "C", &dTempKFeed, this, isResult);
DDB.Double ("TempDrop", "TDrop", DC_dT, "C", &dTempDrop, this, isResult);
DDB.Double ("FinalT", "", DC_T, "C", &dFinalT, this, isResult);
//DDB.Double ("HeatFlow", "", DC_Pwr, "kW", &dHeatFlow, this, isResult); perhaps remove???
DDB.Visibility(NM_Probal|SM_All|HM_All, iMethod==CTM_Merkel);
DDB.Double ("HeatTransfer", "", DC_Pwr, "kW", &dDuty, this, isResult);
DDB.Visibility(NM_Probal|SM_All|HM_All);
DDB.Double ("FinalP", "", DC_P, "kPag", &dFinalP, this, isResult|InitHidden);
DDB.Text ("");
DDB.Text ("Water Loss/Makeup");
DDB.Byte ("LossMethod", "", DC_, "", &iLossMethod, this, isParm|SetOnChange, DDB2);
DDB.Visibility(NM_Probal|SM_All|HM_All, iLossMethod==WLM_DriftBlowdown);
DDB.Double ("DriftLoss", "", DC_Frac, "%", &dDriftLossFrac, this, isParm);
DDB.Long ("Cycles", "", DC_, "", &iCycles, this, isParm);
DDB.Visibility(NM_Probal|SM_All|HM_All, iLossMethod==WLM_Frac);
DDB.Double ("RqdLossFrac", "", DC_Frac, "%", &dRqdLossFrac, this, isParm);
DDB.Visibility(NM_Probal|SM_All|HM_All, iLossMethod==WLM_Qm);
DDB.Double ("RqdLossQm", "", DC_Qm, "kg/s", &dRqdLossQm, this, isParm);
DDB.Visibility(NM_Probal|SM_All|HM_All, iLossMethod==WLM_Frac || iLossMethod==WLM_Qm);
DDB.Double ("FracOfLossToDrift", "", DC_Frac, "%", &dRqdDriftLossFrac, this, isParm);
DDB.Visibility(NM_Probal|SM_All|HM_All, iMethod==CTM_Merkel);
DDB.Double ("EvapFactor", "", DC_, "", &dEvapFactor, this, isParm);
DDB.Visibility(NM_Probal|SM_All|HM_All, iMethod==CTM_Simple);
DDB.Double ("MaxEvapFrac", "", DC_Frac, "%", &dMaxEvapFrac, this, isParm);
DDB.Visibility(NM_Probal|SM_All|HM_All);
DDB.Double ("DriftLossQm", "", DC_Qm, "kg/s", &dDriftLossQm, this, isResult);
DDB.Double ("BlowdownLossQm", "", DC_Qm, "kg/s", &dBlowdownLossQm,this, isResult);
DDB.Double ("LossQm", "", DC_Qm, "kg/s", &dLossQm, this, isResult);
DDB.Double ("EvapLossQm", "", DC_Qm, "kg/s", &dEvapLossQm, this, isResult);
DDB.Double ("TotalLossQm", "", DC_Qm, "kg/s", &dTotalLossQm, this, isResult|InitHidden);
DDB.Double ("WaterEvapQm", "EvapQm", DC_Qm, "kg/s", &dQmWaterEvap, this, isResult|InitHidden);
DDB.Double ("WaterVapFrac", "", DC_Frac, "%", &dEvapFrac, this, isResult);
if (iMethod==CTM_Merkel)
{
DDB.Text ("");
DDB.Text ("Air-Water Mixture Estimates");
}
DDB.Visibility(NM_Probal|SM_All|HM_All, iMethod==CTM_Merkel);
DDB.Double ("AirEnthOut", "", DC_HMs, "kJ/kg", &dAirEnthOut, this, isResult);
DDB.Double ("HeatAvailable", "", DC_Pwr, "kW", &dDuty, this, isResult);
DDB.Double ("AirQm", "", DC_Qm, "kg/s", &dAirQmIn, this, isResult);
DDB.Double ("AirCp", "", DC_CpMs, "kJ/kg.C",&dAirCp, this, isParm);
DDB.Double ("AirInDryBulbT", "", DC_T, "C", &dAirDryBulbT, this, isParm);
DDB.Double ("AirTRise", "", DC_dT, "C", &dAirTRise, this, isResult);
DDB.Double ("AirOutT", "", DC_T, "C", &dAirTOut, this, isResult);
DDB.Double ("AirWaterMixQm", "", DC_Qm, "kg/s", &dAirMixQm, this, isResult);
DDB.Double ("AirWaterMixCpEst", "", DC_CpMs, "kJ/kg.C",&dAirMixCp, this, isResult);
DDB.Double ("AirWaterMixTEst", "", DC_T, "C", &dAirMixT, this, isResult);
//DDB.Visibility(NM_Probal|SM_All|HM_All);
//RB.Add_OnOff(DDB, False);
//EHX.Add_OnOff(DDB, False);
DDB.Visibility();
DDB.Text (" ");
BuildDataDefnShowIOs(DDB);
BuildDataDefnIOOpts(DDB);
//RB.BuildDataDefn(DDB);
//EHX.BuildDataDefn(DDB);
//VLE.BuildDataDefn(DDB);
if (NetDynamicMethod())
{
DDB.Object(&Contents, this, NULL, NULL, DDB_RqdPage);
DDB.Object(&m_PresetImg, this, NULL, NULL, DDB_RqdPage);
//if (Contents.SpillExists())
// DDB.Object(&Contents.OverFlow(), this, NULL, NULL, DDB_RqdPage);
}
DDB.EndStruct();
}
示例12: BuildDataDefn
/*#F:This provides access to the variables of the model.*/
void X_Tie::BuildDataDefn(DataDefnBlk & DDB)
{
DDB.BeginStruct(this);
DDB.Text ("");
DDB.Double ("Pressure", "P", DC_P, "kPag", xidPMean, this, isResult|0);
DDB.Visibility(NM_Dynamic|SM_All|HM_All);
DDB.Double ("PressureEst", "PEst", DC_P, "kPag", xidPEstMean, this, isResult|0);
DDB.Text ("");
BuildDataDefnElevation(DDB);
DDB.Visibility(NM_Probal|SM_All|HM_All);
DDB.Text ("");
long PBOpts= (m_VLE.Enabled() ? (PC_BasicPB & ~PC_SatP):PC_BasicPB);
long DynOpts= (m_VLE.Enabled() ? (PC_BasicDyn & ~PC_SatP):PC_BasicDyn);
m_PCtrl0.BuildDataDefn(DDB, this, NetProbalMethod(), PBOpts, DynOpts);//PC_Atmos|PC_Reqd);
DDB.Visibility();
if (NetDynamicMethod())
{
DDB.Text("");
DDB.CheckBoxBtn("NetworkIsolator", "", DC_, "", xidNetworkIsolator, this, isParmStopped|SetOnChange|AffectsStruct);
}
if (!m_NetworkIsolator)
{
m_BlkEval.Add_OnOff(DDB);
if (PrjFileVerNo()<97 && (DDB.DoingPutData() && DDB.ForFileSnpScn() || 0))
{
DDB.Text("");
m_RB.Add_OnOff(DDB);
m_EHX.Add_OnOff(DDB);
}
DDB.Visibility(SM_Buffered|HM_All);
m_Leak.Add_OnOff(DDB,0,100);
DDB.Visibility();
GSM.Add_OnOff(DDB);
DDB.CheckBox("ShowQFeed", "", DC_, "", &m_bShowQFeed, this, isParm|SetOnChange);
DDB.CheckBox("ShowQProd", "", DC_, "", &m_bShowQProd, this, isParm|SetOnChange);
}
#if XREFTEST
DDB.CheckBox("TagIOTest", "", DC_, "", &m_bTestTagIO, this, isParm|SetOnChange);
#endif
DDB.Text("");
BuildDataDefnShowIOs(DDB);
BuildDataDefnIOOpts(DDB);
if (m_NetworkIsolator)
{
DDB.Visibility();
DDB.Object(m_Accumulator, this, NULL, NULL, DDB_RqdPage);
if (m_bShowQFeed)
DDB.Object(&m_QFeed, this, NULL, NULL, DDB_RqdPage);
m_QProd(); // ensure exists
if (m_QProd.Exists())
{
DDB.Visibility(NSHM_All, m_bShowQProd);
DDB.Object(&m_QProd, this, NULL, NULL, DDB_RqdPage);
DDB.Visibility();
}
}
else //if (1)//NetProbalMethod())
{
DDB.Text("");
m_BlkEval.BuildDataDefn(DDB);
GSM.BuildDataDefn(DDB);
m_QFeed(); // ensure exists
if (m_QFeed.Exists())
{
DDB.Visibility(NSHM_All, m_bShowQFeed);
DDB.Object(&m_QFeed, this, NULL, NULL, DDB_RqdPage);
DDB.Visibility();
}
m_QProd(); // ensure exists
if (m_QProd.Exists())
{
DDB.Visibility(NSHM_All, m_bShowQProd);
DDB.Object(&m_QProd, this, NULL, NULL, DDB_RqdPage);
DDB.Visibility();
}
}
//BuildDataDefnAreaIOs(DDB);
DDB.EndStruct();
};
示例13: BuildDataDefn
//.........这里部分代码省略.........
DDB.Long ("NSections", "", DC_, "", xidNSections, this, isResult);
if (DDB.BeginStruct(this, "MinSect", 0, DDB_NoPage))
{
DDB.Double ("Length", "", DC_Frac, "%", &m_Q.m_dMinFracSectLen, this, isParm);
DDB.Visibility(NM_Dynamic|SM_All|HM_All, m_Q.m_dMinFracSectLen>0);
DDB.Double ("LoadTol", "", DC_Frac, "%", &m_Q.m_dLoadTol, this, isParm);
DDB.Double ("TempTol", "", DC_Frac, "%", &m_Q.m_dTempTol, this, isParm);
DDB.Double ("MFracTol", "", DC_Frac, "%", &m_Q.m_dMFracTol, this, isParm);
}
DDB.EndStruct();
DDB.Text("");
BuildDataDefnShowIOs(DDB);
if (m_WtMtrPos.GetSize())
{
DDB.Page("WtMtrs", DDB_RqdPage);
if (DDB.BeginArray(this, "WtMtr", "WtMtr", m_WtMtrPos.GetSize(), 0))
{
for (int i=0; i<m_WtMtrPos.GetSize(); i++)
if (DDB.BeginElement(this, i))
{
DDB.Double("Pos", "", DC_L , "m", xidWtrMtrPos0+i, this, isParm);
DDB.Double("Loading", "", DC_MpL, "kg/m", xidWtrMtrLd0+i, this, isResult|0);
DDB.Double("Rate", "", DC_Qm, "kg/s", xidWtrMtrRate0+i, this, isResult|0);
DDB.Text("");
}
}
DDB.EndArray();
}
int FdLst[MaxIOList], PrLst[MaxIOList];
int nFd=0, nPr=0;
for (int i=0; i<NoFlwIOs(); i++)
if (IOId_Self(i)==idFeed)
FdLst[nFd++]=i;
else if (IOId_Self(i)==idProd)
PrLst[nPr++]=i;
int DoOld=((!DDB.ForFiling() && !DDB.ForSnapShot() && !DDB.ForScenario() && !DDB.ForView()) ||
(DDB.ForFiling() && DDB.DoingPutData()));
Strng Nm;
DDB.Page("Feeds", DDB_RqdPage);
if (DDB.BeginArray(this, "Fd", "BltCnvFd", nFd, 0))
for (i=0; i<nFd; i++)
if (DDB.BeginElement(this, Nd_Rmt(FdLst[i])->FullObjTag()))
{
DDB.Double ("Pos", "", DC_L , "m", xidFeedPos0+i, this, isParm);
DDB.Visibility(NM_Dynamic|SM_All|HM_All);
DDB.CheckBoxBtn("Limited", "", DC_, "", xidFeedLimited0+i, this, isParm);
DDB.Visibility(NM_Dynamic|SM_All|HM_All, m_Q.FeedLimited(i));
DDB.Double ("Capacity", "", DC_Frac, "%", xidFeedCapFrac0+i, this, isParm);
DDB.Visibility();
DDB.Double ("Qm", "", DC_Qm , "kg/s", xidFeedQm0+i, this, 0);
DDB.Text("");
if (DoOld)
{
DDB.BeginElement(this, i);
DDB.Double("Pos", "", DC_L , "m", xidFeedPos0+i, this, isParm);
DDB.Double("Qm", "", DC_Qm , "kg/s", xidFeedQm0+i, this, 0);
}
}
DDB.EndArray();
DDB.Page("Products", DDB_RqdPage);
if (DDB.BeginArray(this, "Pr", "BltCnvPr", nPr, 0))
for (i=0; i<nPr; i++)
if (DDB.BeginElement(this, Nd_Rmt(PrLst[i])->FullObjTag()))
{
DDB.Double("Pos", "", DC_L , "m", xidProdPos0+i, this, isParm);
DDB.Double("Removal","", DC_Frac , "%", xidProdRemove0+i, this, isParm);
DDB.Double("Qm", "", DC_Qm , "kg/s", xidProdQm0+i, this, 0);
DDB.Double("Loss", "", DC_Qm , "kg/s", xidProdLoss0+i, this, 0);
DDB.Text("");
if (DoOld)
{
DDB.BeginElement(this, i);
//DDB.TagComment(Nd_Rmt(PrLst[i])->FullObjTag());
//DDB.BeginElement(this, Nd_Rmt(PrLst[i])->FullObjTag());
DDB.Double("Pos", "", DC_L , "m", xidProdPos0+i, this, isParm);
DDB.Double("Removal","", DC_Frac , "%", xidProdRemove0+i, this, isParm);
DDB.Double("Qm", "", DC_Qm , "kg/s", xidProdQm0+i, this, 0);
DDB.Double("Loss", "", DC_Qm , "kg/s", xidProdLoss0+i, this, 0);
}
}
DDB.EndArray();
if (m_fShowProfile)
DDB.Object(&m_Q.Profile(), this);
//BuildDataDefnAreaIOs(DDB);
DDB.EndStruct();
};
示例14: BuildDataDefn
void FilterPress::BuildDataDefn(DataDefnBlk & DDB)
{
DDB.BeginStruct(this);
DDB.Visibility(SM_Buffered|HM_All);
BuildDataDefnElevation(DDB);
DDB.Visibility();
DDB.Text ("");
static DDBValueLst DDB0[]={
{FSM_SolToFiltFrac, "SolidsToFiltrateFraction"},
{FSM_FiltSolConc, "FiltrateConcentration"},
{0}};
DDB.Text ("Requirements");
DDB.Byte ("Filtrate_Method", "Method", DC_, "", &iRqdFiltMethod, this, isParm|AffectsStruct, DDB0);
DDB.Visibility(NSHM_All, (iRqdFiltMethod == FSM_SolToFiltFrac));
if (PrjFileVerNo()<48)
DDB.Double ("", "RqdFiltSolids", DC_Frac, "%", &RqdSolidsToFiltrate,this, isParm);
else
DDB.Double ("Rqd_Solids_To_Filtrate", "RqdSolToFilt", DC_Frac, "%", &RqdSolidsToFiltrate,this, isParm);//SolidLoss
DDB.Visibility(NSHM_All, (iRqdFiltMethod == FSM_FiltSolConc));
DDB.Double ("Rqd_FiltrateSolidsConc25","RqdFiltSolConc25",DC_Conc, "g/L", &RqdFiltSolConc, this, isParm);
DDB.Visibility();
DDB.Double ("Solids_To_FiltrateUsed", "SolToFiltUsed", DC_Frac, "%", &SolidsToFiltUsed, this, isResult|InitHidden);//|noView);
DDB.Double ("Rqd_Cake_Moisture", "RqdCakeMoist", DC_Frac, "%", &RqdCakeMoist, this, isParm);
DDB.Double ("Rqd_Wash_Efficiency", "RqdWashEff", DC_Frac, "%", &RqdWashEff, this, isParm);
DDB.Text ("Results");
DDB.Double ("Wash_Efficiency", "WashEff", DC_Frac, "%", &ActWashEff, this, isResult);//|noFile|noSnap);
DDB.Double ("Cake_Solids", "CakeSolids", DC_Frac, "%", &ActCakeSolids, this, isResult);//|noFile|noSnap);
DDB.Double ("Filtrate_Solids", "FiltSolids", DC_Frac, "%", &ActFiltSolids, this, isResult);//|noFile|noSnap);
DDB.Double ("[email protected]", "CakeSolConc25", DC_Conc, "g/L", &ActCakeSolConc, this, isResult);//|noFile|noSnap);
DDB.Double ("[email protected]", "FiltSolConc25", DC_Conc, "g/L", &ActFiltSolConc, this, isResult);//|noFile|noSnap);
//DDB.Double ("[email protected]", "[email protected]", DC_Conc, "g/L", &ActFiltSolConcT, this, isResult);//|noFile|noSnap|InitHidden);
//DDB.Byte ("", "ScanEffSpecie", DC_, "", &iScanEffSpecie, this, isParm, SDB.DDBLiqSpList());
//DDB.Double ("Scandrett_Wash_Eff", "ScandrettEff", DC_Frac, "%", &ActScandrettEff, this, isResult);//|noFile|noSnap);
DDB.Byte ("", "WashComp", DC_, "", &iWashEffSpecie, this, isParm, SDB.DDBLiqSpList());
DDB.Double ("", "CompWashEff", DC_Frac, "%", &dSpWashEff, this, isResult);//|noFile|noSnap);
DDB.Text (" ");
DDB.CheckBox("TrackStatus", "", DC_, "", &bTrackStatus, this, isParm);
DDB.Visibility(SM_Buffered|HM_All);
DDB.Text (" ");
DDB.CheckBoxBtn("", "Filtrate2Washing", DC_, "", &fFilt2Washings, this, isParm, DDBYesNo);
DDB.CheckBoxBtn("", "CakeDisch", DC_, "", &fDischarge, this, isParm, DDBYesNo);
DDB.Text (" ");
DDB.Double ("", "Press_Drop", DC_DP, "kPa", &FilterDP, this, isResult|0);
DDB.Double ("", "MembraneRes", DC_MembDP, "kPa.s/m", &MembDP, this, isParm);
DDB.Double ("", "Viscosity", DC_Visc, "cP", &LiqVisc, this, isParm);
DDB.Double ("", "SpecCakeResistance", DC_SpCakeRes, "m/kg", &SpCakeRes, this, isParm);
DDB.Double ("", "Area", DC_Area, "m^2", &FiltArea, this, isParm);
if (SolveSurgeMethod())
DDB.Object(&m_Cake, this, NULL, NULL, DDB_RqdPage);
DDB.Visibility();
DDB.Text ("");
BuildDataDefnShowIOs(DDB);
//BuildDataDefnAreaIOs(DDB);
DDB.EndStruct();
}
示例15: BuildDataDefn
/*This provides access to the variables of the model and calls the
BuildDataDefn for objects used by the model.*/
void DuctUnit::BuildDataDefn(DataDefnBlk & DDB)
{
DDB.BeginStruct(this);
DDB.Visibility();
BuildDataDefnElevation(DDB);
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", &m_QmAcc, this, noFile|noSnap);
DDB.Double ("Vol_Accum", "QvAcc", DC_Qv, "L/s", &m_QvAcc, this, noFile|noSnap);
//DDB.Text ("");
//DDB.Visibility(NM_Probal|SM_All|HM_All|SSMODE);
//DDB.Double ("FlashSplit", "", DC_Frac, "%", &FlashSplit, this, 0);
//DDB.Double ("SS_Lvl", "", DC_Frac, "%", &SS_Lvl, this, isParm);
DDB.Visibility();
DDB.Text ("");
DDB.CheckBoxBtn("Closed", "", DC_ , "", xidClosed, this,
isParmStopped|(!gs_Environment.HasGas() ? noView|noFile|noSnap|noScenario:0) , DDBYesNo);
DDB.CheckBoxBtn("NetPressDamping", "", DC_ , "", xidNetPressDamp, this,
isParmStopped|(!gs_Environment.HasGas() || !Contents.Closed() ? noView|noFile|noSnap|noScenario:0) , DDBYesNo);
GSM.Add_OnOff(DDB);
m_VLE.Add_OnOff(DDB);
m_HX.Add_OnOff(DDB);
m_RB.Add_OnOff(DDB);
BuildDataDefnElevation(DDB);
DDB.Text("");
DDB.Visibility();
DDB.Double ("RqdTOut", "", DC_T, "C", &dRqdTOut, this, isParm|SetOnChange|NAN_OK);
DDB.Double ("RqddT", "", DC_dT, "C", &dRqddT, this, isParm|SetOnChange|NAN_OK);
DDB.Visibility(NM_Dynamic|SM_All|HM_All, Valid(dRqddT));
DDB.Double ("RqdTOutMin", "", DC_T, "C", &dRqdTOutMin, this, isParm);
DDB.Double ("RqdTOutMax", "", DC_T, "C", &dRqdTOutMax, this, isParm);
DDB.Visibility(NM_Dynamic|SM_All|HM_All, Valid(dRqddT)||Valid(dRqdTOut));
DDB.Double ("TInLowest", "", DC_T, "C", &dTInLowest, this, isParm);
DDB.Double ("TInHighest", "", DC_T, "C", &dTInHighest, this, isParm);
DDB.Visibility(NM_Dynamic|SM_All|HM_All, !Valid(dRqddT)&&!Valid(dRqdTOut));
DDB.Double ("AmbientTemp", "", DC_T, "C", &dAmbientTemp, this, isParm);
DDB.Double ("HeatLoss", "", DC_HCapF,"kJ/dC/s", &dHeatXferCoeff, this, isParm);
DDB.Double ("StructMass", "", DC_M, "kg", &dStructMass, this, isParm);
DDB.Double ("StructTemp", "", DC_T, "C", &dStructTemp, this, isParm);
DDB.Double ("StructCp", "", DC_CpMs, "kJ/kg.C", &dStructCp, this, isParm);
DDB.Visibility();
DDB.Double ("RqdH2OVapFrac", "", DC_Frac, "%", &dRqdH2OVapFrac, this, isParm);
DDB.Double ("HeatLossRate", "", DC_Pwr, "kW", &dHeatLossRate, this, 0);
DDB.Double ("QmSink", "", DC_Qm, "kg/s", &dQmSink, this, 0);
DDB.Double ("QmSinkMeas", "", DC_Qm, "kg/s", &dQmSinkMeas, this, NAN_OK);
DDB.Double ("QmSinkTau", "", DC_Time, "s", &dQmSinkTau, this, isParm);
// QmSink=0.0;
// QmSinkTau=3.0;
DDB.Text("");
BuildDataDefnIOOptions(DDB);
DDB.Text("");
DDB.Visibility();
BuildDataDefnShowIOs(DDB);
m_HX.BuildDataDefn(DDB, NULL, NULL, DDB_RqdPage, 0);
m_RB.BuildDataDefn(DDB);
m_VLE.BuildDataDefn(DDB);
GSM.BuildDataDefn(DDB);
if (NetDynamicMethod())
{
DDB.Object(&Contents, this, NULL, NULL, DDB_RqdPage);
DDB.Object(&m_PresetImg, this, NULL, NULL, DDB_RqdPage);
}
//if (Contents.SpillExists())
// DDB.Object(&Contents.OverFlow(), this, NULL, NULL, DDB_RqdPage);
//DDB.Object(&OverFlow, this, NULL, DDB_RqdPage);
DDB.EndStruct();
};