public class AnimationPulse extends java.lang.Object implements AnimationPulseMBean
| Modifier and Type | Class and Description |
|---|---|
private static class |
AnimationPulse.AnimationPulseHolder |
private static class |
AnimationPulse.PulseData |
| Modifier and Type | Field and Description |
|---|---|
private java.util.concurrent.atomic.AtomicLong |
animationDurationAv |
private java.util.concurrent.atomic.AtomicLong |
animationDurationMax |
private java.util.concurrent.atomic.AtomicLong |
animationDurationSum |
private java.util.concurrent.atomic.AtomicLong |
endAv |
private java.util.concurrent.atomic.AtomicLong |
endMax |
private java.util.concurrent.atomic.AtomicLong |
endSum |
private boolean |
isEnabled |
private java.util.concurrent.atomic.AtomicLong[] |
maxAndAv |
private AnimationPulse.PulseData.Accessor[] |
maxAndAvAccessors |
private java.util.concurrent.atomic.AtomicLong |
paintingDurationAv |
private java.util.concurrent.atomic.AtomicLong |
paintingDurationMax |
private java.util.concurrent.atomic.AtomicLong |
paintingDurationSum |
private java.util.concurrent.atomic.AtomicLong |
pulseCounter |
private AnimationPulse.PulseData |
pulseData |
private java.util.Queue<AnimationPulse.PulseData> |
pulseDataQueue |
private java.util.concurrent.atomic.AtomicLong |
pulseDurationAv |
private java.util.concurrent.atomic.AtomicLong |
pulseDurationMax |
private java.util.concurrent.atomic.AtomicLong |
pulseDurationSum |
private java.util.concurrent.atomic.AtomicLong |
skippedPulses |
private int |
skipPulses |
private java.util.concurrent.atomic.AtomicLong |
startAv |
private java.util.concurrent.atomic.AtomicLong |
startMax |
private java.util.concurrent.atomic.AtomicLong |
startSum |
| Constructor and Description |
|---|
AnimationPulse() |
private final java.util.Queue<AnimationPulse.PulseData> pulseDataQueue
private AnimationPulse.PulseData pulseData
private volatile boolean isEnabled
private final java.util.concurrent.atomic.AtomicLong pulseCounter
private final java.util.concurrent.atomic.AtomicLong startMax
private final java.util.concurrent.atomic.AtomicLong startSum
private final java.util.concurrent.atomic.AtomicLong startAv
private final java.util.concurrent.atomic.AtomicLong endMax
private final java.util.concurrent.atomic.AtomicLong endSum
private final java.util.concurrent.atomic.AtomicLong endAv
private final java.util.concurrent.atomic.AtomicLong animationDurationMax
private final java.util.concurrent.atomic.AtomicLong animationDurationSum
private final java.util.concurrent.atomic.AtomicLong animationDurationAv
private final java.util.concurrent.atomic.AtomicLong paintingDurationMax
private final java.util.concurrent.atomic.AtomicLong paintingDurationSum
private final java.util.concurrent.atomic.AtomicLong paintingDurationAv
private final java.util.concurrent.atomic.AtomicLong pulseDurationMax
private final java.util.concurrent.atomic.AtomicLong pulseDurationSum
private final java.util.concurrent.atomic.AtomicLong pulseDurationAv
private final java.util.concurrent.atomic.AtomicLong[] maxAndAv
private final AnimationPulse.PulseData.Accessor[] maxAndAvAccessors
private final java.util.concurrent.atomic.AtomicLong skippedPulses
private int skipPulses
public static AnimationPulse getDefaultBean()
public boolean getEnabled()
getEnabled in interface AnimationPulseMBeanpublic void setEnabled(boolean enabled)
setEnabled in interface AnimationPulseMBeanpublic long getPULSE_DURATION()
getPULSE_DURATION in interface AnimationPulseMBeanpublic long getSkippedPulses()
getSkippedPulses in interface AnimationPulseMBeanpublic long getSkippedPulsesIn1Sec()
getSkippedPulsesIn1Sec in interface AnimationPulseMBeanpublic void recordStart(long shiftMillis)
private void purgeOldPulseData()
private void updateMaxAndAv()
public void recordEnd()
private long getAv(AnimationPulse.PulseData.Accessor accessor, long timeOut, java.util.concurrent.TimeUnit unit)
private long getMax(AnimationPulse.PulseData.Accessor accessor, long timeOut, java.util.concurrent.TimeUnit unit)
public long getStartMax()
getStartMax in interface AnimationPulseMBeanpublic long getStartAv()
getStartAv in interface AnimationPulseMBeanpublic long getStartMaxIn1Sec()
getStartMaxIn1Sec in interface AnimationPulseMBeanpublic long getStartAvIn100Millis()
getStartAvIn100Millis in interface AnimationPulseMBeanpublic long getEndMax()
getEndMax in interface AnimationPulseMBeanpublic long getEndMaxIn1Sec()
getEndMaxIn1Sec in interface AnimationPulseMBeanpublic long getEndAv()
getEndAv in interface AnimationPulseMBeanpublic long getEndAvIn100Millis()
getEndAvIn100Millis in interface AnimationPulseMBeanpublic void recordAnimationEnd()
public long getAnimationDurationMax()
getAnimationDurationMax in interface AnimationPulseMBeanpublic long getAnimationMaxIn1Sec()
getAnimationMaxIn1Sec in interface AnimationPulseMBeanpublic long getAnimationDurationAv()
getAnimationDurationAv in interface AnimationPulseMBeanpublic long getAnimationDurationAvIn100Millis()
getAnimationDurationAvIn100Millis in interface AnimationPulseMBeanpublic long getPaintingDurationMax()
getPaintingDurationMax in interface AnimationPulseMBeanpublic long getPaintingDurationMaxIn1Sec()
getPaintingDurationMaxIn1Sec in interface AnimationPulseMBeanpublic long getPaintingDurationAv()
getPaintingDurationAv in interface AnimationPulseMBeanpublic long getPaintingDurationAvIn100Millis()
getPaintingDurationAvIn100Millis in interface AnimationPulseMBeanpublic long getScenePaintingDurationMaxIn1Sec()
getScenePaintingDurationMaxIn1Sec in interface AnimationPulseMBeanpublic long getPulseDurationMax()
getPulseDurationMax in interface AnimationPulseMBeanpublic long getPulseDurationMaxIn1Sec()
getPulseDurationMaxIn1Sec in interface AnimationPulseMBeanpublic long getPulseDurationAv()
getPulseDurationAv in interface AnimationPulseMBeanpublic long getPulseDurationAvIn100Millis()
getPulseDurationAvIn100Millis in interface AnimationPulseMBeanpublic long getPaintingPreparationDurationMaxIn1Sec()
getPaintingPreparationDurationMaxIn1Sec in interface AnimationPulseMBeanpublic long getPaintingFinalizationDurationMaxIn1Sec()
getPaintingFinalizationDurationMaxIn1Sec in interface AnimationPulseMBean