code: public static void goUpStreamOnNetFixed( int[] colRow, RandomIter flowIterator, RandomIter netnumIterator, int[] param ) {
  
          int kk = 0, count = 0;
          int[] point = new int[2];
  
          for( int k = 1; k <= 8; k++ ) {
              if (flowIterator.getSampleDouble(colRow[0] + dirIn[k][1], colRow[1] + dirIn[k][0], 0) == dirIn[k][2]) {
                  count++;
                  if (netnumIterator.getSampleDouble(colRow[0] + dirIn[k][1], colRow[1] + dirIn[k][0], 0) == netnumIterator
                          .getSampleDouble(colRow[0], colRow[1], 0)) {
                      kk = k;
                      point[0] = colRow[0] + dirIn[k][1];
                      point[1] = colRow[1] + dirIn[k][0];
                  }
              }
          }
          if (kk == 0) {
              for( int k = 1; k <= 8; k++ ) {
                  if (flowIterator.getSampleDouble(colRow[0] + dirIn[k][1], colRow[1] + dirIn[k][0], 0) == dirIn[k][2]) {
                      kk = k;
                      point[0] = colRow[0] + dirIn[k][1];
                      point[1] = colRow[1] + dirIn[k][0];
                  }
              }
          }
          colRow[0] = point[0];
          colRow[1] = point[1];
          param[0] = kk;
          param[1] = count;
      }
docs: Moves one pixel upstream following the supplied network. TODO Daniele doc
  
  @param colRow
  @param flowIterator
  @param netnumIterator
  @param param