infomat.vectorspace
Class IObjectSet

java.lang.Object
  extended by infomat.vectorspace.IObject
      extended by infomat.vectorspace.IObjectGroup
          extended by infomat.vectorspace.IObjectSet
All Implemented Interfaces:
IVectorIndex

public class IObjectSet
extends IObjectGroup

A IObjectSet is a complete set of IObject:s. This can either be the complete set of objects one investigates or the complete feature set by which these objects are represented. In fact, this representations makes no difference between the two.


Field Summary
private  IObjectGrouping currentGrouping
           
private  java.util.HashMap<java.lang.Integer,IObject> idIObjectMap
           
private static int idIterator
           
private  java.util.HashMap<java.lang.String,java.util.HashSet<IObject>> stringAmbiguousIObjectsMap
           
 
Fields inherited from class infomat.vectorspace.IObjectGroup
maxIdSoFar, objectOrderIndexMap, objectOrderValueMap, ordered
 
Constructor Summary
IObjectSet(IObjectSet ios)
          Copy constructor.
IObjectSet(java.lang.String name)
           
 
Method Summary
 void add(IObject io)
          Adds a new IObject.
 void add(IObject io, float orderValue)
          Adds a new IObject in the place the value implicates.
 IObject getIObjectWithId(int i)
          Returns the IObject with the given id.
 java.lang.String getLargestStartOfLocation()
           
 void remove(IObject io)
          Removes a IObject.
 void removeAll()
           
 java.util.Vector<IObject> removeObjectsNotIn(IObjectGroup group)
          Removes IObject:s that are not in the given IObjectGroup.
 void sortInCurrentVectorOrderWithInvertedOrderNumberAsValue()
           
 
Methods inherited from class infomat.vectorspace.IObjectGroup
addAll, addAll, contains, containsPrecisely, getIObjectAt, getIObjectOrderIndex, getIVector, getName, getObjectOrderValueMap, getOrdered, getSortedObjectOrderValueVector, notIn, numberOfIObjects, numberOfSharedIObjects, randomOrder, remove, setIVector, setName, sortInOrderValueOrder, subGroup, subGroup
 
Methods inherited from class infomat.vectorspace.IObject
getAmbiguous, getAmbiguousString, getID, getKind, getLargestCommonLocation, getLocation, getString, setAmbiguous, setString, stringCompareTo
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

idIterator

private static int idIterator

currentGrouping

private IObjectGrouping currentGrouping

idIObjectMap

private java.util.HashMap<java.lang.Integer,IObject> idIObjectMap

stringAmbiguousIObjectsMap

private java.util.HashMap<java.lang.String,java.util.HashSet<IObject>> stringAmbiguousIObjectsMap
Constructor Detail

IObjectSet

public IObjectSet(java.lang.String name)

IObjectSet

public IObjectSet(IObjectSet ios)
Copy constructor. Makes new instances of everything, but the IObject:s, which are the same. Gives the new IObjectSet the same name, but a different id.

Method Detail

add

public void add(IObject io)
Adds a new IObject. OBS. This is not reflected in any IObjectGrouping:s that already exit.

Overrides:
add in class IObjectGroup

add

public void add(IObject io,
                float orderValue)
Description copied from class: IObjectGroup
Adds a new IObject in the place the value implicates. For the object to get the right place the group has to be sorted through IObjectGroup.sortInOrderValueOrder().

Overrides:
add in class IObjectGroup

remove

public void remove(IObject io)
Removes a IObject. It is removed from all IObjectGrouping:s as well. Compare to #add where IObjects are not added to existing IObjectGrouping:s.

Overrides:
remove in class IObjectGroup

removeAll

public void removeAll()
Overrides:
removeAll in class IObjectGroup

removeObjectsNotIn

public java.util.Vector<IObject> removeObjectsNotIn(IObjectGroup group)
Removes IObject:s that are not in the given IObjectGroup. Does not check for the opposite: objects that are in this, but not in the given.

Overrides:
removeObjectsNotIn in class IObjectGroup

sortInCurrentVectorOrderWithInvertedOrderNumberAsValue

public void sortInCurrentVectorOrderWithInvertedOrderNumberAsValue()
Overrides:
sortInCurrentVectorOrderWithInvertedOrderNumberAsValue in class IObjectGroup

getIObjectWithId

public IObject getIObjectWithId(int i)
Returns the IObject with the given id.


getLargestStartOfLocation

public java.lang.String getLargestStartOfLocation()