ngscopeclient v0.2
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Attributes | Static Protected Attributes | List of all members
AcceleratorBufferBase Class Referenceabstract

Base class for AcceleratorBuffer storing common metadata used by all derived types. More...

#include <AcceleratorBuffer.h>

Inherited by AcceleratorBuffer< ADL5205Symbol >, AcceleratorBuffer< APBSymbol >, AcceleratorBuffer< char >, AcceleratorBuffer< CANSymbol >, AcceleratorBuffer< Clause73CodePage >, AcceleratorBuffer< DPAuxSymbol >, AcceleratorBuffer< DPMainLinkDataSymbol >, AcceleratorBuffer< DPhyDataSymbol >, AcceleratorBuffer< DPhyEscapeModeSymbol >, AcceleratorBuffer< DPhySymbol >, AcceleratorBuffer< DSIFrameSymbol >, AcceleratorBuffer< DSISymbol >, AcceleratorBuffer< DVISymbol >, AcceleratorBuffer< ESPISymbol >, AcceleratorBuffer< Ethernet100BaseT1LinkTrainingSymbol >, AcceleratorBuffer< Ethernet64b66bSymbol >, AcceleratorBuffer< EthernetAutonegotiationPageSample >, AcceleratorBuffer< uint16_t >, AcceleratorBuffer< EthernetBaseXAutonegotiationSample >, AcceleratorBuffer< EthernetFrameSegment >, AcceleratorBuffer< HyperRAMSymbol >, AcceleratorBuffer< I2CEepromSymbol >, AcceleratorBuffer< I2CRegisterSymbol >, AcceleratorBuffer< I2CSymbol >, AcceleratorBuffer< IBM8b10bSymbol >, AcceleratorBuffer< IPv4Symbol >, AcceleratorBuffer< J1939PDUSymbol >, AcceleratorBuffer< JtagSymbol >, AcceleratorBuffer< MDIOSymbol >, AcceleratorBuffer< MilStd1553Symbol >, AcceleratorBuffer< OneWireSymbol >, AcceleratorBuffer< PCIe128b130bSymbol >, AcceleratorBuffer< PCIeDataLinkSymbol >, AcceleratorBuffer< PCIeLTSSMSymbol >, AcceleratorBuffer< PCIeLinkTrainingSymbol >, AcceleratorBuffer< PCIeLogicalSymbol >, AcceleratorBuffer< PCIeTransportSymbol >, AcceleratorBuffer< RGBLEDSymbol >, AcceleratorBuffer< SDCmdSymbol >, AcceleratorBuffer< SDDataSymbol >, AcceleratorBuffer< SDRAMSymbol >, AcceleratorBuffer< SPIFlashSymbol >, AcceleratorBuffer< SPISymbol >, AcceleratorBuffer< SWDMemAPSymbol >, AcceleratorBuffer< SWDSymbol >, AcceleratorBuffer< uint32_t >, AcceleratorBuffer< TCPSymbol >, AcceleratorBuffer< TMDSSymbol >, AcceleratorBuffer< USB2PCSSymbol >, AcceleratorBuffer< USB2PMASymbol >, AcceleratorBuffer< USB2PacketSymbol >, AcceleratorBuffer< uint64_t >, AcceleratorBuffer< VICPSymbol >, AcceleratorBuffer< float >, AcceleratorBuffer< int64_t >, AcceleratorBuffer< int8_t >, AcceleratorBuffer< uint8_t >, AcceleratorBuffer< SParameterPoint >, AcceleratorBuffer< S >, and AcceleratorBuffer< T >.

Public Member Functions

 AcceleratorBufferBase (const std::string &name="")
 
size_t size () const
 Returns the actual size of the container (may be smaller than what was allocated)
 
size_t capacity () const
 Returns the allocated size of the container.
 
const std::string & GetName () const
 Returns the debug name of the buffer, if any.
 
virtual std::string GetType () const =0
 Gets the underlying C++ object type.
 
virtual size_t GetElementSize () const =0
 Gets the size of each entry in the container.
 

Static Public Member Functions

static std::recursive_mutex & GetMutex ()
 Get the mutex for m_objectList.
 
static const std::set< AcceleratorBufferBase * > & GetObjects ()
 Get the set of all objects. You must hold a lock on m_objectListMutex while working with it.
 

Public Attributes

size_t m_capacity
 Size of the allocated memory space (may be larger than m_size)
 
size_t m_size
 Size of the memory actually being used.
 

Protected Attributes

std::string m_name
 Friendly name of the buffer (for debug tools)
 

Static Protected Attributes

static std::recursive_mutex m_objectListMutex
 Mutex controlling access to m_objectList.
 
static std::set< AcceleratorBufferBase * > m_objectList
 Set of all existing AcceleratorBufferBase objects.
 

Detailed Description

Base class for AcceleratorBuffer storing common metadata used by all derived types.

Member Function Documentation

◆ GetElementSize()

virtual size_t AcceleratorBufferBase::GetElementSize ( ) const
pure virtual

Gets the size of each entry in the container.

Implemented in AcceleratorBuffer< T >, AcceleratorBuffer< ADL5205Symbol >, AcceleratorBuffer< APBSymbol >, AcceleratorBuffer< CANSymbol >, AcceleratorBuffer< char >, AcceleratorBuffer< Clause73CodePage >, AcceleratorBuffer< DPAuxSymbol >, AcceleratorBuffer< DPhyDataSymbol >, AcceleratorBuffer< DPhyEscapeModeSymbol >, AcceleratorBuffer< DPhySymbol >, AcceleratorBuffer< DPMainLinkDataSymbol >, AcceleratorBuffer< DSIFrameSymbol >, AcceleratorBuffer< DSISymbol >, AcceleratorBuffer< DVISymbol >, AcceleratorBuffer< ESPISymbol >, AcceleratorBuffer< Ethernet100BaseT1LinkTrainingSymbol >, AcceleratorBuffer< Ethernet64b66bSymbol >, AcceleratorBuffer< EthernetAutonegotiationPageSample >, AcceleratorBuffer< EthernetBaseXAutonegotiationSample >, AcceleratorBuffer< EthernetFrameSegment >, AcceleratorBuffer< float >, AcceleratorBuffer< HyperRAMSymbol >, AcceleratorBuffer< I2CEepromSymbol >, AcceleratorBuffer< I2CRegisterSymbol >, AcceleratorBuffer< I2CSymbol >, AcceleratorBuffer< IBM8b10bSymbol >, AcceleratorBuffer< int64_t >, AcceleratorBuffer< int8_t >, AcceleratorBuffer< IPv4Symbol >, AcceleratorBuffer< J1939PDUSymbol >, AcceleratorBuffer< JtagSymbol >, AcceleratorBuffer< MDIOSymbol >, AcceleratorBuffer< MilStd1553Symbol >, AcceleratorBuffer< OneWireSymbol >, AcceleratorBuffer< PCIe128b130bSymbol >, AcceleratorBuffer< PCIeDataLinkSymbol >, AcceleratorBuffer< PCIeLinkTrainingSymbol >, AcceleratorBuffer< PCIeLogicalSymbol >, AcceleratorBuffer< PCIeLTSSMSymbol >, AcceleratorBuffer< PCIeTransportSymbol >, AcceleratorBuffer< RGBLEDSymbol >, AcceleratorBuffer< S >, AcceleratorBuffer< SDCmdSymbol >, AcceleratorBuffer< SDDataSymbol >, AcceleratorBuffer< SDRAMSymbol >, AcceleratorBuffer< SParameterPoint >, AcceleratorBuffer< SPIFlashSymbol >, AcceleratorBuffer< SPISymbol >, AcceleratorBuffer< SWDMemAPSymbol >, AcceleratorBuffer< SWDSymbol >, AcceleratorBuffer< TCPSymbol >, AcceleratorBuffer< TMDSSymbol >, AcceleratorBuffer< uint16_t >, AcceleratorBuffer< uint32_t >, AcceleratorBuffer< uint64_t >, AcceleratorBuffer< uint8_t >, AcceleratorBuffer< USB2PacketSymbol >, AcceleratorBuffer< USB2PCSSymbol >, AcceleratorBuffer< USB2PMASymbol >, and AcceleratorBuffer< VICPSymbol >.

◆ GetType()

virtual std::string AcceleratorBufferBase::GetType ( ) const
pure virtual

Gets the underlying C++ object type.

Implemented in AcceleratorBuffer< T >, AcceleratorBuffer< ADL5205Symbol >, AcceleratorBuffer< APBSymbol >, AcceleratorBuffer< CANSymbol >, AcceleratorBuffer< char >, AcceleratorBuffer< Clause73CodePage >, AcceleratorBuffer< DPAuxSymbol >, AcceleratorBuffer< DPhyDataSymbol >, AcceleratorBuffer< DPhyEscapeModeSymbol >, AcceleratorBuffer< DPhySymbol >, AcceleratorBuffer< DPMainLinkDataSymbol >, AcceleratorBuffer< DSIFrameSymbol >, AcceleratorBuffer< DSISymbol >, AcceleratorBuffer< DVISymbol >, AcceleratorBuffer< ESPISymbol >, AcceleratorBuffer< Ethernet100BaseT1LinkTrainingSymbol >, AcceleratorBuffer< Ethernet64b66bSymbol >, AcceleratorBuffer< EthernetAutonegotiationPageSample >, AcceleratorBuffer< EthernetBaseXAutonegotiationSample >, AcceleratorBuffer< EthernetFrameSegment >, AcceleratorBuffer< float >, AcceleratorBuffer< HyperRAMSymbol >, AcceleratorBuffer< I2CEepromSymbol >, AcceleratorBuffer< I2CRegisterSymbol >, AcceleratorBuffer< I2CSymbol >, AcceleratorBuffer< IBM8b10bSymbol >, AcceleratorBuffer< int64_t >, AcceleratorBuffer< int8_t >, AcceleratorBuffer< IPv4Symbol >, AcceleratorBuffer< J1939PDUSymbol >, AcceleratorBuffer< JtagSymbol >, AcceleratorBuffer< MDIOSymbol >, AcceleratorBuffer< MilStd1553Symbol >, AcceleratorBuffer< OneWireSymbol >, AcceleratorBuffer< PCIe128b130bSymbol >, AcceleratorBuffer< PCIeDataLinkSymbol >, AcceleratorBuffer< PCIeLinkTrainingSymbol >, AcceleratorBuffer< PCIeLogicalSymbol >, AcceleratorBuffer< PCIeLTSSMSymbol >, AcceleratorBuffer< PCIeTransportSymbol >, AcceleratorBuffer< RGBLEDSymbol >, AcceleratorBuffer< S >, AcceleratorBuffer< SDCmdSymbol >, AcceleratorBuffer< SDDataSymbol >, AcceleratorBuffer< SDRAMSymbol >, AcceleratorBuffer< SParameterPoint >, AcceleratorBuffer< SPIFlashSymbol >, AcceleratorBuffer< SPISymbol >, AcceleratorBuffer< SWDMemAPSymbol >, AcceleratorBuffer< SWDSymbol >, AcceleratorBuffer< TCPSymbol >, AcceleratorBuffer< TMDSSymbol >, AcceleratorBuffer< uint16_t >, AcceleratorBuffer< uint32_t >, AcceleratorBuffer< uint64_t >, AcceleratorBuffer< uint8_t >, AcceleratorBuffer< USB2PacketSymbol >, AcceleratorBuffer< USB2PCSSymbol >, AcceleratorBuffer< USB2PMASymbol >, and AcceleratorBuffer< VICPSymbol >.


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