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 ()
 
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...
 

Detailed Description

Auto-generated base for BufferManager component.

A component for managing memory buffers

Definition at line 33 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 51 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 58 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 66 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 72 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 78 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 ( )
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 42 of file BufferManagerComponentAc.hpp.


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