/************************************************************************* $Archive: /PACS/OnBoard/bol.h $ $Revision: 1.11 $ $Date: 2009/04/23 13:51:12 $ $Author: amazy $ $Log: bol.h,v $ Revision 1.11 2009/04/23 13:51:12 amazy 6.029 * * 15 3/14/06 4:31p Pacs Egse * Version 6.001 * Cleaned and commented ************************************************************************/ #define BOL_H #ifndef CSL_TYPE_H #include "csl_type.h" #endif #define NB_BOLC_HK_ENTRIES 224 //note, it was 196 with the first version of the BOLC /* STRUCT : BolControllerParams **************************** AUTHOR : AMazy USE : This structure contains all data related to the BOL Controller task. */ typedef struct { int TaskStatus; //software counter counting the packet //sent since the start of the task (can not be reset) int PacketCounter; int ReadoutValidityBlue; int ReadoutValidityRed; } BolControllerParams; /* ENUM : BolControllerFifoMessageType *********************************** AUTHOR : AMazy USE : Enumerates the messages that can be written on BOL Controller FIFO */ typedef enum { BOL_MSG_TRANSMIT_COMMAND, } BolControllerFifoMessageType; /* STRUCT : BolControllerFifoMessage ********************************* AUTHOR : AMazy USE : This structure is used to transmit messages on the Bol Controller's FIFO. It is used by the Sequencer to transmit commands from the DPU to BOLC. */ typedef struct { BolControllerFifoMessageType Type; int BolCommand; } BolControllerFifoMessage; /* STRUCT : BolReceiverParams ************************** AUTHOR : AMazy USE : This structure contains all data related to the BOL Receiver task. */ typedef struct { int TaskStatus; int Options; //software counter counting the packet //received since the start of the task (can not be reset) int PacketCounter; //software counter that can be reset by command (SetTime, //SetOBSID, SetBBID), it is mainly used for timing purpose in HkDiagPacket int ReadoutCounter; int BlueBufferToFill; int RedBufferToFill; int SimulatedBlueReadout[1024]; int SimulatedRedReadout[256]; int BolcStatusWord; int HkArray[NB_BOLC_HK_ENTRIES]; } BolReceiverParams;