One buffer as the UI chrome sees it: enough metadata to render a buffer-list row and build a Stage, plus the raw pixel bytes ready for GlCanvas upload. IpcBufferModel populates these from IPC-decoded buffers; MockBufferModel below fabricates them deterministically.
| 44 | // GlCanvas upload. IpcBufferModel populates these from IPC-decoded |
| 45 | // buffers; MockBufferModel below fabricates them deterministically. |
| 46 | struct BufferRecord { |
| 47 | std::string variable_name; // stable key (e.g. debugger symbol name) |
| 48 | std::string display_name; // human label shown in the buffer list |
| 49 | std::string pixel_layout; // e.g. "rgba"; empty for single-channel |
| 50 | bool transpose{false}; |
| 51 | int width{}; |
| 52 | int height{}; |
| 53 | int channels{}; |
| 54 | int step{}; |
| 55 | oid::BufferType type{oid::BufferType::UnsignedByte}; |
| 56 | std::vector<std::byte> bytes; |
| 57 | }; |
| 58 | |
| 59 | // Read-only view over the set of buffers the chrome should list. |
| 60 | // IpcBufferModel is backed by live IPC state; MockBufferModel below is the |
nothing calls this directly
no outgoing calls
no test coverage detected