Built-in Modules

Rogue comes with a number of built-in modules that are useful for assembling actual applications. These modules are built on top of the core Rogue and PyRogue APIs, so they fit naturally into the usual design flow for tree construction, transport setup, simulation, file handling, and hardware access.

These pages are organized for discovery first, but they also make the namespace split explicit so it is clear whether you are working with a top-level PyRogue Device, a submodule wrapper, or a lower-level Rogue endpoint.

Three layers matter when choosing a module family:

  • pyrogue Top-level tree-facing classes such as RunControl, Process, DataWriter, and DataReceiver. Those are documented in Built-in Devices.

  • pyrogue.<submodule> Python integrations and wrapper devices such as pyrogue.utilities.fileio.StreamWriter or pyrogue.protocols.UdpRssiPack.

  • rogue.<submodule> Lower-level exported Rogue modules such as rogue.utilities.fileio.StreamWriter or rogue.protocols.udp.Client.

Most systems use more than one of these layers at once. A tree often exposes top-level pyrogue devices for operations and monitoring, then relies on pyrogue.<submodule> wrappers or direct rogue.<submodule> endpoints to handle file I/O, protocol transport, simulation, or hardware access.

Subtopics

  • Utilities Stream-support modules such as file I/O, PRBS, compression, and HLS helpers.

  • Protocols Transport, framing, and register-access layers such as UDP, RSSI, SRP, packetizer, batcher, Xilinx, UART, and GPIB-related helpers.

  • Interfaces External integration helpers such as SQL logging, C++ embedding, version checks, and OS-backed memory bridges.

  • Hardware Driver-backed hardware endpoints that connect host software to firmware data paths.

  • Simulation Utilities Software-only stand-ins for memory and link behavior used during development and integration testing.