Skip to content

Conversation

@bengineerd
Copy link
Contributor

Description

  • Added rolling 1-second bandwidth accounting to StreamWriter with a new getBandwidth() (C++/Python-exposed) and reset on open/close.
  • Extended DataWriter Bandwidth LocalVariable and StreamWriter wrapper to fetch it.
  • Updated the PyDM DataWriter widget to show bandwidth with units alongside existing file size and frame count; adjusted layout to avoid spacing issues.

- Introduced bandwidth tracking in StreamWriter with methods to record and prune bandwidth data.
- Added a new method to retrieve instantaneous bandwidth in bytes per second.
- Updated Python bindings and DataWriter to expose bandwidth information.
- Enhanced StreamWriter's functionality to support bandwidth calculations over a one-second window.
- Added a new PyDMLabel to display bandwidth information in the DataWriter.
- Ensured alarm sensitivity settings are applied to the new label for proper UI behavior.
- Updated the DataWriter to include units ('Bytes/sec') and a display format ('{:0.3f}') for the bandwidth variable.
- Modified the DataWriter widget to use PyRogueLabel for bandwidth display, ensuring consistency in UI components.
- Updated the display format for bandwidth to use commas ('{:,.3f}') for better readability.
- Refactored the DataWriter widget to use a horizontal layout for bandwidth display, including a label for units ('Bytes/sec').
- Ensured proper alignment and spacing for a cleaner UI presentation.
- Changed the layout alignment for the bandwidth display to ensure consistent positioning of elements.
- Improved overall UI presentation by setting the alignment of the bandwidth layout to left and vertical center.
@ruck314 ruck314 merged commit d66369f into pre-release Dec 10, 2025
5 checks passed
@ruck314 ruck314 deleted the writer-bandwidth branch December 10, 2025 04:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants