kappa44
c13951b675
Consider CPAP drift when displaying current value
2021-02-22 09:20:34 +11:00
Guy Scharf
fbfc830015
Compensate for error message from linux compilers in DeVilbiss loader.
2021-01-26 12:37:27 -07:00
Guy Scharf
24e7d34aee
DeVilbiss DV6x loader
...
Mostly complete
Backup facility is incomplete
2021-01-25 19:56:59 -07:00
Phil Olynyk
d16c4f4aed
Add Auto as option for Ramp-Enable
2021-01-22 11:36:17 -05:00
Guy Scharf
7bf8470d36
Mark exported journal backup file as UTF-8.
2021-01-18 21:55:14 -07:00
Guy Scharf
a06d37e10e
Correct error dialog when data cannot be written to OSCAR_Data
...
Also minor update to Release Notes
2021-01-18 21:47:59 -07:00
Phil Olynyk
28ac40a6f9
Reset size of AHI banner in left panel
2021-01-15 21:05:04 -05:00
Phil Olynyk
f05320e725
Add font debugging, add setApplicationFont to Daily::Load(date)
2021-01-15 20:20:36 -05:00
Guy Scharf
142220c16c
More diagnostics for font setting failure on startup on RPi
...
Dump entire font table if desired font is not found
2021-01-15 11:30:34 -07:00
Guy Scharf
b8415117c3
Improve font setting diagnostic message
2021-01-14 15:20:53 -07:00
Guy Scharf
b00434f1d9
Add diagnostics when setting application font
...
To help resolve font setting problem on RPi4
2021-01-14 20:43:38 +00:00
sawinglogz
09ba58669a
Add support for Target Time humidifier setting on DreamStation Go.
2020-12-29 20:23:37 -05:00
sawinglogz
e336e85aac
Add 500G120 and 500X140 to the list of tested machines.
...
Also update warnings based on new test data.
2020-12-29 17:38:00 -05:00
Guy Scharf
38d8b84266
Intellipap DV64 loader now imports the most recent day
...
Previous code had an off-by-one error and was not importing the last day in the file.
2020-12-14 00:20:29 +00:00
Guy Scharf
d357c37edd
Update link to Contec drivers.
2020-12-05 17:59:45 -07:00
Phil Olynyk
1aa88fb19a
Merge branch 'master' into local_SDcopy
2020-11-21 20:02:32 -05:00
Guy Scharf
77b64c87e8
Fix loss of notes and bookmarks when importing or purging data
...
OSCAR now calls Unload() for the current day when importing new data
or purging oximetry data. This will cause any recently changes Notes
to be saved instead of silently discarded.
When purging the current day, OSCAR will now purge only session data
and not any other machine data it finds, which caused Bookmarks (and
probably Oximetry data) to be deleted as well.
Release Notes updated.
2020-11-21 11:45:43 -07:00
Guy Scharf
4276765bf2
ResMed loader no longer checks for maskoff dates beyond current time
...
Loader was checking that maskoff time was not greater than current time. This
produced problems when CPAP machine was set to DST but computer was set to standard
time. This also could cause problems trying to import files created in a different
timezone.
Added a separate check for maskon and maskoff times were in legal range (0-24*60).
Updated release notes.
2020-11-19 13:51:01 -07:00
Phil Olynyk
a637bea0fe
Check for existing lastpath file before Crostini warning
2020-11-15 23:38:12 -05:00
Guy Scharf
5fb837ccb9
Daily page enable/disable oximeter session now works correctly.
...
Prevoiusly, disabling an oximeter session could cause bookmarks to be
disabled and/or OSCAR to crash. OSCAR was looking up the session for
the oximeter session and not noticing it got a Journal session instead.
2020-11-04 21:12:05 -07:00
Guy Scharf
fac7803880
Improve error message when null pointer found in journal file
2020-11-04 10:23:14 -07:00
Guy Scharf
1af5d3ec40
Improve some qWarning messages.
...
resmed_loader: include all timestamps in "time in future" error messages
mainwindow: add qWarning message if first journal session is null pointer
2020-11-04 10:12:19 -07:00
Guy Scharf
5e75fe8836
Fix OSCAR crash when session not found in Journal file
...
While preparing bookmark HTML for right sidebar, OSCAR was trying to obtain
the first MT_JOURNAL session, but was finding a null pointer and then not checking
that the pointer was null. However, I don't know under what conditions this
situation could happen in the database. At least now it won't crash OSCAR.
2020-11-03 14:50:04 -07:00
Guy Scharf
d4c2b74afb
Allow non-ASCII (UTF-8) characters in user first and last name in user profile
...
We do this by forcing a UTF-8 byte order marker in the profile.xml file.
We also add processing instructions that specify UTF-8, although it seems the BOM is itself sufficient.
2020-10-31 18:06:38 -07:00
Guy Scharf
678e0f9241
Correct leak rate computations on Welcome page
...
Welcome page was calculating current and 7-day averages using the "normal average" method,
which averaged just the non-zero readings, giving excessively high numbers.
Now computes using "weighted average" resulting in more meaningful numbers.
2020-10-31 09:49:02 -07:00
Guy Scharf
055aec77d8
Name VERSION as 1.2.1-alpha.0
...
We don't know what the next release number will be but are setting it above 1.2.0
so that anyone who downloads the repository will know the HEAD is above 1.2.0.
2020-10-31 09:07:22 -07:00
Phil Olynyk
6d9f544af8
Update rc.2 to release status
2020-10-13 13:32:54 -04:00
Phil Olynyk
1faaf6251c
Update to v1.2.0_rc.2
2020-10-06 20:09:17 -04:00
Guy Scharf
bf458fa1d5
Clairfy code for checking for str.edf or str.edf.gz depending on compression settings
2020-10-06 09:37:29 -07:00
Guy Scharf
6c8d9d6751
Fix two issues in ResMed loader:
...
1) If data compression option is set, loader will now try the str.edf.gz file first, with fallback to str.edf
2) Mixed Windows and Unix separators are now allowed in --datadir, which was previously causing data loss when rebuilding CPAP data.
2020-10-06 01:36:15 +00:00
Guy Scharf
34700fd9f9
Fix two issues in ResMed loader:
...
1) If data compression option is set, loader will now try the str.edf.gz file first, with fallback to str.edf
2) Mixed Windows and Unix separators are now allowed in --datadir, which was previously causing data loss when rebuilding CPAP data.
2020-10-06 01:36:15 +00:00
Phil Olynyk
e4b3b97c21
Change VERSION to v1.2.0-rc.1 - use dot as pre-release separator
2020-09-25 13:03:40 -04:00
Guy Scharf
9e899c1d15
Change apostrophes in Daily page statistics tooltips to HTML encoded apos;
2020-09-20 19:05:22 -07:00
Guy Scharf
dc5540d2a8
Don't show versions.xml read errors for automatic checks.
2020-09-18 10:40:05 -07:00
Guy Scharf
8d2578872a
Add an error message to Check for Updates when unable to access the update on our server.
2020-09-16 13:05:45 -07:00
Phil Olynyk
956a405c80
change VERSION to v1.2.0-beta-3
2020-09-15 13:19:35 -04:00
sawinglogz
2563e5c4f0
Fix gcc compiler error introduced by d98a76a
.
2020-09-14 14:58:11 -04:00
sawinglogz
d98a76aa22
Recognize low MV alarm on 1030X and update warnings based on test data.
2020-09-13 19:28:00 -04:00
sawinglogz
d1985c9dc2
Add support for all current Dorma 501V test data.
2020-09-13 19:27:59 -04:00
sawinglogz
c8b10e31a7
Add initial support for PRS1 Dorma 501V.
2020-09-13 19:27:59 -04:00
sawinglogz
53de4f0f49
Add older 450P to the list of tested machines.
...
Also update warnings based on test data.
2020-09-13 19:27:59 -04:00
harre
d54e8b2e11
Added default copy operators as implicit default is deprecated
2020-09-13 01:10:03 +02:00
Guy Scharf
036117d41d
Correct reversion in beta-1 that lost date last imported.
2020-09-12 22:07:40 +00:00
Guy Scharf
ade32fa914
Change Profiles page and Daily Records box in right sidebar to show data for most recently used machine.
...
- Changed Profile::GetMachine() to find machine with latest lastImportDate when there were multiple machines in a profile.
- Previously, OSCAR would shown the "first" machine in its list, without clarity about how a machine was designated "first".
2020-09-12 22:07:40 +00:00
Guy Scharf
abf0747b50
Add data directory path to error message when unable to write test file.
...
- This is intended to make the error message and log entries more descriptive.
2020-09-12 22:07:40 +00:00
Guy Scharf
3ea13f736f
Increase minimum width of Preferences dialog don't import before date field.
...
- Intent is to prevent clipping of year number for months with long names (September).
- This helps with default font size on my system but may not help on others.
2020-09-12 22:07:40 +00:00
Phil Olynyk
249144a4a4
Update version to v1.2.0-beta-2
2020-09-10 19:20:30 -04:00
Guy Scharf
e39adbd41e
Avoid data loss when destroying a profile that's just an empty directory; Release notes for v1.2.0-beta-2
...
- If trying to delete a profile folder with no contents, now displays an error message and doesn't delete it.
- Folders with no contents are no longer listed on the Profiles page.
- Release Notes updated with the fixes for beta-2.
2020-09-09 22:03:32 -07:00
Guy Scharf
b49e483fa4
Remove SleepyHead modules ProfileSelect.h, .cpp, .ui. OSCAR uses ProfileSelector.* modules
2020-09-09 20:55:23 -07:00
Guy Scharf
f423ef4967
Fix reversion in fea497ac
causing fatal 'variable not used' message
2020-09-09 18:27:58 -07:00
Guy Scharf
de0069171a
Support migration of OSCAR as well as SleepyHead data. Update Release Notes.
2020-09-10 01:12:45 +00:00
Phil Olynyk
fea497aca6
Test for Crostini 9p filesystem before looking for /mnt/chromeos/removable
2020-09-09 20:55:42 -04:00
Guy Scharf
6406545c33
Correct percentile calculation for multiple days
...
- Previously, would stop and return 0 if any day in range was suumary only
- Now, just ignores summary-only days if there are days with data
- Re-indentation makes change look bigger than it is
2020-09-08 19:54:56 -07:00
Guy Scharf
555639e78b
Language improvements for password prompt tooltip and debugging channels
2020-09-08 19:33:09 -07:00
sawinglogz
ffc4b897f8
Improve import of rare 950P events; update warnings based on test data.
...
Rare hypopnea variants weren't being recognized, and timestamps were
slightly off after a mid-session humidification change.
2020-09-02 11:23:36 -04:00
Guy Scharf
23036ec8cd
Fix compile problem with QT 5.9; change Patient Access to Essentials
...
- Values of "On" and "Plus" will be shown for this field.
- Field name will remain Patient Access until a new profile is created or language is changed.
2020-08-31 22:02:32 -07:00
Phil Olynyk
9d9955e0bb
VERSION updated to v1.2.0-beta-1
2020-08-31 13:53:25 -04:00
Phil Olynyk
dcf6dc5bd2
Add g++ version 10 test
2020-08-31 12:59:18 -04:00
Guy Scharf
265bdc2d7e
Welcome page code cleanup.
...
- make Day::validPressure() available
- Welcome page to report n/a if pressure not valid (but it should always be valid)
- Did NOT add validPressure() call to all pressure reports.
2020-08-30 13:43:00 -07:00
Phil Olynyk
1f53b558ab
Merge branch 'master' into fix-Linux-Crostini-paths
2020-08-28 15:04:31 -04:00
Phil Olynyk
74dd8d7f51
Fix spelling typo
2020-08-28 14:55:33 -04:00
Guy Scharf
628ddaa399
Fix Welcome page pressure numbers for VAuto-S
2020-08-26 09:58:00 -07:00
Phil Olynyk
d5778bafb6
Check Crostini mount points, and force name to OSCAR-test if not OSCAR
2020-08-25 21:09:53 -04:00
Guy Scharf
ce18739d14
ResMed and Oximetry loader enhancements
...
- Oximetry loader from file now remembers last directory data was imported from.
- ResMed loader loads from last day or oldest purge date if a day was purged since last import.
purgeDate added to MachineInfo to implement this. Purge date set when a day is purged and cleared after an import.
2020-08-23 15:30:38 -07:00
Guy Scharf
5e5af1b541
Cleaen up some debug messages
2020-08-19 17:12:41 -07:00
Guy Scharf
2e8ee43267
Avoid scaling null pixmap to avoid warning message
2020-08-19 17:10:34 -07:00
Guy Scharf
9642a54d04
Change qWarning to qDebug for an expected file-does-not-exist condition
2020-08-19 17:09:41 -07:00
Guy Scharf
79dad50b79
Update copyright message
2020-08-19 10:19:35 -07:00
Guy Scharf
134a30624f
Improve file open diagnostic messages
2020-08-19 10:14:38 -07:00
Guy Scharf
4e0d8d33fd
Changes to ResMed loader:
...
- Fix possible problem with rebuilding CPAP data
- Change re-import to look just at last day (full re-import will be re-added later)
- Improve detection of when a day needs to be rebuilt on re-import
- Improve some diagnostic messages
2020-08-19 10:14:02 -07:00
sawinglogz
13e8a1947d
Add 452P and 650P to the list of tested machines.
...
Also improve support for rare F0V23 events and update other warnings based
on new test data.
2020-08-16 21:19:11 -04:00
Guy Scharf
b338d7aa3d
Check for ability to write to data directory at startup
...
Show critical error message and exit OSCAR if unable to write to data directory
Improve qWarning message in logger.cpp
Present warning dialog if logger cannot write to disk
2020-08-16 12:46:36 -07:00
Guy Scharf
86bc4ac606
Fix Welcome page calculcation of number of days since last import
2020-08-15 08:57:26 -07:00
Guy Scharf
bf6dd5c615
Improvements to ResMed loader for re-importing days
...
o Now compares all days, not just starting from last day imported
o Compares number of non-identical MaskOn/Off events with session count
o Hid most qDebug messages behind #define STR_EDF
o Added qWarning to open() and close() calls for improved diagnostics
o Fixed some copy() calls that were not working
2020-08-13 16:32:34 -07:00
Guy Scharf
8f3971cb09
Fix maskon/off vs session count comparison for deciding when to re-import a day
2020-08-12 17:26:14 -07:00
Guy Scharf
7c350068e0
Minor improvements to some file open and copy error messages
2020-08-12 17:25:15 -07:00
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
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
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
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
6bf3a9c7e3
Make versions.xml case insensitive, update release notes
2020-07-19 11:44:21 -07: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
sawinglogz
2d2e44fd36
Generalize XML record/replay base classes.
2020-07-10 11:51:53 -04:00
sawinglogz
a651e1405d
Add record/replay test of downloading all sessions from oximeter.
...
Also fix a crash when the recording is truncated.
2020-07-10 11:51:53 -04:00
sawinglogz
e6258d321e
Allow limited reordering of serial port replay.
...
Now a replayed read() will return the response that follows the
matching write().
When calls are made in the same order as they were during recording,
this will have no effect, and the original ordering will be replayed.
However, minor changes to the code should still result in sensible
replay until a new recording can be made.
2020-07-10 11:51:53 -04:00
sawinglogz
918f4af2c1
Add support for signals and serial port reading to XML replay.
...
Replay now passes its initial regression test when the oximeter is unplugged.
2020-07-10 11:51:52 -04:00
sawinglogz
5947751291
Add playback of most serial port operations.
...
read() isn't yet tested because it requires the readyRead signal.
2020-07-10 11:51:52 -04:00
sawinglogz
92d0af220d
Make XML recording thread-safe.
2020-07-10 11:51:52 -04:00
sawinglogz
8fbf665b89
Simplify XmlReplayEvent retrieval and add support for matching id.
2020-07-10 11:51:52 -04:00
sawinglogz
d350e47382
Track connections by name only, not by type as well.
...
Also rename getAvailableSerialPorts for clarity.
2020-07-10 11:51:52 -04:00
sawinglogz
553cf59a95
Move connection creation to DeviceConnectionManager.
...
Calling openConnection will return an open connection or nullptr.
Deleting the connection will close it.
SerialPort now uses this under the hood, while still presenting
the QSerialPort-compatible interface.
2020-07-10 11:51:52 -04:00
sawinglogz
7c98af3f86
Refactor class hierarchy for serial port XML recording.
2020-07-10 11:51:51 -04:00
sawinglogz
1630051dd1
Generate XML tags for every serial port connection event.
2020-07-10 11:51:51 -04:00
sawinglogz
3210ecd1ba
Add plumbing for intercepting and logging serial port activity.
2020-07-10 11:51:51 -04:00
sawinglogz
3afa8c87c1
Minor tidying and documentation, no functional change.
2020-07-10 11:51:51 -04:00
sawinglogz
ac1281c1d9
Add playback of serial port scan, along with supporting infrastructure.
2020-07-10 11:51:51 -04:00
sawinglogz
efbb967b5c
Add DeviceConnectionManager class to record serial port scan.
2020-07-10 11:51:51 -04:00
sawinglogz
cd29593280
Add XML serialization/deserialization to SerialPortInfo.
2020-07-10 11:51:51 -04:00
Guy Scharf
a89c24a194
Fix maximum zoom in when clicking on graph with popup menu visible
2020-07-07 11:07:44 -07:00
Guy Scharf
47c8ece333
Exclude Journal in calculating last day of Overview graph
...
This deals with notes that may be entered for future dates
and which should not affect the Overview graphs.
2020-07-06 11:51:09 -07:00
Guy Scharf
ed1871215e
Change language about "guessed settings" to clarify that they are missing and yesterday's shown.
2020-07-06 10:46:08 -07:00
Guy Scharf
07aa2ad883
Merge branch 'master' into guess
2020-07-05 17:59:27 -07:00
Guy Scharf
aad1535979
WIP: Guessed settings. Code is test only.
2020-07-05 11:19:19 -07:00
Guy Scharf
7e751a80f7
Fix problems with changing auto check interval
2020-07-05 10:58:25 -07:00
Guy Scharf
70262fa425
Fix reference to old include file in auto check updates
2020-07-05 00:39:55 -07:00
Guy Scharf
155bd0b530
Auto Check Updates for testing versions.xml settings
...
If you are running a test version of OSCAR, it will first try to read versions.xml from your OSCAR_Data directory.
If that fails, it will go to www.sleepfiles.com/OSCAR/versions/versions.xml
The purpose of this approach is to allow you to test different settings in versions.xml
This debug feature will probably be removed, or changed, when a release version is built
2020-07-04 20:18:15 -07:00
Guy Scharf
44b7261edd
Merge branch 'master' into updater
2020-07-04 18:21:33 -07:00
Guy Scharf
619ce66b9e
Auto check for updates
...
Checks for updates to OSCAR at startup and profile close.
Also allows user to check with Help/Check for updates.
Updates controlled by versions.xml in www.sleepfiles.com/oscar/versions
2020-07-04 18:17:25 -07:00
Phil Olynyk
f81f500215
Revert "Changed VERSION from alpha to ChrmBk for testing"
...
This reverts commit f57110dd87
.
2020-06-29 11:54:25 -04:00
Phil Olynyk
f57110dd87
Changed VERSION from alpha to ChrmBk for testing
2020-06-29 11:31:42 -04:00
Phil Olynyk
4324000787
Merge the storageInfo branch just merged into master
2020-06-27 09:52:02 -04:00
Phil Olynyk
bbb2f5a5a5
Delete the OS-specif scanning code
2020-06-26 23:17:27 -04:00
Phil Olynyk
c69e2bacee
Merge branch 'master' into storageInfo
2020-06-26 22:58:24 -04:00
Phil Olynyk
cd40fc9a9e
Test if lastpath exists before adding it to path scan
2020-06-26 22:57:08 -04:00
Phil Olynyk
463836f696
Merge branch 'master' into modify-card-scan
2020-06-26 21:22:59 -04:00
sawinglogz
11dfa09c7b
Add preliminary support for rare time-adjustment event observed on PRS1 550P.
...
Also add 900X150 to the list of tested machines, and update other warnings
based on new test data.
2020-06-26 12:53:52 -04:00
Phil Olynyk
8812f3c6ed
Remove bypass of card Detect for Linux - not sure why it was there
2020-06-20 21:57:03 -04:00
Phil Olynyk
0b8112219f
Merge branch 'master' into modify-card-scan
2020-06-20 20:03:37 -04:00
Guy Scharf
059437b40c
Fix margins problem when printing statistics page on MacOS
...
Despite havine a 3.3 mm margin on Windows, Linux and MacOS use a 12 mm bottom margin for an HP printer
Set margins to 10,10,10,12 unless printer reports a larger margin; then use larger margin
Reduce debug messages
Fix regression that trimmed last character from user information lines
Continue use of Helvetica font for printing Statistics
Adjust column sizes for Standard vs Monthly reports
2020-06-11 11:01:28 -07:00
Guy Scharf
b7223560bd
Remove excess diagnostics from statistics.cpp
2020-06-10 14:46:55 -07:00
Guy Scharf
88289deec4
Clean up Statistics page HTML
...
Now passes HTML 4.01 Transitional validator with no errors
Also fix table alignment regression introduced in last commit
Adjust column widths differently for Monthly vs Standard tables
2020-06-10 14:34:18 -07:00
Phil Olynyk
475bfee924
Make debug output conditional
2020-06-10 16:56:06 -04:00
Phil Olynyk
795a3a5456
add missing close paren to #elif defined(...
2020-06-10 15:47:25 -04:00
Phil Olynyk
c2c61c6629
Correct Mac define value and drop tmpfs from qDebug output
2020-06-09 22:11:34 -04:00
Phil Olynyk
80a5642ee3
Use QStorageInfo to simplify getDriveList()
2020-06-09 17:10:25 -04:00
Guy Scharf
488425df80
Improve Statistics printing
...
Adjust font sizing and scaling algorithm to printe more uniform reports on different platforms
2020-06-09 12:07:55 -07:00
Guy Scharf
e635bd9a0f
Tweak statistics page formatting and printer font sizing
2020-06-09 10:27:11 -07:00
Guy Scharf
010d3ca9e1
Fix possible startup problem with View/Show Personal Data
2020-06-06 12:34:34 -07:00
Guy Scharf
d02d01f3f2
Fix use case where View/Show Personal Data might not work
2020-06-05 09:25:42 -07:00
Guy Scharf
6e1727eb2c
New privacy tool View/Show Personal Data shows and hides personal identification from statistics window and reports
...
This option applies to the application and not just the current profile.
2020-06-04 21:25:23 -07:00
sawinglogz
7a85f9784c
Add initial device connection classes to eventually support recording/playback.
...
This initial commit is designed to change as little existing code as possible.
Once regression tests are in place that can play back previously recorded
data, we can move on to more significant changes.
2020-06-04 14:32:03 -04:00
sawinglogz
160b6124a3
Fix typo.
2020-06-04 10:01:40 -04:00
sawinglogz
cdec75b94b
Update 500G warnings based on new test data.
2020-06-04 10:01:26 -04:00
Guy Scharf
5c88770bfe
Improve language in error message windows
2020-06-03 10:02:20 -07:00
Guy Scharf
db952c9738
Change VERSION to 1.1.2-alpha-0
2020-06-03 10:01:47 -07:00
Guy Scharf
8579b1d63d
Change "yesterday" to "1 day ago" in Welcome message
...
and fix date plural in oximetry Welcome message
2020-06-03 09:36:52 -07:00
Phil Olynyk
2d69049c77
Update VERSION to v1.1.1
2020-06-02 16:41:10 -04:00
sawinglogz
d01c183ae3
Add 400X130 to the list of tested machines.
2020-05-29 12:38:39 -04:00
sawinglogz
4507f8d7a8
Fix crash when trying to import Weinmann SOMNObalance e.
...
This patch only addresses the crash, it doesn't add support for the machine.
2020-05-28 22:11:28 -04:00
Guy Scharf
11cefbd799
Rename Turkish language and add native language name to list of names.
2020-05-28 12:41:32 -07:00
Phil Olynyk
87369f6cf7
Update version to rc-4, and fix a typo
2020-05-28 13:25:09 -04:00
Guy Scharf
7a6284e72b
Fix regression in e921e7de
2020-05-26 12:34:22 -07:00
Guy Scharf
d666feb362
Merge branch 'master' into duration
2020-05-26 10:15:00 -07:00
Guy Scharf
66523e15f4
Don't display event duration when zero on flow graph
2020-05-26 10:07:59 -07:00
Phil Olynyk
e921e7dee5
Add QT version check at journal.cpp:262
2020-05-26 11:48:34 -04:00
sawinglogz
4fa353a263
Fix regression in da60a5a
and underlying bug.
...
Note that operator[] on a non-const QHash inserts a default-constructed
item in the hash if the key doesn't already exist.
2020-05-23 21:51:43 -04:00
sawinglogz
47ea2bbf91
Tweak copy constructors to fix build errors in CentOS.
...
Thanks to johanfh.
Fixes #19 .
2020-05-23 11:22:59 -04:00
Guy Scharf
da60a5aa99
Correct determination of CPAP Mode
2020-05-23 05:20:33 -07:00
Guy Scharf
1659b3e6bf
New Backup Journal code using QXmlStreamWriter class
2020-05-21 20:33:43 -07:00
sawinglogz
1976795cb9
Export only CPAP sessions in the sessions CSV export.
...
This fixes the mystery sessions that were appearing in CSV exports.
2020-05-20 13:40:20 -04:00
Phil Olynyk
6dcc0310fa
Update VERSION to v1.1.1-rc-3
2020-05-19 15:06:37 -04:00
Phil Olynyk
26eb76b5ff
Merge branch 'master' into save-backupSTR
...
Pick up changed VERSION file
2020-05-19 15:01:14 -04:00
Phil Olynyk
2ad6a5c980
Fix debug output text
2020-05-19 14:47:54 -04:00
Phil Olynyk
ee3a79af7e
Copy new STR.edf to Backup after Backup_STR scan
2020-05-18 17:42:37 -04:00
Phil Olynyk
2d4598d5e7
Fix type in procedure name
2020-05-18 13:59:10 -04:00
Phil Olynyk
b9cccdc746
Clean up, and copy Backup/STR.edf to Backup?STR_Backup/STR_yyyymmdd.edf
...
before copying import/STR.edf to Backup/STR.edf.
2020-05-17 19:24:31 -04:00
Phil Olynyk
e2efbe673c
Update VERSION to v1.1.1-rc-2
2020-05-17 11:39:20 -04:00
Phil Olynyk
cf32639b06
Clean up comments and trim file paths
2020-05-16 17:31:18 -04:00
Phil Olynyk
53d0c0fbe4
Merge branch 'master' into error-message-cleanup
2020-05-16 16:18:27 -04:00
Phil Olynyk
16cd85ab02
More tidying up
2020-05-16 16:16:10 -04:00
sawinglogz
922515b3c9
Update PRS1 900X and 500G warnings based on new test data.
2020-05-16 10:09:00 -04:00
Phil Olynyk
209998fe34
Re-arrange code to backup STR.edf before other files
2020-05-15 21:27:08 -04:00
Phil Olynyk
ebd518a9f5
Make sure STR.edf is copied to Backup folder during import
2020-05-15 19:58:11 -04:00
Phil Olynyk
5b87ad6640
Comment out extra debug statements
2020-05-15 12:44:29 -04:00
Phil Olynyk
71e156dfed
Change setMin/Max to updateMin/Max in LoadEDF procedures
2020-05-14 21:10:03 -04:00
Phil Olynyk
6fcd82a296
Update release notes and VERSION for v.1.1.1-rc-1
2020-05-13 16:20:22 -04:00
sawinglogz
759ae84f65
Update PRS1 900X and oximetry warnings based on new test data.
2020-05-13 13:40:54 -04:00
sawinglogz
2a92569393
Add 461CA and 700X120 to the list of tested machines, and refine
...
unexpected data warnings.
2020-05-12 14:08:24 -04:00
sawinglogz
5270fcd09b
Update PRS1 400X-700X warnings based on new test data.
2020-05-12 13:26:45 -04:00
sawinglogz
346208140e
Revise VS2 index to match official reports.
...
The VS2 channel is unique in that it only appears (as a flag)
when there are nonzero snores during a 2-minute period. However, the
VS index isn't the number of events (nonzero intervals) per hour,
but rather the number of snores per hour.
2020-05-07 17:36:31 -04:00
Phil Olynyk
c43479672a
Pick up some PRS changes
2020-05-07 16:45:17 -04:00
Phil Olynyk
2da3a9cd86
Track down zero time that led to future sessions
2020-05-07 16:43:52 -04:00
sawinglogz
f2fd29bc52
Update PRS1 900X warnings based on new test data.
2020-05-07 14:49:07 -04:00
sawinglogz
d9386a993b
Partial fix for database upgrade loop.
...
Resmed loader still needs to return -1 on error.
Also fixed a crasher in MainWindow::finishCPAPImport.
2020-05-06 13:40:59 -04:00
sawinglogz
ad15655ffb
Improve Viatom file selection on Windows.
...
Also remove a warning about unexpected data.
2020-05-06 11:42:03 -04:00
Phil Olynyk
1b453e2fa5
Always creaste Backup/DATALOG folder before ScanFiles
2020-05-04 19:59:59 -04:00
sawinglogz
cfe69ea7a0
Update PRS1 200X-700X warnings based on new test data.
2020-05-04 14:21:17 -04:00
Phil Olynyk
23d177b31c
Add error checks to edf header values
2020-04-30 15:27:37 -04:00
Phil Olynyk
0e1cabbad5
Merge branch 'master' into check-channel-ptr
2020-04-30 12:47:08 -04:00
Phil Olynyk
823266f627
Check result of EDFInfo::Parse()
2020-04-30 12:42:05 -04:00
Guy Scharf
dcd2fa9566
Correct syntax and logic error in selecting SleepyHead folder for migration
2020-04-30 08:35:59 -07:00
Phil Olynyk
c1f986921d
Clean up memory leak I created
2020-04-29 19:51:32 -04:00
Phil Olynyk
cf316e83e9
Revert "Clean up memory leak I created"
...
This reverts commit 832d905d04
.
2020-04-29 19:49:27 -04:00
Phil Olynyk
832d905d04
Clean up memory leak I created
2020-04-29 19:42:26 -04:00
Phil Olynyk
5b64566c59
Increment resmed data version to force rebuilds
2020-04-29 14:11:39 -04:00
Phil Olynyk
4323577412
Merge branch 'master' into add-backup-STR-file
2020-04-29 13:58:35 -04:00
Phil Olynyk
33e5561ad3
Rename STR files to use 8 digit date
2020-04-29 13:57:10 -04:00
sawinglogz
01c7f7cdc0
Exclude additional invalid samples in PRS1 oximetry.
...
Also clean up some function names and remove unnecessary code.
2020-04-29 10:41:08 -04:00
sawinglogz
5f0960aa4d
Add support for PRS1 sessions with oximetry data split between files.
2020-04-29 10:22:12 -04:00
sawinglogz
6261752022
Fix zero AHI in CSV session export when there are multiple slices.
...
This only affected PRS1, and it seems like the other places where
the broken Session::hours() result was used were:
- GT_SESSIONS, which seems to be unused
- settings_wavg, where it had no effect
The other uses of Settings::hours() were where there was only
a single slice, in which case it returned the right result:
- gSessionTimesChar::paint (the one still in use)
- Icon loader
- Resmed loader
2020-04-28 13:00:58 -04:00
sawinglogz
7b65a85c14
Add PRS1 pressure-set channels to CSV export.
2020-04-28 12:11:41 -04:00
sawinglogz
0680424759
Refactor CSV export slightly to make it easier to add new channels.
...
No functional change.
2020-04-28 12:06:45 -04:00
sawinglogz
a8cd0a72b4
Add support for AVAPS in overview pressure chart.
2020-04-27 20:18:05 -04:00
sawinglogz
4a5322c350
Fix overview pressure chart for PRS1 pressure setting channels.
2020-04-27 17:35:50 -04:00
sawinglogz
670693dd5f
Move gPressureChart value calculation into addSlice.
2020-04-27 16:55:56 -04:00
sawinglogz
33eacab53f
Refactor gPressureChart::populate().
2020-04-27 16:46:25 -04:00
sawinglogz
c5768a64fe
Simplify gPressureChart upper label formatting.
2020-04-27 16:07:15 -04:00
sawinglogz
d13109bbed
Replace gPressureChart array indices with channel-based references.
2020-04-27 15:50:55 -04:00
sawinglogz
0ebf4e70a3
Clean up gPressureChart constructor, with minor refactoring.
2020-04-27 14:46:49 -04:00
sawinglogz
cfca378160
Move pressure chart class into its own files.
2020-04-27 14:12:16 -04:00
Phil Olynyk
16c2784915
Always read STR.edf file from BACKUP folder.
...
Use real date for STR files in STR_Backup folder, and
only keep the longest file if the dates are the same.
2020-04-26 20:59:23 -04:00
sawinglogz
75bfdf2142
Fix Viatom loader glitch that prevented saving older sessions in a folder.
2020-04-26 14:06:48 -04:00
sawinglogz
17e2ef0a12
Detect OpenGL crashes on Windows and automatically downgrade to the software engine.
2020-04-25 16:30:35 -04:00
sawinglogz
2ac43a4a79
Fix zipping on Windows.
2020-04-24 16:58:44 -04:00
sawinglogz
2b6cdccb16
Update unexpected data alerts for PRS1 500X110 based on new sample data.
2020-04-24 16:58:44 -04:00
sawinglogz
5f921a0fd1
Fix inverted logic on untested data message.
2020-04-24 16:58:44 -04:00
sawinglogz
0fa066db47
Fix (mask) pressure waveform scaling for PRS1 960T.
2020-04-22 17:14:59 -04:00
sawinglogz
40553fcf5e
Add PRS1-specific "peak flow" channel used by pre-DreamStation ventilators.
2020-04-22 17:14:59 -04:00
sawinglogz
d41622443d
Remove ramp time and pressure when PRS1 ramp is off for pre-DreamStation machines.
2020-04-22 17:14:59 -04:00
sawinglogz
59e4a3af68
Add icon for older C-Series PRS1 ventilators.
2020-04-22 17:14:58 -04:00
sawinglogz
f189b2f0e2
Clean up consistency checks during import of F3V0 and F3V3.
...
Import was working, but the consistency checks made a few assumptions
that turned out not to be universally applicable, so they were
making a lot of unnecessary noise.
2020-04-22 17:14:58 -04:00
sawinglogz
141988b6bf
Add support for PRS1 F3V0.
...
Parsing is complete, import still needs review.
The only other functional change is parsing the Bi-Flex lock
setting that also applies F3V3.
2020-04-22 17:14:58 -04:00