|
wiRedPanda
Logic Circuit Simulator
|
| NDolphinModelBuilder | Collects and orders the input/output elements of a circuit scene and derives the waveform table's row labels |
| NDolphinSerializer | Pure I/O functions for the beWavedDolphin waveform file formats |
| CAddItemsCommand | Undo command that adds a list of graphic elements to the scene |
| CAnd | Graphical representation of an AND gate (2–8 inputs, 1 output) |
| CApplication | Custom QApplication that wraps event dispatch with exception handling |
| CArduinoBoardConfig | Describes an Arduino board's available GPIO pins |
| CArduinoCodeGen | Generates an Arduino sketch from a flattened list of circuit elements |
| CAudioBox | Audio output element that streams an external audio file when its input is logic-1 |
| CAudioOutputElement | Abstract base for single-input audio output elements |
| CBaseHandler | Abstract base class for MCP command handlers |
| CBewavedDolphin | Waveform editor main window for creating and analyzing digital signal sequences |
| CBewavedDolphinUi | Hand-written UI descriptor for the BeWavedDolphin main window |
| CBuzzer | |
| CChangePortSizeCommand | Undo command that changes the number of input or output ports on selected elements |
| CClipboardManager | Manages clipboard operations (copy/cut/paste) and clone-drag for the circuit scene |
| CClock | Event-driven real-time clock input element |
| CClockDialog | Modal dialog for selecting the period of a beWavedDolphin clock wave |
| CClockDialogUi | |
| CComment | Controls the verbosity level of diagnostic logging categories |
| CConnection | A bezier-curve wire connecting an output port to an input port in the scene |
| CConnectionHandler | Handler for connection operation commands (connect, disconnect, list, split) |
| CConnectionManager | Manages interactive wire creation, deletion, validation and hover feedback |
| CConnectionSerializer | Serializes a Connection to/from a versioned QDataStream |
| CContextDirProvider | Narrow interface exposing a scene's context directory |
| CDeleteItemsCommand | Undo command that removes a list of items from the scene |
| CDemux | Graphical representation of a demultiplexer (1-to-2^N) |
| CDFlipFlop | Graphical representation of an edge-triggered D flip-flop |
| CDisplay14 | 14-segment LED display output element (14 segments + decimal point = 15 inputs) |
| CDisplay16 | 16-segment LED display output element (16 segments + decimal point = 17 inputs) |
| CDisplay7 | 7-segment LED display output element (7 segments + decimal point = 8 inputs) |
| CDLatch | Graphical representation of a level-sensitive D latch |
| CDolphinHost | Interface the host application (MainWindow) provides to BewavedDolphin |
| CDolphinZoom | Owns the waveform table's zoom state and the math that maps it to view metrics |
| CDragDropPayload | Decoded contents of a wiRedPanda drag-and-drop MIME payload |
| CElementAppearance | Owns the visual appearance of a GraphicElement: the displayed pixmap, its SVG renderer, the default/alternative appearance lists, and the selection-highlight colors |
| CElementConstraints | Compile-time-validatable subset of ElementMetadata |
| CElementEditor | Widget for inspecting and editing the properties of selected circuit elements |
| CElementEditorUi | |
| CElementFactory | Factory for circuit elements |
| CElementHandler | Handler for element operation commands (create, delete, modify, transform, etc.) |
| CElementInfo | Self-registering element information trait |
| CElementInfo< And > | |
| CElementInfo< AudioBox > | |
| CElementInfo< Buzzer > | |
| CElementInfo< Clock > | |
| CElementInfo< Demux > | |
| CElementInfo< DFlipFlop > | |
| CElementInfo< Display14 > | |
| CElementInfo< Display16 > | |
| CElementInfo< Display7 > | |
| CElementInfo< DLatch > | |
| CElementInfo< IC > | |
| CElementInfo< InputButton > | |
| CElementInfo< InputGnd > | |
| CElementInfo< InputRotary > | |
| CElementInfo< InputSwitch > | |
| CElementInfo< InputVcc > | |
| CElementInfo< JKFlipFlop > | |
| CElementInfo< Led > | |
| CElementInfo< Line > | |
| CElementInfo< Mux > | |
| CElementInfo< Nand > | |
| CElementInfo< Node > | |
| CElementInfo< Nor > | |
| CElementInfo< Not > | |
| CElementInfo< Or > | |
| CElementInfo< SRFlipFlop > | |
| CElementInfo< SRLatch > | |
| CElementInfo< Text > | |
| CElementInfo< TFlipFlop > | |
| CElementInfo< TruthTable > | |
| CElementInfo< Xnor > | |
| CElementInfo< Xor > | |
| CElementLabel | Icon and name widget shown in the left-panel element palette |
| CElementMetadata | Compile-time-registered properties for one element type |
| CElementMetadataRegistry | Global registry of ElementMetadata, one entry per ElementType |
| CElementOrientation | Owns the rotation angle and flip flags of a GraphicElement, and the transform math that applies them to the item and its ports |
| CElementPalette | Controller for the left-panel element palette, IC list, and search tab |
| CElementPorts | Owns the input and output Port vectors of a GraphicElement and the primitives that create, resize and trim them |
| CElementsCommand | Intermediate base for commands that operate on a fixed list of GraphicElements |
| CElementSimState | Owns a GraphicElement's simulation runtime state, decoupled from its graphics |
| CElementTabNavigator | Event filter that cycles scene element selection on Tab / Shift+Tab |
| CEnums | Preferred way to indicate the element types and groups (input, output, etc) |
| CExceptionInfo | Value-captured exception details safe to forward across an event-loop boundary |
| CExerciseConnectionRequirement | |
| CExerciseElementRequirement | |
| CExerciseEngine | |
| CExerciseOverlay | Semi-transparent overlay displayed at the bottom of the canvas during a circuit exercise |
| CExerciseStep | |
| CExerciseTourResourceEntry | |
| CExerciseTourResources | Static utility for discovering Exercise/Tour content and translating its text |
| CExportController | Owns the circuit-export workflow: Arduino / SystemVerilog code, PDF / PNG images, and beWavedDolphin waveform output |
| CFileDialogProvider | |
| CFileDialogResult | Result from a save file dialog operation |
| CFileHandler | Handler for file operation commands (load, save, export, etc.) |
| CFlipCommand | Undo command that flips a selection of elements along a horizontal or vertical axis |
| CGraphicElement | Abstract base class for all graphical circuit elements in wiRedPanda |
| CGraphicElementInput | Abstract base for all interactive input elements (switches, buttons, clocks, etc.) |
| CGraphicElementSerializer | Serializes a GraphicElement to/from a versioned QDataStream |
| CGraphicsView | Extended QGraphicsView with enhanced navigation capabilities |
| CHistoryHandler | Handler for undo/redo commands |
| CIC | Graphic element representing an Integrated Circuit (sub-circuit) box |
| CICController | Owns the IC management workflow: importing file-based ICs into the project directory, embedding/extracting blobs, and making a circuit self-contained |
| CICDropZone | Drop zone widget that accepts opposite-type IC label drops |
| CICHandler | Handler for IC (Integrated Circuit) commands |
| CICLoader | Loads an IC's sub-circuit (from file or embedded blob), migrates old-format files, and builds the resulting boundary port lists |
| CICModuleInfo | Metadata for a single IC module during SystemVerilog hierarchical generation |
| CICPreviewPopup | Frameless tooltip-like widget showing a rendered preview of an IC's sub-circuit |
| CICRegistry | Manages IC definitions, file watching, and embedded blob storage |
| CICRenderer | Renders an IC's DIP-package body and builds its sizing/preview pixmaps |
| CICSimulation | Builds and drives an IC's internal simulation graph |
| CInlineLabelEditor | Hosts a temporary QLineEdit directly on the canvas to rename an element's label in place, in response to GraphicElement::inlineEditRequested() |
| CInputButton | Momentary push-button input element that is active only while pressed |
| CInputGnd | Static GND element that always drives logic-0 on its output |
| CInputPort | A port that receives a signal (the destination end of a wire) |
| CInputRotary | Rotary switch input that activates one output port at a time |
| CInputSwitch | Toggle switch input element that maintains its on/off state between clicks |
| CInputVcc | Static VCC element that always drives logic-1 on its output |
| CInstallRelativePaths | Static utility resolving where a named content folder (e.g. "Examples", "Exercises", "Tours") lives relative to the running application's install location |
| CItemWithId | Base class providing a unique integer identifier for circuit items |
| CJKFlipFlop | Graphical representation of an edge-triggered JK flip-flop |
| CLabeledSlider | QSlider that draws numeric value labels beneath each tick mark |
| CLanguageManager | Owns the application QTranslator instances and provides language metadata |
| CLed | LED output element that lights up when its input is logic-1 |
| CLengthDialog | Modal dialog for setting the BeWavedDolphin simulation length (number of time steps) |
| CLengthDialogUi | |
| CLine | Decorative line element used for annotating circuit diagrams |
| CMainWindow | The top-level application window hosting the tab bar, menus, element palette, and editor |
| CMainWindowHost | Interface MainWindow provides to its extracted controllers (export, IC, …) |
| CMainWindowUi | |
| CMappedPin | Associates a circuit port with its generated Arduino variable name and physical pin |
| CMappedPinSystemVerilog | Maps a circuit port to its generated SystemVerilog signal name and module port |
| CMCPProcessor | Model Context Protocol processor for wiRedPanda |
| CMCPValidator | JSON Schema validator for MCP commands and responses using native json-schema-validator |
| CMinimapWidget | |
| CMorphCommand | Undo command that changes the type of selected elements while preserving connections |
| CMoveCommand | Undo command that records a drag-move of a set of elements |
| CMux | Graphical representation of a multiplexer (2^N-to-1) |
| CNand | Graphical representation of a NAND gate (2–8 inputs, 1 output) |
| CNode | Visible wire junction (T-junction) element with 1 input and 1 output |
| CNor | Graphical representation of a NOR gate (2–8 inputs, 1 output) |
| CNot | Graphical representation of a NOT gate (1 input, 1 output) |
| COr | Graphical representation of an OR gate (2–8 inputs, 1 output) |
| COutputPort | A port that drives a signal (the source end of a wire) |
| CPandaception | Exception type for user-facing circuit errors |
| CPort | Abstract base class for circuit element ports (connection endpoints) |
| CPortHoverLabel | A small floating label drawn next to a port while a connected port is hovered |
| CPropertyDescriptor | Describes one editable property that a GraphicElement exposes in the ElementEditor |
| CPropertyShortcutHandler | Dispatches keyboard shortcuts that cycle element properties and types |
| CRealFileDialogProvider | Production implementation that delegates to QFileDialog |
| CRecentFiles | Manages the list of recently opened .panda files |
| CRegisterBlobCommand | Undo command that registers/unregisters a blob in the IC registry |
| CRemoveBlobCommand | Undo command that removes/restores a blob in the IC registry |
| CRenameBlobCommand | Undo command that renames a blob in the IC registry |
| CRotateCommand | Undo command that rotates a list of elements by a fixed angle |
| CScene | Main circuit editing scene |
| CSceneDropHandler | Decodes wiRedPanda drag-and-drop payloads (new element from the palette, and clone-drag of an existing selection) and commits them to the owning Scene |
| CSceneInteraction | Owns the interactive editing state of a Scene — element dragging, the rubber-band selection rectangle, and the last cursor position — and implements the press/move/release/double-click gestures |
| CSceneItemRegistry | Owns the id↔item bookkeeping for a Scene: the id-to-item map and the monotonically increasing last-assigned id |
| CSceneUiBinder | Binds and unbinds the active WorkSpace's scene to the single-instance editor chrome (element editor, Edit-menu undo/redo, scene-property shortcuts, and the zoom/mute/play action state) |
| CSelectionCapabilities | Computed capabilities and consensus state of the current element selection |
| CSerialization | Static utility class for reading and writing circuit and waveform files |
| CSerializationContext | Bundles all per-deserialization state so that load() overrides receive it through one explicit parameter instead of several globals |
| CSerializationOptions | Options passed to GraphicElement::save() (and friends); the save-side counterpart of SerializationContext, kept separate since save() needs none of that struct's load-only fields (portMap, version, ...) |
| CServerInfoHandler | Handler for server information commands |
| CSetCellsCommand | Generic undo command for any DolphinEdits mutation (Set 0/1, Invert, Clear, clock/combinational fill, and the value-filling half of a length increase) |
| CSettings | Static utility class for managing the application settings |
| CSignalDelegate | Item delegate that draws digital waveform graphics inside table cells |
| CSignalModel | QStandardItemModel subclass that makes all cells non-editable |
| CSimulation | Manages the digital circuit simulation loop |
| CSimulationBlocker | RAII guard that stops the simulation on construction and restarts it on destruction |
| CSimulationHandler | Handler for simulation operation commands (control, waveform generation/export) |
| CSimulationHost | Narrow interface letting Simulation reach its host scene without naming the concrete Scene class |
| CSimulationThrottleDisabler | RAII guard that disables the visual refresh throttle for the duration of its scope |
| CSplitCommand | Undo command that inserts a Node junction into an existing connection |
| CSRFlipFlop | Graphical representation of an edge-triggered SR flip-flop |
| CSRLatch | Graphical representation of a level-sensitive SR latch |
| CStepEngineCore | Owns the id/title/step-list/progress state machine shared by ExerciseEngine and TourEngine, and the JSON resource-loading logic that builds it |
| CSystemVerilogCodeGen | Generates a synthesisable SystemVerilog module from a circuit's element graph |
| CText | Free-text annotation element used for labelling circuit diagrams |
| CTFlipFlop | Graphical representation of an edge-triggered T (toggle) flip-flop |
| CThemeAttributes | Contains all color attributes for a theme |
| CThemeHandler | Handler for theme management commands |
| CThemeManager | Singleton class for managing application themes |
| CToggleTruthTableOutputCommand | Undo command that toggles one output bit in a TruthTable element |
| CToneGenerator | |
| CTourEngine | |
| CTourOverlay | |
| CTourStep | |
| CTrashButton | Push-button that accepts IC file drag-and-drop to trigger IC removal |
| CTruthTable | Programmable truth-table element with configurable inputs and outputs |
| CUpdateBlobCommand | Undo command for embedded IC blob changes that may alter port counts |
| CUpdateChecker | Asynchronously queries the GitHub Releases API and emits a signal when a newer version is available |
| CUpdateCommand | Undo command for property changes (label, color, frequency, appearance, etc.) |
| CUpdateController | Owns the update-check lifecycle: querying for a newer release and presenting the resulting notification / download dialogs |
| CValidationResult | Result of JSON schema validation |
| CVisibilityManager | Controls the visibility of gates, wires, and port handles in the circuit scene |
| CWaveformSimulator | Drives the circuit simulation across the waveform's time columns |
| CWorkSpace | A widget containing a complete circuit editing environment |
| CWorkspaceManager | Owns the document/tab model: the current tab, tab creation/closing/switching, and the file open/save/reload/autosave workflow |
| CXnor | Graphical representation of an XNOR gate (2–8 inputs, 1 output) |
| CXor | Graphical representation of an XOR gate (2–8 inputs, 1 output) |