NDEVR
API Documentation
NDEVR

The primary namespace for the NDEVR SDK. More...

Classes

struct  _GRD
 3D grid data structure holding scalar field values and node data for marching cubes isosurface extraction. More...
class  AboutDialog
 Shows information about the current software version. More...
class  AbstractHyperGraphElementCreator
 Abstract interface for allocating HyperGraphElement. More...
class  ACIColor
 A color identified by an AutoCAD Color Index (ACI) number from 1 through 255. More...
struct  ActiveGPSSensor
 Describes an active GPS sensor with its connection details and sensor pointer. More...
class  AdaptiveTCPClient
 TCP client that implements the NDEVR communication protocol over a QTcpSocket. More...
class  AdaptiveTCPServer
 TCP server implementation of NDEVRCommunicationLogic using Qt's QTcpServer for NDEVR protocol. More...
class  AdaptiveWebClient
 WebSocket client that implements the NDEVR communication protocol over a QWebSocket. More...
class  AdaptiveWebServer
 WebSocket server implementation of NDEVRCommunicationLogic with optional SSL/TLS support. More...
struct  AerialImageRequest
 Contains the information for requesting a 2D top-down view of a geographic location to be used with a AerialImage service such as google earth. More...
class  AerialImageSettings
 Dialog for showing an AerialImage or top down view rendered with a service like google earth with user controls for adjusting view. More...
class  AerialImageView
 A simple widget for showing an AerialImage or top down view rendered with a service like google earth A loading screen appears as images are loaded in. More...
struct  AlignmentDeterminator
 Determines the optimal memory alignment for a given type based on its size. More...
class  AndroidHelperFunctions
 Dummy class for API inclusion. More...
class  Angle
 Stores an angle in an optimized internal format with support for efficient trigonometric operations. More...
class  AngleDefinitions
 Logic for converting between Euler angles and basic rotations or normals. More...
struct  AngleUnit
 Contains logic for converting angles into user defined units including up-direction and clockwise-logic. More...
struct  AngularDimensionData
 logic for storing an angular dimension in a CAD-friendly way for exporting and importing. More...
class  APIDirectoryManager
 Collects headers, libraries, DLLs, and resources from source and output directories and assembles them into an API distribution folder. More...
struct  APIResource
 Describes a single file resource to be included in the API directory, along with its relative path within the output structure. More...
class  ApplicationLauncherButtonManager
 Creates a button for launching a 3rd party application. More...
class  ApplicationOption
 The default object to store data of any type that should persist through sessions of the application. More...
class  ApplicationOptionBase
 The core of the default object to store data of any type that should persist through sessions of the application. More...
class  ApplicationOptions
 The container for storing N-number of ApplicationOption for the program. More...
class  ApplicationResource
 High-Level functions for communicating with the operating system or getting general information about the application. More...
class  ApplicationSetup
 Initializes the engine for most applications. More...
struct  ArcData
 logic for storing a arc data in a CAD-friendly way for exporting and importing. More...
class  ArcShape
 Model class for storing, rendering, and logically modifying a 3D conic arc. More...
struct  ArialColorTheme
 Allows the user to specify a color theme for a Aerial image request. More...
class  AsciiFactory
 Writes and reads points of data to and from a plain-text file based on FactoryOptions. More...
class  AsciiFileOutputStream
 A LogStream that writes log messages directly to a specified ASCII text file. More...
class  AsciiIODataBlock
 Represents a rectangular block of data within an ASCII table page, providing a callback to retrieve typed cell values by row/column index. More...
class  AsciiModelFileDialog
 Default dialog shown when the user exports an ascii-or custom column style file. More...
class  AsciiOptions
 Storage class for all IO options related to an Ascii file output used by an IOFactory services that write to Ascii. More...
class  AsciiTableIOData
 Holds the data and file paths needed for ASCII table-based import/export operations, including one or more data blocks and template/output file locations. More...
class  AssimpFactory
 IOFactory for writing to files using the ASSIMP 3rd party library. More...
struct  AssimpSceneMemory
 Stores all of the objects needed for an aiScene in a way that is efficient and uses native containers. More...
class  Atlas
 Manages a collection of maps for the ORB-SLAM system. More...
struct  Attrib
 Logic for storing attribute data in a CAD-friendly way for exporting and importing. More...
class  AutomatedTest
 base class for performing a test for easily testing certain software functionality More...
class  AutomatedTestingDialog
 Gives user information and allows execution for all registered automated testing. More...
class  AutoModelFileDialog
 Dialog that allows user to choose import or export options while simultaneously automatically writing or reading the file in the background such that the user might already have the data when finished. More...
struct  AutoZoomFocus
 Logic for automatically zooming a Camera or Viewport to a certain location or having certain objects in focus of the frame. More...
struct  AxisAngle
 An angle about a particular, defined 3D axis. More...
class  BackgroundandLightingEditor
 A dialog for allowing the user to specify a background or sun position of a particular camera or viewport. More...
class  BandMatrix
 Band Matrix solver. More...
class  Base64Encoder
 Functions for converting to and from Base64 https://en.wikipedia.org/wiki/Base64. More...
class  BaseBinaryEdge
 Base class for edges connecting exactly two vertices in the graph. More...
class  BaseEdge
 Base class for edges with a fixed-size error vector and measurement type. More...
class  BaseMultiEdge
 base class to represent an edge connecting an arbitrary number of nodes More...
class  BaseUnaryEdge
 Base class for edges connecting exactly one vertex (unary constraints). More...
class  BaseValues
 Dummy class to ensure creation of an include file around core root values. More...
class  BaseVertex
 Templatized BaseVertex. More...
class  BasicCustomUnit
 A program-defined unit that can be used for some specific task different from a program-wide unit. More...
class  BasicKeyController
 Assigns actions to key presses and registers them as a program-wide service. More...
class  BasicModelIterator
 A convenience subclass of ModelIterator that delegates processing to user-supplied std::function callbacks rather than requiring a full subclass override. More...
class  BasicObjectDialogSetupCallback
 A convenience class for DesignObjectDialogSetupCallback that allows for a single function to setup a DesignObjectDialog. More...
class  BasicResourceListener
 Simple version of ResourceListener which allows for a simple function callback that will be executed when a Resource changes instead of a class override. More...
class  BasicThread
 A thread that executes a user-provided callback function concurrently. More...
class  BasicUnitOption
 A definition of how to describe a particular set of data to a custom category of unit. More...
class  Battery
 A device which has an associated voltage or percent that changes. More...
class  BatteryAlertWatcher
 Listens for changes to a Battery and reports an error to the user when thresholds are crossed. More...
struct  BatteryCapacityInfo
 For a given BatteryCapacityType, the limits that define the state of the battery. More...
class  BatteryWidget
 A button that displays information about multiple Batteries when clicked. More...
class  BCrypt
 Provides bcrypt password hashing and validation functions. More...
struct  BinaryCompressionObject
 A container for storing compressed data, typically used for File IO operations. More...
class  BinaryFile
 Logic for reading or writing to a binary file including logic for compressing or decompressing the file. More...
struct  BinaryFileTableInfo
 Extended file table information for reading and writing NDV binary files. More...
class  BinaryHeap
 A heap data structure that takes the form of a binary tree which is a common way of implementing priority queues. More...
class  BiRadialObject
 An ellipse like shape (such as an oval or egg) with two points, where all points on the shape are equal distance between the two points (distanceTo(A) + distanceTo(B) = radius). More...
class  BitAlignedBuffer
 A buffer that stores elements using a configurable number of bits per element. More...
class  BitFlag
 A bitset that stores 8 bits (elements with only two possible values: 0 or 1, true or false, ...). More...
class  BitIterator
 Simple bit iterator, typically used for parsing Buffer of bools in loops. More...
class  BitReference
 A convenience class used with Buffers or Vectors of bools for referencing or acting on a single bit. More...
class  BlastReportEditor
 Editor widget for viewing and editing blast report data for a customer job. More...
struct  BlockData
 A block structure (Similar to a Model) used to share data with CAD. More...
struct  BlockInsert
 Information for how to place a CAD block within a scene (Similar to Model). More...
struct  BlockLookupList
 Extends BlockLookupNode with a list of child nodes for hierarchical block model lookup. More...
struct  BlockLookupNode
 A fixed-size 3D lookup table mapping spatial indices to flat array positions in a block model. More...
class  BlockModel
 Extends GridMesh<3> to provide 3D block-model geometry with kriging and triangulation support. More...
struct  BlockModelCache
 Cache for collecting block model vertex positions, colors, and weights during batch updates. More...
class  BlockModelFactory
 Reads block model data from .grd files into a Model's geometry. More...
class  BlockModelFilteringCache
 Abstract cache interface for filtering block model raster data based on spatial criteria. More...
struct  BlockModelGeometryCache
 Extended cache that links block model data to actual Geometry columns for GPU upload. More...
class  BlockModelRaster
 A single raster tile of a block model, storing point data, weights, and surfacing support. More...
class  BlockSolve
 Convenience typedefs for commonly used BlockSolver configurations. More...
class  BlockSolver
 Implementation of a solver operating on the blocks of the Hessian. More...
struct  BlockSolverTraits
 traits to summarize the properties of the fixed size optimization problem More...
class  BluetoothConnection
 A ConnectionBackend that provides logic for interfacing with a QBluetooth connection. More...
class  BluetoothConnectionDialogFactory
 A ConnectionDialog that allows the user to modify a Bluetooth connection. More...
class  BluetoothConnectionFactory
 A ConnectionFactory that enables the creation of a BluetoothConnection for interfacing with a QBluetoothSocket. More...
class  BoilerMaker
 Reads a boilerplate copyright/license header template and applies file-specific substitutions, producing the standard header block for generated source files. More...
struct  BooleanDescription
 Describes custom options for a particular GeometryBoolean operation. More...
class  Bounds
 A specification of upper and lower bounds in N-dimensions. More...
class  BoundsWidget
 Allows the user to enter in a minimum and maximum value in N dimensions (up to 3). More...
class  BubbleLevelWidget
 A widget that displays a 2D bubble level visualization based on tilt angles from an OrientationSensor, providing visual feedback for device leveling. More...
class  Buffer
 The equivelent of std::vector but with a bit more control. More...
class  BufferAllocator
 Specific logic for reserving memory for a Buffer. More...
class  BufferAllocator< bool, 0, true, t_index_type, false >
 Specific logic for allocating booleans in a Buffer. More...
class  BufferBase
 A dummy class for easy tracking of inheritance with templated Buffers. More...
class  BufferedScanner
 Implentation of Scanner, however all data is cached. More...
class  BufferFunctions
 A dummy class to include complex Buffer insert and sort functions Functions that enhance the functionality of the Buffer class. More...
class  BufferInsertIterator
 Used by stl library to insert objects into the buffer. More...
class  BuildActionDefines
 Provides static constants, option group builders, and metadata queries for the build action system, including icons, categories, descriptions, and supported actions. More...
class  BuildActionDefinition
 A Model subclass that defines a single build action or workflow step, holding its action type, options, execution state, and log stream integration. More...
class  BuildActionItemsWidget
 Editor widget for configuring the detail items of a build action such as failure behavior and conditional execution criteria. More...
class  BuildActionProgramLogic
 Custom model logic that manages build action definitions, providing UI integration for build actions including ribbon buttons, tree widgets, context menus, and property dialogs. More...
struct  BuildActionUIDefinition
 Describes how a build action should be presented in the application UI, including ribbon and tree placement. More...
class  BuildActionUISetupWidget
 Editor widget for configuring how a build action is presented in the UI, such as ribbon placement and tree visibility. More...
class  BuildActionWidget
 The primary editor widget for configuring a build action definition, including action type selection, option editing, workflow management, and execution. More...
class  BuildRibbonGroup
 A ribbon group that provides quick-access buttons for common build actions within the Developer module UI. More...
class  BuildWorkflowTable
 A table widget that displays and manages child build actions within a workflow, allowing creation and ordering of build steps. More...
class  BulgeConverter
 Converts CAD Bulge objects into arc shapes that can be used by the NDEVR API. More...
class  BusManagerWidget
 Widget for managing transit bus entries in an incident report. More...
class  Button
 A core widget that allows the user to click one of many button types. More...
class  ButtonDialog
 Typically used for dialogs which have any number of buttons associated with it that are toggled on when the dialog is visible, and off when the widget is invisible. More...
class  ButtonGallery
 A scrollable gallery widget that displays a collection of Buttons in a flow layout. More...
class  CachedFactoryIOThread
 A thread designed to read and write files using the FactoryIO interface. More...
struct  CachedTile
 Stores a cached GeoTIFF tile with precomputed layout information for fast elevation sampling. More...
struct  CADColorInfo
 Stores color information for interfacing with CAD. More...
struct  CADDictionaryObject
 A container for information pointing to a CAD dictionary in CAD memory. More...
class  CADEntityStreamer
 A base-class for streaming out CAD entities from a file or CAD program memory. More...
class  CADGeometryWriter
 Streams NDEVR Geometry entities as CAD objects. More...
class  CADHandleManager
 Handles converting NDEVR API UUID objects into CAD HANDLE IDs. More...
class  CADHelperFunctions
 Useful functions for interfacing with the standard CAD environment. More...
struct  CADImageData
 logic for storing a image data in a CAD-friendly way for exporting and importing. More...
struct  CADMeshData
 Stores mesh data in a way optimized for CAD. More...
struct  CADVariable
 A variable shared between NDEVR and CAD. More...
class  CADWriteModifier
 An interface that can handle writing certain entities in a special way to the CAD environment. More...
struct  CalibrationPosition
 Represents a physical position and orientation used during IMU calibration, along with the sensor readings collected at that position. More...
struct  CalibrationReading
 Represents a location used for calibrating an IMU. More...
class  CalibratorWidget
 A widget that allows the user to interact with an IMUCalibrator object and perform an IMU calibration. More...
class  Camera
 A core object representing a user view as well as convenience functions for moving this view through 3D space. More...
class  CameraActionCombo
 Allows user to adjust the primary behavior of the mouse in the 3D view, such as enabling panning, orbit, lookat etc. More...
struct  CameraAnimation
 A container for information relating to a Camera 3D animation such as zooming or rotating around a target. More...
class  CameraBackground
 Logic for rendering the background to a 3D user view. More...
class  CameraEditor
 Editor for a Virtual Camera which allows for adjustment of background colors, locations, etc. More...
class  CameraLocationCombo
 Sets up a button to be a combobox with the various snap locations of a camera. More...
class  CameraLocationWidget
 A widget that can be displayed for setting the location of a camera. More...
class  CameraManager
 Forward declaration of the skybox environment rendering class. More...
struct  CameraOptions
 Camera intrinsic and distortion parameters. More...
class  CameraPane
 The default container for multiple Viewports in the NDEVR environment. More...
class  CameraRulerMenu
 A menu that provides options for configuring ruler visibility, grid display, and camera locking for a viewport. More...
class  CameraToolbar
 Typically shown under a virtual camera view, allows the user to input various settings for a camera or viewport. More...
struct  CameraUniformObject
 A structure containing common information pushed to the video card for NDEVR Rendering Engine operations. More...
class  CancelException
 An Exception thrown when the user cancels an operation. More...
class  CancelInfo
 Used with InfoPipe to signal that the process can be cancelled. More...
struct  CaptureCache
 Stores information about a screenshot. More...
struct  CaptureInfo
 Information relating to capturing a 3D view into a 2D raster image. More...
struct  CaptureRequest
 A request to capture the 3D view as a 2D image. More...
class  CAverageSignalQuality
 A widget that displays the average signal quality across all tracked satellites as a single animated indicator. More...
class  CAzimuthElevationWidget
 A skyplot widget that renders satellite positions in an azimuth-elevation polar diagram, showing their relative positions and signal strengths. More...
class  CheckForUpdatesDialog
 A dialog designed to show whether or not the application needs to be updated or the state of the update. More...
class  CheckoutCode
 Provides static helper methods that create and display build action workflows for common source checkout and generation operations. More...
class  CheckoutLock
 Used by Viewports to signal they are rendering and we should not be performing an Update. More...
class  CheckSumGenerator
 Logic for generating checksums based on initial value and a type. More...
struct  CircleData
 logic for storing a circle data in a CAD-friendly way for exporting and importing. More...
class  ClearMaterialDescendentsCommand
 A DesignCommand that clears (removes) the material assignments from descendant objects. More...
class  Cloth
 The data and operations for performing bare earth using Cloth simulation. More...
class  CloudtoCloudDistance
 A filter which removes objects that are too far away from a given cloud and a Cloth. More...
class  CNMEAParserQt
 A Qt-integrated NMEA parser that reads data from serial connections or files and emits signals when position, satellite, or orientation data changes. More...
class  CNMEASentenceGGA
 NMEA sentence reader for GGA (Global Positioning System Fix Data) sentences, extracting position, altitude, fix quality, and satellite count. More...
class  CNMEASentenceGSA
 NMEA sentence reader for GSA (GNSS DOP and Active Satellites) sentences, extracting dilution of precision and active satellite PRN numbers. More...
class  CNMEASentenceGST
 NMEA sentence reader for GST (GNSS Pseudorange Error Statistics) sentences, extracting position error ellipse and standard deviation data. More...
class  CNMEASentenceGSV
 NMEA sentence reader for GSV (GNSS Satellites in View) sentences, extracting satellite elevation, azimuth, and signal-to-noise ratio data. More...
class  CNMEASentencePCSW
 NMEA sentence reader for PCSW (proprietary Carlson) sentences, extracting INS orientation and status data. More...
class  CNMEASentenceRMC
 NMEA sentence reader for RMC (Recommended Minimum) sentences, extracting time, position, speed, and course data. More...
class  CodeStatistics
 Scans source files and collects statistics such as line counts, class counts, comment density, indentation metrics, and other code-quality indicators. More...
class  Collimator
 Represents a collimator (optical sighting device) attached to a total station as a Model. More...
class  CollimatorLogic
 Handles logic for managing collimators in the NDEVR environment, including setup, settings, and dialogs. More...
struct  CollimatorSettings
 Logic for handling Images in the NDEVR space, including dialogs and imports. More...
class  Color
 The core Color class in the NDEVR API. More...
class  ColorByValueWidget
 Allows the user to select a property and range to color a Model or Scene. More...
class  ColorChannelCombo
 Allows the user to select a method to color a particular channel. More...
class  ColorChooserButton
 A button that pops up a ColorChooserDialog and changes background color based on the color chosen. More...
class  ColorOptions
 Provides default color resources used throughout the NDEVR API. More...
class  ColorPalettes
 Provides predefined color palettes for use with materials and data visualization. More...
class  ColorPositionShaderLogic
 GPU compute shader that converts depth and color raster frames into 3D colored point positions. More...
class  ColorThemeButton
 A button for adjusting the color theme used by the NDEVR engine (Typically light or dark color palettes). More...
struct  ColumnDetails
 Stores the data for AsciiModelFileDialog user specified columns. More...
struct  CommandInformation
 Stores long-term statistics for commands executed using HardwareCommandQueue. More...
class  CommandJSON
 An IOFactory for reading and writing build action definitions in JSON format, enabling import/export of build workflows. More...
class  CommandLineRepresentation
 Represents a parsed command-line invocation with a command name and its arguments. More...
class  CommandLockObject
 Used with DesignObjectLookups to lock the application for a critical process. More...
struct  CommandPacket
 Packet payload for text commands between client and server. More...
struct  CompressedStringInfo
 Contains information for referencing compressed strings. More...
class  Compressor
 A series of static methods designed to compress objects and reduce their memory consumption or file size. More...
class  ConcavePolygon
 Stores convenience functions for a concavec polygon Works on a Polygon object to decompose it into triangles or sub-polygons. More...
class  ConcurrentOperation
 Contains thread-safe operations for inter-thread logic Increment and Decrement can be used to safely add to a shared uint04 value. More...
struct  ConfigType
 Stores String variables reprenting the type of compile configuration that will be supported by a particular Module or resource (debug vs release). More...
class  Connection
 A standard interface for all types of connections that allow transmitting and receiving of data between two devices or services using a ConnectionBackend. More...
class  ConnectionBackend
 Provides the unseen backend logic for setting up, tearing down, and sending data over a specific type of connection. More...
struct  ConnectionCategory
 A category represents the type of connection. More...
class  ConnectionDialog
 A virtual dialog that provides an interface that allows the user to adjust certain parameters for a Connection. More...
class  ConnectionDialogFactory
 Used to, given a Connection, generate an appropriate ConnectionDialog to allow adjustment of parameters. More...
class  ConnectionFactory
 Stores factories that can be registered for creating Connections of various types by instantiating a ConnectionBackend based on a provided ConnectionInfo. More...
class  ConnectionForwarding
 Logic for taking all rx data from one Connection and sending it through another Connection and vice-versa. More...
class  ConnectionForwardingDialog
 A table that allows the user to specify any number of ConnectionForwarding objects. More...
struct  ConnectionInfo
 A structure designed to store information about a specific Connection. More...
class  ConnectionPipeStream
 Simply logs to a given connection. More...
struct  ConnectionSearchParameters
 Describes settings for performing a Connection search. More...
class  ConnectionSetupWidget
 A dialog with many different ConnectionDialog objects that allow the user to specify a particular Connection. More...
class  ConnectionStatusWidget
 A dial and information text that shows the current status of a connection. More...
class  ConnectionWidget
 A small widget that can be shown that allows the user to attempt a connection, disconnect, or even define a connection. More...
struct  Constant
 Defines for a given type (such as sint04, fltp08, UUID, etc) a maximum, minimum, and reserved 'invalid' value. More...
struct  Constant< Matrix< t_type, t_row_dims, t_col_dims > >
struct  Constant< Model >
 Provides the canonical invalid constant for the Model type. More...
struct  Constant< Plane< t_dims, t_type > >
struct  Constant< Quaternion< t_type > >
class  ConstBitIterator
 Simple bit iterator, typically used for parsing Buffer of bools in loops. More...
class  ConstPointer
 Provides a constant, unmodifiable pointer that has shared ownership of a dynamically allocated object. More...
class  Constraint
 Constains two particles for use in the CSF filter. More...
class  ConstraintPoseImu
 Stores a prior constraint on an IMU pose with its information matrix. More...
class  ContainerWidget
 manages a series of SectionContent that can share the same space or lay out in various patterns including as floating windows used within NDEVR API Widget Docking system. More...
class  ContainerWidgetBase
 The root class that manages a series of SectionContent that can share the same space or lay out in various patterns including as floating windows used within NDEVR API Widget Docking system. More...
class  ContextMenuCallback
 Allows for customization of what is shown when the user right-clicks or accesses the ContextMenu for an object, selection, or scene. More...
class  ContextMenuManager
 Manages setting up the context menu that is shown when the user right-clicks or accesses the ContextMenu for an object, selection, or scene. More...
class  ControllerInterface
 Provides standard logic shared across all hardware controllers to be used with the software. More...
class  ControllerInterfaceManager
 Stores services that allow the software to access physical hardware controllers that can be used with the system. More...
class  Converter
 Utility class for converting between OpenCV, Eigen, Sophus, and NDEVR matrix types. More...
class  CoordinateBoundsSelector
 A dedicated dialog for allowing the user to select bounds for a northing and easting. More...
class  CoordinateConverter
 Forward declaration of the File class. More...
class  CoordinateConverterDialog
 A dialog that allows the user to set a Coordinate projection for the current project. More...
class  CoordinateConverterFactory
 Allows for the creation of Coordinate spaces. More...
class  CoordinateOptions
 Stores ApplicationOptions related to coordinates. More...
struct  CoordinateProjection
 Basic data about a particular coordinate projection. More...
class  CoordinateProjectionChooser
 Allows the user to select a coordinate projection from a list of ones available. More...
class  CoordinateProjectionManager
 Stores Coordinate Projections See https://ndevr.org/coordinate-projection/. More...
class  CoordinateSelector
 Allows the user to select Coordinates using the CoordinateBoundsSelector selector. More...
class  CoordinateUnitOption
 A definition of how to describe coordinate data. More...
struct  CopyOperations
 A collection of buffer copy steps for batched copy operations. More...
struct  CopyStep
 A single step in a buffer copy operation, tracking the copy regions and direction. More...
struct  Correspondance
 Stores a correspondence between a reference point and a point to register. More...
class  CPositionStatusWnd
 A widget that displays the current GPS position status information including coordinates, fix quality, and satellite count. More...
class  CrashManager
 Manages crash handling, exception reporting, and mini-dump creation. More...
class  CreateAccountDialog
 Dialog for creating a new user account on an OWL server. More...
struct  Credentials
 Stores user authentication credentials including username, password, and validation state. More...
class  CSFFilter
 Filters using the CSF logic for determining bare-earth. More...
struct  CSFParams
 Contains parameters for performing a Cloth surfacing operation. More...
class  CSignalQuality
 A bar chart widget that displays per-satellite signal quality (SNR) with animated transitions and constellation-based coloring. More...
class  CustomDesignChart
 A chart that allows for the plotting of 2 Geometry Data sources as a scatter plot. More...
class  CustomDesignChartDialog
 A chart that allows the user to select data from a model to plot as a scatter plot. More...
class  CustomDockButton
 A DockItem that represents a button. More...
class  Customer
 Model representing a customer entity with contact information, jobs, and devices. More...
class  CustomerDevice
 Model representing a customer's device (PC, phone, etc.) with associated metadata. More...
class  CustomerDeviceList
 Table widget that lists all devices belonging to a customer. More...
class  CustomerInfoSheet
 Editor widget for viewing and editing customer contact information. More...
class  CustomerJob
 Model representing a customer job (e.g. More...
class  CustomerJobInfoSheet
 Editor widget for viewing and editing customer job details. More...
class  CustomerJobsList
 Table widget that lists all jobs belonging to a customer. More...
class  CustomerModelList
 Table widget that lists all customer models (business or individual). More...
class  CustomModelBuilder
 Generates boilerplate header and source files for a custom Model subclass, optionally including a companion CustomModelLogic behavior class. More...
class  CustomModelLogic
 An easy interface for adding common SoftwareInterfaces relating to a Model to the program logic. More...
class  CustomTreeWidgets
 Allows for modification or addition of the widgets shown when an object is selected by the user in the TreeView. More...
class  CustomUnit
 A program-defined unit that can be used for some specific task different from a program-wide unit. More...
class  CylinderShape
 Model class for storing, rendering, and logically modifying a 3D cylinder. More...
class  data_too_long
 Exception thrown when the supplied data does not fit any QR Code version. More...
class  Database
 Provides access to a set of named database tables. More...
class  DatabaseFilesEditor
 Widget for browsing and editing files stored in the NDEVR database. More...
class  DatabaseStatus
 Widget that displays the current status of the NDEVR database server. More...
class  DatabaseUsersEditor
 Widget for managing users registered in the NDEVR database. More...
struct  DataPacketHeader
 Packet header for compressed point cloud data. More...
class  Dataset
 Forward declaration of the Model class. More...
class  DatasetManager
 Used to group datasets (DEPRECIATED). More...
class  DatasetView
 A relatively lightweight Widget that can be used for an entire application that allows for easy download and display of a dataset. More...
class  DBFParser
 Logic for reading or writing to a database file that uses the .dbf file extension. More...
struct  DDMMSSAngleUnit
 Degrees, Minutes, Seconds stored in a compact way where degrees and minutes are seperated by a decimal and minutes and secons are always 2 decimals. More...
class  DebugStream
 A LogStream that writes log messages to the platform debug console. More...
class  DefaultMaterials
 Provides default materials that can be used within the NDEVR API. More...
class  DefaultSelectionEffect
 The default behavior for selection, which is to create a bounding box around an object. More...
struct  DefaultSetter
 Helper struct that copies the default value from one TableColumn to another. More...
struct  DefaultSetter< Buffer< t_buffer_type > >
 Specialization of DefaultSetter for Buffer types. More...
struct  DefaultSetter< String >
 Specialization of DefaultSetter for String types. More...
class  DeferredImageIconEngine
 Used to render any icons when they are needed. More...
class  DelimiterIterator
 A class that quickly allows iteration through text. More...
struct  DeploymentInfo
 Parameters describing a deployment session for a DistanceEncoder and its associated sensor. More...
class  DeploymentLengthCombobox
 Provides a list of quick options for the desired Segment length for a Deployment. More...
class  DeploymentModeCombobox
 Provides a list of options for the user to select how to perform a particular Deployment. More...
struct  DeploymentOptions
 Stores ApplicationOptions related to Deployments. More...
class  DeploymentUnit
 A CustomUnit that is used to define the length of a Deployment. More...
class  DeploymentWidget
 A widget used for allowing the user to quickly setup an OrientationSensor for a Deployment. More...
class  DepthAISmoother
 A ViewportPointSmoother specialized for DepthAI cameras, converting between pixel coordinates and 3D points using the camera's intrinsic matrix. More...
class  DepthBiasSlider
 Can adjust the depth offset of a material using a QCustomSlider widget. More...
struct  DepthConsistencyPushConstants
 Push constants for depth consistency shader. More...
struct  DepthEstimateResult
 Result from a single depth estimation pass. More...
class  DesignCommand
 Forward declaration of the central design object registry. More...
class  DesignCommandGroup
 Allows for convenient groupings of commands that can be redo-undo all at once. More...
class  DesignCommandManager
 Stores logic for performing, undoing, or redoing DesignCommands. More...
class  DesignInfo
 Base information class for all design objects in the NDEVR property database. More...
class  DesignObject
 A low-level database object that can be used to access general stored properties within the NDEVR Model hierarchy or 3D environment. More...
class  DesignObjectBase
 Provides the underlying data storage for the NDEVR Scene Model hierarchy. More...
class  DesignObjectChooser
 Provides a screen of buttons that allow the user to pick a Model for an action. More...
class  DesignObjectComboWidget
 Shows a filtered list of models in a combobox that the user can use to select a desired Model. More...
class  DesignObjectDialog
 A popup dialog for showing options or information to the user for a particular DesignObject. More...
class  DesignObjectDialogFactory
 Allows extended functionality to DesignObjectDialogs by adding callbacks that can be used primarily to add tabs to the dialog. More...
class  DesignObjectDialogLookup
 Manages the creation and lookup of DesignObjectDialog instances for design objects. More...
class  DesignObjectDialogSetupCallback
 Provides logic for modifying DesignObjectDialogs for specific objects. More...
class  DesignObjectEditor
 A basic Editor that shows generic information, such as name and description. More...
class  DesignObjectGallery
 Shows a series of Buttons with large icons that represent DesignObjects that allow the user to choose one. More...
class  DesignObjectInterface
 Base level class providing convenience functions for interfacing with one or more DesignObjects. More...
class  DesignObjectLookup
 A core class where all Design Objects including models, materials, and geometries are stored. More...
class  DesignObjectOrientation
 Allows the user to adjust the orientation for a design object (DEPRECATED). More...
class  DesignObjectResourceCache
 A cache for reusing Model and Geometry objects to avoid repeated allocation. More...
class  DesignObjectSearchWidget
 Allows the user to enter search terms for filtering out tables or other views. More...
class  DesignObjectSorter
 Allows for sorting models when supported. More...
class  DesignObjectSorterManager
 Allows for sorting models when supported. More...
class  DesignObjectStringWidget
 A widget allowing easy access to change the properties of a designObject by taking user string input. More...
class  DesignObjectToggleWidget
 A widget allowing easy access to change the properties of a designObject by showing a toggle to the user. More...
class  DesignObjectUpdateTarget
 An object that will be called to update each time the lookup is updated. More...
class  DesignObjectVisibleButton
 A class for easily showing or hiding a Model in 3D space. More...
class  DesignObjectWidgetInterface
 A base class for interacting with one or more DesignObjects. More...
class  DesignParameter
 A definition of data that is logically stored in the Model hierarchy. More...
class  DesignParameterAccumulator
 Searches a model hierarchy and pulls all parameter data based on the AccumationMode settings. More...
class  DesignParameterExecutor
 Forward declaration of ManagedDesignCommand class. More...
class  DesignParameterFinder
 Searches a model hierarchy and pulls a list of available parameters along with the count for how many instances of that parameter are present. More...
class  DesignParameterSetter
 Classes for conveniently setting parameters for a series of DesignObjects in the model hierarchy. More...
class  DesignPropertyTable
 A base class for tables wishing to show columns of DesignObject properties. More...
class  DesignPropertyTableView
 A QTableView for showing Model or DesignObject properties. More...
class  DesignSelection
 A simple structure for storing a collection of data. More...
class  DesignSettings
 Stores generic settings that impact the behavior of the NDEVR API. More...
class  DesignSortFilterProxyModel
 Provides the ability to pull data from a DesignObjectLookup for display in tables within the NDEVR API and filter and sort it. More...
class  DesignTableEditorWidget
 A widget that pairs a DesignPropertyTable with a stacked editor panel, allowing the user to select a row and edit its details in an adjacent editor created by a callback. More...
class  DesignTableModel
 Provides the ability to pull data from a DesignObjectLookup for display in tables within the NDEVR API. More...
struct  DesignTask
 A task which is to be executed by a DesignObjectLookup. More...
class  DesignTaskManager
 Manages all active and inactive tasks for a DesignObjectLookup. More...
class  DesignWidget
 A widget showing key properties of a DesignObject selection, used primarily in a SelectionWidget. More...
struct  DesignWidgetCache
 Cached computed values for a DesignWidget, avoiding recalculation when the selection has not changed. More...
class  DevActionTree
 A tree widget that displays all supported build actions organized by category, allowing the user to select one or more actions. More...
class  DeveloperSettingsDialog
 A settings dialog widget that exposes developer-related application options such as paths to build tools, source directories, and licenses. More...
class  DeveloperVariables
 Stores application-level developer options and environmental variable references used throughout the build and development tool system. More...
class  Device
 A root class which describes some physical object, such as a Motor, Sensor, or Connection. More...
class  DeviceEditor
 Editor widget for viewing and editing customer device information. More...
class  DeviceFinder
 Base class for finding devices connected to the system. More...
class  DeviceLostException
 A specific type of Exception that occurs when a GraphicsDevice is lost. More...
class  DeviceManager
 Container for all active Devices connected to the software. More...
class  DeviceUpdateThread
 A class that updates a device by repeatedly calling update() until stop() is called. More...
class  DeviceWatcher
 Watches and alerts the program when a USB device is plugged in or unplugged. More...
class  DeviCounter
 DistanceEncoder implementation for the DeviCounter distance measurement device. More...
class  DeviCounterBattery
 Battery sensor implementation for the DeviCounter distance measurement device. More...
class  DeviCounterConnection
 Network connection implementation for communicating with a DeviCounter device. More...
class  DeviCounterSettings
 INI-based settings for DeviCounter connection behavior, timing, and simulation mode. More...
class  DeviCounterSettingsDialog
 Settings dialog widget for configuring and monitoring a DeviCounter distance encoder. More...
class  DeviCounterSimulatorIO
 Simulated ConnectionBackend that generates fake DeviCounter data for testing without hardware. More...
struct  DialIcon
 An icon along with defined behavior describing how that icon should interact with a parent QCustomDial object. More...
struct  DiametricDimension
 logic for storing an diametric dimension in a CAD-friendly way for exporting and importing. More...
class  Dictionary
 A hash-based key-value store, useful for quick associative lookups. More...
class  DictionaryBase
 A dummy base class for all Dictionary templates Used to more easily track inheritance for the templated Dictionary class. More...
struct  DimAlignedData
 A CAD measurement similar to AngleMeasurementModel. More...
struct  DimensionData
 Dimensional measurements stored in a CAD-friendly way. More...
struct  DimensionOptions
 Options for CAD dimension objects. More...
struct  DimOrdinateData
 logic for storing an ordinate dimension in a CAD-friendly way for exporting and importing. More...
class  DirectServerAction
 Server actions implementation that directly accesses a MySQL database backend. More...
class  Distance
 Dummy class for including distance functions. More...
class  DistanceEncoder
 A distance encoder is a device that measures distance by generating pulses in response to an object's movement. More...
class  DNBJSONFactory
 Factory for reading and writing NDEVR Design Bundle (DNB) files in JSON format. More...
class  DockInit
 Provides a way to optionally lazily initialize widgets when needed but still pass them to container docks. More...
class  DockItem
 The root class that allows interface with the NDEVR API Widget Docking system. More...
class  DockWidget
 A type-safe dock widget that wraps a specific widget type. More...
class  DownloadDatasetWidget
 A popup that is shown when a remote project is being downloaded. More...
class  DrawCommandsWidget
 A widget for interfacing with GeometryMaker to allow the user to draw 3D objects or shapes. More...
class  DriverManagerWidget
 Widget for managing transit driver entries in an incident report. More...
class  DropOverlay
 Paints a translucent rectangle over another widget. More...
class  DropOverlayCross
 Shows a cross with 5 different drop area possibilities. More...
class  DualSenseController
 ControllerInterface implementation for Sony DualSense (PS5) and DualSense Edge controllers. More...
class  DualSenseFactory
 Factory class that discovers and registers connected DualSense controllers. More...
class  DVI3DSpreadsheetFactory
 Creates and writes data from a DVISpreadsheet for easily importing and exporting data as points. More...
class  DXFAttributes
 DXF Style attributes that can be applied to CAD Entity objects. More...
class  DXFBlockWriter
 A ModelIterator that iterates over each object in the model hierarchy turning them into nested BlockData objects. More...
class  DXFFactory
 Writes and Reads from various DXF File types using the IOFactory interface. More...
struct  DXFGroup
 A type of entity in CAD representing several entities grouped together. More...
struct  DXFMaterial
 A DXF friendly material class which contains UV properties similar to a Material object. More...
class  DXFReader
 Logic for reading from a DXF stream of data. More...
class  DXFTableWriteIterator
 Converts objects into entities that can be placed within a DXF Entity Table. More...
class  DXFValueManager
 DXF streams store data in a large numbered index structure. More...
class  DXFWriter
 Handles writing data to a CAD entity stream. More...
class  DynamicPointer
 Provides a modifiable pointer that has shared ownership of a dynamically allocated object. More...
class  E57Factory
 Writes to an E57Factory using the IOFactory interface. More...
class  Edge4DoF
 Binary edge for 4-DoF relative pose constraints in pose graph optimization. More...
class  EdgeAccRW
 Binary edge for accelerometer random walk between two bias vertices. More...
class  EdgeGyroRW
 Binary edge for gyroscope random walk between two bias vertices. More...
class  EdgeInertial
 Multi-edge for IMU preintegration constraints between two poses. More...
class  EdgeInertialGS
 Multi-edge for inertial constraints with optimizable gravity direction and scale. More...
class  EdgeInverseSim3ProjectXYZ
 Binary edge for reprojection error through the inverse of a Sim3 transformation. More...
class  EdgeMono
 Binary edge for monocular reprojection error between a 3D point and a pose. More...
class  EdgeMonoOnlyPose
 Unary edge for monocular reprojection error with a fixed 3D point. More...
class  EdgePriorAcc
 Unary edge for prior constraint on accelerometer bias. More...
class  EdgePriorGyro
 Unary edge for prior constraint on gyroscope bias. More...
class  EdgePriorPoseImu
 Multi-edge for prior constraints on an IMU pose, velocity, and biases. More...
class  EdgeSE3
 6D edge between two Vertex6 More...
class  EdgeSE3Expmap
 6D edge between two Vertex6 More...
class  EdgeSE3ProjectXYZ
 Binary edge for reprojection error between a 3D point and a camera pose, using a GeometricCamera model. More...
class  EdgeSE3ProjectXYZOnlyPose
 Unary edge for reprojection error optimizing only the camera pose, using a GeometricCamera model. More...
class  EdgeSE3ProjectXYZOnlyPoseToBody
 Unary edge for reprojection error in a secondary (body) camera frame, optimizing only the pose. More...
class  EdgeSE3ProjectXYZToBody
 Binary edge for reprojection error in a secondary (body) camera frame. More...
class  EdgeSim3
 7D binary edge between two Sim3 vertices representing a relative similarity constraint. More...
class  EdgeSim3ProjectXYZ
 Binary edge for reprojection error through a Sim3 transformation. More...
class  EdgeStereo
 Binary edge for stereo reprojection error between a 3D point and a pose. More...
class  EdgeStereoOnlyPose
 Unary edge for stereo reprojection error with a fixed 3D point. More...
class  EdgeStereoSE3ProjectXYZ
 Binary edge for stereo reprojection error between a 3D point and a camera pose. More...
class  EdgeStereoSE3ProjectXYZOnlyPose
 Unary edge for stereo reprojection error optimizing only the camera pose. More...
class  Editor
 A base class for displaying options for editing a single DesignObject, typically a Model. More...
class  Effect
 A core class that provides a dynamic effect to an object in a model hierarchy. More...
struct  eint04
 Allows enum class variables to operate as 32 bit uint04 values. More...
struct  ElevationRequest
 Stores options and receives data for determining the elevation at given coordinates. More...
class  ElevationService
 For a given coordinate, determines the elevation at that coordinate. More...
struct  EllipseData
 Stores Ellipse information for interfacing with CAD. More...
class  EnclosedModelInfo
 Forward declaration for geometry vertex data. More...
struct  EncodedMessage
 Represents an encoded message associated with a resource version, including header and body. More...
struct  EncoderSettings
 Configuration settings for a DeviCounter rotary encoder device. More...
class  EntityConverter
 Primary class responsible for converting CAD entities into native CAD entities. More...
struct  EntityData
 An entity in CAD which has a layer and other handle information. More...
class  EnvironmentalVariable
 Forward declaration of InfoPipe. More...
class  EPSG4326TileHelper
 Provides coordinate conversion utilities between EPSG:4326 (WGS84) and tile coordinates. More...
class  Equation
 A solvable mathematical formula composed of variables, numbers, and operations. More...
struct  Event
 Base class for user-driven events which are typically KeyEvent or MouseEvent. More...
class  Exception
 Provides consistent interface to handle errors through the throw expression. More...
class  ExecutableManager
 Provides static methods for building executable projects, resource files, and platform-specific build artifacts from a module list. More...
class  EXIFInfo
 Stores and parses EXIF and XMP metadata extracted from a JPEG image stream. More...
class  EXIFStream
 Abstract interface for providing a stream of bytes to the EXIF parser. More...
class  ExportChooserDialog
 Allows the user to choose a specific Export format for use with IOFactory exporting. More...
struct  ExportRequest
 Stores information related to exporting specific data from the software. More...
class  ExternalApplicationManager
 Manages an external application. More...
class  ExtractorNode
 A quadtree node used for distributing ORB keypoints across the image. More...
class  Extruder
 Provides static functions to extrude 2D/3D shapes along polyline paths, generating triangulated solid geometry. More...
class  Extrusion
 logic for storing a extrusion data in a CAD-friendly way for exporting and importing. More...
struct  ExtrusionData
 Data for extruding an object onto a plane in CAD. More...
class  FactoryFeatures
 Allows IOFactories to report what features they support to make the import/export dialogs easier to setup and layout. More...
class  FactoryModelFilters
 Provides easy filtering tools for factories that are only able to export certain types of models or geometries. More...
class  FactoryOptions
 User-defined options that define preferences for importing and exporting using IOFactory objects. More...
struct  FactoryParameters
 A container of input information that is to be filled with output information by an IOFactory. More...
struct  FeatureExtractionResult
 Output from feature extraction, consumed by matching and SfM stages. More...
class  FeatureOptions
 Logic for checking or enabling software features. More...
class  FFTLogic
 Provides Fast Fourier Transform logic for converting signals between the time and frequency domains. More...
class  FieldChooser
 A Widget for setting up and choosing a Field used for importing and exporting data. More...
class  File
 Logic for reading or writing to a file as well as navigating filesystems or other common file operations. More...
struct  FileAndFolderOptions
 Stores ApplicationOptions related to user preferences for paths and program behavior relating to directories. More...
class  FileAndFolderSettingsDialog
 Allows the user to adjust default folders or whether or not the software uses project folders or project files. More...
struct  FileCachedData
 Data that is cached from a file into program memory to limit expensive file lookups. More...
class  FileChooserDialog
 A dialog designed to allow the user to navigate a filesytem and select or create one or more files or folders that match a criteria. More...
class  FileDropFrame
 A simple frame that allows the user to drag and drop a file into it. More...
class  FileException
 An Exception that contains information about a runtime error with a particular File. More...
struct  FileFactoryWarning
 Allows the software to display a warning to the end user about a problem encountered during an IOFactory read/write operation. More...
class  FileFormat
 Data that describes a particular file format and how to use the format with the program. More...
struct  FileHanderExtension
 A description of the type of file a Module or resource can handle. More...
struct  FileHandler
 Stores information relating to a type of file the module can preview or handle. More...
struct  FileHandlerVerb
 Stores variables needed to perform a file action for a particular Module or resource. More...
class  FileOptions
 Stores program-wide variables for controlling how the software works with file systems. More...
struct  FileRequest
 A FileRequest bundles format data as well as a particular file. More...
class  FileResource
 Contains methods for getting information about particular OS directories or static program file directories. More...
class  FileSearch
 Logic for searching for files based on some criteria. More...
class  FileServerSettingsDialog
 Settings dialog for configuring and managing the NDEVR file server. More...
struct  FilterDescription
 Describes special options/parameters for a GeometryFilter engine. More...
class  FilteringWidget
 A widget allowing the user to select a FilterDescription and adjust its properties and execute a filtering operation. More...
struct  FilterSettings
 Settings that control spatial and density filtering of scanned point data. More...
struct  FindFileFunction
 Represents a request for the user to locate a missing file needed by an IOFactory operation. More...
struct  FireWallException
 Stores information relating to a particular FireWallException needed by a Module or feature. More...
class  FloatingWidget
 Used with the NDEVR API Widget Docking system for widgets that are floating. More...
class  Font
 Information for how to display text data. More...
class  FontEditor
 A series of widgets that allow the user to adjust a font. More...
class  FontEngine
 Stores many different types of font. More...
struct  ForceLinker
 Helper struct that forces linkage with a static library by calling a function at construction time. More...
class  FormSheetWindowManager
 Window manager for the FormSheetEditor application. More...
struct  Formula
 Logic for storing the definition of a formula, that can be displayed to the end-user. More...
class  FormulaDialog
 Allows the user to see and edit a formula. More...
struct  FormulaTree
 Logic that saves formulas into a tree-like dependency structure. More...
struct  FragmentShaderDefinition
 Shader definition specialized for the fragment (pixel) processing stage. More...
struct  FragUniformObject
 Items to send to the OpenGL Fragmentation shader. More...
class  Frame
 Represents a single image frame with extracted features and pose information. More...
struct  FrameInfo
 Shared camera intrinsic and image metadata for frames. More...
class  FrameOfReferenceCommandWidget
 A widget that is shown when the user scales a 3D model. More...
struct  FrameView
 Holds per-view (left or right) keypoint data for a frame. More...
class  GaussianRN
 Used to generate a random number over a Gaussian distribution with templated setup parameters for very quick speed. More...
class  GDirection
 Represents the gravity direction as a rotation for optimization. More...
struct  GenericOption
 Stores a generic option of any type as well as some information about how the user might interact with that type. More...
class  GenericOptionGroup
 Stores a groups of GenericOptions that can be used to group them. More...
class  GenericOptionsGroup
 Creates a clean formatted dialog for any number of GenericOptions within a GenericOptionGroup Each option is labelled. More...
class  GenericOptionsWidget
 Automatically creates a widget based on a GenericOption. More...
class  GeometricCamera
 Abstract interface for geometric camera models (pinhole, fisheye, etc.). More...
struct  GeometricConsistencyPushConstants
 Push constants for geometric consistency shader. More...
class  GeometricTools
 Utility class for geometric computations between keyframes. More...
class  Geometry
 A core class within the model hierarchy containing vertex-based data (Usually 3D data) within a set container. More...
class  GeometryBoolean
 Class for calculating geometry Boolean operations (AND, OR, NOT, XOR, ...) in 3D space. More...
struct  GeometryBooleanParameters
 Stores a groups of options for performing GeometryBoolean operations. More...
class  GeometryEditor
 A popup Editor dialog for showing options or information related to Geometry objects. More...
class  GeometryFilter
 A service that contains registered algorithms for removing vertices or shapes from a group of vertices or shapes. More...
struct  GeometryFilterParameters
 Stores a groups of options for performing GeometryFilter operations. More...
class  GeometryMaker
 A controller for creating basic geometry with the mouse such as polylines, circles, or spheres TODO: Allow existing models to be used here. More...
class  GeometryPositionModRestore
 Class to easily restore calculated data in a Geometry after a location altering process. More...
class  GeometryRegistration
 A service that contains registered algorithms for registering geometry such that the input is adjusted to match the output. More...
struct  GeometryRegistrationDescription
 Describes special options/parameters for a GeometryRegistration engine. More...
struct  GeometryRegistrationParameters
 Describes options/parameters for running a GeometryRegistration pass. More...
class  GeometrySelectionOptimizer
 Interface for processing and optimizing geometry selections. More...
class  GeometrySurfacingFunction
 A QtModelFunction that manages the geometry surfacing tool, including selection and UI. More...
class  GeometrySurfacingWidget
 A widget that provides a UI for configuring and executing geometry surfacing operations on point clouds. More...
struct  GeometryVertices
 A container for storing vertex data associated with geometry, including positions, normals, colors, timestamps, and a spatial index (RTree) for efficient spatial queries. More...
class  GeoSlamFactory
 Reads .geoslam files. More...
class  GeoTiffElevationService
 An ElevationService that provides terrain elevation data from GeoTIFF tiles, downloading and caching them locally for efficient sampling. More...
class  GeoTiffFactory
 Reads and writes GeoTIFF files (elevation, orthophoto, multispectral) using the IOFactory interface. More...
struct  GeoTiffInfo
 Stores parsed GeoTIFF metadata including projection, tiepoints, and raster dimensions. More...
class  GettingStartedDialog
 This dialog is shown front and center before the user has loaded any data or created a project In touch mode large buttons are shown, while the company logo is shown as a backdrop in Desktop mode. More...
struct  GLCapabilities
 Capabilities provided by a GLESGraphicsDevice. More...
class  GLESCameraManager
 Manages viewports in the OpenGL engine, responsible for matrix transformations within shaders. More...
class  GLESCameraViewFactory
 Allows the software to generate OpenGL windows when requested that are rendered with OpenGL. More...
class  GLESGraphicsDevice
 Buffer for storing data in the OpenGL engine, usually for rendering. More...
class  GLESGraphicsPipeline
 Creates and manages the resources necessary for rendering a single Viewport within the OpenGL pipeline. More...
class  GLESGraphicsSession
 Creates and manages the resources necessary for converting a DesignObjectLookup into 3D rendered data in the OpenGL engine. More...
class  GLESGraphicsWindow
 The core Window used to render a viewport with OpenGL. More...
class  GLESImageData
 A pointer to an Image and functions relating to that image within the GLES logic space. More...
class  GLESImageManager
 Manages all images within the Vulkan space. More...
class  GLESMaterialManager
 Structure responsible for handling the OpenGL data surrounding a particular Material object. More...
class  GLESRenderObject
 A root render Object for OpenGL, which consists of a set Material, Model, and Geometry that is used together to optimally create a 3D render. More...
class  GLESShader
 A Shader for rendering default OpenGL logic to the graphics card. More...
class  GLESShaderManager
 Manages all shaders used with OpenGL and the NDEVR API. More...
class  GLESVertexManager
 Manages vertex buffers for the OpenGL engine. More...
struct  GLESVertexUniformObject
 Stores items to send to the OpenGL Vertex Shader. More...
struct  GNSSConfigCallback
 Callback descriptor for GNSS configuration options displayed in the GPS dialog. More...
class  GNSSInterface
 A GNSS interface provides logic for finding available GNSS devices. More...
class  GNSSManager
 A storage class for GNSSInterface that allows the software to specify roles, or find and assign GNSS devices. More...
class  GNSSOpenSettingsButton
 A button that opens the GPS settings dialog when clicked, displaying the current connection status and quality. More...
class  GNSSQualityOptionsWidget
 A widget that allows the user to edit quality-dependent GNSS reading settings such as sample count, sample time, color, and take-reading permission. More...
struct  GNSSQualitySettings
 Configures quality-dependent settings for GNSS readings, including sample counts, timing, display color, and whether reading is permitted. More...
struct  GNSSRole
 A GNSS role describes how the user wants to use a particular GNSS Device. More...
struct  GNSSSatelliteInfo
 Information about a single GNSS satellite as reported by a receiver. More...
class  GNSSSettingsDialog
 A settings dialog for configuring GNSS roles and quality-level thresholds for both position and orientation readings. More...
class  GNSSStatusWidget
 A compact widget displaying the current GNSS connection status, accuracy, and an LED indicator for quick visual assessment. More...
class  GoogleEarthApplicationManager
 Manages the integration with Google Earth Pro, exporting project data as KML and launching the external application for visualization and data collection. More...
class  GoogleWebMercatorTileService
 Fetches Web Mercator map tiles from Google Maps tile servers. More...
struct  GPSAlignmentResult
 Result of a GPS-based similarity transform (SfM -> ENU). More...
class  GPSDialog
 The main GPS configuration dialog providing connection management, satellite status display, quality indicators, and file-based GPS input. More...
struct  GPSPoint
 A geographic coordinate point produced by a GNSS receiver. More...
class  GPSSensor
 A GPS sensor implementation that receives NMEA data from serial connections, files, or the local device, and provides position, orientation, and satellite information. More...
class  GPSWidget
 A composite GPS widget that combines a settings button, status display, and take-reading functionality for collecting GNSS position and orientation data. More...
class  GrabNetworkInfo
 Provides an AutomatedTest for grabbing network information. More...
class  GraphicsBuffer
 A Special abstract TableColumn responsible for interfacing a Buffer of data with the video card. More...
class  GraphicsBufferException
 An exception thrown when a specific GraphicsBuffer encounters an error. More...
class  GraphicsCameraManager
 A structure for managing Viewport interactions with an NDEVR Rendering Engine. More...
class  GraphicsDevice
 A physical or virtual device used with the NDEVR Rendering Engine. More...
class  GraphicsException
 A common exeption thrown when an issue occurs within the NDEVR Graphics Engine. More...
class  GraphicsManager
 A common interface responsible for managing specific actions with a Gaphics engine, such as Vulkan or OpenGL. More...
class  GraphicsManagerBase
 Used for interfacing with a Graphics engine, such as Vulkan or OpenGL. More...
class  GraphicsManagerFactory
 Stores a default rendering engine to be used with the application. More...
class  GraphicsPipeline
 A GraphicsPipeline is a set of resources that are chained together to correctly render something. More...
class  GraphicsSession
 A GraphicsPipeline that is responsible for setting up and rendering the resources of a DesignObjectLookup. More...
class  GraphicsUpdateArguments
 Options that are used for performing an update on a Graphics Engine call. More...
class  GraphicsUpdater
 Responsible for updating resources or layouts of data in-between calls to render. More...
class  GravityIntersection
 Computes gravity-based intersection transforms by casting rays along a gravity vector and finding where they intersect scene geometry. More...
class  GriddedSliceIterator
 Slices geometry into evenly spaced cross sections along a grid defined by a transformation matrix and spacing vector. More...
class  GridIndexing
 Converts 1 dimensional index into N dimensional index based on size of each dimension. More...
class  GridMesh
 Stores a uniform grid of data in N dimensions into a Geometry object. More...
class  GStreamerVulkanWriter
 Captures Vulkan framebuffer images and encodes them to an MP4 video file via GStreamer. More...
struct  HandleData
 A handle used to reference an object in CAD. More...
class  HardwareCommandQueue
 A base class for communicating with Hardware, typically firmware by the software. More...
class  HardwareException
 A typical exception thrown when something fails with a Device. More...
class  HardwareInformation
 Contains information about a computer or device that is capable of running software typically with a CPU and memory. More...
struct  HardwareSearchParameters
 Options for finding active hardware connections. More...
struct  HardwareSearchPathParameters
 A series of paths to use for finding potential hardware connections. More...
class  HashMaker
 Computes hash values from arbitrary data using an FNV-like combining algorithm. More...
struct  HatchData
 logic for storing a hatch-data in a CAD-friendly way for exporting and importing. More...
struct  HatchEdgeData
 Stores information about the edge of a CAD hatch pattern. More...
struct  HatchLoopData
 Provides loops of data for the CAD hatch pattern. More...
class  HSBColor
 A color defined by hue, saturation, and brightness components. More...
class  HSLColor
 A color defined by hue, saturation, and luminosity components. More...
struct  HyperDijkstra
 Dijkstra's shortest-path algorithm on a HyperGraph. More...
class  HyperGraph
 Class that models a directed Hyper-Graph. More...
class  HyperGraphElementCreator
 templatized creator class which creates graph elements More...
class  IcoFile
 Logic for handling files with the .ico extension. More...
struct  IconCacheWidget
 A placeholder widget for Files displayed with FileChooserDialog until the actual icon can be loaded from the disk, which may be a slow operation for large directories. More...
struct  IconDefinition
 Information for displaying a particular icon. More...
struct  IconEngineItem
 Stores a specific renderer and transform for SVG rendering. More...
class  IconManager
 Stores information about many different icons. More...
struct  IconThemeDisplaySettings
 Stores display information for how to draw icons, when supported. More...
struct  IconThemeSettings
 Stores information for how to draw icons, when supported. More...
class  Image
 A root class that stores an an array of pixel data that can be displayed as an Image. More...
struct  ImageCacheData
 Holds cached image data including compressed and decompressed pixel buffers, file references, metadata, and dimension information. More...
class  ImageChooserGallery
 A gallery widget that displays available images from an ImageFactory and allows the user to select one. More...
class  ImageData
 A container for Images managed by the ImageFactory. More...
struct  ImageDefData
 Stores the definition of an Image for easy interface with CAD. More...
class  ImageEditApplicationManager
 Finds any acceptable Image editors (MS Paint, GIMP Photoshop, etc) and allows them to be used as editors. More...
class  ImageFactory
 The core class for reading/writing and storing images in an optimized way. More...
class  ImageFormatHandler
 Can be used to add functionality to the ImageFactory. More...
 Stores metadata associated with an image, such as geolocation, orientation, and creation time. More...
class  ImageModelDialog
 A popup Editor dialog for showing options or information related to ImageModel model objects. More...
class  ImageModelLogic
 Logic for handling Images in the NDEVR space, including dialogs and imports. More...
struct  ImageReadPointer
 A read-only smart pointer to ImageCacheData that acquires a read lock on construction. More...
class  ImageVectorizationEngine
 Contains services that can turn a 2D rastered image into linework. More...
class  ImageVectorizor
 Concrete ImageVectorizationEngine that converts raster images into vector geometry using the DGtal-based image vectorization pipeline (TV regularization, triangulation, Bezier fitting). More...
class  ImageView
 A widget that shows a raster image or icon. More...
struct  ImageWritePointer
 A writable smart pointer to ImageCacheData that acquires a write lock on construction. More...
class  IMUCalibrationSpreadsheet
 Creates and writes data from a distance encoder to a set excel page. More...
class  IMUCalibrator
 Logic and storage for IMU calibration. More...
class  ImuCamPose
 Represents a combined IMU and camera pose for graph optimization. More...
struct  IMUData
 Holds IMU calibration and bias data for a frame. More...
class  IMUNoiseSimulator
 This class generates random bias and noise for modeling a 9-DoF IMU. More...
class  IncidentReportSetup
 Widget providing the initial setup interface for a transit incident report. More...
class  IncludeFolderCreator
 Generates convenience include-redirect files (e.g. More...
class  IncrementVersion
 Increments the version number in a module's header file, supporting major, minor, and patch version bumps. More...
class  IndexMatchQueue
 A queue-based index matcher that pairs elements from two asynchronous streams by their index. More...
struct  IndexScratch
 Scratch buffers for block index assignments during structure building. More...
struct  InfoPacketHeader
 Packet header for scanner metadata (ID, matrix, timing). More...
class  InfoPipe
 A light-weight base class for Log that allows processes to update, without the need for additional include overheads. More...
class  INIFactory
 Contains methods for easily reading and writing to an INI file including efficient casting, callback, and variable storage methods. More...
class  INIInterface
 Contains methods for easily reading and writing to an INI file including efficient casting, callback, and variable storage methods. More...
class  INIOption
 A class used with INIFactory to store a reference to an object in the program that can be inherited to provide read and write functionality to the factory. More...
class  InitialSetupDialog
 Shown after a new installation on a device, allowing the user to familiarize themselves with the environment and to setup any needed settings, such as language, and performing registration. More...
class  InMemoryMatchesProvider
 An in-memory implementation of openMVG::sfm::Matches_Provider. More...
class  InMemoryRegionsProvider
 An in-memory implementation of openMVG::sfm::Regions_Provider. More...
class  InputInfoPipe
 Used with InfoPipe to allow for input such as user input. More...
class  InterfaceOrientationController
 This class is responsible for notifying and providing default layout logic when the orientation of the widget changes, such as for a screen rotaton. More...
class  Intersection
 Dummy class for including intersection functions. More...
class  InvDepthPoint
 Represents a 3D point parameterized by inverse depth in the host frame. More...
class  InvisibleButton
 A button that is completely invisible. More...
class  IOFactory
 A service that provides Import/Export functionality for a model hierarchy. More...
class  IOFactoryBuilder
 Generates boilerplate header and source files for a new IOFactory subclass, enabling file format read/write support in the NDEVR IO system. More...
class  IPWidget
 A simple widget for entering in an IP address. More...
class  IredesPatternFactory
 An IOFactory implementation for reading and writing IREDES (International Rock Excavation Data Exchange Standard) drill pattern files. More...
class  ItemDownloader
 Used for Downloading resources from a network. More...
class  JacobianWorkspace
 provide memory workspace for computing the Jacobians More...
class  JorvikTotalStation
 Represents the Jorvik Total Station, a 3D scanner with advanced measurement capabilities. More...
class  Joystick
 A joystick that allows the user to move around, reporting the vector of the stick, relative to the center of the joystick. More...
class  JoystickSettings
 Settings that define how a Joystick will behave. More...
class  JoystickSettingsDialog
 A dialog which allows the user to set sensitivity and other properties of a Joystick object. More...
class  JSONNode
 JavaScript Object Notation or JSON is an open - standard file format that uses human - readable text to transmit data objects consisting of attribute–value pairs and array data types(or any other serializable value). More...
class  JSONToStringHelper
 Helper template for converting a JSON string value to a specific type. More...
class  JSONToStringHelper< Angle< t_type > >
 Template specialization of JSONToStringHelper for Angle types, converting from degrees. More...
class  JSONToStringHelper< String >
 Template specialization of JSONToStringHelper for String, returning a StringView directly. More...
class  JSONToStringHelper< Time >
 Template specialization of JSONToStringHelper for Time, supporting multiple JSON time formats. More...
class  KeyController
 A top-level controller that dispatches key events to registered sub-controllers. More...
class  KeyControllerBase
 Forward declaration for the camera class. More...
class  KeyEvent
 Describes a user key press event used to trigger behavior in the NDEVR API. More...
class  KeyFrame
 A keyframe in the SLAM map, derived from Frame. More...
class  KeyFrameDatabase
 Database of keyframes for place recognition and relocalization. More...
class  KeyFrameMap
 Manages the visualization of keyframes in the design model. More...
struct  KeyOption
 An action that can be tied to a specific KeyPress within the software. More...
class  Keypad
 A popup for showing a virtual keyboard or keypad. More...
class  KeypadSettings
 Generic Settings for keypad including scales and when to show the keypad. More...
class  KeyPointMap
 Manages the visualization of map points in the design model. More...
class  KeystrokeWidget
 Allows the user to assign a keystroke to an action by displaying a button with the current keystroke assignment that when clicked, records a new keyboard assignment. More...
class  KMLFactory
 Reads and writes KML/KMZ geographic markup files using the IOFactory interface. More...
class  LABColor
 Forward declaration of the NDEVR translated string class. More...
class  LandXMLFactory
 Reads and writes LandXML files: http://www.landxml.org/About.aspx. More...
class  LanguageEditor
 Allows the user to adjust translation values for a given language. More...
class  LanguageHighlighter
 Syntactically highlights translations. More...
class  LASFactory
 Provides support for reading and writing to LAS and LAZ point cloud files using the FactoryIO interface. More...
class  LASPerformanceFactory
 Provides support for reading and writing to LAS and LAZ point cloud files using the FactoryIO interface. More...
class  LatLonUnit
 A specific unit that can convert between coordinate projections. More...
struct  LayerCacheObject
 Stores cached information for the LayerModel. More...
class  LayerCombo
 A combo box that displays and allows selection of layers from the scene. More...
struct  LayerData
 Layer information shared with CAD. More...
class  LayerEditor
 A popup Editor dialog for showing options or information related to Layer model objects. More...
class  LayerModel
 Used for showing Layers in a table using the QAbstractItemModel interface. More...
class  LayerSelector
 A widget that allows the user to assign a layer to one or more design objects. More...
class  LayerTable
 A table showing a list of Layers. More...
class  LayerWidget
 A widget that allows the user to set or interface with the current layer. More...
struct  LeaderData
 logic for storing a leader in a CAD-friendly way for exporting and importing. More...
class  LEDLightWidget
 Displays a simple light widget that can be set to blink or change colors. More...
class  LibAssert
 The default way to make Assert statements within the NDEVR API. More...
class  LibraryManager
 Manages loading Models from a group that is stored either on a remote server or locally on the disk in a compressed or uncompressed folder. More...
class  LibraryWidget
 Allows the user to select Models or Materials from a list to add to the scene. More...
class  Light
 A Device responsible for turning on and off a light source. More...
struct  LinearDimension
 A CAD measurement similar to DistanceMeasurementModel. More...
class  LinearSolverCCS
 basic solver for Ax = b More...
class  LinearSolverDense
 linear solver using dense cholesky decomposition More...
class  LinearSolverEigen
 linear solver which uses the sparse Cholesky solver from Eigen More...
struct  LineData
 A CAD-friendly way to store line segment information. More...
class  LineEditResourceSetter
 A basic class for helping convert a Value into a resource. More...
class  LineEditResourceSetter< Angle< fltp08 >, ObjectInfo< Angle< fltp08 > >::Number >
 Specialization of LineEditResourceSetter for Angle<fltp08>, converting via internal angle representation. More...
class  LineEditResourceSetter< Angle< sint04 >, ObjectInfo< Angle< sint04 > >::Number >
 Specialization of LineEditResourceSetter for Angle<sint04>, converting via internal angle representation. More...
class  LineEditResourceSetter< t_type, true >
 Specialization of LineEditResourceSetter for numeric types, performing direct casts. More...
class  LineEditResourceSetter< TimeSpan, ObjectInfo< TimeSpan >::Number >
 Specialization of LineEditResourceSetter for TimeSpan, converting via elapsed seconds. More...
struct  LineElevationRequest
 Used with ElevationService to request elevations over a polyline at set intervals. More...
class  LineIterator
 A class to easily iterate each line segment over a Geometry of lines. More...
class  LineOfSight
 A Model which represents everything that is visible from a certain vantage point. More...
struct  LineOfSightArgs
 Configuration parameters used to set up a LineOfSight analysis Model. More...
class  LineOfSightEditor
 A popup Editor dialog for showing options or information related to LineOfSight model objects. More...
class  LineOfSightTable
 A table showing a list of LineOfSights. More...
class  LineSegment
 Class: LineSegment. More...
struct  LineTypeData
 information for a type of line in CAD More...
class  LineworkMaterialEditor
 A popup Editor dialog for showing options or information related to Materials used with outlines or linework such as pixel thickness. More...
class  LocalApplicationLauncher
 Forward declaration for pipe-based inter-process communication. More...
class  LocalApplicationLauncherThread
 Launches an external application on a separate thread. More...
class  LocalBattery
 Allows the software to get information about local system batteries. More...
class  LocalCameraSettingsDialog
 A dialog widget for configuring local camera settings such as resolution and format. More...
class  LocalMapping
 Manages local map building, keyframe processing, and local bundle adjustment. More...
class  LocalPhysicalCameraView
 Provides access to a local camera on the system, such as a webcam or camera for a phone. More...
class  LocalPhysicalCameraViewFactory
 Provides an interface to PhysicalCameraViewFactory for creating a LocalPhysicalCameraView. More...
class  LocalVideoRenderer
 A QGraphicsVideoItem subclass that provides custom rendering for local camera video streams. More...
struct  LocationElevationUnit
 An Unit that has both a location and elevation (Think Lat/Lon which has meters for elevation). More...
class  LocationOperations
 A Model which contains logic for dynamically setting the location of an object relative to information that might dynamically change. More...
class  LockAnalyzerThread
 Used to check for and resolve potential deadlocks or resource starvation across threads. More...
class  Log
 Serves as the primary program interface for processes to report issues and allows any number of LogStreams to subscribe and receive the log information in real-time. More...
class  LogManager
 A class that has any number of children that also feed into the log. More...
class  LogManagerDialog
 A dialog which shows multiple log views, where each log is a tab. More...
class  LogMessage
 A class that allows for specific log information to be conveyed to a InfoPipe object including information about severity and timestamp information. More...
class  LogPtr
 A light-weight wrapper that will be a no-op if there is not a valid log reference, and logs otherwise. More...
class  LogStream
 A listener that receives and processes log messages and progress updates from an InfoPipe. More...
class  LogView
 A table showing a specific log that allows the user to scroll around to view various log entries. More...
class  LogViewTable
 A model for creating a table that displays logged records. More...
class  LoopClosing
 Detects and corrects loop closures and map merges. More...
class  LoopedAutomatedTest
 A type of AutomatedTest that repeatedly loops until stopped by the user. More...
class  LUDecomposition
 Logic for performing LU Decomposition https://en.wikipedia.org/wiki/LU_decomposition. More...
class  MachineID
 Logic for retrieving specific details about the machine this software is running on. More...
class  MadgwickOptions
 Configuration options for the Madgwick orientation filter simulation. More...
class  MadgwickOrientationSensor
 Used to calculate madgick orientation given sensor streams for gyro and optionally magnetometer(s) and accelerometer(s). More...
class  MadgwickSimulationSettings
 A widget providing settings and controls for configuring and running a Madgwick filter simulation. More...
class  MadgwickSimulator
 A simulated device that generates IMU data and runs a Madgwick orientation filter to test and visualize orientation estimation behavior. More...
class  MadgwickSimulatorCharts
 Manages chart visualizations for Madgwick sensor fusion simulator data, displaying accelerometer, gyroscope, and absolute orientation over time. More...
struct  MagicDiv
 Precomputes a magic multiplier for fast compile-time division by the constant D, avoiding expensive runtime division instructions. More...
class  MagneticCalibrationFactory
 IOFactory interface for reading and writing MagneticCalibrationData to files. More...
class  MagneticCalibrationSpreadsheet
 IOFactory interface for reading and writing data from magnetometer calibration checks to excel files. More...
class  MagneticDeclinationDialog
 Dialog which allows user to set or calculate the magnetic declination. More...
class  MagneticDeclinationDialogFactory
 Allows program-wide registration of a magnetic dialog to display when user should adjust magnetic declination. More...
class  MagnetometerCalibrationDialog
 Dialog which allows user to edit or create a MagneticCalibrationData object. More...
class  MagnetometerWidget
 Widget for displaying the live state of a magnetometer object. More...
class  MainGPSManager
 The central manager for GPS sensors in the application, handling sensor lifecycle, connection management, quality settings, and INI persistence. More...
class  MainWindow
 The primary Window within the NDEVR API. More...
class  MainWindowPopupWidget
 A popup widget within the NDEVR API often used to show confirmation dialogs. More...
class  ManagedDesignCommand
 A DesignCommand subclass that dispatches common design operations based on a ManagedCommandType enum value and serialized string parameters. More...
struct  Manual
 Contains information for adding a manual to the software, usually shown in the "About" page. More...
class  ManualManager
 Manages all available manuals in the software. More...
class  Map
 Represents a single SLAM map containing keyframes and map points. More...
class  MapPoint
 A 3D point in the SLAM map observed by multiple keyframes. More...
struct  MapPointProjection
 Projects a map point into a frame and checks frustum visibility. More...
class  MarchingCubesTriangulation
 GeometrySurfacing implementation using the Marching Cubes algorithm for isosurface extraction. More...
class  MarginalCovarianceCholesky
 computing the marginal covariance given a cholesky factor (lower triangle of the factor) More...
class  Material
 Container responsible for storing and setting the appearance of a Model or Geometry within the NDEVR API 3D environment. More...
class  MaterialPropertySlider
 Can adjust the properties of a material using a QCustomSlider widget. More...
class  MaterialRaster
 Stores information for painting pixels at a time into a 2D texture. More...
class  MaterialRasterBase
 Base class for painting pixels at a time into a 2D texture. More...
class  MaterialRasterFactory
 Creates rasters for converting points and directions into 2D images. More...
struct  MaterialUVImageOptions
 Provides CAD information for managing images attached to a Material. More...
struct  MaterialUVOptions
 UVOptions used for interfacing with CAD, similar to those used by a Material object. More...
class  MaterialWidget
 A simple widget showing some visual properties of a Material or Model. More...
class  Matrix
 Templated logic for doing matrix multiplication. More...
struct  MatrixDefinitions
 Provides common projection, view, and rotation matrix construction functions. More...
class  MatrixEditor
 A simple widget that shows a modifiable 4x4 matrix and corresponding widgets for editing a 4x4 matrix. More...
class  MatrixFunctions
 Provides static utility functions for solving best-fit and affine matrix transformations. More...
class  MatrixInverter
 Templated logic for inverting a matrix based on the number of rows and columns. More...
class  MatrixStructure
 representing the structure of a matrix in column compressed structure (only the upper triangular part of the matrix) More...
struct  MatrixUnit
 A unit that has a complex rotational offset. More...
class  MD5
 Logic for creating an MD5 hash. More...
struct  MD5_CTX
 Struct for storing md5 information. More...
struct  MeasurementOptions
 Stores ApplicationOptions related to user preferences for measurements. More...
class  MeasurePointTypeCombo
 Provides a static utility to configure a QCustomComboBox with measurement point symbol types such as square, round, arrow, and various crosshair combinations. More...
struct  MediaDeviceInfo
 Stores information about a media capture device (camera). More...
class  Median
 A dummy class for including optimized median functions. More...
struct  MedianFilterPushConstants
 Push constants for median filter shader. More...
struct  MercatorImage
 Information output from a specific Aerial Tile request. More...
class  MercatorImageManager
 Place where service can be registered to provide aerial image support. More...
struct  MercatorImageRequest
 Contains the information for requesting a 2D top-down view of a geographic location to be used with a AerialImage service such as google earth. More...
class  MercatorWebImageManager
 Manages web-based Mercator tile fetching and image composition for aerial imagery. More...
class  MLPnPsolver
 Solves the Perspective-n-Point problem using the MLPnP algorithm with RANSAC. More...
class  Model
 A core class that represents a node on model hierarchy. More...
class  ModelChooserCombo
 A combo box that allows the user to select from a filtered list of Models in the scene. More...
class  ModelCommandsWidget
 A widget for interfacing with ModelEditController to allow the user to edit or modify objects in the 3D environment. More...
class  ModelEditController
 Takes user input in order to modify a model in real-time. More...
class  ModelFactory
 The core logic for importing and exporting files from the model hierarchy. More...
class  ModelFileDialog
 Shows options related to an import or export that utilizes the IOFactory methods to write or read properties. More...
class  ModelFunction
 A Model function allows a user to interact with the program to perform a task on models. More...
class  ModelIterator
 A base class for easily traversing a model hierarchy, applying an overridden function at each level or for each object. More...
class  ModelMaterialEditor
 A popup Editor dialog for showing options or information related to a Model's Material children. More...
class  ModelMaterialsDialog
 A popup Editor dialog for showing options or information related to showing all of the materials that a Model might have. More...
class  ModelOffsetCommandWidget
 Allows the user to offset a model to a different location. More...
class  ModelOrientationEditor
 A popup Editor dialog for showing options related to the Orientation of a specific Model. More...
class  ModelSelectionTree
 A tree view widget for displaying and selecting Models from the scene. More...
struct  ModelTableColumnSpec
 Provides the ability to pull specific data from a DesignObjectLookup for display in a column of a table. More...
class  ModelTableDelegate
 A QItemDelegate for showing model properties in a QTableView. More...
class  ModelTileCommand
 A DesignCommand that applies tiling options to one or more target models, creating or updating ModelTileGroup instances. More...
class  ModelTileGroup
 A Model subclass that manages tiling (repeating) a source model along a path or surface. More...
class  ModelTileGroupModelLogic
 Logic for handling ModelTileGroup in the NDEVR space, including dialogs and imports. More...
class  ModelTileTable
 A table widget for displaying and managing ModelTileGroup children of a parent model. More...
struct  Module
 Base class for extensions, typically added as external DLL's that can modify or enhance the behavior of the software. More...
class  ModuleBuilder
 Scaffolds a complete NDEVR module from scratch, generating DLLInfo, module header, module source, Visual Studio project, and filters files. More...
struct  ModuleConfiguration
 Stores all information relating to a particular feature or resource included by a Module. More...
struct  ModuleDependency
 A dependency of a Module. More...
struct  ModuleFeatureBase
 describes the Module or feature to the end user. More...
class  ModuleManager
 Logic for the program-wide storage and execution of Modules. More...
class  ModuleResourceManager
 Stores all dependencies for a combination of modules that make up a complete software package. More...
struct  ModuleResources
 Manages module resources for building installers, including file offloading and icon retrieval. More...
class  ModulesDialog
 Allows the user to see which Modules are available and toggle them on or off, when Modules are toggleable. More...
class  Motor
 A motor is a device which produces rotational spin. More...
class  MotorDeploymentWidget
 Provides an interface for controlling a motor involved with a particular Deployment. More...
class  MouseController
 Contains logic for executing actions based on user mouse inputs. More...
class  MouseControllerBase
 A base class for adding functionality to the user mouse inputs. More...
struct  MouseControllerEvent
 A wrapper for a mouse event that is used by MouseControllerBase. More...
class  MouseEditorWidget
 Allows the end user to set default mouse buttons and behavior for navigating in a Viewport. More...
class  MouseEvent
 Describes a mouse or touch input event with position, button, and modifier information. More...
class  MovementPath
 Logic for moving an object across a path of both position, and optionally, orientation. More...
struct  MTextData
 Stores text data that may have an attachment point and direction for interfacing with CAD. More...
class  MultiRLock
 Acquires read locks on multiple RWLocks simultaneously in a deadlock-safe order. More...
class  MultiWLock
 Acquires write locks on multiple RWLocks simultaneously in a deadlock-safe order. More...
class  NCCustomReport
 A customizable NCReport subclass that applies NDEVR ReportOptions and provides metadata (name, icon, description) for report selection UI. More...
class  NDEVRApplication
 The root class of the NDEVR Application. More...
class  NDEVRChart
 Default base chart for 2D line or scatter plots within the NDEVR API. More...
class  NDEVRChartModel
 A Model subclass that provides charting and data visualization capabilities. More...
struct  NDEVRConnectionData
 Holds the state of a single NDEVR network connection, including transmit and receive packets. More...
class  NDEVRCorrespondenceEstimation
 CorrespondenceEstimationBackprojection computes correspondences as points in the target cloud which have minimum More...
class  NDEVRGraphicsManagerFactory
 Stores a default rendering engine to be used with the application, with logic for finding a enabled Graphics Engine and using it to create a GraphicsManager. More...
class  NDEVRIconEngine
 Used to render any icons or fetch any pixmaps within the software. More...
class  NDEVRMouseManager
 Handles converting QEvents into NDEVR MouseEvents and queuing them up appropriately. More...
struct  NDEVRPacketHeader
 Fixed-size header prepended to every NDEVR data packet for framing and integrity checking. More...
class  NDEVRProxyStyle
 Responsible for setting up the core style of the application including size of various widgets and colors. More...
class  NDEVRRadialChart
 Default radial (round) base chart for 2D line or scatter plots within the NDEVR API. More...
class  NDEVRRibbon
 The Ribbon that typically appears on the top of the window or, in touch mode, to the side of the window. More...
struct  NDEVRRibbonOptions
struct  NDEVRServerInfo
 Contains the address, credentials, and security flag needed to connect to an NDEVR server. More...
class  NDEVRServerManager
 Manages a list of NDEVR OWL servers and persists them through INI configuration. More...
class  NDEVRUpdateChecker
 Allows the application to check a given location for an update.txt file which it can then use to download and update the software. More...
class  NDEVRWindow
 A top-level widget. More...
class  NDVArchiveManager
 Manages file archives which are compressed NDV files merged for convenience. More...
class  NDVFactory
 Reads and writes NDV files. More...
struct  NDVHeader
 Header structure for the NDV binary file format. More...
class  NDVSetupCallback
 A callback service used to modify Model objects when they are imported using the NDVFactory. More...
class  NetworkAccessManager
 Provides an interface for accessing resources on the internet. More...
class  NetworkRequest
 A request for data or information from a network. More...
class  NewMaterialCommand
 A DesignCommand that creates a new Material and optionally associates it with a target object. More...
class  NewModelCommand
 A DesignCommand that creates a new Model to some specification. More...
class  NewProjectTest
 Provides an AutomatedTest for repeatedly creating and destroying Projects. More...
struct  NMEAErrorInfo
 Holds position error statistics extracted from GST and related NMEA sentences. More...
struct  NMEAInfo
 The complete accumulated NMEA data state including satellite info, error data, INS data, position, and timing. More...
struct  NMEAINSInfo
 Holds INS (Inertial Navigation System) orientation data extracted from proprietary NMEA sentences. More...
class  NMEAReader
 Parses raw NMEA data streams, splitting them into individual sentences and dispatching them to registered NMEASentenceReader instances. More...
class  NMEASentenceReader
 Abstract base class for parsing specific NMEA sentence types (e.g. More...
struct  NMEAUpdateInfo
 Describes what was updated after processing an NMEA sentence, including which data categories changed and any error status. More...
struct  NtpAuthenticationInfo
 Optional authentication extension of an NTP packet. More...
class  NtpClient
 NTP client that queries a remote NTP server for the current time. More...
struct  NtpFullPacket
 Full NTP packet combining mandatory fields and optional authentication. More...
struct  NtpPacket
 Mandatory part of an NTP packet, containing all required fields. More...
struct  NtpPacketFlags
 NTP packet flags stored in the first byte of the packet. More...
class  NtpReply
 Represents a parsed NTP reply received from an NTP server. More...
struct  NtpTimestamp
 A 64-bit NTP timestamp with seconds and fractional parts since Jan 1, 1900. More...
class  NumberWriter
 Logic for writing to a number. More...
class  ObjectAllocator
 Allows for specific, custom logic for allocating an object. More...
class  ObjectAllocatorT
 Allows for specific, custom logic for allocating an object. More...
class  ObjectAllocatorT< t_index_type, false >
 The default object allocator for Buffers of non-primitive types that have destructors or memory on the heap. More...
class  ObjectAllocatorT< t_index_type, true >
 The default object allocator for Buffers of primitive types such as doubles or ints, where a constructor/destructor does not need to be called. More...
struct  ObjectChecker
 Used with QTDesignObject to check the type of an object. More...
struct  ObjectChecker< Camera >
 Specialization that checks if a UUID corresponds to a Camera. More...
struct  ObjectChecker< DesignObject >
 Specialization that checks if a UUID corresponds to any valid DesignObject. More...
struct  ObjectChecker< DesignSelection >
 Specialization that checks if a UUID corresponds to a DesignSelection. More...
struct  ObjectChecker< Geometry >
 Specialization that checks if a UUID corresponds to a Geometry. More...
struct  ObjectChecker< Material >
 Specialization that checks if a UUID corresponds to a Material. More...
struct  ObjectChecker< Model >
 Specialization that checks if a UUID corresponds to a Model. More...
struct  ObjectInfo
 Information about the object. More...
struct  ObjectInfo< Angle< fltp04 >, false, false >
 Information about an Angle object backed by a 4 byte floating point number. More...
struct  ObjectInfo< Angle< fltp08 >, false, false >
 Information about an Angle object backed by a 8 byte floating point number. More...
struct  ObjectInfo< Angle< sint04 >, false, false >
 Information about an Angle object backed by a signed 4 byte integer. More...
struct  ObjectInfo< bool, false, false >
 ObjectInfo specialization for the bool type. More...
struct  ObjectInfo< char, false, false >
 ObjectInfo specialization for the char type. More...
struct  ObjectInfo< DesignObject, false, false >
 Type trait specialization providing compile-time type information about DesignObject. More...
struct  ObjectInfo< Effect, false, false >
 Type trait specialization providing metadata about the Effect type. More...
struct  ObjectInfo< Geometry, false, false >
 Type trait specialization providing compile-time type information for Geometry objects. More...
struct  ObjectInfo< Material, false, false >
 Type trait specialization providing compile-time metadata about the Material type. More...
struct  ObjectInfo< Model, false, false >
 Type trait information for the Model class, indicating it is a primitive non-numeric type. More...
struct  ObjectInfo< PasswordString, false, false >
 Type trait specialization providing compile-time metadata for PasswordString. More...
struct  ObjectInfo< RGBColor, true, false >
 Type trait specialization providing compile-time metadata for RGBColor. More...
struct  ObjectInfo< Scene, false, false >
 Type trait specialization providing metadata about the Scene type for the NDEVR type system. More...
struct  ObjectInfo< StringView, false, false >
 ObjectInfo specialization for StringView, providing compile-time type trait information. More...
struct  ObjectInfo< t_type, false, false >
 Information about the object. More...
struct  ObjectInfo< t_type, false, true >
 ObjectInfo specialization for buffer types derived from BufferBase. More...
struct  ObjectInfo< t_type, true, false >
 Information about the object. More...
struct  ObjectInfo< Time, false, false >
struct  ObjectInfo< TimeSpan, false, false >
struct  ObjectInfo< UUID, true, false >
 Type trait specialization providing metadata about the UUID type, identifying it as a 16-dimensional primitive vector with string-like properties. More...
class  ObjectSorter
 Allows for sorting models when supported. More...
class  ObjectSorterManager
 Allows for sorting models when supported. More...
class  OfficersEditor
 Editor widget for managing officers involved in a transit incident. More...
class  OMFFactory
 Factory for reading and writing Open Mining Format (OMF) files. More...
class  OpacitySlider
 Can adjust the opacity of a material using a QCustomSlider widget. More...
class  OpenCloseTest
 Provides an AutomatedTest for repeatedly opening and closing a Project. More...
class  OpenCVImageRaster
 A MaterialRasterBase implementation that uses OpenCV for image stitching and raster compositing. More...
class  OpenCVMaterialRasterFactory
 A MaterialRasterFactory implementation that creates OpenCV-based raster instances. More...
class  OpenCVPhysicalCameraViewFactory
 A PhysicalCameraViewFactory that creates OpenCV/RealSense-based camera views. More...
class  OpenElevationService
 An ElevationService implementation that queries the Open Elevation API for terrain heights. More...
class  OpenGLBuffer
 Buffer for storing data in the OpenGL engine, usually for rendering. More...
class  OpenMP
 Dummy class for including OpenMP macros https://www.openmp.org/. More...
class  OpenMPMutex
 Dummy mutex for non-OpenMP builds. More...
class  OpenStreetMapWebMercatorTileService
 Fetches Web Mercator map tiles from OpenStreetMap raster tile servers. More...
class  OptechScannerConnection
 A Connection subclass that manages the network connection to an Optech scanner. More...
class  OptechScannerFactory
 A ScannerFactory that discovers and connects to Optech laser scanners on the network. More...
class  OptechScannerPositionSensor
 A PositionSensor implementation for Optech scanners that tracks instrument position using station/deployment models and orientation sensor data. More...
struct  OptimizableGraph
 This is an abstract class that represents one optimization problem. More...
class  OptimizationAlgorithm
 Generic interface for a non-linear solver operating on a graph. More...
class  OptimizationAlgorithmDogleg
 Implementation of Powell's Dogleg Algorithm. More...
class  OptimizationAlgorithmGaussNewton
 Implementation of the Gauss Newton Algorithm. More...
class  OptimizationAlgorithmLevenberg
 Implementation of the Levenberg-Marquardt optimization algorithm. More...
struct  OptimizationAlgorithmProperty
 describe the properties of a solver More...
class  OptimizationAlgorithmWithHessian
 Base for solvers operating on the approximated Hessian, e.g., Gauss-Newton, Levenberg. More...
struct  OptimizedSelection
 Stores the state and results of an indexed geometry selection operation. More...
class  Optimizer
 Provides graph optimization routines for the ORB-SLAM system. More...
struct  OptionalFeature
 Describes an optional software feature that can be enabled or disabled at runtime. More...
class  ORBextractor
 Extracts ORB features from images using an octree-based distribution. More...
class  ORBmatcher
 Matches ORB features between frames, keyframes, and map points. More...
class  OrbOptions
 Application options for ORB-SLAM image preprocessing. More...
class  OrbSLAM
 Main entry point for the ORB-SLAM3 system. More...
struct  OrbTrackingInfo
 Aggregates input and output data for a single tracking frame. More...
class  OrientationEditor
 A dialog where the user can set a 3D orientation of an object. More...
class  OrientationOperations
 Allows for easy manipulation of a Models orientation. More...
class  OrientationOperationsWidget
 A popup Editor dialog for showing options or information related to the orientation of an Object layer or Calibration. More...
struct  OrientationReading
 A single reading, typically used by a MadgwickOrientationSensor consisiting of input from all IMU sensors. More...
class  OrientationSensor
 Forward declaration for design object lookup service. More...
class  OrientationWidgetGNSSMainCallback
 GNSS callback for OrientationOperationsWidget that creates a GPS widget for orientation input. More...
class  OSInformation
 Contains information about an Operating System including versions and types. More...
struct  OSType
 Stores String variables reprenting the type of OS that will be supported by a particular module or resource. More...
struct  OverrideMatrixValue
 A timestamped camera matrix override value. More...
class  OWLActionPage
 Main action page widget for OWL server interactions. More...
class  OWLClientInterface
 High-level OWL server client that combines WebSocket communication with file transfer, credential management, and UI dialog coordination. More...
class  OWLCredentialsDialog
 Dialog for entering OWL server login credentials. More...
class  OWLDuplicateResolver
 Dialog for resolving duplicate file conflicts during OWL upload. More...
class  OWLExportDialog
 Dialog for exporting projects and files to an OWL server. More...
class  OWLFactory
 IOFactory subclass for reading and writing OWL file format used by the NDEVR server system. More...
class  OWLFileManager
 File management widget for browsing, opening, and managing files on an OWL server. More...
class  OWLLinkDisplay
 Widget that displays an OWL share link and allows saving the linked file. More...
class  OwlServerSettingsDialog
 Dialog for managing OWL server connections. More...
class  PacketListener
 Interface for objects that wish to receive NDEVR packet events and connection state changes. More...
class  PaintCommandWidget
 A widget that is shown when the user scales a 3D model. More...
class  PaperEditor
 A popup Editor dialog for showing options or information related to paper/print layout settings. More...
struct  PaperSpace
 Stores CAD details about PaperSpace or 2D document space. More...
class  PaperView
 Represents a paper/print layout view within the design, wrapping a Model with page-size, margin, and capture-region semantics for print or export workflows. More...
class  PaperViewModelLogic
 Logic for handling PaperView in the NDEVR space, including dialogs and imports. More...
class  Parameter
 Abstract base class for graph parameters that can be serialized. More...
class  Particle
 Used with CSF Cloth, The particle class represents a particle of mass that can move around in 3D space. More...
class  Password
 Model representing a stored password entry associated with a customer device. More...
class  PasswordString
 When passwords are used inside the NDEVR engine, we don't want them logged or visible. More...
struct  PatchMatchCamera
 GPU-accelerated PatchMatch depth estimation using Vulkan compute shaders. More...
struct  PatchMatchGpuCache
 GPU buffer cache for reuse across multiple estimateDepthMap calls. More...
struct  PatchMatchPushConstants
 Push constant layout (must match GLSL layout exactly). More...
class  Path
 A monotone cubic Hermite spline path that interpolates values over time. More...
class  PathSliceIterator
 Slices geometry at evenly spaced intervals along a specified polyline path, producing cross-section slices perpendicular or parallel to the path direction. More...
class  PCLFunctions
 Utility class providing conversions between NDEVR and PCL data types, plus normal and keypoint calculations. More...
class  PCLRegistration
 Point cloud registration (alignment) engine using PCL's ICP algorithm. More...
class  PCLRTreeWrapper
 Adapts the NDEVR RTree spatial index to the PCL search interface for nearest-neighbor queries. More...
class  PDFFactory
 Writes to a PDF file using the IOFactory interface. More...
struct  PendingAction
 Represents a server request that has been sent and is awaiting a response. More...
struct  Permission
 Information about a requested OS-permission typically requested at install time. More...
class  PermissionHandler
 Abstract interface for platform-specific permission handling. More...
class  PermissionManager
 Centralized manager for checking and requesting application permissions. More...
class  PerspectiveListNormalFlipper
 A class that flips a surface generated normals from point clouds or lines given based around a path of a perspective. More...
class  PhoneNumberWidget
 Editor widget for viewing and editing a telephone number. More...
class  PhotoDrapingSettings
 A widget for configuring photo draping (texture projection) settings during scanning, including raster resolution and aspect ratio. More...
class  PhotogrammetryDialog
 Two-page dialog for configuring and running a drone photogrammetry session. More...
class  PhotogrammetryFeatures
 Handles feature extraction (SIFT/AKAZE) and feature matching (cascade hashing / brute force). More...
class  PhotogrammetryGPSAlign
 Computes a GPS-based similarity transform from EXIF GPS positions and SfM camera centres. More...
class  PhotogrammetryOptions
 Persistent settings for a drone photogrammetry processing run. More...
struct  PhotogrammetryPointColor
 RGB color for a reconstructed point. More...
struct  PhotogrammetryResult
 Holds the raw output of a completed photogrammetry run before it is committed to the scene. More...
class  PhotogrammetryRibbonButton
 Ribbon widget containing the "Drone Photogrammetry" launch button. More...
class  PhotogrammetryRunner
 Drives the OpenMVG + OpenMVS photogrammetry pipeline entirely in memory. More...
class  PhotogrammetrySfM
 Runs sequential Structure-from-Motion with GPS-aware initial pair selection. More...
class  PhysicalCameraView
 A Viewport that represents a physical camera stream, or real world camera view. More...
class  PhysicalCameraViewFactory
 Factory for creating PhysicalCameraView instances and querying supported output formats. More...
class  PhysicalCameraViewSettings
 Settings for saving or displaying camera data. More...
struct  PixelFormat
 Describes the pixel format of a VNC remote framebuffer, including color depth, endianness, and per-channel bit layout. More...
class  PixelThicknessSlider
 Can adjust the pixel thickness of a material using a QCustomSlider widget. More...
class  PixmapResolver
 Base class for logic that can be used to resolve a Pixmap resource and turn it into a QPixmap for use by the NDEVR API. More...
struct  PlacementData
 Data about where to place an object, used for interfacing with CAD. More...
class  Plane
 Logic for a given plane or N-dimensions. More...
struct  PlatformType
 Stores String variables reprenting the type of platform CPU configuration that will be supported by a particular Module or resource (x64, x86, arm etc). More...
class  PNGImageFactory
 An ImageFormatHandler implementation for reading and writing PNG image files. More...
class  PointContainer
 A templated container for 3D point cloud data with per-point positions, typed attributes, and integer weights. More...
struct  PointData
 Point data stored in a friendly way for interfacing with CAD. More...
class  Pointer
 Provides shared ownership of a dynamically allocated object. More...
struct  PointerCore
 Used by Pointer to store the reference count of the pointer. More...
struct  PointPipeline
 A ring buffer of RasterFrames used to pipeline raster point processing across multiple stages. More...
class  PointScannerKeyController
 Keyboard shortcut controller for the point scanner dialog. More...
class  PointScannerOptions
 Persistent settings for the 3D point scanner, controlling scanner behavior, IMU parameters, camera options, deployment options, and communication settings. More...
class  PointWidget
 Allows the user to input an N-dimensional point (up to 4 dimensions) with an optional unit. More...
class  PointWidgetGNSSMainCallback
 GNSS callback for PointWidget that creates a GPS widget for position input. More...
class  PolarisScanner
 A Scanner3D implementation for the Optech Polaris terrestrial laser scanner, providing full scan control, survey management, GPS, compass, inclinometer, and battery monitoring via the Polaris Control API. More...
class  Polygon
 An N-sided polygon. More...
class  Polyline
 A sequence of connected line segments defined by ordered vertices along a path. More...
struct  PolylineData
 logic for storing a polyline data in a CAD-friendly way for exporting and importing. More...
class  PolylineMaker
 Given random line segments, constructs a polyline when the vertices match. More...
struct  PolylineSliceCache
 Internal cache for storing intermediate data during a polyline slice operation, including collected triangles, points, spatial indices, and progress state. More...
class  PolylineSliceEditor
 Allows for visualization of individual 2D slices of polylines that lie on the same plane. More...
class  PolylineSliceIterator
 Abstract interface for generating slice planes from a bounding region. More...
class  PolylineSlicer
 Logic for slicing one or more Model/Geometry objects into polyline cross-section Model/Geometry objects based on configured slice criteria. More...
struct  PopupInfo
 Class which is used to pass arguments and requests for creating a popup dialog or widget. More...
class  PopupManager
 Responsible for displaying widgets that want to be in their own window. More...
struct  PositionReading
 A single position reading from the RealSense T265 tracking camera. More...
class  PositionSensor
 Forward declaration for distance encoder device. More...
class  PrimitiveLineSegmentEditor
 Shown when user is editing lines, to assist them in adjusting the line in 3D space. More...
class  PrimitiveVertexEditor
 Allows the user to adjust properties for a particular Geometry Vertex node. More...
class  PrintPreview
 A dialog that shows a PrintPreview of a given widgets, reports, or images. More...
class  ProgressInfo
 Used with InfoPipe to signal that the system will be using progress. More...
struct  ProgressSource
 Represents a named progress source with an identifier and completion percentage. More...
class  ProgressWidget
 Displays the progress, either horizontally as a bar or as a round spin dial. More...
class  ProgressWidgetDemo
 Provides a demonstration of the ProgressWidget with animated previews and configurable options. More...
class  Proj4CoordinateConverter
 A CoordinateConverter implementation using the PROJ library for geodetic transformations. More...
class  Proj4CoordinateConverterFactory
 A factory that creates Proj4CoordinateConverter instances and can register as the default engine. More...
class  Project
 A Model which represents a user-project. More...
class  ProjectEditor
 A popup Editor dialog for showing options or information related to Project model objects. More...
class  ProjectFileManager
 Manages writing to the NDV file and any folder operations for projects. More...
class  PropertiesButton
 A button that opens the properties dialog for a given design object when clicked. More...
class  PropertyChangeListener
 Listens for a change of a particular property to a given target (DEPRECIATED). More...
class  PropertyChangeManager
 Used to listen for changes to properties (DEPRECIATED). More...
class  PropertyChannelFilter
 Filters geometry based on property channel values attached to the geometry. More...
class  PropertyColumnInterface
 Provides access to the TableColumn and row index for a given property enum value. More...
class  PropertyColumnInterface< NDPG >
 Provides column access for NDPG geometry properties within the design database. More...
class  PropertyColumnInterface< NDPM >
 Provides column access for NDPM material properties within the design table system. More...
class  PropertyColumnInterface< NDPN >
 Provides column-level access to NDPN model properties in the design database. More...
class  PropertyColumnInterface< NDPOC >
 Specialization of PropertyColumnInterface for the NDPOC calculated property enum. More...
class  PropertyInterface
 Typed interface for getting and setting design object properties by enum. More...
class  PropertyInterface< NDPE >
 Provides typed access to NDPE effect properties on a DesignObject. More...
class  PropertyInterface< NDPN >
 Provides typed access to NDPN model properties via get/set on DesignInfo. More...
class  PropertyInterface< NDPO >
 Specialization of PropertyInterface for the NDPO property enum. More...
class  PropertyInterface< PaperViewProperty >
 Provides a compile-time property interface for reading and writing PaperViewProperty values on a DesignInfo object. More...
struct  PropertySpec
 Maps a compile-time property enum value to its corresponding C++ storage type. More...
struct  PropertySpec< NDPE::destroy_when_finished >
 Type mapping for destroy_when_finished property. More...
struct  PropertySpec< NDPE::end_time >
 Type mapping for end_time property. More...
struct  PropertySpec< NDPE::extra_transform >
 Type mapping for extra_transform property. More...
struct  PropertySpec< NDPE::frequency >
 Type mapping for frequency property. More...
struct  PropertySpec< NDPE::is_active >
 Type mapping for is_active property. More...
struct  PropertySpec< NDPE::start_time >
 Type mapping for start_time property. More...
struct  PropertySpec< NDPE::target_value_a >
 Type mapping for target_value_a property. More...
struct  PropertySpec< NDPE::target_value_b >
 Type mapping for target_value_b property. More...
struct  PropertySpec< NDPN::calculation_ignored >
 PropertySpec specialization mapping NDPN::calculation_ignored to bool. More...
struct  PropertySpec< NDPN::can_select_children >
 PropertySpec specialization mapping NDPN::can_select_children to bool. More...
struct  PropertySpec< NDPN::child_base_ptr >
 PropertySpec specialization mapping NDPN::child_base_ptr to DesignObjectBase*. More...
struct  PropertySpec< NDPN::complete_transform >
 PropertySpec specialization mapping NDPN::complete_transform to Matrix<fltp08>. More...
struct  PropertySpec< NDPN::export_ignored >
 PropertySpec specialization mapping NDPN::export_ignored to bool. More...
struct  PropertySpec< NDPN::fixed_bounding_box >
 PropertySpec specialization mapping NDPN::fixed_bounding_box to Bounds<3, fltp08>. More...
struct  PropertySpec< NDPN::geometry_base_ptr >
 PropertySpec specialization mapping NDPN::geometry_base_ptr to DesignObjectBase*. More...
struct  PropertySpec< NDPN::global_bounds >
 PropertySpec specialization mapping NDPN::global_bounds to Bounds<3, fltp08>. More...
struct  PropertySpec< NDPN::global_selection_bounds >
 PropertySpec specialization mapping NDPN::global_selection_bounds to Bounds<3, fltp08>. More...
struct  PropertySpec< NDPN::inherited_flags >
 PropertySpec specialization mapping NDPN::inherited_flags to Vector<32, bool>. More...
struct  PropertySpec< NDPN::material_base_ptr >
 PropertySpec specialization mapping NDPN::material_base_ptr to DesignObjectBase*. More...
struct  PropertySpec< NDPN::material_mode >
 PropertySpec specialization mapping NDPN::material_mode to uint01. More...
struct  PropertySpec< NDPN::model_color >
 PropertySpec specialization mapping NDPN::model_color to RGBColor. More...
struct  PropertySpec< NDPN::parent_base_ptr >
 PropertySpec specialization mapping NDPN::parent_base_ptr to DesignObjectBase*. More...
struct  PropertySpec< NDPN::parent_matrix_flags >
 PropertySpec specialization mapping NDPN::parent_matrix_flags to BitFlag. More...
struct  PropertySpec< NDPN::personal_inherited_flags >
 PropertySpec specialization mapping NDPN::personal_inherited_flags to Vector<32, bool>. More...
struct  PropertySpec< NDPN::type >
 PropertySpec specialization mapping NDPN::type to StringView. More...
struct  PropertySpec< NDPN::visible_box >
 PropertySpec specialization mapping NDPN::visible_box to Bounds<3, fltp08>. More...
struct  PropertySpec< NDPO::allow_interactions >
 PropertySpec: allow_interactions is stored as bool. More...
struct  PropertySpec< NDPO::application_locked >
 PropertySpec: application_locked is stored as bool. More...
struct  PropertySpec< NDPO::applied_filters >
 PropertySpec: applied_filters is stored as StringView. More...
struct  PropertySpec< NDPO::asc_modified_time >
 PropertySpec: asc_modified_time is stored as Time. More...
struct  PropertySpec< NDPO::author >
 PropertySpec: author is stored as StringView. More...
struct  PropertySpec< NDPO::bounding_box >
 PropertySpec: bounding_box is stored as Bounds<3, fltp08>. More...
struct  PropertySpec< NDPO::bounds_ignored >
 PropertySpec: bounds_ignored is stored as bool. More...
struct  PropertySpec< NDPO::category >
 PropertySpec: category is stored as StringView. More...
struct  PropertySpec< NDPO::compressed_data >
 PropertySpec: compressed_data is stored as StringView. More...
struct  PropertySpec< NDPO::creation_software >
 PropertySpec: creation_software is stored as StringView. More...
struct  PropertySpec< NDPO::creation_time >
 PropertySpec: creation_time is stored as Time. More...
struct  PropertySpec< NDPO::deletion_allowed >
 PropertySpec: deletion_allowed is stored as bool. More...
struct  PropertySpec< NDPO::desc_modified_time >
 PropertySpec: desc_modified_time is stored as Time. More...
struct  PropertySpec< NDPO::description >
 PropertySpec: description is stored as StringView. More...
struct  PropertySpec< NDPO::design_type >
 PropertySpec: design_type is stored as uint01 bitflag. More...
struct  PropertySpec< NDPO::editable_description >
 PropertySpec: editable_description is stored as bool. More...
struct  PropertySpec< NDPO::file >
 PropertySpec: file is stored as StringView. More...
struct  PropertySpec< NDPO::geometry_modified_time >
 PropertySpec: geometry_modified_time is stored as Time. More...
struct  PropertySpec< NDPO::guid >
 PropertySpec: guid is stored as UUID. More...
struct  PropertySpec< NDPO::icon >
 PropertySpec: icon is stored as StringView. More...
struct  PropertySpec< NDPO::is_application_owned >
 PropertySpec: is_application_owned is stored as bool. More...
struct  PropertySpec< NDPO::is_deleted >
 PropertySpec: is_deleted is stored as bool. More...
struct  PropertySpec< NDPO::is_focused >
 PropertySpec: is_focused is stored as bool. More...
struct  PropertySpec< NDPO::is_frozen >
 PropertySpec: is_frozen is stored as bool. More...
struct  PropertySpec< NDPO::is_selected >
 PropertySpec: is_selected is stored as bool. More...
struct  PropertySpec< NDPO::library_id >
 PropertySpec: library_id is stored as UUID. More...
struct  PropertySpec< NDPO::meta_data >
 PropertySpec: meta_data is stored as StringView. More...
struct  PropertySpec< NDPO::modified_time >
 PropertySpec: modified_time is stored as Time. More...
struct  PropertySpec< NDPO::name >
 PropertySpec: name is stored as StringView. More...
struct  PropertySpec< NDPO::search_terms >
 PropertySpec: search_terms is stored as StringView. More...
struct  PropertySpec< NDPO::selection_ignored >
 PropertySpec: selection_ignored is stored as bool. More...
struct  PropertySpec< NDPO::spacial_visible >
 PropertySpec: spacial_visible is stored as bool. More...
struct  PropertySpec< NDPO::transform >
 PropertySpec: transform is stored as Matrix<fltp08>. More...
struct  PropertySpec< NDPO::translated_string_data >
 PropertySpec: translated_string_data is stored as TranslatedString. More...
struct  PropertySpec< NDPO::tree_visible >
 PropertySpec: tree_visible is stored as bool. More...
struct  PropertySpec< NDPO::uncompressed_data >
 PropertySpec: uncompressed_data is stored as StringView. More...
struct  PropertySpec< NDPO::untranslated_string_data >
 PropertySpec: untranslated_string_data is stored as StringView. More...
struct  PropertySpec< NDPOC::author >
 PropertySpec: calculated author is stored as TranslatedString. More...
struct  PropertySpec< NDPOC::category >
 PropertySpec: calculated category is stored as TranslatedString. More...
struct  PropertySpec< NDPOC::creation_software >
 PropertySpec: calculated creation_software is stored as TranslatedString. More...
struct  PropertySpec< NDPOC::description >
 PropertySpec: calculated description is stored as TranslatedString. More...
struct  PropertySpec< NDPOC::name >
 PropertySpec: calculated name is stored as TranslatedString. More...
struct  PropertySpec< NDPOC::search_terms >
 PropertySpec: calculated search_terms is stored as TranslatedString. More...
struct  PropertySpec< PaperViewProperty::e_dots_per_meter >
 Property type specification: e_dots_per_meter maps to fltp04. More...
struct  PropertySpec< PaperViewProperty::e_margins >
 Property type specification: e_margins maps to Vector<4, fltp04>. More...
struct  PropertySpec< PaperViewProperty::e_page_size >
 Property type specification: e_page_size maps to Vector<2, fltp04>. More...
struct  PropertySpec< PaperViewProperty::e_world_bounds >
 Property type specification: e_world_bounds maps to Bounds<3, fltp08>. More...
class  ProxyModelViewFilter
 Filters and sorts Models from a ModelManager for views such as in a table or in a tree view. More...
class  PublicPrivateKey
 Manages an elliptic curve public/private key pair for asymmetric encryption and decryption. More...
class  QCaptureManager
 An interface used to manage multiple CaptureRequests and scedule their completion. More...
class  QCustomColorDialog
 A dialog devoted to allowing the user to select a custom color. More...
class  QCustomComboBox
 A compact way to present a list of options to the user. More...
class  QCustomDial
 Provides a rounded range control (like a speedometer or potentiometer). More...
class  QCustomDockWidget
 Provides a wrapper for a widget that can be docked inside a Container or floated as a top-level window within the application. More...
class  QCustomImage
 An Image implementation that wraps a QImage, bridging the NDEVR Image interface with Qt. More...
class  QCustomLabel
 Displays translated text. More...
class  QCustomLineEdit
 A line edit allows users to enter and edit a single line of plain text with useful editing functions, including undo and redo, cut and paste, and drag and drop. More...
class  QCustomMessageBox
 A message box displays a primary text to alert the user to a situation, an informative text to further explain the situation, and an optional detailed text to provide even more data if the user requests it. More...
class  QCustomProgressBar
 Allows for showing of progress bar in horizontal format. More...
class  QCustomScrollArea
 A scroll area is used to display the contents of a child widget within a frame. More...
class  QCustomSlider
 The slider is the classic widget for controlling a bounded value. More...
class  QCustomSplitter
 A splitter lets the user control the size of 2 child widgets by dragging the boundary between them. More...
class  QCustomStackedWidget
 The main class for a layout where all widgets occupy the same same and only one widget is shown at a time. More...
class  QCustomStackedWidgetBase
 A base class for a series of widgets where all widgets occupy the same same and only one widget is shown at a time. More...
class  QCustomTableWidget
 Provides a standard way to show table data within the application. More...
class  QCustomTabWidget
 A tab widget provides a tab area and a "page area" that is used to display pages related to each tab. More...
class  QCustomTextEdit
 A widget that is used to edit and display both plain and rich text in a multi-lined format. More...
class  QCustomToolBox
 A toolbox is a widget that displays a column of tabs one above the other, with the current item displayed below the current tab. More...
class  QCustomTooltip
 Provides tool tips (balloon help) for any widget that usually shows up when a mouse is hovered over a widget for a set amount of time. More...
class  QCustomTranslator
 Allows QT to call into the native application translator when needed to translate UI auto-generated items. More...
class  QCustomTreeNode
 Represents a single node in a tree structure, containing a title, ID, icon, and any child nodes. More...
class  QCustomTreeWidget
 A wrapper around QTreeWidget with native NDEVR objects. More...
class  QCustomValidator
 Responsible on most user input fields for correcting the input when possible or allerting the user that the input is incorrect. More...
class  QDeviceChangeEvent
 The event that is triggered when a USB device is plugged in or unplugged. More...
class  QMediaDeviceManager
 Singleton manager that tracks available camera devices on the system. More...
class  QModelViewCapture
 Used to capture a 2D image of a DesignObjectLookup from a specific perspective. More...
class  QRBitBuffer
 An appendable sequence of bits (0s and 1s), mainly used by QrSegment. More...
class  QrCode
 A QR Code symbol, which is a type of two-dimensional barcode. More...
class  QrSegment
 A segment of character, binary, or control data in a QR Code symbol. More...
class  QTAbstractResourceListener
 A base class for a ResourceListener which will always be executed on the main UI thread and can be tied to a Qt Object as a parent for automatic destruction. More...
class  QTDesignObject
 A pointer to a DesignObject within a QTModelManager that receives and emits update signals based on the state of the object. More...
class  QTErrorBrowser
 A dialog that groups together a series of error dialogs that might have occured at the same time. More...
class  QTErrorDialog
 A dialog typically shown as a tab that displays an exception to the user. More...
class  QTGraphicsWidget
 A Widget wrapper around a QTGraphicsWindow that allows it to be used inside the UI framework. More...
class  QTGraphicsWindow
 A Window used to render 3D graphics. More...
class  QTIconManager
 Manages all Icons and Pixmaps used by the UI in the NDEVR Engine. More...
class  QTImageEditor
 A full-featured image editor widget with drawing tools, undo/redo, and image manipulation. More...
class  QTImageEditorView
 A widget that provides a canvas for viewing and editing images with drawing tools. More...
class  QtModelFunction
 Can be used to add functionality to the ModelCommandsWidget by showing a unique widget when the action is undertaken. More...
class  QTModelManager
 A wrapper around DesignObjectLookup that provides signal and slot functionality and adds rendering capabilities to the model hierarchy. More...
class  QTModelManagerView
 A Qt compatible ItemModel for interfacing with a DesignObjectLookup. More...
class  QtNetworkAccessManager
 Allows the application to request network data using the Qt Framework. More...
class  QtNetworkRequest
 Contains information specific for making a network request within the Qt Framework. More...
class  QtProjectManager
 Provides static methods for building Qt project files and Android manifests from module lists. More...
class  QTResourceListener
 A ResourceListener which will always be executed on the main UI thread and can be tied to a Qt Object as a parent for automatic destruction with a convenient callback function. More...
class  QTSoundManager
 Adds Sound generated via the Qt Framework to the application. More...
class  QTTools
 Manages static logic dealing with Qt and relating to the application. More...
class  QTVertexManagerView
 A Qt compatible AbstractTableModel for showing properties around a series of Geometry Vertex objects. More...
class  QTVibrationManager
 When supported, such as on Android/IOS, will vibrate the device. More...
class  QtVulkanSession
 A VulkanSession within the Qt space. More...
class  QTWidgetImage
 A Qt compatible wrapper for an image for use with QWidgetModel. More...
class  QTWindowManager
 Manages all windows and logic surrounding dialogs and views for displaying and managing a 3D environment. More...
class  Quaternion
 https://www.3dgep.com/understanding-quaternions/ More...
class  QueueBuffer
 Stores objects in a first-in, first out queue based Buffer with push and pop functions. More...
class  QuickbooksFactory
 IOFactory implementation for reading and writing QuickBooks data files. More...
class  QuickVisualization
 Allows for the creation of Models that represent points or linework quickly and efficiently. More...
class  QWidgetModel
 A 3D Model that mirrors a QWidget object. More...
struct  RadialDimension
 logic for storing a radial dimension in a CAD-friendly way for exporting and importing. More...
class  RadialObject
 A radial object. More...
class  Random
 Dummy class for including random number generator functions. More...
class  RandomColorGenerator
 Generates random colors based on configurable hue and luminosity settings. More...
struct  RandomColorOptions
 Options for configuring random color generation with custom hue and brightness constraints. More...
class  RandomMessageGenerator
 Stores a collection of translated messages and provides random selection from them. More...
class  RandomMessageView
 A widget that cycles through randomly selected messages on a timer, displaying them one at a time in a stacked layout with animated transitions. More...
class  RangeSensor
 A RangeSensor is a Device that determines the distance of a target at a certain orientation. More...
class  RasterCameraRenderer
 An OpenGL window that renders raster camera video frames with rotation, zoom, and infrared support. More...
class  RasterCameraView
 A PhysicalCameraView implementation for raster-based depth cameras. More...
struct  RasterFrame
 A single frame of raster depth/color data along with processing state and metadata. More...
struct  RasterInfo
 Stores information for painting pixels at a time into a 2D texture used with MaterialRaster. More...
class  Rasterization
 Creates a raster of the terrain using the Cloth simulation. More...
struct  RasterPacketInfo
 Packet of colored point data sent from the raster scanner for live and inactive display. More...
class  RasterRangeSensor
 A RangeSensor implementation for raster depth cameras. More...
class  RasterScannerSettingsDialog
 A settings dialog widget for configuring raster point scanner options such as SLAM, IMU parameters, display, and post-processing settings. More...
class  RateLimiter
 Throttles the frequency of an action by enforcing a minimum time interval between firings. More...
class  RDesignLock
 Used to lock a particular model for editing (DEPRECIATED). More...
class  RealSenseCameraView
 A PhysicalCameraView implementation that provides video from a RealSense camera using OpenCV. More...
class  RealSenseClient
 Client that receives point cloud data from a remote RealSense server. More...
class  RealSenseIOSettings
 Aggregated IO settings for all RealSense streams and laser configuration. More...
class  RealSenseMotor
 Motor controller for a single servo axis on a RealSense scanning mount. More...
class  RealSenseMotorManager
 Device that manages a pair of RealSenseMotor servo axes for a scanning mount. More...
struct  RealSenseOptions
 Application options for configuring the RealSense interface module. More...
union  RealsensePacketChecksum
 Checksum union for identifying valid RealSense network packets. More...
struct  RealsensePacketHeader
 Top-level packet header with checksum, type, and sequence number. More...
class  RealSensePointSmoother
 Point smoother specialized for RealSense camera intrinsics. More...
class  RealSensePositionSensor
 Position sensor implementation using RealSense T265 tracking or SLAM-derived poses. More...
class  RealSenseScanner
 3D scanner implementation for Intel RealSense depth cameras. More...
class  RealSenseScannerConnection
 Connection subclass for a locally or remotely connected RealSense device. More...
class  RealSenseScannerFactory
 Factory for discovering and connecting to RealSense 3D scanners. More...
class  RealSenseServer
 Server that streams RealSense point cloud data to remote clients over UDP. More...
class  RealSenseServerConnection
 Connection subclass identifying a remote RealSense server by UUID. More...
struct  RealSenseStreamSettings
 Settings for a single RealSense data stream (IR, color, depth, IMU). More...
class  ReferenceCustomUnit
 A unit that mirrors another set unit. More...
class  RegexFunctions
 Logic for creating regular expressions for certain situations. More...
class  RegistryEntry
 Provides read and write access to a single Windows registry entry identified by hive, path, and variable name. More...
struct  RegistryKeyAction
 Information about a specific registry action to be taken, typically at install-time. More...
class  Renderer
 An object that renders a specific Camera object, typically run on a different thread than the main UI thread. More...
class  ReplyTimeout
 Handles timing out certain operations such as downloads. More...
class  ReportGeneratorSettings
 Persistent settings for the ReportGenerator module, including the path to the NCReport editor and a registry of custom report templates. More...
class  ReportHandler
 Handles creating a report page from some given data. More...
class  ReportIterator
 Iterates through a series of reports for drawing, sending to a PDF or printing. More...
struct  ReportJSONMaker
 Creates a JSON data structure that can be used for generating a report in MSWord. More...
class  ReportManager
 Storage class for all ReportHandlers. More...
class  ReportOptions
 Encapsulates the options needed to generate a report, including the report template path, the design objects to include, and the design object lookup context. More...
struct  ReportTemplate
 A simple Template for a report. More...
class  ResizeVisibleAnimation
 Responsible for animating widgets by having them grown as they become visible, or shrink as they become invisible. More...
struct  ResolveableLocation
 A named location that can be resolved to an index within a shader program. More...
class  Resource
 A core part of the engine, stores variables that can be listened to with ResourceListener which will recieve updates when changed. More...
class  ResourceBase
 A base class for templated resources. More...
struct  ResourceID
 Identifies a resource on the server by name, ID, owner, and version. More...
class  ResourceListener
 A class that can subscribe to any number of Resources which will get updates when the Resource(s) have been modified. More...
class  ResourceMirror
 Creates logic that mirrors two resources. More...
class  ResourceResolver
 Resolves resource identifiers to absolute file paths, supporting online, packed, and local sources. More...
struct  ResourceSearchString
 Search criteria for querying resources on the server using regex patterns and filters. More...
class  RGBColor
 Represents a color in the RGB space with optional alpha transparency. More...
class  Ribbon
 The UI ribbon is a horizontal menu bar typically located at the top of the application interface or along the side. More...
class  RibbonGroup
 Represents the "Tab" of a widget. More...
class  RibbonSubGroup
 Represents a sub-section of "Tab" of a ribbon representing a grouping of buttons or widgets within a tab that provide similar functions. More...
class  RLock
 Used to lock a particular variable for reading. More...
class  RobustKernel
 base for all robust cost functions More...
class  RobustKernelCauchy
 Cauchy cost function. More...
class  RobustKernelDCS
 Dynamic covariance scaling - DCS. More...
class  RobustKernelHuber
 Huber Cost Function. More...
class  RobustKernelPseudoHuber
 Pseudo Huber Cost Function. More...
class  RobustKernelSaturated
 Saturated cost function. More...
class  RobustKernelScaleDelta
 scale a robust kernel to another delta (window size) More...
class  RobustKernelTukey
 Tukey Cost Function. More...
class  RockWorksFactory
 IOFactory implementation for reading and writing RockWorks block-model files. More...
struct  RockWorksSetup
 Setup parameters for RockWorks solid model generation. More...
struct  RockworksSolidModInfo
 Stores cell and value information for a RockWorks solid (.mod) block model. More...
class  Ruler
 A widget meant to be placed beside a camera view showing either directional or measurement markings depending on whether or not a camera is orthographic. More...
class  RulerModel
 A Model which can be used to show lengths of data between two points. More...
struct  RW5FileOptions
 Options for reading an RW5 file, including the parsed data, file path, and incremental read state. More...
struct  RW5Info
 Contains all parsed data from a Carlson RW5 file including the scale point, all survey points, unit information, and rover height. More...
struct  RW5Point
 Represents a single survey point from a Carlson RW5 file, extending GPSPoint with name, location, and point type information. More...
class  RWLock
 A readers-writer lock allowing concurrent reads or exclusive writes. More...
struct  SaveOptions
 Options for saving an NDEVR project. More...
class  ScaleCommandWidget
 A widget that is shown when the user scales a 3D model. More...
struct  ScaledOffsetUnit
 A unit that has both a scale and an offset (think degrees celcius vs fahrenheit). More...
struct  ScaledUnit
 A unit that describes a simple scale (think meters vs feet). More...
class  Scanner
 Contains methods for easily reading objects in an ascii stream using set deliminators and line logic. More...
class  Scene
 The root Model that is responsible for storing the underlying data for all Scene Models. More...
class  SceneDump
 IOFactory that exports scene data to XLSX spreadsheet files for debugging and inspection. More...
class  SceneIterator
 Allows quick iteration of all scene objects. More...
class  ScenePaintDevice
 A QPaintDevice that 'paints' the widgets by turning them into 3D Model objects inside a model hierarchy. More...
class  ScenePaintEngine
 A QPaintEngine that 'paints' the widgets by turning them into 3D Model objects. More...
class  SceneTree
 Shows all objects in a QTModelManager in a tree hierarchy view that allows for user interaction. More...
class  SceneTreeModelDelegate
 Responsible for rendering an entry into a SceneTree widget. More...
class  SceneTreeWidget
 A container widget that wraps a SceneTree with an optional ribbon toolbar for buttons. More...
class  ScopedOpenMPMutex
 lock a mutex within a scope More...
struct  ScreenshotRequest
 Encapsulates a request to capture a screenshot, along with a callback to receive the resulting image identifier. More...
class  ScrollGesture
 Handles scrolling or flicking within the application. More...
class  SE3mat
 SE(3) rigid body transformation represented by a rotation matrix and translation vector. More...
class  SE3Quat
 SE(3) rigid body transformation represented by a unit quaternion and translation vector. More...
class  SectionContent
 The core container for objects using the NDEVR API Widget Docking system. More...
class  SectionIconTab
 Provides a tab that contains an icon and some buttons used for either a tab if the section content is attached to a Container, or as the drag bar if the content is floating. More...
class  SectionTab
 Provides a tab that is used for either a tab if the section content is attached to a Container, or as the drag bar if the content is floating. More...
class  SectionWidget
 SectionWidget manages multiple instances of SectionContent. More...
class  SectionWidgetTabsScrollArea
 Custom scrollable implementation for docked tabs using the NDEVR API Widget Docking system. More...
class  SegmentedBlockModel
 A Model subclass providing a segmented spatial block model over a bounded region. More...
class  SegmentedBlockModelBase
 Hierarchical spatial index for block model rasters using a multi-level lookup tree. More...
class  SelectionArea
 An area of N-dimensional space that is considered selected. More...
class  SelectionButtonFactory
 A factory for creating custom buttons that appear when objects are selected. More...
class  SelectionController
 Allows user to select data in a DesignObjectLookup. More...
class  SelectionEffect
 Applies certain effects to a model that has been selected. More...
class  SelectionHighlightBar
 Provides a highlighted animation for selecting docked tabs using the NDEVR API Widget Docking system. More...
class  SelectionInfo
 Responsible for turning a user interaction into a selection within a DesignObjectLookup. More...
class  SelectionTreeManager
 Manages selection trees, which optimize the process of selecting data within large Geometry objects. More...
class  SelectionWidget
 A widget that displays controls and information for the currently selected design objects. More...
struct  Sensor
 Describes the input sensor type and IMU usage. More...
class  SerialConnectionDialog
 A ConnectionDialog that allows the user to modify a Serial port connection. More...
class  SerialPortConnection
 A ConnectionBackend that allows the software to interface with QSerialPort for communicating with SerialPort devices. More...
class  SerialPortConnectionDialogFactory
 A ConnectionDialogFactory which enables the creation of a SerialConnectionDialog. More...
class  SerialPortConnectionFactory
 A ConnectionFactory that enables the creation of a SerialPortConnection for interfacing with a QSerialPort. More...
struct  SerialPortInfo
 A structure containing information needed to establish a SerialPortConnection. More...
class  ServerActions
 Abstract interface for all server-side CRUD operations on users, resources, and permissions. More...
struct  ServerCommandReturn
 Encapsulates a server command's return status, including a code and optional message. More...
struct  ServerCredentials
 Stores user credentials for server authentication, including username, password hash, and IP. More...
struct  ServerMainInfo
 Holds general information about an NDEVR server instance. More...
struct  ServerPermission
 Defines permissions for a user to access a specific resource, including encryption data. More...
struct  ServerResourceInfo
 Metadata for a server-hosted resource including type, timestamps, size, and cached data. More...
struct  ServerUserInfo
 Extended user information including contact details and encryption keys. More...
class  Set
 Container that stores unique elements in no particular order, and which allow for fast retrieval or insertion of individual elements based on their value. More...
class  SetBase
 A dummy base class for all Set templates. More...
class  SetLayerCommand
 A command that assigns one or more models to a specified layer, with full undo support. More...
class  SetMaterialCommand
 A DesignCommand that assigns a specific material to one or more target objects. More...
class  SetPaletteCommand
 A DesignCommand that sets a color palette on one or more target materials. More...
class  SetProperties
 A command that sets a single compile-time-known property on multiple DesignObjects at once, with full undo/redo support. More...
class  SetPropertiesCommand
 A command that sets arbitrary properties on design objects using runtime-resolved property identifiers and string-serialized values. More...
class  SetProperty
 A command that sets a single compile-time-known property on a single DesignObject, with full undo/redo support. More...
class  SetTextValue
 A DesignCommand for setting text values on target design objects with undo support. More...
class  SettingsDialog
 The main Settings dialog for the application. More...
struct  SGMPushConstants
 Push constants for SGM directional cost aggregation shader. More...
struct  ShaderDefinition
 Base definition for a shader program, holding source data and uniform bindings. More...
class  ShaderManager
 Registry that stores all available vertex and fragment shader definitions keyed by UUID. More...
class  ShaderTools
 Utility class for compiling GLSL shader source files into SPIR-V binaries using the Vulkan SDK glslangValidator tool. More...
struct  ShaderUniform
 Describes the set of attribute locations associated with a single shader uniform block. More...
class  ShapeConstructors
 Logic for writing various basic shapes to a Geometry object. More...
struct  SheetOptions
 Options for configuring the form sheet window's customer type and tree filter. More...
struct  ShiftCount
 Compile-time helper that counts the number of trailing zero bits in a value, used for computing shift amounts when dividing by powers of two. More...
struct  ShiftCount< 0 >
 Base case specialization of ShiftCount for zero. More...
struct  ShowPropertiesSettings
 Stores settings for setting up and displaying a DesignObjectDialog such as whether the dialog is part of a larger workflow or used for Model creation. More...
class  SHPFactory
 An IOFactory implementation for reading and writing Shapefile (.shp) geospatial data. More...
struct  Sim3
 Similarity transformation in 3D (rotation + translation + scale). More...
class  Sim3Solver
 Computes a Sim3 transformation between two keyframes using RANSAC. More...
struct  SimulationDataPoint
 A single data point captured during Madgwick simulation, containing raw sensor data and the computed orientation. More...
class  SizeOperationsWidget
 A popup Editor dialog for showing options or information related to the size of a Model object. More...
class  SketchupFactory
 An IOFactory implementation for reading and writing SketchUp (.skp) files. More...
class  Skybox
 Contains a 3D box used to render complicated backgrounds for a CameraBackground object. More...
class  SLAMEngine
 Provides logic to perform SLAM on an object. More...
class  SLAMEngineFactory
 Creates a SLAM engine when required. More...
class  SLAMEngineManager
 Registers engines which can be used in the SLAM process. More...
class  SLAMFrame
 A frame of data that can be processed by a SLAM engine to determine relative location. More...
class  SLAMParameters
 Configuration parameters for the ORB-SLAM system. More...
struct  SlicePlane
 Represents a single plane used to slice geometry, along with the resulting slice data (polyline segments, points, colors, and properties). More...
struct  SlicerArgs
 Arguments for performing a Geometry slice operation. More...
struct  SlicerOutputOptions
 Output options for the Slicer/Dicer export operation. More...
struct  SliceVertex
 Stores an index to a particular vertex used with ConcaveToConvexPolygon. More...
class  SmoothDialog
 A widget allowing the user to select options and execute smoothing a 3D mesh. More...
class  Smoothing
 Forward declaration of InfoPipe for progress/logging support. More...
class  SnapController
 Allows for mouse snaps to certain key points of interest in the software. More...
class  SnapPoint
 Contains information about a particular point of interest created from a user mouse interaction. More...
class  SnapsEditorWidget
 A ribbon sub-group widget that allows the user to configure snap settings such as endpoint, axis, edge, and center snapping. More...
class  SnapsManager
 Forward declaration for the NDEVR string type. More...
class  SocketConnection
 A core ConnectionBackend for QAbstractSocket supporting TCP and UDP connections. More...
class  SocketConnectionFactory
 A ConnectionFactory that enables the creation of a SocketConnection for interfacing with a QAbstractSocket for TCP and UDP connections. More...
class  SocketIO
 Provides the ability to communicate over a network using SocketIO (https://socket.io/docs/v4/). More...
class  SocketIOChannel
 A specific channel of communication within the SocketIO framework. More...
class  SocketIOConnectionFactory
 A ConnectionBackend that allows the software to interface with SocketIO for communicating with across networks. More...
class  SoftwareService
 Base interface for services that extend or modify software behavior through modules. More...
class  SoftwareServiceManager
 Software Service Managers take a Software service to modify the behavior of the software. More...
class  SolidMaterialEditor
 A popup Editor dialog for showing options or information related to Materials used with solid rendering such as light reflectivity. More...
class  Solver
 Generic interface for a sparse solver operating on a graph which solves one iteration of the linearized objective function. More...
struct  Sound
 Contains the definition for a sound resource. More...
class  SoundFactory
 Produces sound on the host Device, if possible. More...
class  SoundManager
 Handles iterating through sound factories until one is able to produce sound given the input sound resource. More...
class  SparseBlockMatrix
 Sparse matrix which uses blocks. More...
class  SparseBlockMatrixCCS
 Sparse matrix which uses blocks. More...
class  SparseBlockMatrixDiagonal
 Sparse matrix which uses blocks on the diagonal. More...
class  SparseBlockMatrixHashMap
 Sparse matrix which uses blocks based on hash structures. More...
class  SparseOptimizer
 Sparse optimizer that manages active vertices and edges for graph-based optimization. More...
class  SpeedLimit
 Used to describe the speed limit of a road and used with StreetInfo object. More...
class  Spline
 A spline is a function used to interpolate or smooth data. More...
struct  SplineData
 logic for storing a spline data in a CAD-friendly way for exporting and importing. More...
class  StatementParser
 Turns a particular string into an Equation The String should not contain invalid characters. More...
class  StationEditor
 A popup Editor dialog for showing options or information related to StationModel objects. More...
struct  StationOptions
 Stores ApplicationOptions related to user preferences for Stations. More...
class  StatusBar
 A simple widget that shows a Status and optionally a progressbar. More...
class  STDOutputStream
 A LogStream that writes log messages and progress to the standard output console. More...
class  StepsRecorder
 If available, records user interactions using Windows Steps Recorder. More...
class  StreetInfo
 Stores all information relating to a road or street. More...
class  StreetName
 A Model which contains information about the name of a street, road, highway, etc. More...
class  String
 The core String class for the NDEVR API. More...
class  StringAllocatingView
 This class is like a string view, but may optionally store the data internally Useful if the return type of an object "might" be a non-allocating string or might be an allocating string.s. More...
class  StringEnum
 Empty tag class used as a base for string-convertible enumerations defined via macros. More...
class  StringSplitter
 Logic for splitting a string into two. More...
class  StringStream
 Logic for reading or writing to a string or a user friendly, TranslatedString. More...
class  StringStream< Bounds< t_dims, t_type > >
 StringStream specialization for Bounds types, serializing min and max vectors separated by '^'. More...
class  StringStream< Buffer< t_type, t_memory_manager > >
 StringStream specialization for Buffer types, serializing elements as comma-separated values. More...
class  StringStream< DesignParameter >
 Template specialization of StringStream for DesignParameter. More...
class  StringStream< Matrix< t_type, t_row_dims, t_col_dims > >
 StringStream specialization for Matrix types, serializing elements with ',' between rows and ';' between columns. More...
class  StringStream< Ray< t_dims, t_type, t_vector_type > >
 StringStream specialization for Ray types, delegating to the underlying vector type. More...
class  StringStream< String >
 StringStream specialization for String types, providing identity-like conversion. More...
class  StringStream< StringAllocatingView >
 StringStream specialization for StringAllocatingView types, providing owning string conversion. More...
class  StringStream< StringView >
 StringStream specialization for StringView types, providing non-owning string conversion. More...
class  StringStream< Vector< t_dims, t_type > >
 StringStream specialization for Vector types, serializing components as comma-separated values. More...
class  StringStream< Vertex< t_dims, t_type, t_vector_type > >
 StringStream specialization for Vertex types, delegating to the underlying vector type. More...
class  StringValidator
 Logic for validating a string given a specific regex pattern. More...
class  StringView
 The core String View class for the NDEVR API. More...
struct  StyleData
 logic for storing a style data in a CAD-friendly way for exporting and importing. More...
class  SubtitleFileReader
 Class which can be used to read a subtitle file and return the subtitle that should be played at a specific time. More...
class  SubtitleFileWriter
 Class which can be used to write a subtitle in real time to a file, which can be played back alongside a video being recorded concurrently. More...
class  SunDial
 A decorated dial class that allows the user to set the lighting direction. More...
class  SurfaceCondition
 Used to describe the condition of a surface for a StreetInfo object. More...
class  SurfaceSelectionButtonFactory
 A SelectionButtonFactory that creates surfacing action buttons in the selection context menu. More...
class  SurfaceType
 Used to describe the type of surface for a StreetInfo object. More...
class  SVD
 Performs the singular value decomposition of a general matrix, taken and adapted from Numerical Recipes Third Edition svd.h. More...
class  SVGIconEngine
 A QIconEngine used to render SVG icons. More...
struct  TableChange
 Records changes to a table or column noting the bounds of the data adjusted. More...
class  TableColumn
 A virtual storage type that is used with Table class to store data where the actual mechanism for storage can be abstracted away. More...
class  TableColumnBuffer
 A base class for a Table column with N-number of rows held in a Buffer object. More...
class  TableColumnColorType
 A TableColumnBuffer of Colors Allows for virtual memory access with the caller not needing to know how the data itself is stored. More...
class  TableColumnString
 A TableColumnBuffer of Strings. More...
class  TableColumnTypeBuffer
 A TableColumnBuffer of buffers. More...
class  TableMatrixType
 A TableColumnBuffer column of Matrices Allows for virtual memory access with the caller not needing to know how the data itself is stored. More...
class  TableVectorType
 A TableColumnBuffer that also has some number of defined rows stored in a Vector object Allows for virtual memory access with the caller not needing to know how the data itself is stored. More...
class  TableVectorType< 1, t_type >
 An optimized single column TableVectorType that stores data in a simple buffer Allows for virtual memory access with the caller not needing to know how the data itself is stored. More...
class  TableVectorType< 1, UUID >
 A TableVectorType optimized for storing UUID objects Allows for virtual memory access with the caller not needing to know how the data itself is stored. More...
struct  TakeReadingData
 Holds accumulated data during a take-reading operation, including sample counts, averaged position, and quality metrics. More...
class  TAR
 Provides utilities for reading and extracting TAR and TAR.GZ archives. More...
class  TcpServer
 A TcpServer allows the software to receive socket connections from external sources. More...
class  TemperatureSensor
 A Device responsible for determining the temperature of either the environment or a specific component. More...
class  TemperatureWidget
 A button that displays information about multiple TemperatureSensors when clicked. More...
class  TemporaryIOFileLocker
 Manages temporary file paths during an IOFactory write operation, ensuring safe writes by writing to temporary files first and then moving them to the final destination. More...
class  TerminalDialog
 Provides the user access to sending or receiving data to a specified connection over a terminal interface. More...
struct  TextBlock
 text that is formatted the same way, typically part of a bigger group of text More...
class  TextCommands
 A placeholder grouping class for text-related design commands. More...
struct  TextData
 logic for storing a text data in a CAD-friendly way for exporting and importing. More...
struct  TextToSpeechRequest
 Allows the user to make a request for text-to-speech. More...
class  ThemeChanger
 An animation that slowly changes the color over the entire UI. More...
class  ThirdPartyLibsDialog
 A dialog widget for configuring paths to third-party library dependencies used by the build system. More...
class  Thread
 The default thread class for executing concurrent sequences in the NDEVR API. More...
class  ThreadedRTree
 An RTree extension that supports multi-threaded tree construction and bounding box computation. More...
class  ThreadFunctions
 Forward declaration of LogPtr for log access. More...
class  ThreadQueue
 Executes a queue of callback functions sequentially on a dedicated thread. More...
struct  ThreePartAngleUnit
 An angle unit that contains two-parts (Degrees, Minutes, Seconds). More...
class  TIFImageFactory
 Handles reading and writing TIFF image files through the ImageFormatHandler interface. More...
class  TightDecoder
 Decodes a VNC stream from TightVNC. More...
struct  TileKey
 A key identifying a geographic tile by integer latitude and longitude. More...
class  Time
 Represents a timestamp with utilities for manipulation and conversion. More...
class  TimeFormatException
 Thrown when a provided time format cannot be parsed from a given time string. More...
class  TimeRequest
 A request to get the time from the network. More...
class  TimeSpan
 Stores a time span, or difference between two times, with an optional start time. More...
class  TimeSpanSelector
 A widget that allows the user to select a time span by choosing a start date/time and either an end date/time or a duration in hours and minutes. More...
struct  TimeZone
 Simple struct for storing timezone definition data. More...
class  Toggle
 A Button that toggles between on and off. More...
class  Toolbar
 Class which displays progress and the current action being performed. More...
class  TooltipTextManager
 Provides common tooltips for usage with the software. More...
class  TopDownLineworkChart
 Creates an NDEVRRadialChart chart for models containing linework. More...
class  TouchDesktopThemeButton
 A button for allowing the user to switch between Desktop/Touch mode which affects the size of all of the widgets and text. More...
class  TouchScrollManager
 Provides behavior for flicking and other scroll behavior common to the NDEVR API. More...
struct  TraceData
 logic for storing a trace data in a CAD-friendly way for exporting and importing. More...
class  Tracking
 Main tracking thread that processes each frame and estimates camera pose. More...
class  TransformationEstimationPointToPlaneLLS
 Estimates a rigid transformation using point-to-plane linear least squares minimization. More...
class  TransitIncident
 Represents a transit incident, providing access to its address and time. More...
class  TransitIncidentEntity
 Base class representing any entity involved in a transit incident. More...
class  TransitIncidentEntityTable
 Table widget for displaying transit incident entities. More...
class  TransitIncidentManager
 Central manager for transit incident data, including buses, drivers, witnesses, officers, and vehicles. More...
class  TransitIncidentPedestrianEditor
 Editor widget for managing pedestrians involved in a transit incident. More...
class  TransitIncidentPerson
 Represents a person involved in a transit incident. More...
class  TransitIncidentPersonEditor
 Editor widget for viewing and modifying a transit incident person's details. More...
class  TransitIncidentPersonTable
 Table widget for displaying and managing persons in a transit incident. More...
class  TransitIncidentProperty
 Represents a property item involved in a transit incident. More...
class  TransitIncidentReportHandler
 Handles creating and rendering transit incident reports. More...
class  TransitIncidentVehicle
 Represents a vehicle involved in a transit incident. More...
class  TransitIncidentVehicleEditor
 Editor widget for viewing and modifying a transit incident vehicle's details. More...
class  TransitIncidentVehiclesEditor
 Editor widget for managing vehicles involved in a transit incident. More...
class  TransitIncidentVehicleTable
 Table widget for displaying and managing vehicles in a transit incident. More...
class  TranslatedString
 Any text displayed to the user should be defined as a TranslatedString which allows the program to look up a translation, if available. More...
class  TranslationCombo
 Provides possible translations via a combobox to allow the user to select a language for the software. More...
struct  TranslationDefinition
 Contains logic for translating a string into a defined language. More...
class  TranslationTools
 Scans source code for translation macros (_t, _td, etc.) and generates .tr translation files for all supported languages. More...
class  Translator
 Provides language translation services for the application. More...
class  TreeBoundarySorter
 A tree sorter that supports both center-based and boundary-based spatial partitioning. More...
class  TreeSorterBase
 Base class for tree sorters that maintain pre-sorted index arrays for efficient spatial partitioning. More...
class  Triangle
 A three-vertex polygon representing a triangle in N-dimensional space. More...
class  TriangleBase
 Base class for N-dimensional triangles. More...
class  TriangleIterator
 A class to easily iterate each triangle over a Geometry of triangles or meshes. More...
class  TroubleshootingDialog
 A stacked dialog for guiding a user through a multi-step troubleshooting workflow, presenting yes/no questions, acknowledgments, and loading states. More...
struct  TwoPartAngleUnit
 An angle unit that contains two-parts (Degrees, Minutes). More...
struct  TwoPartUnit
 A unit that has two parts (Think feet, inches). More...
class  TwoSidedCSFFilter
 Filters data into a top and bottom half based on the CSF surfacing logic. More...
class  TwoViewReconstruction
 Reconstructs 3D structure from two views using homography and fundamental matrix. More...
class  TypeInfo
 Stores information about a type, relevant for certain templated functions. More...
class  TypeInfoRegex
 Logic for creating a regex for a given type of data. More...
struct  UniformCostFunction
 Cost function that assigns uniform cost of 1.0 to every edge. More...
struct  Unit
 Defines a unit of measurement for converting and displaying data values. More...
class  UnitDefinitions
 Provides static accessors for common and uncommon unit definitions used by the software. More...
class  UnitManager
 Manages a collection of units across multiple data categories with INI persistence. More...
class  UnitOption
 A definition of how to describe a particular set of data to a custom category of unit. More...
class  UnitsDialog
 A dialog which can be used to set various units for different unit categories, such as selecting the various properties by which to show angles. More...
class  UnityAssetFactory
 An IOFactory implementation for reading and writing Unity asset files. More...
class  UpdateButton
 A button which allows the user to check for software updates or update the software. More...
class  UpdateChecker
 Provides logic for checking a source, typically online, for an update to the software. More...
class  UpdateCheckManager
 Provides place to set an update checker for checking for software updates. More...
struct  URDFFactoryOptions
 Options and output data for a URDF file parsing operation. More...
struct  USState
 Represents a US state with its abbreviation and translated display name. More...
class  USStateLookup
 Provides lookup of US states as a hierarchical dataset. More...
class  UTF8Iterator
 Iterates over a UTF8 encoded string and returns the values as UTF16. More...
class  UUID
 A universally unique identifier (UUID) is a 128-bit number used to identify information in computer systems. More...
class  UVChannelEditWidget
 A widget allowing the user to set the properties for a single channel of UVType for a Material. More...
class  VariableCreatorWidget
 A widget for creating and configuring user-defined variables based on GenericOption settings. More...
class  VariableDefinition
 Describes a build variable with its internal name, display title, and description. More...
class  VariableReference
 An optimized class for storing a reference to a variable of some type up to 8 bytes in size without ownership or allocations on the stack. More...
class  Vector
 A fixed-size array with N dimensions used as the basis for geometric and mathematical types. More...
class  Vector< t_dims, bool >
 An boolean specifc Vector which stores vectors of bools in optimal space. More...
class  VectorFunctions
 Provides free functions for vector arithmetic and geometric operations. More...
struct  VectorizeImageParams
 Arguments used for creating vectorizations of an image. More...
class  VehicleDatabase
 A database of vehicle specifications (make, model, year, dimensions, weight) loaded from DBF files and INI-based search term mappings, used for vehicle selection and placement. More...
class  VehicleModel
 A Model subclass representing a vehicle in the design scene, with support for loading from VehicleRecord data and displaying a 3D visual model. More...
class  VehicleRecord
 A read-only accessor for a single vehicle record within a VehicleDatabase, providing make, model, year, weight, dimensions, and associated 3D model file. More...
struct  VehicleSearchItem
 A search filter that maps vehicle database records to a specific 3D model file by matching make/model keywords and year ranges. More...
class  VehicleSelector
 A widget that allows the user to browse, search, and select vehicles from the VehicleDatabase and place them into the design scene. More...
class  VehicleTableFilterProxyModel
 A sort/filter proxy model that filters VehicleTableModel rows by make, model, and year search criteria, and supports a selection callback. More...
class  VehicleTableModel
 Qt table model that exposes VehicleDatabase records as rows for display in a QTableView. More...
class  VehicleTableView
 A QTableView subclass that displays vehicle database records with sort and filter support. More...
class  Vertex
 A point in N-dimensional space, used primarily for spatial location information. More...
class  VertexAccBias
 Graph optimization vertex for a 3-DoF accelerometer bias. More...
class  VertexColorIterator
 Allows for the calculation of colors for any vertex given a Material and Geometry. More...
class  VertexGDir
 Graph optimization vertex for the 2-DoF gravity direction. More...
class  VertexGyroBias
 Graph optimization vertex for a 3-DoF gyroscope bias. More...
class  VertexInvDepth
 Graph optimization vertex for an inverse-depth parameterized 3D point. More...
class  VertexIterator
 Typed vertex iterator providing array-style access to geometry vertex data. More...
class  VertexLookup
 A class to easily iterate each vertex of a Geometry. More...
class  VertexOffsetWidget
 A widget allowing the user to offset a vertex. More...
class  VertexPose
 Graph optimization vertex for a 6-DoF IMU-camera pose. More...
class  VertexPose4DoF
 Graph optimization vertex for a 4-DoF pose (translation + yaw only). More...
class  VertexSBAPointXYZ
 Point vertex, XYZ. More...
class  VertexScale
 Graph optimization vertex for a 1-DoF scale factor. More...
class  VertexSE3Expmap
 SE3 Vertex parameterized internally with a transformation matrix and externally with its exponential map. More...
struct  VertexShaderDefinition
 Shader definition specialized for the vertex processing stage. More...
class  VertexSim3Expmap
 Vertex for Sim3 similarity transformations (7-DoF: rotation, translation, scale). More...
class  VertexTable
 A table showing a list of vertices in a Geometry objects. More...
class  VertexTableDelegate
 A Qt compatible ItemDelegate for showing properties around a Geometry Vertex object. More...
class  VertexVelocity
 Graph optimization vertex for a 3-DoF velocity vector. More...
struct  VerticalDatum
 Data about a vertical coordinate reference system (e.g. More...
class  VerticalDatumChooser
 A dialog that allows the user to select a vertical datum (geoid model) for elevation reference. More...
class  VideoCardInformation
 Contains information about a video card, including manufacturer and some level of capabilities. More...
struct  VideoFrameDetails
 Describes the pixel format and dimensions of a video frame from a raster camera. More...
struct  ViewportData
 logic for storing a viewport in a CAD-friendly way for exporting and importing. More...
class  ViewportFactory
 A service which can generate Viewports based on Camera data. More...
class  ViewportFormat
 Stores information for how to construct a viewport, including camera identity, field of view, zoom focus, and animation settings. More...
class  ViewportLayout
 Stores information for how to construct a group of viewports such as those in the center 3D panel. More...
class  ViewportManager
 Logic for placing Viewports or Camera Views into widgets. More...
struct  ViewportOptions
 Stores the options, added to the user settings, that control Viewport and camera options in the application. More...
class  ViewPortSmoothShaderLogic
 GPU compute shader that performs viewport-space point smoothing and filtering. More...
class  ViewToPrimitiveObjects
 Used to convert a view and a DesignObjectLookup of data into a 2D map of primitive data types. More...
class  VirtualCameraView
 A Viewport for rendering 3D objects in the scene with the NDEVR Graphics Engine. More...
class  VirtualTree
 A polymorphic spatial tree that can instantiate either a KDTree or RTree at runtime based on configuration. More...
class  VisibleCommand
 A specified type of DesignCommand that can make objects visible or invisible in a 3D space such as a viewport. More...
class  VLCCameraView
 Camera view widget that uses VLC for video playback and recording. More...
class  VLCPhysicalCameraViewFactory
 Factory for creating VLCCameraView instances. More...
class  VLCVideoModelViewer
 Editor widget for viewing video models using VLC playback. More...
class  VncCameraView
 A PhysicalCameraView that displays a remote desktop via the VNC protocol, allowing users to view and interact with a remote machine's screen. More...
class  VncClientWidget
 A QWidget that renders the remote VNC framebuffer and forwards user input events (mouse, keyboard) to the VncDevice for transmission to the remote server. More...
class  VncDevice
 A Device subclass that manages the VNC RFB protocol, handling connection setup, framebuffer updates, and input event forwarding to the remote server. More...
struct  VncScreen
 Describes a single screen reported by a VNC server, including its ID, bounds, and flags. More...
struct  VulkanBitflagObject
 Stores bools to be sent to both the Vertex and Fragment shaders in the Vulkan space. More...
class  VulkanBuffer
 A GPU buffer managed through the Vulkan API, used for vertex, index, and uniform data. More...
class  VulkanCameraManager
 A structure for managing Viewport interactions with in the Vulkan Graphics Space. More...
class  VulkanCameraSettingsDialog
 Dialog widget for adjusting local camera settings such as resolution, exposure, and focus. More...
class  VulkanCameraViewFactory
 A QTGraphicsWindow for rendering using Vulkan. More...
class  VulkanComputeBuffer
 A GPU storage buffer (SSBO) for compute shader use, with a separate staging buffer for host-visible upload/download transfers. More...
class  VulkanComputeDevice
 Wraps a VulkanDevice with compute-specific queue discovery and command pool management. More...
class  VulkanComputePipeline
 A generic, reusable Vulkan compute pipeline wrapper. More...
class  VulkanDevice
 A GraphicsDevice for managing Vulkan limitations and actions. More...
class  VulkanImageData
 A pointer to an Image and functions relating to that image within the Vulkan logic space. More...
class  VulkanImageManager
 Manages all images within the Vulkan space. More...
struct  VulkanImageResources
 Data for pointing to a specific Image target within the Vulkan Graphics space. More...
class  VulkanImageView
 Manages a view within the Vulkan logic space. More...
class  VulkanInstance
 The connection between the NDEVR API and the Vulkan library. More...
class  VulkanMaterialManager
 Logic for creating the data in Vulkan for a specific Material. More...
class  VulkanPhysicalCameraViewFactory
 Provides access to a local camera on the system, such as a webcam or camera for a phone. More...
class  VulkanQueue
 A wrapper around a VulkanQueueCore that allows for thread-safe access to a specific queue. More...
class  VulkanQueueCore
 A queue of commands or actions to be executed in order by the Vulkan engine. More...
class  VulkanRenderDefinition
 Creates specific information for performing a render pass within Vulkan. More...
class  VulkanRenderObject
 A root render Object for Vulkan, which consists of a set Material, Model, and Geometry that is used together to optimally create a 3D render. More...
class  VulkanRenderPipeline
 A GraphicsPipeline that renders a single Viewport for Vulkan. More...
class  VulkanSession
 Creates and manages the resources necessary for converting a DesignObjectLookup into 3D rendered data in the Vulkan engine. More...
class  VulkanShader
 A shader program used to render data in Vulkan. More...
class  VulkanShaderCreator
 Parses GLSL shader source to extract vertex input layout and uniform definitions for creating Vulkan shader pipeline configurations. More...
class  VulkanShaderManager
 Manages all active shaders in a VulkanSession. More...
class  VulkanStagingRing
 A ring buffer for staging GPU uploads. More...
class  VulkanVertexManager
 Manages all vertices in a specific Scene object for interfacing with Vulkan. More...
struct  VulkanVertexUniformObject
 Information sent to the Vertex shader as a Uniform object. More...
class  VulkanVideoRenderer
 A Model subclass that renders a video stream from a GStreamer source into the 3D scene. More...
class  VulkanXRDevice
 A GraphicsDevice for managing OpenXR and Vulkan limitations and actions. More...
class  VulkanXRInstance
 he connection between the NDEVR API and the OpenXR library, using Vulkan as the engine backend. More...
class  WDesignLock
 Used to lock a particular model for editing (DEPRECIATED). More...
struct  WebMercatorTile
 A Web Mercator map tile descriptor containing coordinates, zoom level, and display settings. More...
struct  WebMercatorTileReply
 Contains the reply data from a Web Mercator tile fetch request. More...
struct  WebMercatorTileRequest
 Encapsulates a request for a single Web Mercator map tile. More...
class  WebMercatorTileService
 A wrapper for logic that uses a web engine to provide an Image Tile service. More...
class  WebSocketConnectionDialog
 A ConnectionDialog that allows the user to modify a WebSocketConnection. More...
class  WebSocketConnectionDialogFactory
 A ConnectionDialogFactory which allows for the creation of a WebSocketConnectionDialog. More...
class  WebSocketConnectionFactory
 A ConnectionBackend that allows the software to interface with QWebSocket for communicating with WebSocket devices. More...
struct  WebTarget
 A url target and optional username and password for a network request. More...
class  WidgetFactoryBuilder
 Generates boilerplate header, source, and UI files for a new Qt widget class. More...
class  WidgetInit
 Provides a way to lazily initialize widgets when needed but still pass them to container dialogs. More...
class  WidgetInitialization
 The primary logic for initializing an application within the NDEVR engine by calling module functions in the appropriate order and initializing any common resources or services. More...
class  WidgetIterator
 Provides a way to iterate over a series of widgets, useful for printing dialogs or turning Widgets into reports or PDF files. More...
class  WidgetMouseController
 Allows the user to click a 3D object and have it converted into a rendering click. More...
class  WidgetOptions
 Stores the options, added to the user settings, that control Widgets and low level UI options in the application. More...
class  WifiConnectDialog
 A dialog widget for selecting and connecting to a Wi-Fi network. More...
class  WinchDeploymentDialog
 Dialog providing detailed winch deployment controls and distance encoder feedback. More...
class  WindowContainer
 A (hacky) class for storing a window into a container. More...
class  WindowInstance
 Contains core information about a Viewport. More...
class  WindowManager
 Manages all windows and logic surrounding dialogs and views for displaying and managing any environment within the application. More...
struct  WindowOptions
 Stores the options, added to the user settings, that control Window and high level UI options in the application. More...
class  WitnessEditor
 Editor widget for managing witnesses of a transit incident. More...
struct  WixDirectory
 Represents a directory tree structure within a WiX installer project. More...
struct  WixFragment
 Collects all data for a WiX installer fragment including directories, features, and files. More...
struct  WixInstallerFeature
 Describes a feature within a WiX installer, including its files and components. More...
struct  WixInstallerFile
 Represents a WiX installer XML file being written, with indentation tracking. More...
class  WixInstallerManager
 Manages the creation of WiX-based Windows installer projects from NDEVR module definitions. More...
class  WLock
 Used to lock a particular variable for writing. More...
class  WorkSurface
 Represents a work surface within the design hierarchy. More...
class  WorkSurfaceModelLogic
 Logic for handling WorkSurface in the NDEVR space, including dialogs and imports. More...
class  XBoxController
 Provides a ControllerInterface implementation for Xbox controllers using the XInput API. More...
class  XDataWriter
 Stores extended data (XData) that can be written out as part of a DXF entity, using a custom write function. More...
class  XInputFactory
 Factory class for discovering and registering Xbox controllers via XInput. More...
struct  XLSXKeyPointMagneticAngleReading
 The structure used by the library for storing key points of data used to write to a MagneticCalibrationSpreadsheet. More...
struct  XLSXMagneticAngleAverageReading
 The structure used by the library for storing averaged points of data used to write to a MagneticCalibrationSpreadsheet. More...
struct  XLSXMagneticAngleReading
 The structure used for storing data to write to a MagneticCalibrationSpreadsheet. More...
class  XLXSFactory
 Creates and writes data from a DVISpreadsheet for easily importing and exporting data as points. More...
class  XRCameraView
 A view that allows interfacing with OpenXR for Augmented and virtual reality. More...
class  XRFunctions
 Common helper functions for easier interfacing with the OpenXR engine. More...
class  XRHand
 Support for a virtual hand, typically mirroring a user hand in the OpenXR space. More...
class  XRInputManager
 Translates input from the OpenXR interface into NDEVR API actions and events. More...
class  XRManager
 Manages the OpenXR engine at a high level. More...
class  XRPose
 A matrix-like class storing both offset and orientation. More...
class  XRSide
 OpenXR uses two viewports, one for the left eye and one for the right eye. More...
class  XRVulkanPipeline
 A GraphicsPipeline that renders a single Viewport for Vulkan and OpenXR. More...
class  XYZColor
 Forward declaration of HSLColor. More...
class  ZipCodeLookup
 Provides lookup of US zip codes and their geographic coordinates as a dataset. More...
class  ZippedOffset
 IOFactory for reading and writing zipped files with an offset, such as KMZ archives that contain embedded model data at a byte offset within the ZIP container. More...
struct  ZippedRadialMeshOptions
 Logic for setting up a mesh that is broken apart by latitude and longitude lines with a set angle difference between them. More...
class  ZlibInStream
 A zlib decompression stream wrapper used by TightDecoder to inflate compressed VNC data. More...

Typedefs

typedef Eigen::Transform< double, 2, Eigen::Affine, Eigen::ColMajor > Affine2D
 2D affine transform with double precision.
typedef Eigen::Transform< double, 3, Eigen::Affine, Eigen::ColMajor > Affine3D
 3D affine transform with double precision.
typedef PrimitiveAlignedBuffer< Effect, 16 > EffectBuffer
 Aligned buffer of Effect objects with 16-byte alignment.
typedef AlocatingAlignedBuffer< File, 64 > FileBuffer
 Buffer type for storing File objects with 64-byte alignment.
typedef float fltp04
 Defines an alias representing a 4 byte floating-point number Bit layout is as follows: -Sign: 1 bit at position 31 determines whether or not the value is positive or negative.
typedef double fltp08
 Defines an alias representing an 8 byte floating-point number.
typedef void(* ForceLinkFunction) (void)
 The following two functions are used to force linkage with static libraries.
typedef PrimitiveAlignedBuffer< Geometry, 16 > GeometryBuffer
 Aligned buffer of Geometry objects with 16-byte alignment.
typedef sint04 HSBAngleType
 Integer type used for storing HSB hue angle values.
typedef sint04 HSLAngleType
 The integer type used for HSL hue angle representation.
typedef Eigen::Transform< double, 2, Eigen::Isometry, Eigen::ColMajor > Isometry2D
 2D isometric (rigid) transform with double precision.
typedef Eigen::Transform< double, 3, Eigen::Isometry, Eigen::ColMajor > Isometry3D
 3D isometric (rigid) transform with double precision.
typedef PrimitiveAlignedBuffer< Material, 16 > MaterialBuffer
 Aligned buffer of Material objects with 16-byte alignment.
typedef Eigen::Matrix< g_type, 12, 12 > Matrix12d
 12x12 matrix type.
typedef Eigen::Matrix< g_type, 15, 15 > Matrix15d
 15x15 matrix type.
typedef Eigen::Matrix< double, 2, 2, Eigen::ColMajor > Matrix2D
 2x2 double matrix.
typedef Eigen::Matrix< float, 2, 2, Eigen::ColMajor > Matrix2F
 2x2 float matrix.
typedef Eigen::Matrix< int, 2, 2, Eigen::ColMajor > Matrix2I
 2x2 integer matrix.
typedef Eigen::Matrix< double, 3, 3, Eigen::ColMajor > Matrix3D
 3x3 double matrix.
typedef Eigen::Matrix< float, 3, 3, Eigen::ColMajor > Matrix3F
 3x3 float matrix.
typedef Eigen::Matrix< int, 3, 3, Eigen::ColMajor > Matrix3I
 3x3 integer matrix.
typedef Eigen::Matrix< double, 4, 4, Eigen::ColMajor > Matrix4D
 4x4 double matrix.
typedef Eigen::Matrix< float, 4, 4, Eigen::ColMajor > Matrix4F
 4x4 float matrix.
typedef Eigen::Matrix< int, 4, 4, Eigen::ColMajor > Matrix4I
 4x4 integer matrix.
typedef Eigen::Matrix< g_type, 6, 6 > Matrix6d
 6x6 matrix type for SE3 operations.
typedef Eigen::Matrix< g_type, 7, 7 > Matrix7d
 7x7 matrix type for Sim3 operations.
typedef Eigen::Matrix< g_type, 9, 9 > Matrix9d
 9x9 matrix type.
typedef Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic, Eigen::ColMajor > MatrixXD
 Dynamic-size double matrix.
typedef Eigen::Matrix< float, Eigen::Dynamic, Eigen::Dynamic, Eigen::ColMajor > MatrixXF
 Dynamic-size float matrix.
typedef Eigen::Matrix< int, Eigen::Dynamic, Eigen::Dynamic, Eigen::ColMajor > MatrixXI
 Dynamic-size integer matrix.
typedef unsigned int MD5_u32plus
 Unsigned 32-bit integer type used internally by the MD5 algorithm.
typedef PrimitiveAlignedBuffer< Model, 16 > ModelBuffer
 Aligned buffer of Model objects with 16-byte alignment.
typedef TemplatedVocabulary< FORB::TDescriptor, FORB > ORBVocabulary
 ORB visual vocabulary type for Bag-of-Words place recognition.
typedef Buffer< Parameter * > ParameterVector
 A buffer of parameter pointers.
typedef AlocatingAlignedBuffer< QrSegment, sizeof(void *)==4 ? 16 :32 > QrSegmentBuffer
 Aligned buffer type alias for storing QrSegment objects.
typedef std::shared_ptr< RobustKernelRobustKernelPtr
 Shared pointer type for RobustKernel.
typedef int8_t sint01
 -Defines an alias representing a 1 byte, signed integer.
typedef int16_t sint02
 -Defines an alias representing a 2 byte, signed integer.
typedef int32_t sint04
 -Defines an alias representing a 4 byte, signed integer.
typedef int64_t sint08
 -Defines an alias representing an 8 byte, signed integer -Can represent exact integer values -9223372036854775807 through 9223372036854775807.
typedef AlocatingAlignedBuffer< String, sizeof(char *)==4 ? 8 :16 > StringBuffer
 A Buffer of String objects using aligned allocation optimized for pointer size.
typedef uint8_t uint01
 -Defines an alias representing a 1 byte, unsigned integer -Can represent exact integer values 0 through 254.
typedef uint16_t uint02
 -Defines an alias representing a 2 byte, unsigned integer -Can represent exact integer values 0 through 65534.
typedef uint32_t uint04
 -Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 through 4294967294.
typedef uint64_t uint08
 -Defines an alias representing an 8 byte, unsigned integer
typedef Eigen::Matrix< g_type, 12, 1 > vector12d
 12-element vector type.
typedef Eigen::Matrix< g_type, 15, 1 > vector15d
 15-element vector type.
typedef Eigen::Matrix< double, 2, 1, Eigen::ColMajor > Vector2D
 2D double column vector.
typedef Eigen::Matrix< float, 2, 1, Eigen::ColMajor > Vector2F
 2D float column vector.
typedef Eigen::Matrix< int, 2, 1, Eigen::ColMajor > Vector2I
 2D integer column vector.
typedef Eigen::Matrix< double, 3, 1, Eigen::ColMajor > Vector3D
 3D double column vector.
typedef Eigen::Matrix< float, 3, 1, Eigen::ColMajor > Vector3F
 3D float column vector.
typedef Eigen::Matrix< int, 3, 1, Eigen::ColMajor > Vector3I
 3D integer column vector.
typedef Eigen::Matrix< double, 4, 1, Eigen::ColMajor > Vector4D
 4D double column vector.
typedef Eigen::Matrix< float, 4, 1, Eigen::ColMajor > Vector4F
 4D float column vector.
typedef Eigen::Matrix< int, 4, 1, Eigen::ColMajor > Vector4I
 4D integer column vector.
typedef Eigen::Matrix< g_type, 6, 1 > Vector6d
 6D vector for the se(3) tangent space.
typedef Eigen::Matrix< g_type, 6, 1 > vector6d
 6-element vector type.
typedef Eigen::Matrix< g_type, 7, 1 > Vector7d
 7D vector for quaternion + translation representation.
typedef Eigen::Matrix< g_type, 9, 1 > vector9d
 9-element vector type.
typedef Eigen::Matrix< double, Eigen::Dynamic, 1, Eigen::ColMajor > VectorXD
 Dynamic-size double column vector.
typedef Eigen::Matrix< float, Eigen::Dynamic, 1, Eigen::ColMajor > VectorXF
 Dynamic-size float column vector.
typedef Eigen::Matrix< int, Eigen::Dynamic, 1, Eigen::ColMajor > VectorXI
 Dynamic-size integer column vector.
typedef wchar_t wchar
 Allias for wchar_t, a value that represents a character of two bytes in size.

Enumerations

enum  AccelerometerState { e_no_accelerometer , e_accelerometer_valid , e_accelerometer_invalid }
 Reports the state of an accelerometer within a OrientationSensor. More...
enum  ACTIVE_SAT_AUTO_MODE_E { ASAM_MANUAL = 'M' , ASAM_AUTO = 'A' }
enum  ACTIVE_SAT_MODE_E { ASM_FIX_NOT_AVAILABLE = 1 , ASM_2D = 2 , ASM_3D = 3 }
enum class  AerialImageMode {
  e_google_satellite , e_google_road , e_google_terrain , e_google_hybrid ,
  e_open_maps , e_aerial_image_mode_size
}
 enum specifying what type of image to fetch. More...
enum  AngleType { RADIANS , DEGREES , INTERNAL_ANGLE , PERCENT }
 The possible units that can be used by the angle class. More...
enum class  ArialFeatureList {
  e_all = 0 , e_administrative , e_administrative_country , e_administrative_land_parcel ,
  e_administrative_locality , e_administrative_neighborhood , e_administrative_province , e_landscape ,
  e_landscape_man_made , e_landscape_natural , e_poi , e_poi_attraction ,
  e_poi_business , e_poi_government , e_poi_medical , e_poi_park ,
  e_poi_place_of_worship , e_poi_school , e_poi_sports_complex , e_road ,
  e_road_arterial , e_road_highway , e_road_local , e_transit ,
  e_transit_line , e_transit_station , e_water , e_feature_list_size
}
 Contains a list of common features that may be provided by Aerial tile services. More...
enum class  BatteryCapacityType { e_percentage , e_watt_hours , e_voltage }
 The various types of capacity information a Battery may have. More...
enum class  BatteryState {
  e_no_battery , e_normal , e_low_voltage , e_critical_voltage ,
  e_shutdown_voltage , e_invalid
}
 An indication of what state a Battery object is in. More...
enum class  BuildAction {
  e_workflow , e_index_loop , e_variable_loop , e_file_loop ,
  e_git_action , e_git_clone , e_set_variable , e_set_registry_variable ,
  e_visual_studio_action , e_qt_creator_action , e_installer_builder , e_run ,
  e_process_files , e_list_files , e_run_file , e_copy_files ,
  e_move_files , e_generate_api , e_download_api , e_generate_out ,
  e_generate_easy_include , e_collect_statistics , e_generate_widget , e_generate_model ,
  e_perform_activation , e_zip , e_unzip , e_delete_files ,
  e_build_shaders , e_create_module , e_create_factory , e_translate ,
  e_play_sound , e_text_to_speech , e_stop_process , e_increment_version ,
  e_log_message , e_install_visual_studio , e_exit_software , e_invalid
}
 Enumerates all supported build action types available in the Developer module build workflow system. More...
enum class  CADColorMethod
 Entites in CAD can be colored in various ways. More...
enum  CollectionMode {
  e_indoor , e_outdoor , e_trigger , e_low_power ,
  e_infrared , e_tracking_only , e_calibration , e_off ,
  e_collection_mode_size
}
 The operating mode for raster point collection, controlling power usage and data type. More...
enum  ColorMode
 Modes that CAD can use to color objects. More...
enum class  CommandSupport { e_supported , e_not_supported , e_not_known }
 Describes whether a HardwareCommandQueue supports certain commands. More...
enum  CompressionMode : uint01 {
  e_no_compression , e_default_compression , e_best_speed , e_string_compression ,
  e_floating_point_compression , e_best_compression , e_floating_point_compression_1_fltp04 , e_floating_point_compression_2_fltp04 ,
  e_floating_point_compression_3_fltp04 , e_floating_point_compression_4_fltp04 , e_floating_point_compression_1_fltp08 , e_floating_point_compression_2_fltp08 ,
  e_floating_point_compression_3_fltp08 , e_floating_point_compression_4_fltp08 , e_string_reference , e_compression_count
}
 Forward declaration of the Module struct for module metadata. More...
enum class  ConnectionOpenType {
  e_not_open = 0x0000 , e_read_only = 0x0001 , e_write_only = 0x0002 , e_read_write = e_read_only | e_write_only ,
  e_append = 0x0004 , e_truncate = 0x0008 , e_text = 0x0010 , e_unbuffered = 0x0020 ,
  e_new_only = 0x0040 , e_existing_only = 0x0080
}
 Describes how to open a connection. More...
enum class  ConnectionState {
  e_no_connection , e_valid_connection , e_awaiting_response , e_attempting_connection ,
  e_invalid_response , e_no_response , e_no_services , e_access_to_port_denied ,
  e_network_error , e_resetting , e_initializing , e_connection_timeout ,
  e_invalid_connection
}
 Describes the state of the connection. More...
enum class  ContextMenuActions {
  e_show_properties , e_make_visible , e_hide_everything_except , e_make_invisible ,
  e_edit_material , e_mesh , e_save , e_explode ,
  e_group , e_import_from_library , e_delete_from_library , e_add_station ,
  e_delete_object , e_station_text_visible , e_station_lines_visible , e_station_axis_visible ,
  e_deploy_to_station , e_deploy_to_borehole , e_add_deployment , e_none
}
 Default built-in context menu actions. More...
enum class  DenseReconstructionMode : uint01 { e_cpu_openmvs , e_gpu_openmvs_fusion , e_gpu_direct_fusion }
 Controls the dense reconstruction pipeline. More...
enum  DependencyType {
  e_file , e_library , e_executable , e_module ,
  e_type , e_firewall_exception , e_bundled_folder , e_rcc_resource ,
  e_source_folder , e_install_executable
}
 Stores the type of dependency for a Module or resource. More...
enum class  DesignDialogStyle {
  e_edit_settings , e_object_creation , e_next_back_workflow , e_finish_back_workflow ,
  e_next_workflow , e_finish_workflow , e_no_decoration
}
 Styles controlling the appearance and behavior of a DesignObjectDialog. More...
enum  DimensionValues : uint01
 Values that represent dimension values. More...
enum  DropArea {
  e_drop_invalid , e_drop_popup , e_drop_center , e_drop_top_fixed ,
  e_drop_right_fixed , e_drop_left_fixed , e_drop_bottom_fixed , e_drop_top_direct_fixed ,
  e_drop_right_direct_fixed , e_drop_left_direct_fixed , e_drop_bottom_direct_fixed , e_drop_top_insert ,
  e_drop_right_insert , e_drop_left_insert , e_drop_bottom_insert
}
 relates where a widget should be dropped relative to another. More...
enum class  DXFEntityCodes
 Types of CAD entities natively supported by the NDEVR API. More...
enum class  DXFVersion
 Versions of the DXF we support writing out. More...
enum  eCameraModelType { e_pinhole , e_kannala_brandt_8 }
 Camera model type enumeration. More...
enum class  EditorShowMode { e_flexible , e_side_panel , e_popup , e_fullscreen }
 Describes how an Editor should be displayed within the application UI. More...
enum  ErrorCode {
  PARSE_SUCCESS = 0 , PARSE_INVALID_JPEG = 1 , PARSE_UNKNOWN_BYTEALIGN = 2 , PARSE_ABSENT_DATA = 3 ,
  PARSE_CORRUPT_DATA = 4
}
 Error codes returned by EXIF/XMP parsing functions. More...
enum  EulerPosition : uint01 { ROLL , PITCH , YAW }
 Values that represent euler angles. More...
enum class  ExecuteCriteria {
  e_is_undefined , e_is_defined , e_contains , e_is_equal_to ,
  e_is_not_equal_to , e_does_not_contain , e_is_true , e_is_false ,
  e_file_exists , e_file_not_exists
}
 Specifies conditional criteria that determine whether a build action should execute. More...
enum  FieldCode { FIELD_NA = 0 , FIELD_EXIF = (1 << 0) , FIELD_XMP = (1 << 1) , FIELD_ALL = FIELD_EXIF | FIELD_XMP }
 Bit flags indicating which metadata fields are available after parsing. More...
enum  FileProperty { e_file_cache_is_valid , e_file_exists , e_file_is_hidden , e_file_is_directory }
 Booleans that can be used to define properties of a file. More...
enum  GeodeticValues : uint01
 Values that represent dimension values for geodic dimensions. More...
enum  GeometryBooleanOperation { e_concatinate , e_subtract , e_cut }
 Types of GeometryBoolean operations supported natively by the NDEVR engine. More...
enum class  GeometryType {
  e_points , e_linework , e_triangles , e_convex_polygons ,
  e_concave_polygons , e_grids , e_block_models , e_geometry_type_size
}
 Describes the high-level geometric topology of a Geometry object. More...
enum class  GNSSConstellation {
  e_unknown , e_gps , e_sbas , e_glonass ,
  e_gnss , e_galileo , e_beidou , e_quasi_zenith ,
  e_navic
}
 Identifies the satellite constellation system providing GNSS data. More...
enum  GNSSMode {
  e_not_set , e_local_machine , e_rw5_file , e_nmea_file ,
  e_connection
}
 Specifies the GPS data source mode used by the sensor. More...
enum class  GNSSQuality {
  e_invalid = 0 , e_gps_autonomous = 1 , e_gps_dsps_fix = 2 , e_pps_fix = 3 ,
  e_rtk_fix = 4 , e_rtk_float = 5 , e_estimated = 6 , e_unknown = 7 ,
  e_timeout , e_size
}
 Describes the quality level of a GNSS position fix. More...
enum  GyroState {
  e_no_gyro , e_gyro_invalid , e_gyro_valid , e_initializing ,
  e_disabled , e_stabalizing_temp , e_calculating_drift , e_validating_drift ,
  e_needs_reset
}
 Used by OrientationSensor to display the current state of any available gyro. More...
enum  InterpolationValues
 Values that represent interpolation functions. More...
enum  IntersectionTypes
 Used for classifying shape intersections. More...
enum  LevelingState { e_not_used , e_level_invalid , e_level_warning , e_level_valid }
 Reports the current leveling state of the orientation sensor, indicating whether the device is within acceptable tilt limits. More...
enum  LocationValues : uint01
 Values that represent location values. More...
enum  MagnetometerState { e_no_compass , e_compass_valid , e_compass_invalid , e_calculating_bias }
 Used by OrientationSensor to display the current state of any available magnetometer. More...
enum  NDEVRLightingTheme { e_dark_theme , e_light_theme , e_num_of_themes }
 Enumerates the available UI color themes. More...
enum  NDEVRRibbonAction {
  e_save_file , e_save_as_file , e_open_project , e_undo ,
  e_redo , e_help , e_settings , e_ribbon_action_size
}
 Enumerates the standard ribbon actions available in the NDEVR application. More...
enum  NDEVRSelectionAction { e_save_selection , e_delete_selection , e_selection_action_size }
 Actions that can be performed on the current selection. More...
enum class  NDPE : uint01 {
  effect_type , is_active , start_time , end_time ,
  frequency , extra_size , extra_transform , destroy_when_finished ,
  target_property , target_value_a , target_value_b
}
 NDPE - NDEVR Design Property Effect: Values stored in the effect database. More...
enum class  NDPG {
  geometry_type , thickness , thickness_mode , winding ,
  property_fields , is_surface , has_closed_primitive , plane_normal ,
  plane_offset , poly_holes , is_smooth , smooth_algorithm ,
  smooth_level , normal_mode , normal_smoothing_angle , is_closed_solid ,
  shape_type , is_clipping_geo , preserve_primitive_order , preserve_vertex_order ,
  no_auto_tree_creation
}
 Forward declaration for Geometry design object. More...
enum class  NDPM {
  two_sided , shading_model , opacity , bump_scale ,
  shininess , reflectivity , wireframe , smooth_normals ,
  pixel_thickness , grid_line_spacing , gridline_spacing_mode , model_space_material ,
  color_value_palette , draw_by_property_channel , extra_property_value_min , extra_property_value_mid ,
  extra_property_value_max , override_parent_material , override_camera_material , tile_texture_mode ,
  texture_coord_mode , use_normal_for_tex_coord , ignore_depth , write_to_depth ,
  depth_bias , fade_render_distance , max_render_distance , ignore_color_channel_lighting ,
  material_property_size
}
 NDPM - NDEVR Design Property Material: Values stored in the material database. More...
enum class  NDPN {
  type , fixed_bounding_box , visible_box , calculation_ignored ,
  can_select_children , complete_transform , material_mode , parent_matrix_flags ,
  global_bounds , global_selection_bounds , model_color , inherited_flags ,
  personal_inherited_flags , export_ignored , child_base_ptr , parent_base_ptr ,
  material_base_ptr , geometry_base_ptr , model_property_size
}
 NDPN - NDEVR Design Property Node: Values stored in the model database. More...
enum class  NDPO : uint04 {
  guid , design_type , transform , bounding_box ,
  name , description , editable_description , creation_time ,
  modified_time , asc_modified_time , desc_modified_time , geometry_modified_time ,
  author , creation_software , spacial_visible , tree_visible ,
  icon , is_selected , is_focused , allow_interactions ,
  file , search_terms , category , deletion_allowed ,
  is_deleted , application_locked , is_application_owned , bounds_ignored ,
  selection_ignored , meta_data , untranslated_string_data , translated_string_data ,
  uncompressed_data , compressed_data , library_id , is_frozen ,
  applied_filters , property_size
}
 NDPO - NDEVR Design Property Object: Values stored in the property database. More...
enum class  NDPOC {
  name , description , creation_software , category ,
  search_terms , author
}
 NDPOC - NDEVR Design Property Calculated: Values calculated then stored in the property database. More...
enum  NMEAError {
  ERROR_OK , ERROR_OK_PARTIAL_PACKET , ERROR_FAIL , ERROR_TOO_MANY_SATELLITES ,
  ERROR_INCOMPLETE_PACKET , ERROR_CHECKSUM , ERROR_RX_BUFFER_OVERFLOW , ERROR_CMD_BUFFER_OVERFLOW
}
 Error types. More...
enum class  NormalMode { e_no_normals , e_smooth_normals , e_vertex_smooth_normals , e_hard_normals }
 Describes how surface normals are computed or stored for a Geometry object. More...
enum  NtpLeapIndicator { NoWarning = 0 , LastMinute61Warning = 1 , LastMinute59Warning = 2 , UnsynchronizedWarning = 3 }
 NTP leap second indicators. More...
enum  NtpMode {
  ReservedMode = 0 , SymmetricActiveMode = 1 , SymmetricPassiveMode = 2 , ClientMode = 3 ,
  ServerMode = 4 , BroadcastMode = 5 , ControlMode = 6 , PrivateMode = 7
}
 NTP association modes defining the relationship between communicating peers. More...
enum  NtpStratum { UnspecifiedStratum = 0 , PrimaryStratum = 1 , SecondaryStratumFirst = 2 , SecondaryStratumLast = 15 , UnsynchronizedStratum = 16 }
 NTP stratum levels indicating the distance from the reference clock. More...
enum class  OnFailureAction { e_stop_workflow , e_ignore , e_shutdown_software , e_prompt_user }
 Specifies the behavior when a build action fails during workflow execution. More...
enum  PacketType : uint01 { e_command_packet = 0 , e_probe_info_packet = 1 , e_cloud_data = 2 }
 Enumeration of RealSense network packet types. More...
enum class  PCSWMAGINSStatus {
  CSW_INVALID = 0 , CSW_COARSE_ALIGN = 1 , CSW_FINE_ALIGN = 2 , CSW_FULL_NAV = 3 ,
  CSW_GNSS_FLOAT = 4 , CSW_GNSS_FIXED = 5
}
 Status values for the PCSW MAGINS (INS) status field. More...
enum class  PermissionState : uint01 { e_unknown , e_denied , e_granted , e_permanently_denied }
 Represents the current state of a permission request or check. More...
enum class  PhotogrammetryGeoreferenceMode : uint01 { e_gps_exif , e_gcp_file }
 Controls how image positions are georeferenced. More...
enum class  PhotogrammetryGPSAccuracy : uint01 { e_consumer , e_rtk }
 GPS accuracy profile for SfM position prior weighting. More...
enum class  PhotogrammetryQuality : uint01 { e_draft , e_normal , e_high }
 Controls which feature extractor and matching strategy OpenMVG uses. More...
enum class  PhotogrammetryStage : uint01 {
  e_listing_images , e_extracting_features , e_matching_features , e_sfm ,
  e_dense_reconstruction , e_building_scene , e_done , e_cancelled ,
  e_failed
}
 Describes which stage of the photogrammetry pipeline is currently running. More...
enum class  PlanePosition
 The location of an object either below, above, or on a given N-dimensional plane. More...
enum class  PrimitiveBitFlags {
  e_is_selected = 0x01 , e_is_hidden = 0x02 , e_is_locked = 0x04 , e_is_deleted = 0x08 ,
  e_is_closure_primitive = 0x10
}
 Bit flags that can be set on individual primitives (triangles, lines, etc.) to control their selection, visibility, and deletion state. More...
enum class  PrimitiveMode {
  e_no_index , e_point , e_lines , e_polyline ,
  e_triangle , e_triangle_fan , e_triangle_strip , e_grid ,
  e_block_model , e_index_mode_size
}
 Used with Geometry to describe how vertices and indices are used to form shapes. More...
enum class  PrimitiveProperty { Outline , Solid , Vertices , Index_Property_Size }
 Describes which rendering property a primitive index buffer corresponds to. More...
enum  ProcessStage {
  e_collect , e_slam_correction , e_point_transform , e_point_smooth ,
  e_block_model_add , e_stage_size
}
 Processing stage within the raster point pipeline. More...
enum  RangeSensorType { e_line , e_2d_fan , e_3d_fan }
 The type of a range sensor. More...
enum class  RasterColorFormat { e_rgb , e_bgr , e_yuv , e_y8 }
 Pixel format of the raster color data stream. More...
enum class  RawConnectionLoggingMode { e_no_logging , e_binary_logging , e_ascii_logging }
 Connection can write to the log either as raw ascii bytes, or by converting those bytes into a binary-friendly hex format. More...
enum  RealSenseDeviceType : uint01 {
  e_unknown , e_d405 , e_d435 , e_d455 ,
  e_d457 , e_t265
}
 Enumeration of supported RealSense device types. More...
enum class  RegistryActionType { e_append , e_create , e_remove }
 Available registry actions that can be taken on program installation. More...
enum class  RegistryType {
  e_string , e_integer , e_binary , e_expandable ,
  e_multi_string , e_folder
}
 Available registry actions that can be taken on program installation. More...
enum class  RegistyEntryType {
  e_none = 0U , e_sz = 1U , e_expand_sz = 2U , e_binary = 3U ,
  e_dword = 4U , e_dword_little_endian = 4U , e_dword_big_endian = 5U , e_link = 6U ,
  e_multi_sz = 7U , e_resource_list = 8U , e_full_resource_descriptor = 9U , e_resource_requirements_list = 10U ,
  e_qword = 11U , e_qword_little_endian = 11U
}
 Specifies the data type stored in a Windows registry value. More...
enum class  RibbonArea {
  e_keep_square , e_top , e_bottom , e_left ,
  e_right , e_left_horizontal , e_right_horizontal , e_vertical_accordian ,
  e_vertical_menu
}
 Requests a ribbon or tab area to be in a certain location and orientation relative to another widget. More...
enum  RibbonLayoutMode
 The orientations a ribbon can take on. More...
enum  RMC_MODE_E {
  RMC_MODE_AUTONOMOUS = 'A' , RMC_MODE_DIFFERENTIAL = 'D' , RMC_MODE_ESTIMATED = 'E' , RMC_MODE_FLOAT = 'F' ,
  RMC_MODE_MANUAL = 'M' , RMC_MODE_NO_FIX = 'N' , RMC_MODE_PRECICE = 'P' , RMC_MODE_RTK = 'R' ,
  RMC_MODE_SIMULATOR = 'S'
}
 RMC sentence positioning mode indicator values. More...
enum  RMC_STATUS_E { RMC_STATUS_ACTIVE = 'A' , RMC_STATUS_VOID = 'V' }
 RMC sentence status field values. More...
enum class  ScanDialogAction {
  e_take_reading , e_remove_last_reading , e_calibrate_gyro , e_edit_station ,
  e_edit_deployment_length , e_toggle_light , e_toggle_last_hit , e_start_scan ,
  e_stop_scan , e_pause_scan , e_toggle_deployment_mode , e_perform_deployment_scan ,
  e_show_temp , e_show_battery , e_zoom_to_deployment , e_zoom_to_probe ,
  e_swap_cameras , e_action_size
}
 Actions that can be triggered from keyboard shortcuts in the point scanner dialog. More...
enum class  ScanMode {
  e_horizontal , e_vertical , e_horizontal_and_vertical , e_circle_scan ,
  e_moving_circle_scan , e_image_only , e_video_scan , e_undefined
}
 The mode that a scanner will collect data in. More...
enum  SelectionMode
enum class  ServerRequestType : uint04
 Enumerates the types of requests that can be sent between NDEVR file clients and servers. More...
enum class  SnapLocation {
  e_isometric_nw , e_isometric_n , e_isometric_ne , e_isometric_w ,
  e_top_down_snap , e_bottom_snap , e_isometric_e , e_isometric_sw ,
  e_isometric_s , e_isometric_se , e_n_side_snap , e_s_side_snap ,
  e_e_side_snap , e_w_side_snap , e_front , e_back ,
  e_back_wo_pitch , e_left , e_right , e_front_wo_pitch_yaw ,
  e_back_wo_pitch_yaw , e_left_wo_yaw , e_right_wo_yaw , e_best_snap ,
  e_best_side_snap , e_no_snap
}
 A list of directions that a view can be pointed relative to an object or scene. More...
enum class  SplineBoundaryType { e_first_deriv = 1 , e_second_deriv = 2 , e_not_a_knot = 3 }
 Defines the boundary condition type applied at spline end-points. More...
enum class  SplineType { e_linear = 10 , e_cspline = 30 , e_cspline_hermite = 31 }
 Defines the type of interpolation used for a spline curve. More...
enum  SubSelectionMode {
  e_single_model , e_vertex_rectangle_selection , e_vertex_polygon_selection , e_no_selection ,
  e_sub_selection_size
}
 Defines the mode of sub-selection used by the SelectionController. More...
enum  TALKER_ID_E {
  TID_AB = (uint16_t)'A' << 8 | (uint16_t)'B' , TID_AD = (uint16_t)'A' << 8 | (uint16_t)'D' , TID_AG = (uint16_t)'A' << 8 | (uint16_t)'G' , TID_AP = (uint16_t)'A' << 8 | (uint16_t)'P' ,
  TID_BD = (uint16_t)'B' << 8 | (uint16_t)'D' , TID_BN = (uint16_t)'B' << 8 | (uint16_t)'N' , TID_CC = (uint16_t)'C' << 8 | (uint16_t)'C' , TID_CD = (uint16_t)'C' << 8 | (uint16_t)'D' ,
  TID_CM = (uint16_t)'C' << 8 | (uint16_t)'M' , TID_CS = (uint16_t)'C' << 8 | (uint16_t)'S' , TID_CT = (uint16_t)'C' << 8 | (uint16_t)'T' , TID_CV = (uint16_t)'C' << 8 | (uint16_t)'V' ,
  TID_CX = (uint16_t)'C' << 8 | (uint16_t)'X' , TID_DE = (uint16_t)'D' << 8 | (uint16_t)'E' , TID_DF = (uint16_t)'D' << 8 | (uint16_t)'F' , TID_DU = (uint16_t)'D' << 8 | (uint16_t)'U' ,
  TID_EC = (uint16_t)'E' << 8 | (uint16_t)'C' , TID_EP = (uint16_t)'E' << 8 | (uint16_t)'P' , TID_ER = (uint16_t)'E' << 8 | (uint16_t)'R' , TID_GA = (uint16_t)'G' << 8 | (uint16_t)'A' ,
  TID_GB = (uint16_t)'G' << 8 | (uint16_t)'B' , TID_GL = (uint16_t)'G' << 8 | (uint16_t)'L' , TID_GN = (uint16_t)'G' << 8 | (uint16_t)'N' , TID_GP = (uint16_t)'G' << 8 | (uint16_t)'P' ,
  TID_HC = (uint16_t)'H' << 8 | (uint16_t)'C' , TID_HE = (uint16_t)'H' << 8 | (uint16_t)'E' , TID_HN = (uint16_t)'H' << 8 | (uint16_t)'N' , TID_II = (uint16_t)'I' << 8 | (uint16_t)'I' ,
  TID_IN = (uint16_t)'I' << 8 | (uint16_t)'N' , TID_LA = (uint16_t)'L' << 8 | (uint16_t)'A' , TID_LC = (uint16_t)'L' << 8 | (uint16_t)'C' , TID_MP = (uint16_t)'M' << 8 | (uint16_t)'P' ,
  TID_NL = (uint16_t)'N' << 8 | (uint16_t)'L' , TID_OM = (uint16_t)'O' << 8 | (uint16_t)'M' , TID_OS = (uint16_t)'O' << 8 | (uint16_t)'S' , TID_QZ = (uint16_t)'Q' << 8 | (uint16_t)'Z' ,
  TID_RA = (uint16_t)'R' << 8 | (uint16_t)'A' , TID_SD = (uint16_t)'S' << 8 | (uint16_t)'D' , TID_SN = (uint16_t)'S' << 8 | (uint16_t)'N' , TID_SS = (uint16_t)'S' << 8 | (uint16_t)'S' ,
  TID_TI = (uint16_t)'T' << 8 | (uint16_t)'I' , TID_TR = (uint16_t)'T' << 8 | (uint16_t)'R' , TID_U0 = (uint16_t)'U' << 8 | (uint16_t)'0' , TID_U1 = (uint16_t)'U' << 8 | (uint16_t)'1' ,
  TID_U2 = (uint16_t)'U' << 8 | (uint16_t)'2' , TID_U3 = (uint16_t)'U' << 8 | (uint16_t)'3' , TID_U4 = (uint16_t)'U' << 8 | (uint16_t)'4' , TID_U5 = (uint16_t)'U' << 8 | (uint16_t)'5' ,
  TID_U6 = (uint16_t)'U' << 8 | (uint16_t)'6' , TID_U7 = (uint16_t)'U' << 8 | (uint16_t)'7' , TID_U8 = (uint16_t)'U' << 8 | (uint16_t)'8' , TID_U9 = (uint16_t)'U' << 8 | (uint16_t)'9' ,
  TID_UP = (uint16_t)'U' << 8 | (uint16_t)'P' , TID_VD = (uint16_t)'V' << 8 | (uint16_t)'D' , TID_DM = (uint16_t)'D' << 8 | (uint16_t)'M' , TID_VW = (uint16_t)'V' << 8 | (uint16_t)'W' ,
  TID_WI = (uint16_t)'W' << 8 | (uint16_t)'I' , TID_YC = (uint16_t)'Y' << 8 | (uint16_t)'C' , TID_YD = (uint16_t)'Y' << 8 | (uint16_t)'D' , TID_YF = (uint16_t)'Y' << 8 | (uint16_t)'F' ,
  TID_YL = (uint16_t)'Y' << 8 | (uint16_t)'L' , TID_YP = (uint16_t)'Y' << 8 | (uint16_t)'P' , TID_YR = (uint16_t)'Y' << 8 | (uint16_t)'R' , TID_YT = (uint16_t)'Y' << 8 | (uint16_t)'T' ,
  TID_YV = (uint16_t)'Y' << 8 | (uint16_t)'V' , TID_YX = (uint16_t)'Y' << 8 | (uint16_t)'X' , TID_ZA = (uint16_t)'Z' << 8 | (uint16_t)'A' , TID_ZC = (uint16_t)'Z' << 8 | (uint16_t)'C' ,
  TID_ZQ = (uint16_t)'Z' << 8 | (uint16_t)'Q' , TID_ZV = (uint16_t)'Z' << 8 | (uint16_t)'V'
}
 All known NMEA talker IDs, encoded as two-character identifiers packed into 16-bit integer values. More...
enum class  TextAlignment {
  e_left = 0x01 , e_right = 0x02 , e_top = 0x04 , e_bottom = 0x08 ,
  e_bottom_base = 0x10 , e_h_center = e_left | e_right , e_v_center = e_top | e_bottom , e_v_baseline_center = e_top | e_bottom_base ,
  e_center = e_v_center | e_h_center
}
 How to align text into a given container. More...
enum class  TooltipType
 Enums for program-generated tooltips. More...
enum class  TransitIncidentEntityType { e_vehicle , e_person , e_property , e_none }
 Classifies the type of entity involved in a transit incident. More...
enum  TransitIncidentPersonType {
  e_undefined , e_driver , e_employee , e_witness ,
  e_officer , e_owner , e_passenger , e_pedestrian
}
 Classifies the role of a person involved in a transit incident. More...
enum  TriangleLocation
 Values that represent triangle locations. More...
enum class  UnitCategory {
  e_undefined_unit , e_angle , e_orientation , e_distance ,
  e_coordinate , e_surface_area , e_volume , e_weight ,
  e_speed , e_acceleration , e_rotational_speed , e_time ,
  e_force , e_ratio , e_lat_lon
}
 A category of unit describing what it relates to. More...
enum class  URDFJointType {
  e_unknown , e_rotation_axis , e_continuous , e_prismatic ,
  e_floating , e_planer , e_fixed
}
 Enumerates the types of joints supported in URDF robot descriptions. More...
enum class  UVType {
  e_KD , e_KS , e_KA , e_reflect ,
  e_emmisive , e_normal , e_displace , e_uv_size
}
 Channels that describe how an object should interact with light. More...
enum  VehicleType {
  e_mini_compact_sedan , e_sub_compact_sedan , e_compact_sedan , e_mid_sized_sedan ,
  e_large_sedan , e_hatchback , e_coupe , e_sport_car ,
  e_sport_convertible , e_light_duty_truck , e_medium_duty_truck , e_heavy_duty_truck ,
  e_station_wagon , e_suv_small , e_suv_large , e_cargo_van_small ,
  e_cargo_van_large , e_passenger_van_small , e_passenger_van_large
}
 Enumeration of standard vehicle body type classifications. More...
enum class  VertexFlags : uint01 {
  e_is_selected , e_is_hidden , e_is_locked , e_is_filtered ,
  e_is_closure_location , e_is_smooth
}
 Bit flags that can be set on individual vertices to control selection, visibility, and behavior. More...
enum class  VertexProperty : uint01 {
  Position = 0 , Normal = 1 , Tangent = 2 , BiTangent = 3 ,
  Color = 4 , Texture = 5 , BitFlag = 6 , Bones = 7 ,
  PreSmoothedPosition = 8 , Region = 9 , Vertex_Property_Size , Invalid = 255
}
 Per-vertex data channels that can be stored in the vertex table to be used by Geometry. More...
enum class  ViewportLayoutTheme {
  e_undefined , e_1_panel , e_1l1r_panel , e_2l1r_panel ,
  e_1l2r_panel , e_2l2r_panel
}
 The potential layouts of multiple viewports within the NDEVR engine. More...
enum class  WindingMode { e_no_winding , e_clockwise_winding , e_counterclockwise_winding , e_indeterminate_winding }
 Describes the vertex winding order used to determine front-facing direction of polygons. More...

Functions

template<class T>
constexpr T _BE (T v) noexcept
 Converts a value from big-endian to native byte order.
template<class T>
constexpr T _LE (T v) noexcept
 Converts a value from little-endian to native byte order.
template<class t_angle_type>
constexpr Angle< t_angle_type > abs (const Angle< t_angle_type > &value)
 Changes an input with a negative sign, to a positive sign.
template<class t_type>
constexpr std::enable_if< IsVec< t_type >::value, t_type >::type abs (const t_type &value)
 Returns the absolute value of the value.
template<class t_type>
constexpr std::enable_if<!IsVec< t_type >::value, t_type >::type abs (const t_type &value)
 Returns the absolute value of the value.
constexpr TimeSpan abs (const TimeSpan &value)
 Returns the absolute value of the timespan.
template<>
constexpr uint01 abs (const uint01 &value)
 Returns the absolute value of the value.
template<>
constexpr uint02 abs (const uint02 &value)
 Returns the absolute value of the value.
template<>
constexpr uint04 abs (const uint04 &value)
 Returns the absolute value of the value.
template<>
constexpr uint08 abs (const uint08 &value)
 Returns the absolute value of the value.
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > abs (const Vector< t_dims, t_type > &vector)
 Returns the absolute value of the vector, perfoming abs() on each dimension.
void AddCADInterfaceFunctionsToModuleManager ()
 Registers all CADInterface module hook functions with the module manager.
void AddCoordinateProjectionFunctionsToModuleManager ()
 Registers all CoordinateProjection module hook functions with the ModuleManager.
void AddDesignWidgetsFunctionsToModuleManager ()
 Registers all DesignWidgets module hook functions with the global ModuleManager.
void AddGeoSLAMInterfaceFunctionsToModuleManager ()
 Registers all GeoSLAMInterface module hook functions with the module manager.
void AddGISDataModuleToModuleManager ()
 Registers all GISData module hook functions with the module manager.
void AddGPSInterfaceFunctionsToModuleManager ()
 Registers all GPSInterface module hook functions with the module manager.
void AddGraphOptimizationFunctionsToModuleManager ()
 Registers all GraphOptimization module hook functions with the module manager.
void AddHardwareFunctionsToModuleManager ()
 Registers all Hardware module hook functions with the module manager.
void AddHardwareWidgetsFunctionsToModuleManager ()
 Registers all HardwareWidgets module hook functions with the module manager.
void AddIredesFunctionsToModuleManager ()
 Registers all Iredes module hook functions with the module manager.
void AddKMLInterfaceFunctionsToModuleManager ()
 Registers all KMLInterface module hook functions with the module manager.
void AddNDEVRBluetoothFunctionsToModuleManager ()
 Registers all NDEVRBluetooth module hook functions with the module manager.
void AddNDEVRChartsFunctionsToModuleManager ()
 Register all NDEVRCharts module hook functions with the module manager.
void AddNDEVRGraphicsFunctionsToModuleManager ()
 Registers all NDEVRGraphics module hook functions with the module manager.
void AddNDEVRMakeFunctionsToModuleManager ()
 Registers all NDEVRMake module hook functions with the module manager.
void AddNDEVRSurfacingFunctionsToModuleManager ()
 Registers all NDEVRSurfacing module hook functions with the ModuleManager.
void AddOpenCVInterfaceModuleToModuleManager ()
 Registers all OpenCVInterface module hook functions with the ModuleManager.
void AddOptechModuleToModuleManager ()
 Registers all Optech hook functions with the NDEVR module manager.
void AddOrbSLAMFunctionsToModuleManager ()
 Registers all OrbSLAM module hook functions with the module manager.
void AddPDFFunctionsToModuleManager ()
 Registers all PDF module hook functions with the module manager.
void AddPointScannerFunctionsToModuleManager ()
 Register all PointScanner module hook functions with the module manager.
void AddRealSenseInterfaceFunctionsToModuleManager ()
 Registers all RealSenseInterface module hook functions with the module manager.
void AddSHPInterfaceFunctionsToModuleManager ()
 Registers all SHPInterface module hook functions with the module manager.
void AddSketchupInterfaceModuleToModuleManager ()
 Registers all SketchupInterface module hook functions with the module manager.
void AddSweetHomeInterfaceFunctionsToModuleManager ()
 Registers all SweetHomeInterface module hook functions with the module manager.
void AddTransitIncidentManagerFunctionsToModuleManager ()
 Registers all TransitIncidentManager module hook functions with the module manager.
void AddURDFInterfaceFunctionsToModuleManager ()
 Registers all URDFInterface module hook functions with the module manager.
void AddVehicleDatabaseFunctionsToModuleManager ()
 Registers all VehicleDatabase hook functions with the NDEVR module manager.
void AddVLCInterfaceFunctionsToModuleManager ()
 Registers all VLCInterface hook functions with the module manager.
void AddVNCInterfaceFunctionsToModuleManager ()
 Registers all VNCInterface hook functions with the NDEVR module manager.
void AddVulkanVideoStreamerFunctionsToModuleManager ()
 Registers all VulkanVideoStreamer hook functions with the NDEVR module manager.
void AddXRInterfaceModuleToModuleManager ()
 Register all XRInterface module hook functions with the module manager.
template<class t_buffer_type>
uint04 ApxMedian (const t_buffer_type &elements, const Buffer< uint04 > &indices, uint04 start, uint04 end, uint01 dimension)
 Returns the aproximate median, or value that is close to the median, significantly faster than it would take to calculate the true median.
template<class t_type, class t_node_type>
uint04 ApxNthElement (const Buffer< t_node_type > &points, Buffer< uint04 > &indices, uint04 start, uint04 end, uint01 dimension)
 Returns the aproximate Nth element, or value that is close to the Nth Element, significantly faster than it would take to calculate the true Nth element of the sorted series.
template<uint01 t_dims, class t_type>
bool AreParallel (const Vector< t_dims, t_type > &v1, const Vector< t_dims, t_type > &v2)
bool arrayHasInvalid (const g_type *array, int size, int *nanIndex=0)
 tests whether there is a Invalid in the array
template<class t_type>
Angle< t_type > asqrt (const Angle< t_type > &value)
 Computes the square root of the internal representation of an angle.
template<class t_type_a>
void assign (t_type_a &a, const char *b)
 Assigns a C-string to a variable by converting to the target type.
template<class t_type_a>
void assign (t_type_a &a, const t_type_a &b)
 Assigns a value to a variable of the same type without casting.
template<class t_type_a, class t_type_b>
void assign (t_type_a &a, const t_type_b &b)
 Assigns a value of one type to a variable of another type using a cast.
template<class t_type_a, uint01 t_dim_b, class t_type_b>
void assign (t_type_a &a, const Vector< t_dim_b, t_type_b > &b)
 Assigns the first element of a Vector to a scalar variable.
template<class t_type_a, uint01 t_dim_b, class t_type_b>
void assign (t_type_a &a, const Vector< t_dim_b, t_type_b > &b, uint01 dim)
 Assigns a specific dimension of a Vector to a scalar variable.
template<uint01 t_dim_a, class t_type_a, uint01 t_dim_b, class t_type_b>
void assign (Vector< t_dim_a, t_type_a > &a, const Vector< t_dim_b, t_type_b > &b)
 Assigns a Vector of one dimensionality and type to a Vector of another dimensionality and type.
template<uint01 t_dim_a, class t_type_a, uint01 t_dim_b, class t_type_b>
void assign (Vector< t_dim_a, t_type_a > &a, const Vector< t_dim_b, t_type_b > &b, uint01 dim)
 Assigns a single dimension of one Vector to the same dimension of another Vector.
static String AssimpLicense ()
 The license for using the open-source Assimp library.
static String AssimpLicense ()
 Returns the VLC/LGPL license text as a String.
template<class t_type>
static constexpr Angle< t_type > Average (const Angle< t_type > &angle_a, const Angle< t_type > &angle_b)
 Calculates the average of two normalized angles.
template<uint01 t_dims, class t_type>
static constexpr Vector< t_dims, Angle< t_type > > Average (const Vector< t_dims, Angle< t_type > > &angle_a, const Vector< t_dims, Angle< t_type > > &angle_b)
 Calculates the average of two normalized angles.
g_type average_angle (g_type theta1, g_type theta2)
 average two angles
template<class T>
constexpr T ByteSwap (T v) noexcept
 Reverses the byte order of an integral value.
template<class t_to, class t_from>
constexpr t_to cast (const Angle< t_from > &value)
 Casts an Angle from one backing type to another.
template<>
constexpr uint04 cast (fltp04 value)
 Casts the given value.
template<>
constexpr uint04 cast (fltp08 value)
 Casts the given value.
template<>
constexpr uint04 cast (sint04 value)
 Casts the given value.
template<>
constexpr uint04 cast (sint08 value)
 Casts the given value.
template<class t_to, class t_from>
constexpr t_to cast (t_from value)
 Casts the given value.
template<class t_type>
constexpr t_type ChangeEndian (t_type in)
XrResult CheckXrResult (XrResult res, const char *originator=nullptr, const char *sourceLocation=nullptr)
 Check an XrResult and throw if it indicates failure.
constexpr uint04 cipow (uint04 num, uint04 pow)
 Compile-time integer power function.
template<typename T>
clamp (T l, T x, T u)
 clamp x to the interval [l, u]
template<class t_other_type, uint01 t_dims, class t_type>
IntersectionTypes classify (const t_other_type &other, const SelectionArea< t_dims, t_type > &area)
template<typename t_type>
constexpr t_type clip (const t_type &value, const t_type &lower_bound, const t_type &upper_bound)
 Clips the value given so that that the returned value falls between upper and lower bound.
template<uint01 t_dims, class t_type, class t_vertex>
constexpr Vector< t_dims, t_type > ClosestPoint (const Triangle< t_dims, t_type, t_vertex > &tri, const t_vertex &point)
static cv::Mat Convert (const Matrix< fltp04 > &transform)
 Converts an NDEVR Matrix to an OpenCV 4x4 matrix.
static Matrix< fltp04Convert (cv::Mat mat)
 Converts an OpenCV 4x4 matrix to an NDEVR Matrix.
static Matrix< fltp04Convert (Eigen::Matrix4f mat)
 Converts an Eigen 4x4 float matrix to an NDEVR Matrix.
static ConstPointer< UnitConvertFromCADUnit (uint04 cad_unit)
 Converts from a given CAD index unit.
static cv::Mat ConvertImgToColor (rs2::video_frame a_frame)
 Converts a RealSense video frame to an OpenCV RGB color matrix.
static cv::Mat ConvertImgToGray (rs2::video_frame a_frame)
 Converts a RealSense video frame to an OpenCV grayscale matrix.
template<class t_type>
std::enable_if< ObjectInfo< t_type >::Float, fltp08 >::type cos (const Angle< t_type > &angle)
 Performs cosine operation on the given angle.
template<class t_type>
std::enable_if<!ObjectInfo< t_type >::Float, fltp08 >::type cos (const Angle< t_type > &angle)
 Performs optimized cosine operation on the given angle using pre-computed lookup table for optimal speed.
template<class t_type>
t_type cos (const t_type &angle)
 Performs cosine operation on the given angle assumed to be in radians.
template<class t_type>
constexpr Vector< 1, t_type > cross (const Vector< 1, t_type > &, const Vector< 1, t_type > &)
g_type deg2rad (g_type degree)
 convert from degree to radian
Vector3< g_type > deltaR (const Matrix3< g_type > &R)
 Extracts the rotation vector from a rotation matrix using the Rodrigues formula.
template<uint01 t_dims, class t_type>
t_type determinate (const Vector< t_dims, t_type > &v1, const Vector< t_dims, t_type > &v2)
template<uint01 t_dims, class t_type>
t_type determinate (const Vector< t_dims, t_type > &v1, const Vector< t_dims, t_type > &v2, const Vector< t_dims, t_type > &v3)
template<size_t t_size>
static constexpr size_t DetermineAlignment () noexcept
 Determines the optimal memory alignment for an allocation of the given byte size.
template<class t_type>
static constexpr Angle< t_type > difference (const Angle< t_type > &angle_a, const Angle< t_type > &angle_b)
 Calculates minimal absolute signed angle between two angles.
template<uint01 t_dims, class t_type>
static constexpr Vector< t_dims, Angle< t_type > > difference (const Vector< t_dims, Angle< t_type > > &angle_a, const Vector< t_dims, Angle< t_type > > &angle_b)
 Calculates the minimal absolute signed angle between two angles.
template<class t_distance_type, uint01 t_dims, class t_type>
t_distance_type distance (const Vector< t_dims, t_type > &v1, const Vector< t_dims, t_type > &v2)
template<uint01 t_dims, class t_type>
t_type distance (const Vector< t_dims, t_type > &v1, const Vector< t_dims, t_type > &v2)
template<uint01 t_dims, class t_type, class t_vertex>
t_type distanceSquared (const LineSegment< t_dims, t_type, t_vertex > &line, const t_vertex &vertex)
 Distance squared.
template<uint01 t_dims, class t_type, class t_vertex>
constexpr t_type distanceSquared (const t_vertex &vertex, const LineSegment< t_dims, t_type, t_vertex > &line)
 Distance squared.
template<uint01 t_dims, class t_type, class t_vertex>
constexpr t_type distanceSquared (const Triangle< t_dims, t_type, t_vertex > &tri, const t_vertex &vertex)
template<uint01 t_dims, class t_type>
t_type distanceSquared (const Vector< t_dims, t_type > &v1, const Vector< t_dims, t_type > &v2)
template<uint01 t_dims, class t_type, class t_vertex>
constexpr t_type distanceSquaredOptimized (const LineSegment< t_dims, t_type, t_vertex > &line, const t_vertex &vertex, const t_vertex &ray, const t_type &dot_ray)
 Distance squared optimized.
template<uint01 t_dims, class t_type>
t_type dot (const Vector< t_dims, t_type > &v1, const Vector< t_dims, t_type > &v2)
static String E57License ()
 Returns the Boost Software License text used by the E57 library.
template<bool t_has_winding, uint01 t_dims, class t_type, class t_vertex>
constexpr bool Equals (const Triangle< t_dims, t_type, t_vertex > &tri_a, const Triangle< t_dims, t_type, t_vertex > &tri_b, t_type epsilon=0)
template<uint01 t_dims, class t_type, class t_vertex>
constexpr bool equals (const LineSegment< t_dims, t_type, t_vertex > &left, const LineSegment< t_dims, t_type, t_vertex > &right, const t_type &epsilon=cast< t_type >(0))
 Tests if objects are considered equal.
template<class t_type, uint01 t_row_dims, uint01 t_col_dims>
bool equals (const Matrix< t_type, t_row_dims, t_col_dims > &a, const Matrix< t_type, t_row_dims, t_col_dims > &b, t_type epsilon)
 Checks whether two matrices are approximately equal within a given epsilon tolerance.
template<uint01 t_dims, class t_type>
constexpr bool equals (const Vector< t_dims, t_type > &left, const Vector< t_dims, t_type > &right, const t_type &epsilon=cast< t_type >(0))
template<class t_type, class t_memory_manager>
Buffer< t_type, t_memory_manager > Except (const Buffer< t_type, t_memory_manager > &a, const Buffer< t_type, t_memory_manager > &b)
 Returns elements in buffer a that are not in buffer b, sorting both buffers first.
template<class t_type, class t_memory_manager>
Buffer< t_type, t_memory_manager > ExceptSorted (const Buffer< t_type, t_memory_manager > &a, const Buffer< t_type, t_memory_manager > &b)
 Returns the elements from sorted buffer a which are not found in sorted buffer b.
Eigen::Matrix3< g_type > ExpSO3 (const Eigen::Vector3< g_type > &w)
 Computes the SO3 exponential map from a rotation vector.
Eigen::Matrix3< g_type > ExpSO3 (const g_type x, const g_type y, const g_type z)
 Computes the SO3 exponential map from axis components.
template<typename t_type>
constexpr t_type getMax (const t_type &left, const t_type &right)
 Finds the max of the given arguments using the > operator The only requirement is that t_type have > operator defined.
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > getMax (const Vector< t_dims, t_type > &v1, const Vector< t_dims, t_type > &v2)
template<typename t_type>
constexpr t_type getMin (const t_type &left, const t_type &right)
 Finds the minimum of the given arguments based on the < operator Author: Tyler Parke Date: 2017-11-05.
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > getMin (const Vector< t_dims, t_type > &v1, const Vector< t_dims, t_type > &v2)
template<class t_type>
constexpr std::enable_if< ObjectInfo< t_type >::Buffer, TypeInfo >::type GetTypeInfo ()
 Constructs a TypeInfo for a buffer type at compile time, extracting element type traits from the buffer's contained type.
template<class t_type, bool is_buffer = ObjectInfo<t_type>::Buffer>
constexpr std::enable_if<!ObjectInfo< t_type >::Buffer, TypeInfo >::type GetTypeInfo ()
 Constructs a TypeInfo for a non-buffer type at compile time using ObjectInfo traits.
template<typename T>
hypot (T x, T y)
 return the hypot of x and y
template<typename T>
hypot_sqr (T x, T y)
 return the squared hypot of x and y
template<class t_type, class t_memory_manager>
Buffer< t_type, t_memory_manager > Intersect (const Buffer< t_type, t_memory_manager > &a, const Buffer< t_type, t_memory_manager > &b)
 Computes the intersection of two unsorted buffers by sorting them first.
template<uint01 t_dims, class t_type, class t_vertex>
static LineSegment< t_dims, t_type > intersection (const Bounds< t_dims, t_type, t_vertex > &bounds, const LineSegment< t_dims, t_type, t_vertex > &line)
 Intersections.
template<uint01 t_dims, class t_type, class t_vertex>
static Bounds< t_dims, t_type, t_vertex > intersection (const Bounds< t_dims, t_type, t_vertex > &bounds_1, const Bounds< t_dims, t_type, t_vertex > &bounds_2)
 Given two bounds, returns the intersection between the two of them.
template<uint01 t_dims, class t_type, class t_vertex>
static t_vertex intersection (const Triangle< t_dims, t_type, t_vertex > &tri, const LineSegment< t_dims, t_type, t_vertex > &line, t_type epsilon=0)
 Intersections.
template<uint01 t_dims, class t_type, class t_vertex>
static LineSegment< t_dims, t_type, t_vertex > intersection (const Triangle< t_dims, t_type, t_vertex > &tri_a, const Plane< t_dims, t_type > &plane, t_type epsilon=0)
 Given two triangles, returns the intersection between the two of them assuming that intesection is a line.
template<uint01 t_dims, class t_type, class t_vertex>
static LineSegment< t_dims, t_type, t_vertex > intersection (const Triangle< t_dims, t_type, t_vertex > &tri_a, const Triangle< t_dims, t_type, t_vertex > &tri_b, t_type epsilon=0)
 Given two triangles, returns the intersection between the two of them assuming that intesection is a line.
template<class t_type, class t_memory_manager>
Buffer< t_type, t_memory_manager > IntersectPreserveOrderA (const Buffer< t_type, t_memory_manager > &a, const Buffer< t_type, t_memory_manager > &b)
 Computes the intersection of two buffers while preserving the order of elements from buffer a.
template<class t_type, class t_memory_manager>
Buffer< t_type, t_memory_manager > IntersectSorted (const Buffer< t_type, t_memory_manager > &a, const Buffer< t_type, t_memory_manager > &b)
 Computes the intersection of two pre-sorted buffers using std::set_intersection.
Eigen::Matrix3< g_type > InverseRightJacobianSO3 (const Eigen::Vector3< g_type > &v)
 Computes the inverse right Jacobian of SO3.
Eigen::Matrix3< g_type > InverseRightJacobianSO3 (g_type x, g_type y, g_type z)
 Computes the inverse right Jacobian of SO3 from axis components.
template<class t_type>
static constexpr bool IsInvalid (const Angle< t_type > &value)
 Checks whether the given Angle holds an invalid value.
template<class t_type, uint01 t_row_dims, uint01 t_col_dims>
static constexpr bool IsInvalid (const Matrix< t_type, t_row_dims, t_col_dims > &value)
template<uint01 t_dims, class t_type>
static constexpr bool IsInvalid (const Plane< t_dims, t_type > &value)
template<class t_type>
static constexpr bool IsInvalid (const Quaternion< t_type > &value)
template<>
constexpr bool IsInvalid (const StringView &value)
 Checks whether a StringView is invalid (empty).
template<class t_type>
constexpr bool IsInvalid (const t_type &value)
 Query if 'value' is valid or invalid.
template<class t_type>
static constexpr bool IsValid (const Angle< t_type > &value)
 Checks whether the given Angle holds a valid value.
template<>
constexpr bool IsValid (const StringView &value)
 Checks whether a StringView is valid (non-empty).
static String LASLicense ()
 The license for using libLAS.
Eigen::Vector3< g_type > LogSO3 (const Eigen::Matrix3< g_type > &R)
 Computes the SO3 logarithm map.
template<>
fltp04 MakeRandom (fltp04 max)
template<>
fltp08 MakeRandom (fltp08 max)
 Returns a pseudo-random number between 0 and the associated max value.
template<class t_type>
t_type MakeRandom (t_type max)
 Returns a pseudo-random number between 0 and the associated max value.
template<class t_type>
t_type MakeRandom (t_type min, t_type max)
 Returns a pseudo-random number between 0 and the associated max value.
template<class t_type>
constexpr uint04 MaxDigits ()
 For a given number type, returns the maximum number of digits the number type can represent.
template<class t_index_type, size_t t_elem_size>
static t_index_type NextCapacityBytes (t_index_type cap_elems, t_index_type need_elems) noexcept
 Computes the next buffer capacity in elements, using a growth strategy tuned per platform alignment boundaries.
template<typename T = g_type>
Eigen::Matrix< T, 3, 3 > NormalizeRotation (const Eigen::Matrix< T, 3, 3 > &R)
 Normalizes a rotation matrix using SVD decomposition.
template<uint01 t_dims, class t_type>
constexpr bool operator!= (const Vector< t_dims, t_type > &vec_a, const Vector< t_dims, t_type > &vec_b)
 Inequality operator.
constexpr TimeSpan operator% (const Time &time, const TimeSpan &duration)
 Computes the modulo of a Time by a TimeSpan duration, returning the remainder as a TimeSpan with the aligned start time.
template<uint01 t_dims, class t_angle_type>
constexpr Vector< t_dims, Angle< t_angle_type > > operator% (const Vector< t_dims, Angle< t_angle_type > > &vec_a, const Angle< t_angle_type > &value_b)
 Computes the remainder of an Angle given an angle and a modulo divisor.
template<uint01 t_dims, class t_angle_type>
constexpr Vector< t_dims, Angle< t_angle_type > > operator% (const Vector< t_dims, Angle< t_angle_type > > &vec_a, const Vector< t_dims, Angle< t_angle_type > > &vec_b)
 Element-wise modulo operator for two Vectors of Angles.
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > operator% (const Vector< t_dims, t_type > &vec_a, const Vector< t_dims, t_type > &vec_b)
template<class t_type, class t_angle_type>
static constexpr Angle< t_angle_type > operator* (const Angle< t_angle_type > &angle, t_type mult)
 Multiplication operator.
template<class t_type>
static constexpr Angle< t_type > operator* (const Angle< t_type > &angle_a, const Angle< t_type > &angle_b)
 Multiplication operator.
constexpr RGBColor operator* (const fltp04 &value, const RGBColor &color)
 Multiplies a scalar by the RGB channels of a color, returning a new color.
template<class t_type, class t_vector>
Ray< 3, t_type > operator* (const Matrix< t_type, 3, 3 > &matrix, const Ray< 3, t_type, t_vector > &right)
 Transforms a 3D ray (direction vector) by a 3x3 matrix.
template<class t_type, class t_vector>
Vertex< 3, t_type, t_vector > operator* (const Matrix< t_type, 3, 3 > &matrix, const Vertex< 3, t_type, t_vector > &right)
 Transforms a 3D vertex by a 3x3 matrix without perspective division.
template<class t_type, class t_vector>
Vertex< 3, t_type, t_vector > operator* (const Matrix< t_type, 4, 4 > &m, const Vertex< 3, t_type, t_vector > &v)
 Transforms a 3D vertex by a 4x4 matrix with perspective division.
template<class t_type, class t_vector>
Vertex< 4, t_type > operator* (const Matrix< t_type, 4, 4 > &m, const Vertex< 4, t_type, t_vector > &v)
 Transforms a 4D vertex by a 4x4 matrix without perspective division.
template<class t_type, class t_vertex>
Bounds< 3, t_type, t_vertex > operator* (const Matrix< t_type, 4, 4 > &matrix, const Bounds< 3, t_type, t_vertex > &bounds)
 Transforms a 3D bounding region by a 4x4 matrix, optimized specialization.
template<class t_type, class t_vector>
Ray< 3, t_type > operator* (const Matrix< t_type, 4, 4 > &matrix, const Ray< 3, t_type, t_vector > &right)
 Transforms a 3D ray (direction vector) by a 4x4 matrix, applying only the rotational component.
template<class t_type, class t_vector>
Ray< 4, t_type > operator* (const Matrix< t_type, 4, 4 > &matrix, const Ray< 4, t_type, t_vector > &right)
 Transforms a 4D ray (direction vector) by a 4x4 matrix.
template<class t_type, class t_vertex, uint01 t_row_dims, uint01 t_col_dims>
Bounds< 1, t_type, t_vertex > operator* (const Matrix< t_type, t_row_dims, t_col_dims > &matrix, const Bounds< 1, t_type, t_vertex > &bounds)
 Transforms a 1D bounding region by a matrix with perspective division.
template<class t_type, class t_vertex, uint01 t_row_dims, uint01 t_col_dims>
Bounds< 2, t_type, t_vertex > operator* (const Matrix< t_type, t_row_dims, t_col_dims > &matrix, const Bounds< 2, t_type > &bounds)
 Transforms a 2D bounding region by a matrix with perspective division.
template<class t_type, class t_vertex, uint01 t_row_dims, uint01 t_col_dims>
Bounds< 3, t_type, t_vertex > operator* (const Matrix< t_type, t_row_dims, t_col_dims > &matrix, const Bounds< 3, t_type, t_vertex > &bounds)
 Transforms a 3D bounding region by a generic matrix with perspective division.
template<class t_type, uint01 t_dims, class t_vertex, uint01 t_row_dims, uint01 t_col_dims>
LineSegment< t_dims, t_type > operator* (const Matrix< t_type, t_row_dims, t_col_dims > &matrix, const LineSegment< t_dims, t_type, t_vertex > &line)
 Transforms a line segment by applying a matrix to both of its endpoints.
template<class t_type, class t_vertex, uint01 t_dims, uint01 t_row_dims, uint01 t_col_dims>
Polyline< t_dims, t_type, t_vertex > operator* (const Matrix< t_type, t_row_dims, t_col_dims > &matrix, const Polyline< t_dims, t_type, t_vertex > &poly)
 Transforms a polyline by applying a matrix to each of its vertices.
template<class t_type, class t_vector, uint01 t_row_dims, uint01 t_col_dims>
Ray< 1, t_type, t_vector > operator* (const Matrix< t_type, t_row_dims, t_col_dims > &matrix, const Ray< 1, t_type, t_vector > &right)
 Transforms a 1D ray (direction vector) by a matrix.
template<class t_type, class t_vector, uint01 t_row_dims, uint01 t_col_dims>
Ray< 2, t_type, t_vector > operator* (const Matrix< t_type, t_row_dims, t_col_dims > &matrix, const Ray< 2, t_type, t_vector > &right)
 Transforms a 2D ray (direction vector) by a matrix.
template<class t_type, uint01 t_dims, class t_vertex, uint01 t_row_dims, uint01 t_col_dims>
Triangle< t_dims, t_type, t_vertex > operator* (const Matrix< t_type, t_row_dims, t_col_dims > &matrix, const Triangle< t_dims, t_type, t_vertex > &tri)
 Transforms a triangle by applying a matrix to all three of its vertices.
template<class t_type, class t_vector, uint01 t_row_dims, uint01 t_col_dims>
Vertex< 1, t_type, t_vector > operator* (const Matrix< t_type, t_row_dims, t_col_dims > &matrix, const Vertex< 1, t_type, t_vector > &right)
 Transforms a 1D vertex by a matrix using homogeneous coordinates.
template<class t_type, class t_vector, uint01 t_row_dims, uint01 t_col_dims>
Vertex< 2, t_type, t_vector > operator* (const Matrix< t_type, t_row_dims, t_col_dims > &matrix, const Vertex< 2, t_type, t_vector > &right)
 Transforms a 2D vertex by a matrix with perspective division.
constexpr RGBColor operator* (const RGBColor &color, const fltp04 &value)
 Multiplies the RGB channels of a color by a scalar, returning a new color.
template<class t_type, class t_vector_type>
constexpr std::enable_if< IsVecType< t_vector_type, Angle< sint04 > >::value, t_vector_type >::type operator* (const t_type &mult, const t_vector_type &angle)
 Multiplication operator for a scalar and a Vector of sint04 Angles.
template<class t_type, class t_vector_type>
constexpr std::enable_if< IsVecType< t_vector_type, Angle< fltp08 > >::value, t_vector_type >::type operator* (const t_type &mult, const t_vector_type &angle)
 Multiplication operator for a scalar and a Vector of fltp08 Angles.
template<class t_vector_type, class t_type>
constexpr std::enable_if< IsVecType< t_vector_type, t_type >::value, t_vector_type >::type operator* (const t_type &value_a, const t_vector_type &vec_b)
template<class t_type, uint01 t_row_dims, uint01 t_col_dims>
Matrix< t_type, t_row_dims, t_col_dims > operator* (const t_type mult, const Matrix< t_type, t_row_dims, t_col_dims > &matrix)
 Multiplies a scalar value by every element of a matrix.
template<class t_type, class t_vector_type>
constexpr std::enable_if< IsVecType< t_vector_type, Angle< sint04 > >::value, t_vector_type >::type operator* (const t_vector_type &angle, const t_type &mult)
 Multiplication operator for a Vector of Angles.
template<class t_type, class t_vector_type>
constexpr std::enable_if< IsVecType< t_vector_type, Angle< fltp08 > >::value, t_vector_type >::type operator* (const t_vector_type &angle, const t_type &mult)
 Multiplication operator for a Vector of Angles.
template<uint01 t_dims, class t_type, class t_vector_type>
constexpr std::enable_if< std::is_base_of< Vector< t_dims, Angle< sint04 > >, t_vector_type >::value, t_vector_type >::type operator* (const t_vector_type &angle, const Vector< t_dims, t_type > &mult)
 Multiplication operator for a Vector of Angles.
template<uint01 t_dims, class t_type, class t_vector_type>
constexpr std::enable_if< std::is_base_of< Vector< t_dims, Angle< fltp08 > >, t_vector_type >::value, t_vector_type >::type operator* (const t_vector_type &angle, const Vector< t_dims, t_type > &mult)
 Multiplication operator for a Vector of Angles.
template<class t_type, class t_vector_type>
constexpr std::enable_if< IsVecType< t_vector_type, Angle< sint04 > >::value, t_vector_type >::type operator* (const t_vector_type &mult, const t_vector_type &angle)
 Element-wise multiplication operator for two Vectors of sint04 Angles.
template<class t_type, class t_vector_type>
constexpr std::enable_if< IsVecType< t_vector_type, Angle< fltp08 > >::value, t_vector_type >::type operator* (const t_vector_type &mult, const t_vector_type &angle)
 Element-wise multiplication operator for two Vectors of fltp08 Angles.
template<class t_vector_type, class t_type>
constexpr std::enable_if< IsVecType< t_vector_type, t_type >::value, t_vector_type >::type operator* (const t_vector_type &vec_a, const t_type &value_b)
template<uint01 t_dims, class t_type, class t_vector_type>
constexpr std::enable_if< std::is_base_of< Vector< t_dims, Angle< sint04 > >, t_vector_type >::value, t_vector_type >::type operator* (const Vector< t_dims, t_type > &mult, const t_vector_type &angle)
 Multiplication operator for a Vector of scalars and a Vector of sint04 Angles.
template<uint01 t_dims, class t_type, class t_vector_type>
constexpr std::enable_if< std::is_base_of< Vector< t_dims, Angle< fltp08 > >, t_vector_type >::value, t_vector_type >::type operator* (const Vector< t_dims, t_type > &mult, const t_vector_type &angle)
 Multiplication operator for a Vector of scalars and a Vector of fltp08 Angles.
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > operator* (const Vector< t_dims, t_type > &vec_a, const Vector< t_dims, t_type > &vec_b)
template<class t_type, class t_vector, uint01 t_dims, uint01 t_row_dims, uint01 t_col_dims>
Ray< t_dims, t_type > operator* (const Vertex< t_dims, t_type, t_vector > &vertex, const Matrix< t_type, t_row_dims, t_col_dims > &matrix)
 Multiplies a vertex by a matrix, producing a Ray by delegating to matrix * vertex.
template<class t_type, class t_vector, uint01 t_dims, uint01 t_row_dims, uint01 t_col_dims>
Vertex< t_dims, t_type > operator* (const Vertex< t_dims, t_type, t_vector > &vertex, const Matrix< t_type, t_row_dims, t_col_dims > &matrix)
 Multiplies a vertex by a matrix by delegating to the matrix * vertex operator.
template<class t_type, class t_angle_type>
static constexpr Angle< t_angle_type > operator* (t_type mult, const Angle< t_angle_type > &angle)
 Multiplication operator.
template<class t_angle_type>
static constexpr Angle< t_angle_type > & operator*= (Angle< t_angle_type > &angle, const Angle< t_angle_type > &mult)
 Multiplication assignment operator for two Angles.
template<class t_type, class t_angle_type>
static constexpr Angle< t_angle_type > & operator*= (Angle< t_angle_type > &angle, const t_type &mult)
 Multiplication assignment operator for an Angle and a scalar.
template<class t_type>
constexpr RGBColoroperator*= (RGBColor &color, const t_type &value)
 Multiplies the RGB channels of a color in-place by a scalar value.
template<uint01 t_dims, class t_type, class t_angle_type>
static constexpr Vector< t_dims, Angle< t_angle_type > > & operator*= (Vector< t_dims, Angle< t_angle_type > > &angle, const t_type &mult)
 Multiplication assignment operator for a Vector of Angles and a scalar.
template<uint01 t_dims, class t_type, class t_angle_type>
static constexpr Vector< t_dims, Angle< t_angle_type > > & operator*= (Vector< t_dims, Angle< t_angle_type > > &angle, const Vector< t_dims, t_type > &mult)
 Multiplication assignment operator for a Vector of Angles and a Vector of scalars.
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > & operator*= (Vector< t_dims, t_type > &vec_a, const Vector< t_dims, t_type > &vec_b)
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > & operator*= (Vector< t_dims, t_type > &vec_a, t_type value_b)
template<class t_type>
static constexpr Angle< t_type > operator+ (const Angle< t_type > &angle_a, const Angle< t_type > &angle_b)
 Addition operator.
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > operator+ (const t_type &scaler_a, const Vector< t_dims, t_type > &vec_b)
template<class t_vector_type, class t_type>
constexpr std::enable_if< IsVecType< t_vector_type, t_type >::value, t_vector_type >::type operator+ (const t_vector_type &vec_a, const t_type &scaler_b)
template<class t_vector_type, uint01 t_dims, class t_type>
constexpr std::enable_if< std::is_base_of< Vector< t_dims, t_type >, t_vector_type >::value, t_vector_type >::type operator+ (const t_vector_type &vec_a, const Vector< t_dims, t_type > &vec_b)
 Addition operator.
Time operator+ (const Time &time, const TimeSpan &value)
 Advances a Time by adding a TimeSpan duration.
template<class t_angle_type>
static constexpr Angle< t_angle_type > & operator+= (Angle< t_angle_type > &angle, const Angle< t_angle_type > &add)
 Addition assignment operator for Angles.
Timeoperator+= (Time &time, const TimeSpan &value)
 Advances a Time in place by adding a TimeSpan duration.
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > & operator+= (Vector< t_dims, t_type > &vec_a, const Vector< t_dims, t_type > &vec_b)
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > & operator+= (Vector< t_dims, t_type > &vec_a, t_type scaler_b)
template<class t_type>
static constexpr Angle< t_type > operator- (const Angle< t_type > &angle_a, const Angle< t_type > &angle_b)
 Subtraction operator.
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > operator- (const t_type &value_a, const Vector< t_dims, t_type > &vec_b)
template<class t_vector_type, class t_type>
constexpr std::enable_if< IsVecType< t_vector_type, t_type >::value, t_vector_type >::type operator- (const t_vector_type &vec_a, const t_type &value_b)
template<class t_vector_type, uint01 t_dims, class t_type>
constexpr std::enable_if< std::is_base_of< Vector< t_dims, t_type >, t_vector_type >::value, t_vector_type >::type operator- (const t_vector_type &vec_a, const Vector< t_dims, t_type > &vec_b)
TimeSpan operator- (const Time &time, const Time &value)
 Computes the difference between two Time values as a TimeSpan.
Time operator- (const Time &time, const TimeSpan &value)
 Retreats a Time by subtracting a TimeSpan duration.
template<class t_angle_type>
static constexpr Angle< t_angle_type > & operator-= (Angle< t_angle_type > &angle, const Angle< t_angle_type > &sub)
 Subtraction assignment operator for Angles.
Timeoperator-= (Time &time, const TimeSpan &value)
 Retreats a Time in place by subtracting a TimeSpan duration.
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > & operator-= (Vector< t_dims, t_type > &vec_a, const Vector< t_dims, t_type > &vec_b)
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > operator-= (Vector< t_dims, t_type > &vec_a, t_type value_b)
template<class t_type, class t_angle_type>
static constexpr Angle< t_angle_type > operator/ (const Angle< t_angle_type > &num, t_type den)
 Division operator for a Vector of Angles.
template<class t_type>
static constexpr fltp08 operator/ (const Angle< t_type > &angle_a, const Angle< t_type > &angle_b)
 Division operator.
template<class t_vector_type, class t_type>
constexpr std::enable_if< IsVecType< t_vector_type, t_type >::value, t_vector_type >::type operator/ (const t_type &value_a, const t_vector_type &vec_b)
template<class t_type, class t_vector_type>
constexpr std::enable_if< IsVecType< t_vector_type, Angle< sint04 > >::value, t_vector_type >::type operator/ (const t_vector_type &angle, const t_type &den)
 Division operator for a Vector of Angles.
template<class t_type, class t_vector_type>
constexpr std::enable_if< IsVecType< t_vector_type, Angle< fltp08 > >::value, t_vector_type >::type operator/ (const t_vector_type &angle, const t_type &den)
 Division operator for a Vector of Angles.
template<class t_type, class t_vector_type, class t_angle_type>
constexpr std::enable_if< IsVecType< t_vector_type, Angle< t_angle_type > >::value, t_vector_type >::type operator/ (const t_vector_type &angle, const t_type &den)
 Division operator for a Vector of Angles.
template<uint01 t_dims, class t_vector_type, class t_angle_type>
constexpr std::enable_if< std::is_base_of< Vector< t_dims, Angle< t_angle_type > >, t_vector_type >::value, Vector< t_dims, fltp08 > >::type operator/ (const t_vector_type &angle, const Vector< t_dims, Angle< t_angle_type > > &den)
 Division operator for a Vector of Angles.
template<uint01 t_dims, class t_type, class t_vector_type, class t_angle_type>
constexpr std::enable_if< std::is_base_of< Vector< t_dims, Angle< t_angle_type > >, t_vector_type >::value, t_vector_type >::type operator/ (const t_vector_type &angle, const Vector< t_dims, t_type > &den)
 Division operator for a Vector of Angles.
template<class t_vector_type, class t_type>
constexpr std::enable_if< IsVecType< t_vector_type, t_type >::value, t_vector_type >::type operator/ (const t_vector_type &vec_a, const t_type &value_b)
template<uint01 t_dims, class t_angle_type>
constexpr Vector< t_dims, fltp08operator/ (const Vector< t_dims, Angle< t_angle_type > > &angle, const Vector< t_dims, Angle< t_angle_type > > &den)
 Division operator for a Vector of Angles.
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > operator/ (const Vector< t_dims, t_type > &vec_a, const Vector< t_dims, t_type > &vec_b)
template<class t_type, class t_angle_type>
static constexpr Angle< t_angle_type > operator/ (t_type num, const Angle< t_angle_type > &den)
 Division operator for a scalar numerator and an Angle denominator.
template<class t_type, class t_vector_type, class t_angle_type>
constexpr std::enable_if< IsVecType< t_vector_type, Angle< t_angle_type > >::value, t_vector_type >::type operator/ (t_type num, const t_vector_type &angle)
 Division operator for a scalar numerator and a Vector of Angles denominator.
template<class t_type, class t_angle_type>
static constexpr Angle< t_angle_type > & operator/= (Angle< t_angle_type > &angle, const t_type &mult)
 Division assignment operator for an Angle and a scalar.
template<uint01 t_dims, class t_type, class t_angle_type>
static constexpr Vector< t_dims, Angle< t_angle_type > > & operator/= (Vector< t_dims, Angle< t_angle_type > > &angle, const t_type &den)
 Division assignment operator for a Vector of Angles and a scalar.
template<uint01 t_dims, class t_type, class t_angle_type>
static constexpr Vector< t_dims, Angle< t_angle_type > > & operator/= (Vector< t_dims, Angle< t_angle_type > > &angle, const Vector< t_dims, t_type > &den)
 Division assignment operator for a Vector of Angles and a Vector of scalars.
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > operator/= (Vector< t_dims, t_type > &vec_a, const Vector< t_dims, t_type > &vec_b)
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > & operator/= (Vector< t_dims, t_type > &vec_a, t_type value_b)
template<class t_type_a, class t_type_b>
static constexpr bool operator< (const Angle< t_type_a > &angle_a, const Angle< t_type_b > &angle_b)
 Less-than comparison operator.
template<class t_type_a, class t_type_b>
static constexpr bool operator<= (const Angle< t_type_a > &angle_a, const Angle< t_type_b > &angle_b)
 Less-than-or-equal comparison operator.
template<uint01 t_dims, class t_type>
constexpr bool operator== (const Vector< t_dims, t_type > &vec_a, const Vector< t_dims, t_type > &vec_b)
 Equality operator.
template<class t_type_a, class t_type_b>
static constexpr bool operator> (const Angle< t_type_a > &angle_a, const Angle< t_type_b > &angle_b)
 Greater-than comparison operator.
template<uint01 t_dims, class t_type>
constexpr bool operator> (const Vector< t_dims, t_type > &v1, const Vector< t_dims, t_type > &v2)
template<uint01 vec_1_size, uint01 vec_2_size, class t_type>
constexpr bool operator> (const Vector< vec_1_size, t_type > &v1, const Vector< vec_2_size, t_type > &v2)
template<class t_type_a, class t_type_b>
static constexpr bool operator>= (const Angle< t_type_a > &angle_a, const Angle< t_type_b > &angle_b)
 Greater-than-or-equal comparison operator.
template<uint01 t_dims, class t_type>
constexpr bool operator>= (const Vector< t_dims, t_type > &v1, const Vector< t_dims, t_type > &v2)
template<uint01 vec_1_size, uint01 vec_2_size, class t_type>
constexpr bool operator>= (const Vector< vec_1_size, t_type > &v1, const Vector< vec_2_size, t_type > &v2)
uint01 operator| (const TextAlignment &a, const TextAlignment &b)
 Bitwise OR operator for combining TextAlignment flags.
static String PDFLicense ()
 The license for using libhuru, used to write PDF files.
template<class t_float_type>
static constexpr t_float_type PI ()
 Returns the value of PI to a given precision.
Vector2< g_type > project (const Vector3< g_type > &)
 Projects a 3D point to 2D by dividing by the z component.
Vector3< g_type > project (const Vector4< g_type > &)
 Projects a 4D homogeneous point to 3D by dividing by the w component.
template<uint01 t_dims, class t_angle_type>
constexpr Vector< t_dims, Angle< t_angle_type > > quantize (const Vector< t_dims, Angle< t_angle_type > > &value, Angle< t_angle_type > d=Angle< t_angle_type >(DEGREES, 1.0))
 Quantizes a Vector of Angles to the nearest multiple of a given step size.
template<uint01 t_dims, class t_angle_type>
constexpr Vector< t_dims, Angle< t_angle_type > > quantize (const Vector< t_dims, Angle< t_angle_type > > &value, Vector< t_dims, Angle< t_angle_type > > d=Vector< t_dims, Angle< t_angle_type > >(Angle< t_angle_type >(DEGREES, 1.0)))
 Quantizes a Vector of Angles to the nearest multiple of per-axis step sizes.
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > quantize (const Vector< t_dims, t_type > &value, t_type d=cast< t_type >(1))
template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, t_type > quantize (const Vector< t_dims, t_type > &value, Vector< t_dims, t_type > d=Vector< t_dims, t_type >(1))
 Quantizes the vector such that it is equal to the closest multiple of a second given vector.
template<typename t_type>
constexpr t_type quantize (t_type value, t_type d=cast< t_type >(1))
 Rounds the value to the nearest multiple given and returns that value.
g_type rad2deg (g_type rad)
 convert from radian to degree
template<class t_to, class t_from>
constexpr t_to & rcast (t_from &value)
 Casts the given value.
Eigen::Matrix3< g_type > RightJacobianSO3 (const Eigen::Vector3< g_type > &v)
 Computes the right Jacobian of SO3.
Eigen::Matrix3< g_type > RightJacobianSO3 (g_type x, g_type y, g_type z)
 Computes the right Jacobian of SO3 from axis components.
template<typename T>
int sign (T x)
 sign function.
template<typename t_type>
constexpr t_type sign (t_type value)
 A simple function that returns 1 for all values greater than or equal to 0 and -1 for all values less than 0.
template<class t_type>
std::enable_if< ObjectInfo< t_type >::Float, fltp08 >::type sin (const Angle< t_type > &angle)
 Performs sine operation on the given angle.
template<class t_type>
std::enable_if<!ObjectInfo< t_type >::Float, fltp08 >::type sin (const Angle< t_type > &angle)
 Performs optimized sine operation on the given angle using pre-computed lookup table for optimal speed.
template<class t_type>
t_type sin (const t_type &angle)
 Performs sine operation on the given number assumed to be in radians.
Eigen::Matrix3< g_type > Skew (const Eigen::Vector3< g_type > &w)
 Computes the skew-symmetric matrix of a 3D vector.
Matrix3< g_type > skew (const Vector3< g_type > &v)
 Computes the 3x3 skew-symmetric matrix from a 3D vector.
template<class t_type, class t_node_type>
uint04 SortAboutValue (uint04 value_index, const Buffer< t_node_type > &points, Buffer< uint04 > &indices, uint04 start, uint04 end, uint01 dimension)
 Sorts all incoming indices within the given range such that the resulting index matrix will have values less than the index first, and greater than the index second.
template<class t_type, class t_buffer_type, class t_bounds_type>
uint04 SortAboutValue (uint04 value_index, const t_buffer_type &points, Buffer< uint04 > &indices, uint04 start, uint04 end, uint01 dimension, t_bounds_type &bounds_left, t_bounds_type &bounds_right)
 Sorts all incoming indices within the given range such that the resulting index matrix will have values less than the index first, and greater than the index second.
template<class t_type>
t_type sqrt (const t_type &value)
template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > sqrt (const Vector< t_dims, t_type > &vector)
template<typename T>
square (T x)
 return the square value
template<uint01 t_bucket_size, class t_buffer_type, class t_container_type>
uint04 StaticHeapMedian (const t_buffer_type &points, const t_container_type &indices, uint04 start, uint04 step, uint01 dimension)
 Return the median value in a Buffer of points based on a given dimension.
template<class t_type>
std::enable_if< ObjectInfo< t_type >::Float, fltp08 >::type tan (const Angle< t_type > &angle)
 Performs tan operation on the given angle.
template<class t_type>
std::enable_if<!ObjectInfo< t_type >::Float, fltp08 >::type tan (const Angle< t_type > &angle)
 Performs optimized tangent operation on the given angle using pre-computed lookup table for optimal speed.
template<class t_type>
t_type tan (const t_type &angle)
 Performs tan operation on the given angle assumed to be in radians.
void Throw (StringView failure_message, const char *originator=nullptr, const char *sourceLocation=nullptr)
 Throw an Exception with an OpenXR error message, optional originator, and source location.
void ThrowXrResult (XrResult res, const char *originator=nullptr, const char *sourceLocation=nullptr)
 Throw an Exception for a failed XrResult.
template<class t_new_type, uint01 t_dims, class t_angle_type>
constexpr Vector< t_dims, Angle< t_new_type > > ToTypeAngle (const Vector< t_dims, Angle< t_angle_type > > &old)
 Converts a Vector of one angle to a different container type.
template<class t_type, class t_vertex>
Bounds< 3, t_type > TransformBoundsAndClipNearPlane (const Bounds< 3, t_type, t_vertex > &bounds, const Matrix< t_type, 4, 4 > &m)
 Transforms 3D bounds by a 4x4 matrix and clips edges against the near plane (w=0).
template<class t_type, class t_memory_manager>
Buffer< t_type, t_memory_manager > Union (const Buffer< t_type, t_memory_manager > &a, const Buffer< t_type, t_memory_manager > &b)
 Computes the union of two buffers, removing duplicate elements.
Vector3< g_type > unproject (const Vector2< g_type > &)
 Unprojects a 2D point to 3D by appending z=1.
Vector4< g_type > unproject (const Vector3< g_type > &)
 Unprojects a 3D point to 4D homogeneous by appending w=1.
VkResult vkExecute (VkResult result, const char *error_message)
 Executes a Vulkan command and handles the results, throwing an exception if necessary.
template<typename T>
wrap (T l, T x, T u)
 wrap x to be in the interval [l, u]
YUV-to-RGB conversion constants
static RGBColor PullAsYUV (const VideoFrameDetails &, int Text_Index, const uint01 *memory)
 Convert a YUV 4:2:2 pixel to an RGBColor.
static RGBColor PullAsRGB (const VideoFrameDetails &texture, int Text_Index, const uint01 *memory)
 Extract an RGB color from a pixel in RGB byte order.
static RGBColor PullAsBGR (const VideoFrameDetails &texture, int Text_Index, const uint01 *memory)
 Extract an RGB color from a pixel in BGR byte order.
static RGBColor PullAsY8 (const VideoFrameDetails &texture, int Text_Index, const uint01 *memory)
 Extract an RGB color from an 8-bit grayscale pixel.
static RGBColor PullRGB (const VideoFrameDetails &texture, int index, const uint01 *memory)
 Extract an RGB color from a pixel, dispatching to the correct format converter.
static fltp04 PullDepth (const VideoFrameDetails &texture, int index, const uint01 *memory)
 Extract a depth value from a pixel, handling 1/2/4/8 byte depths.

Variables

Angle< fltp08camera_fov
 This class generates random bias and noise for modeling a 9-DoF IMU.
template<>
constexpr HSLColor Constant< HSLColor >::Invalid = HSLColor()
 The invalid HSLColor constant with all components set to invalid.
template<>
constexpr HSLColor Constant< HSLColor >::Max = HSLColor(Constant<Angle<HSLAngleType>>::Max, 1.0f, 1.0f, 1.0f)
 The maximum HSLColor constant with all components at their maximum values.
template<>
constexpr HSLColor Constant< HSLColor >::Min = HSLColor(Constant<Angle<HSLAngleType>>::Max, 0.0f, 0.0f, 0.0f)
 The minimum HSLColor constant with saturation, brightness, and alpha at zero.
template<>
constexpr const RGBColor Constant< RGBColor >::Invalid = RGBColor(255, 255, 254, 0)
 Sentinel value representing an invalid color.
template<>
constexpr const RGBColor Constant< RGBColor >::Max = RGBColor(255, 255, 255, 255)
 Maximum color value (fully white, fully opaque).
template<>
constexpr const RGBColor Constant< RGBColor >::Min = RGBColor(0, 0, 0, 0)
 Minimum color value (fully black, fully transparent).
template<>
const SnapLocation Constant< SnapLocation >::Invalid = SnapLocation::e_no_snap
 The invalid sentinel value for SnapLocation.
template<>
const StringView Constant< StringView >::Invalid = StringView()
 The invalid constant for StringView, defined as an empty view.
template<>
constexpr TimeSpan Constant< TimeSpan >::Invalid = TimeSpan(Constant<sint08>::Invalid)
 The invalid sentinel value for TimeSpan.
template<>
constexpr TimeSpan Constant< TimeSpan >::Max = TimeSpan(Constant<sint08>::Max)
 The maximum representable TimeSpan.
template<>
constexpr TimeSpan Constant< TimeSpan >::Min = TimeSpan(Constant<sint08>::Min)
 The minimum representable TimeSpan.
template<>
const TranslatedString Constant< TranslatedString >::Invalid = TranslatedString()
 Specialization of Constant for TranslatedString, providing an empty invalid sentinel value.
template<>
constexpr const UUID Constant< UUID >::Invalid = UUID(Constant<Vector<16, uint01>>::Invalid)
 The invalid UUID constant (all bytes 0xFF).
template<>
constexpr const UUID Constant< UUID >::Max = UUID(Constant<Vector<16, uint01>>::Max)
 The maximum UUID constant (all bytes at max value).
template<>
constexpr const UUID Constant< UUID >::Min = UUID(Constant<Vector<16, uint01>>::Min)
 The minimum UUID constant (all bytes at min value).
constexpr const fltp08 fast_atof_table [20]
 Data for quick text to number lookup.
constexpr uint04 FRAME_GRID_COLS = 64
 Number of columns in the feature grid.
constexpr uint04 FRAME_GRID_ROWS = 48
 Number of rows in the feature grid.
CrashManagerg_crash_manager
 Global pointer to the active CrashManager instance.
constexpr g_type gs_epsilon = g_type(1e-6)
 Convergence threshold for Levenberg-Marquardt.
static const fltp04 inverse_255 = 1.0f/255.0f
 Precomputed reciprocal of 255 for fast normalization to [0,1].
static constexpr fltp08 kPowersOfTen [23]
 < Precomputed powers of ten from 1e0 to 1e22, used for fast exponentiation without calling std::pow.
constexpr int model_table_is_clicked_index = Qt::UserRole + 1
 Custom role index indicating whether a cell button has been clicked.
constexpr int model_table_is_selected_index = Qt::UserRole + 2
 Custom role index indicating whether a row is selected.
static constexpr uint08 ndv_current_version_number = 1763087346
 The current NDV file format version number used for reading and writing.
static uint02 ntp_rx_port = 42912
 Default local port for receiving NTP responses.
const fltp08 *const s_index_sin
 Pre-computed sine lookup table for optimized trigonometric operations.
static const char *const s_sweet_home_color_materials
 A static string containing OBJ material definitions for Sweet Home 3D color materials.
constexpr StringView US_STATE_DATASET = "US States"
 Dataset name constant for US state boundary data.
constexpr StringView ZIP_CODE_DATASET = "Zip Codes"
 Dataset name constant for US zip code data.

Detailed Description

The primary namespace for the NDEVR SDK.

This file is part of ORB-SLAM3.

Module hook declarations for the NDEVRNetwork module.

All NDEVR API classes, functions, and types reside within this namespace. The SDK provides a cross-platform framework for 3D visualization, hardware integration, design object management, and file I/O.


Copyright (c) 2019, NDEVR LLC tyler.nosp@m..par.nosp@m.ke@nd.nosp@m.evr..nosp@m.org


| \ | | | __ \ | |\ \ / / | __ \ | \ | | | | \ \ | | \ \ / / | |__) | | . | | | |__/ / | |___ \ V / | _ / | |\ |_|_____/__|_____|____/____| | \ \ |__| __________________________________| __\

Subject to the terms of the Enterprise+ Agreement, NDEVR hereby grants Licensee a limited, non-exclusive, non-transferable, royalty-free license (without the right to sublicense) to use the API solely for the purpose of Licensee's internal development efforts to develop applications for which the API was provided.

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Library: Design File: ImageFactory Included in API: True

Author(s): Tyler Parke


Declares all standard NDEVR module hook functions and the registration function used to integrate the NDEVRNetwork module into the NDEVR module system.

Copyright (C) 2017-2021 Carlos Campos, Richard Elvira, Juan J. Gómez Rodríguez, José M.M. Montiel and Juan t_dim. Tardós, University of Zaragoza. Copyright (C) 2014-2016 Raúl Mur-Artal, José M.M. Montiel and Juan t_dim. Tardós, University of Zaragoza.

ORB-SLAM3 is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ORB-SLAM3 is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with ORB-SLAM3. If not, see http://www.gnu.org/licenses/.


Copyright (c) 2020, NDEVR LLC tyler.nosp@m..par.nosp@m.ke@nd.nosp@m.evr..nosp@m.org


| \ | | | __ \ | |\ \ / / | __ \ | \ | | | | \ \ | | \ \ / / | |__) | | . | | | |__/ / | |___ \ V / | _ / | |\ |_|_____/__|_____|____/____| | \ \ |__| __________________________________| __\

Subject to the terms of the Enterprise+ Agreement, NDEVR hereby grants Licensee a limited, non-exclusive, non-transferable, royalty-free license (without the right to sublicense) to use the API solely for the purpose of Licensee's internal development efforts to develop applications for which the API was provided.

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Library: SQLInterface File: DLLInfo Included in API: True

Author(s): Tyler Parke


Copyright (c) 2019, NDEVR LLC tyler.nosp@m..par.nosp@m.ke@nd.nosp@m.evr..nosp@m.org


| \ | | | __ \ | |\ \ / / | __ \ | \ | | | | \ \ | | \ \ / / | |__) | | . | | | |__/ / | |___ \ V / | _ / | |\ |_|_____/__|_____|____/____| | \ \ |__| __________________________________| __\

Subject to the terms of the Enterprise+ Agreement, NDEVR hereby grants Licensee a limited, non-exclusive, non-transferable, royalty-free license (without the right to sublicense) to use the API solely for the purpose of Licensee's internal development efforts to develop applications for which the API was provided.

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Library: Factory File: SketchupFactory Included in API: True

Author(s): Tyler Parke

Typedef Documentation

◆ fltp04

typedef float fltp04

Defines an alias representing a 4 byte floating-point number Bit layout is as follows: -Sign: 1 bit at position 31 determines whether or not the value is positive or negative.


0 denotes a positive number, and 1 denotes a negative number -Exponent: 8 bits stored in position 30–23 The exponent field needs to represent both positive and negative exponents. To do this, a bias is added to the actual exponent in order to get the stored exponent. This value is 127. Thus, an exponent of zero means that 127 is stored in the exponent field. A stored value of 200 indicates an exponent of (200–127), or 73. For reasons exponents of −127 (all 0s) and +128 (all 1s) are reserved for special numbers. -Fraction: 23 bits stored in positions 22–00. The mantissa, also known as the significand, represents the precision bits of the number. It is composed of an implicit leading bit (left of the radix point) and the fraction bits (to the right of the radix point). Note that positive and negative infinity are reserved as max and min. However precision changes for large and small numbers. Precision is greatest around 0.

Warning
Note that Invalid is reserved as invalid values. Using == will not work for these values.

Definition at line 128 of file BaseValues.hpp.

◆ fltp08

typedef double fltp08

Defines an alias representing an 8 byte floating-point number.


Bit layout is as follows: -Sign: 1 bit at position 63 determines whether or not the value is positive or negative. 0 denotes a positive number, and 1 denotes a negative number -Exponent: 11 bits stored in position 62–52. The exponent field needs to represent both positive and negative exponents. To do this, a bias is added to the actual exponent in order to get the stored exponent. This value is 1023. Thus, an exponent of zero means that 1023 is stored in the exponent field. A stored value of 200 indicates an exponent of (200–1023), or -823. For reasons exponents of all 0s and all 1s are reserved for special numbers. -Fraction: 52 bits stored in positions 51–00. The mantissa, also known as the significand, represents the precision bits of the number. It is composed of an implicit leading bit (left of the radix point) and the fraction bits (to the right of the radix point). Note that positive and negative infinity are reserved as max and min. However precision changes for large and small numbers. Precision is greatest around 0.

Warning
Note that Invalid is reserved as invalid values. Using == will not work for these values.

Definition at line 150 of file BaseValues.hpp.

◆ sint01

typedef int8_t sint01

-Defines an alias representing a 1 byte, signed integer.


-Can represent exact integer values -127 through 127. -Byte value 0XFF (integer value: -128) is considered invalid and reserved.

Definition at line 51 of file BaseValues.hpp.

◆ sint02

typedef int16_t sint02

-Defines an alias representing a 2 byte, signed integer.


-Can represent exact integer values -32767 through 32767. -Byte value 0XFFFF (integer value: -32768) is considered invalid and reserved.

Definition at line 58 of file BaseValues.hpp.

◆ sint04

typedef int32_t sint04

-Defines an alias representing a 4 byte, signed integer.


-Can represent exact integer values -2147483647 through 2147483647. -Byte value 0XFFFFFFFF (integer value: -2147483648) is considered invalid and reserved.

Definition at line 65 of file BaseValues.hpp.

◆ sint08

typedef int64_t sint08

-Defines an alias representing an 8 byte, signed integer -Can represent exact integer values -9223372036854775807 through 9223372036854775807.


-Byte value 0XFFFFFFFFFFFFFFFF (integer value: -9223372036854775808) is considered invalid and reserved.

Definition at line 72 of file BaseValues.hpp.

◆ uint01

typedef uint8_t uint01

-Defines an alias representing a 1 byte, unsigned integer -Can represent exact integer values 0 through 254.


-Byte value 0XFF (integer value: 255) is considered invalid and should normally be reserved. Note that it can be used with caution. -Note that subtracting 1 from 0 will result in 0xFF, the reserved invalid value.

Definition at line 81 of file BaseValues.hpp.

◆ uint02

typedef uint16_t uint02

-Defines an alias representing a 2 byte, unsigned integer -Can represent exact integer values 0 through 65534.


-Byte value 0xFFFF (integer value: 65535) is considered invalid and reserved. -Note that subtracting 1 from 0 will result in 0xFFFF, the reserved invalid value.

Definition at line 89 of file BaseValues.hpp.

◆ uint04

typedef uint32_t uint04

-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 through 4294967294.


-Byte value 0xFFFFFFFF (integer value: 4294967295) is considered invalid and reserved. -Note that subtracting 1 from 0 will result in 0xFFFFFFFF, the reserved invalid value.

Definition at line 97 of file BaseValues.hpp.

◆ uint08

typedef uint64_t uint08

-Defines an alias representing an 8 byte, unsigned integer


-Can represent exact integer values 0 through 18446744073709551614. -Byte value 0XFFFFFFFFFFFFFFFF (integer value: 18446744073709551615) is considered invalid and reserved. -Note that subtracting 1 from 0 will result in 0XFFFFFFFFFFFFFFFF, the reserved invalid value.

Definition at line 107 of file BaseValues.hpp.

◆ Vector7d

typedef Eigen::Matrix< g_type, 7, 1 > Vector7d

7D vector for quaternion + translation representation.

7D vector type for Sim3 tangent space.

Definition at line 39 of file se3quat.h.

◆ wchar

typedef wchar_t wchar

Allias for wchar_t, a value that represents a character of two bytes in size.


Definition at line 183 of file BaseValues.hpp.

Enumeration Type Documentation

◆ AccelerometerState

Reports the state of an accelerometer within a OrientationSensor.


Enumerator
e_no_accelerometer 

No accelerometer is available on this device.

e_accelerometer_valid 

The accelerometer is present and reporting valid data.

e_accelerometer_invalid 

The accelerometer is present but reporting invalid data.

Definition at line 69 of file OrientationSensor.h.

◆ ACTIVE_SAT_AUTO_MODE_E

Enumerator
ASAM_MANUAL 

Manual, forced to operate in2D or 2D mode.

ASAM_AUTO 

Automatic, allowed to automatically switch 2D/3D.

Definition at line 37 of file NMEASentenceGSA.h.

◆ ACTIVE_SAT_MODE_E

Enumerator
ASM_FIX_NOT_AVAILABLE 

Fix not available.

ASM_2D 

2D

ASM_3D 

3D

Definition at line 42 of file NMEASentenceGSA.h.

◆ AerialImageMode

enum class AerialImageMode
strong

enum specifying what type of image to fetch.


Options for terrain, satellite, or road views

Enumerator
e_google_satellite 

Google satellite imagery.

e_google_road 

Google road map view.

e_google_terrain 

Google terrain map view.

e_google_hybrid 

Google hybrid (satellite + road labels) view.

e_open_maps 

OpenStreetMap tile imagery.

e_aerial_image_mode_size 

Sentinel value; always last.

Definition at line 16 of file MercatorImageManager.h.

◆ AngleType

enum AngleType

The possible units that can be used by the angle class.


These are returned and used for real world angle representation. INTERNAL_ANGLE is the angle internally used by the angle class.

Enumerator
RADIANS 

Angle measured in radians (0 to 2*PI for a full circle).

DEGREES 

Angle measured in degrees (0 to 360 for a full circle).

INTERNAL_ANGLE 

The angle internally used by the angle class.

PERCENT 

Angle measured as a percentage (0.0 to 1.0 for a full circle).

Definition at line 55 of file Angle.h.

◆ ArialFeatureList

enum class ArialFeatureList
strong

Contains a list of common features that may be provided by Aerial tile services.


Enumerator
e_all 

All features.

e_administrative 

Administrative boundaries.

e_administrative_country 

Country-level administrative boundaries.

e_administrative_land_parcel 

Land parcel boundaries.

e_administrative_locality 

Locality-level administrative boundaries.

e_administrative_neighborhood 

Neighborhood-level administrative boundaries.

e_administrative_province 

Province-level administrative boundaries.

e_landscape 

General landscape features.

e_landscape_man_made 

Man-made landscape features.

e_landscape_natural 

Natural landscape features.

e_poi 

Points of interest (general).

e_poi_attraction 

Tourist attraction points of interest.

e_poi_business 

Business points of interest.

e_poi_government 

Government points of interest.

e_poi_medical 

Medical facility points of interest.

e_poi_park 

Park points of interest.

e_poi_place_of_worship 

Place of worship points of interest.

e_poi_school 

School points of interest.

e_poi_sports_complex 

Sports complex points of interest.

e_road 

General road features.

e_road_arterial 

Arterial road features.

e_road_highway 

Highway road features.

e_road_local 

Local road features.

e_transit 

General transit features.

e_transit_line 

Transit line features.

e_transit_station 

Transit station features.

e_water 

Water body features.

e_feature_list_size 

Sentinel value; total number of feature types.

Definition at line 28 of file MercatorImageManager.h.

◆ BatteryCapacityType

enum class BatteryCapacityType
strong

The various types of capacity information a Battery may have.


Enumerator
e_percentage 

Capacity expressed as a percentage of full charge.

e_watt_hours 

Capacity expressed in watt-hours.

e_voltage 

Capacity expressed as a raw voltage reading.

Definition at line 54 of file Battery.h.

◆ BatteryState

enum class BatteryState
strong

An indication of what state a Battery object is in.


Enumerator
e_no_battery 

No battery is present.

e_normal 

Battery is operating within normal parameters.

e_low_voltage 

Battery voltage has dropped below the warning threshold.

e_critical_voltage 

Battery voltage has reached a critical level.

e_shutdown_voltage 

Battery voltage is at or below the shutdown threshold.

e_invalid 

Battery state could not be determined.

Definition at line 42 of file Battery.h.

◆ BuildAction

enum class BuildAction
strong

Enumerates all supported build action types available in the Developer module build workflow system.

Enumerator
e_workflow 

A container action that executes child actions sequentially.

e_index_loop 

Loops over a range of integer indices.

e_variable_loop 

Loops over a set of variable values.

e_file_loop 

Loops over files matching a pattern.

e_git_action 

Executes a git command.

e_git_clone 

Clones a git repository.

e_set_variable 

Sets a build variable.

e_set_registry_variable 

Sets a Windows registry variable.

e_visual_studio_action 

Invokes MSBuild or Visual Studio.

e_qt_creator_action 

Invokes Qt Creator or qmake.

e_installer_builder 

Builds an installer package.

e_run 

Runs an executable or command.

e_process_files 

Processes files with child actions.

e_list_files 

Lists files matching a pattern.

e_run_file 

Runs a specific file.

e_copy_files 

Copies files to a destination.

e_move_files 

Moves files to a destination.

e_generate_api 

Generates the NDEVR API directory.

e_download_api 

Downloads the NDEVR API.

e_generate_out 

Generates the output directory.

e_generate_easy_include 

Generates convenience include files.

e_collect_statistics 

Collects code statistics.

e_generate_widget 

Generates a new widget scaffold.

e_generate_model 

Generates a new model scaffold.

e_perform_activation 

Performs license activation.

e_zip 

Compresses files into a zip archive.

e_unzip 

Extracts files from a zip archive.

e_delete_files 

Deletes files matching a pattern.

e_build_shaders 

Compiles GLSL shaders to SPIR-V.

e_create_module 

Creates a new module scaffold.

e_create_factory 

Creates a new IOFactory scaffold.

e_translate 

Generates or updates translation files.

e_play_sound 

Plays an audio file.

e_text_to_speech 

Converts text to speech.

e_stop_process 

Stops a running process.

e_increment_version 

Increments a module version number.

e_log_message 

Logs a message.

e_install_visual_studio 

Installs Visual Studio components.

e_exit_software 

Exits the application.

e_invalid 

Sentinel value indicating no valid action.

Definition at line 10 of file BuildActions.h.

◆ CADColorMethod

enum class CADColorMethod
strong

Entites in CAD can be colored in various ways.


Definition at line 48 of file EntityCodes.h.

◆ CollectionMode

The operating mode for raster point collection, controlling power usage and data type.


Enumerator
e_indoor 

Indoor scanning mode with optimized exposure settings.

e_outdoor 

Outdoor scanning mode with higher dynamic range.

e_trigger 

Triggered capture mode for synchronized scanning.

e_low_power 

Low-power mode with reduced frame rate.

e_infrared 

Infrared-only capture mode.

e_tracking_only 

Tracking without point collection.

e_calibration 

Calibration mode for sensor alignment.

e_off 

Scanner is powered off.

e_collection_mode_size 

Number of collection modes.

Definition at line 15 of file RasterFrame.h.

◆ ColorMode

enum ColorMode

Modes that CAD can use to color objects.


Definition at line 44 of file CADEntities.h.

◆ CommandSupport

enum class CommandSupport
strong

Describes whether a HardwareCommandQueue supports certain commands.


This is usually firmware.

Enumerator
e_supported 

The command is supported by the hardware.

e_not_supported 

The command is not supported by the hardware.

e_not_known 

Whether the command is supported has not yet been determined.

Definition at line 50 of file HardwareCommandQueue.h.

◆ CompressionMode

Forward declaration of the Module struct for module metadata.


Logical information about the type of compression implemented or requested

Enumerator
e_no_compression 

No compression is applied; data is stored raw.

e_default_compression 

Uses a sensible default compression strategy.

e_best_speed 

Optimizes for fastest compression at the cost of ratio.

e_string_compression 

Compression mode tailored for string data.

e_floating_point_compression 

Generic floating-point compression.

e_best_compression 

Optimizes for smallest output at the cost of speed.

e_floating_point_compression_1_fltp04 

1D single-precision floating-point compression.

e_floating_point_compression_2_fltp04 

2D single-precision floating-point compression.

e_floating_point_compression_3_fltp04 

3D single-precision floating-point compression.

e_floating_point_compression_4_fltp04 

4D single-precision floating-point compression.

e_floating_point_compression_1_fltp08 

1D double-precision floating-point compression.

e_floating_point_compression_2_fltp08 

2D double-precision floating-point compression.

e_floating_point_compression_3_fltp08 

3D double-precision floating-point compression.

e_floating_point_compression_4_fltp08 

4D double-precision floating-point compression.

e_string_reference 

Stores strings by reference index into a shared table.

e_compression_count 

Total number of compression modes; always last.

Definition at line 16 of file Compressor.h.

◆ ConnectionOpenType

enum class ConnectionOpenType
strong

Describes how to open a connection.


Enumerator
e_not_open 

Connection is not open.

e_read_only 

Open for reading only.

e_write_only 

Open for writing only.

e_read_write 

Open for both reading and writing.

e_append 

Open in append mode.

e_truncate 

Truncate existing data on open.

e_text 

Open in text mode.

e_unbuffered 

Disable buffering.

e_new_only 

Only open if the connection is new.

e_existing_only 

Only open if the connection already exists.

Definition at line 63 of file Connection.h.

◆ ConnectionState

enum class ConnectionState
strong

Describes the state of the connection.


Enumerator
e_no_connection 

No connection has been established.

e_valid_connection 

A valid, active connection is established.

e_awaiting_response 

Waiting for a response from the remote endpoint.

e_attempting_connection 

Currently attempting to establish a connection.

e_invalid_response 

A response was received but was not valid.

e_no_response 

No response was received within the expected time.

e_no_services 

No services are available on the remote endpoint.

e_access_to_port_denied 

Access to the requested port was denied.

e_network_error 

A general network error occurred.

e_resetting 

The connection is being reset.

e_initializing 

The connection is initializing.

e_connection_timeout 

The connection attempt timed out.

e_invalid_connection 

The connection is in an invalid state.

Definition at line 44 of file Connection.h.

◆ ContextMenuActions

enum class ContextMenuActions
strong

Default built-in context menu actions.


Enumerator
e_show_properties 

Show the properties panel for the selected object.

e_make_visible 

Make the selected object visible.

e_hide_everything_except 

Hide all objects except the selected one.

e_make_invisible 

Make the selected object invisible.

e_edit_material 

Open the material editor for the selected object.

e_mesh 

Perform a mesh operation on the selected object.

e_save 

Save the selected object.

e_explode 

Explode a grouped object into its components.

e_group 

Group selected objects together.

e_import_from_library 

Import an object from the library.

e_delete_from_library 

Delete an object from the library.

e_add_station 

Add a new station to the scene.

e_delete_object 

Delete the selected object.

e_station_text_visible 

Toggle visibility of station text labels.

e_station_lines_visible 

Toggle visibility of station lines.

e_station_axis_visible 

Toggle visibility of station axis indicators.

e_deploy_to_station 

Deploy content to a station.

e_deploy_to_borehole 

Deploy content to a borehole.

e_add_deployment 

Add a new deployment.

e_none 

No action.

Definition at line 11 of file ContextMenuManager.h.

◆ DenseReconstructionMode

enum class DenseReconstructionMode : uint01
strong

Controls the dense reconstruction pipeline.


CPU uses OpenMVS for both depth estimation and fusion (proven, default). GPU+OpenMVS uses Vulkan PatchMatch for depth, then OpenMVS for fusion. GPU+Direct uses Vulkan PatchMatch for depth and direct projection for fusion.

Enumerator
e_cpu_openmvs 

OpenMVS CPU pipeline: depth estimation + fusion (default).

e_gpu_openmvs_fusion 

GPU PatchMatch depth maps fed into OpenMVS fusion (hybrid).

e_gpu_direct_fusion 

GPU PatchMatch depth maps + direct projection (experimental).

Definition at line 85 of file PhotogrammetryOptions.h.

◆ DependencyType

Stores the type of dependency for a Module or resource.


Enumerator
e_file 

A standalone file dependency.

e_library 

A shared or static library dependency.

e_executable 

An executable binary dependency.

e_module 

An NDEVR module dependency.

e_type 

A type registration dependency.

e_firewall_exception 

A firewall exception that must be registered.

e_bundled_folder 

A folder bundled with the module for distribution.

e_rcc_resource 

A Qt compiled resource (.rcc) dependency.

e_source_folder 

A source folder dependency.

e_install_executable 

An executable to run during installation.

Definition at line 53 of file ModuleResourceManager.h.

◆ DesignDialogStyle

enum class DesignDialogStyle
strong

Styles controlling the appearance and behavior of a DesignObjectDialog.

Enumerator
e_edit_settings 

Standard edit settings dialog with apply/cancel.

e_object_creation 

Dialog for creating a new object.

e_next_back_workflow 

Workflow dialog with next and back buttons.

e_finish_back_workflow 

Workflow dialog with finish and back buttons.

e_next_workflow 

Workflow dialog with only a next button.

e_finish_workflow 

Workflow dialog with only a finish button.

e_no_decoration 

Dialog without any button decorations.

Definition at line 13 of file ShowPropertySettings.h.

◆ DimensionValues

Values that represent dimension values.


Note these are used throughout the code to make things more readable. For example, for a vertex we can access it via vertex[Z] instead of vertex[2] which overall contributes to total readability. Typically for shapes (Triangles, LineSegments, etc) we access the nodes via A, B, C. triangle.vertex(A) for example. For points we typically use X, Y, Z triangle.vertex(A)[X] = triangle.vertex(B)[X]

Definition at line 193 of file BaseValues.hpp.

◆ DropArea

enum DropArea

relates where a widget should be dropped relative to another.


Enumerator
e_drop_invalid 

No valid drop target.

e_drop_popup 

Drop into a popup/floating container.

e_drop_center 

Drop into the center (tabbed area) of the target.

e_drop_top_fixed 

Drop above the target as a fixed panel.

e_drop_right_fixed 

Drop to the right of the target as a fixed panel.

e_drop_left_fixed 

Drop to the left of the target as a fixed panel.

e_drop_bottom_fixed 

Drop below the target as a fixed panel.

e_drop_top_direct_fixed 

Drop directly above the target as a fixed panel (no splitter).

e_drop_right_direct_fixed 

Drop directly to the right of the target as a fixed panel.

e_drop_left_direct_fixed 

Drop directly to the left of the target as a fixed panel.

e_drop_bottom_direct_fixed 

Drop directly below the target as a fixed panel.

e_drop_top_insert 

Insert above the target within an existing splitter.

e_drop_right_insert 

Insert to the right of the target within an existing splitter.

e_drop_left_insert 

Insert to the left of the target within an existing splitter.

e_drop_bottom_insert 

Insert below the target within an existing splitter.

Definition at line 45 of file RibbonArea.h.

◆ DXFEntityCodes

enum class DXFEntityCodes
strong

Types of CAD entities natively supported by the NDEVR API.


Definition at line 72 of file EntityCodes.h.

◆ DXFVersion

enum class DXFVersion
strong

Versions of the DXF we support writing out.


Lower versions support less features.

Definition at line 39 of file EntityCodes.h.

◆ eCameraModelType

Camera model type enumeration.

Enumerator
e_pinhole 

Standard pinhole model.

e_kannala_brandt_8 

Kannala-Brandt fisheye model with 8 parameters.

Definition at line 35 of file SLAMParameters.h.

◆ EditorShowMode

enum class EditorShowMode
strong

Describes how an Editor should be displayed within the application UI.


Enumerator
e_flexible 

The editor can be shown in any mode depending on context.

e_side_panel 

The editor is shown as a side panel.

e_popup 

The editor is shown as a popup dialog.

e_fullscreen 

The editor is shown in fullscreen mode.

Definition at line 47 of file Editor.h.

◆ ErrorCode

enum ErrorCode

Error codes returned by EXIF/XMP parsing functions.

Enumerator
PARSE_SUCCESS 

Parse EXIF and/or XMP was successful.

PARSE_INVALID_JPEG 

No JPEG markers found in buffer, possibly invalid JPEG file.

PARSE_UNKNOWN_BYTEALIGN 

Byte alignment specified in EXIF file was unknown (neither Motorola nor Intel).

PARSE_ABSENT_DATA 

No EXIF and/or XMP data found in JPEG file.

PARSE_CORRUPT_DATA 

EXIF and/or XMP header was found, but data was corrupted.

Definition at line 10 of file TinyExif.h.

◆ EulerPosition

Values that represent euler angles.


These are typically used in Vector<3, Angle> to classify an orientation of an object.

Enumerator
ROLL 

Rotation about the forward axis (X).

PITCH 

Rotation about the lateral axis (Y).

YAW 

Rotation about the vertical axis (Z).

Definition at line 43 of file Angle.h.

◆ ExecuteCriteria

enum class ExecuteCriteria
strong

Specifies conditional criteria that determine whether a build action should execute.

Enumerator
e_is_undefined 

Execute if the variable is undefined.

e_is_defined 

Execute if the variable is defined.

e_contains 

Execute if the variable contains the specified value.

e_is_equal_to 

Execute if the variable equals the specified value.

e_is_not_equal_to 

Execute if the variable does not equal the specified value.

e_does_not_contain 

Execute if the variable does not contain the specified value.

e_is_true 

Execute if the variable evaluates to true.

e_is_false 

Execute if the variable evaluates to false.

e_file_exists 

Execute if the specified file exists.

e_file_not_exists 

Execute if the specified file does not exist.

Definition at line 62 of file BuildActions.h.

◆ FieldCode

enum FieldCode

Bit flags indicating which metadata fields are available after parsing.

Enumerator
FIELD_NA 

No EXIF or XMP data.

FIELD_EXIF 

EXIF data available.

FIELD_XMP 

XMP data available.

FIELD_ALL 

Both EXIF and XMP data available.

Definition at line 21 of file TinyExif.h.

◆ FileProperty

Booleans that can be used to define properties of a file.


Enumerator
e_file_cache_is_valid 

Whether the cached file data is valid and up-to-date.

e_file_exists 

Whether the file exists on disk.

e_file_is_hidden 

Whether the file is marked as hidden by the filesystem.

e_file_is_directory 

Whether the path refers to a directory rather than a file.

Definition at line 10 of file FileCache.h.

◆ GeodeticValues

Values that represent dimension values for geodic dimensions.


Represents latitude, longitude, and altitude.

Definition at line 208 of file BaseValues.hpp.

◆ GeometryBooleanOperation

Types of GeometryBoolean operations supported natively by the NDEVR engine.


Enumerator
e_concatinate 

Concatenates (unions) geometry from multiple sources into one mesh.

e_subtract 

Subtracts one geometry volume from another.

e_cut 

Cuts geometry along an intersection boundary.

Definition at line 14 of file GeometryBoolean.h.

◆ GeometryType

enum class GeometryType
strong

Describes the high-level geometric topology of a Geometry object.


Enumerator
e_points 

Point cloud or discrete points.

e_linework 

Lines or polylines.

e_triangles 

Triangle meshes.

e_convex_polygons 

Convex polygon meshes.

e_concave_polygons 

Concave polygon meshes.

e_grids 

Regular grid structures (e.g., terrain heightmaps).

e_block_models 

Volumetric block model grids.

e_geometry_type_size 

The number of geometry types. Used for sizing arrays.

Definition at line 105 of file DesignObjectBase.h.

◆ GNSSConstellation

enum class GNSSConstellation
strong

Identifies the satellite constellation system providing GNSS data.

Enumerator
e_unknown 

Unknown constellation.

e_gps 

GPS (US).

e_sbas 

SBAS (Satellite-Based Augmentation System).

e_glonass 

GLONASS (Russia).

e_gnss 

GNSS (mixed constellation).

e_galileo 

Galileo (EU).

e_beidou 

BeiDou (China).

e_quasi_zenith 

QZSS (Japan).

e_navic 

NavIC (India).

Definition at line 15 of file GNSSEnums.h.

◆ GNSSMode

enum GNSSMode

Specifies the GPS data source mode used by the sensor.

Enumerator
e_not_set 

No mode has been set.

e_local_machine 

Uses the local machine's built-in GPS.

e_rw5_file 

Reads GPS data from a Carlson RW5 file.

e_nmea_file 

Reads GPS data from an NMEA log file.

e_connection 

Reads GPS data from a live serial or Bluetooth connection.

Definition at line 5 of file GNSSEnums.h.

◆ GNSSQuality

enum class GNSSQuality
strong

Describes the quality level of a GNSS position fix.


Enumerates standard GNSS fix quality indicators, ranging from invalid (no fix) through autonomous GPS, differential corrections, and real-time kinematic (RTK) solutions. Values correspond to the GGA quality indicator field in NMEA sentences.

Enumerator
e_invalid 

No fix available or fix is invalid.

e_gps_autonomous 

Autonomous GPS fix (standard single-point positioning).

e_gps_dsps_fix 

Differential GPS fix (DGPS). Values above 2 are NMEA 2.3+ features.

e_pps_fix 

GPS PPS (Pulse Per Second) mode, fix valid.

e_rtk_fix 

Real-Time Kinematic fixed solution (highest precision).

e_rtk_float 

Real-Time Kinematic float solution (converging, lower precision than fixed).

e_estimated 

Estimated position via dead reckoning.

e_unknown 

Fix quality is unknown.

e_timeout 

Fix has timed out and is no longer current.

e_size 

Number of entries in this enum; used for iteration.

Definition at line 15 of file GPSPoint.h.

◆ GyroState

enum GyroState

Used by OrientationSensor to display the current state of any available gyro.


Enumerator
e_no_gyro 

No gyroscope is available on this device.

e_gyro_invalid 

The gyroscope is present but reporting invalid data.

e_gyro_valid 

The gyroscope is present and reporting valid data.

e_initializing 

The gyroscope is currently initializing.

e_disabled 

The gyroscope is present but has been disabled.

e_stabalizing_temp 

The gyroscope is stabilizing its temperature before reporting.

e_calculating_drift 

The gyroscope is calculating its drift compensation.

e_validating_drift 

The gyroscope is validating its drift calculation.

e_needs_reset 

The gyroscope needs to be reset before further use.

Definition at line 42 of file OrientationSensor.h.

◆ InterpolationValues

Values that represent interpolation functions.


Useful in large or complicated geological or time based data sets.

Definition at line 248 of file BaseValues.hpp.

◆ IntersectionTypes

Used for classifying shape intersections.


Values include:

  • Outside means completely outside the other shape, not touching the boundary.
  • Inside means entirely inside (but may touch the boundary) of the shape.
  • Mixed means the shape is neither completely inside or outside the shape. These values are used heavily in the intersection class.

Definition at line 237 of file BaseValues.hpp.

◆ LevelingState

Reports the current leveling state of the orientation sensor, indicating whether the device is within acceptable tilt limits.


Enumerator
e_not_used 

Leveling is not being used by this sensor.

e_level_invalid 

The current level reading is invalid or outside acceptable bounds.

e_level_warning 

The current level reading is approaching the limit threshold.

e_level_valid 

The current level reading is within acceptable bounds.

Definition at line 79 of file OrientationSensor.h.

◆ LocationValues

Values that represent location values.


Note these are used throughout the code to make things more readable as above. For example, for example in point pairs with a max and a min, or in a bounds object.

Definition at line 222 of file BaseValues.hpp.

◆ MagnetometerState

Used by OrientationSensor to display the current state of any available magnetometer.


Enumerator
e_no_compass 

No magnetometer/compass is available on this device.

e_compass_valid 

The magnetometer is present and reporting valid data.

e_compass_invalid 

The magnetometer is present but reporting invalid data.

e_calculating_bias 

The magnetometer is currently calculating its bias offset.

Definition at line 59 of file OrientationSensor.h.

◆ NDEVRLightingTheme

Enumerates the available UI color themes.

Enumerator
e_dark_theme 

A dark color theme with light text on dark backgrounds.

e_light_theme 

A light color theme with dark text on light backgrounds.

e_num_of_themes 

The total number of available themes.

Definition at line 45 of file NDEVRTheme.h.

◆ NDEVRRibbonAction

Enumerates the standard ribbon actions available in the NDEVR application.

Enumerator
e_save_file 

Save the current project file.

e_save_as_file 

Save the current project to a new file.

e_open_project 

Open an existing project.

e_undo 

Undo the last operation.

e_redo 

Redo the last undone operation.

e_help 

Show help information.

e_settings 

Open the settings dialog.

e_ribbon_action_size 

The number of ribbon actions.

Definition at line 41 of file NDEVRRibbon.h.

◆ NDEVRSelectionAction

Actions that can be performed on the current selection.

Enumerator
e_save_selection 

Save the selected objects to a file.

e_delete_selection 

Delete the selected objects.

e_selection_action_size 

The number of selection actions.

Definition at line 101 of file SelectionWidget.h.

◆ NDPE

enum class NDPE : uint01
strong

NDPE - NDEVR Design Property Effect: Values stored in the effect database.


A specific geometry value can be retrieved using the get command or set via the set. Upon changing the value, at some point, updateDesignModifiedTime should be called to notify the application about the changes to the design object.

Enumerator
effect_type 

The type of effect (maps to Effect::EffectType).

is_active 

Whether the effect is currently active.

start_time 

The time at which the effect begins.

end_time 

The time at which the effect ends.

frequency 

The frequency of the effect cycle (e.g., blink rate in Hz).

extra_size 

An additional size parameter for the effect.

extra_transform 

An additional transformation matrix applied by the effect.

destroy_when_finished 

Whether to destroy the effect when it completes.

target_property 

The property index on the target to modify.

target_value_a 

The first target property value (string-encoded).

target_value_b 

The second target property value (string-encoded), used for interpolation.

Definition at line 48 of file Effect.h.

◆ NDPG

enum class NDPG
strong

Forward declaration for Geometry design object.


NDPG - NDEVR Design Property Geometry: Values stored in the geometry database.

A specific geometry value can be retrieved using the get command or set via the set. Upon changing the value, at some point, updateDesignModifiedTime should be called to notify the application about the changes to the design object.

Enumerator
geometry_type 

The type identifier string for this geometry.

thickness 

The thickness value applied to geometry rendering.

thickness_mode 

How thickness is interpreted (pixel, flat, circle, etc.).

winding 

The winding order used for face orientation.

property_fields 

Bitmask of which property fields are active.

is_surface 

Whether the geometry represents a surface relative to some plane.

has_closed_primitive 

Whether primitives are closed, enabling volume calculations.

plane_normal 

The normal ray of the surface plane.

plane_offset 

The offset distance of the surface plane from the origin.

poly_holes 

Whether surfacing should check for holes in polygons.

is_smooth 

Whether vertices should be ignored and surfaces treated as smooth (circles, spheres, bezier curves, etc.).

smooth_algorithm 

The algorithm used for smoothing (e.g. Cotangent, Laplacian).

smooth_level 

How smoothed the surface is, based on the argument passed to the smoothing algorithm.

normal_mode 

Normal calculation mode (smooth, no normal, or hard).

normal_smoothing_angle 

The maximum angle threshold for normal smoothing between adjacent faces.

is_closed_solid 

Whether the geometry forms a closed solid (watertight mesh).

shape_type 

A string identifier describing the shape type.

is_clipping_geo 

Whether this geometry should be treated as a clipping region. Default: false.

preserve_primitive_order 

Whether primitive order must be preserved. If false, order may be automatically optimized. Default: false.

preserve_vertex_order 

Whether vertex order must be preserved. If false, order may be automatically optimized. Default: false.

no_auto_tree_creation 

Whether automatic spatial tree creation is disabled.

Definition at line 55 of file Geometry.h.

◆ NDPM

enum class NDPM
strong

NDPM - NDEVR Design Property Material: Values stored in the material database.


A specific geometry value can be retrieved using the get command or set via the set. Upon changing the value, at some point, updateDesignModifiedTime should be called to notify the application about the changes to the design object.

Enumerator
two_sided 

Whether the material is rendered on both sides of a face.

shading_model 

The shading model index used for rendering (see Material::ShadingModel).

opacity 

The overall opacity of the material (0.0 = fully transparent, 1.0 = fully opaque).

bump_scale 

Scale factor applied to bump/normal mapping.

shininess 

Specular shininess exponent for the material surface.

reflectivity 

Reflectivity coefficient of the material surface.

wireframe 

Whether the material is rendered in wireframe mode.

smooth_normals 

Whether vertex normals are smoothed across faces.

pixel_thickness 

Thickness in pixels for line and point rendering.

grid_line_spacing 

Spacing values for gridline rendering (4-component vector).

gridline_spacing_mode 

Mode controlling how gridline spacing is interpreted.

model_space_material 

Whether the material is defined in model space rather than screen space.

color_value_palette 

Color palette used for value-based coloring.

draw_by_property_channel 

Name of the property channel used for color-by-property rendering.

extra_property_value_min 

Minimum value for the extra property color mapping range.

extra_property_value_mid 

Midpoint value for the extra property color mapping range.

extra_property_value_max 

Maximum value for the extra property color mapping range.

override_parent_material 

Whether this material overrides the parent model's material.

override_camera_material 

Whether this material overrides the camera's material settings.

tile_texture_mode 

Texture tiling mode per axis (wrap, clamp, decal, mirror).

texture_coord_mode 

Mode for generating or interpreting texture coordinates.

use_normal_for_tex_coord 

Whether surface normals are used to generate texture coordinates.

ignore_depth 

Whether to skip depth testing when rendering this material.

write_to_depth 

Whether rendering writes to the depth buffer.

depth_bias 

Bias applied to depth values to prevent z-fighting.

fade_render_distance 

Distance at which the material begins to fade out.

max_render_distance 

Maximum distance beyond which the material is not rendered.

ignore_color_channel_lighting 

Whether lighting is ignored for the color channel.

material_property_size 

Sentinel value representing the total number of material properties.

Definition at line 52 of file Material.h.

◆ NDPN

enum class NDPN
strong

NDPN - NDEVR Design Property Node: Values stored in the model database.


A specific model value can be retrieved using the get command or set via the set. Upon changing the value, at some point, updateDesignModifiedTime should be called to notify the application about the changes to the design object.

Enumerator
type 

The type identifier string for this model node.

fixed_bounding_box 

A user-defined fixed bounding box override for this model.

visible_box 

The cached visible bounding box in local coordinates.

calculation_ignored 

Whether this model is ignored in calculations (e.g., volume, area).

can_select_children 

Whether children of this model can be individually selected.

complete_transform 

The fully composed local-to-global transformation matrix.

material_mode 

How the material is resolved for this model (see Model::MaterialMode).

parent_matrix_flags 

Flags controlling which parent transform components to inherit.

global_bounds 

Cached axis-aligned bounding box in global coordinates.

global_selection_bounds 

Cached selection bounding box in global coordinates.

model_color 

The color assigned directly to this model node.

inherited_flags 

Cached flags recursively inherited from ancestors.

personal_inherited_flags 

This node's own contribution to inherited flags (before recursion).

export_ignored 

Whether this item should be excluded from file export.

child_base_ptr 

Pointer to the DesignObjectBase that stores child model data.

parent_base_ptr 

Pointer to the DesignObjectBase that stores parent model data.

material_base_ptr 

Pointer to the DesignObjectBase that stores material data.

geometry_base_ptr 

Pointer to the DesignObjectBase that stores geometry data.

model_property_size 

Sentinel value marking the end of the property enum (always last).

Definition at line 56 of file Model.h.

◆ NDPO

enum class NDPO : uint04
strong

NDPO - NDEVR Design Property Object: Values stored in the property database.


A specific value can be retrieved using the get command or set via the set. Upon changing the value, at some point, updateDesignModifiedTime should be called to notify the application about the changes to the design object.

Enumerator
guid 

A 128-bit globally unique identifier for the object.

design_type 

Bitflag storing what type of object this is (see DesignObjectType).

transform 

A 4x4 transform matrix that maps local coordinates into global space.

bounding_box 

The axis-aligned bounding box of the object in local space.

name 

The display name of the object.

description 

The description text of the object.

editable_description 

Whether the user is allowed to modify the description of the object.

creation_time 

Timestamp when the object was created.

modified_time 

Timestamp when the object was last modified.

asc_modified_time 

Timestamp tracking ascending-order modification.

desc_modified_time 

Timestamp tracking descending-order modification.

geometry_modified_time 

Timestamp when the geometry of the object was last modified.

author 

The author or creator of the object.

creation_software 

The software used to create the object.

spacial_visible 

Whether the object is visible in the 3D spatial view.

tree_visible 

Whether the object is visible in the design tree view.

icon 

Icon identifier for the object.

is_selected 

Whether the object is currently selected.

is_focused 

Whether the object currently has focus.

allow_interactions 

Whether user interactions with this object are allowed.

file 

The source file path associated with this object.

search_terms 

Additional search terms for finding this object.

category 

The category this object belongs to.

deletion_allowed 

Whether the user is allowed to delete this object.

is_deleted 

Whether the object has been soft-deleted.

application_locked 

Whether the application has locked this object from editing.

is_application_owned 

Whether the object is owned and managed by the application.

bounds_ignored 

Whether this object is excluded from bounding box calculations.

selection_ignored 

Whether this object is excluded from selection operations.

meta_data 

General-purpose metadata string for the object.

untranslated_string_data 

Raw untranslated string data storage.

translated_string_data 

Translated string data storage.

uncompressed_data 

Uncompressed binary data storage.

compressed_data 

Compressed binary data storage.

library_id 

UUID referencing a library item this object was created from.

is_frozen 

Whether the object is frozen (cannot be modified by the user).

applied_filters 

Comma-separated list of filter identifiers applied to this object.

property_size 

Sentinel value representing the total number of properties (always last).

Definition at line 235 of file DesignProperties.h.

◆ NDPOC

enum class NDPOC
strong

NDPOC - NDEVR Design Property Calculated: Values calculated then stored in the property database.


A specific value can be retrieved using the get command or set via the set. Upon changing the value, at some point, updateDesignModifiedTime should be called to notify the application about the changes to the design object.

Enumerator
name 

The calculated/translated display name.

description 

The calculated/translated description.

creation_software 

The calculated/translated creation software name.

category 

The calculated/translated category.

search_terms 

The calculated/translated search terms.

author 

The calculated/translated author name.

Definition at line 522 of file DesignProperties.h.

◆ NMEAError

enum NMEAError

Error types.

Most methods will return one of the follow error types.

Enumerator
ERROR_OK 

No error, operation successful.

ERROR_FAIL 

Error, operation failed.

ERROR_TOO_MANY_SATELLITES 

Error, could not process. Too many satellites to fit into database.

ERROR_CHECKSUM 

Error, packet checksum mismatch.

ERROR_RX_BUFFER_OVERFLOW 

Error, receive packet buffer overflow.

ERROR_CMD_BUFFER_OVERFLOW 

Error, receive command buffer overflow.

Definition at line 13 of file NMEAParserData.h.

◆ NormalMode

enum class NormalMode
strong

Describes how surface normals are computed or stored for a Geometry object.


Enumerator
e_no_normals 

No normals are provided.

e_smooth_normals 

Normals are interpolated smoothly across faces.

e_vertex_smooth_normals 

Normals are smoothed per-vertex.

e_hard_normals 

Each face uses a single flat normal (hard edges).

Definition at line 130 of file DesignObjectBase.h.

◆ NtpLeapIndicator

NTP leap second indicators.

Warns of an impending leap second to be inserted or deleted in the last minute of the current day.

Enumerator
NoWarning 

No warning.

LastMinute61Warning 

Last minute has 61 seconds.

LastMinute59Warning 

Last minute has 59 seconds.

UnsynchronizedWarning 

Alarm condition (clock not synchronized).

Definition at line 10 of file NtpEnums.h.

◆ NtpMode

enum NtpMode

NTP association modes defining the relationship between communicating peers.

Enumerator
ReservedMode 

Reserved.

SymmetricActiveMode 

Symmetric active.

SymmetricPassiveMode 

Symmetric passive.

ClientMode 

Client.

ServerMode 

Server.

BroadcastMode 

Broadcast.

ControlMode 

NTP control message.

PrivateMode 

Reserved for private use.

Definition at line 20 of file NtpEnums.h.

◆ NtpStratum

enum NtpStratum

NTP stratum levels indicating the distance from the reference clock.

Enumerator
UnspecifiedStratum 

Unspecified or unavailable.

PrimaryStratum 

Primary reference (e.g.

radio-clock).

SecondaryStratumFirst 

Secondary reference (via NTP or SNTP).

UnsynchronizedStratum 

Unsynchronized.

Definition at line 34 of file NtpEnums.h.

◆ OnFailureAction

enum class OnFailureAction
strong

Specifies the behavior when a build action fails during workflow execution.

Enumerator
e_stop_workflow 

Stop the entire workflow.

e_ignore 

Ignore the failure and continue.

e_shutdown_software 

Shut down the application.

e_prompt_user 

Prompt the user for a decision.

Definition at line 54 of file BuildActions.h.

◆ PacketType

Enumeration of RealSense network packet types.

Enumerator
e_command_packet 

A text command packet.

e_probe_info_packet 

A scanner info/metadata packet.

e_cloud_data 

A point cloud data packet.

Definition at line 24 of file RealSenseServer.h.

◆ PCSWMAGINSStatus

enum class PCSWMAGINSStatus
strong

Status values for the PCSW MAGINS (INS) status field.

Enumerator
CSW_INVALID 

Invalid or no INS data.

CSW_COARSE_ALIGN 

Coarse alignment in progress.

CSW_FINE_ALIGN 

Fine alignment in progress.

CSW_FULL_NAV 

Full navigation mode.

CSW_GNSS_FLOAT 

GNSS float RTK mode.

CSW_GNSS_FIXED 

GNSS fixed RTK mode.

Definition at line 38 of file NMEASentencePCSW.h.

◆ PermissionState

enum class PermissionState : uint01
strong

Represents the current state of a permission request or check.

Enumerator
e_unknown 

Permission state has not been determined.

e_denied 

Permission was denied by the user or system.

e_granted 

Permission was granted by the user or system.

e_permanently_denied 

Permission was permanently denied and cannot be re-requested.

Definition at line 8 of file PermissionManager.h.

◆ PhotogrammetryGeoreferenceMode

Controls how image positions are georeferenced.


GPS mode reads EXIF GPS tags embedded in drone images. GCP mode uses a user-supplied ground control point file for survey-grade accuracy.


Controls how image positions are georeferenced. GPS mode reads EXIF GPS tags embedded in drone images. GCP mode uses a user-supplied ground control point file for survey-grade accuracy.

Enumerator
e_gps_exif 

Read GPS coordinates from EXIF metadata embedded in each image.

e_gcp_file 

Read ground control points from a user-supplied text file.

Definition at line 62 of file PhotogrammetryOptions.h.

◆ PhotogrammetryGPSAccuracy

enum class PhotogrammetryGPSAccuracy : uint01
strong

GPS accuracy profile for SfM position prior weighting.


Consumer drones (DJI Mavic/Phantom) have ~5m accuracy — use lighter weights. RTK/PPK drones have ~2cm accuracy — use strong constraints.

Enumerator
e_consumer 

~5m accuracy: lighter BA prior weights, less trust in altitude

e_rtk 

~2cm accuracy: strong BA prior weights for high-precision surveys

Definition at line 73 of file PhotogrammetryOptions.h.

◆ PhotogrammetryQuality

enum class PhotogrammetryQuality : uint01
strong

Controls which feature extractor and matching strategy OpenMVG uses.


Draft uses AKAZE + cascade hashing (fast, lower quality). Normal uses SIFT + cascade hashing. High uses SIFT + vocabulary-tree matching (best for >500 images).

Enumerator
e_draft 

Fast: AKAZE features, cascade hash matching, half-resolution MVS.

e_normal 

Balanced: SIFT features, cascade hash matching, full-resolution MVS.

e_high 

Quality: SIFT features, vocabulary-tree matching, full-resolution MVS.

Definition at line 45 of file PhotogrammetryOptions.h.

◆ PhotogrammetryStage

enum class PhotogrammetryStage : uint01
strong

Describes which stage of the photogrammetry pipeline is currently running.


Progress within each stage is reported as a [0,1] fraction via the progress callback.

Enumerator
e_listing_images 

Scanning input folder and reading EXIF metadata.

e_extracting_features 

Running per-image feature extraction (SIFT / AKAZE).

e_matching_features 

Finding correspondences between image pairs.

e_sfm 

Structure-from-Motion: recovering camera poses + sparse cloud.

e_dense_reconstruction 

MVS: generating dense point cloud.

e_building_scene 

Converting output into NDEVR DesignObjects.

e_done 

Pipeline completed successfully.

e_cancelled 

User cancelled the run.

e_failed 

An error occurred; see log for details.

Definition at line 55 of file PhotogrammetryRunner.h.

◆ PlanePosition

enum class PlanePosition
strong

The location of an object either below, above, or on a given N-dimensional plane.


Definition at line 41 of file Plane.hpp.

◆ PrimitiveBitFlags

enum class PrimitiveBitFlags
strong

Bit flags that can be set on individual primitives (triangles, lines, etc.) to control their selection, visibility, and deletion state.


Enumerator
e_is_selected 

Primitive is currently selected.

e_is_hidden 

Primitive is hidden from display.

e_is_locked 

Primitive is locked and cannot be edited.

e_is_deleted 

Primitive has been marked for deletion.

e_is_closure_primitive 

Primitive represents a closure element (e.g., closing face).

Definition at line 94 of file DesignObjectBase.h.

◆ PrimitiveMode

enum class PrimitiveMode
strong

Used with Geometry to describe how vertices and indices are used to form shapes.


Enumerator
e_no_index 

No index buffer is used; vertices are not indexed.

e_point 

Each index references a single point.

e_lines 

Each pair of indices defines a line segment.

e_polyline 

Indices define a connected polyline.

e_triangle 

Each triplet of indices defines a triangle.

e_triangle_fan 

Indices define a triangle fan around a central vertex.

e_triangle_strip 

Indices define a triangle strip.

e_grid 

Indices define a regular grid topology.

e_block_model 

Indices define a volumetric block model.

e_index_mode_size 

The number of primitive modes. Used for sizing arrays.

Definition at line 141 of file DesignObjectBase.h.

◆ PrimitiveProperty

enum class PrimitiveProperty
strong

Describes which rendering property a primitive index buffer corresponds to.


Enumerator
Outline 

Line-based outline rendering of primitives.

Solid 

Solid filled rendering of primitives.

Vertices 

Vertex highlighting and point drawing.

Index_Property_Size 

The number of primitive property types. Used for sizing arrays.

Definition at line 49 of file DesignObjectBase.h.

◆ ProcessStage

Processing stage within the raster point pipeline.


Each frame progresses through these stages.

Enumerator
e_collect 

Raw data collection from sensor.

e_slam_correction 

SLAM-based pose correction.

e_point_transform 

Transform points to world coordinates.

e_point_smooth 

Spatial smoothing and noise filtering.

e_block_model_add 

Add processed points to the block model.

e_stage_size 

Number of processing stages.

Definition at line 42 of file RasterFrame.h.

◆ RangeSensorType

The type of a range sensor.


Enumerator
e_line 

A single-line range sensor measuring along one axis.

e_2d_fan 

A 2D fan-shaped range sensor measuring across a plane.

e_3d_fan 

A 3D fan-shaped range sensor measuring in a volume.

Definition at line 39 of file RangeSensor.h.

◆ RasterColorFormat

enum class RasterColorFormat
strong

Pixel format of the raster color data stream.


Enumerator
e_rgb 

Red-Green-Blue byte order.

e_bgr 

Blue-Green-Red byte order.

e_yuv 

YUV 4:2:2 packed format.

e_y8 

8-bit grayscale

Definition at line 30 of file RasterFrame.h.

◆ RawConnectionLoggingMode

enum class RawConnectionLoggingMode
strong

Connection can write to the log either as raw ascii bytes, or by converting those bytes into a binary-friendly hex format.


Enumerator
e_no_logging 

Logging is disabled.

e_binary_logging 

Raw data is converted to hex for logging.

e_ascii_logging 

Raw data is logged as ASCII text.

Definition at line 80 of file Connection.h.

◆ RealSenseDeviceType

Enumeration of supported RealSense device types.

Enumerator
e_unknown 

Unknown device type.

e_d405 

Intel RealSense D405.

e_d435 

Intel RealSense D435.

e_d455 

Intel RealSense D455.

e_d457 

Intel RealSense D457.

e_t265 

Intel RealSense T265 tracking camera.

Definition at line 43 of file RealSenseScanner.h.

◆ RegistryActionType

enum class RegistryActionType
strong

Available registry actions that can be taken on program installation.


Enumerator
e_append 

Appends the specified value(s) to a multiString registry key.

e_create 

Creates the key, if absent, when the parent component is installed.

e_remove 

Removes a registry name when the parent component is installed.

Definition at line 193 of file ModuleResourceManager.h.

◆ RegistryType

enum class RegistryType
strong

Available registry actions that can be taken on program installation.


Enumerator
e_string 

The value is stored as a string (REG_SZ).

e_integer 

The value is stored as an integer (REG_DWORD).

e_binary 

The value is stored as a hexadecimal value (REG_BINARY).

e_expandable 

The value is stored as an expandable string (REG_EXPAND_SZ).

e_multi_string 

The value is stored as a multi-string (REG_MULTI_SZ).

e_folder 

The value represents a folder path.

Definition at line 203 of file ModuleResourceManager.h.

◆ RegistyEntryType

enum class RegistyEntryType
strong

Specifies the data type stored in a Windows registry value.

Enumerator
e_none 

No defined value type.

e_sz 

A null-terminated string.

e_expand_sz 

A null-terminated string with unexpanded environment variable references.

e_binary 

Raw binary data.

e_dword 

A 32-bit unsigned integer.

e_dword_little_endian 

A 32-bit unsigned integer in little-endian byte order.

e_dword_big_endian 

A 32-bit unsigned integer in big-endian byte order.

e_link 

A Unicode symbolic link.

e_multi_sz 

An array of null-terminated strings.

e_resource_list 

A device-driver resource list.

e_full_resource_descriptor 

A full resource descriptor for a physical device.

e_resource_requirements_list 

A resource requirements list for a device driver.

e_qword 

A 64-bit unsigned integer.

e_qword_little_endian 

A 64-bit unsigned integer in little-endian byte order.

Definition at line 8 of file RegistryEntry.h.

◆ RibbonArea

enum class RibbonArea
strong

Requests a ribbon or tab area to be in a certain location and orientation relative to another widget.


Enumerator
e_keep_square 

Keeps the ribbon area in a square aspect ratio.

e_top 

Ribbon positioned at the top, oriented horizontally.

e_bottom 

Ribbon positioned at the bottom, oriented horizontally.

e_left 

Ribbon positioned on the left, oriented vertically.

e_right 

Ribbon positioned on the right, oriented vertically.

e_left_horizontal 

Ribbon positioned on the left but oriented horizontally.

e_right_horizontal 

Ribbon positioned on the right but oriented horizontally.

e_vertical_accordian 

Ribbon displayed as a vertical accordion menu.

e_vertical_menu 

Ribbon displayed as a vertical menu.

Definition at line 70 of file RibbonArea.h.

◆ RibbonLayoutMode

The orientations a ribbon can take on.


Definition at line 38 of file RibbonLayoutMode.hpp.

◆ RMC_MODE_E

enum RMC_MODE_E

RMC sentence positioning mode indicator values.

Enumerator
RMC_MODE_AUTONOMOUS 

Autonomous mode.

RMC_MODE_DIFFERENTIAL 

Differential mode.

RMC_MODE_ESTIMATED 

Estimated (dead reckoning) mode.

RMC_MODE_FLOAT 

RTK float mode.

RMC_MODE_MANUAL 

Manual input mode.

RMC_MODE_NO_FIX 

No fix available.

RMC_MODE_PRECICE 

Precise mode.

RMC_MODE_RTK 

RTK fixed mode.

RMC_MODE_SIMULATOR 

Simulator mode.

Definition at line 43 of file NMEASentenceRMC.h.

◆ RMC_STATUS_E

RMC sentence status field values.

Enumerator
RMC_STATUS_ACTIVE 

Data is active (valid).

RMC_STATUS_VOID 

Data is void (invalid).

Definition at line 38 of file NMEASentenceRMC.h.

◆ ScanDialogAction

enum class ScanDialogAction
strong

Actions that can be triggered from keyboard shortcuts in the point scanner dialog.


Enumerator
e_take_reading 

Record a single range measurement.

e_remove_last_reading 

Undo the most recent measurement.

e_calibrate_gyro 

Start gyroscope calibration.

e_edit_station 

Open the station editor.

e_edit_deployment_length 

Edit the deployment length.

e_toggle_light 

Toggle the scanner light on/off.

e_toggle_last_hit 

Toggle display of the last hit point.

e_start_scan 

Begin scanning.

e_stop_scan 

Stop scanning.

e_pause_scan 

Pause the active scan.

e_toggle_deployment_mode 

Toggle between scan and deployment modes.

e_perform_deployment_scan 

Execute a deployment-specific scan.

e_show_temp 

Display the temperature reading.

e_show_battery 

Display the battery status.

e_zoom_to_deployment 

Zoom the viewport to the deployment location.

e_zoom_to_probe 

Zoom the viewport to the probe position.

e_swap_cameras 

Swap between available camera feeds.

e_action_size 

Number of scan dialog actions.

Definition at line 9 of file PointScannerKeyController.h.

◆ ScanMode

enum class ScanMode
strong

The mode that a scanner will collect data in.


Enumerator
e_horizontal 

Scanner sweeps in the horizontal plane only.

e_vertical 

Scanner sweeps in the vertical plane only.

e_horizontal_and_vertical 

Scanner sweeps in both horizontal and vertical planes.

e_circle_scan 

Scanner performs a circular scan pattern.

e_moving_circle_scan 

Scanner performs a circular scan while translating position.

e_image_only 

Capture imagery without point cloud data.

e_video_scan 

Continuous video-based scanning.

e_undefined 

Scan mode has not been specified.

Definition at line 7 of file ScanMode.h.

◆ SelectionMode


The type of selection used.

Definition at line 45 of file SelectionArea.hpp.

◆ ServerRequestType

enum class ServerRequestType : uint04
strong

Enumerates the types of requests that can be sent between NDEVR file clients and servers.


Definition at line 44 of file NDEVRFileServer.h.

◆ SnapLocation

enum class SnapLocation
strong

A list of directions that a view can be pointed relative to an object or scene.


Enumerator
e_isometric_nw 

Isometric view from the northwest.

e_isometric_n 

Isometric view from the north.

e_isometric_ne 

Isometric view from the northeast.

e_isometric_w 

Isometric view from the west.

e_top_down_snap 

Top-down (plan) view looking straight down.

e_bottom_snap 

Bottom view looking straight up.

e_isometric_e 

Isometric view from the east.

e_isometric_sw 

Isometric view from the southwest.

e_isometric_s 

Isometric view from the south.

e_isometric_se 

Isometric view from the southeast.

e_n_side_snap 

Side view from the north.

e_s_side_snap 

Side view from the south.

e_e_side_snap 

Side view from the east.

e_w_side_snap 

Side view from the west.

e_front 

Front-facing view relative to the object.

e_back 

Back-facing view relative to the object.

e_back_wo_pitch 

Back-facing view with pitch locked (no pitch rotation).

e_left 

Left-side view relative to the object.

e_right 

Right-side view relative to the object.

e_front_wo_pitch_yaw 

Front-facing view with both pitch and yaw locked.

e_back_wo_pitch_yaw 

Back-facing view with both pitch and yaw locked.

e_left_wo_yaw 

Left-side view with yaw locked (no yaw rotation).

e_right_wo_yaw 

Right-side view with yaw locked (no yaw rotation).

e_best_snap 

Automatically choose the best snap direction.

e_best_side_snap 

Automatically choose the best side-on snap direction.

e_no_snap 

No snap applied; free camera orientation.

Definition at line 39 of file ViewLocation.h.

◆ SplineBoundaryType

enum class SplineBoundaryType
strong

Defines the boundary condition type applied at spline end-points.

Enumerator
e_first_deriv 

First derivative boundary condition.

e_second_deriv 

Second derivative boundary condition.

e_not_a_knot 

Not-a-knot boundary condition.

Definition at line 18 of file SplineEnums.h.

◆ SplineType

enum class SplineType
strong

Defines the type of interpolation used for a spline curve.

Enumerator
e_linear 

Linear interpolation between data points.

e_cspline 

Cubic splines with classical C^2 continuity.

e_cspline_hermite 

Cubic Hermite splines with local C^1 continuity.

Definition at line 8 of file SplineEnums.h.

◆ SubSelectionMode

Defines the mode of sub-selection used by the SelectionController.


Enumerator
e_single_model 

Select a single model at a time.

e_vertex_rectangle_selection 

Select vertices within a rectangular region.

e_vertex_polygon_selection 

Select vertices within a polygon region.

e_no_selection 

Selection is disabled.

e_sub_selection_size 

The number of sub-selection modes (sentinel value).

Definition at line 41 of file SelectionController.h.

◆ TALKER_ID_E

All known NMEA talker IDs, encoded as two-character identifiers packed into 16-bit integer values.

Enumerator
TID_AB 

AB Independent AIS Base Station.

TID_AD 

AD Dependent AIS Base Station.

TID_AG 

AG Autopilot - General.

TID_AP 

AP Autopilot - Magnetic.

TID_BD 

BD BeiDou(China).

TID_BN 

BN Bridge navigational watch alarm system.

TID_CC 

CC Computer - Programmed Calculator(obsolete).

TID_CD 

CD Communications - Digital Selective Calling(DSC).

TID_CM 

CM Computer - Memory Data(obsolete).

TID_CS 

CS Communications - Satellite.

TID_CT 

CT Communications - Radio - Telephone(MF / HF).

TID_CV 

CV Communications - Radio - Telephone(VHF).

TID_CX 

CX Communications - Scanning Receiver.

TID_DE 

DE DECCA Navigation(obsolete).

TID_DF 

DF Direction Finder.

TID_DU 

DU Duplex repeater station.

TID_EC 

EC Electronic Chart Display & Information System(ECDIS).

TID_EP 

EP Emergency Position Indicating Beacon(EPIRB).

TID_ER 

ER Engine Room Monitoring Systems.

TID_GA 

GA Galileo Positioning System.

TID_GB 

GB BeiDou(China).

TID_GL 

GL GLONASS, according to IEIC 61162 - 1.

TID_GN 

GN Mixed GPS and GLONASS data, according to IEIC 61162-1.

TID_GP 

GP Global Positioning System(GPS).

TID_HC 

HC Heading - Magnetic Compass.

TID_HE 

HE Heading - North Seeking Gyro.

TID_HN 

HN Heading - Non North Seeking Gyro.

TID_II 

II Integrated Instrumentation.

TID_IN 

IN Integrated Navigation.

TID_LA 

LA Loran A(obsolete).

TID_LC 

LC Loran C(obsolete).

TID_MP 

MP Microwave Positioning System(obsolete).

TID_NL 

NL Navigation light controller.

TID_OM 

OM OMEGA Navigation System(obsolete).

TID_OS 

OS Distress Alarm System(obsolete).

TID_QZ 

QZ QZSS regional GPS augmentation system(Japan).

TID_RA 

RA RADAR and/or ARPA.

TID_SD 

SD Sounder, Depth.

TID_SN 

SN Electronic Positioning System, other / general.

TID_SS 

SS Sounder, Scanning.

TID_TI 

TI Turn Rate Indicator.

TID_TR 

TR TRANSIT Navigation System.

TID_U0 

U# # is a digit 0 - 9; User Configured.

TID_U1 

U# # is a digit 0 - 9; User Configured.

TID_U2 

U# # is a digit 0 - 9; User Configured.

TID_U3 

U# # is a digit 0 - 9; User Configured.

TID_U4 

U# # is a digit 0 - 9; User Configured.

TID_U5 

U# # is a digit 0 - 9; User Configured.

TID_U6 

U# # is a digit 0 - 9; User Configured.

TID_U7 

U# # is a digit 0 - 9; User Configured.

TID_U8 

U# # is a digit 0 - 9; User Configured.

TID_U9 

U# # is a digit 0 - 9; User Configured.

TID_UP 

UP Microprocessor controller.

TID_VD 

VD Velocity Sensor, Doppler, other / general.

TID_DM 

DM Velocity Sensor, Speed Log, Water, Magnetic.

TID_VW 

VW Velocity Sensor, Speed Log, Water, Mechanical.

TID_WI 

WI Weather Instruments.

TID_YC 

YC Transducer - Temperature(obsolete).

TID_YD 

YD Transducer - Displacement, Angular or Linear(obsolete).

TID_YF 

YF Transducer - Frequency(obsolete).

TID_YL 

YL Transducer - Level(obsolete).

TID_YP 

YP Transducer - Pressure(obsolete).

TID_YR 

YR Transducer - Flow Rate(obsolete).

TID_YT 

YT Transducer - Tachometer(obsolete).

TID_YV 

YV Transducer - Volume(obsolete).

TID_YX 

YX Transducer.

TID_ZA 

ZA Timekeeper - Atomic Clock.

TID_ZC 

ZC Timekeeper - Chronometer.

TID_ZQ 

ZQ Timekeeper - Quartz.

TID_ZV 

ZV Timekeeper - Radio Update, WWV or WWVH.

Definition at line 72 of file NMEAParserData.h.

◆ TextAlignment

enum class TextAlignment
strong

How to align text into a given container.


Enumerator
e_left 

Align text to the left.

e_right 

Align text to the right.

e_top 

Align text to the top.

e_bottom 

Align text to the bottom.

e_bottom_base 

Align text to the baseline at the bottom.

e_h_center 

Center text horizontally.

e_v_center 

Center text vertically.

e_v_baseline_center 

Center text vertically using baseline alignment.

e_center 

Center text both horizontally and vertically.

Definition at line 317 of file Font.h.

◆ TooltipType

enum class TooltipType
strong

Enums for program-generated tooltips.


Definition at line 44 of file TooltipTextManager.h.

◆ TransitIncidentEntityType

enum class TransitIncidentEntityType
strong

Classifies the type of entity involved in a transit incident.

Enumerator
e_vehicle 

A vehicle entity.

e_person 

A person entity.

e_property 

A property entity.

e_none 

No entity type assigned.

Definition at line 7 of file TransitIncidentEntity.h.

◆ TransitIncidentPersonType

Classifies the role of a person involved in a transit incident.

Enumerator
e_undefined 

Role not yet defined.

e_driver 

The driver of a vehicle.

e_employee 

A transit employee.

e_witness 

A witness to the incident.

e_officer 

A responding officer.

e_owner 

The owner of a vehicle or property.

e_passenger 

A passenger in a vehicle.

e_pedestrian 

A pedestrian involved in the incident.

Definition at line 15 of file TransitIncidentEntity.h.

◆ TriangleLocation

Values that represent triangle locations.


Enum: TriangleLocation

Definition at line 46 of file Triangle.hpp.

◆ UnitCategory

enum class UnitCategory
strong

A category of unit describing what it relates to.


Any category can have some number of units defined which could be used to display or describe the data.

Enumerator
e_undefined_unit 

No specific unit category assigned.

e_angle 

Angular measurement (e.g., degrees, radians).

e_orientation 

Orientation measurement (e.g., azimuth, bearing).

e_distance 

Linear distance measurement (e.g., meters, feet).

e_coordinate 

Coordinate system values (e.g., Cartesian positions).

e_surface_area 

Surface area measurement (e.g., square meters, acres).

e_volume 

Volume measurement (e.g., cubic meters, liters).

e_weight 

Weight or mass measurement (e.g., kilograms, pounds).

e_speed 

Speed measurement (e.g., meters per second, mph).

e_acceleration 

Acceleration measurement (e.g., meters per second squared).

e_rotational_speed 

Rotational speed measurement (e.g., RPM, radians per second).

e_time 

Time measurement (e.g., seconds, hours).

e_force 

Force measurement (e.g., newtons, pound-force).

e_ratio 

Dimensionless ratio (e.g., percentage, fraction).

e_lat_lon 

Latitude and longitude geographic coordinates.

Definition at line 14 of file Unit.h.

◆ URDFJointType

enum class URDFJointType
strong

Enumerates the types of joints supported in URDF robot descriptions.


Enumerator
e_unknown 

Unknown or unspecified joint type.

e_rotation_axis 

Rotation about an axis (revolute joint).

e_continuous 

Continuous rotation joint (no limits).

e_prismatic 

Translation along an axis (prismatic joint).

e_floating 

Free-floating joint with six degrees of freedom.

e_planer 

Planar joint constrained to a plane normal axis.

e_fixed 

Fixed joint with no degrees of freedom.

Definition at line 16 of file URDFFactory.h.

◆ UVType

enum class UVType
strong

Channels that describe how an object should interact with light.


Enumerator
e_KD 

Diffuse texture/color channel.

e_KS 

Specular texture/color channel.

e_KA 

Ambient texture/color channel.

e_reflect 

Reflection map channel.

e_emmisive 

Emissive (self-illumination) map channel.

e_normal 

Normal map channel for per-pixel lighting.

e_displace 

Displacement map channel for surface deformation.

e_uv_size 

The number of UV types. Used for sizing arrays.

Definition at line 158 of file DesignObjectBase.h.

◆ VehicleType

Enumeration of standard vehicle body type classifications.


Enumerator
e_mini_compact_sedan 

Mini compact sedan.

e_sub_compact_sedan 

Sub-compact sedan.

e_compact_sedan 

Compact sedan.

e_mid_sized_sedan 

Mid-sized sedan.

e_large_sedan 

Large sedan.

e_hatchback 

Hatchback.

e_coupe 

Coupe.

e_sport_car 

Sport car.

e_sport_convertible 

Sport convertible.

e_light_duty_truck 

Light duty truck.

e_medium_duty_truck 

Medium duty truck.

e_heavy_duty_truck 

Heavy duty truck.

e_station_wagon 

Station wagon.

e_suv_small 

Small SUV.

e_suv_large 

Large SUV.

e_cargo_van_small 

Small cargo van.

e_cargo_van_large 

Large cargo van.

e_passenger_van_small 

Small passenger van.

e_passenger_van_large 

Large passenger van.

Definition at line 10 of file VehicleModel.h.

◆ VertexFlags

enum class VertexFlags : uint01
strong

Bit flags that can be set on individual vertices to control selection, visibility, and behavior.


Stored in the BitFlag vertex column.

Enumerator
e_is_selected 

Vertex is currently selected.

e_is_hidden 

Vertex is hidden from display.

e_is_locked 

Vertex is locked and cannot be edited.

e_is_filtered 

Vertex is excluded by a filter.

e_is_closure_location 

Vertex marks a closure point (e.g., closing a polygon loop).

e_is_smooth 

Vertex should use smooth shading.

Definition at line 80 of file DesignObjectBase.h.

◆ VertexProperty

enum class VertexProperty : uint01
strong

Per-vertex data channels that can be stored in the vertex table to be used by Geometry.


Enumerator
Position 

XYZ position of the vertex.

Normal 

Surface normal vector at the vertex.

Tangent 

Tangent vector for normal mapping.

BiTangent 

Bitangent vector for normal mapping.

Color 

Per-vertex RGBA color.

Texture 

Texture UV coordinates.

BitFlag 

Per-vertex bit flags (selected, hidden, etc.).

Bones 

Bone indices and weights for skeletal animation.

PreSmoothedPosition 

Original vertex position before smoothing was applied.

Region 

Region identifier for vertex grouping.

Vertex_Property_Size 

The number of vertex property types. Used for sizing arrays.

Invalid 

Sentinel value indicating no valid vertex property.

Definition at line 60 of file DesignObjectBase.h.

◆ ViewportLayoutTheme

enum class ViewportLayoutTheme
strong

The potential layouts of multiple viewports within the NDEVR engine.


Enumerator
e_undefined 

No layout defined.

e_1_panel 

Single viewport panel filling the entire area.

e_1l1r_panel 

Two panels side-by-side: one left, one right.

e_2l1r_panel 

Three panels: two stacked on the left, one on the right.

e_1l2r_panel 

Three panels: one on the left, two stacked on the right.

e_2l2r_panel 

Four panels in a 2x2 grid: two left, two right.

Definition at line 76 of file ViewLocation.h.

◆ WindingMode

enum class WindingMode
strong

Describes the vertex winding order used to determine front-facing direction of polygons.


Enumerator
e_no_winding 

No winding order is defined.

e_clockwise_winding 

Vertices wind clockwise when viewed from the front.

e_counterclockwise_winding 

Vertices wind counterclockwise when viewed from the front.

e_indeterminate_winding 

Winding order is mixed or unknown.

Definition at line 119 of file DesignObjectBase.h.

Function Documentation

◆ _BE()

template<class T>
T _BE ( T v)
constexprnoexcept

Converts a value from big-endian to native byte order.

Parameters
[in]vThe big-endian value to convert.
Returns
The value in native byte order.

Definition at line 113 of file BinaryFile.h.

References ByteSwap().

◆ _LE()

template<class T>
T _LE ( T v)
constexprnoexcept

Converts a value from little-endian to native byte order.

Parameters
[in]vThe little-endian value to convert.
Returns
The value in native byte order.

Definition at line 99 of file BinaryFile.h.

References ByteSwap().

◆ abs() [1/9]

template<class t_angle_type>
Angle< t_angle_type > abs ( const Angle< t_angle_type > & value)
constexpr

◆ abs() [2/9]

template<class t_type>
std::enable_if< IsVec< t_type >::value, t_type >::type abs ( const t_type & value)
constexpr

Returns the absolute value of the value.


Parameters
[in]valueThe potentially signed value to make positive

Definition at line 1099 of file VectorFunctions.hpp.

References abs().

◆ abs() [3/9]

template<class t_type>
std::enable_if<!IsVec< t_type >::value, t_type >::type abs ( const t_type & value)
constexpr

Returns the absolute value of the value.


Parameters
[in]valueThe potentially signed value to make positive

Definition at line 1088 of file VectorFunctions.hpp.

◆ abs() [4/9]

TimeSpan abs ( const TimeSpan & value)
constexpr

Returns the absolute value of the timespan.


Has no effect on the start time, if present.

Parameters
[in]valueThe potentially signed value to make positive

Definition at line 506 of file TimeSpan.h.

◆ abs() [5/9]

template<>
uint01 abs ( const uint01 & value)
constexpr

Returns the absolute value of the value.


Parameters
[in]valueThe potentially signed value to make positive

Definition at line 1118 of file VectorFunctions.hpp.

◆ abs() [6/9]

template<>
uint02 abs ( const uint02 & value)
constexpr

Returns the absolute value of the value.


Parameters
[in]valueThe potentially signed value to make positive

Definition at line 1128 of file VectorFunctions.hpp.

◆ abs() [7/9]

template<>
uint04 abs ( const uint04 & value)
constexpr

Returns the absolute value of the value.


Parameters
[in]valueThe potentially signed value to make positive

Definition at line 1138 of file VectorFunctions.hpp.

◆ abs() [8/9]

template<>
uint08 abs ( const uint08 & value)
constexpr

Returns the absolute value of the value.


Parameters
[in]valueThe potentially signed value to make positive

Definition at line 1149 of file VectorFunctions.hpp.

◆ abs() [9/9]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > abs ( const Vector< t_dims, t_type > & vector)
constexpr

Returns the absolute value of the vector, perfoming abs() on each dimension.


Parameters
[in]valueThe potentially signed value to make positive

Definition at line 1160 of file VectorFunctions.hpp.

References abs().

◆ ApxMedian()

template<class t_buffer_type>
uint04 ApxMedian ( const t_buffer_type & elements,
const Buffer< uint04 > & indices,
uint04 start,
uint04 end,
uint01 dimension )

Returns the aproximate median, or value that is close to the median, significantly faster than it would take to calculate the true median.


Definition at line 307 of file Median.hpp.

References StaticHeapMedian().

Referenced by ApxNthElement().

◆ ApxNthElement()

template<class t_type, class t_node_type>
uint04 ApxNthElement ( const Buffer< t_node_type > & points,
Buffer< uint04 > & indices,
uint04 start,
uint04 end,
uint01 dimension )

Returns the aproximate Nth element, or value that is close to the Nth Element, significantly faster than it would take to calculate the true Nth element of the sorted series.


Definition at line 372 of file Median.hpp.

References ApxMedian(), and SortAboutValue().

◆ AreParallel()

template<uint01 t_dims, class t_type>
bool AreParallel ( const Vector< t_dims, t_type > & v1,
const Vector< t_dims, t_type > & v2 )

Determine if we are parallel.

Author: Tyler Parke

Date: 2017-11-13

Parameters: v1 - The first Vector<t_dims,t_type> v2 - The second Vector<t_dims,t_type>

Returns
True if parallel, false if not.

Definition at line 1054 of file VectorFunctions.hpp.

◆ asqrt()

template<class t_type>
Angle< t_type > asqrt ( const Angle< t_type > & value)

Computes the square root of the internal representation of an angle.

Parameters
[in]valueThe angle whose internal value will be square-rooted.
Returns
A new Angle whose internal value is the square root of the input's internal value.

Definition at line 378 of file Angle.h.

References sqrt().

◆ assign() [1/7]

template<class t_type_a>
void assign ( t_type_a & a,
const char * b )

Assigns a C-string to a variable by converting to the target type.

Parameters
[in]aThe destination variable to assign to.
[in]bThe source C-string to convert and assign from.

Definition at line 86 of file VariableReference.h.

References assign().

◆ assign() [2/7]

template<class t_type_a>
void assign ( t_type_a & a,
const t_type_a & b )

Assigns a value to a variable of the same type without casting.

Parameters
[in]aThe destination variable to assign to.
[in]bThe source value to assign from.

Definition at line 56 of file VariableReference.h.

◆ assign() [3/7]

template<class t_type_a, class t_type_b>
void assign ( t_type_a & a,
const t_type_b & b )

Assigns a value of one type to a variable of another type using a cast.

Parameters
[in]aThe destination variable to assign to.
[in]bThe source value to cast and assign from.

Definition at line 46 of file VariableReference.h.

References cast().

Referenced by assign(), and VariableReference::getSingle().

◆ assign() [4/7]

template<class t_type_a, uint01 t_dim_b, class t_type_b>
void assign ( t_type_a & a,
const Vector< t_dim_b, t_type_b > & b )

Assigns the first element of a Vector to a scalar variable.

Parameters
[in]aThe destination scalar variable.
[in]bThe source Vector whose first element is assigned.

Definition at line 76 of file VariableReference.h.

◆ assign() [5/7]

template<class t_type_a, uint01 t_dim_b, class t_type_b>
void assign ( t_type_a & a,
const Vector< t_dim_b, t_type_b > & b,
uint01 dim )

Assigns a specific dimension of a Vector to a scalar variable.

Parameters
[in]aThe destination scalar variable.
[in]bThe source Vector.
[in]dimThe dimension index to extract.

Definition at line 110 of file VariableReference.h.

◆ assign() [6/7]

template<uint01 t_dim_a, class t_type_a, uint01 t_dim_b, class t_type_b>
void assign ( Vector< t_dim_a, t_type_a > & a,
const Vector< t_dim_b, t_type_b > & b )

Assigns a Vector of one dimensionality and type to a Vector of another dimensionality and type.

Parameters
[in]aThe destination Vector to assign to.
[in]bThe source Vector to convert and assign from.

Definition at line 66 of file VariableReference.h.

◆ assign() [7/7]

template<uint01 t_dim_a, class t_type_a, uint01 t_dim_b, class t_type_b>
void assign ( Vector< t_dim_a, t_type_a > & a,
const Vector< t_dim_b, t_type_b > & b,
uint01 dim )

Assigns a single dimension of one Vector to the same dimension of another Vector.

Parameters
[in]aThe destination Vector.
[in]bThe source Vector.
[in]dimThe dimension index to copy.

Definition at line 98 of file VariableReference.h.

◆ AssimpLicense() [1/2]

String AssimpLicense ( )
static

The license for using the open-source Assimp library.


Definition at line 9 of file AssimpLicense.h.

◆ AssimpLicense() [2/2]

String AssimpLicense ( )
static

Returns the VLC/LGPL license text as a String.

Returns
the full LGPL 2.1 license text used by libVLC.

Definition at line 6 of file VLCLicense.h.

◆ Average() [1/2]

template<class t_type>
constexpr Angle< t_type > Average ( const Angle< t_type > & angle_a,
const Angle< t_type > & angle_b )
staticconstexpr

Calculates the average of two normalized angles.

For example 359.1 and 720.1 would average to be 0.0 and 0.0 and 180.0 would average to be 90.0

Parameters
[in]angle_athe first angle.
[in]angle_bthe second angle
Returns
The averaged normalized angle

Definition at line 246 of file AngleFunctions.h.

References difference().

Referenced by Average().

◆ Average() [2/2]

template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, Angle< t_type > > Average ( const Vector< t_dims, Angle< t_type > > & angle_a,
const Vector< t_dims, Angle< t_type > > & angle_b )
staticconstexpr

Calculates the average of two normalized angles.

For example 359.1 and 720.1 would average to be 0.0 and 0.0 and 180.0 would average to be 90.0

Parameters
[in]angle_athe first angle.
[in]angle_bthe second angle
Returns
The averaged normalized angle

Definition at line 261 of file AngleFunctions.h.

References Average().

◆ ByteSwap()

template<class T>
T ByteSwap ( T v)
constexprnoexcept

Reverses the byte order of an integral value.

Parameters
[in]vThe value whose bytes will be swapped.
Returns
The value with its byte order reversed.

Definition at line 75 of file BinaryFile.h.

Referenced by _BE(), _LE(), and ChangeEndian().

◆ cast() [1/6]

template<class t_to, class t_from>
t_to cast ( const Angle< t_from > & value)
constexpr

Casts an Angle from one backing type to another.

Parameters
[in]valueThe source angle to cast.
Returns
A new Angle of the target type with the same internal angle value.

Definition at line 408 of file Angle.h.

References cast(), and INTERNAL_ANGLE.

Referenced by Angle< t_type >::Angle(), Buffer< t_type, t_memory_manager >< File, 64 >::Buffer(), Buffer< t_type, t_memory_manager >< File, 64 >::Buffer(), HSBColor::HSBColor(), HSBColor::HSBColor(), HSBColor::HSBColor(), HSBColor::HSBColor(), HSLColor::HSLColor(), HSLColor::HSLColor(), HSLColor::HSLColor(), HSLColor::HSLColor(), HSLColor::HSLColor(), HSLColor::HSLColor(), RGBColor::RGBColor(), RGBColor::RGBColor(), Sim3::Sim3(), SparseBlockMatrix< MatrixType >::SparseBlockMatrix(), TimeSpan::TimeSpan(), TimeSpan::TimeSpan(), TimeSpan::TimeSpan(), TimeSpan::TimeSpan(), TimeSpan::TimeSpan(), Vector< 3, uint01 >::Vector(), Vector< t_dims, bool >::Vector(), ThreadedRTree< t_dims, t_type >::addAllThreaded(), ThreadedRTree< t_dims, t_type >::addAllThreaded(), IMUNoiseSimulator::addVector(), LinearSolverEigen< MatrixType >::CholeskyDecomposition::analyzePatternWithPermutation(), AngleDefinitions::AngleBetween(), Triangle< t_dims, t_type, t_vertex >::area(), Angle< t_type >::as(), BiRadialObject< t_dims, t_type, t_vertex >::as(), RadialObject< t_dims, t_type, t_vertex >::as(), Vector< 3, uint01 >::as(), Vector< t_dims, bool >::as(), assign(), GravityIntersection::calculateIntersection(), cast(), BiRadialObject< t_dims, t_type, t_vertex >::center(), Bounds< 3, fltp08 >::center(), Bounds< 3, fltp08 >::center(), Triangle< t_dims, t_type, t_vertex >::center(), Triangle< t_dims, t_type, t_vertex >::centroid(), LineSegment< 2, t_type, Vertex< 2, t_type > >::closestPos(), Geometry::column(), Geometry::column(), BufferAllocator< t_type, t_aligned_size, t_is_primitive, t_index_type, t_null_term, t_allow_reference >::compare(), BufferAllocator< t_type, t_aligned_size, t_is_primitive, t_index_type, t_null_term, t_allow_reference >::compare(), Compressor::Compress(), PositionReading::confidence(), TransformationEstimationPointToPlaneLLS< t_type >::constructTransformationMatrix(), Triangle< t_dims, t_type, t_vertex >::contains(), Triangle< t_dims, t_type, t_vertex >::contains(), IcoFile::ConvertRGBAToIcon(), ConcavePolygon< t_type, t_vertex >::convexDecomp(), cos(), RealSenseServer::CreateCloudPacket(), RealSenseServer::CreateCommandPacket(), Path::createMonotoneCubicPath(), Path::createMonotoneCubicPathAzimuth(), MatrixDefinitions< t_type >::createOrtho(), RealSenseServer::CreateProbeInfoPacket(), LUDecomposition< t_type, t_m, t_n >::det(), distance(), Bounds< 3, fltp08 >::doesIntersect(), QTImageEditor::editedSignal(), TimeSpan::elapsedHours(), TimeSpan::elapsedMilliseconds(), TimeSpan::elapsedMinutes(), TimeSpan::elapsedSeconds(), equals(), equals(), Extruder::Extrude(), Extruder::ExtrudeRealThickness(), FFTLogic< t_type >::fft(), SparseBlockMatrix< MatrixType >::fillCCS(), SparseBlockMatrix< MatrixType >::fillSparseBlockMatrixCCS(), MatrixDefinitions< t_type >::FrustumTransform(), FactoryOptions::generateValue(), TableColumn::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnColorType::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableColumnTypeBuffer< T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, T >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), TableVectorType< 1, t_type >::get(), VulkanBitflagObject::get(), HSBColor::getAF(), HSLColor::getAF(), QCustomComboBox::getAs(), HSBColor::getBF(), HSLColor::getBF(), HSBColor::getBS(), HardwareCommandQueue< t_type >::getCommandCSVInfo(), HardwareCommandQueue< t_type >::getCommandJSONInfo(), OpenGLBuffer::getFromVideoCard(), HSBColor::getHDeg(), HSLColor::getHDeg(), HSLColor::getHI(), LineSegment< 2, t_type, Vertex< 2, t_type > >::getLocationAt(), HSLColor::getSF(), GetTypeInfo(), QCustomSlider::getValue(), Geometry::hasColumn(), StringView::hash(), StringView::hashLower(), StringView::hashUpper(), MouseEvent::hasModifier(), GLESShader::Definition::id(), AngleDefinitions::Inclination(), DevActionTree::init(), SparseOptimizer::initializeOptimization(), SparseOptimizer::initializeOptimization(), TableVectorType< 1, T >::insertIndices(), intersection(), intersection(), LineSegment< 2, t_type, Vertex< 2, t_type > >::intersects(), IntersectSorted(), LineIterator< t_dims, t_type >::isHidden(), Polyline< t_dims, t_type, t_vertex >::length(), BaseMultiEdge< t_dims, E >::linearizeOplusAndConstructQuadraticForm(), Vector< 3, uint01 >::magnitude(), MakeRandom(), MakeRandom(), MakeRandom(), OpenGLBuffer::mapMemory(), TableColumnBuffer< t_type >::mapToFile(), BitFlag::merge(), LineSegment< 2, t_type, Vertex< 2, t_type > >::midpoint(), Geometry::mode(), PCLRTreeWrapper< PointT >::nearestKSearch(), NextCapacityBytes(), SparseBlockMatrix< MatrixType >::nonZeroBlocks(), SparseBlockMatrix< MatrixType >::nonZeros(), Vector< 3, uint01 >::normalized(), AngleDefinitions::NormalToOrientation(), operator%(), operator%(), operator%(), BitFlag::operator&(), BitFlag::operator&(), operator*(), operator*(), operator*(), operator*(), operator*(), operator*(), TimeSpan::operator*(), operator*=(), TimeSpan::operator*=(), TimeSpan::operator*=(), operator+(), BufferInsertIterator< t_type, t_buffer >::operator++(), operator-(), operator/(), operator/(), operator/(), TimeSpan::operator/(), TimeSpan::operator/(), operator<(), operator<=(), operator>(), operator>=(), BitFlag::operator^(), BitFlag::operator^(), operator|(), BitFlag::operator~(), MatrixDefinitions< t_type >::OrthoFrustum(), PI(), Polyline< t_dims, t_type, t_vertex >::pointAt(), Geometry::primitiveCount(), PullDepth(), quantize(), quantize(), NDEVRCorrespondenceEstimation< PointSource, PointTarget, NormalT, Scalar >::radiusKSearch(), NDEVRCorrespondenceEstimation< PointSource, PointTarget, NormalT, Scalar >::radiusNormalKSearch(), PCLRTreeWrapper< PointT >::radiusSearch(), BinaryFile::read(), BinaryFile::read(), QtVulkanSession::readShader(), QCustomSplitter::refreshSizes(), QCustomSplitter::refreshSizes(), TableVectorType< 1, T >::removeIndices(), TableVectorType< 1, T >::removeIndices(), NtpClient::replyReceived(), AngleDefinitions::Rotation(), MatrixDefinitions< t_type >::RotationMatrix(), LineSegment< 2, t_type, Vertex< 2, t_type > >::scale(), ScenePaintEngine::SceneStyle(), RealSenseServer::sendPointData(), QCustomComboBox::set(), TableColumn::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnColorType::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableColumnTypeBuffer< T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, T >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), TableVectorType< 1, t_type >::set(), VulkanBitflagObject::set(), VulkanBitflagObject::set(), OpenGLBuffer::setAttribute(), OpenGLBuffer::setAttributeRange(), Geometry::setCountValue(), TableColumn::setDefault(), TimeSpan::setElapsedHours(), TimeSpan::setElapsedMinutes(), TimeSpan::setElapsedSeconds(), RGBColor::setF(), HardwareCommandQueue< t_type >::setFromJSONInfo(), HSBColor::setHDeg(), HSLColor::setHDeg(), QCustomSlider::setMaximum(), QCustomSlider::setMinimum(), Geometry::setModeValue(), Geometry::setModeValue(), Geometry::setOffsetValue(), Geometry::setPrimitive(), Geometry::setPrimitive(), VulkanBitflagObject::setRenderProperty(), ZlibInStream::setUnderlying(), QCustomComboBox::setup(), QCustomComboBox::setup(), GridMesh< t_dims >::setupVertexTable(), Material::setUVColor(), Material::setUVColor(), Material::setUVImage(), Material::setUVIntensity(), Material::setUVLayer(), QCustomSlider::setValue(), IMUNoiseSimulator::setVector(), TableColumn::setVector(), BaseBinaryEdge< D, E, VertexXi, VertexXj >::setVertex(), BaseMultiEdge< t_dims, E >::setVertex(), BaseUnaryEdge< t_dims, E, VertexXi >::setVertex(), DepthAISmoother::setViewSize(), Triangle< t_dims, t_type, t_vertex >::sharesObject(), sign(), sin(), Dictionary< uint04, Vertex< 2, fltp08 > >::size(), GraphicsBuffer::size(), JSONNode::size(), Set< HyperGraphAction * >::size(), QCustomSplitter::sizeIfAdded(), QCustomSplitter::sizeMultiple(), BinaryFile::skip(), BlockSolver< BlockSolverTraits< t_type, 6, 3 > >::solve(), Equation< t_type >::solve(), Equation< t_type >::solve(), String::str_len(), StringView::str_len(), TableVectorType< 1, T >::swapIndices(), String::ToHex(), String::ToHex(), Converter::ToNDVMat(), Angle< t_type >::toTypeAngle(), GLESImageData::update(), MaterialRaster::updateImage(), OpenGLBuffer::updateRegion(), Material::updateUVColor(), Material::updateUVColor(), ProgressWidgetDemo::UpdateWidgetDemo(), FactoryOptions::useValue(), FactoryOptions::useValue(), LineEditResourceSetter< t_type, true >::ValueFromFloat(), LineEditResourceSetter< t_type, true >::ValueToFloat(), OpenGLBuffer::vectorSize(), GLESVertexManager::vertexSize(), MatrixDefinitions< t_type >::ViewMatrix(), MaterialRaster::Weight(), BinaryFile::write(), and BinaryFile::write().

◆ cast() [2/6]

template<>
uint04 cast ( fltp04 value)
constexpr

Casts the given value.

Is equivalent to static_cast except allows for the option of special cases by specializing the template

static_cast is used for cases where you want to reverse an implicit conversion, with a few restrictions and additions.

In debug mode, cast performs runtime check to ensure value is positve prior to casting

This should be used if you know that you refer to an object of a specific type, and thus a check would be unnecessary.

Parameters
[in]value- The value to cast.
Returns
The value cast to the usigned.

Definition at line 348 of file BaseValues.hpp.

◆ cast() [3/6]

template<>
uint04 cast ( fltp08 value)
constexpr

Casts the given value.

Is equivalent to static_cast except allows for the option of special cases by specializing the template

static_cast is used for cases where you want to reverse an implicit conversion, with a few restrictions and additions.

In debug mode, cast performs runtime check to ensure value is positve prior to casting

This should be used if you know that you refer to an object of a specific type, and thus a check would be unnecessary.

Parameters
[in]value- The value to cast.
Returns
The value cast to the usigned.

Definition at line 369 of file BaseValues.hpp.

◆ cast() [4/6]

template<>
uint04 cast ( sint04 value)
constexpr

Casts the given value.

Is equivalent to static_cast except allows for the option of special cases by specializing the template

static_cast is used for cases where you want to reverse an implicit conversion, with a few restrictions and additions.

In debug mode, cast performs runtime check to ensure value is positve prior to casting

This should be used if you know that you refer to an object of a specific type, and thus a check would be unnecessary.

Parameters
[in]value- The value to cast.
Returns
The value cast to the usigned.

Definition at line 390 of file BaseValues.hpp.

◆ cast() [5/6]

template<>
uint04 cast ( sint08 value)
constexpr

Casts the given value.

Is equivalent to static_cast except allows for the option of special cases by specializing the template

static_cast is used for cases where you want to reverse an implicit conversion, with a few restrictions and additions.

In debug mode, cast performs runtime check to ensure value is positve prior to casting

This should be used if you know that you refer to an object of a specific type, and thus a check would be unnecessary.

Parameters
[in]value- The value to cast.
Returns
The value cast to the usigned.

Definition at line 411 of file BaseValues.hpp.

◆ cast() [6/6]

template<class t_to, class t_from>
t_to cast ( t_from value)
constexpr

Casts the given value.

Is equivalent to static_cast except allows for the option of special cases by specializing the template

static_cast is used for cases where you want to reverse an implicit conversion, with a few restrictions and additions.

cast performs no runtime checks.

This should be used if you know that you refer to an object of a specific type, and thus a check would be unnecessary.

Parameters
[in]value- The value to cast.
Returns
The value cast to the specified type.

Definition at line 327 of file BaseValues.hpp.

◆ ChangeEndian()

template<class t_type>
t_type ChangeEndian ( t_type in)
constexpr

Converts an object from big endian to little endian. Does not consider structue

of object so will need to be called for each sub-part of a non-primitive type

Definition at line 125 of file BinaryFile.h.

References ByteSwap().

◆ CheckXrResult()

XrResult CheckXrResult ( XrResult res,
const char * originator = nullptr,
const char * sourceLocation = nullptr )
inline

Check an XrResult and throw if it indicates failure.

Parameters
[in]resThe XrResult to check.
[in]originatorOptional string identifying the call.
[in]sourceLocationOptional file and line string.
Returns
The original XrResult if it was successful.

Definition at line 84 of file XRErrorHandling.h.

References ThrowXrResult().

◆ cipow()

uint04 cipow ( uint04 num,
uint04 pow )
constexpr

Compile-time integer power function.

Parameters
[in]numThe base number.
[in]powThe exponent.
Returns
num raised to the power of pow.

Definition at line 732 of file BlockModelRaster.h.

References cipow().

Referenced by cipow().

◆ classify()

template<class t_other_type, uint01 t_dims, class t_type>
IntersectionTypes classify ( const t_other_type & other,
const SelectionArea< t_dims, t_type > & area )

Classifies.

Author: Tyler Parke

Date: 2018-03-26

Parameters: other - The vector. area - The radians.

Returns
The IntersectionTypes.

Definition at line 540 of file SelectionArea.hpp.

References intersection().

◆ clip()

template<typename t_type>
t_type clip ( const t_type & value,
const t_type & lower_bound,
const t_type & upper_bound )
constexpr

Clips the value given so that that the returned value falls between upper and lower bound.

For example, clip(-1, 0, 10) would return 0, clip(.5, 0, 10) would return .5, and clip(11.5, 0, 10) would return 10.

Author: Tyler Parke

Date: 2017-11-05

Parameters
[in]valueThe value. If this falls between the upper and lower bound it is returned.
[in]lower_boundThe lower bound. It is assumed that this will always be a value less than or equal to the upper bound.
[in]upper_boundThe upper bound. It is assumed that this will always be a value greater than or equal to the lower bound.
Returns
the value if it falls between the upper or lower bound, otherwise if less than lower bound. returns lower bound and if greater than upper bound returns upper bound.

Definition at line 238 of file BaseFunctions.hpp.

References getMax(), getMin(), and IsInvalid().

Referenced by RGBColor::RGBColor(), XYZColor::XYZColor(), IMUNoiseSimulator::addAccelerometerNoise(), IMUNoiseSimulator::addGyroNoise(), IMUNoiseSimulator::addMagnetometerNoise(), AngleDefinitions::AngleBetween(), Triangle< t_dims, t_type, t_vertex >::center(), LineSegment< 2, t_type, Vertex< 2, t_type > >::closestPos(), LineSegment< 2, t_type, Vertex< 2, t_type > >::midpoint(), PullAsYUV(), TransformBoundsAndClipNearPlane(), and RealSenseMotor::update().

◆ ClosestPoint()

template<uint01 t_dims, class t_type, class t_vertex>
Vector< t_dims, t_type > ClosestPoint ( const Triangle< t_dims, t_type, t_vertex > & tri,
const t_vertex & point )
constexpr

Closest point.

Author: Tyler Parke

Date: 2017-11-17

Parameters: tri - The triangle. point - The point.

Returns
A Vector<t_dims,t_type>

Definition at line 861 of file Triangle.hpp.

References dot(), and Triangle< t_dims, t_type, t_vertex >::edge().

◆ Convert() [1/3]

cv::Mat Convert ( const Matrix< fltp04 > & transform)
inlinestatic

Converts an NDEVR Matrix to an OpenCV 4x4 matrix.

Parameters
[in]transformThe NDEVR matrix to convert.
Returns
The equivalent OpenCV matrix, or empty Mat if the input is invalid.

Definition at line 36 of file OpenCVHelperFunctions.h.

References IsInvalid(), and transform.

◆ Convert() [2/3]

Matrix< fltp04 > Convert ( cv::Mat mat)
inlinestatic

Converts an OpenCV 4x4 matrix to an NDEVR Matrix.

Parameters
[in]matThe OpenCV matrix to convert.
Returns
The equivalent NDEVR matrix, or Invalid if the input is empty.

Definition at line 13 of file OpenCVHelperFunctions.h.

References transform.

◆ Convert() [3/3]

Matrix< fltp04 > Convert ( Eigen::Matrix4f mat)
inlinestatic

Converts an Eigen 4x4 float matrix to an NDEVR Matrix.

Parameters
[in]matThe Eigen matrix to convert.
Returns
The NDEVR Matrix.

Definition at line 205 of file System.h.

References transform.

◆ ConvertFromCADUnit()

◆ ConvertImgToColor()

cv::Mat ConvertImgToColor ( rs2::video_frame a_frame)
static

Converts a RealSense video frame to an OpenCV RGB color matrix.

Parameters
[in]a_frameThe RealSense video frame to convert.
Returns
The converted OpenCV color matrix.

Definition at line 55 of file OpenCVHelperFunctions.h.

◆ ConvertImgToGray()

cv::Mat ConvertImgToGray ( rs2::video_frame a_frame)
static

Converts a RealSense video frame to an OpenCV grayscale matrix.

Parameters
[in]a_frameThe RealSense video frame to convert.
Returns
The converted OpenCV grayscale matrix.

Definition at line 98 of file OpenCVHelperFunctions.h.

◆ cos() [1/3]

template<class t_type>
std::enable_if< ObjectInfo< t_type >::Float, fltp08 >::type cos ( const Angle< t_type > & angle)

Performs cosine operation on the given angle.

Parameters
[in]angleThe angle to perform cosine on.
Returns
The cosine of the given angle

Definition at line 135 of file AngleFunctions.h.

◆ cos() [2/3]

template<class t_type>
std::enable_if<!ObjectInfo< t_type >::Float, fltp08 >::type cos ( const Angle< t_type > & angle)

Performs optimized cosine operation on the given angle using pre-computed lookup table for optimal speed.

Parameters
[in]angleThe angle to perform cosin on.
Returns
The cosine of the given angle

Definition at line 124 of file AngleFunctions.h.

References cast(), Angle< t_type >::INDEX_PI, and sin().

Referenced by Sim3::Sim3(), average_angle(), SE3Quat::exp(), SE3mat::ExpSO3(), Extruder::ExtrudeRealThickness(), Sim3::log(), AngleDefinitions::NormalToOrientation(), Equation< t_type >::solve(), and tan().

◆ cos() [3/3]

template<class t_type>
t_type cos ( const t_type & angle)

Performs cosine operation on the given angle assumed to be in radians.

Parameters
[in]angleThe number, in radians, to perform cosine on.
Returns
The cosine of the given angle

Definition at line 145 of file AngleFunctions.h.

◆ cross()

template<class t_type>
Vector< 1, t_type > cross ( const Vector< 1, t_type > & ,
const Vector< 1, t_type > &  )
constexpr

Returns the cross product of 2 numbers. Note cross product is defined only for certain dimensions

Author: Tyler Parke

Date: 2017-05-17

Parameters: v1 - The first Vector<t_dims,t_type> v2 - The second Vector<t_dims,t_type>

Returns
A Vector<t_dims,t_type&gt of v1 X v2;

Definition at line 899 of file VectorFunctions.hpp.

Referenced by Triangle< t_dims, t_type, t_vertex >::area(), GravityIntersection::calculateIntersection(), Extruder::Extrude(), intersection(), intersection(), LineSegment< 2, t_type, Vertex< 2, t_type > >::isCollinear(), Triangle< t_dims, t_type, t_vertex >::normal(), MatrixDefinitions< t_type >::RotationMatrix(), and MatrixDefinitions< t_type >::ViewMatrix().

◆ deltaR()

Vector3< g_type > deltaR ( const Matrix3< g_type > & R)
inline

Extracts the rotation vector from a rotation matrix using the Rodrigues formula.

Parameters
[in]RThe 3x3 rotation matrix.
Returns
The rotation vector (axis * angle).

Definition at line 41 of file se3_ops.hpp.

Referenced by SE3Quat::log(), and Sim3::log().

◆ determinate() [1/2]

template<uint01 t_dims, class t_type>
t_type determinate ( const Vector< t_dims, t_type > & v1,
const Vector< t_dims, t_type > & v2 )

Determinates.

Author: Tyler Parke

Date: 2017-11-13

Parameters: v1 - The first Vector<t_dims,t_type> v2 - The second Vector<t_dims,t_type>

Returns
A t_type.

Definition at line 988 of file VectorFunctions.hpp.

Referenced by determinate().

◆ determinate() [2/2]

template<uint01 t_dims, class t_type>
t_type determinate ( const Vector< t_dims, t_type > & v1,
const Vector< t_dims, t_type > & v2,
const Vector< t_dims, t_type > & v3 )

Determinates.

Author: Tyler Parke

Date: 2017-11-13

Parameters: v1 - The first Vector<t_dims,t_type> v2 - The second Vector<t_dims,t_type> v3 - The third Vector<t_dims,t_type>

Returns
A t_type.

Definition at line 1009 of file VectorFunctions.hpp.

References determinate().

◆ DetermineAlignment()

template<size_t t_size>
constexpr size_t DetermineAlignment ( )
staticconstexprnoexcept

Determines the optimal memory alignment for an allocation of the given byte size.

Returns
The alignment in bytes (64, 32, 16, 8, or 0 if aligned alloc is unavailable).

Definition at line 155 of file MemoryManager.h.

Referenced by AlignmentDeterminator< t_type >::Size().

◆ difference() [1/2]

template<class t_type>
constexpr Angle< t_type > difference ( const Angle< t_type > & angle_a,
const Angle< t_type > & angle_b )
staticconstexpr

Calculates minimal absolute signed angle between two angles.

Parameters
[in]angle_aThe first angle.
[in]angle_bThe second angle
Returns
The absolute minimal angle (-180 to 180 degrees) between the two angles

Definition at line 212 of file AngleFunctions.h.

References DEGREES.

Referenced by Average(), difference(), GridMesh< t_dims >::interpolateVertex(), operator-(), operator-(), and operator-().

◆ difference() [2/2]

template<uint01 t_dims, class t_type>
constexpr Vector< t_dims, Angle< t_type > > difference ( const Vector< t_dims, Angle< t_type > > & angle_a,
const Vector< t_dims, Angle< t_type > > & angle_b )
staticconstexpr

Calculates the minimal absolute signed angle between two angles.

Parameters
[in]angle_aA vector of the first angle.
[in]angle_bA vector of the second angle
Returns
The A vector that for each axis returns the absolute minimal angle (-180 to 180 degrees) between the two input angles

Definition at line 228 of file AngleFunctions.h.

References difference().

◆ distance() [1/2]

template<class t_distance_type, uint01 t_dims, class t_type>
t_distance_type distance ( const Vector< t_dims, t_type > & v1,
const Vector< t_dims, t_type > & v2 )

Distances.

Author: Tyler Parke

Date: 2017-11-13

Typeparams: t_distance_type - Type of the distance type. t_dims - Type of the dims. t_type - Type of the type. Parameters: v1 - The first Vector<t_dims,t_type> v2 - The second Vector<t_dims,t_type>

Returns
A t_distance_type.

Definition at line 1274 of file VectorFunctions.hpp.

References cast(), and sqrt().

◆ distance() [2/2]

template<uint01 t_dims, class t_type>
t_type distance ( const Vector< t_dims, t_type > & v1,
const Vector< t_dims, t_type > & v2 )

Distances.

Author: Tyler Parke

Date: 2017-11-13

Parameters: v1 - The first Vector<t_dims,t_type> v2 - The second Vector<t_dims,t_type>

Returns
A t_type.

Definition at line 1250 of file VectorFunctions.hpp.

References sqrt().

◆ distanceSquared() [1/4]

template<uint01 t_dims, class t_type, class t_vertex>
t_type distanceSquared ( const LineSegment< t_dims, t_type, t_vertex > & line,
const t_vertex & vertex )

Distance squared.

Author: Tyler Parke

Date: 2017-11-19

Parameters: line - The line. vertex - The vertex.

Returns
A t_type.

Definition at line 745 of file Line.hpp.

References distanceSquaredOptimized(), dot(), and LineSegment< t_dims, t_type, t_vertex >::ray().

◆ distanceSquared() [2/4]

template<uint01 t_dims, class t_type, class t_vertex>
t_type distanceSquared ( const t_vertex & vertex,
const LineSegment< t_dims, t_type, t_vertex > & line )
constexpr

Distance squared.

Author: Tyler Parke

Date: 2017-11-19

Parameters: vertex - The vertex. line - The line.

Returns
A t_type.

Definition at line 768 of file Line.hpp.

◆ distanceSquared() [3/4]

template<uint01 t_dims, class t_type, class t_vertex>
t_type distanceSquared ( const Triangle< t_dims, t_type, t_vertex > & tri,
const t_vertex & vertex )
constexpr
Returns
The squared distance between the triangle and the vertex.

Definition at line 130 of file Distance.hpp.

◆ distanceSquared() [4/4]

template<uint01 t_dims, class t_type>
t_type distanceSquared ( const Vector< t_dims, t_type > & v1,
const Vector< t_dims, t_type > & v2 )

Distance squared.

Author: Tyler Parke

Date: 2017-11-13

Parameters: v1 - The first Vector<t_dims,t_type> v2 - The second Vector<t_dims,t_type>

Returns
A t_type.

Definition at line 1224 of file VectorFunctions.hpp.

◆ distanceSquaredOptimized()

template<uint01 t_dims, class t_type, class t_vertex>
t_type distanceSquaredOptimized ( const LineSegment< t_dims, t_type, t_vertex > & line,
const t_vertex & vertex,
const t_vertex & ray,
const t_type & dot_ray )
constexpr

Distance squared optimized.

Author: Tyler Parke

Date: 2017-11-19

Parameters: line - The line. vertex - The vertex. ray - The ray. dot_ray - The dot ray.

Returns
A t_type.

Definition at line 716 of file Line.hpp.

References dot(), and LineSegment< t_dims, t_type, t_vertex >::vertex().

Referenced by distanceSquared().

◆ dot()

template<uint01 t_dims, class t_type>
t_type dot ( const Vector< t_dims, t_type > & v1,
const Vector< t_dims, t_type > & v2 )

◆ E57License()

String E57License ( )
static

Returns the Boost Software License text used by the E57 library.

Returns
The license text as a String.

Definition at line 8 of file E57License.h.

◆ Equals()

template<bool t_has_winding, uint01 t_dims, class t_type, class t_vertex>
bool Equals ( const Triangle< t_dims, t_type, t_vertex > & tri_a,
const Triangle< t_dims, t_type, t_vertex > & tri_b,
t_type epsilon = 0 )
constexpr

Tests if objects are considered equal.

Author: Tyler Parke

Date: 2017-11-17

Parameters: tri_a - Constant triangle<t dims,t type,t vertex>& to be compared. tri_b - Constant triangle<t dims,t type,t vertex>& to be compared. epsilon - (Optional) T type to be compared.

Returns
True if the objects are considered equal, false if they are not.

Definition at line 981 of file Triangle.hpp.

References equals(), and Triangle< t_dims, t_type, t_vertex >::vertex().

◆ equals() [1/3]

template<uint01 t_dims, class t_type, class t_vertex>
bool equals ( const LineSegment< t_dims, t_type, t_vertex > & left,
const LineSegment< t_dims, t_type, t_vertex > & right,
const t_type & epsilon = cast<t_type>(0) )
constexpr

Tests if objects are considered equal.

Author: Tyler Parke

Date: 2017-11-19

Parameters: left - Constant line segment<t dims,t type,t vertex>& to be compared. right - Constant line segment<t dims,t type,t vertex>& to be compared. epsilon - (Optional) Constant type& to be compared.

Returns
True if the objects are considered equal, false if they are not.

Definition at line 791 of file Line.hpp.

References cast(), and equals().

Referenced by Equals(), equals(), equals(), LineSegment< 2, t_type, Vertex< 2, t_type > >::isParallel(), and Triangle< t_dims, t_type, t_vertex >::sharesObject().

◆ equals() [2/3]

template<class t_type, uint01 t_row_dims, uint01 t_col_dims>
bool equals ( const Matrix< t_type, t_row_dims, t_col_dims > & a,
const Matrix< t_type, t_row_dims, t_col_dims > & b,
t_type epsilon )

Checks whether two matrices are approximately equal within a given epsilon tolerance.

Parameters
[in]aThe first matrix.
[in]bThe second matrix.
[in]epsilonThe maximum allowed difference per element.
Returns
True if all elements of both matrices differ by no more than epsilon, false otherwise.

Definition at line 493 of file MatrixFunctions.h.

References equals().

◆ equals() [3/3]

template<uint01 t_dims, class t_type>
bool equals ( const Vector< t_dims, t_type > & left,
const Vector< t_dims, t_type > & right,
const t_type & epsilon = cast<t_type>(0) )
constexpr

Tests if objects are considered equal.

Author: Tyler Parke

Date: 2017-11-13

Parameters: left - Constant vector<t dims,t type>& to be compared. right - Constant vector<t dims,t type>& to be compared. epsilon - (Optional) Constant type& to be compared.

Returns
True if the objects are considered equal, false if they are not.

Definition at line 1077 of file VectorFunctions.hpp.

References abs(), and cast().

◆ Except()

template<class t_type, class t_memory_manager>
Buffer< t_type, t_memory_manager > Except ( const Buffer< t_type, t_memory_manager > & a,
const Buffer< t_type, t_memory_manager > & b )

Returns elements in buffer a that are not in buffer b, sorting both buffers first.

Parameters
[in]aThe source buffer.
[in]bThe buffer of elements to exclude.
Returns
A buffer containing elements in a but not in b.

Definition at line 225 of file BufferFunctions.h.

References ExceptSorted().

◆ ExceptSorted()

template<class t_type, class t_memory_manager>
Buffer< t_type, t_memory_manager > ExceptSorted ( const Buffer< t_type, t_memory_manager > & a,
const Buffer< t_type, t_memory_manager > & b )

Returns the elements from sorted buffer a which are not found in sorted buffer b.

Parameters
[in]aThe first sorted buffer (source elements).
[in]bThe second sorted buffer (elements to exclude).
Returns
A buffer containing elements in a but not in b.

Definition at line 154 of file BufferFunctions.h.

Referenced by Except().

◆ ExpSO3() [1/2]

Eigen::Matrix3< g_type > ExpSO3 ( const Eigen::Vector3< g_type > & w)

Computes the SO3 exponential map from a rotation vector.

Parameters
[in]wThe 3D rotation vector.
Returns
The 3x3 rotation matrix.

◆ ExpSO3() [2/2]

Eigen::Matrix3< g_type > ExpSO3 ( const g_type x,
const g_type y,
const g_type z )

Computes the SO3 exponential map from axis components.

Parameters
[in]xRotation axis x component.
[in]yRotation axis y component.
[in]zRotation axis z component.
Returns
The 3x3 rotation matrix.

◆ getMax() [1/2]

template<typename t_type>
t_type getMax ( const t_type & left,
const t_type & right )
constexpr

Finds the max of the given arguments using the > operator The only requirement is that t_type have > operator defined.

For Vector-based structures a new object is created that, for each dimension stores the max for that dimension.

Note integers, use same as the templated getMax, however, we can optimize specially for integers using some bit twiddling tricks. This removes a branch statement entirely and is likely faster on a modern CPU

Parameters
[in]left- One of two comparators to determine the max of.
[in]right- One of two comparators to determine the max of.
Returns
The calculated maximum.

Definition at line 94 of file BaseFunctions.hpp.

Referenced by Triangle< t_dims, t_type, t_vertex >::center(), clip(), Triangle< t_dims, t_type, t_vertex >::contains(), ConcavePolygon< t_type, t_vertex >::convexDecomp(), Bounds< 3, fltp08 >::ensureValid(), SparseOptimizer::findGauge(), SparseOptimizer::gaugeFreedom(), getMax(), intersection(), intersection(), OptimizableGraph::maxDimension(), LineSegment< 2, t_type, Vertex< 2, t_type > >::midpoint(), ConcurrentOperation::ParallelSort(), RealSenseServer::ReadNetworkPacket(), QCustomSplitter::refreshSizes(), QCustomSplitter::refreshSizes(), Bounds< 3, fltp08 >::scale(), QCustomSplitter::sizeIfAdded(), OptimizationAlgorithmDogleg< t_solver >::solve(), OptimizationAlgorithmLevenberg< t_type >::solve(), RealSenseMotor::update(), JacobianWorkspace::updateSize(), Bounds< 3, fltp08 >::validate(), OpenGLBuffer::vectorSize(), and MaterialRaster::Weight().

◆ getMax() [2/2]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > getMax ( const Vector< t_dims, t_type > & v1,
const Vector< t_dims, t_type > & v2 )
constexpr

Finds the max of the given arguments.

Author: Tyler Parke

Date: 2017-11-13

Parameters: v1 - The first Vector<t_dims,t_type> v2 - The second Vector<t_dims,t_type>

Returns
The calculated maximum.

Definition at line 938 of file VectorFunctions.hpp.

References getMax().

◆ getMin() [1/2]

template<typename t_type>
t_type getMin ( const t_type & left,
const t_type & right )
constexpr

Finds the minimum of the given arguments based on the < operator Author: Tyler Parke Date: 2017-11-05.

Parameters
[in]leftA t_type to process.
[in]rightA t_type to process.

The only requirement is that t_type have > operator defined.

For Vector-based structures a new object is created that, for each dimension stores the max for that dimension.

Note integers, use same as the templated getMax, however, we can optimize specially for integers using some bit twiddling tricks. This removes a branch statement entirely and is likely faster on a modern CPU

Returns
The calculated minimum.

Definition at line 56 of file BaseFunctions.hpp.

Referenced by Vector< t_dims, bool >::as(), Triangle< t_dims, t_type, t_vertex >::center(), clip(), BufferAllocator< t_type, t_aligned_size, t_is_primitive, t_index_type, t_null_term, t_allow_reference >::compare(), BufferAllocator< t_type, t_aligned_size, t_is_primitive, t_index_type, t_null_term, t_allow_reference >::compare(), Triangle< t_dims, t_type, t_vertex >::contains(), ConcavePolygon< t_type, t_vertex >::convexDecomp(), DesignObjectResourceCache::createChildren(), Bounds< 3, fltp08 >::ensureValid(), getMin(), intersection(), intersection(), SunDial::knobRadius(), LineSegment< 2, t_type, Vertex< 2, t_type > >::midpoint(), BufferInsertIterator< t_type, t_buffer >::operator++(), BufferInsertIterator< t_type, t_buffer >::operator++(), operator>(), operator>=(), DeviCounterSimulatorIO::peek(), PCLRTreeWrapper< PointT >::radiusSearch(), DeviCounterSimulatorIO::rx(), Bounds< 3, fltp08 >::scale(), RealSenseServer::sendPointData(), TableColumn::setVector(), OptimizationAlgorithmLevenberg< t_type >::solve(), BasicThread::ThreadLoop(), CheckSumGenerator< t_hash_type >::update(), Bounds< 3, fltp08 >::validate(), DeviCounterSimulatorIO::waitForReadyRead(), and BinaryFile::writeRawData().

◆ getMin() [2/2]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > getMin ( const Vector< t_dims, t_type > & v1,
const Vector< t_dims, t_type > & v2 )
constexpr

Finds the min of the given arguments.

Author: Tyler Parke

Date: 2017-11-13

Parameters: v1 - The first Vector<t_dims,t_type> v2 - The second Vector<t_dims,t_type>

Returns
The calculated minimum.

Definition at line 963 of file VectorFunctions.hpp.

References getMin().

◆ GetTypeInfo() [1/2]

template<class t_type>
std::enable_if< ObjectInfo< t_type >::Buffer, TypeInfo >::type GetTypeInfo ( )
constexpr

Constructs a TypeInfo for a buffer type at compile time, extracting element type traits from the buffer's contained type.

Returns
A TypeInfo populated with size and trait information for the buffer's element type, with is_buffer set to true.

Definition at line 146 of file TypeInfo.h.

References TypeInfo::byte_size, cast(), TypeInfo::is_boolean, TypeInfo::is_buffer, TypeInfo::is_color, TypeInfo::is_float, TypeInfo::is_number, TypeInfo::is_string, TypeInfo::is_unsigned, TypeInfo::total_size, and TypeInfo::vector_size.

◆ GetTypeInfo() [2/2]

◆ Intersect()

template<class t_type, class t_memory_manager>
Buffer< t_type, t_memory_manager > Intersect ( const Buffer< t_type, t_memory_manager > & a,
const Buffer< t_type, t_memory_manager > & b )

Computes the intersection of two unsorted buffers by sorting them first.

Parameters
[in]aThe first buffer.
[in]bThe second buffer.
Returns
A buffer containing elements common to both input buffers.

Definition at line 191 of file BufferFunctions.h.

References IntersectSorted().

◆ intersection() [1/5]

template<uint01 t_dims, class t_type, class t_vertex>
LineSegment< t_dims, t_type > intersection ( const Bounds< t_dims, t_type, t_vertex > & bounds,
const LineSegment< t_dims, t_type, t_vertex > & line )
static

Intersections.

Author: Tyler Parke

Date: 2017-11-19

Parameters: bounds - The bounds. line - The line.

Returns
A LineSegment<t_dims,t_type>

Definition at line 87 of file Intersection.hpp.

References LineSegment< t_dims, t_type, t_vertex >::vertex().

◆ intersection() [2/5]

template<uint01 t_dims, class t_type, class t_vertex>
Bounds< t_dims, t_type, t_vertex > intersection ( const Bounds< t_dims, t_type, t_vertex > & bounds_1,
const Bounds< t_dims, t_type, t_vertex > & bounds_2 )
static

Given two bounds, returns the intersection between the two of them.

If no intersection occurs, the returned bounds will be invalid.

Author: Tyler Parke

Date: 2017-11-19

Parameters: bounds_1 - The first bounds used for intersection bounds_2 - The second bounds used for intersection

Returns
A Bounds<t_dims,t_type,t_vertex> representing the intersection of the two inputs. This value will be invalid if the bounds do not intersect.

Definition at line 64 of file Intersection.hpp.

References getMax(), and getMin().

Referenced by classify().

◆ intersection() [3/5]

template<uint01 t_dims, class t_type, class t_vertex>
t_vertex intersection ( const Triangle< t_dims, t_type, t_vertex > & tri,
const LineSegment< t_dims, t_type, t_vertex > & line,
t_type epsilon = 0 )
static

Intersections.

Author: Tyler Parke

Date: 2017-11-19

Parameters: tri - The triangle. line - The line. epsilon - (Optional) The epsilon.

Returns
A Vector<t_dims,t_type>

Definition at line 135 of file Intersection.hpp.

References abs(), cast(), cross(), dot(), Triangle< t_dims, t_type, t_vertex >::edge(), LineSegment< t_dims, t_type, t_vertex >::lengthSquared(), LineSegment< t_dims, t_type, t_vertex >::ray(), LineSegment< t_dims, t_type, t_vertex >::vertex(), and Triangle< t_dims, t_type, t_vertex >::vertex().

◆ intersection() [4/5]

template<uint01 t_dims, class t_type, class t_vertex>
LineSegment< t_dims, t_type, t_vertex > intersection ( const Triangle< t_dims, t_type, t_vertex > & tri_a,
const Plane< t_dims, t_type > & plane,
t_type epsilon = 0 )
static

Given two triangles, returns the intersection between the two of them assuming that intesection is a line.

If no intersection occurs, the returned line will be Invalid. if intersection occurs at a point that point will be returned. If the triangles are coplainer, Invalid is returned as this function is not designed to intersect coplainer triangles.

Author: Tyler Parke

Date: 2017-11-19

Parameters: tri_a - The triangle a. tri_b - The triangle b. epsilon - (Optional) The epsilon.

Returns
A LineSegment<t_dims,t_type,t_vertex>

Definition at line 273 of file Intersection.hpp.

References Triangle< t_dims, t_type, t_vertex >::vertex().

◆ intersection() [5/5]

template<uint01 t_dims, class t_type, class t_vertex>
LineSegment< t_dims, t_type, t_vertex > intersection ( const Triangle< t_dims, t_type, t_vertex > & tri_a,
const Triangle< t_dims, t_type, t_vertex > & tri_b,
t_type epsilon = 0 )
static

Given two triangles, returns the intersection between the two of them assuming that intesection is a line.

If no intersection occurs, the returned line will be Invalid. if intersection occurs at a point that point will be returned. If the triangles are coplainer, Invalid is returned as this function is not designed to intersect coplainer triangles.

Author: Tyler Parke

Date: 2017-11-19

Parameters: tri_a - The triangle a. tri_b - The triangle b. epsilon - (Optional) The epsilon.

Returns
A LineSegment<t_dims,t_type,t_vertex>

Definition at line 196 of file Intersection.hpp.

References abs(), cast(), cross(), dot(), getMax(), getMin(), and Triangle< t_dims, t_type, t_vertex >::vertex().

◆ IntersectPreserveOrderA()

template<class t_type, class t_memory_manager>
Buffer< t_type, t_memory_manager > IntersectPreserveOrderA ( const Buffer< t_type, t_memory_manager > & a,
const Buffer< t_type, t_memory_manager > & b )

Computes the intersection of two buffers while preserving the order of elements from buffer a.

Parameters
[in]aThe first buffer whose element order is preserved.
[in]bThe second buffer used for membership testing.
Returns
A buffer containing elements from a that also exist in b, in original order.

Definition at line 208 of file BufferFunctions.h.

References IsValid().

◆ IntersectSorted()

template<class t_type, class t_memory_manager>
Buffer< t_type, t_memory_manager > IntersectSorted ( const Buffer< t_type, t_memory_manager > & a,
const Buffer< t_type, t_memory_manager > & b )

Computes the intersection of two pre-sorted buffers using std::set_intersection.

Parameters
[in]aThe first sorted buffer.
[in]bThe second sorted buffer.
Returns
A buffer containing elements common to both input buffers.

Definition at line 139 of file BufferFunctions.h.

References cast().

Referenced by Intersect().

◆ InverseRightJacobianSO3() [1/2]

Eigen::Matrix3< g_type > InverseRightJacobianSO3 ( const Eigen::Vector3< g_type > & v)

Computes the inverse right Jacobian of SO3.

Parameters
[in]vThe rotation vector.
Returns
The 3x3 inverse right Jacobian.

◆ InverseRightJacobianSO3() [2/2]

Eigen::Matrix3< g_type > InverseRightJacobianSO3 ( g_type x,
g_type y,
g_type z )

Computes the inverse right Jacobian of SO3 from axis components.

Parameters
[in]xRotation axis x component.
[in]yRotation axis y component.
[in]zRotation axis z component.
Returns
The 3x3 inverse right Jacobian.

◆ IsInvalid() [1/6]

template<class t_type>
constexpr bool IsInvalid ( const Angle< t_type > & value)
staticconstexpr

Checks whether the given Angle holds an invalid value.

Parameters
[in]valueThe angle to check.
Returns
True if the angle is invalid, false otherwise.

Definition at line 388 of file Angle.h.

References IsInvalid().

Referenced by IMUNoiseSimulator::addAccelerometerNoise(), IMUNoiseSimulator::addGyroNoise(), IMUNoiseSimulator::addMagnetometerNoise(), arrayHasInvalid(), Angle< t_type >::as(), Polygon< t_type, t_vertex >::bounds(), Polyline< t_dims, t_type, t_vertex >::bounds(), GravityIntersection::calculateIntersection(), MapPointProjection::checkInFrustum(), clip(), Convert(), ConcavePolygon< t_type, t_vertex >::convexDecomp(), TreeBoundarySorter< t_dims, t_type >::createBoundarySortList(), TimeSpan::elapsedHours(), TimeSpan::elapsedMilliseconds(), TimeSpan::elapsedMinutes(), TimeSpan::elapsedSeconds(), NewModelCommand::execute(), SetLayerCommand::execute(), Extruder::Extrude(), Extruder::ExtrudePolylineAlongGeo(), LineIterator< t_dims, t_type >::get(), TriangleIterator< t_dims, t_type >::get(), GLESShader::Definition::id(), GridMesh< t_dims >::interpolateVertex(), Path::interpolateX(), IsInvalid(), IsInvalid(), IsInvalid(), IsInvalid(), Polyline< t_dims, t_type, t_vertex >::length(), Geometry::lineSegment(), RealSensePositionSensor::locationAt(), GNSSSatelliteInfo::operator!=(), operator*(), operator*(), operator*(), operator*=(), Geometry::OptimizedGetPrimitiveVec(), Geometry::OptimizedSetPrimitive(), Geometry::OptimizedSetPrimitiveVec(), Geometry::polygons(), Geometry::polylines(), Geometry::primitive(), Geometry::primitive(), Geometry::primitive(), TranslationTools::processString(), NDEVRCorrespondenceEstimation< PointSource, PointTarget, NormalT, Scalar >::radiusNormalSearch(), NDEVRCorrespondenceEstimation< PointSource, PointTarget, NormalT, Scalar >::radiusSearch(), PCLRTreeWrapper< PointT >::radiusSearch(), DBFParser::readColumn(), RealSenseServer::ReadNetworkPacket(), MatrixDefinitions< t_type >::RotationMatrix(), OpenGLBuffer::sendToVideoCard(), OpenGLBuffer::setAttribute(), OpenGLBuffer::setAttributeRange(), Equation< t_type >::solve(), BaseVertex< t_dims, T >::solveDirect(), TreeBoundarySorter< t_dims, t_type >::sortList(), Geometry::triangle(), Geometry::triangles(), LineIterator< t_dims, t_type >::vertexIndex(), and MatrixDefinitions< t_type >::ViewMatrix().

◆ IsInvalid() [2/6]

template<class t_type, uint01 t_row_dims, uint01 t_col_dims>
constexpr bool IsInvalid ( const Matrix< t_type, t_row_dims, t_col_dims > & value)
staticconstexpr

Query if 'value' is Invalid.

Author: Tyler Parke

Date: 2017-11-19

Typeparams: t_dims - Type of the dims. t_type - Type of the type. t_vector_type - Type of the vector type. Parameters: value - The value.

Returns
True if nan, false if not.

Definition at line 798 of file Matrix.hpp.

References IsInvalid().

◆ IsInvalid() [3/6]

template<uint01 t_dims, class t_type>
constexpr bool IsInvalid ( const Plane< t_dims, t_type > & value)
staticconstexpr

Query if 'value' is Invalid.

Author: Tyler Parke

Date: 2019-05-07

Typeparams: t_dims - Type of the dims. t_type - Type of the type. Parameters: value - The value.

Returns
True if nan, false if not.

Definition at line 267 of file Plane.hpp.

References IsInvalid().

◆ IsInvalid() [4/6]

template<class t_type>
constexpr bool IsInvalid ( const Quaternion< t_type > & value)
staticconstexpr

Query if 'value' is Invalid.

Author: Tyler Parke

Date: 2017-11-19

Typeparams: t_dims - Type of the dims. t_type - Type of the type. t_vector_type - Type of the vector type. Parameters: value - The value.

Returns
True if nan, false if not.

Definition at line 281 of file Quaternion.hpp.

References IsInvalid().

◆ IsInvalid() [5/6]

template<>
bool IsInvalid ( const StringView & value)
constexpr

Checks whether a StringView is invalid (empty).

Parameters
[in]valueThe StringView to check.
Returns
True if the StringView has zero size.

Definition at line 784 of file StringView.h.

References StringView::size().

◆ IsInvalid() [6/6]

template<class t_type>
bool IsInvalid ( const t_type & value)
constexpr

Query if 'value' is valid or invalid.

Invalid values should return invalid if used for calculations or false for operator checks, when possible.

Author: Tyler Parke

Date: 2017-11-05

Parameters
[in]valueThe value.
Returns
True if the value is invalid, false if the value is valid.

Definition at line 197 of file BaseFunctions.hpp.

◆ IsValid() [1/2]

template<class t_type>
constexpr bool IsValid ( const Angle< t_type > & value)
staticconstexpr

Checks whether the given Angle holds a valid value.

Parameters
[in]valueThe angle to check.
Returns
True if the angle is valid, false otherwise.

Definition at line 398 of file Angle.h.

References IsValid().

Referenced by CheckoutLock::CheckoutLock(), CheckoutLock::~CheckoutLock(), OpenGLBuffer::bufferID(), GravityIntersection::calculateIntersection(), OpenGLBuffer::cleanup(), JSONToStringHelper< Time >::Convert(), TranslationTools::convertBrackets(), TranslationTools::convertFromBrackets(), ConcavePolygon< t_type, t_vertex >::convexDecomp(), TableColumnBuffer< t_type >::copyRows(), CoordinateProjection::crsIdentifier(), GLESImageData::destroy(), SetLayerCommand::execute(), Extruder::Extrude(), Extruder::ExtrudeRealThickness(), GravityIntersection::FilterSamples(), FactoryModelFilters::FilterTypeModels(), FactoryModelFilters::FilterTypeModels(), GravityIntersection::FindGravityPoints(), GLESImageManager::getImage(), TreeBoundarySorter< t_dims, t_type >::getMedianBounds(), DesignObject::hasProperty(), QCustomStackedWidget::hasWidget(), TableColumnString::insertIndices(), TableVectorType< 1, T >::insertIndices(), LineSegment< 2, t_type, Vertex< 2, t_type > >::intersectionPosition(), IntersectPreserveOrderA(), QTDesignObject::is(), CheckoutLock::isCheckedOut(), IsValid(), DesignObject::isValid(), Polyline< t_dims, t_type, t_vertex >::length(), GNSSSatelliteInfo::operator!=(), Geometry::OptimizedSetPrimitiveVec(), Geometry::polygons(), Geometry::polylines(), TranslationTools::processString(), QCustomComboBox::remove(), HardwareCommandQueue< t_type >::removeCommand(), TableColumnString::removeIndices(), TableVectorType< 1, T >::removeIndices(), TableVectorType< 1, T >::removeIndices(), PropertyInterface< NDPO >::Set(), Geometry::setPrimitive(), Geometry::setPrimitive(), Geometry::setPrimitiveVec(), TranslationTools::setupFile(), QCustomLineEdit::setValue(), LUDecomposition< t_type, t_m, t_n >::solve(), TableVectorType< 1, T >::swapIndices(), OrientationSensor::usedForLeveling(), and TriangleIterator< t_dims, t_type >::vertexIndex().

◆ IsValid() [2/2]

template<>
bool IsValid ( const StringView & value)
constexpr

Checks whether a StringView is valid (non-empty).

Parameters
[in]valueThe StringView to check.
Returns
True if the StringView has a size greater than zero.

Definition at line 794 of file StringView.h.

References StringView::size().

◆ LASLicense()

String LASLicense ( )
static

The license for using libLAS.


Definition at line 9 of file LASLicense.h.

◆ LogSO3()

Eigen::Vector3< g_type > LogSO3 ( const Eigen::Matrix3< g_type > & R)

Computes the SO3 logarithm map.

Parameters
[in]RThe 3x3 rotation matrix.
Returns
The rotation vector.

Referenced by Edge4DoF::computeError().

◆ MakeRandom() [1/4]

template<>
fltp04 MakeRandom ( fltp04 max)
inline

Returns a pseudo-random number between 0 and the associated max value

Author: Tyler Parke

Date: 2017-11-18

Parameters: max - The maximum value the random value can take on.

Returns
A pseudo-random number.

Definition at line 75 of file Random.h.

References cast(), and MakeRandom().

◆ MakeRandom() [2/4]

template<>
fltp08 MakeRandom ( fltp08 max)
inline

Returns a pseudo-random number between 0 and the associated max value.


Author: Tyler Parke

Date: 2017-11-18

Parameters: max - The maximum value the random value can take on.

Returns
A pseudo-random number.

Definition at line 94 of file Random.h.

References cast(), and MakeRandom().

◆ MakeRandom() [3/4]

template<class t_type>
t_type MakeRandom ( t_type max)

Returns a pseudo-random number between 0 and the associated max value.


Author: Tyler Parke

Date: 2017-11-18

Parameters: max - The maximum value the random value can take on.

Returns
A pseudo-random number.

Definition at line 55 of file Random.h.

Referenced by MakeRandom(), MakeRandom(), MakeRandom(), and DeviCounterSimulatorIO::open().

◆ MakeRandom() [4/4]

template<class t_type>
t_type MakeRandom ( t_type min,
t_type max )

Returns a pseudo-random number between 0 and the associated max value.


Author: Tyler Parke

Date: 2017-11-18

Parameters: max - The maximum value the random value can take on. min - The maximum value the random value can take on.

Returns
A pseudo-random number.

Definition at line 113 of file Random.h.

References cast(), and MakeRandom().

◆ MaxDigits()

template<class t_type>
uint04 MaxDigits ( )
constexpr

For a given number type, returns the maximum number of digits the number type can represent.


References MaxDigits().

Referenced by MaxDigits().

◆ NextCapacityBytes()

template<class t_index_type, size_t t_elem_size>
t_index_type NextCapacityBytes ( t_index_type cap_elems,
t_index_type need_elems )
inlinestaticnoexcept

Computes the next buffer capacity in elements, using a growth strategy tuned per platform alignment boundaries.

Grows by approximately 1.5x for larger buffers, 2x for smaller ones, then rounds up to the nearest platform-appropriate alignment boundary.

Parameters
[in]cap_elemsThe current capacity in elements.
[in]need_elemsThe minimum required number of elements.
Returns
The next capacity in elements, aligned to a platform-appropriate boundary.

Definition at line 471 of file MemoryManager.h.

References cast(), and MagicDiv< D >::m.

Referenced by BufferAllocator< t_type, t_aligned_size, t_is_primitive, t_index_type, t_null_term, t_allow_reference >::autoSetCapacity().

◆ NormalizeRotation()

template<typename T = g_type>
Eigen::Matrix< T, 3, 3 > NormalizeRotation ( const Eigen::Matrix< T, 3, 3 > & R)

Normalizes a rotation matrix using SVD decomposition.

Parameters
[in]RThe rotation matrix to normalize.
Returns
The normalized rotation matrix.

Definition at line 87 of file G2oTypes.h.

◆ operator!=()

template<uint01 t_dims, class t_type>
bool operator!= ( const Vector< t_dims, t_type > & vec_a,
const Vector< t_dims, t_type > & vec_b )
constexpr

Inequality operator.


Performs the '!=' operation on the value in each dimension.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - The first instance to compare. vec_b - The second instance to compare.

Returns
True if any of the values in each vector dimension is not considered equivalent.

Definition at line 673 of file Vector.hpp.

◆ operator%() [1/4]

TimeSpan operator% ( const Time & time,
const TimeSpan & duration )
constexpr

Computes the modulo of a Time by a TimeSpan duration, returning the remainder as a TimeSpan with the aligned start time.

Parameters
[in]timeThe time value to divide.
[in]durationThe duration to use as the divisor. Must be positive.
Returns
A TimeSpan whose start is the most recent aligned boundary and whose elapsed time is the remainder.

Definition at line 517 of file TimeSpan.h.

References cast(), TimeSpan::elapsedNanoseconds(), and Time::getNanoSeconds().

◆ operator%() [2/4]

template<uint01 t_dims, class t_angle_type>
Vector< t_dims, Angle< t_angle_type > > operator% ( const Vector< t_dims, Angle< t_angle_type > > & vec_a,
const Angle< t_angle_type > & value_b )
constexpr

Computes the remainder of an Angle given an angle and a modulo divisor.

Parameters
[in]vec_aThe Vector to compute the remainder.
[in]value_bThe Vector to use as the modulo
Returns
The result of the modulo operation.

Definition at line 739 of file AngleFunctions.h.

References cast().

◆ operator%() [3/4]

template<uint01 t_dims, class t_angle_type>
Vector< t_dims, Angle< t_angle_type > > operator% ( const Vector< t_dims, Angle< t_angle_type > > & vec_a,
const Vector< t_dims, Angle< t_angle_type > > & vec_b )
constexpr

Element-wise modulo operator for two Vectors of Angles.

Parameters
[in]vec_aThe first Vector of Angles.
[in]vec_bThe second Vector of Angles to use as the modulo divisor.
Returns
The result of the element-wise modulo operation.

Definition at line 725 of file AngleFunctions.h.

References cast().

◆ operator%() [4/4]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > operator% ( const Vector< t_dims, t_type > & vec_a,
const Vector< t_dims, t_type > & vec_b )
constexpr

Xor operator.

Author: Tyler Parke

Date: 2018-04-10

Parameters: vec_a - The first value to xor. vec_b - The second value to xor.

Returns
The result of the operation.

Definition at line 495 of file VectorFunctions.hpp.

◆ operator*() [1/38]

template<class t_type, class t_angle_type>
constexpr Angle< t_angle_type > operator* ( const Angle< t_angle_type > & angle,
t_type mult )
staticconstexpr

Multiplication operator.

Parameters
[in]angleAn angle to multiply
[in]multA scaler value to multiply the angle by.
Returns
The result of the multiplication operation.

Definition at line 302 of file AngleFunctions.h.

References cast().

◆ operator*() [2/38]

template<class t_type>
constexpr Angle< t_type > operator* ( const Angle< t_type > & angle_a,
const Angle< t_type > & angle_b )
staticconstexpr

Multiplication operator.

Parameters
[in]angle_aThe first value.
[in]angle_bA value to add to it.
Returns
The result of the multiplication operation.

Definition at line 278 of file AngleFunctions.h.

References cast().

◆ operator*() [3/38]

RGBColor operator* ( const fltp04 & value,
const RGBColor & color )
constexpr

Multiplies a scalar by the RGB channels of a color, returning a new color.

Alpha is preserved.

Parameters
[in]valueThe scalar multiplier.
[in]colorThe source color.
Returns
A new RGBColor with scaled RGB channels and the original alpha.

Definition at line 470 of file RGBColor.h.

References RGBColor::a_pos, cast(), and IsInvalid().

◆ operator*() [4/38]

template<class t_type, class t_vector>
Ray< 3, t_type > operator* ( const Matrix< t_type, 3, 3 > & matrix,
const Ray< 3, t_type, t_vector > & right )
inline

Transforms a 3D ray (direction vector) by a 3x3 matrix.

Parameters
[in]matrixThe 3x3 transformation matrix.
[in]rightThe 3D ray to transform.
Returns
The transformed 3D ray.

Definition at line 202 of file MatrixFunctions.h.

◆ operator*() [5/38]

template<class t_type, class t_vector>
Vertex< 3, t_type, t_vector > operator* ( const Matrix< t_type, 3, 3 > & matrix,
const Vertex< 3, t_type, t_vector > & right )

Transforms a 3D vertex by a 3x3 matrix without perspective division.

Parameters
[in]matrixThe 3x3 transformation matrix.
[in]rightThe 3D vertex to transform.
Returns
The transformed 3D vertex.

Definition at line 116 of file MatrixFunctions.h.

◆ operator*() [6/38]

template<class t_type, class t_vector>
Vertex< 3, t_type, t_vector > operator* ( const Matrix< t_type, 4, 4 > & m,
const Vertex< 3, t_type, t_vector > & v )

Transforms a 3D vertex by a 4x4 matrix with perspective division.

Parameters
[in]mThe 4x4 transformation matrix.
[in]vThe 3D vertex to transform.
Returns
The transformed 3D vertex after perspective division.

Definition at line 90 of file MatrixFunctions.h.

◆ operator*() [7/38]

template<class t_type, class t_vector>
Vertex< 4, t_type > operator* ( const Matrix< t_type, 4, 4 > & m,
const Vertex< 4, t_type, t_vector > & v )
inline

Transforms a 4D vertex by a 4x4 matrix without perspective division.

Parameters
[in]mThe 4x4 transformation matrix.
[in]vThe 4D vertex to transform.
Returns
The transformed 4D vertex.

Definition at line 131 of file MatrixFunctions.h.

◆ operator*() [8/38]

template<class t_type, class t_vertex>
Bounds< 3, t_type, t_vertex > operator* ( const Matrix< t_type, 4, 4 > & matrix,
const Bounds< 3, t_type, t_vertex > & bounds )

Transforms a 3D bounding region by a 4x4 matrix, optimized specialization.

Iterates over all eight corner combinations of the bounds, transforms each by the matrix with perspective division, and accumulates the result into a new bounding region.

Parameters
[in]matrixThe 4x4 transformation matrix.
[in]boundsThe 3D bounds to transform.
Returns
The transformed 3D bounds encompassing all eight transformed corner points.

Definition at line 376 of file MatrixFunctions.h.

References Bounds< t_dims, t_type, t_vertex >::addToBounds().

◆ operator*() [9/38]

template<class t_type, class t_vector>
Ray< 3, t_type > operator* ( const Matrix< t_type, 4, 4 > & matrix,
const Ray< 3, t_type, t_vector > & right )
inline

Transforms a 3D ray (direction vector) by a 4x4 matrix, applying only the rotational component.

Parameters
[in]matrixThe 4x4 transformation matrix.
[in]rightThe 3D ray to transform.
Returns
The transformed 3D ray.

Definition at line 187 of file MatrixFunctions.h.

◆ operator*() [10/38]

template<class t_type, class t_vector>
Ray< 4, t_type > operator* ( const Matrix< t_type, 4, 4 > & matrix,
const Ray< 4, t_type, t_vector > & right )
inline

Transforms a 4D ray (direction vector) by a 4x4 matrix.

Parameters
[in]matrixThe 4x4 transformation matrix.
[in]rightThe 4D ray to transform.
Returns
The transformed 4D ray.

Definition at line 217 of file MatrixFunctions.h.

◆ operator*() [11/38]

template<class t_type, class t_vertex, uint01 t_row_dims, uint01 t_col_dims>
Bounds< 1, t_type, t_vertex > operator* ( const Matrix< t_type, t_row_dims, t_col_dims > & matrix,
const Bounds< 1, t_type, t_vertex > & bounds )

Transforms a 1D bounding region by a matrix with perspective division.

Parameters
[in]matrixThe transformation matrix.
[in]boundsThe 1D bounds to transform.
Returns
The transformed 1D bounds encompassing all transformed corner points.

Definition at line 274 of file MatrixFunctions.h.

References Bounds< t_dims, t_type, t_vertex >::addToBounds().

◆ operator*() [12/38]

template<class t_type, class t_vertex, uint01 t_row_dims, uint01 t_col_dims>
Bounds< 2, t_type, t_vertex > operator* ( const Matrix< t_type, t_row_dims, t_col_dims > & matrix,
const Bounds< 2, t_type > & bounds )

Transforms a 2D bounding region by a matrix with perspective division.

Parameters
[in]matrixThe transformation matrix.
[in]boundsThe 2D bounds to transform.
Returns
The transformed 2D bounds encompassing all transformed corner points.

Definition at line 295 of file MatrixFunctions.h.

References Bounds< t_dims, t_type, t_vertex >::addToBounds().

◆ operator*() [13/38]

template<class t_type, class t_vertex, uint01 t_row_dims, uint01 t_col_dims>
Bounds< 3, t_type, t_vertex > operator* ( const Matrix< t_type, t_row_dims, t_col_dims > & matrix,
const Bounds< 3, t_type, t_vertex > & bounds )

Transforms a 3D bounding region by a generic matrix with perspective division.

Parameters
[in]matrixThe transformation matrix.
[in]boundsThe 3D bounds to transform.
Returns
The transformed 3D bounds encompassing all eight transformed corner points.

Definition at line 323 of file MatrixFunctions.h.

References Bounds< t_dims, t_type, t_vertex >::addToBounds(), and IsInvalid().

◆ operator*() [14/38]

template<class t_type, uint01 t_dims, class t_vertex, uint01 t_row_dims, uint01 t_col_dims>
LineSegment< t_dims, t_type > operator* ( const Matrix< t_type, t_row_dims, t_col_dims > & matrix,
const LineSegment< t_dims, t_type, t_vertex > & line )
inline

Transforms a line segment by applying a matrix to both of its endpoints.

Parameters
[in]matrixThe transformation matrix.
[in]lineThe line segment to transform.
Returns
The transformed line segment.

Definition at line 233 of file MatrixFunctions.h.

References LineSegment< t_dims, t_type, t_vertex >::vertex().

◆ operator*() [15/38]

template<class t_type, class t_vertex, uint01 t_dims, uint01 t_row_dims, uint01 t_col_dims>
Polyline< t_dims, t_type, t_vertex > operator* ( const Matrix< t_type, t_row_dims, t_col_dims > & matrix,
const Polyline< t_dims, t_type, t_vertex > & poly )
inline

Transforms a polyline by applying a matrix to each of its vertices.

Parameters
[in]matrixThe transformation matrix.
[in]polyThe polyline to transform.
Returns
The transformed polyline.

Definition at line 257 of file MatrixFunctions.h.

References Polyline< t_dims, t_type, t_vertex >::add(), Polyline< t_dims, t_type, t_vertex >::vertex(), and Polyline< t_dims, t_type, t_vertex >::vertexCount().

◆ operator*() [16/38]

template<class t_type, class t_vector, uint01 t_row_dims, uint01 t_col_dims>
Ray< 1, t_type, t_vector > operator* ( const Matrix< t_type, t_row_dims, t_col_dims > & matrix,
const Ray< 1, t_type, t_vector > & right )
inline

Transforms a 1D ray (direction vector) by a matrix.

Parameters
[in]matrixThe transformation matrix.
[in]rightThe 1D ray to transform.
Returns
The transformed 1D ray.

Definition at line 161 of file MatrixFunctions.h.

◆ operator*() [17/38]

template<class t_type, class t_vector, uint01 t_row_dims, uint01 t_col_dims>
Ray< 2, t_type, t_vector > operator* ( const Matrix< t_type, t_row_dims, t_col_dims > & matrix,
const Ray< 2, t_type, t_vector > & right )
inline

Transforms a 2D ray (direction vector) by a matrix.

Parameters
[in]matrixThe transformation matrix.
[in]rightThe 2D ray to transform.
Returns
The transformed 2D ray.

Definition at line 173 of file MatrixFunctions.h.

◆ operator*() [18/38]

template<class t_type, uint01 t_dims, class t_vertex, uint01 t_row_dims, uint01 t_col_dims>
Triangle< t_dims, t_type, t_vertex > operator* ( const Matrix< t_type, t_row_dims, t_col_dims > & matrix,
const Triangle< t_dims, t_type, t_vertex > & tri )
inline

Transforms a triangle by applying a matrix to all three of its vertices.

Parameters
[in]matrixThe transformation matrix.
[in]triThe triangle to transform.
Returns
The transformed triangle.

Definition at line 245 of file MatrixFunctions.h.

References Triangle< t_dims, t_type, t_vertex >::vertex().

◆ operator*() [19/38]

template<class t_type, class t_vector, uint01 t_row_dims, uint01 t_col_dims>
Vertex< 1, t_type, t_vector > operator* ( const Matrix< t_type, t_row_dims, t_col_dims > & matrix,
const Vertex< 1, t_type, t_vector > & right )
inline

Transforms a 1D vertex by a matrix using homogeneous coordinates.

Parameters
[in]matrixThe transformation matrix.
[in]rightThe 1D vertex to transform.
Returns
The transformed 1D vertex after perspective division.

Definition at line 61 of file MatrixFunctions.h.

References cast().

◆ operator*() [20/38]

template<class t_type, class t_vector, uint01 t_row_dims, uint01 t_col_dims>
Vertex< 2, t_type, t_vector > operator* ( const Matrix< t_type, t_row_dims, t_col_dims > & matrix,
const Vertex< 2, t_type, t_vector > & right )
inline

Transforms a 2D vertex by a matrix with perspective division.

Parameters
[in]matrixThe transformation matrix.
[in]rightThe 2D vertex to transform.
Returns
The transformed 2D vertex after perspective division.

Definition at line 75 of file MatrixFunctions.h.

◆ operator*() [21/38]

RGBColor operator* ( const RGBColor & color,
const fltp04 & value )
constexpr

Multiplies the RGB channels of a color by a scalar, returning a new color.

Alpha is preserved.

Parameters
[in]colorThe source color.
[in]valueThe scalar multiplier.
Returns
A new RGBColor with scaled RGB channels and the original alpha.

Definition at line 454 of file RGBColor.h.

References RGBColor::a_pos, cast(), and IsInvalid().

◆ operator*() [22/38]

template<class t_type, class t_vector_type>
std::enable_if< IsVecType< t_vector_type, Angle< sint04 > >::value, t_vector_type >::type operator* ( const t_type & mult,
const t_vector_type & angle )
constexpr

Multiplication operator for a scalar and a Vector of sint04 Angles.

Parameters
[in]multA scalar value to multiply the angles by.
[in]angleThe Vector of Angles to multiply.
Returns
The result of the multiplication operation.

Definition at line 405 of file AngleFunctions.h.

◆ operator*() [23/38]

template<class t_type, class t_vector_type>
std::enable_if< IsVecType< t_vector_type, Angle< fltp08 > >::value, t_vector_type >::type operator* ( const t_type & mult,
const t_vector_type & angle )
constexpr

Multiplication operator for a scalar and a Vector of fltp08 Angles.

Parameters
[in]multA scalar value to multiply the angles by.
[in]angleThe Vector of Angles to multiply.
Returns
The result of the multiplication operation.

Definition at line 390 of file AngleFunctions.h.

◆ operator*() [24/38]

template<class t_vector_type, class t_type>
std::enable_if< IsVecType< t_vector_type, t_type >::value, t_vector_type >::type operator* ( const t_type & value_a,
const t_vector_type & vec_b )
constexpr

Multiplication operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: value_a - The first value to multiply. vec_b - The second value to multiply.

Returns
The result of the operation.

Definition at line 322 of file VectorFunctions.hpp.

◆ operator*() [25/38]

template<class t_type, uint01 t_row_dims, uint01 t_col_dims>
Matrix< t_type, t_row_dims, t_col_dims > operator* ( const t_type mult,
const Matrix< t_type, t_row_dims, t_col_dims > & matrix )

Multiplies a scalar value by every element of a matrix.

Parameters
[in]multThe scalar multiplier.
[in]matrixThe matrix to scale.
Returns
A new matrix with each element multiplied by the scalar.

Definition at line 508 of file MatrixFunctions.h.

◆ operator*() [26/38]

template<class t_type, class t_vector_type>
std::enable_if< IsVecType< t_vector_type, Angle< sint04 > >::value, t_vector_type >::type operator* ( const t_vector_type & angle,
const t_type & mult )
constexpr

Multiplication operator for a Vector of Angles.

Parameters
[in]multA scaler value to multiply the angle by.
[in]angleThe vector of Angles to multiply.
Returns
The result of the multiplication operation.

Definition at line 342 of file AngleFunctions.h.

◆ operator*() [27/38]

template<class t_type, class t_vector_type>
std::enable_if< IsVecType< t_vector_type, Angle< fltp08 > >::value, t_vector_type >::type operator* ( const t_vector_type & angle,
const t_type & mult )
constexpr

Multiplication operator for a Vector of Angles.

Parameters
[in]multA scaler value to multiply the angle by.
[in]angleThe vector of Angles to multiply.
Returns
The result of the multiplication operation.

Definition at line 326 of file AngleFunctions.h.

◆ operator*() [28/38]

template<uint01 t_dims, class t_type, class t_vector_type>
std::enable_if< std::is_base_of< Vector< t_dims, Angle< sint04 > >, t_vector_type >::value, t_vector_type >::type operator* ( const t_vector_type & angle,
const Vector< t_dims, t_type > & mult )
constexpr

Multiplication operator for a Vector of Angles.

Parameters
[in]angleThe vector of Angles to multiply.
[in]multA Vector scaler value to multiply the angle by.
Returns
The result of the multiplication operation.

Definition at line 374 of file AngleFunctions.h.

◆ operator*() [29/38]

template<uint01 t_dims, class t_type, class t_vector_type>
std::enable_if< std::is_base_of< Vector< t_dims, Angle< fltp08 > >, t_vector_type >::value, t_vector_type >::type operator* ( const t_vector_type & angle,
const Vector< t_dims, t_type > & mult )
constexpr

Multiplication operator for a Vector of Angles.

Parameters
[in]multA Vector scaler value to multiply the angle by.
[in]angleThe vector of Angles to multiply.
Returns
The result of the multiplication operation.

Definition at line 358 of file AngleFunctions.h.

◆ operator*() [30/38]

template<class t_type, class t_vector_type>
std::enable_if< IsVecType< t_vector_type, Angle< sint04 > >::value, t_vector_type >::type operator* ( const t_vector_type & mult,
const t_vector_type & angle )
constexpr

Element-wise multiplication operator for two Vectors of sint04 Angles.

Parameters
[in]multThe first Vector of Angles.
[in]angleThe second Vector of Angles.
Returns
The result of the element-wise multiplication operation.

Definition at line 465 of file AngleFunctions.h.

◆ operator*() [31/38]

template<class t_type, class t_vector_type>
std::enable_if< IsVecType< t_vector_type, Angle< fltp08 > >::value, t_vector_type >::type operator* ( const t_vector_type & mult,
const t_vector_type & angle )
constexpr

Element-wise multiplication operator for two Vectors of fltp08 Angles.

Parameters
[in]multThe first Vector of Angles.
[in]angleThe second Vector of Angles.
Returns
The result of the element-wise multiplication operation.

Definition at line 450 of file AngleFunctions.h.

◆ operator*() [32/38]

template<class t_vector_type, class t_type>
std::enable_if< IsVecType< t_vector_type, t_type >::value, t_vector_type >::type operator* ( const t_vector_type & vec_a,
const t_type & value_b )
constexpr

Multiplication operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - The first value to multiply. value_b - The second value to multiply.

Returns
The result of the operation.

Definition at line 346 of file VectorFunctions.hpp.

◆ operator*() [33/38]

template<uint01 t_dims, class t_type, class t_vector_type>
std::enable_if< std::is_base_of< Vector< t_dims, Angle< sint04 > >, t_vector_type >::value, t_vector_type >::type operator* ( const Vector< t_dims, t_type > & mult,
const t_vector_type & angle )
constexpr

Multiplication operator for a Vector of scalars and a Vector of sint04 Angles.

Parameters
[in]multA Vector of scalar values to multiply the angles by.
[in]angleThe Vector of Angles to multiply.
Returns
The result of the element-wise multiplication operation.

Definition at line 435 of file AngleFunctions.h.

◆ operator*() [34/38]

template<uint01 t_dims, class t_type, class t_vector_type>
std::enable_if< std::is_base_of< Vector< t_dims, Angle< fltp08 > >, t_vector_type >::value, t_vector_type >::type operator* ( const Vector< t_dims, t_type > & mult,
const t_vector_type & angle )
constexpr

Multiplication operator for a Vector of scalars and a Vector of fltp08 Angles.

Parameters
[in]multA Vector of scalar values to multiply the angles by.
[in]angleThe Vector of Angles to multiply.
Returns
The result of the element-wise multiplication operation.

Definition at line 420 of file AngleFunctions.h.

◆ operator*() [35/38]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > operator* ( const Vector< t_dims, t_type > & vec_a,
const Vector< t_dims, t_type > & vec_b )
constexpr

Multiplication operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - The first value to multiply. vec_b - The second value to multiply.

Returns
The result of the operation.

Definition at line 298 of file VectorFunctions.hpp.

◆ operator*() [36/38]

template<class t_type, class t_vector, uint01 t_dims, uint01 t_row_dims, uint01 t_col_dims>
Ray< t_dims, t_type > operator* ( const Vertex< t_dims, t_type, t_vector > & vertex,
const Matrix< t_type, t_row_dims, t_col_dims > & matrix )
inline

Multiplies a vertex by a matrix, producing a Ray by delegating to matrix * vertex.

Parameters
[in]vertexThe vertex operand.
[in]matrixThe transformation matrix.
Returns
The transformed ray.

Definition at line 149 of file MatrixFunctions.h.

◆ operator*() [37/38]

template<class t_type, class t_vector, uint01 t_dims, uint01 t_row_dims, uint01 t_col_dims>
Vertex< t_dims, t_type > operator* ( const Vertex< t_dims, t_type, t_vector > & vertex,
const Matrix< t_type, t_row_dims, t_col_dims > & matrix )
inline

Multiplies a vertex by a matrix by delegating to the matrix * vertex operator.

Parameters
[in]vertexThe vertex to transform.
[in]matrixThe transformation matrix.
Returns
The transformed vertex.

Definition at line 49 of file MatrixFunctions.h.

◆ operator*() [38/38]

template<class t_type, class t_angle_type>
constexpr Angle< t_angle_type > operator* ( t_type mult,
const Angle< t_angle_type > & angle )
staticconstexpr

Multiplication operator.

Parameters
[in]multA scaler value to multiply the angle by.
[in]angleThe angle to multiply.
Returns
The result of the multiplication operation.

Definition at line 314 of file AngleFunctions.h.

References cast().

◆ operator*=() [1/7]

template<class t_angle_type>
constexpr Angle< t_angle_type > & operator*= ( Angle< t_angle_type > & angle,
const Angle< t_angle_type > & mult )
staticconstexpr

Multiplication assignment operator for two Angles.

Parameters
[in]angleThe angle to multiply.
[in]multThe angle multiplier.
Returns
A reference to the modified angle.

Definition at line 673 of file AngleFunctions.h.

◆ operator*=() [2/7]

template<class t_type, class t_angle_type>
constexpr Angle< t_angle_type > & operator*= ( Angle< t_angle_type > & angle,
const t_type & mult )
staticconstexpr

Multiplication assignment operator for an Angle and a scalar.

Parameters
[in]angleThe angle to multiply.
[in]multThe scalar multiplier.
Returns
A reference to the modified angle.

Definition at line 635 of file AngleFunctions.h.

◆ operator*=() [3/7]

template<class t_type>
RGBColor & operator*= ( RGBColor & color,
const t_type & value )
constexpr

Multiplies the RGB channels of a color in-place by a scalar value.

Alpha is unchanged.

Parameters
[in]colorThe color to modify.
[in]valueThe scalar multiplier.
Returns
A reference to the modified color.

Definition at line 440 of file RGBColor.h.

References cast(), and IsInvalid().

◆ operator*=() [4/7]

template<uint01 t_dims, class t_type, class t_angle_type>
constexpr Vector< t_dims, Angle< t_angle_type > > & operator*= ( Vector< t_dims, Angle< t_angle_type > > & angle,
const t_type & mult )
staticconstexpr

Multiplication assignment operator for a Vector of Angles and a scalar.

Parameters
[in]angleThe Vector of Angles to multiply.
[in]multThe scalar multiplier.
Returns
A reference to the modified Vector of Angles.

Definition at line 647 of file AngleFunctions.h.

◆ operator*=() [5/7]

template<uint01 t_dims, class t_type, class t_angle_type>
constexpr Vector< t_dims, Angle< t_angle_type > > & operator*= ( Vector< t_dims, Angle< t_angle_type > > & angle,
const Vector< t_dims, t_type > & mult )
staticconstexpr

Multiplication assignment operator for a Vector of Angles and a Vector of scalars.

Parameters
[in]angleThe Vector of Angles to multiply.
[in]multThe Vector of scalar multipliers.
Returns
A reference to the modified Vector of Angles.

Definition at line 660 of file AngleFunctions.h.

◆ operator*=() [6/7]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > & operator*= ( Vector< t_dims, t_type > & vec_a,
const Vector< t_dims, t_type > & vec_b )
constexpr

Multiplication assignment operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - [in,out] The vector a. vec_b - The vector b.

Returns
The result of the operation.

Definition at line 369 of file VectorFunctions.hpp.

◆ operator*=() [7/7]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > & operator*= ( Vector< t_dims, t_type > & vec_a,
t_type value_b )
constexpr

Multiplication assignment operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - [in,out] The vector a. value_b - The value b.

Returns
The result of the operation.

Definition at line 391 of file VectorFunctions.hpp.

◆ operator+() [1/5]

template<class t_type>
constexpr Angle< t_type > operator+ ( const Angle< t_type > & angle_a,
const Angle< t_type > & angle_b )
staticconstexpr

Addition operator.

Parameters
[in]angle_aThe first value.
[in]angle_bA value to add to it.
Returns
The result of the addition operation.

Definition at line 200 of file AngleFunctions.h.

References cast().

◆ operator+() [2/5]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > operator+ ( const t_type & scaler_a,
const Vector< t_dims, t_type > & vec_b )
constexpr

Addition operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: scaler_a - The first value. vec_b - A value to add to it.

Returns
The result of the operation.

Definition at line 83 of file VectorFunctions.hpp.

◆ operator+() [3/5]

template<class t_vector_type, class t_type>
std::enable_if< IsVecType< t_vector_type, t_type >::value, t_vector_type >::type operator+ ( const t_vector_type & vec_a,
const t_type & scaler_b )
constexpr

Addition operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - The first value. scaler_b - A value to add to it.

Returns
The result of the operation.

Definition at line 107 of file VectorFunctions.hpp.

◆ operator+() [4/5]

template<class t_vector_type, uint01 t_dims, class t_type>
std::enable_if< std::is_base_of< Vector< t_dims, t_type >, t_vector_type >::value, t_vector_type >::type operator+ ( const t_vector_type & vec_a,
const Vector< t_dims, t_type > & vec_b )
constexpr

Addition operator.


Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - The first value. vec_b - A value to add to it.

Returns
The result of the operation.

Definition at line 60 of file VectorFunctions.hpp.

◆ operator+() [5/5]

Time operator+ ( const Time & time,
const TimeSpan & value )

Advances a Time by adding a TimeSpan duration.

Parameters
[in]timeThe base time.
[in]valueThe duration to add.
Returns
The resulting Time.

◆ operator+=() [1/4]

template<class t_angle_type>
constexpr Angle< t_angle_type > & operator+= ( Angle< t_angle_type > & angle,
const Angle< t_angle_type > & add )
staticconstexpr

Addition assignment operator for Angles.

Parameters
[in]angleThe angle to add to.
[in]addThe angle to add.
Returns
A reference to the modified angle.

Definition at line 611 of file AngleFunctions.h.

◆ operator+=() [2/4]

Time & operator+= ( Time & time,
const TimeSpan & value )

Advances a Time in place by adding a TimeSpan duration.

Parameters
[in]timeThe time to modify.
[in]valueThe duration to add.
Returns
A reference to the modified Time.

◆ operator+=() [3/4]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > & operator+= ( Vector< t_dims, t_type > & vec_a,
const Vector< t_dims, t_type > & vec_b )
constexpr

Addition assignment operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - [in,out] The vector a. vec_b - The vector b.

Returns
The result of the operation.

Definition at line 139 of file VectorFunctions.hpp.

◆ operator+=() [4/4]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > & operator+= ( Vector< t_dims, t_type > & vec_a,
t_type scaler_b )
constexpr

Addition assignment operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - [in,out] The vector a. scaler_b - The scaler b.

Returns
The result of the operation.

Definition at line 161 of file VectorFunctions.hpp.

◆ operator-() [1/6]

template<class t_type>
constexpr Angle< t_type > operator- ( const Angle< t_type > & angle_a,
const Angle< t_type > & angle_b )
staticconstexpr

Subtraction operator.

Parameters
[in]angle_aThe first value.
[in]angle_bA value to subtract from it.
Returns
The result of the subtraction operation.

Definition at line 189 of file AngleFunctions.h.

References cast().

◆ operator-() [2/6]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > operator- ( const t_type & value_a,
const Vector< t_dims, t_type > & vec_b )
constexpr

Subtraction operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: value_a - The first value. vec_b - A value to subtract from it.

Returns
The result of the operation.

Definition at line 207 of file VectorFunctions.hpp.

References difference().

◆ operator-() [3/6]

template<class t_vector_type, class t_type>
std::enable_if< IsVecType< t_vector_type, t_type >::value, t_vector_type >::type operator- ( const t_vector_type & vec_a,
const t_type & value_b )
constexpr

Subtraction operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - The first value. value_b - A value to subtract from it.

Returns
The result of the operation.

Definition at line 231 of file VectorFunctions.hpp.

References difference().

◆ operator-() [4/6]

template<class t_vector_type, uint01 t_dims, class t_type>
std::enable_if< std::is_base_of< Vector< t_dims, t_type >, t_vector_type >::value, t_vector_type >::type operator- ( const t_vector_type & vec_a,
const Vector< t_dims, t_type > & vec_b )
constexpr

Subtraction operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - The first value. vec_b - A value to subtract from it.

Returns
The result of the operation.

Definition at line 184 of file VectorFunctions.hpp.

References difference().

◆ operator-() [5/6]

TimeSpan operator- ( const Time & time,
const Time & value )

Computes the difference between two Time values as a TimeSpan.

Parameters
[in]timeThe first (later) time.
[in]valueThe second (earlier) time.
Returns
A TimeSpan representing the difference.

◆ operator-() [6/6]

Time operator- ( const Time & time,
const TimeSpan & value )

Retreats a Time by subtracting a TimeSpan duration.

Parameters
[in]timeThe base time.
[in]valueThe duration to subtract.
Returns
The resulting Time.

◆ operator-=() [1/4]

template<class t_angle_type>
constexpr Angle< t_angle_type > & operator-= ( Angle< t_angle_type > & angle,
const Angle< t_angle_type > & sub )
staticconstexpr

Subtraction assignment operator for Angles.

Parameters
[in]angleThe angle to subtract from.
[in]subThe angle to subtract.
Returns
A reference to the modified angle.

Definition at line 623 of file AngleFunctions.h.

◆ operator-=() [2/4]

Time & operator-= ( Time & time,
const TimeSpan & value )

Retreats a Time in place by subtracting a TimeSpan duration.

Parameters
[in]timeThe time to modify.
[in]valueThe duration to subtract.
Returns
A reference to the modified Time.

◆ operator-=() [3/4]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > & operator-= ( Vector< t_dims, t_type > & vec_a,
const Vector< t_dims, t_type > & vec_b )
constexpr

Subtraction assignment operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - [in,out] The vector a. vec_b - The vector b.

Returns
The result of the operation.

Definition at line 254 of file VectorFunctions.hpp.

◆ operator-=() [4/4]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > operator-= ( Vector< t_dims, t_type > & vec_a,
t_type value_b )
constexpr

Subtraction assignment operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - [in,out] The vector a. value_b - The value b.

Returns
The result of the operation.

Definition at line 276 of file VectorFunctions.hpp.

◆ operator/() [1/13]

template<class t_type, class t_angle_type>
constexpr Angle< t_angle_type > operator/ ( const Angle< t_angle_type > & num,
t_type den )
staticconstexpr

Division operator for a Vector of Angles.

Parameters
[in]angleThe Angles to divide.
[in]denA scaler value to divide the angle by.
Returns
The result of the multiplication operation.

Definition at line 479 of file AngleFunctions.h.

References cast().

◆ operator/() [2/13]

template<class t_type>
constexpr fltp08 operator/ ( const Angle< t_type > & angle_a,
const Angle< t_type > & angle_b )
staticconstexpr

Division operator.

Parameters
[in]angle_aThe first value.
[in]angle_bA value to add to it.
Returns
The result of the division operation.

Definition at line 290 of file AngleFunctions.h.

References cast().

◆ operator/() [3/13]

template<class t_vector_type, class t_type>
std::enable_if< IsVecType< t_vector_type, t_type >::value, t_vector_type >::type operator/ ( const t_type & value_a,
const t_vector_type & vec_b )
constexpr

Division operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: value_a - The numerator. vec_b - The denominator.

Returns
The result of the operation.

Definition at line 437 of file VectorFunctions.hpp.

◆ operator/() [4/13]

template<class t_type, class t_vector_type>
std::enable_if< IsVecType< t_vector_type, Angle< sint04 > >::value, t_vector_type >::type operator/ ( const t_vector_type & angle,
const t_type & den )
constexpr

Division operator for a Vector of Angles.

Parameters
[in]denA scaler value to divide the angle by.
[in]angleThe Vector of Angles to divide.
Returns
The result of the multiplication operation.

Definition at line 524 of file AngleFunctions.h.

◆ operator/() [5/13]

template<class t_type, class t_vector_type>
std::enable_if< IsVecType< t_vector_type, Angle< fltp08 > >::value, t_vector_type >::type operator/ ( const t_vector_type & angle,
const t_type & den )
constexpr

Division operator for a Vector of Angles.

Parameters
[in]denA scaler value to divide the angle by.
[in]angleThe Vector of Angles to divide.
Returns
The result of the multiplication operation.

Definition at line 508 of file AngleFunctions.h.

◆ operator/() [6/13]

template<class t_type, class t_vector_type, class t_angle_type>
std::enable_if< IsVecType< t_vector_type, Angle< t_angle_type > >::value, t_vector_type >::type operator/ ( const t_vector_type & angle,
const t_type & den )
constexpr

Division operator for a Vector of Angles.

Parameters
[in]denA scaler value to divide the angle by.
[in]angleThe Vector of Angles to divide.
Returns
The result of the multiplication operation.

Definition at line 492 of file AngleFunctions.h.

◆ operator/() [7/13]

template<uint01 t_dims, class t_vector_type, class t_angle_type>
std::enable_if< std::is_base_of< Vector< t_dims, Angle< t_angle_type > >, t_vector_type >::value, Vector< t_dims, fltp08 > >::type operator/ ( const t_vector_type & angle,
const Vector< t_dims, Angle< t_angle_type > > & den )
constexpr

Division operator for a Vector of Angles.

Parameters
[in]denA scaler value the angle will divide by.
[in]angleThe Vector of Angles to divide the den by.
Returns
The result of the multiplication operation.

Definition at line 556 of file AngleFunctions.h.

◆ operator/() [8/13]

template<uint01 t_dims, class t_type, class t_vector_type, class t_angle_type>
std::enable_if< std::is_base_of< Vector< t_dims, Angle< t_angle_type > >, t_vector_type >::value, t_vector_type >::type operator/ ( const t_vector_type & angle,
const Vector< t_dims, t_type > & den )
constexpr

Division operator for a Vector of Angles.

Parameters
[in]denA scaler value the angle will divide by.
[in]angleThe Vector of Angles to divide the den by.
Returns
The result of the multiplication operation.

Definition at line 540 of file AngleFunctions.h.

◆ operator/() [9/13]

template<class t_vector_type, class t_type>
std::enable_if< IsVecType< t_vector_type, t_type >::value, t_vector_type >::type operator/ ( const t_vector_type & vec_a,
const t_type & value_b )
constexpr

Division operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - The numerator. value_b - The denominator.

Returns
The result of the operation.

Definition at line 461 of file VectorFunctions.hpp.

◆ operator/() [10/13]

template<uint01 t_dims, class t_angle_type>
Vector< t_dims, fltp08 > operator/ ( const Vector< t_dims, Angle< t_angle_type > > & angle,
const Vector< t_dims, Angle< t_angle_type > > & den )
constexpr

Division operator for a Vector of Angles.

Parameters
[in]denA scaler value the angle will divide by.
[in]angleThe Vector of Angles to divide the den by.
Returns
The result of the multiplication operation.

Definition at line 570 of file AngleFunctions.h.

◆ operator/() [11/13]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > operator/ ( const Vector< t_dims, t_type > & vec_a,
const Vector< t_dims, t_type > & vec_b )
constexpr

Division operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - The numerator. vec_b - The denominator.

Returns
The result of the operation.

Definition at line 413 of file VectorFunctions.hpp.

◆ operator/() [12/13]

template<class t_type, class t_angle_type>
constexpr Angle< t_angle_type > operator/ ( t_type num,
const Angle< t_angle_type > & den )
staticconstexpr

Division operator for a scalar numerator and an Angle denominator.

Parameters
[in]numThe scalar numerator.
[in]denThe Angle denominator.
Returns
The result of the division operation.

Definition at line 585 of file AngleFunctions.h.

References cast().

◆ operator/() [13/13]

template<class t_type, class t_vector_type, class t_angle_type>
std::enable_if< IsVecType< t_vector_type, Angle< t_angle_type > >::value, t_vector_type >::type operator/ ( t_type num,
const t_vector_type & angle )
constexpr

Division operator for a scalar numerator and a Vector of Angles denominator.

Parameters
[in]numThe scalar numerator.
[in]angleThe Vector of Angles to use as the denominator.
Returns
The result of the element-wise division operation.

Definition at line 597 of file AngleFunctions.h.

◆ operator/=() [1/5]

template<class t_type, class t_angle_type>
constexpr Angle< t_angle_type > & operator/= ( Angle< t_angle_type > & angle,
const t_type & mult )
staticconstexpr

Division assignment operator for an Angle and a scalar.

Parameters
[in]angleThe angle to divide.
[in]multThe scalar divisor.
Returns
A reference to the modified angle.

Definition at line 686 of file AngleFunctions.h.

◆ operator/=() [2/5]

template<uint01 t_dims, class t_type, class t_angle_type>
constexpr Vector< t_dims, Angle< t_angle_type > > & operator/= ( Vector< t_dims, Angle< t_angle_type > > & angle,
const t_type & den )
staticconstexpr

Division assignment operator for a Vector of Angles and a scalar.

Parameters
[in]angleThe Vector of Angles to divide.
[in]denThe scalar divisor.
Returns
A reference to the modified Vector of Angles.

Definition at line 698 of file AngleFunctions.h.

◆ operator/=() [3/5]

template<uint01 t_dims, class t_type, class t_angle_type>
constexpr Vector< t_dims, Angle< t_angle_type > > & operator/= ( Vector< t_dims, Angle< t_angle_type > > & angle,
const Vector< t_dims, t_type > & den )
staticconstexpr

Division assignment operator for a Vector of Angles and a Vector of scalars.

Parameters
[in]angleThe Vector of Angles to divide.
[in]denThe Vector of scalar divisors.
Returns
A reference to the modified Vector of Angles.

Definition at line 711 of file AngleFunctions.h.

◆ operator/=() [4/5]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > operator/= ( Vector< t_dims, t_type > & vec_a,
const Vector< t_dims, t_type > & vec_b )
constexpr

Division assignment operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - [in,out] The vector a. vec_b - The vector b.

Returns
The result of the operation.

Definition at line 527 of file VectorFunctions.hpp.

◆ operator/=() [5/5]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > & operator/= ( Vector< t_dims, t_type > & vec_a,
t_type value_b )
constexpr

Division assignment operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - [in,out] The vector a. value_b - The value b.

Returns
The result of the operation.

Definition at line 550 of file VectorFunctions.hpp.

◆ operator<()

template<class t_type_a, class t_type_b>
constexpr bool operator< ( const Angle< t_type_a > & angle_a,
const Angle< t_type_b > & angle_b )
staticconstexpr

Less-than comparison operator.

Parameters
[in]angle_aThe first instance to compare.
[in]angle_bThe second instance to compare.
Returns
True if the first parameter is less than to the second.

Definition at line 53 of file AngleFunctions.h.

References cast().

◆ operator<=()

template<class t_type_a, class t_type_b>
constexpr bool operator<= ( const Angle< t_type_a > & angle_a,
const Angle< t_type_b > & angle_b )
staticconstexpr

Less-than-or-equal comparison operator.

Parameters
[in]angle_aThe first instance to compare.
[in]angle_bThe second instance to compare.
Returns
True if the first parameter is less than or equal to the second.

Definition at line 71 of file AngleFunctions.h.

References cast().

◆ operator==()

template<uint01 t_dims, class t_type>
bool operator== ( const Vector< t_dims, t_type > & vec_a,
const Vector< t_dims, t_type > & vec_b )
constexpr

Equality operator.


Performs the '==' operation on the value in each dimension.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vec_a - The first instance to compare. vec_b - The second instance to compare.

Returns
True if the value in each vector dimension is considered equivalent.

Definition at line 649 of file Vector.hpp.

◆ operator>() [1/3]

template<class t_type_a, class t_type_b>
constexpr bool operator> ( const Angle< t_type_a > & angle_a,
const Angle< t_type_b > & angle_b )
staticconstexpr

Greater-than comparison operator.

Parameters
[in]angle_aThe first instance to compare.
[in]angle_bThe second instance to compare.
Returns
True if the first parameter is greater than to the second.

Definition at line 44 of file AngleFunctions.h.

References cast().

◆ operator>() [2/3]

template<uint01 t_dims, class t_type>
bool operator> ( const Vector< t_dims, t_type > & v1,
const Vector< t_dims, t_type > & v2 )
constexpr

Greater-than comparison operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: v1 - The first instance to compare. v2 - The second instance to compare.

Returns
True if the first parameter is greater than to the second.

Definition at line 783 of file VectorFunctions.hpp.

◆ operator>() [3/3]

template<uint01 vec_1_size, uint01 vec_2_size, class t_type>
bool operator> ( const Vector< vec_1_size, t_type > & v1,
const Vector< vec_2_size, t_type > & v2 )
constexpr

Greater-than comparison operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: v1 - The first instance to compare. v2 - The second instance to compare.

Returns
True if the first parameter is greater than to the second.

Definition at line 709 of file VectorFunctions.hpp.

References getMin().

◆ operator>=() [1/3]

template<class t_type_a, class t_type_b>
constexpr bool operator>= ( const Angle< t_type_a > & angle_a,
const Angle< t_type_b > & angle_b )
staticconstexpr

Greater-than-or-equal comparison operator.

Parameters
[in]angle_aThe first instance to compare.
[in]angle_bThe second instance to compare.
Returns
True if the first parameter is greater than or equal to the second.

Definition at line 62 of file AngleFunctions.h.

References cast().

◆ operator>=() [2/3]

template<uint01 t_dims, class t_type>
bool operator>= ( const Vector< t_dims, t_type > & v1,
const Vector< t_dims, t_type > & v2 )
constexpr

Greater-than-or-equal comparison operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: v1 - The first instance to compare. v2 - The second instance to compare.

Returns
True if the first parameter is greater than or equal to the second.

Definition at line 757 of file VectorFunctions.hpp.

◆ operator>=() [3/3]

template<uint01 vec_1_size, uint01 vec_2_size, class t_type>
bool operator>= ( const Vector< vec_1_size, t_type > & v1,
const Vector< vec_2_size, t_type > & v2 )
constexpr

Greater-than-or-equal comparison operator.

Author: Tyler Parke

Date: 2017-11-13

Parameters: v1 - The first instance to compare. v2 - The second instance to compare.

Returns
True if the first parameter is greater than or equal to the second.

Definition at line 671 of file VectorFunctions.hpp.

References getMin().

◆ operator|()

uint01 operator| ( const TextAlignment & a,
const TextAlignment & b )
inline

Bitwise OR operator for combining TextAlignment flags.

Parameters
[in]aThe first alignment flag.
[in]bThe second alignment flag.
Returns
The combined alignment flags as a uint01.

Definition at line 336 of file Font.h.

References cast().

◆ PDFLicense()

String PDFLicense ( )
static

The license for using libhuru, used to write PDF files.


Definition at line 8 of file PDFLicense.h.

◆ PI()

template<class t_float_type>
constexpr t_float_type PI ( )
staticconstexpr

Returns the value of PI to a given precision.


Returns
The value of PI (~3.1415...).

Definition at line 68 of file Angle.h.

References cast().

Referenced by Angle< t_type >::as(), FFTLogic< t_type >::dft(), FFTLogic< t_type >::fft(), and SE3Quat::log().

◆ project() [1/2]

Vector2< g_type > project ( const Vector3< g_type > & v)
inline

Projects a 3D point to 2D by dividing by the z component.

Parameters
[in]vThe 3D point.
Returns
The 2D projected point.

Definition at line 50 of file se3_ops.hpp.

Referenced by ImageModelDialog::ImageModelDialog(), ProjectEditor::ProjectEditor(), and VLCVideoModelViewer::VLCVideoModelViewer().

◆ project() [2/2]

Vector3< g_type > project ( const Vector4< g_type > & v)
inline

Projects a 4D homogeneous point to 3D by dividing by the w component.

Parameters
[in]vThe 4D homogeneous point.
Returns
The 3D projected point.

Definition at line 59 of file se3_ops.hpp.

◆ PullAsBGR()

RGBColor PullAsBGR ( const VideoFrameDetails & texture,
int Text_Index,
const uint01 * memory )
inlinestatic

Extract an RGB color from a pixel in BGR byte order.

Parameters
[in]textureFrame format details.
[in]Text_IndexPixel index.
[in]memoryRaw pixel data.
Returns
The extracted RGB color.

Definition at line 64 of file RasterHelperFunctions.h.

References VideoFrameDetails::bytes_per_pixel.

Referenced by PullRGB().

◆ PullAsRGB()

RGBColor PullAsRGB ( const VideoFrameDetails & texture,
int Text_Index,
const uint01 * memory )
inlinestatic

Extract an RGB color from a pixel in RGB byte order.

Parameters
[in]textureFrame format details.
[in]Text_IndexPixel index.
[in]memoryRaw pixel data.
Returns
The extracted RGB color.

Definition at line 54 of file RasterHelperFunctions.h.

References VideoFrameDetails::bytes_per_pixel.

Referenced by PullRGB().

◆ PullAsY8()

RGBColor PullAsY8 ( const VideoFrameDetails & texture,
int Text_Index,
const uint01 * memory )
inlinestatic

Extract an RGB color from an 8-bit grayscale pixel.

Parameters
[in]textureFrame format details.
[in]Text_IndexPixel index.
[in]memoryRaw pixel data.
Returns
The grayscale value as an RGB color.

Definition at line 74 of file RasterHelperFunctions.h.

References VideoFrameDetails::bytes_per_pixel.

Referenced by PullRGB().

◆ PullAsYUV()

RGBColor PullAsYUV ( const VideoFrameDetails & ,
int Text_Index,
const uint01 * memory )
inlinestatic

Convert a YUV 4:2:2 pixel to an RGBColor.

Parameters
[in]Text_IndexThe pixel index in the frame.
[in]memoryRaw YUV pixel data.
Returns
The converted RGB color.

Definition at line 21 of file RasterHelperFunctions.h.

References clip().

Referenced by PullRGB().

◆ PullDepth()

fltp04 PullDepth ( const VideoFrameDetails & texture,
int index,
const uint01 * memory )
inlinestatic

Extract a depth value from a pixel, handling 1/2/4/8 byte depths.

Parameters
[in]textureFrame format details including bytes per pixel.
[in]indexPixel index.
[in]memoryRaw depth data.
Returns
The depth value as a float.

Definition at line 102 of file RasterHelperFunctions.h.

References VideoFrameDetails::bytes_per_pixel, and cast().

◆ PullRGB()

RGBColor PullRGB ( const VideoFrameDetails & texture,
int index,
const uint01 * memory )
inlinestatic

Extract an RGB color from a pixel, dispatching to the correct format converter.

Parameters
[in]textureFrame format details including the pixel format.
[in]indexPixel index.
[in]memoryRaw pixel data.
Returns
The converted RGB color.

Definition at line 85 of file RasterHelperFunctions.h.

References e_bgr, e_rgb, e_y8, e_yuv, VideoFrameDetails::format, PullAsBGR(), PullAsRGB(), PullAsY8(), and PullAsYUV().

◆ quantize() [1/5]

template<uint01 t_dims, class t_angle_type>
Vector< t_dims, Angle< t_angle_type > > quantize ( const Vector< t_dims, Angle< t_angle_type > > & value,
Angle< t_angle_type > d = Angle<t_angle_type>(DEGREES, 1.0) )
constexpr

Quantizes a Vector of Angles to the nearest multiple of a given step size.

Parameters
[in]valueThe Vector of Angles to quantize.
[in]dThe quantization step size. Defaults to 1 degree.
Returns
The quantized Vector of Angles.

Definition at line 991 of file AngleFunctions.h.

References DEGREES, INTERNAL_ANGLE, AngleDefinitions::Orientation(), and quantize().

Referenced by quantize(), and quantize().

◆ quantize() [2/5]

template<uint01 t_dims, class t_angle_type>
Vector< t_dims, Angle< t_angle_type > > quantize ( const Vector< t_dims, Angle< t_angle_type > > & value,
Vector< t_dims, Angle< t_angle_type > > d = Vector<t_dims, Angle<t_angle_type>>(Angle<t_angle_type>(DEGREES, 1.0)) )
constexpr

Quantizes a Vector of Angles to the nearest multiple of per-axis step sizes.

Parameters
[in]valueThe Vector of Angles to quantize.
[in]dThe Vector of per-axis quantization step sizes. Defaults to 1 degree per axis.
Returns
The quantized Vector of Angles.

Definition at line 1003 of file AngleFunctions.h.

References DEGREES, INTERNAL_ANGLE, AngleDefinitions::Orientation(), and quantize().

◆ quantize() [3/5]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > quantize ( const Vector< t_dims, t_type > & value,
t_type d = cast<t_type>(1) )
constexpr

Quantizes.

Author: Tyler Parke

Date: 2017-11-13

Parameters: a - A Vector<t_dims,t_type> to process. d - (Optional) A t_type to process.

Returns
A Vector<t_dims,t_type>

Definition at line 699 of file Vector.hpp.

References cast().

◆ quantize() [4/5]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > quantize ( const Vector< t_dims, t_type > & value,
Vector< t_dims, t_type > d = Vector<t_dims, t_type>(1) )
constexpr

Quantizes the vector such that it is equal to the closest multiple of a second given vector.


Definition at line 708 of file Vector.hpp.

◆ quantize() [5/5]

template<typename t_type>
t_type quantize ( t_type value,
t_type d = cast<t_type>(1) )
constexpr

Rounds the value to the nearest multiple given and returns that value.

For example quantize(.8, .25) would return .75. quantize(.8, .1) would return .8 and quantize(.8, .5) would return 1.0 Author: Tyler Parke

Date: 2017-11-05

Parameters
[in]valueA t_type to process.
[in]d(Optional) A t_type to process. Default value is 1.
Returns
The nearest multiple from the given input.

Definition at line 134 of file BaseFunctions.hpp.

References cast().

◆ rcast()

template<class t_to, class t_from>
t_to & rcast ( t_from & value)
constexpr

Casts the given value.

Is equivalent to reinterpret_cast except allows for the option of special cases by specializing the template

Allows any pointer to be converted into any other pointer type. Also allows any integral type to be converted into any pointer type and vice versa.

Author: Tyler Parke

Date: 2017-09-04

Parameters
[in]value- The value to cast.
Returns
The value cast to the specified type.

Definition at line 431 of file BaseValues.hpp.

Referenced by PropertyInterface< NDPO >::Get(), TableColumn::get(), TableColumnColorType::get(), PropertyInterface< NDPN >::Set(), PropertyInterface< NDPO >::Set(), String::ToHex(), and String::ToHexVec().

◆ RightJacobianSO3() [1/2]

Eigen::Matrix3< g_type > RightJacobianSO3 ( const Eigen::Vector3< g_type > & v)

Computes the right Jacobian of SO3.

Parameters
[in]vThe rotation vector.
Returns
The 3x3 right Jacobian.

◆ RightJacobianSO3() [2/2]

Eigen::Matrix3< g_type > RightJacobianSO3 ( g_type x,
g_type y,
g_type z )

Computes the right Jacobian of SO3 from axis components.

Parameters
[in]xRotation axis x component.
[in]yRotation axis y component.
[in]zRotation axis z component.
Returns
The 3x3 right Jacobian.

◆ sign() [1/2]

template<typename T>
int sign ( T x)
inline

sign function.

Returns
the sign of x. +1 for x > 0, -1 for x < 0, 0 for x == 0

Definition at line 79 of file misc.h.

◆ sign() [2/2]

template<typename t_type>
t_type sign ( t_type value)
constexpr

A simple function that returns 1 for all values greater than or equal to 0 and -1 for all values less than 0.

Author: Tyler Parke

Date: 2017-11-05

Parameters
[in]value- The value to check the sign of.
Returns
1 for all values greater than or equal to 0 and -1 for all values less than 0.

Definition at line 151 of file BaseFunctions.hpp.

References cast().

◆ sin() [1/3]

template<class t_type>
std::enable_if< ObjectInfo< t_type >::Float, fltp08 >::type sin ( const Angle< t_type > & angle)

Performs sine operation on the given angle.

Parameters
[in]angleThe angle to perform sin on.
Returns
The sine of the given angle

Definition at line 104 of file AngleFunctions.h.

◆ sin() [2/3]

template<class t_type>
std::enable_if<!ObjectInfo< t_type >::Float, fltp08 >::type sin ( const Angle< t_type > & angle)

Performs optimized sine operation on the given angle using pre-computed lookup table for optimal speed.

Parameters
[in]angleThe angle to perform sin on.
Returns
The sine of the given angle

Definition at line 79 of file AngleFunctions.h.

References cast(), Angle< t_type >::INDEX_PI, and s_index_sin.

Referenced by Sim3::Sim3(), average_angle(), TransformationEstimationPointToPlaneLLS< t_type >::constructTransformationMatrix(), cos(), SE3Quat::exp(), SE3mat::ExpSO3(), Extruder::ExtrudeRealThickness(), Sim3::log(), SE3mat::LogSO3(), AngleDefinitions::NormalToOrientation(), Equation< t_type >::solve(), and tan().

◆ sin() [3/3]

template<class t_type>
t_type sin ( const t_type & angle)

Performs sine operation on the given number assumed to be in radians.

Parameters
[in]angleThe number, in radians to perform sin on.
Returns
The sine of the given angle

Definition at line 114 of file AngleFunctions.h.

◆ Skew()

Eigen::Matrix3< g_type > Skew ( const Eigen::Vector3< g_type > & w)

Computes the skew-symmetric matrix of a 3D vector.

Parameters
[in]wThe 3D vector.
Returns
The 3x3 skew-symmetric matrix.

◆ skew()

Matrix3< g_type > skew ( const Vector3< g_type > & v)
inline

Computes the 3x3 skew-symmetric matrix from a 3D vector.

Parameters
[in]vThe input vector.
Returns
The skew-symmetric matrix.

Definition at line 28 of file se3_ops.hpp.

Referenced by Sim3::Sim3(), SE3Quat::adj(), GravityIntersection::calculateIntersection(), SE3Quat::exp(), SE3Quat::log(), and Sim3::log().

◆ SortAboutValue() [1/2]

template<class t_type, class t_node_type>
uint04 SortAboutValue ( uint04 value_index,
const Buffer< t_node_type > & points,
Buffer< uint04 > & indices,
uint04 start,
uint04 end,
uint01 dimension )

Sorts all incoming indices within the given range such that the resulting index matrix will have values less than the index first, and greater than the index second.


Definition at line 349 of file Median.hpp.

Referenced by ApxNthElement().

◆ SortAboutValue() [2/2]

template<class t_type, class t_buffer_type, class t_bounds_type>
uint04 SortAboutValue ( uint04 value_index,
const t_buffer_type & points,
Buffer< uint04 > & indices,
uint04 start,
uint04 end,
uint01 dimension,
t_bounds_type & bounds_left,
t_bounds_type & bounds_right )

Sorts all incoming indices within the given range such that the resulting index matrix will have values less than the index first, and greater than the index second.


Definition at line 383 of file Median.hpp.

◆ sqrt() [1/2]

◆ sqrt() [2/2]

template<uint01 t_dims, class t_type>
Vector< t_dims, t_type > sqrt ( const Vector< t_dims, t_type > & vector)

Sqrts the given vector.

Author: Tyler Parke

Date: 2017-11-13

Parameters: vector - The vector.

Returns
A Vector<t_dims,t_type>

Definition at line 1199 of file VectorFunctions.hpp.

◆ StaticHeapMedian()

template<uint01 t_bucket_size, class t_buffer_type, class t_container_type>
uint04 StaticHeapMedian ( const t_buffer_type & points,
const t_container_type & indices,
uint04 start,
uint04 step,
uint01 dimension )

Return the median value in a Buffer of points based on a given dimension.


Definition at line 178 of file Median.hpp.

Referenced by ApxMedian().

◆ tan() [1/3]

template<class t_type>
std::enable_if< ObjectInfo< t_type >::Float, fltp08 >::type tan ( const Angle< t_type > & angle)

Performs tan operation on the given angle.

Parameters
[in]angleThe angle to perform tan on.
Returns
The tangent of the given angle

Definition at line 166 of file AngleFunctions.h.

◆ tan() [2/3]

template<class t_type>
std::enable_if<!ObjectInfo< t_type >::Float, fltp08 >::type tan ( const Angle< t_type > & angle)

Performs optimized tangent operation on the given angle using pre-computed lookup table for optimal speed.

Parameters
[in]angleThe angle to perform tangent on.
Returns
The tangent of the given angle

Definition at line 156 of file AngleFunctions.h.

References cos(), and sin().

Referenced by MatrixDefinitions< t_type >::FrustumTransform(), AngleDefinitions::Inclination(), SE3Quat::log(), and Equation< t_type >::solve().

◆ tan() [3/3]

template<class t_type>
t_type tan ( const t_type & angle)

Performs tan operation on the given angle assumed to be in radians.

Parameters
[in]angleThe angle, in radians, to perform tan on.
Returns
The tangent of the given angle

Definition at line 177 of file AngleFunctions.h.

◆ Throw()

void Throw ( StringView failure_message,
const char * originator = nullptr,
const char * sourceLocation = nullptr )
inline

Throw an Exception with an OpenXR error message, optional originator, and source location.

Parameters
[in]failure_messageThe error description.
[in]originatorOptional string identifying the failing expression.
[in]sourceLocationOptional file and line string.

Definition at line 42 of file XRErrorHandling.h.

Referenced by ThrowXrResult().

◆ ThrowXrResult()

void ThrowXrResult ( XrResult res,
const char * originator = nullptr,
const char * sourceLocation = nullptr )
inline

Throw an Exception for a failed XrResult.

Parameters
[in]resThe failed XrResult code.
[in]originatorOptional string identifying the failing call.
[in]sourceLocationOptional file and line string.

Definition at line 73 of file XRErrorHandling.h.

References Throw().

Referenced by CheckXrResult().

◆ ToTypeAngle()

template<class t_new_type, uint01 t_dims, class t_angle_type>
Vector< t_dims, Angle< t_new_type > > ToTypeAngle ( const Vector< t_dims, Angle< t_angle_type > > & old)
constexpr

Converts a Vector of one angle to a different container type.

Parameters
[in]oldThe value to change into a different angle container
Returns
The same angle with a new container type

Definition at line 765 of file AngleFunctions.h.

◆ TransformBoundsAndClipNearPlane()

template<class t_type, class t_vertex>
Bounds< 3, t_type > TransformBoundsAndClipNearPlane ( const Bounds< 3, t_type, t_vertex > & bounds,
const Matrix< t_type, 4, 4 > & m )

Transforms 3D bounds by a 4x4 matrix and clips edges against the near plane (w=0).

Transforms all eight corners of the bounding box, then iterates over the twelve edges. Edges that cross the near plane (w=0) are clipped to produce valid projected points. This prevents artifacts from vertices behind the camera in perspective projections.

Parameters
[in]boundsThe 3D bounds to transform and clip.
[in]mThe 4x4 projection or view-projection matrix.
Returns
The transformed and near-plane-clipped 3D bounds.

Definition at line 414 of file MatrixFunctions.h.

References Bounds< t_dims, t_type, t_vertex >::addToBounds(), and clip().

◆ Union()

template<class t_type, class t_memory_manager>
Buffer< t_type, t_memory_manager > Union ( const Buffer< t_type, t_memory_manager > & a,
const Buffer< t_type, t_memory_manager > & b )

Computes the union of two buffers, removing duplicate elements.

Parameters
[in]aThe first buffer.
[in]bThe second buffer.
Returns
A buffer containing all unique elements from both input buffers.

Definition at line 175 of file BufferFunctions.h.

◆ unproject() [1/2]

Vector3< g_type > unproject ( const Vector2< g_type > & v)
inline

Unprojects a 2D point to 3D by appending z=1.

Parameters
[in]vThe 2D point.
Returns
The 3D point with z=1.

Definition at line 69 of file se3_ops.hpp.

◆ unproject() [2/2]

Vector4< g_type > unproject ( const Vector3< g_type > & v)
inline

Unprojects a 3D point to 4D homogeneous by appending w=1.

Parameters
[in]vThe 3D point.
Returns
The 4D homogeneous point with w=1.

Definition at line 78 of file se3_ops.hpp.

◆ vkExecute()

VkResult vkExecute ( VkResult result,
const char * error_message )
extern

Executes a Vulkan command and handles the results, throwing an exception if necessary.

Parameters
[in]resultThe VkResult to check.
[in]error_messageThe error message to use if the result indicates failure.
Returns
The VkResult passed in.

Variable Documentation

◆ camera_fov

Angle<fltp08> camera_fov

This class generates random bias and noise for modeling a 9-DoF IMU.

Parameters can be derived from spec sheets or allan variance analysis. Each axis of the IMU is treated independently. Once initialized, temperature or other variables can be modified. Eye space error

Definition at line 22 of file TotalStationNoiseSimulator.h.

◆ fast_atof_table

const fltp08 fast_atof_table[20]
constexpr
Initial value:
= {
0.0,
0.1,
0.01,
0.001,
0.0001,
0.00001,
0.000001,
0.0000001,
0.00000001,
0.000000001,
0.0000000001,
0.00000000001,
0.000000000001,
0.0000000000001,
0.00000000000001,
0.000000000000001,
0.0000000000000001,
0.00000000000000001,
0.000000000000000001,
0.0000000000000000001,
}

Data for quick text to number lookup.


Definition at line 41 of file NumberParser.hpp.