GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> GRBP / V1-0-4 > grbpsiu / rhel6-64


Interface   Data Structures   File List   Data Fields   Globals  

GRBP_gbmRepoint.h File Reference

GBM repoint request handling, interface. More...

#include <GRBP_gbmMsg.h>
#include <GRBP_skew.h>
#include <GRB/GRB_latMsg.h>
#include <GRB/GRB_gbmMsg.h>

Classes

struct  _GRBP_gbmRepoint
 The GBM context. More...

Typedefs

typedef struct _GRBP_DB_gbmRepoint GRBP_DB_gbmRepoint
typedef struct _GRBP_gbmRepoint GRBP_gbmRepoint
 Typedef for struct _GRBP_gbmRepoint.

Functions

void GRBP_gbmRepointConstruct (GRBP_gbmRepoint *gbm, const GRBP_DB_gbmRepoint *cfg)
 Constructs the client GBM repoint context.
void GRBP_gbmRepointReady (GRBP_gbmRepoint *gbm)
 Puts the state of the GBM repoint context into ready to go.
static __inline double GRBP_gbmRepointMsgTime (const GRB_gbmRptMsg *msg)
 Returns the time, in seconds, of the GBM repoint message.
  • For host machines this is the timestamp (id) of the repoint message itself,
  • For embedded systems, it is the wall clock time.

static __inline void GRBP__gbmRepointCancel (GRBP_gbmRepoint *gbm)
 Resets the client GBM context, canceling any pending repoints.
static __inline void GRBP__gbmRepointCheck (GRBP_gbmRepoint *gbm, double time, GRB_latConfirmRtn send)
 Sends a repoint request if one is pending and has come due.
static __inline void GRBP__gbmRepointCancelClear (GRBP_gbmRepoint *gbm)
 Sets the state of the do cancel the GBM window at GBM message closeout time flag to false.
static __inline int GRBP__gbmRepointCancelGet (GRBP_gbmRepoint *gbm)
 Gets the state of the do not cancel the GBM window at GBM message.
static __inline void GRBP__gbmRepointCancelSet (GRBP_gbmRepoint *gbm)
 Sets the state of the do not cancel the GBM window at GBM message closeout time flag to true. This is the default state.
static __inline void GRBP__gbmRepointPendingClear (GRBP_gbmRepoint *gbm)
 Sets the state of the GBM repoint message pending flag to false.
static __inline void GRBP__gbmRepointSave (GRBP_gbmRepoint *gbm, const GRB_gbmRptMsg *msg)
 If no GBM repoint request is current pending, this relevant pieces of information from the GBM's repoint request are saved and the request is 'queued'.
static __inline int GRBP__gbmRepointSend (GRBP_gbmRepoint *gbm, GRB_latConfirmRtn send)
 Sends a repoint request if one is pending and has come due.


Detailed Description

GBM repoint request handling, interface.

Author:
JJRussell - russell@slac.stanford.edu

   CVS $Id: GRBP_gbmRepoint.h,v 1.8 2011/09/28 16:48:41 russell Exp $

Function Documentation

static __inline void GRBP__gbmRepointCancel ( GRBP_gbmRepoint gbm  )  [static]

Resets the client GBM context, canceling any pending repoints.

Parameters:
gbm The GBM repoint context

References _GRBP_gbmRepoint::pending.

static __inline void GRBP__gbmRepointCancelClear ( GRBP_gbmRepoint gbm  )  [static]

Sets the state of the do cancel the GBM window at GBM message closeout time flag to false.

Parameters:
gbm The GBM repoint context

References _GRBP_gbmRepoint::cancel.

Referenced by gbmRepointHandler().

static __inline int GRBP__gbmRepointCancelGet ( GRBP_gbmRepoint gbm  )  [static]

Gets the state of the do not cancel the GBM window at GBM message.

Parameters:
gbm The GBM repoint context

References _GRBP_gbmRepoint::cancel.

Referenced by gbmCloseoutHandler().

static __inline void GRBP__gbmRepointCancelSet ( GRBP_gbmRepoint gbm  )  [static]

Sets the state of the do not cancel the GBM window at GBM message closeout time flag to true. This is the default state.

Parameters:
gbm The GBM repoint context

References _GRBP_gbmRepoint::cancel.

Referenced by gbmCloseoutHandler().

static __inline void GRBP__gbmRepointCheck ( GRBP_gbmRepoint gbm,
double  time,
GRB_latConfirmRtn  send 
) [static]

Sends a repoint request if one is pending and has come due.

Parameters:
gbm The GBM repoint context
time The current time
send The repoint send function

References _GRBP_gbmRepoint::dec, _GRBP_gbmRepoint::duration, _GRBP_gbmRepoint::issueTime, _GRBP_gbmRepoint::pending, and _GRBP_gbmRepoint::ra.

Referenced by GRBP_clientProcess().

static __inline void GRBP__gbmRepointPendingClear ( GRBP_gbmRepoint gbm  )  [static]

Sets the state of the GBM repoint message pending flag to false.

Parameters:
gbm The GBM repoint context

References _GRBP_gbmRepoint::pending.

static __inline void GRBP__gbmRepointSave ( GRBP_gbmRepoint gbm,
const GRB_gbmRptMsg *  msg 
) [static]

If no GBM repoint request is current pending, this relevant pieces of information from the GBM's repoint request are saved and the request is 'queued'.

Parameters:
gbm The GBM repoint context
msg The GBM repoint message

References _GRBP_skew::dec, _GRBP_gbmRepoint::dec, GRBP__skewDecArcmins(), GRBP__skewRaArcmins(), GRBP_gbmRepointMsgTime(), _GRBP_gbmRepoint::issueTime, _GRBP_gbmRepoint::latency, _GRBP_gbmRepoint::pending, _GRBP_skew::ra, _GRBP_gbmRepoint::ra, and _GRBP_gbmRepoint::skew.

Referenced by gbmRepointHandler().

static __inline int GRBP__gbmRepointSend ( GRBP_gbmRepoint gbm,
GRB_latConfirmRtn  send 
) [static]

Sends a repoint request if one is pending and has come due.

Return values:
==0,if no GBM repoint was sent
==1,if a GBM repoint was sent
Parameters:
gbm The GBM repoint context
send The repoint send function

References _GRBP_gbmRepoint::dec, _GRBP_gbmRepoint::duration, _GRBP_gbmRepoint::pending, and _GRBP_gbmRepoint::ra.

Referenced by gbmRepointHandler(), and stop().

void GRBP_gbmRepointConstruct ( GRBP_gbmRepoint gbm,
const GRBP_DB_gbmRepoint *  cfg 
)

Constructs the client GBM repoint context.

Parameters:
gbm The GBM repoint context
cfg The GBM repoint configuration

References _GRBP_skew::dec, _GRBP_gbmRepoint::duration, GRBP_gbmRepointReady(), _GRBP_gbmRepoint::latency, _GRBP_skew::ra, and _GRBP_gbmRepoint::skew.

Referenced by GRBP_clientConstruct().

static __inline double GRBP_gbmRepointMsgTime ( const GRB_gbmRptMsg *  msg  )  [static]

Returns the time, in seconds, of the GBM repoint message.

  • For host machines this is the timestamp (id) of the repoint message itself,
  • For embedded systems, it is the wall clock time.

Returns:
The time, in seconds, as a double
Parameters:
msg The repoint message
Warning:
This is not strictly the correct time. What one really wants is the time the GBM issued the message. The time on the message is not really a time at all, it is more like a transaction identifier whose value happens to be the time of the first message GBM message sequence. As such, the only relationship that it has with the time that the repoint message was actually declared is that it happens some bounded time after it. On hosts machines, this message is semi-artificially constructed, so it can mean anything the fake composer of the message wishes it to mean.

References GRBP__gbmMsgToTimeDouble().

Referenced by GRBP__gbmRepointSave().

void GRBP_gbmRepointReady ( GRBP_gbmRepoint gbm  ) 

Puts the state of the GBM repoint context into ready to go.

Parameters:
gbm The GBM repoint context

References _GRBP_gbmRepoint::cancel, and _GRBP_gbmRepoint::pending.

Referenced by GRBP_gbmRepointConstruct(), and start().


Generated on Tue Nov 29 17:07:16 2011 by  doxygen 1.5.8