本文整理汇总了C++中DataDefnBlk::EndArray方法的典型用法代码示例。如果您正苦于以下问题:C++ DataDefnBlk::EndArray方法的具体用法?C++ DataDefnBlk::EndArray怎么用?C++ DataDefnBlk::EndArray使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DataDefnBlk
的用法示例。
在下文中一共展示了DataDefnBlk::EndArray方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: BuildDataDefn
//.........这里部分代码省略.........
{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();
}
示例2: BuildDataDefn
/*This provides access to the variables of the model and calls the
BuildDataDefn for objects used by the model.*/
void BeltCnv::BuildDataDefn(DataDefnBlk & DDB)
{
DDB.BeginStruct(this);
//DDB.Page ("Parms");
DDB.Text ("");
DDB.Visibility(NM_Dynamic|SM_All|HM_All);
BuildDataDefnElevation(DDB);
DDB.Text("");
DDB.Double ("BeltSpeed", "", DC_Ldt, "m/s", xidBeltSpeed, this, isResult);
DDB.Visibility();
DDB.Double ("Length", "L", DC_L, "m", xidBeltLength, this, isParm);
DDB.Visibility(NM_Dynamic|SM_All|HM_All);
DDB.Double ("MaxSpeed", "", DC_Ldt, "m/s", &m_MaxVelocity, this, isParm);
DDB.Double ("MaxLoading", "MaxSpillLoad", DC_MpL, "kg/m", &m_MaxSpillLoading, this, isParm);
DDB.Double ("MinLoading", "", DC_MpL, "kg/m", &m_MinLoading, this, isParm|InitHidden);
DDB.Long ("MaxTurndown", "", DC_, "", &m_MaxTurnDown, this, isParm|InitHidden);
DDB.Visibility(NM_Dynamic|SM_All|HM_All);
DDB.Double ("", "MaxStallLoad", DC_M, "kg", &m_MaxStallLoading, this, isParm);
DDB.CheckBox("", "StartIfStalled", DC_, "", &m_fStartIfStalled, this, isParm);
DDB.Byte ("", "WasRunning", DC_, "", &m_fWasRunning, this, isResult|InitHidden);
DDB.Double ("TotalMass", "", DC_M, "kg", xidTotalMass, this, isResult);
DDB.Double ("AvgLoading", "", DC_MpL, "kg/m", xidAvgLoading, this, isResult);
if (OrigPrjFileVerNo()<90 && DDB.ForFileSnpScn())
DDB.String ("SpillArea", "", DC_, "", &m_sAreaTag, this, isParmStopped);
DDB.Double ("TotalSpilt", "", DC_M, "kg", xidTotSpilt, this, isParm);
DDB.Double ("TotalVented", "", DC_M, "kg", xidTotVented, this, isParm);
DDB.Page("BeltDrive", DDB_RqdPage);
DDB.Text ("Power Draw");
DDB.Double ("NoLoadPower", "", DC_Pwr, "kW", &m_NLPower, this, isParm);
DDB.Double ("FullLoadPower","", DC_Pwr, "kW", &m_FLPower, this, isParm);
DDB.Double ("Power", "", DC_Pwr, "kW", &m_Power, this, isResult);
DDB.Text("");
m_Pwr.BuildDataDefn(DDB);
m_BeltSB.BuildDataDefn(DDB, this, "Speed", 1);
DDB.Visibility();
DDB.Text("");
DDB.Long ("NoWtMtrs", "", DC_, "", xidNWtMtrs, this, isParm);
static DDBValueLst DDB1[] = {
{QPT_None, "None" },
{QPT_FixedPts, "Fixed Points"},
{QPT_AllSections, "All Section Pts"},
{QPT_MinSections, "Min Section Pts"},
{0}};
DDB.CheckBox("ShowProfile", "", DC_, "", xidShowProf, this, isParm|SetOnChange);
DDB.Visibility(NM_Dynamic|SM_All|HM_All, m_fShowProfile);
DDB.Long ("ProfDispType", "", DC_, "", xidProfDispType, this, isParm, DDB1);
//DDB.Visibility(NM_Dynamic|SM_All|HM_All, m_fShowProfile && m_ProfDispType==QPT_FixedPts);
//DDB.Long ("ProfilePts", "", DC_, "", xidProfPts, this, isParm);
DDB.Visibility(NM_Dynamic|SM_All|HM_All);
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()) ||
//.........这里部分代码省略.........