F´ Flight Software - C/C++ Documentation
A framework for building embedded system applications to NASA flight quality standards.
Svc::BufferManagerComponentBase Class Referenceabstract

Auto-generated base for BufferManager component. More...

#include <Svc/BufferManager/BufferManagerComponentAc.hpp>

Inheritance diagram for Svc::BufferManagerComponentBase:
Fw::PassiveComponentBase Fw::ObjBase Svc::BufferManagerComponentImpl

Public Member Functions

void init (FwEnumStoreType instance=0)
 Initialize BufferManagerComponentBase object. More...
 
Fw::InputBufferGetPortget_bufferGetCallee_InputPort (FwIndexType portNum)
 
Fw::InputBufferSendPortget_bufferSendIn_InputPort (FwIndexType portNum)
 
Svc::InputSchedPortget_schedIn_InputPort (FwIndexType portNum)
 
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...
 
- Public Member Functions inherited from Fw::PassiveComponentBase
void setIdBase (const U32)
 Set the ID base. More...
 
U32 getIdBase () const
 

Protected Types

enum  { NUM_BUFFERGETCALLEE_INPUT_PORTS = 1, NUM_BUFFERSENDIN_INPUT_PORTS = 1, NUM_SCHEDIN_INPUT_PORTS = 1 }
 Enumerations for numbers of typed input ports. More...
 
enum  { 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  { EVENTID_NOBUFFSAVAILABLE = 0x0, EVENTID_NULLEMPTYBUFFER = 0x1 }
 Event IDs. More...
 
enum  { EVENTID_NOBUFFSAVAILABLE_THROTTLE = 10, EVENTID_NULLEMPTYBUFFER_THROTTLE = 10 }
 Event throttle values: sets initial value of countdown variables. More...
 
enum  {
  CHANNELID_TOTALBUFFS = 0x0, CHANNELID_CURRBUFFS = 0x1, CHANNELID_HIBUFFS = 0x2, CHANNELID_NOBUFFS = 0x3,
  CHANNELID_EMPTYBUFFS = 0x4
}
 Channel IDs. More...
 

Protected Member Functions

 BufferManagerComponentBase (const char *compName="")
 Construct BufferManagerComponentBase object. More...
 
virtual ~BufferManagerComponentBase ()
 Destroy BufferManagerComponentBase object. More...
 
FwIndexType getNum_bufferGetCallee_InputPorts () const
 
FwIndexType getNum_bufferSendIn_InputPorts () const
 
FwIndexType getNum_schedIn_InputPorts () const
 
FwIndexType getNum_eventOut_OutputPorts () const
 
FwIndexType getNum_timeCaller_OutputPorts () const
 
FwIndexType getNum_tlmOut_OutputPorts () const
 
bool isConnected_eventOut_OutputPort (FwIndexType portNum)
 
bool isConnected_timeCaller_OutputPort (FwIndexType portNum)
 
bool isConnected_tlmOut_OutputPort (FwIndexType portNum)
 
virtual Fw::Buffer bufferGetCallee_handler (FwIndexType portNum, U32 size)=0
 Handler for input port bufferGetCallee. More...
 
virtual void bufferSendIn_handler (FwIndexType portNum, Fw::Buffer &fwBuffer)=0
 Handler for input port bufferSendIn. More...
 
virtual void schedIn_handler (FwIndexType portNum, U32 context)=0
 Handler for input port schedIn. More...
 
Fw::Buffer bufferGetCallee_handlerBase (FwIndexType portNum, U32 size)
 Handler base-class function for input port bufferGetCallee. More...
 
void bufferSendIn_handlerBase (FwIndexType portNum, Fw::Buffer &fwBuffer)
 Handler base-class function for input port bufferSendIn. More...
 
void schedIn_handlerBase (FwIndexType portNum, U32 context)
 Handler base-class function for input port schedIn. More...
 
void log_WARNING_HI_NoBuffsAvailable (U32 size)
 
void log_WARNING_HI_NullEmptyBuffer ()
 
void log_WARNING_HI_NoBuffsAvailable_ThrottleClear ()
 Reset throttle value for NoBuffsAvailable. More...
 
void log_WARNING_HI_NullEmptyBuffer_ThrottleClear ()
 Reset throttle value for NullEmptyBuffer. More...
 
void tlmWrite_TotalBuffs (U32 arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_CurrBuffs (U32 arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_HiBuffs (U32 arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_NoBuffs (U32 arg, Fw::Time _tlmTime=Fw::Time())
 
void tlmWrite_EmptyBuffs (U32 arg, Fw::Time _tlmTime=Fw::Time())
 
Fw::Time getTime () const
 
virtual void lock ()
 Lock the guarded mutex. More...
 
virtual void unLock ()
 Unlock the guarded mutex. More...
 
- Protected Member Functions inherited from Fw::PassiveComponentBase
 PassiveComponentBase (const char *name)
 Named constructor. More...
 
virtual ~PassiveComponentBase ()
 Destructor. More...
 
void init (FwEnumStoreType instance)
 Initialization function. More...
 
FwEnumStoreType 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...
 

Friends

class BufferManagerComponentBaseFriend
 Friend class for white-box testing. More...
 
class BufferManagerTesterBase
 Friend class tester to support autocoded test harness. More...
 

Detailed Description

Auto-generated base for BufferManager component.

A component for managing memory buffers

Definition at line 35 of file BufferManagerComponentAc.hpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of typed input ports.

Enumerator
NUM_BUFFERGETCALLEE_INPUT_PORTS 
NUM_BUFFERSENDIN_INPUT_PORTS 
NUM_SCHEDIN_INPUT_PORTS 

Definition at line 55 of file BufferManagerComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Enumerations for numbers of special output ports.

Enumerator
NUM_EVENTOUT_OUTPUT_PORTS 
NUM_TEXTEVENTOUT_OUTPUT_PORTS 
NUM_TIMECALLER_OUTPUT_PORTS 
NUM_TLMOUT_OUTPUT_PORTS 

Definition at line 62 of file BufferManagerComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Event IDs.

Enumerator
EVENTID_NOBUFFSAVAILABLE 

The BufferManager was unable to allocate a requested buffer.

EVENTID_NULLEMPTYBUFFER 

The buffer manager received a null pointer and zero-sized buffer as a return. Probably undetected failed buffer allocation.

Definition at line 70 of file BufferManagerComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Event throttle values: sets initial value of countdown variables.

Enumerator
EVENTID_NOBUFFSAVAILABLE_THROTTLE 

Throttle reset count for NoBuffsAvailable.

EVENTID_NULLEMPTYBUFFER_THROTTLE 

Throttle reset count for NullEmptyBuffer.

Definition at line 76 of file BufferManagerComponentAc.hpp.

◆ anonymous enum

anonymous enum
protected

Channel IDs.

Enumerator
CHANNELID_TOTALBUFFS 

Channel ID for TotalBuffs.

CHANNELID_CURRBUFFS 

Channel ID for CurrBuffs.

CHANNELID_HIBUFFS 

Channel ID for HiBuffs.

CHANNELID_NOBUFFS 

Channel ID for NoBuffs.

CHANNELID_EMPTYBUFFS 

Channel ID for EmptyBuffs.

Definition at line 82 of file BufferManagerComponentAc.hpp.

Constructor & Destructor Documentation

◆ BufferManagerComponentBase()

Svc::BufferManagerComponentBase::BufferManagerComponentBase ( const char *  compName = "")
protected

Construct BufferManagerComponentBase object.

Parameters
compNameThe component name

Definition at line 351 of file BufferManagerComponentAc.cpp.

◆ ~BufferManagerComponentBase()

Svc::BufferManagerComponentBase::~BufferManagerComponentBase ( )
protectedvirtual

Destroy BufferManagerComponentBase object.

Definition at line 379 of file BufferManagerComponentAc.cpp.

Member Function Documentation

◆ bufferGetCallee_handler()

virtual Fw::Buffer Svc::BufferManagerComponentBase::bufferGetCallee_handler ( FwIndexType  portNum,
U32  size 
)
protectedpure virtual

Handler for input port bufferGetCallee.

Parameters
portNumThe port number
sizeThe requested size

◆ bufferGetCallee_handlerBase()

Fw::Buffer Svc::BufferManagerComponentBase::bufferGetCallee_handlerBase ( FwIndexType  portNum,
U32  size 
)
protected

Handler base-class function for input port bufferGetCallee.

Parameters
portNumThe port number
sizeThe requested size

Definition at line 497 of file BufferManagerComponentAc.cpp.

◆ bufferSendIn_handler()

virtual void Svc::BufferManagerComponentBase::bufferSendIn_handler ( FwIndexType  portNum,
Fw::Buffer fwBuffer 
)
protectedpure virtual

Handler for input port bufferSendIn.

Parameters
portNumThe port number
fwBufferThe buffer

◆ bufferSendIn_handlerBase()

void Svc::BufferManagerComponentBase::bufferSendIn_handlerBase ( FwIndexType  portNum,
Fw::Buffer fwBuffer 
)
protected

Handler base-class function for input port bufferSendIn.

Parameters
portNumThe port number
fwBufferThe buffer

Definition at line 526 of file BufferManagerComponentAc.cpp.

◆ get_bufferGetCallee_InputPort()

Fw::InputBufferGetPort * Svc::BufferManagerComponentBase::get_bufferGetCallee_InputPort ( FwIndexType  portNum)

Get typed input port at index

Returns
bufferGetCallee[portNum]
Parameters
portNumThe port number

Definition at line 182 of file BufferManagerComponentAc.cpp.

◆ get_bufferSendIn_InputPort()

Fw::InputBufferSendPort * Svc::BufferManagerComponentBase::get_bufferSendIn_InputPort ( FwIndexType  portNum)

Get typed input port at index

Returns
bufferSendIn[portNum]
Parameters
portNumThe port number

Definition at line 193 of file BufferManagerComponentAc.cpp.

◆ get_schedIn_InputPort()

Svc::InputSchedPort * Svc::BufferManagerComponentBase::get_schedIn_InputPort ( FwIndexType  portNum)

Get typed input port at index

Returns
schedIn[portNum]
Parameters
portNumThe port number

Definition at line 204 of file BufferManagerComponentAc.cpp.

◆ getNum_bufferGetCallee_InputPorts()

FwIndexType Svc::BufferManagerComponentBase::getNum_bufferGetCallee_InputPorts ( ) const
protected

Get the number of bufferGetCallee input ports

Returns
The number of bufferGetCallee input ports

Definition at line 389 of file BufferManagerComponentAc.cpp.

◆ getNum_bufferSendIn_InputPorts()

FwIndexType Svc::BufferManagerComponentBase::getNum_bufferSendIn_InputPorts ( ) const
protected

Get the number of bufferSendIn input ports

Returns
The number of bufferSendIn input ports

Definition at line 395 of file BufferManagerComponentAc.cpp.

◆ getNum_eventOut_OutputPorts()

FwIndexType Svc::BufferManagerComponentBase::getNum_eventOut_OutputPorts ( ) const
protected

Get the number of eventOut output ports

Returns
The number of eventOut output ports

Definition at line 411 of file BufferManagerComponentAc.cpp.

◆ getNum_schedIn_InputPorts()

FwIndexType Svc::BufferManagerComponentBase::getNum_schedIn_InputPorts ( ) const
protected

Get the number of schedIn input ports

Returns
The number of schedIn input ports

Definition at line 401 of file BufferManagerComponentAc.cpp.

◆ getNum_timeCaller_OutputPorts()

FwIndexType Svc::BufferManagerComponentBase::getNum_timeCaller_OutputPorts ( ) const
protected

Get the number of timeCaller output ports

Returns
The number of timeCaller output ports

Definition at line 427 of file BufferManagerComponentAc.cpp.

◆ getNum_tlmOut_OutputPorts()

FwIndexType Svc::BufferManagerComponentBase::getNum_tlmOut_OutputPorts ( ) const
protected

Get the number of tlmOut output ports

Returns
The number of tlmOut output ports

Definition at line 433 of file BufferManagerComponentAc.cpp.

◆ getTime()

Fw::Time Svc::BufferManagerComponentBase::getTime ( ) const
protected

Get the time

\return The current time

Definition at line 1003 of file BufferManagerComponentAc.cpp.

◆ init()

void Svc::BufferManagerComponentBase::init ( FwEnumStoreType  instance = 0)

Initialize BufferManagerComponentBase object.

Parameters
instanceThe instance number

Definition at line 21 of file BufferManagerComponentAc.cpp.

◆ isConnected_eventOut_OutputPort()

bool Svc::BufferManagerComponentBase::isConnected_eventOut_OutputPort ( FwIndexType  portNum)
protected

Check whether port eventOut is connected

Returns
Whether port eventOut is connected
Parameters
portNumThe port number

Definition at line 443 of file BufferManagerComponentAc.cpp.

◆ isConnected_timeCaller_OutputPort()

bool Svc::BufferManagerComponentBase::isConnected_timeCaller_OutputPort ( FwIndexType  portNum)
protected

Check whether port timeCaller is connected

Returns
Whether port timeCaller is connected
Parameters
portNumThe port number

Definition at line 469 of file BufferManagerComponentAc.cpp.

◆ isConnected_tlmOut_OutputPort()

bool Svc::BufferManagerComponentBase::isConnected_tlmOut_OutputPort ( FwIndexType  portNum)
protected

Check whether port tlmOut is connected

Returns
Whether port tlmOut is connected
Parameters
portNumThe port number

Definition at line 480 of file BufferManagerComponentAc.cpp.

◆ lock()

void Svc::BufferManagerComponentBase::lock ( )
protectedvirtual

Lock the guarded mutex.

Definition at line 1023 of file BufferManagerComponentAc.cpp.

◆ log_WARNING_HI_NoBuffsAvailable()

void Svc::BufferManagerComponentBase::log_WARNING_HI_NoBuffsAvailable ( U32  size)
protected

Log event NoBuffsAvailable

The BufferManager was unable to allocate a requested buffer

Parameters
sizeThe requested size

Definition at line 574 of file BufferManagerComponentAc.cpp.

◆ log_WARNING_HI_NoBuffsAvailable_ThrottleClear()

void Svc::BufferManagerComponentBase::log_WARNING_HI_NoBuffsAvailable_ThrottleClear ( )
protected

Reset throttle value for NoBuffsAvailable.

Definition at line 741 of file BufferManagerComponentAc.cpp.

◆ log_WARNING_HI_NullEmptyBuffer()

void Svc::BufferManagerComponentBase::log_WARNING_HI_NullEmptyBuffer ( )
protected

Log event NullEmptyBuffer

The buffer manager received a null pointer and zero-sized buffer as a return. Probably undetected failed buffer allocation

Definition at line 664 of file BufferManagerComponentAc.cpp.

◆ log_WARNING_HI_NullEmptyBuffer_ThrottleClear()

void Svc::BufferManagerComponentBase::log_WARNING_HI_NullEmptyBuffer_ThrottleClear ( )
protected

Reset throttle value for NullEmptyBuffer.

Definition at line 748 of file BufferManagerComponentAc.cpp.

◆ schedIn_handler()

virtual void Svc::BufferManagerComponentBase::schedIn_handler ( FwIndexType  portNum,
U32  context 
)
protectedpure virtual

Handler for input port schedIn.

Parameters
portNumThe port number
contextThe call order

◆ schedIn_handlerBase()

void Svc::BufferManagerComponentBase::schedIn_handlerBase ( FwIndexType  portNum,
U32  context 
)
protected

Handler base-class function for input port schedIn.

Parameters
portNumThe port number
contextThe call order

Definition at line 551 of file BufferManagerComponentAc.cpp.

◆ set_eventOut_OutputPort()

void Svc::BufferManagerComponentBase::set_eventOut_OutputPort ( FwIndexType  portNum,
Fw::InputLogPort port 
)

Connect port to eventOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 219 of file BufferManagerComponentAc.cpp.

◆ set_timeCaller_OutputPort()

void Svc::BufferManagerComponentBase::set_timeCaller_OutputPort ( FwIndexType  portNum,
Fw::InputTimePort port 
)

Connect port to timeCaller[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 251 of file BufferManagerComponentAc.cpp.

◆ set_tlmOut_OutputPort()

void Svc::BufferManagerComponentBase::set_tlmOut_OutputPort ( FwIndexType  portNum,
Fw::InputTlmPort port 
)

Connect port to tlmOut[portNum].

Parameters
portNumThe port number
portThe input port

Definition at line 265 of file BufferManagerComponentAc.cpp.

◆ tlmWrite_CurrBuffs()

void Svc::BufferManagerComponentBase::tlmWrite_CurrBuffs ( U32  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel CurrBuffs

The current number of allocated buffers

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 807 of file BufferManagerComponentAc.cpp.

◆ tlmWrite_EmptyBuffs()

void Svc::BufferManagerComponentBase::tlmWrite_EmptyBuffs ( U32  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel EmptyBuffs

The number of empty buffers returned

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 951 of file BufferManagerComponentAc.cpp.

◆ tlmWrite_HiBuffs()

void Svc::BufferManagerComponentBase::tlmWrite_HiBuffs ( U32  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel HiBuffs

The high water mark of allocated buffers

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 855 of file BufferManagerComponentAc.cpp.

◆ tlmWrite_NoBuffs()

void Svc::BufferManagerComponentBase::tlmWrite_NoBuffs ( U32  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel NoBuffs

The number of requests that couldn't return a buffer

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 903 of file BufferManagerComponentAc.cpp.

◆ tlmWrite_TotalBuffs()

void Svc::BufferManagerComponentBase::tlmWrite_TotalBuffs ( U32  arg,
Fw::Time  _tlmTime = Fw::Time() 
)
protected

Write telemetry channel TotalBuffs

The total buffers allocated

Parameters
argThe telemetry value
_tlmTimeTimestamp. Default: unspecified, request from getTime port

Definition at line 759 of file BufferManagerComponentAc.cpp.

◆ unLock()

void Svc::BufferManagerComponentBase::unLock ( )
protectedvirtual

Unlock the guarded mutex.

Definition at line 1029 of file BufferManagerComponentAc.cpp.

Friends And Related Function Documentation

◆ BufferManagerComponentBaseFriend

friend class BufferManagerComponentBaseFriend
friend

Friend class for white-box testing.

Definition at line 44 of file BufferManagerComponentAc.hpp.

◆ BufferManagerTesterBase

friend class BufferManagerTesterBase
friend

Friend class tester to support autocoded test harness.

Definition at line 46 of file BufferManagerComponentAc.hpp.


The documentation for this class was generated from the following files: