void CELConversionUtilities::FindAndAddAlgorithmParameter(string name, string defaultValue, CelFileData &inFile, CCELFileData &outFile) { ParameterNameValueType nvt; if (inFile.FindAlgorithmParameter(StringUtils::ConvertMBSToWCS(name), nvt)) { outFile.AddAlgorithmParameter(name.c_str(), StringUtils::ConvertWCSToMBS(nvt.ToString()).c_str()); } else { outFile.AddAlgorithmParameter(name.c_str(), defaultValue.c_str()); } }
void CELConversionUtilities::SetCellMargin(CelFileData &inFile, CCELFileData &outFile, int defaultValue) { ParameterNameValueType nvt; if (inFile.FindAlgorithmParameter(L"CellMargin", nvt)) { if (nvt.GetParameterType() == ParameterNameValueType::Int32Type) { outFile.GetHeader().SetMargin(nvt.GetValueInt32()); } else if(nvt.GetParameterType() == ParameterNameValueType::AsciiType) { outFile.GetHeader().SetMargin(atoi(nvt.GetValueAscii().c_str())); } } else { outFile.GetHeader().SetMargin(defaultValue); } }
/* * Get the grid from the parameters. */ GridCoordinatesType CELConversionUtilities::GetGrid(CelFileData &inFile) { GridCoordinatesType grid; ParameterNameValueType nvt; grid.lowerleft.x = grid.lowerleft.y = 0; grid.upperleft.x = grid.upperleft.y = 0; grid.lowerright.x = grid.lowerright.y = 0; grid.upperright.x = grid.upperright.y = 0; if (inFile.FindAlgorithmParameter(GRIDULX_PARAM_NAME, nvt) && nvt.GetParameterType() == ParameterNameValueType::FloatType) grid.upperleft.x = (int) nvt.GetValueFloat(); if (inFile.FindAlgorithmParameter(GRIDULY_PARAM_NAME, nvt) && nvt.GetParameterType() == ParameterNameValueType::FloatType) grid.upperleft.y = (int) nvt.GetValueFloat(); if (inFile.FindAlgorithmParameter(GRIDURX_PARAM_NAME, nvt) && nvt.GetParameterType() == ParameterNameValueType::FloatType) grid.upperright.x = (int) nvt.GetValueFloat(); if (inFile.FindAlgorithmParameter(GRIDURY_PARAM_NAME, nvt) && nvt.GetParameterType() == ParameterNameValueType::FloatType) grid.upperright.y = (int) nvt.GetValueFloat(); if (inFile.FindAlgorithmParameter(GRIDLRX_PARAM_NAME, nvt) && nvt.GetParameterType() == ParameterNameValueType::FloatType) grid.lowerright.x = (int) nvt.GetValueFloat(); if (inFile.FindAlgorithmParameter(GRIDLRY_PARAM_NAME, nvt) && nvt.GetParameterType() == ParameterNameValueType::FloatType) grid.lowerright.y = (int) nvt.GetValueFloat(); if (inFile.FindAlgorithmParameter(GRIDLLX_PARAM_NAME, nvt) && nvt.GetParameterType() == ParameterNameValueType::FloatType) grid.lowerleft.x = (int) nvt.GetValueFloat(); if (inFile.FindAlgorithmParameter(GRIDLLY_PARAM_NAME, nvt) && nvt.GetParameterType() == ParameterNameValueType::FloatType) grid.lowerleft.y = (int) nvt.GetValueFloat(); return grid; }