void CSeperator_EfficiencyCurve::BuildDataFields(MDataDefn &DB) { DB.ObjectBegin("TS_EffCurve", "EffCurve"); DB.Text("Efficiency Curve"); //DB.StructBegin("TS_Top", "Top" ); DB.StructBegin("Top"); DB.Double("Alpha" , "", &m_dTopAlpha , MF_PARAMETER , MC_None); DB.Double("Beta" , "", &m_dTopBeta , MF_PARAMETER , MC_None); DB.Double("BetaStar" , "", &m_dTopBetaStar , MF_RESULT , MC_None); DB.Double("D50" , "", &m_dTopD50 , MF_PARAMETER , MC_L("mm")); DB.Double("C" , "", &m_dTopC , MF_PARAMETER , MC_None); DB.Double("WaterSplitToUS" , "", &m_dTopWaterSplitToUS, MF_PARAMETER , MC_Frac("%")); DB.StructEnd(); //DB.StructBegin("TS_Bottom", "Bottom" ); DB.StructBegin("Bottom" ); DB.Double("Alpha" , "", &m_dBottomAlpha , MF_PARAMETER , MC_None); DB.Double("Beta" , "", &m_dBottomBeta , MF_PARAMETER , MC_None); DB.Double("BetaStar" , "", &m_dBottomBetaStar , MF_RESULT , MC_None); DB.Double("D50" , "", &m_dBottomD50 , MF_PARAMETER , MC_L("mm")); DB.Double("C" , "", &m_dBottomC , MF_PARAMETER , MC_None); DB.Double("WaterSplitToUS" , "", &m_dBottomWaterSplitToUS , MF_PARAMETER , MC_Frac("%")); DB.StructEnd(); // // Outputs // DB.Page("Top Deck Partition"); CString Tg; for (int i=(m_TopEu.GetSize()-1); i>=0; i--) { Tg.Format("Top.I%02d", i); DB.Double((char*)(const char*)Tg, "", &m_TopEu[i], MF_RESULT, MC_Frac("%")); } DB.Page("Bottom Deck Partition"); for (int i=(m_BottomEu.GetSize()-1); i>=0; i--) { Tg.Format("Bottom.I%02d", i); DB.Double((char*)(const char*)Tg, "", &m_BottomEu[i], MF_RESULT, MC_Frac("%")); } DB.ObjectEnd(); }
void CLimnStream::BuildDataFields() { //DD.Double(); DD.Page("Limn", false); DD.Text(""); if (Usage==SPMU_Flow) { DD.Text("Calculated Values ..."); DD.Double("OreSolidsFlow", "", idx_OreSolidsFlow , MF_RESULT, MC_Qm("t/h")); DD.Double(gs_DWCfg.PassSizePercentsText(0), "", idx_PassingSize0 , MF_RESULT, MC_L("mm")); DD.Double(gs_DWCfg.PassSizePercentsText(1), "", idx_PassingSize1 , MF_RESULT, MC_L("mm")); DD.Double(gs_DWCfg.PassSizePercentsText(2), "", idx_PassingSize2 , MF_RESULT, MC_L("mm")); DD.Double("MeanSG", "", idx_MeanSG , MF_RESULT, MC_Rho("t/m^3")); DD.Double("MeanSize", "", idx_MeanSize , MF_RESULT, MC_L("mm")); DD.Double("WaterFlow", "", idx_WaterFlow , MF_RESULT, MC_Qm("t/h")); DD.Double("SolidsFrac", "", idx_SolidsFrac , MF_RESULT, MC_Frac("%")); DD.Double("PulpSG", "", idx_PulpSG , MF_RESULT, MC_Rho("t/m^3")); DD.Double("FeSiFlow", "", idx_FeSiFlow , MF_RESULT, MC_Qm("t/h")); DD.Double("DiamondFlow", "", idx_DiamondFlow , MF_RESULT, MC_Qm("Carat/h")); DD.Double("DiamondAssay", "", idx_DiamondAssay , MF_RESULT, MC_Assay("Carat/100t")); DD.Double("LiberatedFlow", "", idx_LiberatedFlow , MF_RESULT, MC_Qm("Carat/h")); DD.Double("RelativeDiamonds", "", idx_RelativeDiamonds , MF_RESULT, MC_Frac("%")); DD.Double("LiberatedFraction", "", idx_LiberatedFraction , MF_RESULT, MC_Frac("%")); DD.Double("RelativeRevenue", "", idx_RelativeRevenue , MF_RESULT, MC_Frac("%")); DD.Double("Revenue", "", idx_Revenue , MF_RESULT, MC_MoneyFlow("R/h")); DD.CheckBox("MarkAsBase", "", idx_BaseMark , MF_PARAMETER); DD.String("BaseTag", "", idx_BaseTag , MF_RESULT); DD.Double("BaseDiamondFlow", "", idx_BaseDiamondFlow , MF_RESULT, MC_Qm("Carat/h")); DD.Double("BaseRevenue", "", idx_BaseRevenue , MF_RESULT, MC_MoneyFlow("R/h")); } //Relative Carats //% Liberated //Relative Revenue //Rand / hr if (Usage==SPMU_Flow) { DD.Text(""); DD.Text("Copy to Clipboard ..."); DD.Button("Summary", "", idx_CopySummary); DD.Button("Data as Mass", "", idx_CopyMass); DD.Button("Data as Fractional", "", idx_CopyFractional); } if (Usage==SPMU_Image) { DD.Text(""); DD.Text("Options ..."); DD.CheckBox("Calculator", "", idx_Calculate, MF_PARAMETER|MF_SET_ON_CHANGE); if (m_bCalculate && m_pFeed) { static MDDValueLst DDSource[]= { {0, "CSV"}, {1, "XLS"}, {0} }; DD.Long("Source", "", idx_Source, MF_PARAMETER, DDSource); DD.String("SrcName", "", idx_SrcName, MF_PARAMETER); DD.Button("SrcLoad", "", idx_SrcLoad, MF_PARAMETER); DD.Page("...", true); DD.ObjectBegin("LimnDW_Fd", "OreSizeFeed", gs_DWCfg.nOreSizes() ); CString Tg; for (int i=0; i<gs_DWCfg.nOreSizes(); i++) { Tg.Format("Ore%s",gs_DWCfg.OreSizeText(i)); DD.Double(Tg, "", &m_pFeed->m_OreSizeFeed[i], gs_DWCfg.nOreSizes()-1?MF_PARAMETER:0, MC_Frac("%")); } DD.ObjectEnd(); DD.ObjectBegin("LimnDW_Fd", "DmdSizeFeed", gs_DWCfg.nDiamondSizes() ); for (int i=0; i<gs_DWCfg.nDiamondSizes(); i++) { Tg.Format("Dmd%s",gs_DWCfg.DiamondSizeText(i)); DD.Double(Tg, "", &m_pFeed->m_DmdSizeFeed[i], i<gs_DWCfg.nDiamondSizes()-1?MF_PARAMETER:0, MC_Frac("%")); } DD.ObjectEnd(); DD.ObjectBegin("LimnDW_Fd", "DmdSGFeed", gs_DWCfg.nSGs() ); for (int i=0; i<gs_DWCfg.nSGs(); i++) { Tg.Format("SG-%s",gs_DWCfg.SGTextShort(i)); DD.Double(Tg, "", &m_pFeed->m_DmdSGFeed[i], i<gs_DWCfg.nSGs()-1?MF_PARAMETER:0, MC_Frac("%")); } DD.ObjectEnd(); } } };