GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> GRBP / dev > grbpsiu / rhel5-32


Interface   Data Structures   File List   Data Fields   Globals  

GRBP_messageSchedule.h File Reference

Interface controlling the scheduleing and updating of the GRBP schedules. More...


Classes

struct  _GRBP_messageScheduleSuspectPrms
 Parameters controlling the dispatching of the initial GRB suspected message. More...
struct  _GRBP_messageScheduleConfirmPrms
 Parameters controlling the dispatching of the GRB confirmation message. More...
struct  _GRBP_messageScheduleUpdatePrms
 The parameters controlling the delivery of one update schedules. More...
struct  _GRBP_messageScheduleUpdateListPrms
 The parameters controlling the delivery of update schedules. More...
struct  _GRBP_messageScheduleCloseoutPrms
 Parameters controlling the dispatching of the closeout schedule schedule. More...
struct  _GRBP_messageSchedulePrms
 The parameters controlling the initial GRBP schedule schedule and the subsequent update and closeout schedules. More...
struct  _GRBP_messageSchedule
 The context controlling controlling the initial GRBP schedule schedule and the subsequent update and closeout schedules. More...

Typedefs

typedef struct
_GRBP_DB_messageSchedule 
GRBP_DB_messageSchedule
typedef struct
_GRBP_messageScheduleSuspectPrms 
GRBP_messageScheduleSuspectPrms
 Typedef for struct _GRBP_scheduleSuspectPrms.
typedef struct
_GRBP_messageScheduleConfirmPrms 
GRBP_messageScheduleConfirmPrms
 Typedef for struct _GRBP_scheduleConfirmPrms.
typedef struct
_GRBP_messageScheduleUpdatePrms 
GRBP_messageScheduleUpdatePrms
 Typedef for struct _GRBP_messageScheduleUpdateMemberPrms.
typedef struct
_GRBP_messageScheduleUpdateListPrms 
GRBP_messageScheduleUpdateListPrms
 Typedef for struct _GRBP_messageScheduleUpdateListPrms.
typedef struct
_GRBP_messageScheduleCloseoutPrms 
GRBP_messageScheduleCloseoutPrms
 Typedef for struct _GRBP_messageScheduleCloseoutPrms.
typedef struct
_GRBP_messageSchedulePrms 
GRBP_messageSchedulePrms
 Typedef for struct _GRBP_messageSchedulePrms.
typedef struct
_GRBP_messageSchedule 
GRBP_messageSchedule

Functions

int GRBP_messageScheduleSizeof (void)
void GRBP_messageScheduleConstruct (GRBP_messageSchedule *ctx, const GRBP_DB_messageSchedule *cfg)
void GRBP_messageScheduleReset (GRBP_messageSchedule *ctx)
 Resets the schedule.
int GRBP_messageScheduleInitiate (GRBP_messageSchedule *ctx, int added, double start_time)
 Initiates the message schedule.
int GRBP_messageScheduleConfirmCheck (GRBP_messageSchedule *ctx)
 Updates the delivery schedule and whether the threshold for declaring a GRB confirmation message has been exceeded.
int GRBP_messageScheduleUpdateCheck (GRBP_messageSchedule *ctx, int added, double current_time)
 Checks whether to an GRB update or closeout schedule is due.
static __inline int GRBP__messageScheduleActive (int state)
 Returns non-zero if a message, either an UPDATE or a CLOSEOUT needes to be issued.
static __inline int GRBP__messageScheduleUpdate (int state)
 Returns non-zero if an UPDATE message needs to be issued.
static __inline int GRBP__messageScheduleCloseout (int state)


Detailed Description

Interface controlling the scheduleing and updating of the GRBP schedules.

Author:
JJRussell - russell@slac.stanford.edu

   CVS $Id: GRBP_messageSchedule.h,v 1.4 2008/09/01 22:05:03 russell Exp $

Function Documentation

static __inline int GRBP__messageScheduleActive ( int  state  )  [static]

Returns non-zero if a message, either an UPDATE or a CLOSEOUT needes to be issued.

Returns:
Non-zero if a message needs to be issued
Parameters:
state The return state information from GRBP__messageScheduleUpdate

Referenced by updateCheck().

static __inline int GRBP__messageScheduleUpdate ( int  state  )  [static]

Returns non-zero if an UPDATE message needs to be issued.

Returns:
Non-zero if a CLOSEOUT message needs to be issued
Parameters:
state The return state information from GRBP__messageScheduleUpdate
Returns:
Non-zero if an UPDATE message needs to be issued
Parameters:
state The return state information from GRBP__messageScheduleUpdate

Referenced by updateCheck().

int GRBP_messageScheduleConfirmCheck ( GRBP_messageSchedule schedule  ) 

Updates the delivery schedule and whether the threshold for declaring a GRB confirmation message has been exceeded.

Parameters:
schedule The schedule to check.
This function must be called after GRBP_messageScheduleSuspectCheck or GRBP_scheduleUpdate are called. Both of these function update the current counts. Note that in principle, the confirmation message can be issued simoultaneously with an update or, even more rarely, with a suspect message, so the user must check both. Also note that only one such confirmation may be issued within any GRB message sequence.

printf ("GRBP_messageSchedule:confirm\n");

References _GRBP_messageScheduleConfirmPrms::cnt, _GRBP_messageSchedule::cnt, _GRBP_messageSchedulePrms::confirm, _GRBP_messageSchedule::confirmed, and _GRBP_messageSchedule::prms.

Referenced by confirmCheck().

int GRBP_messageScheduleInitiate ( GRBP_messageSchedule schedule,
int  start_count,
double  start_time 
)

Initiates the message schedule.

Parameters:
schedule The schedule to check.
start_count The number of gammas in the GRB at this time
start_time The GRB start time

printf ("GRBP_messageSchedule:suspect at %f\n", start_time);

References _GRBP_messageSchedule::cnt, _GRBP_messageSchedule::prms, _GRBP_messageSchedule::starttime, _GRBP_messageSchedule::update, _GRBP_messageSchedulePrms::updateList, _GRBP_messageScheduleUpdateListPrms::updates, and _GRBP_messageSchedule::updidx.

Referenced by grbDeclare().

void GRBP_messageScheduleReset ( GRBP_messageSchedule schedule  ) 

int GRBP_messageScheduleUpdateCheck ( GRBP_messageSchedule schedule,
int  added,
double  current_time 
)

Checks whether to an GRB update or closeout schedule is due.

Return values:
-1 Closeout
=0 No action
>0 Update sequence
Parameters:
schedule The schedule to check
added The number of photons added since the last update
current_time The current time

printf ("Update Index: %d\n", updidx);

printf ("GRBP_messageSchedule:closeout\n");

printf ("GRBP_messageScheduleUpdateCheck:updidx = %u\n", updidx);

References _GRBP_messageSchedule::chkcnt, _GRBP_message::chkcnt, _GRBP_messagePrms::closeout, _GRBP_messageScheduleSuspectPrms::cnt, _GRBP_messageScheduleUpdateListPrms::cnt, _GRBP_messageSchedule::cnt, _GRBP_message::elapsed, _GRBP_message::prms, _GRBP_messageSchedule::prms, _GRBP_messageSchedule::starttime, _GRBP_messageSchedulePrms::suspect, _GRBP_messageCloseoutPrms::timeout, _GRBP_messageSchedule::update, _GRBP_message::update, _GRBP_messageSchedulePrms::updateList, _GRBP_messageSchedule::updidx, and _GRBP_message::updidx.

Referenced by updateCheck().


Generated on Wed Sep 28 09:49:30 2011 by  doxygen 1.5.8