|
ngscopeclient v0.2
|
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. | |
Base class for AcceleratorBuffer storing common metadata used by all derived types.
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 >.
|
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 >.