public abstract class AbstractClock
extends java.lang.Object
implements jadex.bridge.service.types.clock.IClock
| Modifier and Type | Field and Description |
|---|---|
protected long |
currenttime
The current time (last measurement).
|
static long |
DEFAULT_DELTA
The default delta (tick time).
|
protected long |
delta
The clock tick delta (relative to base time).
|
protected java.util.List |
listeners
The change listeners.
|
protected java.lang.String |
name
The clock name.
|
protected long |
starttime
The start time (model time).
|
protected java.lang.String |
state
The clock state.
|
protected Timer |
ticktimer
The tick timer.
|
protected java.util.List |
ticktimers
The tick timers.
|
java.util.SortedSet |
timers
The timers (entries ordered by timepoint).
|
EVENT_TYPE_NEW_DELTA, EVENT_TYPE_NEW_DILATION, EVENT_TYPE_NEXT_TIMEPOINT, EVENT_TYPE_RESET, EVENT_TYPE_STARTED, EVENT_TYPE_STOPPED, EVENT_TYPE_TIMER_ADDED, EVENT_TYPE_TIMER_REMOVED, STATE_RUNNING, STATE_SUSPENDED, TYPE_CONTINUOUS, TYPE_EVENT_DRIVEN, TYPE_SYSTEM, TYPE_TIME_DRIVEN| Constructor and Description |
|---|
AbstractClock(java.lang.String name,
long starttime,
long delta)
Create a new clock.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
activateTickTimer()
Activate the tick timer.
|
void |
addChangeListener(jadex.commons.IChangeListener listener)
Add a change listener.
|
void |
addTickTimer(jadex.bridge.service.types.clock.ITimer timer)
Add a tick timer.
|
void |
addTimer(jadex.bridge.service.types.clock.ITimer timer)
Add a timer.
|
protected void |
copyFromClock(jadex.bridge.service.types.clock.IClock oldclock)
Transfer state from another clock to this clock.
|
jadex.bridge.service.types.clock.ITimer |
createTickTimer(jadex.bridge.service.types.clock.ITimedObject to)
Create a new tick timer.
|
jadex.bridge.service.types.clock.ITimer |
createTimer(long timespan,
jadex.bridge.service.types.clock.ITimedObject to)
Create a new timer.
|
void |
dispose()
Called, when the clock is no longer used.
|
long |
getDelta()
Get the clock delta.
|
java.lang.String |
getName()
Get the current time.
|
jadex.bridge.service.types.clock.ITimer |
getNextTimer()
Get the next timer.
|
long |
getStarttime()
Get the clocks start time.
|
java.lang.String |
getState()
Get the clock state.
|
double |
getTick()
Get the current tick.
|
jadex.bridge.service.types.clock.ITimer[] |
getTickTimers()
Get all active tick timers.
|
long |
getTime()
Get the clocks name.
|
jadex.bridge.service.types.clock.ITimer[] |
getTimers()
Get all active timers.
|
protected boolean |
hasListeners()
Check if the clock has listeners.
|
protected void |
notifyListeners(jadex.commons.ChangeEvent ce)
Notify the listeners.
|
void |
removeChangeListener(jadex.commons.IChangeListener listener)
Remove a change listener.
|
void |
removeTickTimer(jadex.bridge.service.types.clock.ITimer timer)
Remove a tick timer.
|
void |
removeTimer(jadex.bridge.service.types.clock.ITimer timer)
Remove a timer.
|
void |
reset()
Reset the clock.
|
void |
setDelta(long delta)
Set the clock delta.
|
void |
setStarttime(long starttime)
Set the clocks start time.
|
void |
shutdown(jadex.commons.future.IResultListener listener)
Shutdown the service.
|
void |
start()
Start the clock.
|
void |
stop()
Stop the clock.
|
public static final long DEFAULT_DELTA
protected java.lang.String name
protected long starttime
protected long currenttime
protected long delta
protected java.lang.String state
protected java.util.List ticktimers
public java.util.SortedSet timers
protected Timer ticktimer
protected java.util.List listeners
public AbstractClock(java.lang.String name,
long starttime,
long delta)
protected void copyFromClock(jadex.bridge.service.types.clock.IClock oldclock)
public void dispose()
dispose in interface jadex.bridge.service.types.clock.IClockpublic java.lang.String getName()
getName in interface jadex.bridge.service.types.clock.IClockpublic long getStarttime()
getStarttime in interface jadex.bridge.service.types.clock.IClockpublic void setStarttime(long starttime)
setStarttime in interface jadex.bridge.service.types.clock.IClockpublic long getTime()
getTime in interface jadex.bridge.service.types.clock.IClockpublic double getTick()
getTick in interface jadex.bridge.service.types.clock.IClockpublic long getDelta()
getDelta in interface jadex.bridge.service.types.clock.IClockpublic void setDelta(long delta)
setDelta in interface jadex.bridge.service.types.clock.IClockpublic jadex.bridge.service.types.clock.ITimer getNextTimer()
getNextTimer in interface jadex.bridge.service.types.clock.IClockpublic java.lang.String getState()
getState in interface jadex.bridge.service.types.clock.IClockpublic void start()
start in interface jadex.bridge.service.types.clock.IClockpublic void stop()
stop in interface jadex.bridge.service.types.clock.IClockpublic void reset()
reset in interface jadex.bridge.service.types.clock.IClockpublic jadex.bridge.service.types.clock.ITimer createTimer(long timespan,
jadex.bridge.service.types.clock.ITimedObject to)
createTimer in interface jadex.bridge.service.types.clock.IClocktimespan - The timespan.to - The timed object.public jadex.bridge.service.types.clock.ITimer createTickTimer(jadex.bridge.service.types.clock.ITimedObject to)
createTickTimer in interface jadex.bridge.service.types.clock.IClockto - The timed object.info - Optional info object.public jadex.bridge.service.types.clock.ITimer[] getTimers()
getTimers in interface jadex.bridge.service.types.clock.IClockpublic jadex.bridge.service.types.clock.ITimer[] getTickTimers()
getTickTimers in interface jadex.bridge.service.types.clock.IClockpublic void addTimer(jadex.bridge.service.types.clock.ITimer timer)
addTimer in interface jadex.bridge.service.types.clock.IClocktimer - The timer.public void removeTimer(jadex.bridge.service.types.clock.ITimer timer)
removeTimer in interface jadex.bridge.service.types.clock.IClocktimer - The timer.public void addTickTimer(jadex.bridge.service.types.clock.ITimer timer)
addTickTimer in interface jadex.bridge.service.types.clock.IClocktimer - The timer.protected void activateTickTimer()
public void removeTickTimer(jadex.bridge.service.types.clock.ITimer timer)
removeTickTimer in interface jadex.bridge.service.types.clock.IClocktimer - The timer.public void addChangeListener(jadex.commons.IChangeListener listener)
addChangeListener in interface jadex.bridge.service.types.clock.IClocklistener - The change listener.public void removeChangeListener(jadex.commons.IChangeListener listener)
removeChangeListener in interface jadex.bridge.service.types.clock.IClocklistener - The change listener.protected void notifyListeners(jadex.commons.ChangeEvent ce)
protected boolean hasListeners()
public void shutdown(jadex.commons.future.IResultListener listener)
listener - The listener.