OpenCSD - CoreSight Trace Decode Library  1.3.3
Public Member Functions | List of all members
DecoderMngrBase< P, Pt, Pc > Class Template Referenceabstract

#include <ocsd_dcd_mngr.h>

Inheritance diagram for DecoderMngrBase< P, Pt, Pc >:
Inheritance graph
[legend]
Collaboration diagram for DecoderMngrBase< P, Pt, Pc >:
Collaboration graph
[legend]

Public Member Functions

 DecoderMngrBase (const std::string &decoderTypeName, ocsd_trace_protocol_t builtInProtocol)
 
virtual ~DecoderMngrBase ()
 
virtual ocsd_err_t createDecoder (const int create_flags, const int instID, const CSConfig *p_config, TraceComponent **p_component)
 
virtual ocsd_err_t destroyDecoder (TraceComponent *p_component)
 
virtual const ocsd_trace_protocol_t getProtocolType () const
 Get the built in protocol type ID managed by this instance - extern for custom decoders. More...
 
virtual ocsd_err_t attachErrorLogger (TraceComponent *pComponent, ITraceErrorLog *pIErrorLog)
 attach error logger to ptk-processor, or both of pkt processor and pkt decoder pair More...
 
virtual ocsd_err_t attachInstrDecoder (TraceComponent *pComponent, IInstrDecode *pIInstrDec)
 attach instruction decoder to pkt decoder More...
 
virtual ocsd_err_t attachMemAccessor (TraceComponent *pComponent, ITargetMemAccess *pMemAccessor)
 attach memory accessor to pkt decoder More...
 
virtual ocsd_err_t attachOutputSink (TraceComponent *pComponent, ITrcGenElemIn *pOutSink)
 attach generic output interface to pkt decoder More...
 
virtual ocsd_err_t attachPktMonitor (TraceComponent *pComponent, ITrcTypedBase *pPktRawDataMon)
 attach a raw packet monitor to pkt processor (solo pkt processor, or pkt processor part of pair) More...
 
virtual ocsd_err_t attachPktIndexer (TraceComponent *pComponent, ITrcTypedBase *pPktIndexer)
 attach a packet indexer to pkt processor (solo pkt processor, or pkt processor part of pair) More...
 
virtual ocsd_err_t attachPktSink (TraceComponent *pComponent, ITrcTypedBase *pPktDataInSink)
 attach a packet data sink to pkt processor output (solo pkt processor only - instead of decoder when pkt processor only created.) More...
 
virtual ocsd_err_t getDataInputI (TraceComponent *pComponent, ITrcDataIn **ppDataIn)
 get raw data input interface from packet processor More...
 
virtual ocsd_err_t createConfigFromDataStruct (CSConfig **pConfigBase, const void *pDataStruct)
 
virtual TraceComponentcreatePktProc (const bool useInstID, const int instID)=0
 
virtual TraceComponentcreatePktDecode (const bool useInstID, const int instID)
 
virtual CSConfigcreateConfig (const void *pDataStruct)=0
 
- Public Member Functions inherited from IDecoderMngr
 IDecoderMngr ()
 
virtual ~IDecoderMngr ()
 

Detailed Description

template<class P, class Pt, class Pc>
class DecoderMngrBase< P, Pt, Pc >

Definition at line 45 of file ocsd_dcd_mngr.h.

Constructor & Destructor Documentation

◆ DecoderMngrBase()

template<class P , class Pt , class Pc >
DecoderMngrBase< P, Pt, Pc >::DecoderMngrBase ( const std::string &  decoderTypeName,
ocsd_trace_protocol_t  builtInProtocol 
)

Definition at line 87 of file ocsd_dcd_mngr.h.

Here is the call graph for this function:

◆ ~DecoderMngrBase()

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

Definition at line 49 of file ocsd_dcd_mngr.h.

Member Function Documentation

◆ attachErrorLogger()

template<class P , class Pt , class Pc >
ocsd_err_t DecoderMngrBase< P, Pt, Pc >::attachErrorLogger ( TraceComponent pComponent,
ITraceErrorLog pIErrorLog 
)
virtual

attach error logger to ptk-processor, or both of pkt processor and pkt decoder pair

Implements IDecoderMngr.

Definition at line 173 of file ocsd_dcd_mngr.h.

Here is the call graph for this function:

◆ attachInstrDecoder()

template<class P , class Pt , class Pc >
ocsd_err_t DecoderMngrBase< P, Pt, Pc >::attachInstrDecoder ( TraceComponent pComponent,
IInstrDecode pIInstrDec 
)
virtual

attach instruction decoder to pkt decoder

Implements IDecoderMngr.

Definition at line 179 of file ocsd_dcd_mngr.h.

Here is the call graph for this function:

◆ attachMemAccessor()

template<class P , class Pt , class Pc >
ocsd_err_t DecoderMngrBase< P, Pt, Pc >::attachMemAccessor ( TraceComponent pComponent,
ITargetMemAccess pMemAccessor 
)
virtual

attach memory accessor to pkt decoder

Implements IDecoderMngr.

Definition at line 197 of file ocsd_dcd_mngr.h.

Here is the call graph for this function:

◆ attachOutputSink()

template<class P , class Pt , class Pc >
ocsd_err_t DecoderMngrBase< P, Pt, Pc >::attachOutputSink ( TraceComponent pComponent,
ITrcGenElemIn pOutSink 
)
virtual

attach generic output interface to pkt decoder

Implements IDecoderMngr.

Definition at line 215 of file ocsd_dcd_mngr.h.

Here is the call graph for this function:

◆ attachPktIndexer()

template<class P , class Pt , class Pc >
ocsd_err_t DecoderMngrBase< P, Pt, Pc >::attachPktIndexer ( TraceComponent pComponent,
ITrcTypedBase pPktIndexer 
)
virtual

attach a packet indexer to pkt processor (solo pkt processor, or pkt processor part of pair)

Implements IDecoderMngr.

Definition at line 270 of file ocsd_dcd_mngr.h.

Here is the call graph for this function:

◆ attachPktMonitor()

template<class P , class Pt , class Pc >
ocsd_err_t DecoderMngrBase< P, Pt, Pc >::attachPktMonitor ( TraceComponent pComponent,
ITrcTypedBase pPktRawDataMon 
)
virtual

attach a raw packet monitor to pkt processor (solo pkt processor, or pkt processor part of pair)

Implements IDecoderMngr.

Definition at line 249 of file ocsd_dcd_mngr.h.

Here is the call graph for this function:

◆ attachPktSink()

template<class P , class Pt , class Pc >
ocsd_err_t DecoderMngrBase< P, Pt, Pc >::attachPktSink ( TraceComponent pComponent,
ITrcTypedBase pPktDataInSink 
)
virtual

attach a packet data sink to pkt processor output (solo pkt processor only - instead of decoder when pkt processor only created.)

Implements IDecoderMngr.

Definition at line 291 of file ocsd_dcd_mngr.h.

Here is the call graph for this function:

◆ createConfig()

template<class P , class Pt , class Pc >
virtual CSConfig* DecoderMngrBase< P, Pt, Pc >::createConfig ( const void *  pDataStruct)
pure virtual

◆ createConfigFromDataStruct()

template<class P , class Pt , class Pc >
ocsd_err_t DecoderMngrBase< P, Pt, Pc >::createConfigFromDataStruct ( CSConfig **  pConfigBase,
const void *  pDataStruct 
)
virtual

Implements IDecoderMngr.

Definition at line 312 of file ocsd_dcd_mngr.h.

◆ createDecoder()

template<class P , class Pt , class Pc >
ocsd_err_t DecoderMngrBase< P, Pt, Pc >::createDecoder ( const int  create_flags,
const int  instID,
const CSConfig p_config,
TraceComponent **  p_component 
)
virtual

Implements IDecoderMngr.

Definition at line 96 of file ocsd_dcd_mngr.h.

Here is the call graph for this function:

◆ createPktDecode()

template<class P , class Pt , class Pc >
virtual TraceComponent* DecoderMngrBase< P, Pt, Pc >::createPktDecode ( const bool  useInstID,
const int  instID 
)
inlinevirtual

◆ createPktProc()

template<class P , class Pt , class Pc >
virtual TraceComponent* DecoderMngrBase< P, Pt, Pc >::createPktProc ( const bool  useInstID,
const int  instID 
)
pure virtual

◆ destroyDecoder()

template<class P , class Pt , class Pc >
ocsd_err_t DecoderMngrBase< P, Pt, Pc >::destroyDecoder ( TraceComponent p_component)
virtual

Implements IDecoderMngr.

Definition at line 164 of file ocsd_dcd_mngr.h.

Here is the call graph for this function:

◆ getDataInputI()

template<class P , class Pt , class Pc >
ocsd_err_t DecoderMngrBase< P, Pt, Pc >::getDataInputI ( TraceComponent pComponent,
ITrcDataIn **  ppDataIn 
)
virtual

get raw data input interface from packet processor

Implements IDecoderMngr.

Definition at line 232 of file ocsd_dcd_mngr.h.

Here is the call graph for this function:

◆ getProtocolType()

template<class P , class Pt , class Pc >
virtual const ocsd_trace_protocol_t DecoderMngrBase< P, Pt, Pc >::getProtocolType ( ) const
inlinevirtual

Get the built in protocol type ID managed by this instance - extern for custom decoders.

Implements IDecoderMngr.

Definition at line 55 of file ocsd_dcd_mngr.h.


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