SFE.PF
Class Block

java.lang.Object
  extended by SFE.PF.Block
Direct Known Subclasses:
P, S

public abstract class Block
extends java.lang.Object

A Block is a programmable sub-circuit.

Author:
Thomas Schneider

Constructor Summary
Block()
          Dummy Constructor
Block(int u, int v, UC c)
          Constructor
 
Method Summary
abstract  int countGates()
          Count number of gates of this block.
abstract  Gate[] extractCircuit(Gate[] inputs, Gate[] outputs)
          Extract circuit representation of block.
abstract  void program(int[] p)
          Program block.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Block

public Block(int u,
             int v,
             UC c)
Constructor

Parameters:
u - #inputs
v - #outputs
c - UC containing this selection block

Block

public Block()
Dummy Constructor

Method Detail

extractCircuit

public abstract Gate[] extractCircuit(Gate[] inputs,
                                      Gate[] outputs)
Extract circuit representation of block.

Parameters:
inputs - input wires
outputs - buffer for output wires
Returns:
output wires (outputs or newly allocated buffer if outputs=null)

program

public abstract void program(int[] p)
Program block.

Parameters:
p - program - semantics depend on type of block

countGates

public abstract int countGates()
Count number of gates of this block.

Returns:
#gates