Commit Graph

3601 Commits

Author SHA1 Message Date
Phil Olynyk
d68afd69c4 Merge branch 'master' into fix-backup 2020-08-09 17:20:11 -04:00
Phil Olynyk
d46dd3d144 Remove existing backups before second import; also change double to qint64 in LoadEVE and LoadCSL 2020-08-09 17:17:21 -04:00
Guy Scharf
1aba6e4e51 File error checking Phase I: check all file.open() operations are successful.
file.open() checked everywhere except in loaders.
    qWarning() message written to debug log, with error number and text.
    We may want to exit OSCAR with a message in many situations, but that is not implemented yet.
    Set number of debug logs to be kept for Release version to 4.
2020-08-09 10:33:04 -07:00
Guy Scharf
4885abf76a Overview graphs right edge now on correct date in GMT+ timezones
Changed a lot of Qt::UTC to Qt::LocalTime.  Some risk of having changed ones that should not have been changed.
2020-08-09 10:25:45 -07:00
Phil Olynyk
a89b5f8cdd Merge branch 'master' into test-dataflow 2020-08-08 14:22:16 -04:00
Phil Olynyk
b35cd921c1 Compare maskevents to session count to all re-import on same day - added debug trace 2020-08-08 14:17:54 -04:00
sawinglogz
f73ef02380 Update 1030X and 1130X warnings based on new test data. 2020-08-08 11:04:34 -04:00
sawinglogz
0960384b20 Add support for compliance records from PRS1 60 Series bricks.
Add 261CA to the list of tested machines.
2020-08-04 20:59:51 -04:00
sawinglogz
cfca48e505 Reconcile differences in PRS1 compliance vs. summary for F0V23 and F0V6.
Propagated a bug-fix in some variations that avoiding crashing on
zero-length data.
2020-08-04 17:12:14 -04:00
sawinglogz
93a056b252 Add 462P and 400X120 to the list of tested machines.
Also update F0V4 warning based on new test data.
2020-08-03 14:18:25 -04:00
Phil Olynyk
363aa6d1b9 Merge branch 'master' into test-dataflow 2020-08-03 14:09:34 -04:00
Phil Olynyk
961fdb13db Clean up formatting, add debug and warnings, fix STR length test to allow multiple daily imports. 2020-08-03 14:01:04 -04:00
Guy Scharf
f1cb0e53d9 Merge branch 'master' into graphs4 2020-08-02 20:39:16 -07:00
Guy Scharf
d4f0645c68 Update release notes for Overview changes 2020-08-02 20:32:08 -07:00
Guy Scharf
4f83c9b184 Re-order popup labels on Overview graph to match order of slices
Also change heading on AHI Overview to show same order
    Improve some variable names for ease of understanding code
2020-08-02 20:24:56 -07:00
Guy Scharf
32026446a5 Rename variables for clarity -- no effect on code 2020-08-02 13:01:31 -07:00
Guy Scharf
484ee9c40d Popup graph Phase III: Fix previous submission. 2020-08-01 18:48:23 -07:00
Guy Scharf
24969aedbb Popout graphs Phase III: make sure all graphs repaint when new graph added. 2020-08-01 18:33:48 -07:00
Guy Scharf
94c84ffde6 Update release notes for popout graphs 2020-08-01 13:54:20 -07:00
Guy Scharf
5dcec07b9e Popout graphs phase II: Fix height of popped-out graphs
Popped-out graphs no longer can have their height adjusted by pulling on dock or widget window.
    This is a work-around to a problem when popping-out multiple graphs, heights of early graphs
    were increased and heights of the latter graphs were too small.
2020-08-01 13:49:39 -07:00
Guy Scharf
2712fad0c6 Popout graphs Phase I: limit dock height to screen height; preserve original graph heights 2020-08-01 12:45:02 -07:00
sawinglogz
f25f991e9f Add feature to suppress zooming when holding down the shift key.
This allows users to measure a duration without zooming.
2020-07-27 12:57:16 -04:00
ArieKlerk
6c9bac6950 Update language files (Dutch is up-to-date and OSCAR_qt_xx.ts files should not change anymore) 2020-07-26 21:41:43 +02:00
Guy Scharf
5cefc90a16 Fix CPAP hours and AHI calculations
Daily page: total hours was elapsed time of all machines, including large blocks that are not CPAP.  Now just MT_CPAP time.
    Welcome page: Same problem with total hours reporting, and AHI was calculated as events/total hours instead of events/CPAP hours.
    Statistics page: Same problems as on Welcome page -- total hours and index calculations.  Changed to using total CPAP hours.
2020-07-24 11:29:19 -07:00
sawinglogz
eaf4ab69cf Update 700X warning based on new test data. 2020-07-24 12:51:22 -04:00
Guy Scharf
b0d4fcd628 Merge branch 'master' into updater 2020-07-21 13:51:43 -07:00
Guy Scharf
01c663b692 Check for invalid version strings in versions.xml; fix display problem; update release notes for Phil 2020-07-21 13:50:06 -07:00
sawinglogz
cfabdbe742 Improve gcc fix from d2fc5ac.
Evidently gcc doesn't recognize inline forward declaration, but clang does.
I wonder who is right?

This was previously addressed by adding an #include. Instead, this patch
adds a standalone forward declaration of the QXmlStreamReader/Writer classes.

This has been tested and verified to compile with gcc and clang.
2020-07-21 13:51:20 -04:00
sawinglogz
7316ac676c Add a menu item to create a zip of all diagnostic logs.
Also fix a buffering issue in XmlRecorder that left devices.xml empty
in the zip.
2020-07-21 13:25:17 -04:00
sawinglogz
5e9d391ccc Fix a rare race condition when shutting down the logger.
This resulted in an occasional use-after-free crash every once in a while.
2020-07-21 13:25:17 -04:00
sawinglogz
162e5695b1 Update the OSCAR data zip to use the live debug log instead of creating one.
Also fix the logger so that messages are logged immediately rather than once
per second.
2020-07-21 13:25:17 -04:00
sawinglogz
20dfb666b0 Write the debug log to a file within the OSCAR data folder.
Also immediately emit debug messages to console even before the UI is
initialized.

And present a useful error if the OSCAR data folder can't be created.
2020-07-21 13:25:17 -04:00
sawinglogz
6a658b3be0 Enable serial device recording in the main application.
This is transparent to the user and is recorded into a log directory within
the OSCAR_Data directory.

Also add log rotation so that these logs don't grow forever.
2020-07-21 13:25:16 -04:00
Guy Scharf
d8a7cf2133 Remove unused code -- no effect on compilation 2020-07-19 16:42:28 -07:00
Guy Scharf
dc78287775 Update release notes. 2020-07-19 11:49:23 -07:00
Guy Scharf
6bf3a9c7e3 Make versions.xml case insensitive, update release notes 2020-07-19 11:44:21 -07:00
sawinglogz
a8f6bca387 Add monochrome printing to release notes. 2020-07-18 14:58:16 -04:00
sawinglogz
a339b4679d First pass at adding B&W support for daily report printing. 2020-07-18 14:56:00 -04:00
sawinglogz
5765da4096 Fix double printing of flow waveform when there's more oximetry than CPAP. 2020-07-18 13:17:53 -04:00
sawinglogz
65b4440428 Add preference for B&W printing. 2020-07-18 12:50:34 -04:00
harre
d2fc5ac5d4 Add missing include to fix compile error 2020-07-11 01:41:31 +02:00
sawinglogz
d88084a342 Disable oximeter download tests by default for now.
They're not yet stable enough to be enabled as regression tests in master.
2020-07-10 14:55:25 -04:00
sawinglogz
eb5bef5fba Move DeviceConnectionManager's global static variable into a local static.
This fixes the same issue that was just fixed in XmlReplayEvent, though
this one hadn't yet caused a crash.
2020-07-10 12:50:34 -04:00
sawinglogz
c7db24877c Split XML recording/replay into its own files.
The only code change was to move XmlReplayEvent::s_factories into
a local static variable accessed by XmlReplayEvent::factories() to
ensure that it will be initialized before it is used.

Otherwise there is no guarantee in C++11 that global variables
in different source files (translation units) will be initialized
in any particular order.
2020-07-10 12:44:15 -04:00
sawinglogz
610f6b8188 Reorder function declarations within XmlReplay and XmlReplayEvent for easier reference.
No functional change.
2020-07-10 11:51:54 -04:00
sawinglogz
c9ebc0d175 Move function definitions out of XmlReplayEvent and XmlReplayLock class declarations. 2020-07-10 11:51:54 -04:00
sawinglogz
d5cb629069 Minor device connection manager clean-up.
Also fix a minor bug where the wrong error code was reported in
a rare edge case.
2020-07-10 11:51:53 -04:00
sawinglogz
bdda964bf2 Add documentation and comments to device connection manager.
No change to code.
2020-07-10 11:51:53 -04:00
sawinglogz
e47610cf5c Minor cutting/pasting in device connection manager.
No functional change.
2020-07-10 11:51:53 -04:00
sawinglogz
09a96b893e Split connection XML recording/replay into separate files.
This is significant now because it will allow accurate recording of
multiple simultaneous connections.

This is important for the future because it establishes the
necessary infrastructure for recording downloaded sessions into their
own files so that they can be saved as backups.
2020-07-10 11:51:53 -04:00