ngscopeclient 0.1-dev+51fbda87c
|
Main library include file. More...
#include <deque>
#include <vector>
#include <string>
#include <map>
#include <stdint.h>
#include <chrono>
#include <thread>
#include <memory>
#include <climits>
#include <cinttypes>
#include <set>
#include <float.h>
#include <sigc++/sigc++.h>
#include <yaml-cpp/yaml.h>
#include "../log/log.h"
#include "../xptools/TimeUtil.h"
#include "config.h"
#include <vulkan/vulkan_raii.hpp>
#include "Unit.h"
#include "Bijection.h"
#include "IDTable.h"
#include "AcceleratorBuffer.h"
#include "ComputePipeline.h"
#include "SCPITransport.h"
#include "SCPISocketTransport.h"
#include "SCPITwinLanTransport.h"
#include "SCPILinuxGPIBTransport.h"
#include "SCPILxiTransport.h"
#include "SCPINullTransport.h"
#include "SCPIUARTTransport.h"
#include "SCPIHIDTransport.h"
#include "VICPSocketTransport.h"
#include "SCPIDevice.h"
#include "SCPITMCTransport.h"
#include "FlowGraphNode.h"
#include "Instrument.h"
#include "StreamDescriptor.h"
#include "OscilloscopeChannel.h"
#include "StreamDescriptor_inlines.h"
#include "FlowGraphNode_inlines.h"
#include "Trigger.h"
#include "BERT.h"
#include "BinaryDriver.h"
#include "CommandLineDriver.h"
#include "DigitalIOChannel.h"
#include "DigitalInputChannel.h"
#include "DigitalOutputChannel.h"
#include "FunctionGenerator.h"
#include "FunctionGeneratorChannel.h"
#include "Load.h"
#include "CANChannel.h"
#include "Multimeter.h"
#include "MultimeterChannel.h"
#include "Oscilloscope.h"
#include "SParameterChannel.h"
#include "PowerSupply.h"
#include "PowerSupplyChannel.h"
#include "RFSignalGenerator.h"
#include "RFSignalGeneratorChannel.h"
#include "SCPIInstrument.h"
#include "HIDInstrument.h"
#include "ModbusInstrument.h"
#include "SCPIBERT.h"
#include "SCPIFunctionGenerator.h"
#include "SCPILoad.h"
#include "SCPIMiscInstrument.h"
#include "SCPIMultimeter.h"
#include "SCPIOscilloscope.h"
#include "SCPIPowerSupply.h"
#include "SCPIRFSignalGenerator.h"
#include "SpectrometerDarkFrameChannel.h"
#include "SCPISA.h"
#include "SCPISDR.h"
#include "SCPISpectrometer.h"
#include "SCPIVNA.h"
#include "SwitchMatrix.h"
#include "SParameters.h"
#include "TouchstoneParser.h"
#include "IBISParser.h"
#include "FilterParameter.h"
#include "Filter.h"
#include "ImportFilter.h"
#include "PeakDetectionFilter.h"
#include "SpectrumChannel.h"
#include "SParameterSourceFilter.h"
#include "SParameterFilter.h"
#include "FilterGraphExecutor.h"
#include "QueueManager.h"
Go to the source code of this file.
Classes | |
struct | ConvertRawSamplesShaderArgs |
class | CompileTimeAssert< true > |
Functions | |
uint64_t | ConvertVectorSignalToScalar (const std::vector< bool > &bits) |
std::string | GetDefaultChannelColor (int i) |
std::string | Trim (const std::string &str) |
std::string | TrimQuotes (const std::string &str) |
std::string | BaseName (const std::string &path) |
std::string | ReadFile (const std::string &path) |
std::string | ReadDataFile (const std::string &relpath) |
std::vector< uint32_t > | ReadDataFileUint32 (const std::string &relpath) |
std::string | FindDataFile (const std::string &relpath) |
void | GetTimestampOfFile (std::string path, time_t ×tamp, int64_t &fs) |
std::string | to_string_sci (double d) |
Like std::to_string, but output in scientific notation. | |
std::string | to_string_hex (uint64_t n, bool zeropad=false, int len=0) |
Like std::to_string, but output in hex. | |
void | TransportStaticInit () |
Static initialization for SCPI transports. | |
void | DriverStaticInit () |
Static initialization for instrument drivers. | |
bool | VulkanInit (bool skipGLFW=false) |
Initialize a Vulkan context for compute. More... | |
void | InitializeSearchPaths () |
void | InitializePlugins () |
Initialize all plugins. | |
void | DetectCPUFeatures () |
Static initialization for CPU feature flags. | |
std::string | GetDirOfCurrentExecutable () |
Gets the path to the directory containing the current executable. | |
void | ScopehalStaticCleanup () |
float | FreqToPhase (float hz) |
Converts a frequency in Hz to a phase velocity in rad/sec. | |
uint64_t | next_pow2 (uint64_t v) |
Rounds a 64-bit integer up to the next power of 2. | |
uint64_t | prev_pow2 (uint64_t v) |
Rounds a 64-bit integer down to the next power of 2. | |
std::vector< std::string > | explode (const std::string &str, char separator) |
std::string | str_replace (const std::string &search, const std::string &replace, const std::string &subject) |
std::string | strtolower (const std::string &s) |
uint32_t | GetComputeBlockCount (size_t numGlobal, size_t blockSize) |
std::string | ExpandPath (const std::string &in) |
void | CreateDirectory (const std::string &path) |
uint32_t | CRC32 (const uint8_t *bytes, size_t start, size_t end) |
Calculates a CRC32 checksum using the standard Ethernet polynomial. | |
uint32_t | CRC32 (const std::vector< uint8_t > &bytes) |
uint32_t | ColorFromString (const std::string &str, unsigned int alpha=255) |
const char * | ScopehalGetVersion () |
Returns the library version string (Semantic Version formatted) | |
Variables | |
bool | g_gpuFilterEnabled |
True if filters can use GPU acceleration. | |
bool | g_gpuScopeDriverEnabled |
True if scope drivers can use GPU acceleration. | |
bool | g_hasShaderFloat64 |
Indicates whether the float64 type is available for use in shaders and SSBOs. | |
bool | g_hasShaderInt64 |
Indicates whether the int64 type is available for use in shaders and SSBOs. | |
bool | g_hasShaderInt16 |
Indicates whether the int16 type is available for use in shaders and SSBOs. | |
bool | g_hasShaderInt8 |
Indicates whether the int8 type is available for use in shaders and SSBOs. | |
bool | g_hasShaderAtomicFloat |
Indicates whether atomic operations on the float type are available in shaders. | |
bool | g_hasDebugUtils |
Indicates whether the VK_EXT_debug_utils extension is available. | |
bool | g_hasMemoryBudget |
Indicates whether the VK_EXT_memory_budget extension is available. | |
bool | g_hasPushDescriptor |
Indicates whether the VK_KHR_push_descriptor extension is available. | |
size_t | g_maxComputeGroupCount [3] |
Maximum size of a Vulkan dispatch group for compute shaders, in each axis. | |
std::vector< std::string > | g_searchPaths |
vk::raii::Context | g_vkContext |
Global Vulkan context. | |
std::unique_ptr< vk::raii::Instance > | g_vkInstance |
Global Vulkan instance. | |
uint8_t | g_vkComputeDeviceUuid [16] |
UUID of g_vkComputeDevice. | |
uint32_t | g_vkComputeDeviceDriverVer |
Driver version of g_vkComputeDevice. | |
vk::raii::PhysicalDevice * | g_vkComputePhysicalDevice |
Physical device for g_vkComputeDevice. | |
std::unique_ptr< QueueManager > | g_vkQueueManager |
Allocates QueueHandle objects. More... | |
bool | g_vulkanDeviceIsIntelMesa |
Indicates that the Vulkan driver is Mesa on an Intel GPU. | |
bool | g_vulkanDeviceIsAnyMesa |
Indicates that the Vulkan driver is Mesa on any GPU. | |
bool | g_vulkanDeviceIsMoltenVK |
Indicates that the Vulkan driver is MoltenVK. | |
uint32_t | g_vkPinnedMemoryHeap |
Heap from which g_vkPinnedMemoryType is allocated. | |
uint32_t | g_vkLocalMemoryHeap |
Heap from which g_vkLocalMemoryType is allocated. | |
bool | g_vulkanDeviceHasUnifiedMemory |
Indicates whether the Vulkan device is unified memory. More... | |
Main library include file.