GLAST/LAT > DAQ and FSW > FSW > Doxygen Index > CTDB / V5-5-3

Constituent: co1553_rt_sim     Tag: mv2304


Interface   Data Structures   File List   Data Fields   Globals  

CTDB_rt.h File Reference

1553 Remote Terminal Interface More...

#include "CTDB/CTDB_msg.h"
#include "PBS/TOC.h"

Include dependency graph for CTDB_rt.h:

This graph shows which files directly or indirectly include this file:


Data Structures

struct  _CTDB_RT_Diag

Control Functions

unsigned int CTDB_rtSizeof (void)
 Get the size of a remote terminal interface descriptor.
void * CTDB_rtGet (void)
 Get a pointer to the remote terminal interface static descriptor.
unsigned int CTDB_rtExit (void *rt)
 Shutdown a 1553 remote terminal interface.
unsigned int CTDB_rtStart (void *rt)
 Start the remote terminal listening for 1553 bus commands.
unsigned int CTDB_rtStop (void *rt)
 Stop the remote terminal listening for 1553 bus commands.
unsigned int CTDB_rtHkpSet (void *rt, CTDB_RT_Hkp_Handler *hkpHandler, void *hkpArg)
 Change the HKP application callback.
unsigned int CTDB_rtHkpGet (void *rt, CTDB_RT_Hkp_Handler **hkpHandler, void **hkpArg)
 Get current HKP application callback information.

Packet Queue Functions

unsigned int CTDB_rtPktTelemSend (void *rt, void *pkt, CTDB_RT_Pkt_Free *freeHandler, void *freeArg, CTDB_RT_Priority priority, const TOC *timeout)
 Send a CCSDS telemetry packet.
unsigned int CTDB_rtPktCmdTxSend (void *rt, void *pkt, CTDB_RT_Pkt_Free *freeHandler, void *freeArg, const TOC *timeout)
 Send a CCSDS telecommand transmit packet.
unsigned int CTDB_rtPktCmdRxRecv (void *rt, void **pkt, const TOC *timeout)
 Receive a CCSDS telecommand receive packet.
unsigned int CTDB_rtPktCmdRxFree (void *rt, void *pkt)
 Free a CCSDS telecommand receive packet buffer.

Diagnostics Functions

unsigned int CTDB_rtDiagGet (void *rt, CTDB_RT_Diag *diag)
 Read the diagnostics information.
unsigned int CTDB_rtDiagClear (void *rt)
 Clear the diagnostics information.

Typedefs

typedef enum _CTDB_RT_Priority CTDB_RT_Priority
typedef void CTDB_RT_Pkt_Free (void *pkt, void *arg)
typedef unsigned int CTDB_RT_Hkp_Handler (void *buf, void *arg)
typedef _CTDB_RT_Diag CTDB_RT_Diag

Enumerations

enum  _CTDB_RT_Priority {
  CTDB_RT_PRIORITY_LOW = 0,
  CTDB_RT_PRIORITY_HIGH = 1
}

Detailed Description

1553 Remote Terminal Interface

Author:
D.L. Wood
This library contains functions that serve as wrappers for the various LAT 1553 implementations. Allows higher level code to be implementation independent, except for the initialization functions. Also note that the actual hardware drivers can return device specific error codes. These specific error codes are not covered by this interface.

Typedef Documentation

CTDB_RT_Diag
 

The typedef for _CTDB_RT_Diag.

CTDB_RT_Hkp_Handler
 

The format of the real-time housekeeping remote terminal callback. The user provides this function so that the HKP data packet may be inserted into the 1553 frame. The user should copy the HKP packet, with properly formatted CCSDS header, into the buf memory.

        unsigned int SUMT_RT_Hkp_Handler(void *buf, void *arg)

Parameters:
buf A driver buffer to accept the HKP packet contents.
arg A user supplied argument.
Returns:
CTDB_SUCCESS if successful; other code if HKP packet not inserted.

CTDB_RT_Pkt_Free
 

The definition of a packet buffer memory free callback function. These callbacks are employeed when users are sending packets on a transmit queue. The packet memory is borrowed while the packet is on the queue. When the packet contents have been transmitted, the free handler is called with a user supplied argument.

        void CTDB_RT_Pkt_Free(void *pkt, void *arg)

Parameters:
pkt A pointer to the packet buffer to release.
arg The user defined argument.

CTDB_RT_Priority
 

The typedef for _CTDB_RT_Priority.


Enumeration Type Documentation

enum _CTDB_RT_Priority
 

Values to indicate packet priority.

Enumerator:
CTDB_RT_PRIORITY_LOW  A priority value to indicate low priority.
CTDB_RT_PRIORITY_HIGH  A priority value to indicate high priority.


Function Documentation

unsigned int CTDB_rtDiagClear void *  rt  ) 
 

Clear the diagnostics information.

Sets to zero the current diagnostics counter values.

Parameters:
rt A device descriptor.
Returns:
A CTDB MSG code.

unsigned int CTDB_rtDiagGet void *  rt,
CTDB_RT_Diag diag
 

Read the diagnostics information.

Places the current diagnostics counter values into diag.

Parameters:
rt A device descriptor.
diag Contains diagnostics info upon return.
Returns:
A CTDB MSG code.

unsigned int CTDB_rtExit void *  rt  ) 
 

Shutdown a 1553 remote terminal interface.

Disconnects the remote terminal and releases system resources.

Parameters:
rt A device descriptor.
Returns:
A CTDB MSG code.

void* CTDB_rtGet void   ) 
 

Get a pointer to the remote terminal interface static descriptor.

Returns a pointer to a static instance of the interface descriptor. This pointer may be passed in as the first paramter to all of the other interface functions. The device-specific intialization function must be called before use.

Returns:
A pointer to the RT interface descriptor.

unsigned int CTDB_rtHkpGet void *  rt,
CTDB_RT_Hkp_Handler **  hkpHandler,
void **  hkpArg
 

Get current HKP application callback information.

Retrieves the HKP application callback function and arguments current values.

Parameters:
rt A device descriptor.
hkpHandler Stores the pointer to the application HKP function.
hkpArg Stores user argument for hkpHandler.
Returns:
A CTDB MSG code.

unsigned int CTDB_rtHkpSet void *  rt,
CTDB_RT_Hkp_Handler hkpHandler,
void *  hkpArg
 

Change the HKP application callback.

Changes the HKP application callback function and arguments to new values.

Parameters:
rt A device descriptor.
hkpHandler The synchronous callback to handle insertion of HKP telemety packets into the telemetry blocks.
hkpArg A user argument for hkpHandler.
Returns:
A CTDB MSG code.

unsigned int CTDB_rtPktCmdRxFree void *  rt,
void *  pkt
 

Free a CCSDS telecommand receive packet buffer.

Returns a CCSDS telecommand input packet buffer to the interface.

Parameters:
rt A device descriptor.
pkt A pointer to the packet buffer to free.
Returns:
A CTDB MSG code.

unsigned int CTDB_rtPktCmdRxRecv void *  rt,
void **  pkt,
const TOC *  timeout
 

Receive a CCSDS telecommand receive packet.

Waits for a new CCSDS telecommand receive packet on the remote terminal input queue. The function will place a pointer to the new packet buffer in pkt.

Parameters:
rt A device descriptor.
pkt Holds a pointer to the telecommand packet.
timeout The time to wait for a packet on the queue. This value is ignored for the simulator implementation.
Returns:
A CTDB MSG code.

unsigned int CTDB_rtPktCmdTxSend void *  rt,
void *  pkt,
CTDB_RT_Pkt_Free freeHandler,
void *  freeArg,
const TOC *  timeout
 

Send a CCSDS telecommand transmit packet.

Places a CCSDS telecommand packet on the remote terminal output queue. The packet will be sent when bandwidth becomes available.

Parameters:
rt A device descriptor.
pkt A pointer to the packet to send. The packet buffer should start with a properly formatted CCSDS packet header.
freeHandler The function to be called after the packet has been sent.
freeArg A user argument to be passed to the freeHandler function.
timeout The time to wait for a packet on the queue. This value is ignored for the simulator implementation.
Returns:
A CTDB MSG code.

unsigned int CTDB_rtPktTelemSend void *  rt,
void *  pkt,
CTDB_RT_Pkt_Free freeHandler,
void *  freeArg,
CTDB_RT_Priority  priority,
const TOC *  timeout
 

Send a CCSDS telemetry packet.

Places a CCSDS telemetry packet on the remote terminal output queue. The packet will be sent when bandwidth becomes available.

Parameters:
rt A device descriptor.
pkt A pointer to the packet to send. The packet buffer should start with a properly formatted CCSDS packet header.
freeHandler The function to be called after the packet has been sent.
freeArg A user argument to be passed to the freeHandler function.
priority The priority of the packet: CTDB_RT_PRIORITY_HIGH or CTDB_RT_PRIORITY_LOW.
timeout The time to wait for a packet on the queue. This value is ignored for the simulator implementation.
Returns:
A CTDB MSG code.

unsigned int CTDB_rtSizeof void   ) 
 

Get the size of a remote terminal interface descriptor.

Returns the size of a remote terminal descriptor.

This function is obsolete. Use CTDB_rtGet() to provide an instance of the simulator descriptor instead.

Returns:
The size in bytes of the descriptor.

unsigned int CTDB_rtStart void *  rt  ) 
 

Start the remote terminal listening for 1553 bus commands.

Starts the remote terminal listening on the 1553 bus for commands from the bus controller.

Parameters:
rt A device descriptor.
Returns:
A CTDB MSG code.

unsigned int CTDB_rtStop void *  rt  ) 
 

Stop the remote terminal listening for 1553 bus commands.

Stops the remote terminal from listening on the 1553 bus for commands from the bus controller.

Parameters:
rt A device descriptor.
Returns:
A CTDB MSG code.


Generated on Mon Nov 14 21:55:21 2005 by  doxygen 1.4.4