## org.ascape.util.sweep
Class SweepGroup

    java.lang.Object
      org.ascape.util.sweep.SweepGroup

All Implemented Interfaces:
  java.io.Serializable, Sweepable

    public class SweepGroup

extends java.lang.Object
implements Sweepable, java.io.Serializable

A class faciliating iteration across several parameter dimensions, supporting multiple runs per parameter set. This class assumes that the total group size will almost always be quite small (10 dimensions or so at most), so the implementation uses a number of large O methods.

Since:
  1.9
Version:
  1.9
Author:
  Miles Parker
See Also:
  Serialized Form

Constructor Summary
`SweepGroup()`

Method Summary
`void` `addMember(Sweepable sweep)` Adds the 'sweepable' (sweep iterator) to the group.
`Sweepable` `getMember(int pos)` Returns the 'sweepable' (sweep iterator) at the specified position.
`int` `getRunCount()` Sets the runs per, or number of runs per each sweep setting.
`int` `getRunsPer()` Sets the runs per, or number of runs per each sweep setting.
`int` `getSize()` Counts the number of members; memebers may be dimensions, links, or other implementoprs of the sweepable interface.
`Sweepable` `getUnlinkedMember(int pos)` Sweepables can be SweepLinks, which means that more than one sweep dimension might exist for a given member.
`int` `getUnlinkedSize()` Returns the 'unrolled' size, that is counting all of the dimensions in each link.
`boolean` `hasNext()` Are there more sweep settings in this group?
`java.lang.Object` `next()` Iterates to the next sweep setting in this group.
`void` `reset()` Sets the entire swep group back to its initial state.
`void` `setRunsPer(int runsPer)` Returns the runs per, or number of runs per each sweep setting.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SweepGroup

    public SweepGroup()

Method Detail

### addMember

    public void addMember(Sweepable sweep)

  Adds the 'sweepable' (sweep iterator) to the group.

### getMember

    public Sweepable getMember(int pos)

  Returns the 'sweepable' (sweep iterator) at the specified position.

### getUnlinkedMember

    public Sweepable getUnlinkedMember(int pos)

  Sweepables can be SweepLinks, which means that more than one sweep dimension might exist for a given member. This method allows you to access the 'unrolled' memebers.

### reset

    public void reset()

  Sets the entire swep group back to its initial state. The next call to next will set the first sweep item.

  Specified by:
    `reset` in interface `Sweepable`

### getRunsPer

    public int getRunsPer()

  Sets the runs per, or number of runs per each sweep setting.

### getRunCount

    public int getRunCount()

  Sets the runs per, or number of runs per each sweep setting.

### setRunsPer

    public void setRunsPer(int runsPer)

  Returns the runs per, or number of runs per each sweep setting.

### hasNext

    public boolean hasNext()

  Are there more sweep settings in this group?

  Specified by:
    `hasNext` in interface `Sweepable`

### next

    public java.lang.Object next()

  Iterates to the next sweep setting in this group.

  Specified by:
    `next` in interface `Sweepable`

### getUnlinkedSize

    public int getUnlinkedSize()

  Returns the 'unrolled' size, that is counting all of the dimensions in each link.

### getSize

    public int getSize()

  Counts the number of members; memebers may be dimensions, links, or other implementoprs of the sweepable interface.