jaga.pj.circuits
Class OptimizedMapping

java.lang.Object
  |
  +--jaga.pj.circuits.OptimizedMapping
All Implemented Interfaces:
CircuitMapping, java.io.Serializable

public class OptimizedMapping
extends java.lang.Object
implements CircuitMapping

This will remove elements from the element array that aren't connected to the outputs in order to optimize the circuit simulation by avoiding refreshing unused gates. This will obviously skew the position of these elements in the array making the getElementFromAddress method useless.

See Also:
Serialized Form

Fields inherited from interface jaga.pj.circuits.CircuitMapping
ELEMENTS, INPUTS, OUTPUTS
 
Constructor Summary
OptimizedMapping(CircuitMapping inMap)
          Creates a new instance of OptimizedMapping
 
Method Summary
 SimulatorLogicElement getElementFromAddress(SimulatorLogicElement[][] inoutels, int address)
           
 SimulatorLogicElement[][] map(BitSet individual)
          Takes and individual and an array of arrays of logic elements where this individual must be instantiated.
 void resetDelays(java.lang.Object delayDef)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OptimizedMapping

public OptimizedMapping(CircuitMapping inMap)
Creates a new instance of OptimizedMapping
Method Detail

getElementFromAddress

public SimulatorLogicElement getElementFromAddress(SimulatorLogicElement[][] inoutels,
                                                   int address)
Specified by:
getElementFromAddress in interface CircuitMapping

map

public SimulatorLogicElement[][] map(BitSet individual)
Takes and individual and an array of arrays of logic elements where this individual must be instantiated.
Specified by:
map in interface CircuitMapping
Parameters:
individual - The individual to be mapped into a circuit.
Returns:
Array consisting of three subarrays: The first will represent the inputs to the circuit and is where the inputs will be fed in. The second represents the elements that are the outputs of the circuit and is where they will be read out from. The last is an array with all the elements of the circuit.

resetDelays

public void resetDelays(java.lang.Object delayDef)
Specified by:
resetDelays in interface CircuitMapping