JavaGenes, NASA Ames. Written largely by Al Globus

gov.nasa.javaGenes.EOSscheduling
Class SSRTimeline

java.lang.Object
  extended bygov.nasa.javaGenes.EOSscheduling.Timeline
      extended bygov.nasa.javaGenes.EOSscheduling.SSRTimeline
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
SSRTimelineNone

public class SSRTimeline
extends Timeline

See Also:
Serialized Form

Field Summary
protected  Satellite satellite
           
protected  int SSRcapacity
           
 
Fields inherited from class gov.nasa.javaGenes.EOSscheduling.Timeline
debug, horizon, nodeArray, nodeFactory, nodeList, NOT_SCHEDULED
 
Constructor Summary
SSRTimeline()
           
SSRTimeline(Horizon inHorizon, int typicalTimeBetweenDumps, Satellite inSatellite)
           
 
Method Summary
 void assertIsValid()
           
protected  int findEarliest(int start, int end, double SSRuse)
          This will happen a lot and must be very fast.
 int findEarliest(int start, int end, SchedulingData schedulingData)
          SSRuse is modelled as instantaneous.
 boolean fits(int start, SchedulingData schedulingData)
           
 double[] getCapacityArray()
          for test and debug
 int getNumberOfSSRsegments()
           
 int[] getStartTimesArray()
           
 void insertAt(int start, SchedulingData schedulingData)
          assumes the SSR capacity is available
 void insertDumpAt(int time)
          assumes SSR is completely emptied.
 void printToTsd(java.lang.String filename)
           
 void setUpNodeList()
           
 
Methods inherited from class gov.nasa.javaGenes.EOSscheduling.Timeline
getEnd, getFirstNode, getHorizon, getInitialNodeForNodeArray, getNodeAtTime, getStart, horizonIsValid, includes, includes, initialize, initializeAllTimelines
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

satellite

protected Satellite satellite

SSRcapacity

protected int SSRcapacity
Constructor Detail

SSRTimeline

public SSRTimeline()

SSRTimeline

public SSRTimeline(Horizon inHorizon,
                   int typicalTimeBetweenDumps,
                   Satellite inSatellite)
Method Detail

setUpNodeList

public void setUpNodeList()
Overrides:
setUpNodeList in class Timeline

getNumberOfSSRsegments

public int getNumberOfSSRsegments()

getCapacityArray

public double[] getCapacityArray()
for test and debug


getStartTimesArray

public int[] getStartTimesArray()

printToTsd

public void printToTsd(java.lang.String filename)

assertIsValid

public void assertIsValid()
Overrides:
assertIsValid in class Timeline

fits

public boolean fits(int start,
                    SchedulingData schedulingData)
Specified by:
fits in class Timeline

findEarliest

public int findEarliest(int start,
                        int end,
                        SchedulingData schedulingData)
SSRuse is modelled as instantaneous. That means that SSR constraints won't apply at the moment of download.

Specified by:
findEarliest in class Timeline

findEarliest

protected int findEarliest(int start,
                           int end,
                           double SSRuse)
This will happen a lot and must be very fast. Avoid unnecessary tests and object creation.

Returns:
time time >= start time < end || NOT_SCHEDULED

insertAt

public void insertAt(int start,
                     SchedulingData schedulingData)
assumes the SSR capacity is available

Specified by:
insertAt in class Timeline

insertDumpAt

public void insertDumpAt(int time)
assumes SSR is completely emptied. Doesn't propogate effects! Meant to be used before any scheduling happens.


JavaGenes, NASA Ames. Written largely by Al Globus