GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> LIM / V1-22-4 > lim / mv2304
#include <LIM/LIM_pubdefs.h>
#include <PBS/WCT.h>
#include <LIM_action.h>
#include <LIM_pkt_send.h>
#include <LIM_task.h>
Typedefs | |
typedef struct _LIM_Sc | LIM_Sc |
Typedef for opaque spacecraft interface object handle. | |
Functions | |
unsigned int | LIM_sc_new (LIM_Sc **object_pp, LIM_Task *task_p, LIM_Bulk *bulk_p, LIM_Action *action_p, LIM_Pkt_Send *pkt_slew_req_cmd_p, LIM_Pkt_Send *pkt_slew_req_tlm_p, LIM_Pkt_Send *pkt_slew_rsp_tlm_p) |
Create and initialize a new spacecraft interface object. | |
unsigned int | LIM_sc_delete (LIM_Sc *object_p) |
Shutdown and delete a spacecraft interface object. | |
unsigned int | LIM_sc_handle_bulk (LIM_Sc *object_p, const ITC_QueueItem *qitem_p) |
Handle a message on the BULK queue. | |
unsigned int | LIM_sc_handle_grb_idle (LIM_Sc *object_p) |
Handle a transition to the GRB-Idle state. | |
int | LIM_sc_rep_is_active (LIM_Sc *object_p) |
Return the ACTIVE status of a repoint. | |
int | LIM_sc_rep_req_is_pending (LIM_Sc *object_p) |
Return the PENDING status of a repoint request. | |
unsigned int | LIM_sc_remain_sec (LIM_Sc *object_p) |
Return the number of seconds remaining in a repoint period. | |
unsigned int | LIM_sc_send_slew_request (LIM_Sc *object_p, LIM_Action_Id action, unsigned int tran_id, unsigned int dwell_time, double ra, double dec) |
Send a Slew-Request command to the spacecraft. | |
unsigned int | LIM_sc_handle_slew_response (LIM_Sc *object_p, const ITC_QueueItem *qitem_p) |
Handle a Slew-Request-Reply message. |
** CVS $Id: LIM_sc.h,v 1.6 2011/03/29 21:20:29 apw Exp $ **
unsigned int LIM_sc_delete | ( | LIM_Sc * | object_p | ) |
Shutdown and delete a spacecraft interface object.
object_p | Pointer to object. |
References _LIM_Sc::key, lim_sc_check(), and _LIM_Sc::wut.
Referenced by LIM_mode_delete(), and LIM_sc_new().
unsigned int LIM_sc_handle_bulk | ( | LIM_Sc * | object_p, | |
const ITC_QueueItem * | qitem_p | |||
) |
Handle a message on the BULK queue.
object_p | Pointer to spacecraft interface object. | |
qitem_p | Pointer to queue item containing the message. |
References _LIM_Sc::expired, lim_sc_check(), and lim_sc_expire().
Referenced by lim_mode_bulk().
unsigned int LIM_sc_handle_grb_idle | ( | LIM_Sc * | object_p | ) |
Handle a transition to the GRB-Idle state.
object_p | Pointer to spacecraft interface object. |
References lim_sc_check(), lim_sc_expire(), _LIM_Sc::rep_req_pending, and _LIM_Sc::wut_active.
Referenced by lim_arr_set_grb_idle().
unsigned int LIM_sc_handle_slew_response | ( | LIM_Sc * | object_p, | |
const ITC_QueueItem * | qitem_p | |||
) |
Handle a Slew-Request-Reply message.
object_p | Pointer to spacecraft interface object. | |
qitem_p | Pointer to queue item containing the message. |
References _LIM_Repoint_Response_Tlm::accept, _LIM_ARR_Response_Prm::accept, _LIM_Sc::action_p, _LIM_Repoint_Response_Tlm::dwell_time, LIM_ACTION_RCV_SLEW_ACCEPT, LIM_ACTION_RCV_SLEW_REJECT, LIM_action_report(), LIM_pkt_send_tlm(), lim_sc_change_state(), lim_sc_check(), lim_sc_wut_handler(), _LIM_Repoint_Response_Tlm::loc_dec, _LIM_Repoint_Response_Tlm::loc_ra, _LIM_ARR_Response_Pkt::pay, _LIM_Sc::pkt_slew_rsp_tlm_p, _LIM_Sc::rep_req_dec, _LIM_Sc::rep_req_dwell, _LIM_Sc::rep_req_pending, _LIM_Sc::rep_req_ra, _LIM_Sc::rep_req_tran_id, _LIM_Repoint_Response_Tlm::tran_id, _LIM_ARR_Response_Prm::tran_id, and _LIM_Sc::wut.
Referenced by LIM_arr_handle_response().
unsigned int LIM_sc_new | ( | LIM_Sc ** | object_pp, | |
LIM_Task * | task_p, | |||
LIM_Bulk * | bulk_p, | |||
LIM_Action * | action_p, | |||
LIM_Pkt_Send * | pkt_slew_req_cmd_p, | |||
LIM_Pkt_Send * | pkt_slew_req_tlm_p, | |||
LIM_Pkt_Send * | pkt_slew_rsp_tlm_p | |||
) |
Create and initialize a new spacecraft interface object.
object_pp | Location to return pointer to new object. | |
task_p | Ptr to a task object. | |
bulk_p | Ptr to a bulk queue object. | |
action_p | Ptr to an action reporting object. | |
pkt_slew_req_cmd_p | Ptr to Slew-Request cmd pkt send object. | |
pkt_slew_req_tlm_p | Ptr to Slew-Request tlm pkt send object. | |
pkt_slew_rsp_tlm_p | Ptr to Slew-Request resp tlm pkt send object. |
References _LIM_Sc::action_p, _LIM_Sc::bulk_p, _LIM_Sc::key, LIM_pkt_set_info(), LIM_REPOINT_REQUEST_TLM_APID, LIM_REPOINT_RESPONSE_TLM_APID, LIM_sc_delete(), LIM_SC_VALID_KEY, _LIM_Sc::pkt_slew_req_cmd_p, _LIM_Sc::pkt_slew_req_tlm_p, _LIM_Sc::pkt_slew_rsp_tlm_p, _LIM_Sc::rep_req_pending, _LIM_Sc::task_p, _LIM_Sc::wut, and _LIM_Sc::wut_active.
Referenced by LIM_mode_new().
unsigned int LIM_sc_remain_sec | ( | LIM_Sc * | object_p | ) |
Return the number of seconds remaining in a repoint period.
object_p | Pointer to spacecraft interface object. |
References lim_sc_check(), _LIM_Sc::rep_req_dwell, _LIM_Sc::start_sec, and _LIM_Sc::wut_active.
Referenced by LIM_mode_get_info().
int LIM_sc_rep_is_active | ( | LIM_Sc * | object_p | ) |
Return the ACTIVE status of a repoint.
object_p | Pointer to object. |
References lim_sc_check(), and _LIM_Sc::wut_active.
Referenced by LIM_arr_handle_bulk(), and LIM_arr_handle_response().
int LIM_sc_rep_req_is_pending | ( | LIM_Sc * | object_p | ) |
Return the PENDING status of a repoint request.
object_p | Pointer to object. |
References lim_sc_check(), and _LIM_Sc::rep_req_pending.
Referenced by LIM_arr_handle_closeout(), LIM_arr_handle_finished(), and LIM_mode_get_info().
unsigned int LIM_sc_send_slew_request | ( | LIM_Sc * | object_p, | |
LIM_Action_Id | action, | |||
unsigned int | tran_id, | |||
unsigned int | dwell_time, | |||
double | ra, | |||
double | dec | |||
) |
Send a Slew-Request command to the spacecraft.
object_p | Pointer to spacecraft interface object. | |
action | Action to report. | |
tran_id | Transaction ID value for the command. | |
dwell_time | Dwell Time value for the command. | |
ra | RA value for the command. | |
dec | DEC value for the command. |
References _LIM_Sc::action_p, _LIM_Repoint_Request_Tlm::dwell_time, LIM_action_report(), LIM_pkt_send_cmd(), LIM_pkt_send_tlm(), lim_sc_change_state(), lim_sc_check(), _LIM_Repoint_Request_Tlm::loc_dec, _LIM_Repoint_Request_Tlm::loc_ra, _LIM_Sc::pkt_slew_req_cmd_p, _LIM_Sc::pkt_slew_req_tlm_p, _LIM_Sc::rep_req_dec, _LIM_Sc::rep_req_dwell, _LIM_Sc::rep_req_pending, _LIM_Sc::rep_req_ra, _LIM_Sc::rep_req_tran_id, _LIM_Repoint_Request_Tlm::tran_id, and _LIM_Sc::wut_active.
Referenced by LIM_arr_handle_confirmed(), and LIM_gbm_handle_repoint().