Phil Olynyk
da29e35766
Merge master with tidy-edf-parser
2020-02-02 14:52:02 -05:00
Phil Olynyk
f903a26d11
Force use of systems Standard Time Zone by QDateTime
2020-02-02 14:29:23 -05:00
Guy Scharf
2a03ff6c57
Fix "-pluis" notation on Windows builds
2020-02-01 19:07:47 -07:00
sawinglogz
39e243a36d
Comment out set but otherwise unused variables.
...
g++ warns about this, which we treat as an error.
2020-01-31 17:18:01 -05:00
sawinglogz
e0b50a5680
Improve purging UI for oximeters.
...
The imported data doesn't list a brand, so the UI needs to fall back
on the loader name. Also, the purge menu wasn't getting updated
after an oximetry import.
2020-01-31 15:35:36 -05:00
sawinglogz
ea66563521
Allow purging of any machine, not just CPAP.
...
Otherwise there was no way to purge and re-import Somnopose or
hypnogram data, nor oximetry apart from one day at a time.
2020-01-31 15:16:31 -05:00
sawinglogz
a585b6dcfe
Refactor PopulatePurgeMenu in advance of supporting more machines.
2020-01-31 14:35:15 -05:00
sawinglogz
ad9ac16f80
Add support for discontinuous hyponogram data in ZEO loader.
...
Also support sleep stage 6 ("Deep (2)") and adjust scale of chart
so that deep sleep is more visible.
And adjust scale of Dreem chart to match.
2020-01-31 13:31:49 -05:00
sawinglogz
492908f538
Add support for discontinuous hyponogram data in Dreem loader.
2020-01-31 12:44:41 -05:00
Phil Olynyk
6624738f67
Clean up EDFInfo class to avoid memory leaks
2020-01-30 19:54:53 -05:00
Phil Olynyk
0fd25f2f4e
Add delete (obj) to clean up memory leaks
2020-01-30 19:52:37 -05:00
sawinglogz
ab9d5e87c5
Flip the sleep stage data to negative so that the chart is drawn in the right orientation.
...
Ideally graphs would be able to invert their Y axis without this hack, but
it works for now. It would also be good to support non-numeric labels
in the graph legend.
2020-01-30 13:45:55 -05:00
sawinglogz
62880d1a00
Comment and whitespace cleanup in Dreem, Viatom, and Zeo loaders.
2020-01-30 13:17:51 -05:00
sawinglogz
156215b729
Clean up Zeo loader using techniques from the Dreem loader.
...
Also speed up skipping previously imported sessions by bailing
earlier. No other change in functionality.
2020-01-30 12:25:35 -05:00
sawinglogz
32ffcc4f94
First pass at Dreem CSV loader.
...
Something's not quite right about the hypnogram timestamps, since
there are more than would fit within the start/stop times.
2020-01-29 20:00:33 -05:00
sawinglogz
f33dd654f8
Add generic CSV reader class and switch ZEO loader to it.
...
No change in functionality for ZEO files.
Resolves crashing (assertion failure) on non-ZEO CSV files.
2020-01-29 17:05:03 -05:00
sawinglogz
8ef068af7e
Fix ZEO loader to handle MyZeo 0.3.1 date formatting.
...
Also make the UI more informative and fix up the regression test output.
2020-01-29 16:21:42 -05:00
sawinglogz
448bfa048c
Refactor ZEO loader to allow for testing, add regression tests.
2020-01-29 15:47:11 -05:00
sawinglogz
b82d5dc971
Fix memory leak in PRS1 loader.
2020-01-29 10:43:58 -05:00
sawinglogz
cb576437ab
Clean up noise and memory leaks in unit tests.
2020-01-29 09:10:29 -05:00
sawinglogz
077f51178f
Split PRS1 oximetry data so that invalid samples show up as gaps on the charts.
2020-01-28 17:36:02 -05:00
sawinglogz
15e6f1eadf
Refactor PRS1 oximetry import to prepare for discontinuous data.
...
Also remove some return values that were unused.
2020-01-28 16:04:34 -05:00
sawinglogz
0358386cd3
Fix PRS1 tube diameter display.
...
It was being parsed correctly, but the mapping to display was wrong.
2020-01-28 14:07:58 -05:00
sawinglogz
ba81370fb6
Update PRS1 warnings based on new sample data, add 500X130 to list of tested madels.
2020-01-28 13:19:45 -05:00
sawinglogz
5fedd8349a
Fix Bi-Flex labeling for PRS1 DreamStation 600X and 700X machines.
2020-01-28 12:02:03 -05:00
sawinglogz
c6169da7e0
Fix regression in f865b371
: the pressure average channel is truly the pressure average for bi-level modes.
...
This changes the parsing to distinguish between the "flex pressure" reported
by single-pressure modes (which remains effectively EPAP) and the average
pressure reported by bi-level modes (which returns to its former average
pressure channel).
2020-01-28 11:26:31 -05:00
sawinglogz
369275988b
Clean up error reporting when parsing PRS1 data chunks.
...
Also remove some error-handling code that we can't verify and probably
never worked correctly.
2020-01-28 09:34:02 -05:00
sawinglogz
20b5ae454c
Fix pinch gestures so that spreading fingers zooms in.
2020-01-27 15:04:54 -05:00
sawinglogz
f865b37102
Remap PRS1 pressure average channel to EPAP, which it most closely matches.
...
Technically it's "flex pressure" and not true EPAP, since it's provided for
non-bi-level modes, but Flex is pretty close to bi-level.
2020-01-27 14:57:53 -05:00
sawinglogz
ef0cb253cd
Add CPAP_PressureSet/EPAPSet/IPAPSet to daily statistics view.
...
Also add a breadcrumb for fixing average calculation for these channels.
2020-01-27 14:28:25 -05:00
sawinglogz
7a42caeccf
Create new Troubleshooting submenu under Help and move a bunch of items there.
...
Also change "archive" to "zip" in the menu and prompts for sending diagnostic data.
2020-01-27 14:13:41 -05:00
sawinglogz
6d47210c95
Ask the user where to save screenshots (by default).
...
There's a new preference to turn this off.
Also update the release notes post-beta-1.
2020-01-27 14:00:41 -05:00
sawinglogz
5122524df7
Leave a breadcrumb for future work on Purge Oximetry, which only half works.
2020-01-27 12:37:10 -05:00
sawinglogz
277b2a5422
Infer the serial number from Viatom directory if possible.
2020-01-27 12:26:35 -05:00
sawinglogz
780a703f18
Tweak the unexpected data warning for Viatom now that we can import more than just single files.
2020-01-27 09:15:15 -05:00
sawinglogz
e11bdf2633
Update Viatom tests to process folders of test data.
2020-01-26 20:05:14 -05:00
sawinglogz
4ebc7d3681
Rename POS_Motion channel to POS_Movement to match Viatom report terminology.
...
Also move database updates to Open() rather than at each file imported.
2020-01-26 19:50:18 -05:00
sawinglogz
3548b083fe
Move Viatom unexpected data warning to Open() instead of each file.
2020-01-26 18:28:10 -05:00
sawinglogz
8951068895
Add support for importing a whole folder of Viatom files.
2020-01-26 18:13:09 -05:00
sawinglogz
b6f7ebac6f
Move Viatom filename pattern matching into loader.
2020-01-26 17:51:56 -05:00
sawinglogz
c06057ef14
Skip previously imported Viatom sessions.
2020-01-26 17:20:58 -05:00
sawinglogz
5e07187860
Fix the Viatom loader's mysteriously missing sessions.
...
It looks like SaveSummaryCache() would occasionally get called elsewhere
under certain circumstances, which would cause sessions to occasionally
save, but unpredictably. Now the summary cache gets saved consistently.
2020-01-25 17:35:58 -05:00
sawinglogz
c727e78d45
Add support for discontinuous Viatom data.
...
This now correctly shows gaps in the oximetry data when there are
invalid samples, rather than holding the previous values.
2020-01-25 16:55:32 -05:00
sawinglogz
2f7b39f808
Deduplicate Viatom 2s files to their true 4s resolution.
2020-01-25 14:50:45 -05:00
sawinglogz
61333aff07
Rewrite the Viatom header parsing to read all data and warn about unexpected data.
...
It turns out the 2s-resolution files are actually 4s resolution with
each sample reported twice! Fixing that is next.
2020-01-24 20:16:57 -05:00
sawinglogz
21e7ae8b61
Set event list rate based on step, fix Viatom header size.
2020-01-24 15:25:36 -05:00
sawinglogz
70de112192
Split Viatom parsing from importing, no functional change.
2020-01-24 15:20:00 -05:00
sawinglogz
ae8ce0e9d6
Remove tabs in Viatom loader and normalize whitespace to OSCAR convensions.
...
Also change from using sprintf/QDateTime::fromString to using Qt native objects.
No change in output.
2020-01-23 19:25:06 -05:00
sawinglogz
9cb7de950b
Add regression tests for Viatom loader.
...
Also enable the native file dialog box for importing Viatom files.
2020-01-23 19:11:05 -05:00
sawinglogz
3fbc1777c5
Make Viatom loader MT_OXIMETER and remove MT_MULTI.
...
There's way too much logic throughout the code that makes assumptions
based on MT_OXIMETER.
2020-01-23 19:10:25 -05:00
sawinglogz
66f13f3143
Initial commit of contributed Viatom SpO2 loader.
...
Diff applied from the following commit by dave madden <dhm@mersenne.com>,
replacing tabs with spaces:
fa38850503
2020-01-23 12:57:44 -05:00
sawinglogz
94e39c2733
Use Qt standard shortcuts for printing, bold, italic, and underline.
...
In theory these will automatically get localized, since they're using
Qt's official enums.
2020-01-22 20:10:43 -05:00
sawinglogz
c4d16b7169
Add support for 1030X CPAP mode.
2020-01-22 19:52:49 -05:00
sawinglogz
640c110acd
Make DreamStation settings size checks less picky.
...
They'll no longer refuse to load the session, and instead they'll flag
any small settings slices as unexpected data.
2020-01-22 19:34:42 -05:00
sawinglogz
65a48a6384
Merge branch 'master' into add-zip-archiving
2020-01-22 17:35:26 -05:00
sawinglogz
78d3155ecd
Add zip creation of OSCAR data folder.
...
Also fix the zip progress bar when compressing more than 2GB data,
and prevent the zip file from ever trying to include itself.
2020-01-22 17:33:15 -05:00
Phil Olynyk
80edf9d4f9
Always use pre5.8 mSec to/from epoch calls
2020-01-22 14:23:37 -05:00
sawinglogz
5dfbc1fbe4
Add progress bar to zip creation.
2020-01-22 12:59:58 -05:00
sawinglogz
c4619dad35
Clean up zip API.
2020-01-22 11:25:20 -05:00
sawinglogz
607002ffa1
Separate directory walking from zip creation.
...
This is necessary for presenting a progress bar during zip creation.
2020-01-22 10:56:08 -05:00
sawinglogz
1c4c7871da
Add zip creation of SD card data.
...
This uses the miniz library, which is self-contained in a single
.c/.h pair and has an MIT license.
Swapping out the zip library should be fairly straightforward
if ever necessary.
2020-01-21 17:37:37 -05:00
Phil Olynyk
04c085f924
Add code to use old calls with old Qt versions
2020-01-21 15:53:08 -05:00
Phil Olynyk
0dba31e58b
Changes for old QT and compiler versions
2020-01-21 13:49:02 -05:00
sawinglogz
46e061d12b
Add CPAP data card selection to archive creation workflow.
...
Also slightly refine some verbiage in the import process to make it simpler.
Zip creation still to come.
2020-01-21 12:56:08 -05:00
sawinglogz
36d3467a64
Refactor on_action_Import_Data_triggered into multiple functions.
...
No change in behavior.
2020-01-21 11:56:22 -05:00
sawinglogz
99badd40c3
Add menu entries for creating zip archives of SD cards and OSCAR data.
...
Also hide a few "not yet implemented" items.
Actual zipping comes later.
2020-01-21 11:22:49 -05:00
Guy Scharf
703fe2a613
Update awk and inno setup scripts for new versioning changes in Windows build tools
...
Version number in Windows oscar.exe has first three numbers same as string and fourth as 0
Version number in Windows installer has first three numbers same as string and fourth indicates build type:
0 = release, 100=alpha, 200=beta, 300=gamma, 400=rc
2020-01-19 18:18:21 -07:00
Guy Scharf
0a55e12d5b
Merge branch 'master' into version
2020-01-18 19:58:13 -07:00
Guy Scharf
8a0dc47279
New update_gitinfo.bat and changes to oscar.pro to support new versioning on Windows
2020-01-18 19:56:25 -07:00
sawinglogz
aba58d9085
Second pass at fixing display of Preferences menu shortcut on macOS.
...
The previous fix didn't work 100% of the time either.
2020-01-18 20:34:10 -05:00
sawinglogz
d8cc142501
Add "ignore older than" support to PRS1 importer.
...
Now it actually works.
2020-01-18 20:16:31 -05:00
sawinglogz
91dbd3a204
Fix the display of Preferences menu shortcut on macOS.
...
It was appearing only on first launch, when OSCAR was asking where
to store its data. Now it appears consistently.
2020-01-18 17:01:35 -05:00
sawinglogz
127a3e1964
Fix logger thread so that it doesn't lose messages at startup.
...
This was particularly noticeable when running for the first time and
selecting OSCAR's data location.
2020-01-18 11:41:09 -05:00
sawinglogz
62b5ba3a60
Fix annoying precompiler limitation/bug in version sandbox logic.
2020-01-17 16:27:52 -05:00
sawinglogz
79ec192051
Fix update_gitinfo to detect detached head state properly.
2020-01-17 16:19:13 -05:00
sawinglogz
796f4659ab
Update preference sandbox logic.
...
Release/RC version: no sandbox
Testing releases (tagged prerelease version): -test
Development builds: -branchname (if at the head of a branch)
-(commitid) (if in a headless state)
And in the unlikely event someone tries to build a non-release version
from a tarball instead of git, its sandbox will be "-unreleased".
2020-01-17 15:59:29 -05:00
sawinglogz
740ff460e7
Add version information to macOS application bundle and dmg.
2020-01-17 13:06:33 -05:00
sawinglogz
8417e7d43f
Move macOS create_dmg script to its proper place.
2020-01-16 19:48:30 -05:00
sawinglogz
656f8a3c61
Attempt to update update_gitinfo.bat to match the bash script.
...
This is almost certain to be broken. Somebody with a Windows build
environment will need to test and fix it.
2020-01-16 17:47:48 -05:00
sawinglogz
083fa3debd
Move version and git constants into #defines and update bash script.
...
The bash script now adds a #define if the current checkout is
exactly on a tag, and it leaves all #defines empty if building
from a tarball.
The batch file still needs to be updated.
2020-01-16 17:37:43 -05:00
sawinglogz
6d53fc5ebf
Make the list of machines in the release notes an actual list.
2020-01-16 16:13:53 -05:00
sawinglogz
e125e79d00
Remove old build_number.h and infrastructure now that it's abandoned.
2020-01-16 16:07:55 -05:00
sawinglogz
768f32821a
Clean up version.cpp, no functional changes.
2020-01-16 16:06:11 -05:00
sawinglogz
1f4bb2d435
Clean up build information and version interface.
...
This removes git dependencies from everything except for version.cpp,
and removes the associated interfaces in version.h.
Since the full version string contains the branch and revision
number where applicable, the build information no longer needs
to report branch and revision separately. It also now queries
version.cpp for a more consistent and reliable build time.
Debug output of build information is also now more consistent with
less redundant code.
2020-01-16 13:58:18 -05:00
sawinglogz
2e92107cce
Update version display throughout to use the new information and be consistent.
...
The full version now includes the build/git information embedded within
it as build metadata according to the Semantic Versioning 2.0.0 spec,
for example: "1.1.0-beta-1+branch-name-a1b2c3d".
Now the full version string, with all detail is always displayed
EXCEPT for release versions, in which case just the simple version
number ("1.1.0") is displayed in the primary UI.
- Main window title: simple version for release versions, full version
string otherwise
- Notifications: same as main window title
- System tray: same as main window title
- About window title: same as main window title
- About window release notes: always include full version string
- Reports: always include full version string
- Under the logo (about dialog, profile selector, new profile
window): removed, as it is largely redundant and can
interfere with the window geometry.
- Database upgrade alert: same as main window title
- Database newer alert: same as main window title
The full version string is also included within the preference and
profile .xml files, but because build metadata is ignored in version
comparisons, differences in builds will not cause any spurious
alerts. However, changes in prerelease versions will continue to
be significant, as they should be.
2020-01-16 13:05:55 -05:00
sawinglogz
80489a4b29
Add error handling in case a developer accidentally defines an invalid version.
2020-01-16 11:54:41 -05:00
sawinglogz
c71a953afd
Add build metadata to version string.
...
Also update git scripts to make build metadata compliant with
semantic versioning.
2020-01-16 11:33:39 -05:00
sawinglogz
88957aeb7f
Replace VersionString with getVersion() everywhere.
2020-01-15 19:45:46 -05:00
sawinglogz
f7f1ddfcbd
Update version logic to drive entirely from defined string rather than individual components.
2020-01-15 19:27:03 -05:00
sawinglogz
93b9007f67
Remove old version comparison code.
2020-01-15 17:15:24 -05:00
sawinglogz
d7fade5f4c
Add Version class for Semantic Versioning 2.0.0 parsing and comparison.
...
Also add unit tests for the new class.
2020-01-15 17:00:21 -05:00
sawinglogz
d898581ca4
Remove version.h dependency from appsettings.h to reduce unnecessary recompiling.
2020-01-15 16:34:28 -05:00
sawinglogz
fb32e16c96
Clean up version.h interface and reduce duplcate code.
...
Only minor cosmetic changes in how the version is displayed in
certain places.
2020-01-15 13:18:00 -05:00
sawinglogz
6f194507a8
Move version-related code into version.cpp.
2020-01-13 18:41:24 -05:00
sawinglogz
097362dfa1
Move version constants out of header file into new cpp file.
2020-01-13 18:41:24 -05:00
sawinglogz
cb036c4497
Remove some redundant hard-coding in daily settings view.
2020-01-12 20:17:07 -05:00
sawinglogz
787a6ed128
Fix PRS1 humidifer settings labels.
...
For this to be visible, the user needs to reset their channel
preferences to defaults. (This general limitation is logged as
an issue in Mantis.)
2020-01-12 20:13:21 -05:00
sawinglogz
46a81cd804
Fix PRS1 F5V01 flex parsing and add logging for F5V2.
...
Pre-DreamStation ASV flex settings should now be correct.
2020-01-12 19:34:51 -05:00
sawinglogz
2d3d5453b9
Update PRS1 flex parser for F0V234 based on remaining sample data.
...
Minimal changes, it was already mostly right.
2020-01-12 17:27:12 -05:00
sawinglogz
7909a26ab6
Split ParseFlexSetting into F0V234 and F5V012 versions, begin rewrite based on initial sample data.
...
These were incorrectly merged, resulting in convoluted logic and
occasionally incorrect results. ASV is still very much a work in
progress.
2020-01-12 16:53:43 -05:00
sawinglogz
3b1d3028ff
Document a few lingering PRS1 humidification samples.
2020-01-11 19:23:43 -05:00
sawinglogz
9edfd59476
Fix PRS1 humidity import.
...
Previously it was reporting spurious information when the humidifier was
disconnected. Now it only reports settings details when the humidifier is
connected (the only time they're valid.)
It also now reports the humidification mode (fixed, adaptive, or heated
tube), and the heated tube temperature when appropriate.
2020-01-11 19:14:01 -05:00
sawinglogz
b0de30082c
Update F0V6, F5V3 and F3V6 (DreamStation) humidifier parsing based on all available sample data.
...
No real change to functionality, other than confirming correct behavior,
documenting observed data and adding flags for anything new.
2020-01-11 15:13:24 -05:00
sawinglogz
37882ef750
Update F3V3 humidifier parsing based on all available sample data.
...
No real change to functionality, other than confirming correct behavior,
documenting observed data and adding flags for anything new.
2020-01-10 17:28:31 -05:00
sawinglogz
5bfcda73c6
Update F0V4 and F5V12 (60-Series) humidifier parsing based on all available sample data.
...
No real change to functionality, other than confirming correct behavior,
documenting observed data and adding flags for anything new.
The ParseHumidifierSettingF0V4 function has now been renamed to
ParseHumidifierSetting60Series for accuracy.
2020-01-10 16:45:12 -05:00
sawinglogz
05779eac4f
Update FV023 and F5V0 summary parsers to parse the humidification at equipment-off.
...
Accordingly update ParseHumidifierSetting50Series to add a parameter
controlling whether parsed settings should be imported or not,
consistent with all other PRS1 humidifier parsers.
2020-01-10 12:57:18 -05:00
sawinglogz
7028f20aaf
Update F0V23 and F5V0 humidifier parsing based on all available sample data.
...
The ParseHumidifierSettingV2 function has now been renamed to
ParseHumidifierSetting50Series for accuracy, and the code and
parameters which had been used when 60-Series machines (incorrectly)
relied on it has been removed.
2020-01-10 12:39:54 -05:00
sawinglogz
b9c598127c
Add observations from initial batch of PRS1 humidification samples, add instrumentation to identify additional samples.
...
Also add initial fixes to F5V0 humidifer parsing, which was probably wrong.
2020-01-10 10:49:08 -05:00
Guy Scharf
25ed86401c
Merge branch 'master' into timedbreath
2020-01-07 23:39:38 -07:00
sawinglogz
b6c2aa4610
Improve macOS create_dmg script and update Qt Creator build instructions.
2020-01-07 19:40:58 -05:00
sawinglogz
50b47a9bff
Fix the tail ends of statistic channels on PRS1.
...
The last statistics events in each slice are now correctly imported.
Previously, in the surprising edge case where two statistic periods are
reported with the same end-of-slice timestamp, they were both being duplicated
when marking the end of the slice.
Also, there were scattered instances where the final statistics in a slice
weren't being imported at all or were being imported incorrectly. These are
now fixed as well.
2020-01-06 21:45:52 -05:00
sawinglogz
cd35f6d4d7
Add internal pseudo-event for PRS1 parsers to mark the boundary between statistic intervals.
...
No change in import behavior yet, but this will be needed to deal with a weird edge
case in which two statistic periods are reported with the same end-of-slice timestamp,
the first one intended to cover the preceding 2 minutes, the second one presumably
intended to cover the fractional second after the previous interval, though all
values are 0, so it's hard to be sure.
2020-01-06 11:59:15 -05:00
sawinglogz
97c7a4f557
Update PRS1 test YAML to emit first and last N/2 samples instead of first N, allowing for regression testing of end-of-session edge cases.
2020-01-05 16:02:04 -05:00
sawinglogz
43716793b4
Add user alert when unexpected PRS1 data is encountered on import.
...
Also rename some variables for clarity.
2020-01-04 22:06:28 -05:00
sawinglogz
26a844c720
Add infrastructure to allow PRS1 loader to alert the user when it encounters unexpected data.
...
Only the tests currently react to this information.
2020-01-04 20:47:28 -05:00
sawinglogz
41579d4919
Reset import warnings when running a new version of OSCAR.
2019-12-30 14:25:37 -06:00
Phil Olynyk
ccba19b3d2
Conditionalize debug output with DEBUG_SESSION and DEBUG_IDENT
2019-12-30 11:14:05 -05:00
Guy Scharf
280c847996
Eliminate MINOR_FLAG from list of indices on Daily page.
...
This results in Timed Breath no longer being shown in the index list.
2019-12-29 22:56:54 -07:00
sawinglogz
fdd1b658a2
Update PRS1 loader to respect new preference for warnings on untested machines.
2019-12-29 22:09:46 -06:00
sawinglogz
9521de7e18
Add preferences to disable import warnings for untested machines and unexpected data.
...
The preferences don't have any effect yet.
2019-12-29 21:54:59 -06:00
sawinglogz
3be691f2d8
Add README to macOS .dmg and "make dist-mac" target to do so.
...
The build instructions for Qt Creator still need to be updated
to use the new create_dmg script.
2019-12-29 15:56:17 -06:00
Guy Scharf
41bd1ded63
Show n/a for pressure on Daily page below AHI if there is no valid value. Also update release notes to reflect this.
2019-12-28 23:16:59 -07:00
sawinglogz
f1bd9c585b
Merge branch 'master' into leave-new-charts-enabled
2019-12-27 23:08:04 -06:00
sawinglogz
47f38ab29e
Remove obsolete TODOs and commented-out code in PRS1 loader.
2019-12-27 23:05:15 -06:00
sawinglogz
4976d7077e
Fix the missing import progress dialog when forcing a rebuild.
...
Because opening a profile already had a progress dialog open, the import
process during a forced rebuild wasn't appearing, so it would look like
OSCAR was hanging for as long as the import took.
Temporarily hiding the profile progress dialog resolves the issue.
2019-12-27 22:29:18 -06:00
sawinglogz
ba44887853
Bump the PRS1 loader version to force rebuilds of PRS1 data.
...
This was bumped once already after the previous release version, but
bumping it again now will make sure that all beta testers are working
from data based on the current state of the PRS1 loader.
2019-12-27 22:10:02 -06:00
sawinglogz
b90571e940
Change the name of the PRS1_0E channel so that its new color takes effect by default.
...
Originally it wasn't being drawn as a span, so black was fine. That doesn't work so well now.
2019-12-27 22:08:59 -06:00
sawinglogz
e74bfbf2fd
Change the channel IDs for pressure/IPAP/EPAP-Set events so that the previous fix always works.
...
Settings are written as soon as a day is viewed, so anybody who viewed
their PRS1 data prior to the previous commit would have settings with the
channels expressly disabled. Changing the channel ID forces them to be
treated as new, and thus default to on.
2019-12-27 22:06:31 -06:00
sawinglogz
d02e1dd235
When loading settings, leave unspecified defaults alone.
...
This prevents new charts (such as CPAP_PressureSet, etc.) from being
disabled by virtue of their being absent from existing settings.
2019-12-26 16:04:54 -06:00
Guy Scharf
7c15e9bd9c
Add PressureSet, EPAPSet, and IPAPSet lines to Statistics page
2019-12-24 23:12:49 -07:00
Phil Olynyk
031989e300
Final re-arrangement of resmed import code
2019-12-23 21:44:10 -05:00
Guy Scharf
66575d17d4
Documentation for 1.1.0-beta-1
2019-12-18 23:34:53 -07:00
sawinglogz
14aad44f21
Add support for newly observed PRS1 EZ-Start in Auto-CPAP mode.
2019-12-07 15:10:48 -05:00
sawinglogz
a495defdce
Add support for P-Flex and add 501X120 to tested list.
2019-12-03 19:04:09 -05:00
sawinglogz
e380b408fd
Remove warnings about PRS1 oximetry being untested.
...
Also fine-tune various warnings for weird data, such as truncated
chunks and multiple sessions in a waveform file.
2019-12-02 17:30:28 -05:00
sawinglogz
8740ddf923
Add pressure pulse event observed on F5V1.
2019-12-01 18:21:18 -05:00
sawinglogz
7d355f3699
Confirmed F5V1 slice 8 has a timestamp.
2019-12-01 18:16:57 -05:00
sawinglogz
23007c9223
Add observed disconnected alarm setting to F5V1.
2019-12-01 18:01:32 -05:00
sawinglogz
13c7ab8629
Gracefully handle PRS1 summary chunks with zero length.
2019-12-01 17:30:39 -05:00
sawinglogz
c0e3c22e88
Move PRS1 waveform session ID check out of parser and into import.
...
It turns out that some F5V1 machines record both decimal and hex
filenames for some reason.
2019-12-01 16:44:24 -05:00
Guy Scharf
29a782731f
Add missing translation call for a tooltip
2019-11-21 16:39:36 -07:00
sawinglogz
4321c3685a
Add 951P to PRS1 tested list.
...
Also add support for parsing and proceeding past a previously
unseen F5V0 event, though for now it's just getting swallowed
since its meaning isn't entirely clear.
2019-11-20 12:33:45 -05:00
sawinglogz
6b413d0bb6
Fix PRS1 chunk YAML to include labels for internal F3V3 events added in 3c214db1
.
...
Also remove obsolete comments and events.
2019-11-19 20:08:10 -05:00
sawinglogz
46c9d4f0c8
Chase down PRS1 unordered time warnings and add an explanatory TODO comment.
...
Also fix some whitespace.
No functional changes.
2019-11-19 16:00:08 -05:00
sawinglogz
60ec8711dc
Report PRS1 BND regions based on mask-off slices rather than gaps in waveform data.
...
This adds BND flagging to machines without waveform data, such as F3V3 (1160P)
and bricks (250P, 200X), as well as sessions for which waveform data was
unavailable. It also catches BNDs at the end of a session, which were
previously missed.
2019-11-19 15:05:08 -05:00
sawinglogz
36a85111fd
Add end data points to PRS1 interval events.
...
By duplicating the last reported event at its originally reported
event (clamped to the slice end time for F3V3), charts will now
correctly show the value during that last interval.
Also fix some slice sanity checks so they don't yell when F3V3
skips an event chunk.
2019-11-19 14:18:13 -05:00
sawinglogz
89a707a664
Create separate event lists per slice for remaining PRS1 machines.
...
This now correctly shows gaps in therapy and statistics when the
mask is off. It also corrects the initial statistics for some sessions
to 1 second later, when the initial mask-on slice begins 1 second
after the session starts.
Weird zero-length PB and LL events are now dropped on import, since
they wouldn't get drawn anyway and seem to be peculiar artifacts.
2019-11-19 12:29:45 -05:00
Phil Olynyk
eeed7c29bc
Split resmedEDFinfo class into new files
2019-11-17 16:41:47 -05:00
sawinglogz
d9212a19fa
Split PRS1 interval event determination into IsIntervalEvent.
...
Also fix F3V3 CA/OA/HY timestamps, which weren't shifted left.
2019-11-16 20:07:52 -05:00
sawinglogz
903fae6546
Split interval handling out of switch statement in PRS1Import::ImportEventChunk.
...
This will allow special treatment of interval events in multiple places within
the function.
2019-11-14 19:24:45 -05:00