ADTF Device Toolbox SDK
Loading...
Searching...
No Matches
adtf::devicetb::sdk::flexray::axle::IFlexRayCoder Class Referenceabstract

#include <flexray_coder_intf.h>

Inheritance diagram for adtf::devicetb::sdk::flexray::axle::IFlexRayCoder:
[legend]
Collaboration diagram for adtf::devicetb::sdk::flexray::axle::IFlexRayCoder:
[legend]

Public Types

enum  tEnumPDU { ENUM_PDU_START = 0xffffffff }
 

Public Member Functions

 ADTF_IID (IFlexRayCoder, IID_DEVTB_FLEXRAYCODER)
 
virtual tResult GetDatabase (adtf::ucom::ant::iobject_ptr< IFlexRayDatabase > &pDataBase) const =0
 
virtual tResult ResetData ()=0
 
virtual tResult ResetModifiedFlag ()=0
 
virtual tResult ReceiveData (const void *pData, int nDataSize, tTimeStamp nTimeStamp)=0
 
virtual tResult TransmitData (void *pData, int *pnDataSize, tTimeStamp tmHWTime=0)=0
 
virtual tResult EnumPDUs (tPDUID *pPDUID, tChannelID *pnChannel, tECUID *pnECUID, tTimeStamp *ptmTimeStamp, bool bSkipUnmodified=false) const =0
 
virtual tResult GetPDUStatus (tPDUID nPDUID, tChannelID *pnChannel, tTimeStamp *ptmTimeStamp, bool *pbModified) const =0
 
virtual tResult GetSignalValue (tSignalID nSignalID, tSignalValue *pValue) const =0
 
virtual tResult SetSignalValue (tSignalID nSignalID, const tSignalValue *pValue)=0
 

Detailed Description

Interface of FlexRay coder Objects of this type stores an internal buffer of FlexRay frames. REMARK: The update bit behavior of the coder is defined by the property of the FlexRay support service -> updatebit_behavior. See the Usermanual chapter flexray for more information.

Member Enumeration Documentation

◆ tEnumPDU

Enumerator
ENUM_PDU_START 

Used in the EnumPDUs() method as start value.

Member Function Documentation

◆ EnumPDUs()

virtual tResult adtf::devicetb::sdk::flexray::axle::IFlexRayCoder::EnumPDUs ( tPDUID * pPDUID,
tChannelID * pnChannel,
tECUID * pnECUID,
tTimeStamp * ptmTimeStamp,
bool bSkipUnmodified = false ) const
pure virtual

Enumerates PDUs in internal buffer

Parameters
pPDUID[inout] ENUM_PDU_START : Start enumeration.
Else : ID of previous enumerated PDU
pnChannel[out] Channel of last reception
pnECUID[out] ID of sending ECU
ptmTimeStamp[out] Timestamp of last reception
bSkipUnmodified[in] If true, only modified PDUs will be enumerated
Returns
Standard Result Code

◆ GetDatabase()

virtual tResult adtf::devicetb::sdk::flexray::axle::IFlexRayCoder::GetDatabase ( adtf::ucom::ant::iobject_ptr< IFlexRayDatabase > & pDataBase) const
pure virtual

Returns a reference to the FIBEX database

Returns
Standard Result Code

◆ GetPDUStatus()

virtual tResult adtf::devicetb::sdk::flexray::axle::IFlexRayCoder::GetPDUStatus ( tPDUID nPDUID,
tChannelID * pnChannel,
tTimeStamp * ptmTimeStamp,
bool * pbModified ) const
pure virtual

Retrieves the status of a PDU

Parameters
nPDUID[in] ID of PDU
pnChannel[out] Channel of last reception
ptmTimeStamp[out] Timestamp of last reception
pbModified[out] True if PDU is in modified state
Returns
Standard Result Code

◆ GetSignalValue()

virtual tResult adtf::devicetb::sdk::flexray::axle::IFlexRayCoder::GetSignalValue ( tSignalID nSignalID,
tSignalValue * pValue ) const
pure virtual

Retrieves the value of a signal

Parameters
nSignalID[in] Signal ID
pValue[out] Value of signal
Returns
Standard Result Code

◆ ReceiveData()

virtual tResult adtf::devicetb::sdk::flexray::axle::IFlexRayCoder::ReceiveData ( const void * pData,
int nDataSize,
tTimeStamp nTimeStamp )
pure virtual

Transfers data to the internal PDU buffer

Parameters
pData[in] Pointer to data
nDataSize[in] Size of data
nTimeStamp[in] Timestamp of data
Returns
Standard Result Code

◆ ResetData()

virtual tResult adtf::devicetb::sdk::flexray::axle::IFlexRayCoder::ResetData ( )
pure virtual

Clears internal PDU buffer

Returns
Standard Result Code

◆ ResetModifiedFlag()

virtual tResult adtf::devicetb::sdk::flexray::axle::IFlexRayCoder::ResetModifiedFlag ( )
pure virtual

Resets the modified flag for all PDUs in the internal PDU buffer.

Returns
Standard Result Code

◆ SetSignalValue()

virtual tResult adtf::devicetb::sdk::flexray::axle::IFlexRayCoder::SetSignalValue ( tSignalID nSignalID,
const tSignalValue * pValue )
pure virtual

Sets the value of a signal. To set the rawvalue directly, the field tSignalValue::nf64Value has to be set to std::numeric_limits<double>::quiet_NaN() and the field tSignalValue::nRawValue to the new raw value.

Parameters
nSignalID[in] ID of signal
pValue[out] Value of signal
Returns
Standard Result Code

◆ TransmitData()

virtual tResult adtf::devicetb::sdk::flexray::axle::IFlexRayCoder::TransmitData ( void * pData,
int * pnDataSize,
tTimeStamp tmHWTime = 0 )
pure virtual

Transmit all modified PDUs from the internal PDU buffer to the data block

Parameters
pData[inout] Pointer to data, set to NULL for calculation of datasize
pnDataSize[inout] Size of data
tmHWTime[in] The hardware timestamp to use.
Returns
Standard Result Code

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