faa.tg.ground.markers
Class AbstractMarkerContainer<T extends MarkerType<T>>

java.lang.Object
  extended by faa.tg.ground.markers.AbstractMarkerContainer<T>
All Implemented Interfaces:
MarkerContainer<T>, java.lang.Iterable<Marker<T>>
Direct Known Subclasses:
GroundPath.BaseMarkers

public abstract class AbstractMarkerContainer<T extends MarkerType<T>>
extends java.lang.Object
implements MarkerContainer<T>

 
See the source: AbstractMarkerContainer.java

Version:
$Id: AbstractMarkerContainer.java,v 1.8 2008/09/29 16:17:31 lykensj Exp $
Author:
lykensj, Engility Aug 28, 2008 5:57:51 PM

Field Summary
private  java.util.PriorityQueue<Marker<T>> markers
           
 
Constructor Summary
AbstractMarkerContainer()
           
 
Method Summary
 boolean addMarker(double value, T type)
           
 boolean addMarker(Marker<T> hold)
           
 void clearAllMarkers()
           
 void copyMarkersTo(MarkerContainer<T> segment)
           
 Distance distanceTo(T type, double start)
           
abstract  ParameterizedCurve getCurve()
           
 Marker<T> getNextMarker(double value)
           
 boolean hasNoMarkers()
           
 java.util.Iterator<Marker<T>> iterator()
           
 boolean killFirst(T type, double paraValue)
           
 java.lang.String markersString()
           
 Marker<T> peek()
           
 ControllerResult placeMarkers(java.lang.String name, java.util.List<T> types, BezierIntersectable bi, int maxMarkers, double start)
           
 Marker<T> poll()
           
 void removeNextHold(double paraValue)
           
 boolean removeNextHold(double paraValue, T type)
           
private  java.util.List<Marker<T>> toSortedList()
           
 java.lang.String toString()
           
protected abstract  boolean validateValue(double value, T type)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

markers

private final java.util.PriorityQueue<Marker<T extends MarkerType<T>>> markers
Constructor Detail

AbstractMarkerContainer

public AbstractMarkerContainer()
Method Detail

getNextMarker

public Marker<T> getNextMarker(double value)
Specified by:
getNextMarker in interface MarkerContainer<T extends MarkerType<T>>

addMarker

public boolean addMarker(double value,
                         T type)
Specified by:
addMarker in interface MarkerContainer<T extends MarkerType<T>>

toSortedList

private java.util.List<Marker<T>> toSortedList()

distanceTo

public Distance distanceTo(T type,
                           double start)
Specified by:
distanceTo in interface MarkerContainer<T extends MarkerType<T>>

addMarker

public boolean addMarker(Marker<T> hold)
Specified by:
addMarker in interface MarkerContainer<T extends MarkerType<T>>

clearAllMarkers

public void clearAllMarkers()
Specified by:
clearAllMarkers in interface MarkerContainer<T extends MarkerType<T>>

hasNoMarkers

public boolean hasNoMarkers()
Specified by:
hasNoMarkers in interface MarkerContainer<T extends MarkerType<T>>

markersString

public java.lang.String markersString()

copyMarkersTo

public void copyMarkersTo(MarkerContainer<T> segment)
Specified by:
copyMarkersTo in interface MarkerContainer<T extends MarkerType<T>>

removeNextHold

public void removeNextHold(double paraValue)
Specified by:
removeNextHold in interface MarkerContainer<T extends MarkerType<T>>

peek

public Marker<T> peek()
Specified by:
peek in interface MarkerContainer<T extends MarkerType<T>>

poll

public Marker<T> poll()
Specified by:
poll in interface MarkerContainer<T extends MarkerType<T>>

removeNextHold

public boolean removeNextHold(double paraValue,
                              T type)
Specified by:
removeNextHold in interface MarkerContainer<T extends MarkerType<T>>

killFirst

public boolean killFirst(T type,
                         double paraValue)
Specified by:
killFirst in interface MarkerContainer<T extends MarkerType<T>>

placeMarkers

public final ControllerResult placeMarkers(java.lang.String name,
                                           java.util.List<T> types,
                                           BezierIntersectable bi,
                                           int maxMarkers,
                                           double start)
Specified by:
placeMarkers in interface MarkerContainer<T extends MarkerType<T>>

iterator

public java.util.Iterator<Marker<T>> iterator()
Specified by:
iterator in interface java.lang.Iterable<Marker<T extends MarkerType<T>>>

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getCurve

public abstract ParameterizedCurve getCurve()
Specified by:
getCurve in interface MarkerContainer<T extends MarkerType<T>>

validateValue

protected abstract boolean validateValue(double value,
                                         T type)