OpenCSD - CoreSight Trace Decode Library  0.5
Classes | Macros | Functions
OpenCSD Library : Packet Processors.

Classes providing Protocol Packet Processing capability. More...

Classes

class  TrcPktProcEtmV3
 
class  TrcPktProcEtmV4I
 
class  TrcPktProcEtmV4D
 
class  TrcPktProcPtm
 
class  TrcPktProcStm
 
class  TrcPktProcI
 Base Packet processing interface. More...
 
class  TrcPktProcBase< P, Pt, Pc >
 Packet Processor base class. Provides common infrastructure and interconnections for packet processors. More...
 

Macros

#define ETMV3_OPFLG_UNFORMATTED_SOURCE   0x00010000
 

Functions

const bool TrcPktProcPtm::isSync () const
 
void TrcPktProcPtm::throwMalformedPacketErr (const char *pszErrMsg)
 
void TrcPktProcPtm::throwPacketHeaderErr (const char *pszErrMsg)
 
const bool TrcPktProcPtm::readByte ()
 
 TrcPktProcI::TrcPktProcI (const char *component_name)
 
 TrcPktProcI::TrcPktProcI (const char *component_name, int instIDNum)
 
 TrcPktProcBase< P, Pt, Pc >::TrcPktProcBase (const char *component_name)
 
 TrcPktProcBase< P, Pt, Pc >::TrcPktProcBase (const char *component_name, int instIDNum)
 
virtual TrcPktProcBase< P, Pt, Pc >::~TrcPktProcBase ()
 
virtual ocsd_datapath_resp_t TrcPktProcBase< P, Pt, Pc >::TraceDataIn (const ocsd_datapath_op_t op, const ocsd_trc_index_t index, const uint32_t dataBlockSize, const uint8_t *pDataBlock, uint32_t *numBytesProcessed)
 
ocsd_datapath_resp_t TrcPktProcBase< P, Pt, Pc >::outputDecodedPacket (const ocsd_trc_index_t index_sop, const P *pkt)
 
void TrcPktProcBase< P, Pt, Pc >::outputRawPacketToMonitor (const ocsd_trc_index_t index_sop, const P *pkt, const uint32_t size, const uint8_t *p_data)
 
const bool TrcPktProcBase< P, Pt, Pc >::hasRawMon () const
 
void TrcPktProcBase< P, Pt, Pc >::indexPacket (const ocsd_trc_index_t index_sop, const Pt *packet_type)
 
ocsd_datapath_resp_t TrcPktProcBase< P, Pt, Pc >::outputOnAllInterfaces (const ocsd_trc_index_t index_sop, const P *pkt, const Pt *pkt_type, std::vector< uint8_t > &pktdata)
 
ocsd_datapath_resp_t TrcPktProcBase< P, Pt, Pc >::outputOnAllInterfaces (const ocsd_trc_index_t index_sop, const P *pkt, const Pt *pkt_type, const uint8_t *pktdata, uint32_t pktlen)
 
virtual ocsd_err_t TrcPktProcBase< P, Pt, Pc >::setProtocolConfig (const Pc *config)
 < Set the protocol specific configuration for the decoder. More...
 
void TrcPktProcBase< P, Pt, Pc >::ClearConfigObj ()
 
const bool TrcPktProcBase< P, Pt, Pc >::checkInit ()
 

Detailed Description

Classes providing Protocol Packet Processing capability.

Packet processors take an incoming byte stream and convert into discrete packets for the required trace protocol.

Macro Definition Documentation

◆ ETMV3_OPFLG_UNFORMATTED_SOURCE

#define ETMV3_OPFLG_UNFORMATTED_SOURCE   0x00010000

Single ETM source from bypassed formatter - need to check for EOT markers

Definition at line 75 of file trc_pkt_proc_etmv3.h.

Function Documentation

◆ checkInit()

template<class P , class Pt , class Pc >
const bool TrcPktProcBase< P, Pt, Pc >::checkInit ( )
protected

Definition at line 396 of file trc_pkt_proc_base.h.

◆ ClearConfigObj()

template<class P , class Pt , class Pc >
void TrcPktProcBase< P, Pt, Pc >::ClearConfigObj ( )
protected

Definition at line 387 of file trc_pkt_proc_base.h.

Here is the caller graph for this function:

◆ hasRawMon()

template<class P , class Pt , class Pc >
const bool TrcPktProcBase< P, Pt, Pc >::hasRawMon ( ) const
protected

Let the derived class figure out if it needs to collate and send raw data. can improve wait for sync performance if we do not need to save and send unsynced data.

Definition at line 345 of file trc_pkt_proc_base.h.

◆ indexPacket()

template<class P , class Pt, class Pc >
void TrcPktProcBase< P, Pt, Pc >::indexPacket ( const ocsd_trc_index_t  index_sop,
const Pt *  packet_type 
)
protected

Definition at line 350 of file trc_pkt_proc_base.h.

Here is the caller graph for this function:

◆ isSync()

const bool TrcPktProcPtm::isSync ( ) const
inlineprotected

Definition at line 189 of file trc_pkt_proc_ptm.h.

Here is the call graph for this function:

◆ outputDecodedPacket()

template<class P, class Pt , class Pc >
ocsd_datapath_resp_t TrcPktProcBase< P, Pt, Pc >::outputDecodedPacket ( const ocsd_trc_index_t  index_sop,
const P *  pkt 
)
protected

Definition at line 312 of file trc_pkt_proc_base.h.

Here is the caller graph for this function:

◆ outputOnAllInterfaces() [1/2]

template<class P, class Pt, class Pc >
ocsd_datapath_resp_t TrcPktProcBase< P, Pt, Pc >::outputOnAllInterfaces ( const ocsd_trc_index_t  index_sop,
const P *  pkt,
const Pt *  pkt_type,
std::vector< uint8_t > &  pktdata 
)
protected

Definition at line 357 of file trc_pkt_proc_base.h.

◆ outputOnAllInterfaces() [2/2]

template<class P, class Pt, class Pc >
ocsd_datapath_resp_t TrcPktProcBase< P, Pt, Pc >::outputOnAllInterfaces ( const ocsd_trc_index_t  index_sop,
const P *  pkt,
const Pt *  pkt_type,
const uint8_t *  pktdata,
uint32_t  pktlen 
)
protected

Definition at line 365 of file trc_pkt_proc_base.h.

◆ outputRawPacketToMonitor()

template<class P, class Pt , class Pc >
void TrcPktProcBase< P, Pt, Pc >::outputRawPacketToMonitor ( const ocsd_trc_index_t  index_sop,
const P *  pkt,
const uint32_t  size,
const uint8_t *  p_data 
)
protected

Definition at line 326 of file trc_pkt_proc_base.h.

Here is the caller graph for this function:

◆ readByte()

const bool TrcPktProcPtm::readByte ( )
inlineprotected

Definition at line 205 of file trc_pkt_proc_ptm.h.

◆ setProtocolConfig()

template<class P , class Pt , class Pc>
ocsd_err_t TrcPktProcBase< P, Pt, Pc >::setProtocolConfig ( const Pc *  config)
virtual

< Set the protocol specific configuration for the decoder.

Get the configuration for the decoder.

Definition at line 372 of file trc_pkt_proc_base.h.

Here is the caller graph for this function:

◆ throwMalformedPacketErr()

void TrcPktProcPtm::throwMalformedPacketErr ( const char *  pszErrMsg)
inlineprotected

Definition at line 194 of file trc_pkt_proc_ptm.h.

Here is the call graph for this function:

◆ throwPacketHeaderErr()

void TrcPktProcPtm::throwPacketHeaderErr ( const char *  pszErrMsg)
inlineprotected

Definition at line 200 of file trc_pkt_proc_ptm.h.

◆ TraceDataIn()

template<class P , class Pt , class Pc >
ocsd_datapath_resp_t TrcPktProcBase< P, Pt, Pc >::TraceDataIn ( const ocsd_datapath_op_t  op,
const ocsd_trc_index_t  index,
const uint32_t  dataBlockSize,
const uint8_t *  pDataBlock,
uint32_t *  numBytesProcessed 
)
virtual

Byte trace data input interface defined in ITrcDataIn

The base class implementation processes the operation to call the interface functions on TrcPktProcI.

Implements TrcPktProcI.

Definition at line 219 of file trc_pkt_proc_base.h.

◆ TrcPktProcBase() [1/2]

template<class P , class Pt , class Pc >
TrcPktProcBase< P, Pt, Pc >::TrcPktProcBase ( const char *  component_name)

Definition at line 200 of file trc_pkt_proc_base.h.

◆ TrcPktProcBase() [2/2]

template<class P , class Pt , class Pc >
TrcPktProcBase< P, Pt, Pc >::TrcPktProcBase ( const char *  component_name,
int  instIDNum 
)

Definition at line 207 of file trc_pkt_proc_base.h.

◆ TrcPktProcI() [1/2]

TrcPktProcI::TrcPktProcI ( const char *  component_name)
inline

Definition at line 96 of file trc_pkt_proc_base.h.

◆ TrcPktProcI() [2/2]

TrcPktProcI::TrcPktProcI ( const char *  component_name,
int  instIDNum 
)
inline

Definition at line 101 of file trc_pkt_proc_base.h.

◆ ~TrcPktProcBase()

template<class P , class Pt , class Pc >
TrcPktProcBase< P, Pt, Pc >::~TrcPktProcBase ( )
virtual

Definition at line 214 of file trc_pkt_proc_base.h.