AMS Advanced Air Mobility Sensors UG
Loading...
Searching...
No Matches
CSoftwareComponentPortBase Class Referenceabstract
Inheritance diagram for CSoftwareComponentPortBase:
CSoftwareComponentPort< SImuMeasurement, static_cast< uint8_t >(EPortIds::eImuInput1)> CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::ePressureInput1)> CSoftwareComponentPort< SMagneticMeasurement, static_cast< uint8_t >(EPortIds::eMagnetometerInput1)> CSoftwareComponentPort< SMagneticMeasurement, static_cast< uint8_t >(EPortIds::eMagnetometerInput2)> CSoftwareComponentPort< SMagneticMeasurement, static_cast< uint8_t >(EPortIds::eMagnetometerInput3)> CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::ePressureInput2)> CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::ePressureInput3)> CSoftwareComponentPort< SImuMeasurement, static_cast< uint8_t >(EPortIds::eImuInput2)> CSoftwareComponentPort< SImuMeasurement, static_cast< uint8_t >(EPortIds::eImuInput3)> CSoftwareComponentPort< STimeOfSyncPulse, static_cast< uint8_t >(EPortIds::eSyncPulseTime)> CSoftwareComponentPort< SOutputImuData, static_cast< uint8_t >(EPortIds::eImuOutput)> CSoftwareComponentPort< SMagneticMeasurement, static_cast< uint8_t >(EPortIds::eCompensatedMagnetometerData)> CSoftwareComponentPort< SMagneticHeading, static_cast< uint8_t >(EPortIds::eMagneticHeading)> CSoftwareComponentPort< SMagneticMeasurement, static_cast< uint8_t >(EPortIds::eCompensatedMagnetometerDataInVehicleFrame)> CSoftwareComponentPort< CImuDataAfterMonitor, static_cast< uint8_t >(EPortIds::eImuDataAfterMonitor)> CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::eSafePressureData1)> CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::eSafePressureData2)> CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::eSafePressureData3)> CSoftwareComponentPort< CBahrsFilterOutput, static_cast< uint8_t >(EPortIds::eBahrsFilterOutput1)> CSoftwareComponentPort< CBahrsFilterOutput, static_cast< uint8_t >(EPortIds::eBahrsFilterOutput2)> CSoftwareComponentPort< CBahrsFilterOutput, static_cast< uint8_t >(EPortIds::eBahrsFilterOutput3)> CSoftwareComponentPort< SAttitudeData, static_cast< uint8_t >(EPortIds::eVehicleAttitude1)> CSoftwareComponentPort< SAttitudeData, static_cast< uint8_t >(EPortIds::eVehicleAttitude2)> CSoftwareComponentPort< SAttitudeData, static_cast< uint8_t >(EPortIds::eVehicleAttitude3)> CSoftwareComponentPort< SSafeAttitudeData, static_cast< uint8_t >(EPortIds::eSafeVehicleAttitude)> CSoftwareComponentPort< SSafeVerticalChannelData, static_cast< uint8_t >(EPortIds::eSafeVerticalChannelData)> CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::eCompensatedPressureInput1)> CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::eCompensatedPressureInput2)> CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::eCompensatedPressureInput3)> CSoftwareComponentPort< SImuMeasurement, static_cast< uint8_t >(EPortIds::eImuInputFiltered1)> CSoftwareComponentPort< SImuMeasurement, static_cast< uint8_t >(EPortIds::eImuInputFiltered2)> CSoftwareComponentPort< SImuMeasurement, static_cast< uint8_t >(EPortIds::eImuInputFiltered3)> CSoftwareComponentPort< tPortDataType, uPortId >

Public Member Functions

 CSoftwareComponentPortBase ()
 Constructor. Creates a mutex for the port. The function will assert if the mutex creation fails.
 ~CSoftwareComponentPortBase ()
 CSoftwareComponentPortBase (CSoftwareComponentPortBase &)=delete
 CSoftwareComponentPortBase (CSoftwareComponentPortBase &&)=delete
CSoftwareComponentPortBaseoperator= (const CSoftwareComponentPortBase &orOther)=delete
CSoftwareComponentPortBaseoperator= (CSoftwareComponentPortBase &&orOther)=delete
bool Init ()
bool Lock ()
void Unlock ()
 Unlock the port.
virtual uint8_t GetId () const =0
 Get port unique identifier.

Protected Types

using osStaticMutexDef_t = StaticSemaphore_t

Protected Attributes

osMutexId_t pMutexHandle_
 Mutex handle.
osStaticMutexDef_t sMutexControlBlock_
 Memory reserved for the mutex control block.
const osMutexAttr_t sMutexAttributes_ { NULL, 0, &sMutexControlBlock_, sizeof(sMutexControlBlock_) }
 A structure with mutex attributes required for creation.

Static Protected Attributes

static constexpr uint32_t skuPortLockTimeout { 1U }
 Timeout for port lock operation (in FreeRTOS ticks).

Member Typedef Documentation

◆ osStaticMutexDef_t

using CSoftwareComponentPortBase::osStaticMutexDef_t = StaticSemaphore_t
protected

Constructor & Destructor Documentation

◆ CSoftwareComponentPortBase() [1/3]

CSoftwareComponentPortBase::CSoftwareComponentPortBase ( )
explicit

Constructor. Creates a mutex for the port. The function will assert if the mutex creation fails.

◆ ~CSoftwareComponentPortBase()

CSoftwareComponentPortBase::~CSoftwareComponentPortBase ( )

◆ CSoftwareComponentPortBase() [2/3]

CSoftwareComponentPortBase::CSoftwareComponentPortBase ( CSoftwareComponentPortBase & )
delete

◆ CSoftwareComponentPortBase() [3/3]

CSoftwareComponentPortBase::CSoftwareComponentPortBase ( CSoftwareComponentPortBase && )
delete

Member Function Documentation

◆ GetId()

virtual uint8_t CSoftwareComponentPortBase::GetId ( ) const
pure virtual

Get port unique identifier.

Implemented in CSoftwareComponentPort< tPortDataType, uPortId >, CSoftwareComponentPort< CBahrsFilterOutput, static_cast< uint8_t >(EPortIds::eBahrsFilterOutput1)>, CSoftwareComponentPort< CBahrsFilterOutput, static_cast< uint8_t >(EPortIds::eBahrsFilterOutput2)>, CSoftwareComponentPort< CBahrsFilterOutput, static_cast< uint8_t >(EPortIds::eBahrsFilterOutput3)>, CSoftwareComponentPort< CImuDataAfterMonitor, static_cast< uint8_t >(EPortIds::eImuDataAfterMonitor)>, CSoftwareComponentPort< SAttitudeData, static_cast< uint8_t >(EPortIds::eVehicleAttitude1)>, CSoftwareComponentPort< SAttitudeData, static_cast< uint8_t >(EPortIds::eVehicleAttitude2)>, CSoftwareComponentPort< SAttitudeData, static_cast< uint8_t >(EPortIds::eVehicleAttitude3)>, CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::eCompensatedPressureInput1)>, CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::eCompensatedPressureInput2)>, CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::eCompensatedPressureInput3)>, CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::ePressureInput1)>, CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::ePressureInput2)>, CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::ePressureInput3)>, CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::eSafePressureData1)>, CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::eSafePressureData2)>, CSoftwareComponentPort< SBarometerMeasurement, static_cast< uint8_t >(EPortIds::eSafePressureData3)>, CSoftwareComponentPort< SImuMeasurement, static_cast< uint8_t >(EPortIds::eImuInput1)>, CSoftwareComponentPort< SImuMeasurement, static_cast< uint8_t >(EPortIds::eImuInput2)>, CSoftwareComponentPort< SImuMeasurement, static_cast< uint8_t >(EPortIds::eImuInput3)>, CSoftwareComponentPort< SImuMeasurement, static_cast< uint8_t >(EPortIds::eImuInputFiltered1)>, CSoftwareComponentPort< SImuMeasurement, static_cast< uint8_t >(EPortIds::eImuInputFiltered2)>, CSoftwareComponentPort< SImuMeasurement, static_cast< uint8_t >(EPortIds::eImuInputFiltered3)>, CSoftwareComponentPort< SMagneticHeading, static_cast< uint8_t >(EPortIds::eMagneticHeading)>, CSoftwareComponentPort< SMagneticMeasurement, static_cast< uint8_t >(EPortIds::eCompensatedMagnetometerData)>, CSoftwareComponentPort< SMagneticMeasurement, static_cast< uint8_t >(EPortIds::eCompensatedMagnetometerDataInVehicleFrame)>, CSoftwareComponentPort< SMagneticMeasurement, static_cast< uint8_t >(EPortIds::eMagnetometerInput1)>, CSoftwareComponentPort< SMagneticMeasurement, static_cast< uint8_t >(EPortIds::eMagnetometerInput2)>, CSoftwareComponentPort< SMagneticMeasurement, static_cast< uint8_t >(EPortIds::eMagnetometerInput3)>, CSoftwareComponentPort< SOutputImuData, static_cast< uint8_t >(EPortIds::eImuOutput)>, CSoftwareComponentPort< SSafeAttitudeData, static_cast< uint8_t >(EPortIds::eSafeVehicleAttitude)>, CSoftwareComponentPort< SSafeVerticalChannelData, static_cast< uint8_t >(EPortIds::eSafeVerticalChannelData)>, and CSoftwareComponentPort< STimeOfSyncPulse, static_cast< uint8_t >(EPortIds::eSyncPulseTime)>.

◆ Init()

bool CSoftwareComponentPortBase::Init ( )
inline

Initialize the port. Deprecated. Left for compatibility with th RTE generator.

Returns
True – success, false – failure.

◆ Lock()

bool CSoftwareComponentPortBase::Lock ( )

Lock the port for exclusive access.

Returns
True – success, false – failure.

◆ operator=() [1/2]

CSoftwareComponentPortBase & CSoftwareComponentPortBase::operator= ( const CSoftwareComponentPortBase & orOther)
delete

◆ operator=() [2/2]

CSoftwareComponentPortBase & CSoftwareComponentPortBase::operator= ( CSoftwareComponentPortBase && orOther)
delete

◆ Unlock()

void CSoftwareComponentPortBase::Unlock ( )

Unlock the port.

Member Data Documentation

◆ pMutexHandle_

osMutexId_t CSoftwareComponentPortBase::pMutexHandle_
protected

Mutex handle.

◆ skuPortLockTimeout

uint32_t CSoftwareComponentPortBase::skuPortLockTimeout { 1U }
staticconstexprprotected

Timeout for port lock operation (in FreeRTOS ticks).

◆ sMutexAttributes_

const osMutexAttr_t CSoftwareComponentPortBase::sMutexAttributes_ { NULL, 0, &sMutexControlBlock_, sizeof(sMutexControlBlock_) }
protected

A structure with mutex attributes required for creation.

◆ sMutexControlBlock_

osStaticMutexDef_t CSoftwareComponentPortBase::sMutexControlBlock_
protected

Memory reserved for the mutex control block.


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