|
JavaGenes, NASA Ames. Written largely by Al Globus | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectgov.nasa.javaGenes.EOSscheduling.Timeline
gov.nasa.javaGenes.EOSscheduling.AvailabilityTimeline
when using duty cycle constraints, all task durations must fill the window to schedule. E.g., can't handle agile satellites
Field Summary | |
protected DutyCycleConstraint[] |
dutyCycle
|
protected boolean[] |
dutyCycleMask
|
Fields inherited from class gov.nasa.javaGenes.EOSscheduling.Timeline |
debug, horizon, nodeArray, nodeFactory, nodeList, NOT_SCHEDULED |
Constructor Summary | |
AvailabilityTimeline()
|
|
AvailabilityTimeline(Horizon inHorizon,
int inTypicalTaskDuration)
|
Method Summary | |
void |
assertIsValid()
|
protected void |
deleteNodeAndNextNode(Node node)
|
protected int |
findEarliest(int start,
int end,
int duration)
|
int |
findEarliest(int start,
int end,
SchedulingData schedulingData)
|
boolean |
fits(int start,
int duration)
|
boolean |
fits(int start,
SchedulingData schedulingData)
|
boolean |
fitsDutyCycles()
|
protected boolean |
fitsDutyCycles(AvailableNode node,
int startTime,
int duration)
is this time and duration compatible with the duty cylce constraint (if any). |
AvailableNode |
getAvailableNodeAtOrAfter(int atTime)
|
Node |
getFirstNode()
|
Node |
getInitialNodeForNodeArray()
|
int[] |
getStartTimesArray()
for test and debug |
void |
initialize()
|
protected void |
insertAt(int startTime,
int endTime)
assumes the insertion is legal |
void |
insertAt(int start,
SchedulingData schedulingData)
assumes the insertion is legal |
protected void |
insertAt(Node node,
int startTime,
int endTime)
assumes the insertion is legal |
int |
insertEarliest(int start,
int end,
int duration)
This will happen a lot and must be very fast. |
void |
printToTsd(java.lang.String filename)
|
void |
setDutyCycles(DutyCycleConstraint[] inDutyCycles)
|
void |
setUpNodeList()
|
Methods inherited from class gov.nasa.javaGenes.EOSscheduling.Timeline |
getEnd, getHorizon, getNodeAtTime, getStart, horizonIsValid, includes, includes, initializeAllTimelines |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected DutyCycleConstraint[] dutyCycle
protected boolean[] dutyCycleMask
Constructor Detail |
public AvailabilityTimeline()
public AvailabilityTimeline(Horizon inHorizon, int inTypicalTaskDuration)
Method Detail |
public void initialize()
initialize
in class Timeline
public void setDutyCycles(DutyCycleConstraint[] inDutyCycles)
public Node getInitialNodeForNodeArray()
getInitialNodeForNodeArray
in class Timeline
public void setUpNodeList()
setUpNodeList
in class Timeline
public Node getFirstNode()
getFirstNode
in class Timeline
public AvailableNode getAvailableNodeAtOrAfter(int atTime)
public int[] getStartTimesArray()
public void assertIsValid()
assertIsValid
in class Timeline
public boolean fitsDutyCycles()
public int insertEarliest(int start, int end, int duration)
public boolean fits(int start, SchedulingData schedulingData)
fits
in class Timeline
public boolean fits(int start, int duration)
public int findEarliest(int start, int end, SchedulingData schedulingData)
findEarliest
in class Timeline
protected int findEarliest(int start, int end, int duration)
protected boolean fitsDutyCycles(AvailableNode node, int startTime, int duration)
public void insertAt(int start, SchedulingData schedulingData)
insertAt
in class Timeline
protected void insertAt(int startTime, int endTime)
protected void insertAt(Node node, int startTime, int endTime)
protected void deleteNodeAndNextNode(Node node)
public void printToTsd(java.lang.String filename)
|
JavaGenes, NASA Ames. Written largely by Al Globus | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |