public interface ChannelAccessTimeStamp extends java.lang.Comparable<ChannelAccessTimeStamp>
Time-stamp in the format used by Channel Access. A Channel Access time-stamp has nano-second precision and uses a 32-bit unsigned integer for storing the seconds since January 1st, 1990, 00:00:00 UTC and a 32-bit unsigned integer for the nanoseconds part.
For obvious reasons, the nanoseconds part should only have values in the range of 0 to 999999999. This implementation silently enforces those limits by truncating values that are out of this range.
This interface should not be implemented by user-defined classes. Code that
wants to create an instance implementing this interface should use the
methods provided by ChannelAccessValueFactory
instead.
Modifier and Type | Method and Description |
---|---|
int |
getNanoseconds()
Returns the nanoseconds part.
|
int |
getSeconds()
Returns the seconds since EPICS epoch.
|
long |
toJavaTimeStamp()
Returns the time-stamp as a Java time-stamp, truncating the precision to
milliseconds.
|
java.math.BigInteger |
toNanosecondsEPICS()
Returns the time-stamp as the number of nanoseconds since EPICS epoch.
|
java.math.BigInteger |
toNanosecondsUNIX()
Returns the time-stamp as the number of nanoseconds since UNIX epoch.
|
int getSeconds()
Returns the seconds since EPICS epoch. The EPICS epoch is January 1st,
1990, 00:00:00 UTC. EPICS uses unsigned integers, so a negative value for
seconds
actually indicates a value greater than the
maximum positive integer value
.
int getNanoseconds()
java.math.BigInteger toNanosecondsEPICS()
java.math.BigInteger toNanosecondsUNIX()
long toJavaTimeStamp()
Copyright © 2014–2017 aquenos GmbH. All rights reserved.