F´ Flight Software - C/C++ Documentation
devel
A framework for building embedded system applications to NASA flight quality standards.
|
#include <Svc/FileDownlink/FileDownlink.hpp>
Public Member Functions | |
FileDownlink (const char *const compName) | |
void | configure (U32 timeout, U32 cooldown, U32 cycleTime, U32 fileQueueDepth) |
void | preamble () |
~FileDownlink () | |
Public Member Functions inherited from Svc::FileDownlinkComponentBase | |
void | init (FwSizeType queueDepth, FwEnumStoreType instance=0) |
Initialize FileDownlinkComponentBase object. More... | |
Fw::InputCmdPort * | get_cmdIn_InputPort (FwIndexType portNum) |
Svc::InputSchedPort * | get_Run_InputPort (FwIndexType portNum) |
Svc::InputSendFileRequestPort * | get_SendFile_InputPort (FwIndexType portNum) |
Fw::InputBufferSendPort * | get_bufferReturn_InputPort (FwIndexType portNum) |
Svc::InputPingPort * | get_pingIn_InputPort (FwIndexType portNum) |
void | set_cmdRegOut_OutputPort (FwIndexType portNum, Fw::InputCmdRegPort *port) |
Connect port to cmdRegOut[portNum]. More... | |
void | set_cmdResponseOut_OutputPort (FwIndexType portNum, Fw::InputCmdResponsePort *port) |
Connect port to cmdResponseOut[portNum]. More... | |
void | set_eventOut_OutputPort (FwIndexType portNum, Fw::InputLogPort *port) |
Connect port to eventOut[portNum]. More... | |
void | set_timeCaller_OutputPort (FwIndexType portNum, Fw::InputTimePort *port) |
Connect port to timeCaller[portNum]. More... | |
void | set_tlmOut_OutputPort (FwIndexType portNum, Fw::InputTlmPort *port) |
Connect port to tlmOut[portNum]. More... | |
void | set_FileComplete_OutputPort (FwIndexType portNum, Svc::InputSendFileCompletePort *port) |
Connect port to FileComplete[portNum]. More... | |
void | set_bufferSendOut_OutputPort (FwIndexType portNum, Fw::InputBufferSendPort *port) |
Connect port to bufferSendOut[portNum]. More... | |
void | set_pingOut_OutputPort (FwIndexType portNum, Svc::InputPingPort *port) |
Connect port to pingOut[portNum]. More... | |
void | regCommands () |
Register commands with the Command Dispatcher. More... | |
Public Member Functions inherited from Fw::ActiveComponentBase | |
void | start (Os::Task::ParamType priority=Os::Task::TASK_DEFAULT, Os::Task::ParamType stackSize=Os::Task::TASK_DEFAULT, Os::Task::ParamType cpuAffinity=Os::Task::TASK_DEFAULT, Os::Task::ParamType identifier=Os::Task::TASK_DEFAULT) |
called by instantiator when task is to be started More... | |
void | exit () |
exit task in active component More... | |
Os::Task::Status | join () |
Join the thread. More... | |
DEPRECATED (Os::Task::Status join(void **value_ptr), "Switch to .join()") | |
Join to thread with discarded value_ptr. More... | |
Public Member Functions inherited from Fw::PassiveComponentBase | |
void | setIdBase (const U32) |
Set the ID base. More... | |
U32 | getIdBase () const |
Additional Inherited Members | |
Public Types inherited from Fw::ActiveComponentBase | |
enum | { ACTIVE_COMPONENT_EXIT } |
Public Types inherited from Fw::QueuedComponentBase | |
enum | MsgDispatchStatus { MSG_DISPATCH_OK , MSG_DISPATCH_EMPTY , MSG_DISPATCH_ERROR , MSG_DISPATCH_EXIT } |
Protected Types inherited from Svc::FileDownlinkComponentBase | |
enum | { NUM_CMDIN_INPUT_PORTS = 1 } |
Enumerations for numbers of special input ports. More... | |
enum | { NUM_RUN_INPUT_PORTS = 1 , NUM_SENDFILE_INPUT_PORTS = 1 , NUM_BUFFERRETURN_INPUT_PORTS = 1 , NUM_PINGIN_INPUT_PORTS = 1 } |
Enumerations for numbers of typed input ports. More... | |
enum | { NUM_CMDREGOUT_OUTPUT_PORTS = 1 , NUM_CMDRESPONSEOUT_OUTPUT_PORTS = 1 , NUM_EVENTOUT_OUTPUT_PORTS = 1 , NUM_TEXTEVENTOUT_OUTPUT_PORTS = 1 , NUM_TIMECALLER_OUTPUT_PORTS = 1 , NUM_TLMOUT_OUTPUT_PORTS = 1 } |
Enumerations for numbers of special output ports. More... | |
enum | { NUM_FILECOMPLETE_OUTPUT_PORTS = 1 , NUM_BUFFERSENDOUT_OUTPUT_PORTS = 1 , NUM_PINGOUT_OUTPUT_PORTS = 1 } |
Enumerations for numbers of typed output ports. More... | |
enum | { OPCODE_SENDFILE = 0x0 , OPCODE_CANCEL = 0x1 , OPCODE_SENDPARTIAL = 0x2 } |
Command opcodes. More... | |
enum | { EVENTID_FILEOPENERROR = 0x0 , EVENTID_FILEREADERROR = 0x1 , EVENTID_FILESENT = 0x2 , EVENTID_DOWNLINKCANCELED = 0x3 , EVENTID_DOWNLINKTIMEOUT = 0x4 , EVENTID_DOWNLINKPARTIALWARNING = 0x5 , EVENTID_DOWNLINKPARTIALFAIL = 0x6 , EVENTID_SENDDATAFAIL = 0x7 , EVENTID_SENDSTARTED = 0x8 } |
Event IDs. More... | |
enum | { CHANNELID_FILESSENT = 0x0 , CHANNELID_PACKETSSENT = 0x1 , CHANNELID_WARNINGS = 0x2 } |
Channel IDs. More... | |
Protected Types inherited from Fw::ActiveComponentBase | |
enum | Lifecycle { CREATED , DISPATCHING , FINALIZING , DONE } |
Tracks the lifecycle of the component. More... | |
Protected Member Functions inherited from Svc::FileDownlinkComponentBase | |
FileDownlinkComponentBase (const char *compName="") | |
Construct FileDownlinkComponentBase object. More... | |
virtual | ~FileDownlinkComponentBase () |
Destroy FileDownlinkComponentBase object. More... | |
FwIndexType | getNum_cmdIn_InputPorts () const |
FwIndexType | getNum_Run_InputPorts () const |
FwIndexType | getNum_SendFile_InputPorts () const |
FwIndexType | getNum_bufferReturn_InputPorts () const |
FwIndexType | getNum_pingIn_InputPorts () const |
FwIndexType | getNum_cmdRegOut_OutputPorts () const |
FwIndexType | getNum_cmdResponseOut_OutputPorts () const |
FwIndexType | getNum_eventOut_OutputPorts () const |
FwIndexType | getNum_timeCaller_OutputPorts () const |
FwIndexType | getNum_tlmOut_OutputPorts () const |
FwIndexType | getNum_FileComplete_OutputPorts () const |
FwIndexType | getNum_bufferSendOut_OutputPorts () const |
FwIndexType | getNum_pingOut_OutputPorts () const |
bool | isConnected_cmdRegOut_OutputPort (FwIndexType portNum) |
bool | isConnected_cmdResponseOut_OutputPort (FwIndexType portNum) |
bool | isConnected_eventOut_OutputPort (FwIndexType portNum) |
bool | isConnected_timeCaller_OutputPort (FwIndexType portNum) |
bool | isConnected_tlmOut_OutputPort (FwIndexType portNum) |
bool | isConnected_FileComplete_OutputPort (FwIndexType portNum) |
bool | isConnected_bufferSendOut_OutputPort (FwIndexType portNum) |
bool | isConnected_pingOut_OutputPort (FwIndexType portNum) |
void | Run_handlerBase (FwIndexType portNum, U32 context) |
Handler base-class function for input port Run. More... | |
Svc::SendFileResponse | SendFile_handlerBase (FwIndexType portNum, const Fw::StringBase &sourceFileName, const Fw::StringBase &destFileName, U32 offset, U32 length) |
Handler base-class function for input port SendFile. More... | |
void | bufferReturn_handlerBase (FwIndexType portNum, Fw::Buffer &fwBuffer) |
Handler base-class function for input port bufferReturn. More... | |
void | pingIn_handlerBase (FwIndexType portNum, U32 key) |
Handler base-class function for input port pingIn. More... | |
virtual void | Run_preMsgHook (FwIndexType portNum, U32 context) |
Pre-message hook for async input port Run. More... | |
virtual void | bufferReturn_preMsgHook (FwIndexType portNum, Fw::Buffer &fwBuffer) |
Pre-message hook for async input port bufferReturn. More... | |
virtual void | pingIn_preMsgHook (FwIndexType portNum, U32 key) |
Pre-message hook for async input port pingIn. More... | |
void | FileComplete_out (FwIndexType portNum, const Svc::SendFileResponse &resp) |
Invoke output port FileComplete. More... | |
void | bufferSendOut_out (FwIndexType portNum, Fw::Buffer &fwBuffer) |
Invoke output port bufferSendOut. More... | |
void | pingOut_out (FwIndexType portNum, U32 key) |
Invoke output port pingOut. More... | |
void | cmdResponse_out (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdResponse response) |
Emit command response. More... | |
void | SendFile_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args) |
void | Cancel_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args) |
void | SendPartial_cmdHandlerBase (FwOpcodeType opCode, U32 cmdSeq, Fw::CmdArgBuffer &args) |
virtual void | SendFile_preMsgHook (FwOpcodeType opCode, U32 cmdSeq) |
Pre-message hook for command SendFile. More... | |
virtual void | Cancel_preMsgHook (FwOpcodeType opCode, U32 cmdSeq) |
Pre-message hook for command Cancel. More... | |
virtual void | SendPartial_preMsgHook (FwOpcodeType opCode, U32 cmdSeq) |
Pre-message hook for command SendPartial. More... | |
void | log_WARNING_HI_FileOpenError (const Fw::StringBase &fileName) |
void | log_WARNING_HI_FileReadError (const Fw::StringBase &fileName, I32 status) |
void | log_ACTIVITY_HI_FileSent (const Fw::StringBase &sourceFileName, const Fw::StringBase &destFileName) |
void | log_ACTIVITY_HI_DownlinkCanceled (const Fw::StringBase &sourceFileName, const Fw::StringBase &destFileName) |
void | log_WARNING_HI_DownlinkTimeout (const Fw::StringBase &sourceFileName, const Fw::StringBase &destFileName) |
void | log_WARNING_LO_DownlinkPartialWarning (U32 startOffset, U32 length, U32 filesize, const Fw::StringBase &sourceFileName, const Fw::StringBase &destFileName) |
void | log_WARNING_HI_DownlinkPartialFail (const Fw::StringBase &sourceFileName, const Fw::StringBase &destFileName, U32 startOffset, U32 filesize) |
void | log_WARNING_HI_SendDataFail (const Fw::StringBase &sourceFileName, U32 byteOffset) |
void | log_ACTIVITY_HI_SendStarted (U32 fileSize, const Fw::StringBase &sourceFileName, const Fw::StringBase &destFileName) |
void | tlmWrite_FilesSent (U32 arg, Fw::Time _tlmTime=Fw::Time()) |
void | tlmWrite_PacketsSent (U32 arg, Fw::Time _tlmTime=Fw::Time()) |
void | tlmWrite_Warnings (U32 arg, Fw::Time _tlmTime=Fw::Time()) |
Fw::Time | getTime () |
virtual void | lock () |
Lock the guarded mutex. More... | |
virtual void | unLock () |
Unlock the guarded mutex. More... | |
Protected Member Functions inherited from Fw::ActiveComponentBase | |
ActiveComponentBase (const char *name) | |
Constructor. More... | |
virtual | ~ActiveComponentBase () |
Destructor. More... | |
void | init (NATIVE_INT_TYPE instance) |
initialization code More... | |
MsgDispatchStatus | dispatch () |
The function that will dispatching messages. More... | |
virtual void | finalizer () |
A function that will be called after exiting the loop. More... | |
Protected Member Functions inherited from Fw::QueuedComponentBase | |
QueuedComponentBase (const char *name) | |
Constructor. More... | |
virtual | ~QueuedComponentBase () |
Destructor. More... | |
void | init (NATIVE_INT_TYPE instance) |
initialization function More... | |
Os::Queue::Status | createQueue (FwSizeType depth, FwSizeType msgSize) |
NATIVE_INT_TYPE | getNumMsgsDropped () |
return number of messages dropped More... | |
void | incNumMsgDropped () |
increment the number of messages dropped More... | |
Protected Member Functions inherited from Fw::PassiveComponentBase | |
PassiveComponentBase (const char *name) | |
Named constructor. More... | |
virtual | ~PassiveComponentBase () |
Destructor. More... | |
void | init (NATIVE_INT_TYPE instance) |
Initialization function. More... | |
NATIVE_INT_TYPE | getInstance () const |
Protected Member Functions inherited from Fw::ObjBase | |
ObjBase (const char *name) | |
ObjBase constructor. More... | |
virtual | ~ObjBase () |
Destructor. More... | |
void | init () |
Object initializer. More... | |
Protected Attributes inherited from Fw::ActiveComponentBase | |
Os::Task | m_task |
task object for active component More... | |
Protected Attributes inherited from Fw::QueuedComponentBase | |
Os::Queue | m_queue |
queue object for active component More... | |
Definition at line 25 of file FileDownlink.hpp.
Svc::FileDownlink::FileDownlink | ( | const char *const | compName | ) |
Construct object FileDownlink
compName | The component name |
Definition at line 25 of file FileDownlink.cpp.
Svc::FileDownlink::~FileDownlink | ( | ) |
Destroy object FileDownlink
Definition at line 73 of file FileDownlink.cpp.
void Svc::FileDownlink::configure | ( | U32 | timeout, |
U32 | cooldown, | ||
U32 | cycleTime, | ||
U32 | fileQueueDepth | ||
) |
Configure FileDownlink component
timeout | Timeout threshold (milliseconds) while in WAIT state |
cooldown | Cooldown (in ms) between finishing a downlink and starting the next file. |
cycleTime | Rate at which we are running |
fileQueueDepth | Max number of items in file downlink queue |
Definition at line 46 of file FileDownlink.cpp.
|
virtual |
Start FileDownlink component The component must be configured with configure() before starting.
Reimplemented from Fw::ActiveComponentBase.
Definition at line 67 of file FileDownlink.cpp.