GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> LSE / V2-0-1 > lsew / linux-gcc
Classes | |
struct | _LSE_timeServices |
The set of virtual functions needed to implement the time emulation routines. More... | |
struct | _LSE_timeFlagSpec |
Time hack flag specification. More... | |
Typedefs | |
typedef enum _LSE_TIME_K | LSE_TIME_K |
Typedef for enum _LSE_TIME_K. | |
typedef void(* | LSE_timeServicesConstruct )(void *prm) |
Constructs/initializes the time services. | |
typedef void(* | LSE_timeServicesSet )(unsigned int seconds, unsigned int flags, unsigned int frequency) |
Establishes the initial time and clock frequency. | |
typedef void(* | LSE_timeServicesElapsedSet )(unsigned int evt_reg, unsigned int pps_reg) |
Sets the elapsed time since the last 1-PPS. | |
typedef unsigned long long int(* | LSE_timeServicesTimestampGet )(void) |
Gets the current timestamp. | |
typedef unsigned int(* | LSE_timeServicesTimetoneGet )(unsigned int pps_reg, unsigned int *secs, unsigned int *flags) |
Fills in the current seconds and flags. | |
typedef unsigned int(* | LSE_timeServicesTimetonesGet )(unsigned int cur_pps, unsigned int *cur_secs, unsigned int *cur_flags, unsigned int *prv_secs, unsigned int *prv_flags, unsigned int *prv_pps) |
Fills in the timetone message corresponding to cur_pps and the most recent timetone message occuring prior to cur_pps. | |
typedef struct _LSE_timeServices | LSE_timeServices |
Typedef for struct _LSE_timeServices. | |
typedef struct _LSE_timeFlagSpec | LSE_timeFlagSpec |
Typedef for struct _TimeFlagSpec. | |
Enumerations | |
enum | _LSE_TIME_K { LSE_TIME_K_ASIS = 0, LSE_TIME_K_DEFAULT = -1 } |
Used to specify the use of ASIS or DEFAULT parameters. More... | |
Functions | |
void | LSE_timeConstruct (const LSE_timeServices *services, void *prm) |
Constructs/initializes the LSE time emulation services. | |
void | LSE_timeSet (unsigned int seconds, unsigned int flags, unsigned int frequency) |
Sets the initial time and frequency. | |
unsigned int | LSE_timeSecsGet (void) |
Get the current number of elapsed seconds since the Spectrum-Astro Epoch. | |
unsigned int | LSE_timeOffset (void) |
Gets the offset from standard UNIX time to Spectrum Astro time. |
CVS $Id: LSE_time.h,v 1.1 2006/01/06 00:21:43 russell Exp $
Typedef for struct _TimeFlagSpec.
void(* LSE_timeServicesConstruct)(void *prm) |
Constructs/initializes the time services.
prm | An arbitrary user context parameter. For the standard services this is a pointer to an LSE_timeflagSpec |
void(* LSE_timeServicesElapsedSet)(unsigned int evt_reg, unsigned int pps_reg) |
Sets the elapsed time since the last 1-PPS.
evt_reg | The value of the event time register in the GEM | |
pps_reg | The value of the 1-PPS time register in the GEM |
void(* LSE_timeServicesSet)(unsigned int seconds, unsigned int flags, unsigned int frequency) |
Establishes the initial time and clock frequency.
seconds | The initial time, specified in the number of seconds since the Spectrum-Astro epoch. If specified as 0, LSE_TIME_K_ASIS, then the time is not adjusted. If specified as -1, LSE_TIME_K_DEFAULT, then use the current time. | |
flags | The initial value of the timetone message's flag word. There is no default value, but 0 would be a good choice as a default (no errors). | |
frequency | The frequency, in Hertz. If specified as 0, then the frequency will not be changed. If specified as 0, LSE_TIME_K_ASIS, then the time is not adjusted. If specified as -1, LSE_TIME_K_DEFAULT, then use the current time. |
unsigned long long int(* LSE_timeServicesTimestampGet)(void) |
Gets the current timestamp.
typedef unsigned int(* LSE_timeServicesTimetoneGet)(unsigned int pps_reg unsigned int *secs, unsigned int *flags) |
Fills in the current seconds and flags.
pps_reg | The 1-PPS register used as a key to get the seconds | |
secs | Returned with the elapsed time in seconds | |
flags | Returned with the status flag value (0= no errors) |
unsigned int(* LSE_timeServicesTimetonesGet)(unsigned int cur_pps, unsigned int *cur_secs, unsigned int *cur_flags, unsigned int *prv_secs, unsigned int *prv_flags, unsigned int *prv_pps) |
Fills in the timetone message corresponding to cur_pps and the most recent timetone message occuring prior to cur_pps.
cur_pps | The value of the GEM's 1-PPS register to use as a key in locating the timetone messages | |
cur_secs | Filled in with the time since the Spectrum-Astro epoch corresponding the current timetone message | |
cur_flags | Filled in with status flags/values (see THS) corresponding the current timetone message | |
prv_secs | Filled in with the time since the Spectrum-Astro epoch corresponding the previous timetone message | |
prv_flags | Filled in with status flags/values (see THS) corresponding the previous timetone message | |
prv_pps | Filled in with the value of GEM's 1-PPS register corresponding the previous timetone message |
enum _LSE_TIME_K |
void LSE_timeConstruct | ( | const LSE_timeServices * | services, | |
void * | prm | |||
) |
Constructs/initializes the LSE time emulation services.
services | A pointer to the virtual functions. If NULL, the standard services are used. | |
prm | Arbitrary user parameter passed to the constructor |
unsigned int LSE_timeOffset | ( | void | ) |
Gets the offset from standard UNIX time to Spectrum Astro time.
unsigned int LSE_timeSecsGet | ( | void | ) |
Get the current number of elapsed seconds since the Spectrum-Astro Epoch.
void LSE_timeSet | ( | unsigned int | seconds, | |
unsigned int | flags, | |||
unsigned int | frequency | |||
) |
Sets the initial time and frequency.
seconds | The initial time, specified in the number of seconds since the Spectrum-Astro epoch. If specified as 0, then the time is not adjusted | |
flags | The initial value of the timetone message's flag word. There is no default value, but bit 16 (source = GPS) would be a good choice as a default (no errors). | |
frequency | The frequency, in Hertz. If specified as 0, then the frequency will not be changed |