> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/holoscan/sensor-bridge/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/holoscan/sensor-bridge/_mcp/server.

# hololink::emulation::LinuxHSBEmulatorCtxt

> Linux-specific HSBEmulatorCtxt extension.

Linux-specific [HSBEmulatorCtxt](hsbemulatorctxt) extension.

`base` (the common [HSBEmulatorCtxt](hsbemulatorctxt)) is the first member; the rest is Linux-only state (thread plumbing, lazy register caches, the running\_mutex that protects base.running, and the auto-attached I2C peripherals).

```cpp showLineNumbers={false}
#include <hololink/emulation/hsb_emulator.hpp>
```

***

## Member variables

| Name                        | Type                                                  | Description |
| --------------------------- | ----------------------------------------------------- | ----------- |
| `base`                      | `HSBEmulatorCtxt`                                     |             |
| `data_plane_list`           | `std::vector< DataPlane * >`                          |             |
| `renesas_i2c`               | `std::unique_ptr< RenesasI2CPeripheral >`             |             |
| `li_i2c_expander`           | `std::unique_ptr< LII2CExpanderPeripheral >`          |             |
| `dp_registers_cache`        | `std::vector< std::shared_ptr< DPRegisters > >`       |             |
| `dp_sensor_registers_cache` | `std::vector< std::shared_ptr< DPSensorRegisters > >` |             |
| `control_thread_`           | `ControlThread *`                                     |             |
| `control_socket_fd_`        | `int`                                                 |             |
| `running_mutex`             | `std::mutex`                                          |             |