gzz.index.impl
Class SpaceXuIndexer

java.lang.Object
  |
  +--gzz.index.impl.SpaceXuIndexer
All Implemented Interfaces:
XuIndexer

public class SpaceXuIndexer
extends java.lang.Object
implements XuIndexer

An index of xanadu links stored in a space.


Nested Class Summary
protected  class SpaceXuIndexer.MyIndex
           
 
Field Summary
protected  SpaceXuIndexer.MyIndex backwardIndex
           
protected  java.util.Map cellsByLink
           
protected  SpaceXuIndexer.MyIndex forwardIndex
           
protected  Dim link
           
protected  java.util.Map linksByCell
           
protected  Space space
           
protected  VStreamCellTexter texter
           
 
Constructor Summary
SpaceXuIndexer(Space space)
           
 
Method Summary
 void add(XuLink l)
           
 Index getBackwardIndex()
           
 Index getForwardIndex()
          Get an Index which, for Enfilade1Ds, returns all XuLink objects where the given enfilade overlaps the from member.
protected  java.lang.Object getLinkForCell(Cell c)
           
 void remove(XuLink l)
          Remove a link.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

space

protected Space space

link

protected Dim link

texter

protected VStreamCellTexter texter

forwardIndex

protected SpaceXuIndexer.MyIndex forwardIndex

backwardIndex

protected SpaceXuIndexer.MyIndex backwardIndex

linksByCell

protected java.util.Map linksByCell

cellsByLink

protected java.util.Map cellsByLink
Constructor Detail

SpaceXuIndexer

public SpaceXuIndexer(Space space)
Method Detail

getForwardIndex

public Index getForwardIndex()
Description copied from interface: XuIndexer
Get an Index which, for Enfilade1Ds, returns all XuLink objects where the given enfilade overlaps the from member.

Specified by:
getForwardIndex in interface XuIndexer

getBackwardIndex

public Index getBackwardIndex()
Specified by:
getBackwardIndex in interface XuIndexer

getLinkForCell

protected java.lang.Object getLinkForCell(Cell c)

add

public void add(XuLink l)
Specified by:
add in interface XuIndexer

remove

public void remove(XuLink l)
Description copied from interface: XuIndexer
Remove a link. Note that since we don't have equivalence classes between links yet, this must be a XuLink that's really inside this object, either inserted through add() or obtained through an index.

Specified by:
remove in interface XuIndexer