Device class diagram

This is the class diagram of device structure.

Note

You can zoom and move around the diagram using the mouse.

PublicClasses
DeviceHandle
+string media
+string name
+string addr
+string serial
+Serialize() : string
+ToString() : string
«abstract»
DeviceRegistryEntry
+enumerate(DeviceHandle hint) : DeviceHandle[]
+make(DeviceHandle handle) : SDRDevice
DeviceRegistry
+enumerate(DeviceHandle hint) : DeviceHandle[]
+makeDevice(DeviceHandle handle) : SDRDevice
+freeDevice(SDRDevice conn)
+moduleNames() : string[]
LMS7002M
-ISPI controlPort
+Device control functions()
«abstract»
SDRDevice
+Configure(...)
+GetDescriptor() : SDRDescriptor
+Init()
+Reset()
+GetGPSLock(...)
+EnableChannel(...)
+GetClockFreq(...) : double
+SetClockFreq(...)
+GetFrequency(...) : double
+SetFrequency(...)
+GetNCOFrequency(...) : double
+SetNCOFrequency(...)
+GetNCOOffset(...) : double
+GetNCOIndex(...) : int
+SetNCOIndex(...)
+GetSampleRate(...) : double
+SetSampleRate(...)
+GetGain(...)
+SetGain(...)
+GetLowPassFilter(...) : double
+SetLowPassFilter(...)
+GetAntenna(...) : uint8_t
+SetAntenna(...)
+GetTestSignal(...) : TestSignal
+SetTestSignal(...)
+GetDCOffsetMode(...) : bool
+SetDCOffsetMode(...)
+GetDCOffset(...) : complex64f_t
+SetDCOffset(...)
+GetIQBalance(...) : complex64f_t
+SetIQBalance(...)
+GetCGENLocked(...) : bool
+GetTemperature(...) : double
+GetSXLocked(...) : bool
+ReadRegister(...) : uint
+WriteRegister(...)
+LoadConfig(...)
+SaveConfig(...)
+GetParameter(...) : uint16_t
+SetParameter(...)
+Calibrate(...)
+ConfigureGFIR(...)
+GetGFIRCoefficients(...) : double[]
+SetGFIRCoefficients(...)
+SetGFIR(...)
+Synchronize(...)
+EnableCache(...)
+GetHardwareTimestamp(...) : uint64_t
+SetHardwareTimestamp(...)
+StreamSetup(...)
+StreamStart(...)
+StreamStop(...)
+StreamRx(...) : uint32_t
+StreamTx(...) : uint32_t
+StreamStatus(...)
+UploadTxWaveform(...)
+SPI(...)
+I2CWrite(...)
+I2CRead(...)
+GPIOWrite(...)
+GPIORead(...)
+GPIODirWrite(...)
+GPIODirRead(...)
+CustomParameterWrite(...)
+CustomParameterRead(...)
+SetMessageLogCallback(...)
+GetInternalChip(...)
+UploadMemory(...)
+MemoryWrite(...)
+MemoryRead(...)
+OEMTest(...)
+WriteSerialNumber(...)
DeviceFactoryFX3
+enumerate(DeviceHandle hint) : DeviceHandle[]
+make(DeviceHandle handle) : SDRDevice
DeviceFactoryFTDI
+enumerate(DeviceHandle hint) : DeviceHandle[]
+make(DeviceHandle handle) : SDRDevice
DeviceFactoryPCIe
+enumerate(DeviceHandle hint) : DeviceHandle[]
+make(DeviceHandle handle) : SDRDevice
«abstract»
USBEntry
+enumerate(DeviceHandle hint) : DeviceHandle[]
+make(DeviceHandle handle) : SDRDevice
LMS64C_LMS7002M_Over_USB
+SPI(...)
+ResetDevice(...) : int
LMS64C_FPGA_Over_USB
+SPI(...)
+GPIODirRead(...) : int
+GPIORead(...) : int
+GPIODirWrite(...) : int
+GPIOWrite(...) : int
+CustomParameterWrite(...) : int
+CustomParameterRead(...) : int
+ProgramWrite(...) : int
+MemoryWrite(...)
+MemoryRead(...)
USB_CSR_Pipe_Mini
#FT601 port
+Write(...) : int
+Read(...) : int
USB_CSR_Pipe_SDR
#FX3 port
+Write(...) : int
+Read(...) : int
«interface»
IUSB
+enumerateDevices()
+Connect(...) : bool
+IsConnected() : bool
+Disconnect()
+BulkTransfer(...) : int32_t
+ControlTransfer(...) : int32_t
+AllocateAsyncContext()
+BeginDataXfer(...) : int
+WaitForXfer(...) : bool
+FinishDataXfer(...) : int
+AbortXfer(...)
+FreeAsyncContext()
FT601
+enumerateDevices()
+Connect(...) : bool
+IsConnected() : bool
+Disconnect()
+BulkTransfer(...) : int32_t
+ControlTransfer(...) : int32_t
+AllocateAsyncContext()
+BeginDataXfer(...) : int
+WaitForXfer(...) : bool
+FinishDataXfer(...) : int
+AbortXfer(...)
+FreeAsyncContext()
FX3
+enumerateDevices()
+Connect(...) : bool
+IsConnected() : bool
+Disconnect()
+BulkTransfer(...) : int32_t
+ControlTransfer(...) : int32_t
+AllocateAsyncContext()
+BeginDataXfer(...) : int
+WaitForXfer(...) : bool
+FinishDataXfer(...) : int
+AbortXfer(...)
+FreeAsyncContext()
«abstract»
USB_CSR_Pipe
+Write(...) : int
+Read(...) : int
USBGeneric
+enumerateDevices()
+Connect(...) : bool
+IsConnected() : bool
+Disconnect()
+BulkTransfer(...) : int32_t
+ControlTransfer(...) : int32_t
+AllocateAsyncContext()
+BeginDataXfer(...) : int
+WaitForXfer(...) : bool
+FinishDataXfer(...) : int
+AbortXfer(...)
+FreeAsyncContext()
USBDMAEmulation
+Enable(bool)
+EnableContinuous(...)
+GetCounters() : State
+SubmitRequest(...)
+Wait()
+BufferOwnership(...)
+GetBuffers() : Buffer[]
-AbortAllTransfers()
-UpdateProducerStates()
LimeSDR
-USBGeneric mStreamPort
-ISerialPort mSerialPort
-IComms mlms7002mPort
-IComms mfpgaPort
+Configure(...)
+Init(...)
+Reset(...)
+EnableChannel(...)
+GetClockFreq(...) : double
+SetClockFreq(...)
+SetSampleRate(...)
+SPI(...)
+StreamSetup(...)
+StreamStart(...)
+StreamStop(...)
+GetInternalChip(...)
+GPIODirRead(...)
+GPIORead(...)
+GPIODirWrite(...)
+GPIOWrite(...)
+CustomParameterWrite(...)
+CustomParameterRead(...)
+UploadMemory(...)
+MemoryRead(...)
+MemoryWrite(...)
#GetDeviceInfo() : SDRDescriptor
#ResetUSBFIFO()
#UpdateFPGAInterface(...)
LimeSDR_Mini
-USBGeneric mStreamPort
-ISerialPort mSerialPort
-IComms mlms7002mPort
-IComms mfpgaPort
+Configure(...)
+Init(...)
+Reset(...)
+SetSampleRate(...)
+GetClockFreq(...) : double
+SetClockFreq(...)
+GetTemperature(...) : double
+Synchronize(...)
+SPI(...)
+StreamSetup(...)
+StreamStart(...)
+StreamStop(...)
+GPIODirRead(...)
+GPIORead(...)
+GPIODirWrite(...)
+GPIOWrite(...)
+CustomParameterWrite(...)
+CustomParameterRead(...)
+SetSerialNumber(...)
#GetDeviceInfo() : SDRDescriptor
#UpdateFPGAInterface(...)
LimeSDR_X3
-CDCM_Dev mClockGeneratorCDCM
-Equalizer mEqualizer
-LimePCIe mTRXStreamPorts[]
-SlaveSelectShim mLMS7002Mcomms[3]
-IComms fpgaPort
+Configure(...)
+Init(...)
+Reset(...)
+GetSampleRate(...) : double
+SetSampleRate(...)
+GetClockFreq(...) : double
+SetClockFreq(...)
+SPI(...)
+StreamSetup(...)
+StreamStop(...)
+CustomParameterWrite(...)
+CustomParameterRead(...)
+UploadMemory(...)
+MemoryRead(...)
+MemoryWrite(...)
+UploadTxWaveform(...)
LimeSDR_XTRX
-IComms lms7002mPort
-IComms fpgaPort
-LimePCIe mStreamPort
-ISerialPort mSerialPort
+Configure(...)
+Init(...)
+SetSampleRate(...)
+GetClockFreq(...) : double
+SetClockFreq(...)
+SPI(...)
+StreamSetup(...)
+StreamStop(...)
+CustomParameterWrite(...)
+CustomParameterRead(...)
+UploadMemory(...)
+MemoryWrite(...)
+MemoryRead(...)
+OEMTest(...)
+WriteSerialNumber(...)
LimeSDR_MMX8
-IComms mMainFPGAcomms
-LimePCIe mTRXStreamPorts[]
-LimeSDR_XTRX mSubDevices[]
-ADF4002 mADF
+Configure(...)
+GetDescriptor() : SDRDescriptor
+Init()
+Reset()
+GetGPSLock(...)
+EnableChannel(...)
+GetFrequency(...) : double
+SetFrequency(...)
+GetNCOFrequency(...) : double
+SetNCOFrequency(...)
+GetNCOIndex(...) : int
+SetNCOIndex(...)
+GetNCOOffset(...) : double
+GetSampleRate(...) : double
+SetSampleRate(...)
+GetLowPassFilter(...) : double
+SetLowPassFilter(...)
+GetAntenna(...) : uint8_t
+SetAntenna(...)
+GetTestSignal(...) : TestSignal
+SetTestSignal(...)
+GetClockFreq(...) : double
+SetClockFreq(...)
+GetGain(...)
+SetGain(...)
+GetDCOffsetMode(...) : bool
+SetDCOffsetMode(...)
+GetDCOffset(...) : complex64f_t
+SetDCOffset(...)
+GetIQBalance(...) : complex64f_t
+SetIQBalance(...)
+GetCGENLocked(...) : bool
+GetTemperature(...) : double
+GetSXLocked(...) : bool
+ReadRegister(...) : uint
+WriteRegister(...)
+LoadConfig(...)
+SaveConfig(...)
+GetParameter(...) : uint16_t
+SetParameter(...)
+Synchronize(...)
+EnableCache(...)
+Calibrate(...)
+ConfigureGFIR(...)
+GetGFIRCoefficients(...) : double[]
+SetGFIRCoefficients(...)
+SetGFIR(...)
+GetHardwareTimestamp(...) : uint64_t
+SetHardwareTimestamp(...)
+StreamSetup(...)
+StreamStart(...)
+StreamStop(...)
+StreamRx(...) : uint32_t
+StreamTx(...) : uint32_t
+StreamStatus(...)
+SPI(...)
+CustomParameterWrite(...)
+CustomParameterRead(...)
+SetMessageLogCallback(...)
+GetInternalChip(...)
+UploadMemory(...)
+MemoryWrite(...)
+MemoryRead(...)
+UploadTxWaveform(...)
«interface»
ISPI
+SPI(...)
«interface»
IComms
+GPIODirRead(...)
+GPIORead(...)
+GPIODirWrite(...)
+GPIOWrite(...)
+CustomParameterWrite(...)
+CustomParameterRead(...)
+ProgramWrite(...)
+ResetDevice(...)
«interface»
ISerialPort
+Write(...) : int
+Read(...) : int
«interface»
IDMA
+Enable(bool)
+EnableContinuous(...)
+GetCounters() : State
+SubmitRequest(...)
+Wait()
+BufferOwnership(...)
+GetBuffers() : Buffer[]
LimePCIeDMA
+Enable(bool)
+EnableContinuous(...)
+GetCounters() : State
+SubmitRequest(...)
+Wait()
+BufferOwnership(...)
+GetBuffers() : Buffer[]
LimePCIe
+Device communication functions()
LMS64C_LMS7002M_Over_PCIe
-LimePCIe port
+SPI(...)
+ResetDevice(...)
LMS64C_FPGA_Over_PCIe
-LimePCIe port
+SPI(...)
+CustomParameterWrite(...)
+CustomParameterRead(...)
+ProgramWrite(...)
LMS64C_LMS7002M_Over_PCIe_MMX8
-LimePCIe port
+SPI(...)
+ResetDevice(...)
LMS64C_FPGA_Over_PCIe_MMX8
-LimePCIe port
+SPI(...)
+CustomParameterWrite(...)
+CustomParameterRead(...)
+ProgramWrite(...)
LMS64C_ADF_Over_PCIe_MMX8
-LimePCIe port
+SPI(...)
PCIE_CSR_Pipe
#LimePCIe port
+Write(...) : int
+Read(...) : int
ADF4002
-ISPI controlPort
+Device control functions()
CDCM_Dev
-ISPI controlPort
+Device control functions()
Equalizer
-ISPI controlPort
+Device control functions()
FPGA
-ISPI fpgaPort
-ISPI lms7002mPort
+Device control functions()
FPGA_Mini
+Device control functions()
FPGA_X3
+Device control functions()
FPGA_XTRX
+Device control functions()
«abstract»
LMS7002M_SDRDevice
#LMS7002M mLMSChips[]
#TRXLooper mStreamers[]
#FPGA mFPGA
+GetDescriptor(...) : SDRDescriptor
+Reset(...)
+GetGPSLock(...)
+EnableChannel(...)
+GetFrequency(...) : double
+SetFrequency(...)
+GetNCOFrequency(...) : double
+SetNCOFrequency(...)
+GetNCOIndex(...) : int
+SetNCOIndex(...)
+GetNCOOffset(...) : double
+GetSampleRate(...) : double
+GetGain(...)
+SetGain(...)
+GetLowPassFilter(...) : double
+SetLowPassFilter(...)
+GetAntenna(...) : uint8_t
+SetAntenna(...)
+GetTestSignal(...) : TestSignal
+SetTestSignal(...)
+GetDCOffsetMode(...) : bool
+SetDCOffsetMode(...)
+GetDCOffset(...) : complex64f_t
+SetDCOffset(...)
+GetIQBalance(...) : complex64f_t
+SetIQBalance(...)
+GetCGENLocked(...) : bool
+GetTemperature(...) : double
+GetSXLocked(...) : bool
+ReadRegister(...) : uint
+WriteRegister(...)
+LoadConfig(...)
+SaveConfig(...)
+GetParameter(...) : uint16_t
+SetParameter(...)
+Calibrate(...)
+ConfigureGFIR(...)
+GetGFIRCoefficients(...) : double[]
+SetGFIRCoefficients(...)
+SetGFIR(...)
+Synchronize(...)
+EnableCache(...)
+GetHardwareTimestamp(...) : uint64_t
+SetHardwareTimestamp(...)
+StreamStart(...)
+StreamStop(...)
+StreamRx(...) : int
+StreamTx(...) : int
+StreamStatus(...)
+SPI(...)
+SetMessageLogCallback(...)
+GetInternalChip(...)
+UploadMemory(...)
#UpdateFPGAInterfaceFrequency(...)
#SetGainInformationInDescriptor(...)
SlaveSelectShim
-IComms port
+SPI(...)
+ResetDevice(...)
TRXLooper
#FPGA fpga
#LMS7002M lms
+GetHardwareTimestamp() : uint64_t
+SetHardwareTimestamp(uint64_t now)
+Setup(...)
+Start()
+Stop()
+StreamRx(...) : int
+StreamTx(...) : int
#RxSetup() : int
#ReceivePacketsLoop()
#RxTeardown()
#TxSetup() : int
#TransmitPacketsLoop()
#TxTeardown()
XSDR