//-----------<Test Stub>-------- static void main(string[] args) { Console.WriteLine("\nTesting the MatrixElement class"); Console.WriteLine("\n================================\n"); MatrixElement elem_mat = new MatrixElement(); VariableElement elem_var = new VariableElement(); IntegerElement elem_int = new IntegerElement(); string var = "matrix"; string row = "3"; string column = "4"; elem_var.setText(var); elem_mat.setVar(elem_var); elem_int.setText(row); elem_mat.setRow(elem_int); elem_int.setText(column); elem_mat.setColumn(elem_int); VariableElement varelement = elem_mat.getVar(); IntegerElement rowelement = elem_mat.getRow(); IntegerElement columnelement = elem_mat.getColumn(); Console.WriteLine("The Matrix element is:{0},[{1}],[{2}]", varelement.getText(),rowelement.getText(),columnelement.getText()); }
private void PerformMatrixSingleElementOperation(MatrixElement temp) { if (map_contains_matrix(temp.getVar().getText())) { MatrixVariableDeclaration matTemp = null; if (temp != null) { matTemp = (MatrixVariableDeclaration)mVariableMap[temp.getVar().getText()]; int row = getMatrixRow(temp); int col = getMatrixCol(temp); if (matTemp != null) { if (row < int.Parse(matTemp.getRow().getText()) && col < int.Parse(matTemp.getColumn().getText())) { if (matTemp.getType() == "int") { int val = matTemp.getintValueat(row, col); IntegerElement elem = new IntegerElement(); elem.setText(val.ToString()); mat_stack.Push(elem); } else if (matTemp.getType() == "double") { double val = matTemp.getdoubleValueat(row, col); DoubleElement elem = new DoubleElement(); elem.setText(val.ToString()); mat_stack.Push(elem); } } else { Console.Write("Range out of bound\n"); sendres(112, "Range out of bound\n"); } } } } }
public override void VisitMatrixSingleElement(MatrixElement element) { try { MatrixElement temp = element; if (inParallelFor == 1) { if (parallelVars.Contains(element.getVar().getText())) { } else { matrixData(element.getVar().getText()); } parallelString.Append(temp.getVar().getText()); parallelString.Append("["); if (temp.getRow() is VariableElement) parallelString.Append(((VariableElement)temp.getRow()).getText()); else if (temp.getRow() is IntegerElement) parallelString.Append(((IntegerElement)temp.getRow()).getText()); parallelString.Append("]"); parallelString.Append("["); if (temp.getColumn() is VariableElement) parallelString.Append(((VariableElement)temp.getColumn()).getText()); else if (temp.getColumn() is IntegerElement) parallelString.Append(((IntegerElement)temp.getColumn()).getText()); parallelString.Append("]"); } else { PerformMatrixSingleElementOperation(element); } } catch (Exception e) { sendres(112, "Error in matrix element\n"); e.GetType(); } }