AMS Advanced Air Mobility Sensors UG
Loading...
Searching...
No Matches
CNvmDriver Class Reference
Inheritance diagram for CNvmDriver:
CSoftwareComponent< CNvmDriver, 0U > CSoftwareComponent< CNvmDriver, 0U >

Classes

struct  SNmvFormatVersion
struct  SEulerAnglesDeviceToVehicle
struct  SMagnetometerCalibrationParameters
struct  SAssertions
struct  SCanConfigurationParameters
struct  SPressureCompensationParameters
struct  SNvmData
struct  TNvmBlock
struct  SMagnetometerCalibrationParameters1
struct  SMagnetometerCalibrationParameters2
struct  SMagnetometerCalibrationParameters3

Public Types

using CNvmBlockNmvFormatVersion = TNvmBlock<SNmvFormatVersion, skuBlockOffsetNmvFormatVersion>
using CNvmBlockEulerAnglesDeviceToVehicle = TNvmBlock<SEulerAnglesDeviceToVehicle, skuBlockOffsetEulerAnglesDeviceToVehicle>
using CNvmBlockMagnetometerCalibrationParameters = TNvmBlock<SMagnetometerCalibrationParameters, skuBlockOffsetMagnetometerCalibrationParameters>
using CNvmBlockAssertions = TNvmBlock<SAssertions, skuBlockOffsetAssertions>
using CNvmBlockCanConfigurationParameters = TNvmBlock<SCanConfigurationParameters, skuBlockOffsetCanConfigurationParameters>
using CNvmBlockPressureCompensationParameters = TNvmBlock<SPressureCompensationParameters, skuBlockOffsetPressureCompensationParameters>
using CNvmBlockNmvFormatVersion = TNvmBlock<SNmvFormatVersion, skuBlockOffsetNmvFormatVersion>
using CNvmBlockEulerAnglesDeviceToVehicle = TNvmBlock<SEulerAnglesDeviceToVehicle, skuBlockOffsetEulerAnglesDeviceToVehicle>
using CNvmBlockMagnetometerCalibrationParameters1 = TNvmBlock<SMagnetometerCalibrationParameters1, skuBlockOffsetMagnetometerCalibrationParameters1>
using CNvmBlockMagnetometerCalibrationParameters2 = TNvmBlock<SMagnetometerCalibrationParameters2, skuBlockOffsetMagnetometerCalibrationParameters2>
using CNvmBlockMagnetometerCalibrationParameters3 = TNvmBlock<SMagnetometerCalibrationParameters3, skuBlockOffsetMagnetometerCalibrationParameters3>
using CNvmBlockCanConfigurationParameters = TNvmBlock<SCanConfigurationParameters, skuBlockOffsetCanConfigurationParameters>
using CNvmBlockPressureCompensationParameters = TNvmBlock<SPressureCompensationParameters, skuBlockOffsetPressureCompensationParameters>

Public Member Functions

void Init () override
bool IsInitialized () override
void Init () override
bool IsInitialized () override
Public Member Functions inherited from CSoftwareComponent< CNvmDriver, 0U >
 CSoftwareComponent (CSoftwareComponent &)=delete
CSoftwareComponentoperator= (const CSoftwareComponent &orOther)=delete

Static Public Member Functions

template<typename tNvmBlock>
static bool ReadBlock (typename tNvmBlock::CDataType &orBlockData)
template<typename tNvmBlock>
static bool WriteBlock (const typename tNvmBlock::CDataType &korBlockData)
static bool ReadPage (uint16_t uPageNumber, uint8_t *upPage)
static bool WritePage (uint16_t uPageNumber, uint8_t *upPage)
template<typename tNvmBlock>
static bool ReadBlock (typename tNvmBlock::CDataType &orBlockData)
template<typename tNvmBlock>
static bool WriteBlock (const typename tNvmBlock::CDataType &korBlockData)
static bool ReadPage (uint16_t uPageNumber, uint8_t *upPage)
static bool WritePage (uint16_t uPageNumber, uint8_t *upPage)
Static Public Member Functions inherited from CSoftwareComponent< CNvmDriver, 0U >
static CNvmDriverGetInstance (unsigned uInstanceIndex=0U)

Static Public Attributes

static constexpr uint16_t skuMemorySize_ { 8000U }
static constexpr uint8_t skuPageSize_ { 32U }
static constexpr uint16_t skuVersionMajor_ { 1U }
static constexpr uint16_t skuVersionMinor_ { 2U }
static constexpr uint16_t skuBlockOffsetNmvFormatVersion = 0U
static constexpr uint16_t skuBlockOffsetEulerAnglesDeviceToVehicle = skuBlockOffsetNmvFormatVersion + sizeof(SNmvFormatVersion)
static constexpr uint16_t skuBlockOffsetMagnetometerCalibrationParameters = skuBlockOffsetEulerAnglesDeviceToVehicle + sizeof(SEulerAnglesDeviceToVehicle)
static constexpr uint16_t skuBlockOffsetAssertions = skuBlockOffsetMagnetometerCalibrationParameters + sizeof(SMagnetometerCalibrationParameters)
static constexpr uint16_t skuBlockOffsetCanConfigurationParameters = skuBlockOffsetAssertions + sizeof(SAssertions)
static constexpr uint16_t skuBlockOffsetPressureCompensationParameters = skuBlockOffsetCanConfigurationParameters + sizeof(SCanConfigurationParameters)
static constexpr uint16_t skuBlockOffsetMagnetometerCalibrationParameters1 = skuBlockOffsetEulerAnglesDeviceToVehicle + sizeof(SEulerAnglesDeviceToVehicle)
static constexpr uint16_t skuBlockOffsetMagnetometerCalibrationParameters2 = skuBlockOffsetMagnetometerCalibrationParameters1 + sizeof(SMagnetometerCalibrationParameters1)
static constexpr uint16_t skuBlockOffsetMagnetometerCalibrationParameters3 = skuBlockOffsetMagnetometerCalibrationParameters2 + sizeof(SMagnetometerCalibrationParameters2)
Static Public Attributes inherited from CSoftwareComponent< CNvmDriver, 0U >
static constexpr unsigned skuInstanceCount_

Private Member Functions

 CNvmDriver (CNvmDriver &)=delete
 CNvmDriver (CNvmDriver &&)=delete
CNvmDriveroperator= (const CNvmDriver &orOther)=delete
CNvmDriveroperator= (CNvmDriver &&orOther)=delete
 CNvmDriver ()=default
 ~CNvmDriver ()=default
 CNvmDriver (CNvmDriver &)=delete
 CNvmDriver (CNvmDriver &&)=delete
CNvmDriveroperator= (const CNvmDriver &orOther)=delete
CNvmDriveroperator= (CNvmDriver &&orOther)=delete
 CNvmDriver ()=default
 ~CNvmDriver ()=default

Static Private Member Functions

static CNvmDrivergetInstanceImpl (unsigned uInstanceIndex)
static CNvmDrivergetInstanceImpl (unsigned uInstanceIndex)

Friends

class CSoftwareComponent< CNvmDriver, 0U >

Additional Inherited Members

Protected Member Functions inherited from CSoftwareComponent< CNvmDriver, 0U >
 ~CSoftwareComponent ()=default

Member Typedef Documentation

◆ CNvmBlockAssertions

◆ CNvmBlockCanConfigurationParameters [1/2]

◆ CNvmBlockCanConfigurationParameters [2/2]

◆ CNvmBlockEulerAnglesDeviceToVehicle [1/2]

◆ CNvmBlockEulerAnglesDeviceToVehicle [2/2]

◆ CNvmBlockMagnetometerCalibrationParameters

◆ CNvmBlockMagnetometerCalibrationParameters1

◆ CNvmBlockMagnetometerCalibrationParameters2

◆ CNvmBlockMagnetometerCalibrationParameters3

◆ CNvmBlockNmvFormatVersion [1/2]

◆ CNvmBlockNmvFormatVersion [2/2]

◆ CNvmBlockPressureCompensationParameters [1/2]

◆ CNvmBlockPressureCompensationParameters [2/2]

Constructor & Destructor Documentation

◆ CNvmDriver() [1/6]

CNvmDriver::CNvmDriver ( CNvmDriver & )
privatedelete

◆ CNvmDriver() [2/6]

CNvmDriver::CNvmDriver ( CNvmDriver && )
privatedelete

◆ CNvmDriver() [3/6]

CNvmDriver::CNvmDriver ( )
privatedefault

◆ ~CNvmDriver() [1/2]

CNvmDriver::~CNvmDriver ( )
privatedefault

◆ CNvmDriver() [4/6]

CNvmDriver::CNvmDriver ( CNvmDriver & )
privatedelete

◆ CNvmDriver() [5/6]

CNvmDriver::CNvmDriver ( CNvmDriver && )
privatedelete

◆ CNvmDriver() [6/6]

CNvmDriver::CNvmDriver ( )
privatedefault

◆ ~CNvmDriver() [2/2]

CNvmDriver::~CNvmDriver ( )
privatedefault

Member Function Documentation

◆ getInstanceImpl() [1/2]

CNvmDriver & CNvmDriver::getInstanceImpl ( unsigned uInstanceIndex)
staticprivate

◆ getInstanceImpl() [2/2]

CNvmDriver & CNvmDriver::getInstanceImpl ( unsigned uInstanceIndex)
staticprivate

◆ Init() [1/2]

void CNvmDriver::Init ( )
overridevirtual

Initialize the software component.

Implements CSoftwareComponent< CNvmDriver, 0U >.

◆ Init() [2/2]

void CNvmDriver::Init ( )
overridevirtual

Initialize the software component.

Implements CSoftwareComponent< CNvmDriver, 0U >.

◆ IsInitialized() [1/2]

bool CNvmDriver::IsInitialized ( )
overridevirtual

Get initialization status of the software component.

Returns
True – the component is initialized, false otherwise.

Implements CSoftwareComponent< CNvmDriver, 0U >.

◆ IsInitialized() [2/2]

bool CNvmDriver::IsInitialized ( )
overridevirtual

Get initialization status of the software component.

Returns
True – the component is initialized, false otherwise.

Implements CSoftwareComponent< CNvmDriver, 0U >.

◆ operator=() [1/4]

CNvmDriver & CNvmDriver::operator= ( CNvmDriver && orOther)
privatedelete

◆ operator=() [2/4]

CNvmDriver & CNvmDriver::operator= ( CNvmDriver && orOther)
privatedelete

◆ operator=() [3/4]

CNvmDriver & CNvmDriver::operator= ( const CNvmDriver & orOther)
privatedelete

◆ operator=() [4/4]

CNvmDriver & CNvmDriver::operator= ( const CNvmDriver & orOther)
privatedelete

◆ ReadBlock() [1/2]

template<typename tNvmBlock>
bool CNvmDriver::ReadBlock ( typename tNvmBlock::CDataType & orBlockData)
inlinestatic

◆ ReadBlock() [2/2]

template<typename tNvmBlock>
bool CNvmDriver::ReadBlock ( typename tNvmBlock::CDataType & orBlockData)
inlinestatic

◆ ReadPage() [1/2]

bool CNvmDriver::ReadPage ( uint16_t uPageNumber,
uint8_t * upPage )
inlinestatic

◆ ReadPage() [2/2]

bool CNvmDriver::ReadPage ( uint16_t uPageNumber,
uint8_t * upPage )
inlinestatic

◆ WriteBlock() [1/2]

template<typename tNvmBlock>
bool CNvmDriver::WriteBlock ( const typename tNvmBlock::CDataType & korBlockData)
inlinestatic

◆ WriteBlock() [2/2]

template<typename tNvmBlock>
bool CNvmDriver::WriteBlock ( const typename tNvmBlock::CDataType & korBlockData)
inlinestatic

◆ WritePage() [1/2]

bool CNvmDriver::WritePage ( uint16_t uPageNumber,
uint8_t * upPage )
inlinestatic

◆ WritePage() [2/2]

bool CNvmDriver::WritePage ( uint16_t uPageNumber,
uint8_t * upPage )
inlinestatic

◆ CSoftwareComponent< CNvmDriver, 0U >

friend class CSoftwareComponent< CNvmDriver, 0U >
friend

Member Data Documentation

◆ skuBlockOffsetAssertions

uint16_t CNvmDriver::skuBlockOffsetAssertions = skuBlockOffsetMagnetometerCalibrationParameters + sizeof(SMagnetometerCalibrationParameters)
staticconstexpr

◆ skuBlockOffsetCanConfigurationParameters

constexpr uint16_t CNvmDriver::skuBlockOffsetCanConfigurationParameters = skuBlockOffsetAssertions + sizeof(SAssertions)
staticconstexpr

◆ skuBlockOffsetEulerAnglesDeviceToVehicle

constexpr uint16_t CNvmDriver::skuBlockOffsetEulerAnglesDeviceToVehicle = skuBlockOffsetNmvFormatVersion + sizeof(SNmvFormatVersion)
staticconstexpr

◆ skuBlockOffsetMagnetometerCalibrationParameters

uint16_t CNvmDriver::skuBlockOffsetMagnetometerCalibrationParameters = skuBlockOffsetEulerAnglesDeviceToVehicle + sizeof(SEulerAnglesDeviceToVehicle)
staticconstexpr

◆ skuBlockOffsetMagnetometerCalibrationParameters1

uint16_t CNvmDriver::skuBlockOffsetMagnetometerCalibrationParameters1 = skuBlockOffsetEulerAnglesDeviceToVehicle + sizeof(SEulerAnglesDeviceToVehicle)
staticconstexpr

◆ skuBlockOffsetMagnetometerCalibrationParameters2

uint16_t CNvmDriver::skuBlockOffsetMagnetometerCalibrationParameters2 = skuBlockOffsetMagnetometerCalibrationParameters1 + sizeof(SMagnetometerCalibrationParameters1)
staticconstexpr

◆ skuBlockOffsetMagnetometerCalibrationParameters3

uint16_t CNvmDriver::skuBlockOffsetMagnetometerCalibrationParameters3 = skuBlockOffsetMagnetometerCalibrationParameters2 + sizeof(SMagnetometerCalibrationParameters2)
staticconstexpr

◆ skuBlockOffsetNmvFormatVersion

constexpr uint16_t CNvmDriver::skuBlockOffsetNmvFormatVersion = 0U
staticconstexpr

◆ skuBlockOffsetPressureCompensationParameters

constexpr uint16_t CNvmDriver::skuBlockOffsetPressureCompensationParameters = skuBlockOffsetCanConfigurationParameters + sizeof(SCanConfigurationParameters)
staticconstexpr

◆ skuMemorySize_

constexpr uint16_t CNvmDriver::skuMemorySize_ { 8000U }
staticconstexpr

◆ skuPageSize_

constexpr uint8_t CNvmDriver::skuPageSize_ { 32U }
staticconstexpr

◆ skuVersionMajor_

constexpr uint16_t CNvmDriver::skuVersionMajor_ { 1U }
staticconstexpr

◆ skuVersionMinor_

constexpr uint16_t CNvmDriver::skuVersionMinor_ { 2U }
staticconstexpr

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