public abstract class GralGraphicTimeOrder extends TimeOrder
TimeOrder.executeOrder() should be overridden with the functionality which should be executed
in the graphic thread before the system's dispatching routine starts.| Modifier and Type | Class and Description |
|---|---|
private static class |
GralGraphicTimeOrder.EnqueueInGraphicThread
To create the instance for the EventConsumer to enqueue time orders in the graphic thread queue.
|
| Modifier and Type | Field and Description |
|---|---|
private static long |
serialVersionUID |
static java.lang.String |
version
Version and history.
|
dbgctWindup, timeExecution, timeExecutionLatestctConsumed, dateCreation, orderId, stateOfEvent| Modifier | Constructor and Description |
|---|---|
protected |
GralGraphicTimeOrder(java.lang.String name)
Super constructor for all graphic time orders.
|
| Modifier and Type | Method and Description |
|---|---|
void |
activate()
Activates the graphic order to execute immediately as next call in the graphic thread.
|
awaitExecution, doExecute, executeOrder, getCtDone, getStateInfo, toStringactivate, activateAt, activateAt, deactivate, doTimeElapsed, timeExecution, timeExecutionLatest, timeToExecution, usedconsumed, dateCreation, evDst, getDst, getDstThread, hasDst, isOccupied, occupy, occupy, occupy, occupyRecall, occupyRecall, occupyRecall, occupyRecall, relinquish, removeFromQueue, sendEvent, setDst, setOrderId, XXXdonotRelinquishpublic static final java.lang.String version
GralDispatchCallbackWorker
#addToGraphicThread(GralGraphicThread, int):
For time saving: If an instance is added already and its new execution time
is up to 5 ms later, nothing is done. It saves time for more as one call of this routine
in a fast loop.
#bAdded==true
but it wasn't added, Therefore on #addToGraphicThread(GralGraphicThread, int) it is removed
from list and added newly. It is more save.
#removeFromQueue(GralGraphicThread). It is a better naming because it is removed from the queue
in the graphic thread. This class is only used in that queue.
TimeOrder.name to identify, proper for debugging
#addToGraphicThread(GralGraphicThread, int) and
#removeFromQueue(GralGraphicThread) as thread-safe functions which
marks the instance as added (for delayed execution, for re-using).
private static final long serialVersionUID
protected GralGraphicTimeOrder(java.lang.String name)
private final GralGraphicTimeOrder repaintRequ = new GralGraphicTimeOrder("GralWidget.repaintRequ"){
QOverride public void executeOrder() {
repaintGthread();
}
QOverride public String toString(){ return name + ":" + GralWidget.this.name; }
};
name - The name is only used for showing in debugging.public void activate()