org.apache.commons.math3.linear

## Class DefaultFieldMatrixChangingVisitor<T extends FieldElement<T>>

- java.lang.Object
- - org.apache.commons.math3.linear.DefaultFieldMatrixChangingVisitor<T>

Type Parameters:
  `T` - the type of the field elements

All Implemented Interfaces:
  FieldMatrixChangingVisitor<T>

    public class DefaultFieldMatrixChangingVisitor<T extends FieldElement<T>>
    extends java.lang.Object
    implements FieldMatrixChangingVisitor<T>

Default implementation of the `FieldMatrixChangingVisitor` interface.

This class is a convenience to create custom visitors without defining all methods. This class provides default implementations that do nothing.

Since:
  2.0
Version:
  $Id: DefaultFieldMatrixChangingVisitor.java 1416643 2012-12-03 19:37:14Z tn $

### Field Summary

Fields
`private T` `zero` Zero element of the field.

### Constructor Summary

Constructors
Constructor and Description
`DefaultFieldMatrixChangingVisitor(T zero)` Build a new instance.

### Method Summary

Methods
`T` `end()` End visiting a matrix.
`void` `start(int rows, int columns, int startRow, int endRow, int startColumn, int endColumn)` Start visiting a matrix.
`T` `visit(int row, int column, T value)` Visit one matrix entry.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### zero

    private final T extends FieldElement<T> zero

Zero element of the field.

### Constructor Detail

#### DefaultFieldMatrixChangingVisitor

    public DefaultFieldMatrixChangingVisitor(T zero)

Build a new instance.

Parameters:
  `zero` - additive identity of the field

### Method Detail

#### start

    public void start(int rows,
             int columns,
             int startRow,
             int endRow,
             int startColumn,
             int endColumn)

Start visiting a matrix.

This method is called once before any entry of the matrix is visited.

Specified by:
  `start` in interface `FieldMatrixChangingVisitor<T extends FieldElement<T>>`
Parameters:
  `rows` - number of rows of the matrix
  `columns` - number of columns of the matrix
  `startRow` - Initial row index
  `endRow` - Final row index (inclusive)
  `startColumn` - Initial column index
  `endColumn` - Final column index (inclusive)

#### visit

    public T visit(int row,
          int column,
          T value)

Visit one matrix entry.

Specified by:
  `visit` in interface `FieldMatrixChangingVisitor<T extends FieldElement<T>>`
Parameters:
  `row` - row index of the entry
  `column` - column index of the entry
  `value` - current value of the entry
Returns:
  the new value to be set for the entry

#### end

    public T end()

End visiting a matrix.

This method is called once after all entries of the matrix have been visited.

Specified by:
  `end` in interface `FieldMatrixChangingVisitor<T extends FieldElement<T>>`
Returns:
  the value that the `walkInXxxOrder` must return