PIP 5.9.0
Platform-Independent Primitives
Loading...
Searching...
No Matches
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
 CPIValueTree::AttributeThe Attribute struct contains constants for commonly used attribute names
 CPIBinaryLog::BinLogIndexIndexed location of a record inside a log file
 CPIBinaryLog::BinLogInfoSummary information about a log file and its indexed record types
 CPIBinaryLog::BinLogRecordInfoStatistics for records sharing the same record ID
 CPIOpenCL::BufferOpenCL buffer wrapper optionally bound to a host container
 CPIScreenTypes::CellOne character cell of the console screen
 CPIScreenTypes::CellFormatPacked character formatting used by screen cells
 CPIChunkStream::Chunk< T >Nested template struct for chunk data
 CPIChunkStream::ChunkConst< T >Nested template struct for constant chunk data
 CPIUnits::Class::Internal::ClassBaseBase interface implemented by every unit family descriptor
  CPIUnits::Class::AngleDescriptor of angle units and their public type identifiers
  CPIUnits::Class::DistanceDescriptor of distance units and their public type identifiers
  CPIUnits::Class::InformationDescriptor of information units and their public type identifiers
  CPIUnits::Class::MassDescriptor of mass units and their public type identifiers
  CPIUnits::Class::PressureDescriptor of pressure units and their public type identifiers
  CPIUnits::Class::TemperatureDescriptor of temperature units and their public type identifiers
  CPIUnits::Class::TimeDescriptor of time and frequency units and their public type identifiers
 CPICodeInfo::ClassInfoClass or struct information
 CPIClientServer::ClientBaseBase class for client and server-side client communication. Provides TCP connection management, diagnostics, and packet streaming capabilities
  CPIClientServer::ClientActive client connection that initiates a connection to a server. Client implementation for connecting to servers. Provides TCP connection to remote server with diagnostics and packet streaming support
  CPIClientServer::ServerClientServer-side representation of one accepted client connection. Server-side client representation. Created and managed by Server. Used to communicate with remote clients connected to the server
 CPIVector2D< T >::ColConstProxy class representing a single read-only column in a PIVector2D. Returned by const col(). Provides const access to column elements
  CPIVector2D< T >::ColProxy class representing a single column in a PIVector2D for modification. Objects of this class are returned by non-const col(). They provide column-wise access and operations similar to Row
 CPICollection::CollectionAdderHelper that registers object in collection during static initialization
 CPIVariantTypes::Color32-bits color
 CcomplexSTL class
 CPIUSB::ConfigurationUSB configuration description with available interfaces
 CPIObject::ConnectionHandle of one connection between a source object and a destination object or functor
 CPISet< T >::const_iteratorConstant iterator over PISet elements
 CPIOpenCL::ContextOpenCL context wrapper that owns created programs and buffers
 CPIDir::CurrentDirOverriderTemporarily change working directory
 CPIUSB::DescriptorTop-level USB device descriptor collected during opening
 CPIOpenCL::DeviceDescription of a discovered OpenCL device
 CPISerial::DeviceInfoInformation about serial device
 CPIVariantTypes::DirDirectory description
 CPIUSB::EndpointParsed USB endpoint descriptor
 CPICodeParser::EntityParsed class, struct or namespace
 CPIConfig::EntryNode of the parsed configuration tree
 CPICodeParser::EnumParsed enumeration
 CPIVariantTypes::EnumCollection of PIVariantTypes::Enumerator
 CPIVariantTypes::EnumeratorName-value pair
 CPICodeInfo::EnumeratorInfoEnumerator information
 CPICodeParser::EnumeratorInfoParsed enumerator entry
 CPICodeInfo::EnumInfoEnum information
 CPIHIDevice::EventInput event produced by PIHIDevice
 CPIVariantTypes::FileFile location description
 CPIFile::FileInfoLocal file or directory information
  CPIFileTransfer::PFTFileInfoFile-system entry description extended with destination relative path
 CPISystemTime::FrequencyFrequency type
 CPICodeInfo::FunctionInfoMethod information
 CFunctionType< T >Template struct for extracting function type from callable objects
 CFunctionType< Ret(Class::*)(Args...) const >Specialization for member function pointers
 CPIVector2D< T >::IndexIndex structure for 2D array elements (row, column)
 CPIEthernet::InterfacePublic descriptor of a system network interface
 CPIUSB::InterfaceUSB interface description with its endpoints
 CPIUnits::Class::InternalInternal registry and base interfaces for unit families
 CPIVariantTypes::IODeviceVariant description used to create or configure PIIODevice
 Cis_complex< T >Type trait that reports whether T is a specialization of std::complex
 Cis_complex< std::complex< T > >Specialization for complex types
 CPIOpenCL::KernelOpenCL kernel wrapper with reflected argument metadata
 CPIOpenCL::KernelArgReflected description of a kernel argument
 CPIKbdListener::KeyEventInformation about one keyboard event
 CPICodeParser::MacroParsed function-like macro
 CPIRegularExpression::MatcherMatch result and iterator state
 CPICodeParser::MemberParsed member declaration or function signature
 CPIHTTP::MessageConstImmutable HTTP message view with accessors for method, path, headers and body
  CPIHTTP::MessageMutableMutable HTTP message with setters and argument/header modifiers
 CPIMQTT::MessageConstImmutable MQTT message
  CPIMQTT::MessageMutableMutable MQTT message
 CPISystemInfo::MountInfoMount point information structure
 CPIKbdListener::MouseEventInformation about one mouse event
  CPIKbdListener::WheelEventInformation about one mouse wheel event
 CPICout::NotifierClass for emit notifications of PICout
 CPIBaseTransfer::PacketHeaderCommon header placed before every protocol packet
 CPIBaseTransfer::PartLogical fragment description used to split data into packets
 CPIPeer::PeerInfo::PeerAddressNetwork address of a peer endpoint
 CPIPeer::PeerInfoPublic information about a discovered peer
 CPIFile::FileInfo::PermissionsLocal file or directory permissions
 CPIFileTransfer::PFTHeaderCustom packet header used by the file-transfer protocol
 CPIBinaryStream< P >CRTP interface for binary serialization streams
 CPIBinaryStream< PIByteArray >
  CPIByteArrayThe PIByteArray class provides an array of bytes with efficient memory management and various manipulation operations
 CPIBinaryStream< PIIOBinaryStream >
  CPIIOBinaryStreamPIBinaryStream adapter over a PIIODevice
 CPIBinaryStreamTrivialRef< P >Helper wrapper used to detect default trivial streaming operators. Helper class to detect default operators
 CPIBitArrayThe PIBitArray class provides a space-efficient array of bits
 CPICharSingle UTF-16 character
 CPIChunkStreamClass for binary de/serialization
 CPICLICommand-line argument parser class The PICLI class provides convenient parsing of command-line arguments. It supports short keys (e.g., -c), full keys (e.g., –console), and arguments with/without values
 CPICloudBaseBase class for cloud client and server
  CPICloudClientPIIODevice implementation for a logical PICloud client
  CPICloudServerPIIODevice implementation for a logical PICloud server
 CPICodeParserParser of C/C++ declarations used by the code model tools
 CPICollectionGlobal collection of PIObject-based instances grouped by name
 CPIConditionVariableCondition variable used together with external PIMutex
 CPIConfigParser and writer for configuration files with tree structure supportPIConfig provides functionality to read, write and manipulate configuration files in a tree-like structure. Supports dotted paths, INI-style section prefixes, multiline values and include entries resolved during parsing
 CPIConstCharsC-String class
 CPICoutUniversal output to console class. This class provides a universal output interface with support for various data types, formatting options, and multiple output devices (console, buffer)
 CPICRC< L, N >Generic table-driven CRC calculator for a polynomial width L
 CPICryptClass for encrypting and decrypting data. Class providing cryptographic operations using the libsodium library, including encryption, decryption, hashing, and digital signatures. It supports both instance-based and static method-based operations. Requires libsodium library initialization. All methods are thread-safe when using different keys
 CPIDateCalendar date
 CPIDateTimeCalendar date and time
 CPIDeque< T >Sequence two-way linear container - dynamic size array of any type
  CPIQueue< T >Queue container built on top of PIDeque
   CPIBlockingQueue< T >Thread-safe queue that supports blocking operations - waits for space when storing and waits for element when retrieving
 CPIDeque< Entry >
  CPIQueue< Entry >
 CPIDeque< PIByteArray >
  CPIQueue< PIByteArray >
 CPIDeque< PIHTTPClient * >
  CPIQueue< PIHTTPClient * >
 CPIDeque< PIPair< PIByteArray, ullong > >
  CPIQueue< PIPair< PIByteArray, ullong > >
 CPIDeque< PIString >
  CPIQueue< PIString >
  CPIStringListBased on PIDeque<PIString> strings list
 CPIDeque< std::function< void()> >
  CPIQueue< std::function< void()> >
 CPIDeque< Task >
  CPIQueue< Task >
 CPIDeque< Tin >
  CPIQueue< Tin >
 CPIDigestOne-shot digest API for supported algorithms
 CPIDirLocal directory
 CPIEllipsoidModelReference ellipsoid parameters used by geographic calculations. This module provides Earth ellipsoid models used in geodesy and navigation systems. It includes standard models like WGS84, PZ90, GPS, and Krasovskiy
 CPIEthUtilBaseBase helper that adds optional packet encryption to transport utilities
  CPIBroadcastMulti-channel sender and receiver over multicast, broadcast and loopback endpoints
  CPIStreamPackerConfigConfiguration for PIStreamPacker packet framing
   CPIClientServer::ServerTCP server implementation for client-server communication. Accepts incoming connections and manages multiple clients with configurable factory for client instance creation
   CPIStreamPackerSimple packet wrapper around any PIIODevice Provides packet framing and deframing for data transmission over any PIIODevice implementation
 CPIEvaluatorExpression evaluator with reusable compiled instructions
 CPIFlags< Enum >The PIFlags class is a template container for bit flags with various bitwise operations and comparison operators
 CPIHIDeviceInfoInformation about a discovered HID device
 CPIHTTPClientAsynchronous HTTP client request with completion callbacks
 CPIIntrospectionContainersTypeMetadata describing one tracked container element type
 CPIJSONJSON tree node
 CPILibraryRun-time library
 CPILine< Type >Two-dimensional line segment
 CPILuaProgramHelper object for loading scripts and exposing the embedded Lua state through LuaBridge. Provides interface for loading and executing Lua scripts using LuaBridge
 CPIMap< Key, T >Map of unique keys and associated values
 CPIMap< const void *, uchar >
  CPISet< const void * >
 CPIMap< int, uchar >
  CPISet< int >
 CPIMap< PIObject *, uchar >
  CPISet< PIObject * >
 CPIMap< PIString, uchar >
  CPISet< PIString >
 CPIMap< T, uchar >
  CPISet< T >Set of unique values
 CPIMap< uint, uchar >
  CPISet< uint >
 CPIMapIterator< Key, T >Java-style iterator for PIMap
 CPIMapIteratorConst< Key, T >Java-style iterator for PIMap
 CPIMapIteratorConstReverse< Key, T >Java-style reverse iterator for PIMap
 CPIMapIteratorReverse< Key, T >Java-style reverse iterator for PIMap
 CPIMathMatrixT< Rows, Cols, Type >Fixed-size math matrix. Stores matrix data inline and performs dimension checks at compile time where possible
 CPIMathSolverNumerical solver for transfer-function models
 CPIMathVector< Type >Template class for dynamic-size mathematical vector Provides vector operations including arithmetic, normalization, angles, cross product, and dot product for dynamic-size vectors
 CPIMathVectorT< Size, Type >Fixed-size mathematical vector with compile-time size Provides vector operations including arithmetic, normalization, angles, cross product, and dot product
 CPIMathVectorT< 3u, double >
  CPIGeoPositionGeographic position represented in one of several coordinate systems. This class provides functionality for storing and converting between different coordinate systems including geodetic, geocentric, Cartesian, and spherical coordinates. It supports various ellipsoid models for Earth representation
 CPIMemoryBlockHelper struct to store and restore custom blocks of data to/from PIBinaryStream
 CPIMutexMutex for mutual exclusion between threads
 CPIMutexLockerScope guard that locks a PIMutex in constructor and unlocks it in destructor
 CPINetworkAddressNetwork address, IP and port
 CPINonTriviallyCopyableInherit from this class to make your class non-trivially copyable
 CPIObjectBase class for objects that declare events, event handlers and registered methods
  CMicrohttpdServerBase HTTP server with request dispatch and optional basic authentication
   CPIHTTPServerHTTP server that routes requests by method and path pattern
  CPIAuthPeer authentication state machine with signed key exchange
  CPIBaseTransferBase transport for reliable fixed-size packet exchange over an external channel
   CPIDataTransferClass for send and receive PIByteArray via PIBaseTransfer
   CPIFileTransferClass for sending and receiving files and directories via PIBaseTransfer
  CPIConnectionRoutes data between shared devices, packet extractors, channels and periodic senders
  CPIIODeviceBase class for input/output devices
   CPIBinaryLogClass for writing and reading binary data to/from log files, with support for playback in different modes
   CPICANCAN device based on interface name and frame identifier
   CPICloudClientPIIODevice implementation for a logical PICloud client
   CPICloudServerPIIODevice implementation for a logical PICloud server
   CPICloudServer::ClientPer-client PIIODevice exposed by PICloudServer
   CPIEthernetPIIODevice implementation for UDP sockets, TCP clients and TCP servers
   CPIFileLocal file
   CPIIOByteArrayPIIODevice wrapper around PIByteArray
   CPIIOStringPIIODevice wrapper around PIString
   CPIPackedTCPTCP device wrapper that exposes framed packets through the PIIODevice API.The PIPackedTCP class provides a TCP client/server device with automatic data packing/unpacking using PIStreamPacker. It supports both client and server roles with reliable byte-stream transmission over TCP connections
   CPIPacketExtractorExtracts packets from data produced by a child PIIODevice. The PIPacketExtractor class provides packet recognition from data stream using various algorithms
   CPIPeerNamed network peer built on top of PIIODevice
   CPISPISPI device with configurable speed, word size and clock mode
   CPISerialSerial device
   CPISharedMemoryShared memory
   CPITransparentDevicePIIODevice that returns written packets through read()
   CPIUSBUSB implementation of PIIODevice
  CPIScreenTileBase tile in the console screen tree. Base class for all screen tiles providing layout and event handling
   CTileButtonPush button tile
   CTileButtonsGroup of selectable buttons arranged in one tile
   CTileCheckCheck box tile
   CTileInputSingle-line editable text input tile
   CTileListScrollable list tile with optional row selection
    CTilePICoutLog view tile backed by the global PICout buffer
   CTileProgressProgress indicator tile
   CTileScrollBarScroll bar tile used by list-like widgets
   CTileSimpleSimple text tile with per-row formatting
  CPIStreamPackerSimple packet wrapper around any PIIODevice Provides packet framing and deframing for data transmission over any PIIODevice implementation
  CPIThreadThread object that executes work on a dedicated system thread
   CPIBroadcastMulti-channel sender and receiver over multicast, broadcast and loopback endpoints
   CPIGPIOGPIO support library
   CPIGrabberBase< T >Base polling grabber thread with a pending queue, recording virtual methods, and a last-item snapshot
   CPIHIDeviceProvides access to HID (Human Interface Device) devices such as game controllers, joysticks, and other input devices
   CPIKbdListenerConsole input listener for keyboard and mouse events
   CPILogHigh-level log
   CPIPipelineThread< Tin, Tout >Thread-based pipeline template class for multi-stage data processing
   CPIProcessClass for managing external processes
   CPIScreenConsole screen manager with tile layout, drawing, and input routing
   CPISingleApplicationSingle-instance application control
   CPISystemMonitorProcess and thread resource monitoring. This module provides process and system resource monitoring capabilities including CPU usage, memory consumption, and thread statistics. It supports cross-platform monitoring on Linux, Windows, macOS, and ESP platforms
   CPITerminalVirtual terminal that runs a shell and mirrors its screen into a cell buffer. Provides terminal emulation for reading console input and output. Supports ANSI escape sequences for cursor movement, colors, and text formatting
  CPIThreadPoolWorkerFixed-size pool of worker threads for generic-purpose tasks
  CPITimerPeriodic timer that emits ticks from an internal worker thread
   CPIDiagnosticsConnection diagnostics for packet frequency, throughput and receive quality This class provides connection quality diagnostics based on packet reception statistics
 CPIOpenCLEntry point for the OpenCL wrapper API
 CPIPair< Type0, Type1 >Class template that provides a way to store two heterogeneous objects as a single unit
 CPIParseHelper< Key >Maps packet keys to handlers and deserializes payloads before invocation
 CPIPluginInfoMetadata collected for one plugin or for the host application
 CPIPluginInfoStorageStorage of plugin metadata for the application and loaded plugins
 CPIPluginLoaderPlugin loader. Handles dynamic library loading, symbol resolution, and plugin lifecycle management
 CPIPoint< Type >Two-dimensional point
 CPIPropertyStorageThis class provides key-value properties storage
 CPIProtectedVariable< T >Thread-safe variable template class
 CPIQuaternionQuaternion for representing 3D rotations and orientations
 CPIReadLockerScope guard that acquires reader access in constructor and releases it in destructor
 CPIReadWriteLockSynchronization primitive that allows concurrent readers and exclusive writer access
 CPIRect< Type >The PIRect class provides a two-dimensional rectangle class for 2D geometry
 CPIRegularExpressionRegular expression class
 CPIResourcesAccess to resources embedded into the application binary
 CPIResourcesStorageGlobal storage for sections and entries registered by the resources subsystem
 CPIScopeExitCallClass for executing a function upon scope exit
 CPIScreenTypes::PIScreenBaseBase interface used by tiles to notify the owning screen about focus, removal, and custom events
  CPIScreenConsole screen manager with tile layout, drawing, and input routing
 CPIScreenDrawerHelper that draws primitives and text into a PIScreen cell buffer
 CPISemaphoreCounting semaphore that tracks available resource units
 CPISemaphoreLockerScope guard that acquires semaphore units in constructor and releases them in destructor
 CPISignalsHelper for installing process signal handlers
 CPISpinlockLock based on atomic spinning for very short critical sections
 CPISpinlockLockerScope guard that locks a PISpinlock in constructor and unlocks it in destructor
 CPIStateBaseBase class for states in a hierarchical state machine
  CPIStateFinalFinal state that finishes its parent state when entered
  CPIStateLambdaState implementation that forwards enter and exit virtual methods to callbacks
  CPIStateMachineRoot object that owns and runs a hierarchical state machine
 CPIStatistic< T >Template class for calculating statistical measures of a data set Calculates mean, variance, skewness and kurtosis for a numeric sample
 CPIStringString class
 CPIStringContextTrContext-aware string wrapper that automatically translates strings using PITranslator::tr(). Helper returned by operator""_tr for optional-context translation
 CPIStringContextTrNoOpContext-aware string wrapper that preserves original strings without translation (no-op). Helper returned by operator""_trNoOp that keeps source text unchanged
 CPISystemInfoSystem information class
 CPISystemTests::PISystemTestReaderInitializes calibration values for PISystemTests
 CPISystemTimeSystem time with nanosecond precision
 CPITextStream< P >Text serialization functionality over PIBinaryStream
 CPITextStream< PIIOBinaryStream >
  CPIIOTextStreamPITextStream adapter over a PIIODevice
 CPIThreadNotifierThread notifier class for synchronization between threads
 CPIThreadPoolLoopHelper that runs one integer range across a fixed set of worker threads
 CPITimeCalendar time
 CPITimeMeasurerTime measurements
 CPITransitionBaseTransition between states in PIStateMachine
  CPITransitionTimeoutTransition that fires automatically after a timeout
 CPITranslatorTranslation support
 CPIValueTreeThe PIValueTree class represents a tree structure of PIVariant values with attributes
 CPIVariantVariant type
 CPIVariantSimpleLightweight strongly-typed variant for a single value
 CPIVector< T >Sequence linear container - dynamic size array of any type
  CPIStack< T >A container class inherited from the PIVector with stack functionality
 CPIVector2D< T >2D array container.This class is used to store a 2D array of elements of any type as a single continuous block of memory (a plain PIVector). Elements can be accessed using the [][] operators, where the first index is the row and the second is the column. Rows can be manipulated as PIVector objects, allowing modification of individual elements or assignment of entire rows. You cannot directly add or remove elements to change the dimensions of the array after construction (use resize(), addRow(), removeRow(), removeColumn() instead), but you can modify the values of existing elements
  CPIMathMatrix< int >
  CPIMathMatrix< double >
 CPIVector2D< Type >
  CPIMathMatrix< Type >Dynamic-size math matrix. Uses PIVector2D as storage and keeps the matrix interface aligned with PIMathMatrixT
 CPIVector< Entry * >
  CPIConfig::BranchBranch class - container for Entry objects
 CPIVector< PIEthernet::Interface >
  CPIEthernet::InterfaceListCollection of Interface descriptors with lookup helpers
 CPIWriteLockerScope guard that acquires writer access in constructor and releases it in destructor
 CPIOpenCL::PlatformDescription of an OpenCL platform and its devices
 CPIProtectedVariable< T >::PointerPointer-like wrapper returned by getRef() while the protected value remains locked
 CPIUnits::PrefixHelpers for localized prefix names, symbols, and multipliers
 CPISystemMonitor::ProcessStatsFixedProcess statistics (fixed-size fields)
  CPISystemMonitor::ProcessStatsProcess statistics
 CPIOpenCL::ProgramCompiled OpenCL program that owns discovered kernels
 CPIPropertyStorage::PropertyPIPropertyStorage element
 CPIUnits::Class::Internal::Registrator< P >Helper that registers every type declared by unit family "P"
 CPIUnits::Class::Internal::Registrator< Angle >
  CPIUnits::Class::AngleDescriptor of angle units and their public type identifiers
 CPIUnits::Class::Internal::Registrator< Distance >
  CPIUnits::Class::DistanceDescriptor of distance units and their public type identifiers
 CPIUnits::Class::Internal::Registrator< Information >
  CPIUnits::Class::InformationDescriptor of information units and their public type identifiers
 CPIUnits::Class::Internal::Registrator< Mass >
  CPIUnits::Class::MassDescriptor of mass units and their public type identifiers
 CPIUnits::Class::Internal::Registrator< Pressure >
  CPIUnits::Class::PressureDescriptor of pressure units and their public type identifiers
 CPIUnits::Class::Internal::Registrator< Temperature >
  CPIUnits::Class::TemperatureDescriptor of temperature units and their public type identifiers
 CPIUnits::Class::Internal::Registrator< Time >
  CPIUnits::Class::TimeDescriptor of time and frequency units and their public type identifiers
 CPIVector2D< T >::RowConstProxy class representing a single read-only row in a PIVector2D. Returned by const operator[] or row(). Provides const access to row elements
  CPIVector2D< T >::RowProxy class representing a single row in a PIVector2D for modification. Objects of this class are returned by non-const operator[] or row(). They provide array-like access to the elements of a specific row and allow operations such as assignment from another row or a PIVector, searching, filling, and iteration
 CPIResourcesStorage::SectionOne logical resource section with named binary entries
 Cluabridge::Stack< PIString >LuaBridge stack adapter for PIString
 CPIDiagnostics::StateSnapshot of current counters and derived statistics
 CPICloud::TCPBuilds and parses PICloud frames on top of PIStreamPacker
 CPISystemMonitor::ThreadStatsFixedThread statistics (fixed-size fields)
  CPISystemMonitor::ThreadStatsThread statistics
 CPIScreenTypes::TileEventUser-defined event raised by a tile
 CTransferFunctionTransfer-function coefficient storage
 CPICodeInfo::TypeInfoType information
 Cuint_cl< L >Fixed-width unsigned helper used by generic CRC implementations
 CPIUnits::ValueNumeric value paired with a registered unit type
 CPIHIDeviceInfo::ValueInfoBaseCommon information for HID controls addressed by index
  CPIHIDeviceInfo::AxisInfoDescription of a HID axis
  CPIHIDeviceInfo::ButtonInfoDescription of a HID button