![]() |
F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
|
Auto-generated base for BlockDriver component. More...
#include <Drv/BlockDriver/BlockDriverComponentAc.hpp>
Public Member Functions | |
| void | init (FwSizeType queueDepth, FwEnumStoreType instance=0) |
| Initialize BlockDriverComponentBase object. | |
| Drv::InputDataBufferPort * | get_BufferIn_InputPort (FwIndexType portNum) |
| Svc::InputPingPort * | get_PingIn_InputPort (FwIndexType portNum) |
| Svc::InputSchedPort * | get_Sched_InputPort (FwIndexType portNum) |
| void | set_Time_OutputPort (FwIndexType portNum, Fw::InputTimePort *port) |
| Connect port to Time[portNum]. | |
| void | set_Tlm_OutputPort (FwIndexType portNum, Fw::InputTlmPort *port) |
| Connect port to Tlm[portNum]. | |
| void | set_BufferOut_OutputPort (FwIndexType portNum, Drv::InputDataBufferPort *port) |
| Connect port to BufferOut[portNum]. | |
| void | set_CycleOut_OutputPort (FwIndexType portNum, Svc::InputCyclePort *port) |
| Connect port to CycleOut[portNum]. | |
| void | set_PingOut_OutputPort (FwIndexType portNum, Svc::InputPingPort *port) |
| Connect port to PingOut[portNum]. | |
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 | |
| void | exit () |
| exit task in active component | |
| Os::Task::Status | join () |
| Join the thread. | |
| DEPRECATED (Os::Task::Status join(void **value_ptr), "Switch to .join()") | |
| Join to thread with discarded value_ptr. | |
Public Member Functions inherited from Fw::PassiveComponentBase | |
| void | setIdBase (const U32) |
| Set the ID base. | |
| U32 | getIdBase () const |
Protected Types | |
| enum | { NUM_BUFFERIN_INPUT_PORTS = 1 , NUM_PINGIN_INPUT_PORTS = 1 , NUM_SCHED_INPUT_PORTS = 1 } |
| Enumerations for numbers of typed input ports. More... | |
| enum | { NUM_TIME_OUTPUT_PORTS = 1 , NUM_TLM_OUTPUT_PORTS = 1 } |
| Enumerations for numbers of special output ports. More... | |
| enum | { NUM_BUFFEROUT_OUTPUT_PORTS = 1 , NUM_CYCLEOUT_OUTPUT_PORTS = 1 , NUM_PINGOUT_OUTPUT_PORTS = 1 } |
| Enumerations for numbers of typed output ports. More... | |
| enum | { CHANNELID_BD_CYCLES = 0x0 } |
| 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 | |
| BlockDriverComponentBase (const char *compName="") | |
| Construct BlockDriverComponentBase object. | |
| virtual | ~BlockDriverComponentBase () |
| Destroy BlockDriverComponentBase object. | |
| FwIndexType | getNum_BufferIn_InputPorts () const |
| FwIndexType | getNum_PingIn_InputPorts () const |
| FwIndexType | getNum_Sched_InputPorts () const |
| FwIndexType | getNum_Time_OutputPorts () const |
| FwIndexType | getNum_Tlm_OutputPorts () const |
| FwIndexType | getNum_BufferOut_OutputPorts () const |
| FwIndexType | getNum_CycleOut_OutputPorts () const |
| FwIndexType | getNum_PingOut_OutputPorts () const |
| bool | isConnected_Time_OutputPort (FwIndexType portNum) |
| bool | isConnected_Tlm_OutputPort (FwIndexType portNum) |
| bool | isConnected_BufferOut_OutputPort (FwIndexType portNum) |
| bool | isConnected_CycleOut_OutputPort (FwIndexType portNum) |
| bool | isConnected_PingOut_OutputPort (FwIndexType portNum) |
| virtual void | BufferIn_handler (FwIndexType portNum, Drv::DataBuffer &buff)=0 |
| Handler for input port BufferIn. | |
| virtual void | PingIn_handler (FwIndexType portNum, U32 key)=0 |
| Handler for input port PingIn. | |
| virtual void | Sched_handler (FwIndexType portNum, U32 context)=0 |
| Handler for input port Sched. | |
| void | BufferIn_handlerBase (FwIndexType portNum, Drv::DataBuffer &buff) |
| Handler base-class function for input port BufferIn. | |
| void | PingIn_handlerBase (FwIndexType portNum, U32 key) |
| Handler base-class function for input port PingIn. | |
| void | Sched_handlerBase (FwIndexType portNum, U32 context) |
| Handler base-class function for input port Sched. | |
| virtual void | BufferIn_preMsgHook (FwIndexType portNum, Drv::DataBuffer &buff) |
| Pre-message hook for async input port BufferIn. | |
| virtual void | PingIn_preMsgHook (FwIndexType portNum, U32 key) |
| Pre-message hook for async input port PingIn. | |
| virtual void | Sched_preMsgHook (FwIndexType portNum, U32 context) |
| Pre-message hook for async input port Sched. | |
| void | BufferOut_out (FwIndexType portNum, Drv::DataBuffer &buff) |
| Invoke output port BufferOut. | |
| void | CycleOut_out (FwIndexType portNum, Os::RawTime &cycleStart) |
| Invoke output port CycleOut. | |
| void | PingOut_out (FwIndexType portNum, U32 key) |
| Invoke output port PingOut. | |
| virtual void | InterruptReport_internalInterfaceHandler (U32 interrupt)=0 |
| Internal interface handler for InterruptReport. | |
| void | InterruptReport_internalInterfaceInvoke (U32 interrupt) |
| Internal interface base-class function for InterruptReport. | |
| void | tlmWrite_BD_Cycles (U32 arg, Fw::Time _tlmTime=Fw::Time()) const |
| Fw::Time | getTime () |
Protected Member Functions inherited from Fw::ActiveComponentBase | |
| ActiveComponentBase (const char *name) | |
| Constructor. | |
| virtual | ~ActiveComponentBase () |
| Destructor. | |
| void | init (NATIVE_INT_TYPE instance) |
| initialization code | |
| virtual void | preamble () |
| A function that will be called before the event loop is entered. | |
| MsgDispatchStatus | dispatch () |
| The function that will dispatching messages. | |
| virtual void | finalizer () |
| A function that will be called after exiting the loop. | |
Protected Member Functions inherited from Fw::QueuedComponentBase | |
| QueuedComponentBase (const char *name) | |
| Constructor. | |
| virtual | ~QueuedComponentBase () |
| Destructor. | |
| void | init (NATIVE_INT_TYPE instance) |
| initialization function | |
| Os::Queue::Status | createQueue (FwSizeType depth, FwSizeType msgSize) |
| NATIVE_INT_TYPE | getNumMsgsDropped () |
| return number of messages dropped | |
| void | incNumMsgDropped () |
| increment the number of messages dropped | |
Protected Member Functions inherited from Fw::PassiveComponentBase | |
| PassiveComponentBase (const char *name) | |
| Named constructor. | |
| virtual | ~PassiveComponentBase () |
| Destructor. | |
| void | init (NATIVE_INT_TYPE instance) |
| Initialization function. | |
| NATIVE_INT_TYPE | getInstance () const |
Protected Member Functions inherited from Fw::ObjBase | |
| ObjBase (const char *name) | |
| ObjBase constructor. | |
| virtual | ~ObjBase () |
| Destructor. | |
| void | init () |
| Object initializer. | |
Friends | |
| class | BlockDriverComponentBaseFriend |
| Friend class for white-box testing. | |
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 Attributes inherited from Fw::ActiveComponentBase | |
| Os::Task | m_task |
| task object for active component | |
Protected Attributes inherited from Fw::QueuedComponentBase | |
| Os::Queue | m_queue |
| queue object for active component | |
Auto-generated base for BlockDriver component.
An example block driver component with data buffers and interrupts
Definition at line 29 of file BlockDriverComponentAc.hpp.
|
protected |
Enumerations for numbers of typed input ports.
| Enumerator | |
|---|---|
| NUM_BUFFERIN_INPUT_PORTS | |
| NUM_PINGIN_INPUT_PORTS | |
| NUM_SCHED_INPUT_PORTS | |
Definition at line 47 of file BlockDriverComponentAc.hpp.
|
protected |
Enumerations for numbers of special output ports.
| Enumerator | |
|---|---|
| NUM_TIME_OUTPUT_PORTS | |
| NUM_TLM_OUTPUT_PORTS | |
Definition at line 54 of file BlockDriverComponentAc.hpp.
|
protected |
Enumerations for numbers of typed output ports.
| Enumerator | |
|---|---|
| NUM_BUFFEROUT_OUTPUT_PORTS | |
| NUM_CYCLEOUT_OUTPUT_PORTS | |
| NUM_PINGOUT_OUTPUT_PORTS | |
Definition at line 60 of file BlockDriverComponentAc.hpp.
|
protected |
Channel IDs.
| Enumerator | |
|---|---|
| CHANNELID_BD_CYCLES | Channel ID for BD_Cycles. |
Definition at line 67 of file BlockDriverComponentAc.hpp.
|
protected |
Construct BlockDriverComponentBase object.
| compName | The component name |
Definition at line 469 of file BlockDriverComponentAc.cpp.
|
protectedvirtual |
Destroy BlockDriverComponentBase object.
Definition at line 476 of file BlockDriverComponentAc.cpp.
|
protectedpure virtual |
Handler for input port BufferIn.
| portNum | The port number |
| buff | A data buffer |
|
protected |
Handler base-class function for input port BufferIn.
| portNum | The port number |
| buff | A data buffer |
Definition at line 611 of file BlockDriverComponentAc.cpp.
|
protectedvirtual |
Pre-message hook for async input port BufferIn.
| portNum | The port number |
| buff | A data buffer |
Definition at line 778 of file BlockDriverComponentAc.cpp.
|
protected |
Invoke output port BufferOut.
| portNum | The port number |
| buff | A data buffer |
Definition at line 809 of file BlockDriverComponentAc.cpp.
|
protected |
Invoke output port CycleOut.
| portNum | The port number |
| cycleStart | Cycle start timestamp |
Definition at line 824 of file BlockDriverComponentAc.cpp.
| Drv::InputDataBufferPort * Drv::BlockDriverComponentBase::get_BufferIn_InputPort | ( | FwIndexType | portNum | ) |
Get typed input port at index
| portNum | The port number |
Definition at line 268 of file BlockDriverComponentAc.cpp.
| Svc::InputPingPort * Drv::BlockDriverComponentBase::get_PingIn_InputPort | ( | FwIndexType | portNum | ) |
Get typed input port at index
| portNum | The port number |
Definition at line 279 of file BlockDriverComponentAc.cpp.
| Svc::InputSchedPort * Drv::BlockDriverComponentBase::get_Sched_InputPort | ( | FwIndexType | portNum | ) |
Get typed input port at index
| portNum | The port number |
Definition at line 290 of file BlockDriverComponentAc.cpp.
|
protected |
Get the number of BufferIn input ports
Definition at line 486 of file BlockDriverComponentAc.cpp.
|
protected |
Get the number of BufferOut output ports
Definition at line 524 of file BlockDriverComponentAc.cpp.
|
protected |
Get the number of CycleOut output ports
Definition at line 530 of file BlockDriverComponentAc.cpp.
|
protected |
Get the number of PingIn input ports
Definition at line 492 of file BlockDriverComponentAc.cpp.
|
protected |
Get the number of PingOut output ports
Definition at line 536 of file BlockDriverComponentAc.cpp.
|
protected |
Get the number of Sched input ports
Definition at line 498 of file BlockDriverComponentAc.cpp.
|
protected |
Get the number of Time output ports
Definition at line 508 of file BlockDriverComponentAc.cpp.
|
protected |
Get the number of Tlm output ports
Definition at line 514 of file BlockDriverComponentAc.cpp.
|
protected |
| void Drv::BlockDriverComponentBase::init | ( | FwSizeType | queueDepth, |
| FwEnumStoreType | instance = 0 |
||
| ) |
Initialize BlockDriverComponentBase object.
| queueDepth | The queue depth |
| instance | The instance number |
Definition at line 77 of file BlockDriverComponentAc.cpp.
|
protectedpure virtual |
Internal interface handler for InterruptReport.
| interrupt | The interrupt register value |
|
protected |
Internal interface base-class function for InterruptReport.
| interrupt | The interrupt register value |
Definition at line 858 of file BlockDriverComponentAc.cpp.
|
protected |
Check whether port BufferOut is connected
| portNum | The port number |
Definition at line 572 of file BlockDriverComponentAc.cpp.
|
protected |
Check whether port CycleOut is connected
| portNum | The port number |
Definition at line 583 of file BlockDriverComponentAc.cpp.
|
protected |
Check whether port PingOut is connected
| portNum | The port number |
Definition at line 594 of file BlockDriverComponentAc.cpp.
|
protected |
Check whether port Time is connected
| portNum | The port number |
Definition at line 546 of file BlockDriverComponentAc.cpp.
|
protected |
Check whether port Tlm is connected
| portNum | The port number |
Definition at line 557 of file BlockDriverComponentAc.cpp.
|
protectedpure virtual |
Handler for input port PingIn.
| portNum | The port number |
| key | Value to return to pinger |
|
protected |
Handler base-class function for input port PingIn.
| portNum | The port number |
| key | Value to return to pinger |
Definition at line 664 of file BlockDriverComponentAc.cpp.
|
protectedvirtual |
Pre-message hook for async input port PingIn.
| portNum | The port number |
| key | Value to return to pinger |
Definition at line 787 of file BlockDriverComponentAc.cpp.
|
protected |
Invoke output port PingOut.
| portNum | The port number |
| key | Value to return to pinger |
Definition at line 839 of file BlockDriverComponentAc.cpp.
|
protectedpure virtual |
Handler for input port Sched.
| portNum | The port number |
| context | The call order |
|
protected |
Handler base-class function for input port Sched.
| portNum | The port number |
| context | The call order |
Definition at line 717 of file BlockDriverComponentAc.cpp.
|
protectedvirtual |
Pre-message hook for async input port Sched.
| portNum | The port number |
| context | The call order |
Definition at line 796 of file BlockDriverComponentAc.cpp.
| void Drv::BlockDriverComponentBase::set_BufferOut_OutputPort | ( | FwIndexType | portNum, |
| Drv::InputDataBufferPort * | port | ||
| ) |
Connect port to BufferOut[portNum].
| portNum | The port number |
| port | The input port |
Definition at line 337 of file BlockDriverComponentAc.cpp.
| void Drv::BlockDriverComponentBase::set_CycleOut_OutputPort | ( | FwIndexType | portNum, |
| Svc::InputCyclePort * | port | ||
| ) |
Connect port to CycleOut[portNum].
| portNum | The port number |
| port | The input port |
Definition at line 351 of file BlockDriverComponentAc.cpp.
| void Drv::BlockDriverComponentBase::set_PingOut_OutputPort | ( | FwIndexType | portNum, |
| Svc::InputPingPort * | port | ||
| ) |
Connect port to PingOut[portNum].
| portNum | The port number |
| port | The input port |
Definition at line 365 of file BlockDriverComponentAc.cpp.
| void Drv::BlockDriverComponentBase::set_Time_OutputPort | ( | FwIndexType | portNum, |
| Fw::InputTimePort * | port | ||
| ) |
Connect port to Time[portNum].
| portNum | The port number |
| port | The input port |
Definition at line 305 of file BlockDriverComponentAc.cpp.
| void Drv::BlockDriverComponentBase::set_Tlm_OutputPort | ( | FwIndexType | portNum, |
| Fw::InputTlmPort * | port | ||
| ) |
Connect port to Tlm[portNum].
| portNum | The port number |
| port | The input port |
Definition at line 319 of file BlockDriverComponentAc.cpp.
|
protected |
Write telemetry channel BD_Cycles
Driver cycle count
| arg | The telemetry value |
| _tlmTime | Timestamp. Default: unspecified, request from getTime port |
Definition at line 898 of file BlockDriverComponentAc.cpp.
|
friend |
Friend class for white-box testing.
Definition at line 38 of file BlockDriverComponentAc.hpp.