sawinglogz
9bd7a4942b
Calculate PS for PRS1 F3 machines (S/T and AVAPS models).
2019-10-10 20:13:39 -04:00
sawinglogz
75fca0c951
Merge PRS1 F5 event importers into ImportEventsF5V0123 since they're now identical.
...
No change in functionality.
2019-10-10 18:11:02 -04:00
sawinglogz
86cc4fa210
Clean up PRS1 F5 importers to remove their remaining differences.
...
No change in functionality.
2019-10-10 17:55:27 -04:00
sawinglogz
abb7ddd9cb
Don't calculate unintentional leak for PRS1 autoSV 60-series machines, which report it.
...
This fixes 960P-960T, which was importing both values at each interval, presumably
trampling each other. 950P didn't report it, and DreamStation never calculated it.
Also fix timed breath gain for pre-DreamStation autoSV.
2019-10-10 17:23:07 -04:00
sawinglogz
6715e05f61
Clean up PRS1 F5 (autoSV) importers to minimize their differences.
...
Timed breaths durations are now fixed for 950P-961P, and
960T pressures are now imported correctly.
2019-10-10 16:47:52 -04:00
sawinglogz
a1e66d1c62
Merge PRS1 F0 event importers into ImportEventsF0V2346 since they're now identical.
2019-10-10 14:38:18 -04:00
sawinglogz
e948a45baa
Clean up PRS1 F0 importers to minimize their differences.
...
450P through 960P no longer report the snore count in parentheses
in their VS2 flags.
2019-10-10 14:18:39 -04:00
sawinglogz
a41debc57b
Fix PB and LL start times for PRS1 450P through 960P.
2019-10-10 13:23:20 -04:00
sawinglogz
964ddc855a
Clean up PRS1 importers to reveal any significant differences between them.
...
F3V6 now reports its snore count flags as VS2 in order to be consistent
with all other models. It doesn't seem to report individual VS events.
2019-10-10 12:46:47 -04:00
sawinglogz
42948b2d3c
Check duplicate PRS1 chunks on import to confirm that they are identical, warn if not.
2019-10-10 10:34:36 -04:00
sawinglogz
6ee83576b2
Clean up F3V3 summary and event parsing.
...
F3V3 is unusual. Its events are recorded at fixed intervals like a waveform.
Its summary is recorded with absolute timestamps. Slices are each given their
own chunks in the event file.
This last oddity isn't yet handled.
While examining this, a few other importing issues have been cleaned up:
PRS1DataChunk::ParseEvents no longer needs the mode passed in as an argument,
F5V012 importers should quietly eat the newly parsed pressure
adjustment events until we can import both those and average pressure
statistics, and F5V012 importers should handle real VS events and treat
VS statistics like the other importers do.
2019-10-09 13:35:02 -04:00
sawinglogz
f01ea9b165
Improve PRS1 F3V3 (1061T, 1160P) parsing.
...
Import is still not working correctly, but the parsing now seems
correct, as far as we can verify it at this point.
2019-10-09 10:24:29 -04:00
sawinglogz
a8df58b1ef
Clean up ParseEventsF5V2 switch statement based on sample data.
...
This is very incomplete since we currently have only limited sample
data for F5V2. The events that have been verified will parse
correctly, and the rest will result in a parsing error.
There are some very strange changes in the event numbers compared
to F5V1 and F5V3, it's unclear why.
Note that F5V2 uses a gain of 0.125 like F5V3 instead of 0.1 like F5V1.
2019-10-08 16:49:29 -04:00
sawinglogz
1946be162c
Add support for 16-bit timestamps in F5V1 events.
2019-10-08 11:20:51 -04:00
sawinglogz
5872a9519e
Clean up ParseEventsF5V1 switch statement based on sample data.
...
F5V1 introduces a new Hypopnea variant (event 8) with 2 data bytes.
This was previously seen in F5V3, and it's unclear how this is
different from the usual Hypopnea event (event 7, 1 data byte).
Parsing used to stop when it encountered this event, but now it
can continue through the end of the session.
F5V1 also adds a leak value in its periodic stats, also previously
seen in F5V3. PB start time and duration are now correct.
As with F5V0, now VS, LL, and EPAP adjustment are correctly parsed,
and timestamps and durations are now accurate.
The handlers were essentially copied from F5V3 and F5V0 for
consistency and cross-checking.
2019-10-08 10:44:18 -04:00
sawinglogz
15f7dacbab
Clean up ParseEventsF5V0 switch statement based on sample data.
...
This fixes a lot of issues with event parsing. Now VS, LL, and EPAP
adjustment events are now correctly parsed.
And as a result the timestamps for events and overall session durations
are now accurate.
The handlers were essentially copied from F5V3 and F0V12 for
consistency and cross-checking.
2019-10-05 20:52:34 -04:00
sawinglogz
4119a57278
Comment out unused familyVersion logic in split F5V0, F5V1, F5V2 event parsers.
...
No change in functionality.
2019-10-04 20:51:24 -04:00
sawinglogz
380c9d4071
Split ParseEventsF5V012 into separate functions for F5V0, F5V1, and F5V2.
...
No functional changes.
There's a lot of duplication, but that can be cleaned up once the parsers
work correctly.
2019-10-04 20:10:35 -04:00
sawinglogz
07aec55d80
Migrate F5V012 event loop logic to match F0V4.
...
No changes were intended in the imported data, but the parsers
were fantastically broken, so touching anything in the code
results in lots of differences in the output.
As a result, the imported data for F5V012 is now unstable.
On the plus side, the parser no longer bails on event 8 for F5V1.
This will almost certainly need to be split into 3 separate
functions.
2019-10-04 19:55:18 -04:00
sawinglogz
6992a2f1a9
Update ParseEventsF0V4 with event handlers from F0V23 and F0V6 after verifying them against sample F0V4 data.
...
F0V4 is unsurprisingly a midpoint between the two. PB/LL durations are
doubled as in F0V6 and, in fact, the contents of all events seem
identical between F0V4 and F0V6, apart from the new hypopnea events 0x14
and 0x15 in F0V6. We haven't encountered event 0 in F0V4 or F0V6 data
yet, but it would be an interesting comparison to F0V23.
It's now clear that PRS1PressureAverageEvent can't just be the average
overall pressure, at least not for CPAP: it's too low. This needs
further study.
Import changes:
- As with F0V23, apneas/hypopneas now have a (correct) duration of 0.
- PB/LL will now be drawn at the correct time, instead of starting when
they end. This was already fixed previously in F0V23.
- The EPAP graph is removed from CPAP data until we understand what
the underlying data is.
2019-10-04 18:53:10 -04:00
sawinglogz
027f82e0bb
Migrate F0V4 event loop logic to match F0V23, no change in functionality.
2019-10-04 15:10:08 -04:00
sawinglogz
1d805fd9bc
Fix warnings about unknown duration events for F0V23.
...
We should eventually import and graph these, even if we don't yet understand them.
2019-10-04 13:12:24 -04:00
sawinglogz
9f8f9224ab
Add DreamStation BiPAP AVAPS 30 AE (1131X150) to the list of tested/recognized machines.
2019-10-04 12:20:18 -04:00
sawinglogz
a95429763d
Update ParseEventsF0V23 for unknown event 0.
...
It also turns out that every sample machine that claims to be F0V3 in its
property file contains only F0V2 data, so there appears to be nothing
additional to test, but now there are more warnings in case we ever do
actually encounter F0V3 data.
Also warn if we ever encounter oximetry.
2019-10-04 12:08:16 -04:00
sawinglogz
460959dd78
Update ParseEventsF0V23 with event handlers from F0V6 after verifying them against sample F0V2 data.
...
The only difference so far is the lack of doubled duration for PB/LL, slightly rearranged
events 0-3, and the absence of events 0x14 and 0x15 in F0V2 (so far).
The only change in import functionality is that apneas/hypopneas now have a (correct)
duration of 0.
Next step is to test against more samples and particularly F0V3 samples.
2019-10-04 12:07:06 -04:00
sawinglogz
b2b62256d5
Migrate F0V23 event loop logic to match F0V6, still no change in functionality.
2019-10-03 19:42:28 -04:00
sawinglogz
2f46036a01
Remove F0V4 logic from F0V23 event parser and vice versa. No change in functionality.
2019-10-03 19:06:06 -04:00
sawinglogz
06098b9033
Split ParseEventsF0V234 into F0V23 and F0V4, no change in functionality.
2019-10-03 16:50:59 -04:00
sawinglogz
81a2945d0e
Clean up F3V3 settings parsing. It turns out its humidifier settings are different from F0V4 and F5V012.
2019-10-03 12:33:28 -04:00
sawinglogz
445c74a70e
First pass at F3V3 summary and settings parsing based on 3 sample sessions.
2019-10-02 20:21:43 -04:00
sawinglogz
d87dd6a0aa
Fix ParseFlexSetting for F5V012 rise time.
...
ParseFlexSetting is largely untouched, but as a result also untested.
We should double-check it for all families and versions.
2019-10-02 19:14:24 -04:00
sawinglogz
6e5c751dd5
Finish cleaning up F5V012 settings from sample data.
2019-10-02 18:57:42 -04:00
sawinglogz
16caab4ce5
Add missing events to ParseSummaryF5V012, identify additional settings.
2019-10-02 11:55:44 -04:00
sawinglogz
fd7b5f8be0
Initial pass at ParseSummaryF5V012 based on F0V4.
...
It turns out each familyVersion has records of different sizes, including
the first one containing the settings. It may make more sense to split
summary and/or settings parsing into multiple familyVersion-specific functions.
Also it looks like the F0V4 humidifier settings are actually 60 Series
settings, and the "V2" settings are original System One settings, not
all fileVersion 2 machines.
2019-10-01 18:30:32 -04:00
sawinglogz
fe6c1ec2fa
Split settings from summary parsing for F5V012 and F3V3.
2019-10-01 11:38:16 -04:00
sawinglogz
346d0a8e60
Identify common F0V4 summary statistics.
2019-10-01 11:29:31 -04:00
sawinglogz
166ada843b
Add "support" for clock adjustment event ParseSummaryF0V4 and cleared event in ParseSummaryF0V23.
...
"Support" in this instance means that it will quietly ignore the events, since there's really
nothing to import. But this means that parsing will correctly continue past the events, even
though so far they're the only events in a session. There are diagnostics to log if that
assumption turns out not to be correct.
2019-09-30 15:46:26 -04:00
sawinglogz
4b5cdb8192
Add support for new Time Elapsed event in ParseSummaryF0V4.
...
Still trying to figure out timestamp event.
Other summary parsers will need review, since there was an initial
filter that was dropping sessions that began with event 5 or 6,
now commented out.
2019-09-30 10:23:28 -04:00
Seeker4
2e1069b8d0
Allow user to select graph order when resetting -- Standard or Advanced
2019-09-28 20:15:16 -07:00
Seeker4
f1e4face7f
Update refresh button on Profile selector page. Code to implement this feature was apparently never written.
2019-09-28 20:13:50 -07:00
sawinglogz
e264a86164
First pass at ParseSummaryF0V4, needs testing.
...
Based on the F0V23 loop and F0V6 switch statement, along with manual review of
several sample files to determine record length.
Split ParseHumidifierSettingF0V4 out from ParseSettingsF0V4.
2019-09-28 20:47:24 -04:00
sawinglogz
13395d9c35
Finish cleaning up ParseSettingsF0V4.
2019-09-28 19:31:37 -04:00
sawinglogz
8f49633131
Improve F0V4 settings support, especially humidification.
2019-09-28 18:23:18 -04:00
sawinglogz
c24b29c80a
Partially parse F0V4 humidification settings, need to review more samples to complete.
2019-09-26 12:37:01 -04:00
sawinglogz
e973109ccc
First pass at adding missing settings to F0V4, lots still to find.
2019-09-25 11:17:16 -04:00
Phil Olynyk
6d338ac88f
Clean up some debug messages
2019-09-25 07:25:44 -04:00
sawinglogz
fd23108c3d
Refactor ParseSummaryF0V23 to match loop structure of F0V6. No change to imported data.
2019-09-24 21:07:10 -04:00
sawinglogz
55525cdc01
Update ParseComplianceF0V23 to use new ParseSettingsF0V23, since the data format is the same.
...
This also pushes something that seemed to be settings back into ParseSummaryV023.
2019-09-24 17:00:49 -04:00
sawinglogz
5d40051d70
Split settings parsing out of F0V23 and F0V4 summary parsers.
2019-09-24 16:27:27 -04:00
sawinglogz
9f330b2ec4
Add length checking to PRS1 F0V6 settings.
2019-09-23 14:26:38 -04:00
sawinglogz
bb9cce787c
Parse backup breathing settings for DreamStation 900X machines.
...
No change to imported data.
2019-09-23 14:10:23 -04:00
sawinglogz
2e04755b53
Parse backup breathing settings for DreamStation 1030X-1130X machines.
...
No change to imported data.
2019-09-23 14:04:22 -04:00
sawinglogz
50d60385bd
Add Flex mode setting for DreamStation 900X machines.
2019-09-23 12:56:06 -04:00
sawinglogz
9f28dae627
Add Flex mode setting for DreamStation 1030X-1130X machines.
2019-09-23 12:39:20 -04:00
Phil Olynyk
6896bfd50b
Add missing brace to previous commit
2019-09-22 17:49:00 -04:00
Phil Olynyk
3edff07151
Merge master, fix unreadable and zero-length file conflict
2019-09-22 17:32:09 -04:00
sawinglogz
21f61d7527
Add Flex mode setting for DreamStation 200X-700X machines.
2019-09-20 15:38:14 -04:00
sawinglogz
3c1a7adaa3
Add support for many DreamStation settings, changes to flex mode require rebuilding all PRS1 databases.
2019-09-20 12:59:14 -04:00
sawinglogz
76a71802ab
Rename some internal PRS1 parsing enums to match report terminology.
...
This affects parser YAML output, but has no effect on imported data.
2019-09-20 00:15:40 -04:00
sawinglogz
adc887c5f8
Import additional DreamStation settings:
...
- hose diameter
- auto on
- auto off
- mask resist lock (parsed only)
- show optional screens (parsed only)
2019-09-19 21:29:33 -04:00
sawinglogz
ccfce7fd2e
Add internal parsing (and YAML output) for known DreamStation events that won't get imported.
...
These are events that are in the PRS1 files but which OSCAR doesn't know how to present:
- An F0V6 event with duration that looks like PB or LL but doesn't appear on any official reports
- The Auto-CPAP pressure to use at the beginning of a session
- A report of the snores detected at each pressure/EPAP/IPAP
- Apnea alarms on F3V6
Rather than bury the understanding in commented-out sections of the parser, these events
will now be parsed and added to the internal event stream, which allows them to be dumped
to YAML. Whenever OSCAR eventually supports these data, the importer will have ready
access to them.
Again, no change to external behavior.
2019-09-19 16:43:24 -04:00
sawinglogz
95e2baad26
Distinguish between pressure adjustment events and average pressure stats on PRS1.
...
This only affects the parser at this point, and the importer has been updated so that
there is no externally visible change to the imported data.
Eventually we'll need to figure out how to display the two differing kinds of
pressures, at which point we'll need to fix the importer to use the right channels,
instead of the inconsistent treatment now.
2019-09-19 14:21:12 -04:00
sawinglogz
5e4a24b237
Add support for F3V6 sessions without ramp, with apnea alarm.
2019-09-19 10:33:23 -04:00
Seeker4
d990ce560a
Report pressure when IPAP is missing. This is a preliminary change and will be improved later.
2019-09-16 12:05:47 -07:00
Seeker4
dcf68dac37
Improve diagnostics messages and yet another check for the phantom date
2019-09-16 12:01:30 -07:00
Seeker4
1548a215f6
Document schema better, remove unused definitions
2019-09-16 12:00:14 -07:00
Seeker4
c8c837b50f
Sort machines in machine list by first date of use, adjust footer message
2019-09-16 11:56:40 -07:00
Seeker4
ec9985d32e
Make sessionbar blue color darker and more distinguishable from white
2019-09-16 11:54:42 -07:00
Seeker4
aaf5627891
Ignore zero-length files and add qWarning messages for ignored files.
2019-09-16 11:53:27 -07:00
sawinglogz
517e6f0d86
Merge branch 'master' into prs1-500g110
2019-09-07 20:11:53 -04:00
sawinglogz
45018f4903
Update PRS1 loader from 500G110 test data.
2019-09-07 15:02:16 -04:00
Seeker4
45814d129c
Update release notes, add documentation about graph ordering
2019-09-06 22:16:35 -07:00
Seeker4
67d589f7a4
Change recognition of S9 for SD card warning because of changes to machine naming
2019-09-06 22:15:36 -07:00
Seeker4
a1389ba68a
Include date and time at bottom of report pages
2019-09-06 22:14:32 -07:00
Phil Olynyk
47719a4d09
Merge master back in, prior to push
2019-09-04 13:24:52 -04:00
Seeker4
10ac30f776
Fix problem with S9 SD card warning incorrectly appearing on Welcome
2019-09-03 21:44:02 -07:00
Seeker4
1b67688b12
Fix problem with advanced graphs. Update release notes.
2019-09-03 12:56:10 -07:00
Seeker4
6158d83935
Clean up code -- eliminate qDebug statements
2019-09-02 22:10:36 -07:00
Seeker4
aeffae09fc
Standard and Advanced graphs apparently working, still with lots of diagnostics.
2019-09-01 22:14:36 -07:00
Seeker4
afdcd0bbc4
First step in Daily graphs rework: replace many hard-coded strings as STR_GRAPH_* variables for keys to graphs.
2019-08-31 17:56:53 -07:00
Seeker4
ff37ac0695
Add preferences setting to include machine serial on Statistics page machine settings report, default to off because it is ugly.
2019-08-31 17:06:47 -07:00
Phil Olynyk
efad208143
Adjust epcoh for time zone offset
2019-08-30 14:48:03 -04:00
Phil Olynyk
3055e1fe37
More work in progress
2019-08-30 13:22:19 -04:00
Seeker4
b53b0a99e0
Fix event count formatting in Daily Events tab
2019-08-29 18:47:25 -07:00
Seeker4
ec3063d083
Merge branch 'master' into graphs
2019-08-29 12:48:05 -07:00
Seeker4
70693bcbec
Remove unneeded comment and #include
2019-08-29 12:46:25 -07:00
Seeker4
3cf038cb70
In event list, use only number of digits needed for event count
2019-08-29 07:21:19 -07:00
sawinglogz
384aacc904
Merge branch 'master' into prs1-native-modes
2019-08-28 21:55:56 -04:00
sawinglogz
6b86eb1b11
Fix minor regression for PRS1 F3V6 mode import.
2019-08-28 21:53:50 -04:00
sawinglogz
febf3d2f5b
Split PRS1 device mode parsing from imported modes.
...
This allows the parsing to accurately represent the data, even for modes that
OSCAR doesn't yet support.
2019-08-28 21:30:25 -04:00
Seeker4
c1b4137857
Remove some qDebug statements that aren't needed.
2019-08-28 16:31:56 -07:00
Seeker4
be147fee0a
Always allow import cpap and oximetry. Allow Daily, Overview, and Statistics only if there is some data present.
2019-08-28 15:23:13 -07:00
Seeker4
091253f03d
Show machine (rx) changes only if there are CPAP machines in this profile.
2019-08-28 15:22:31 -07:00
Phil Olynyk
5ee8feb37c
Still work in progress
2019-08-27 23:59:51 -04:00
Seeker4
22a8303836
Trim blanks from user name before checking username is not empty
2019-08-26 23:10:58 -07:00
Seeker4
4fe0869816
On Overview page do not save CUSTOM range selection on exit. (CUSTOM was restoring to a broken state. Now, it is just not saved and default LAST 3 MONTHS applies on restart.
2019-08-26 16:11:09 -07:00
Seeker4
61270ae83e
Refactor getRangeString for date line at bottom of Overview page
2019-08-25 07:46:48 -07:00
Seeker4
61142830ae
Correct date problems on bottom of Overview page. Remove UTC conversions. Improve date formatting for 1 day and more than a year.
2019-08-24 17:47:22 -07:00
Seeker4
9010ca5ae4
Update release notes for progress bar and overview improvements
2019-08-23 12:44:25 -07:00
Seeker4
d7a4bcc78b
Update release notes for this merge
2019-08-23 11:43:43 -07:00
Seeker4
79e34d067a
Add a progressbar when opening an overview with a large number of days
2019-08-23 11:41:42 -07:00
Seeker4
36acc7bd2f
Fix problem that could cause CProgressBar to hang and not close
2019-08-23 11:40:52 -07:00
Phil Olynyk
4c121cc53a
Started on adding firstImportDay, need to fix scanFiles and PaerseSTR
2019-08-23 09:56:17 -04:00
Seeker4
a8dc05c3f5
1.1.0-testing-4 plus fix to overview graph
2019-08-22 19:59:51 -07:00
Seeker4
87d4d0f7b2
1.1.0-testing-4 build number and release notes
2019-08-22 15:17:01 -07:00
Seeker4
1613e20d22
Update release notes for Overview changes
2019-08-22 02:37:51 -07:00
Seeker4
842052addb
Merge branch 'master' into overview
2019-08-22 02:34:56 -07:00
Seeker4
92136e7a63
Fix problem with overview charts all starting at left edge when they should not.
2019-08-22 02:33:18 -07:00
Seeker4
1c304eb13e
Add some documentation to graph modules.
2019-08-22 02:31:33 -07:00
Seeker4
1904e50500
Change green/black and red/black toggle buttons to checkboxes
2019-08-22 02:27:55 -07:00
Seeker4
28326f4ec8
Refactoring overview, add more documentation.
2019-08-22 02:26:33 -07:00
Seeker4
335af79076
Fix spelling error.
2019-08-22 02:24:47 -07:00
Seeker4
ffda65300d
Fix spelling errors.
2019-08-22 02:17:44 -07:00
sawinglogz
42f0745666
Improve settings interpretation for F3V6, though still not exactly right.
...
The next step will be to split parsing from mode interpretation, so that
we can at least accurately identify all of PRS1's modes. Then we can
work on mapping that to OSCAR's notion of modes, which probably then needs
to be augmented.
2019-08-20 12:48:15 -04:00
sawinglogz
ecb71e5706
Calculate PRS1 F3V6 pressure support settings, since we currently display them.
2019-08-20 12:08:24 -04:00
sawinglogz
0c816c7d4c
Avoid pos++ in PRS1 DreamStation parsers to that events can be issued independently of parsing order.
2019-08-20 11:38:55 -04:00
sawinglogz
38409f6fbf
Merge branch 'master' into fix-stale-translations
2019-08-19 17:02:50 -04:00
sawinglogz
42685cfbb6
Only copy current .qm files during build, rather than everything in the temporary directory.
2019-08-19 17:00:31 -04:00
Seeker4
4e52261439
Fix building of oscar_qt_xx.qm file names to be in lower case.
2019-08-19 13:14:07 -07:00
Seeker4
acd7b04b7b
In translations.cpp, add new language names, revise loading of qm files into translator, add debug messages, all qm files are now together in translations directory
2019-08-19 12:36:23 -07:00
Seeker4
9527aadb66
In oscar.pro, add new language files in translations/qt directory. Remove Mac handling for QT files in a different directory.
2019-08-19 12:35:21 -07:00
Seeker4
48c0387125
Release notes for language changes, other minor changes
2019-08-19 12:34:18 -07:00
Seeker4
af2fc6f9c3
Automatically convert IS language code to HE on startup (new code for Hebrew)
2019-08-19 12:32:26 -07:00
sawinglogz
6c85195b39
Remove unused variable that clang missed.
2019-08-19 12:23:45 -04:00
sawinglogz
bed88b1546
Merge branch 'master' into deprecate-series
2019-08-18 17:38:48 -04:00
sawinglogz
65f3f53686
Add model number to printed daily report.
2019-08-18 17:30:52 -04:00
sawinglogz
31fc47a5c5
Remove "series" from display in UI and on reports.
2019-08-18 17:27:21 -04:00
sawinglogz
928e50fcc1
Use actual product names for PRS1 instead of mangled approximations.
2019-08-18 17:03:52 -04:00
sawinglogz
66d9340cbb
Don't mangle the model name for ResMed machines.
2019-08-18 16:56:41 -04:00
Phil Olynyk
b518461f8c
Factor out buildEventList
2019-08-16 22:17:47 -04:00
Phil Olynyk
f5f0d62611
Factor out checkSummaryDay
2019-08-16 19:50:09 -04:00
Phil Olynyk
3e87d9d5e0
Factor out backupSTRfiles
2019-08-16 18:05:25 -04:00
Seeker4
f3605803e1
Remove languages from translations.qrc. Update release notes for post-1.1.0-testing-3
2019-08-15 23:23:22 -07:00
sawinglogz
ad09695531
Copy QT and OSCAR translation files into Mac .app bundle.
...
They are stored in two separate locations (Contents/translations
for QT and Contents/Resources/translations) because
QLibraryInfo::location(QLibraryInfo::TranslationsPath) returns
the former only after macdeployqt has run, and returns Qt's
installed location prior to that.
And Contents/Resources/translations is the better location,
so we use it where we can.
2019-08-15 23:07:54 -04:00
Phil Olynyk
e5d1723c27
Use new annotations in EVE and CSL loaders
2019-08-15 20:30:54 -04:00
sawinglogz
84b900ca90
Remove the m_machopened flag from Profile, which caused newly created profiles
...
to act differently from profiles after a subsequent application launch.
It was only getting set at the end of Profile::OpenMachines, which was only
called by the Profile constructor, and which wouldn't succeed on a newly created
profile, having no files to open. Therefore, the only way for the flag to be set
was to quit and re-launch the application after creating the profile.
The flag's only remaining use was to make sure that OpenMachines() wasn't
getting called twice and trampling an existing list of machines, so the check
there was changed from looking at a brittle flag to looking at the actual list
of machines.
A critical warning was also added to the check, since OpenMachines() is
only getting called from the Profile constructor and therefore can't
be invoked twice unless a new bug has been introduced.
2019-08-15 16:56:44 -04:00
sawinglogz
e3e67438ea
Fix the incomplete cleanup in Profile::UnloadMachineData that was resulting in
...
duplicate sessions being added when making preference changes to a brand new
profile with existing data.
Preference changes trigger a reload, see PreferencesDialog::Save and
needs_reload, leading to MainWindow::reloadProfile -> MainWindow::CloseProfile
-> Profile::UnloadMachineData.
This is the root cause of the duplicate sessions, but the fact that it only
happened with newly created profiles, rather than on subsequent launches,
demonstrates an inconsistency in state of Profile. It should be identical when
initially created and when loaded via subsequent application launch.
2019-08-15 16:28:07 -04:00
sawinglogz
6f7a49f949
Add a critical warning and skip when attempting to add a duplicate session to a Machine object.
...
This prevents duplicate sessions from being added to Day during a rebuild, but is still not
the root cause. The next step will be to address the attempted duplication in Machine.
2019-08-15 16:18:23 -04:00
sawinglogz
7d72f71fb4
Add a critical warning when a duplicate session is added to a Day object.
...
This is one step closer to the root cause of the crash, in which duplicate
sessions were being created during a rebuild.
2019-08-15 16:14:54 -04:00
sawinglogz
6d735a5733
Add Day::removeMachine to detect and clean up dangling references rather than
...
crashing when rebuilding data.
This doesn't yet address the root cause, but it will prevent crashing if other
similar bugs exist.
2019-08-15 15:49:40 -04:00
Seeker4
7786161a4d
Merge branch 'master' into overview
2019-08-14 11:36:18 -07:00
Seeker4
4a7a14c301
Set Windows file version to 0.0.0.0 (make it obviously wrong), improve Windows properties for installer info.
2019-08-14 11:32:08 -07:00
Seeker4
56584bd601
Make 100% zoom work properly on Overview page.
2019-08-14 11:29:26 -07:00
sawinglogz
0b8f89036a
Merge branch 'master' into prs1-f0v6
2019-08-14 09:15:39 -04:00
sawinglogz
675f6d4361
Resolve remaining F0V6 event 3 debug messages in sample data.
2019-08-13 23:03:20 -04:00
sawinglogz
cc80a3ef09
Remove F0V6 logic from PRS1DataChunk::ParseEventsF0V234, no functional change.
2019-08-13 21:09:55 -04:00
sawinglogz
3eee72390e
Clean up PRS1DataChunk::ParseEventsF0V6, no change in functionality.
2019-08-13 17:29:05 -04:00
sawinglogz
73dfdac81b
Add debug logging for PRS1 F0V6 event 3.
2019-08-12 21:51:37 -04:00
Seeker4
4b67af970f
Update release notes for recent changes.
2019-08-12 16:26:35 -07:00
Seeker4
e315baf6df
Test builds use settings key of oscar-test, branch builds oscar-branch, and release builds just oscar. Default data directory named similarly.
2019-08-12 16:02:53 -07:00
Seeker4
3492323216
Change Romanian name to Românește, clarify which translation file qDebug statements refer to.
2019-08-12 15:59:47 -07:00
sawinglogz
3de32dd21b
Fix F0V6 PB starting time, and probably LL and PS as well.
2019-08-12 17:20:25 -04:00
sawinglogz
946293b67d
Split PRS1Import::ParseF0Events into ParseEventsF0V6, no changes yet.
2019-08-12 16:58:27 -04:00
Seeker4
edfbb692e9
Tweak format of date bar on Daily page slightly.
2019-08-09 23:14:32 -07:00
Seeker4
cd30fd73ab
Release notes for Daily page date bar change
2019-08-09 23:00:17 -07:00
Seeker4
d375ab38f8
Merge branch 'master' into dateformat
2019-08-09 22:56:45 -07:00
Seeker4
83a01fa203
Date bar on bottom of Daily graph now in local time when no line cursor displayed, and formatting updated
2019-08-09 22:54:00 -07:00
Seeker4
83a1767789
Merge branch 'master' into graphs
2019-08-09 15:34:59 -07:00
Seeker4
fc3ec0d485
View/Reset Graphs now additionally enables all graphs and all event flags
2019-08-09 15:32:37 -07:00
harre
998eab6180
Another fix for deprecated-copy
2019-08-09 12:35:29 +02:00
Seeker4
a08798cda2
Merge branch 'master' into dateformat
2019-08-08 16:26:02 -07:00
Seeker4
ceba1e81eb
Make date in calendar on Daily page format per regional settings.
2019-08-08 16:24:30 -07:00
harre
77ccd417a3
Fix deprecated-copy errors and made deprecated-declarations just a warning
2019-08-06 23:49:51 +02:00
sawinglogz
d99e397cb3
Update PRS1 parser for 500X, 600X, and 700X events.
2019-08-06 15:47:36 -05:00
Seeker4
5cf6e14816
Fix problems resulting in compiler warning messages
2019-08-06 12:33:48 -07:00
Seeker4
5e16e18b4c
Merge branch 'master' into dateformat
2019-08-06 11:04:14 -07:00
Seeker4
75c0a9950a
Format dates per national settings.
2019-08-06 10:51:14 -07:00
sawinglogz
7dd891df31
Add more F0V6 events based on remaining 400X sample data.
2019-08-05 21:37:19 -05:00
sawinglogz
64309f366a
Add PRS1 model 562P to list of tested machines.
2019-08-05 20:46:05 -05:00
sawinglogz
84f1389d51
Support more F0V6 events based on all sessions from a single 400X machine.
2019-08-05 15:22:22 -05:00
sawinglogz
4e863ba484
Add first confirmed F0V6 events from sample data.
2019-08-04 21:09:42 -05:00
Phil Olynyk
b8b4acb804
Added Annotation dump program and fixed edfparser to make it work
2019-08-04 21:49:17 -04:00
sawinglogz
bcce5f698d
Merge branch 'fix-warnings' into prs1-f0v6
2019-08-04 20:26:03 -05:00
sawinglogz
6831af489c
Fix warning where #include had different case from filename.
2019-08-04 20:22:24 -05:00
sawinglogz
d6da63bf8c
Always treat warnings as errors, even (especially!) in release.
...
Also rename the debug GUI build to "memdebug" to avoid colliding with
Qt's built-in debug build.
2019-08-04 20:21:02 -05:00
sawinglogz
e0d4872f6b
Create placeholder event parser for PRS1 F0V6, separate from other F0 machines.
2019-08-04 19:36:40 -05:00
Seeker4
3ec75dec09
Merge branch 'master' into progress
2019-08-04 08:39:37 -07:00
Seeker4
5697ac53e6
Use new CProgressBar class instead of QProgressDialog
2019-08-04 08:36:34 -07:00
Seeker4
686d83d5ab
Update file list for new CProgressBar class
2019-08-04 08:35:40 -07:00
Seeker4
38a9d71560
Add C[onditional]ProgressBar class.
2019-08-04 08:33:32 -07:00
sawinglogz
2f2cb0e605
Add debug GUI build to track down crashes.
2019-08-03 15:09:41 -05:00
Phil Olynyk
b80ae70525
Changed class EDFParser to EDFInfo, and changed member names to show usage.
...
Added an Annotaions list member to avoid reparsing.
Skipping directories before ignore-before date.
Added a new app to dump STR.edf files.
Still not complete.
2019-08-03 10:59:08 -04:00
Seeker4
3c425d66e4
Correct computation of what AHI values are considered "close"
2019-08-01 12:55:21 -07:00
Seeker4
bd3c078dfb
Merge branch 'master' into welcome
2019-08-01 11:59:32 -07:00
Seeker4
c2e95d51f6
Update 1.1.0-testing-3 release notes for recent changes
2019-08-01 11:57:24 -07:00
Seeker4
ec239edf69
Correct labels in Records tab of right sidebar
2019-08-01 11:56:28 -07:00
Seeker4
a7103efee0
Merge branch 'master' into graphs
2019-08-01 11:24:05 -07:00
Seeker4
8d7e5c7479
Simplify ResMed SD card lock message.
2019-08-01 11:21:57 -07:00
Phil Olynyk
f7227b7316
Don't create (summary) sessions when maskon == maskoff
2019-08-01 13:30:11 -04:00
Phil Olynyk
37c9e615e4
Don't create (summary) session with maskon == maskoff
2019-08-01 12:34:06 -04:00
Phil Olynyk
531edc6ad2
Interim commit - resmed_loader still needs work
2019-07-31 14:36:40 -04:00
Seeker4
c602fa7dcb
Correct 7-day average calculations on Welcome page.
2019-07-31 10:31:08 -07:00
Seeker4
3b1414c37d
When reverting to original graph order, reset any pins.
2019-07-31 08:40:20 -07:00
Seeker4
4532b22fc6
Add View/Reset Graphs to put graphs in original order and heights. Overlays and dotted lines are not yet reset.
2019-07-30 19:59:01 -07:00
Seeker4
d31095318a
OSCAR 1.1.0-testing-3 Release notes and build number
2019-07-28 09:13:54 -07:00
Seeker4
eb756fd2c8
Improve RXChanges progress bar so it displays only if estimated time to completion is more than 4 seconds
2019-07-28 08:18:59 -07:00
Seeker4
fa875ed5ca
Merge branch 'master' into progress
2019-07-28 07:08:27 -07:00
sawinglogz
9a1bccff57
Merge branch 'master' into prs1-improvements
2019-07-27 15:05:33 -04:00
sawinglogz
8ef4766efd
Fix F3V6 imported channels to match reports.
2019-07-27 15:04:20 -04:00
sawinglogz
46a077cb43
Clean up remaining F3V6 import messages.
2019-07-26 22:53:15 -04:00
sawinglogz
5835e6de9c
Remove commented-out F3V6 event code.
2019-07-26 22:29:23 -04:00
sawinglogz
56684de3bc
Add support for more F3V6 events based on more sample sessions.
2019-07-26 22:13:26 -04:00
sawinglogz
eedd41efdf
First pass at parsing F3V6 events, largely based on F5V3 and revised based on a sample session.
2019-07-25 21:44:36 -04:00
Seeker4
5eac97808e
Add missing item to release docs for 1.1.0-testing-2
2019-07-25 14:57:25 -07:00
Seeker4
9a957e75e1
Merge branch 'master' into defaults
2019-07-25 06:32:05 -07:00
Seeker4
96ba683599
Show progress bar if recomputing rxchanges cache and looking at more than 180 days of data
2019-07-25 06:27:02 -07:00
Seeker4
f635302058
Improve performance of enabling or disabling pie chart option
2019-07-25 06:26:19 -07:00
Seeker4
751df7652a
Diagnostic changes for a future feature
2019-07-25 06:25:03 -07:00
Seeker4
7785d7fc9c
Change height and weight decimals displayed, BMI digits displayed
2019-07-25 06:23:24 -07:00
Seeker4
acd078cc82
OSCAR 1.1.0-testing-2 release notes and build number
2019-07-25 06:21:30 -07:00
Seeker4
d04c2ae8ba
Add tooltip to Weight field to explain BMI calculation
2019-07-24 23:18:09 -07:00
sawinglogz
a2bcbf1b00
Fix pressure gain for F3V6 events and waveforms.
...
Also change fileVersion == 3 tests to appropriate familyVersion for ASV and ventilators, respectively.
2019-07-24 22:42:00 -04:00
Phil Olynyk
93b363465f
Merge branch 'master' into tidy-edf-parser
2019-07-24 17:18:03 -04:00
sawinglogz
d33e7585bf
Remove broken original F3V6 summary parser.
2019-07-24 16:51:50 -04:00
sawinglogz
9e54b98cf6
First pass at actual F3V6 (1030X, 1130X) summary and settings support based on sample data. Events are still broken.
2019-07-24 16:50:51 -04:00
Seeker4
4ffb621d09
Make decimal point more visible in BMI display on Daily/Notes tab
2019-07-24 09:17:59 -07:00
Seeker4
16200b46ca
Change metric height in profile dialog to show it is measured in cm, not in meters.
2019-07-24 09:14:13 -07:00
Seeker4
844b33a4c3
Show indices for all events even if flags for an event is disabled
2019-07-24 09:12:05 -07:00
Seeker4
166ffa4970
Show BMI label and calculated value only when both weight and height are non-zero
2019-07-24 01:48:18 -07:00
Seeker4
376d04803a
Show commit id in title bar for all except Release versions.
2019-07-24 01:47:15 -07:00
sawinglogz
872fe74008
Add stub F3V3 summary parser so that events and waveforms will still get loaded.
2019-07-23 20:54:39 -04:00
sawinglogz
83b80cb252
Restrict the current PRS1 F3 summary parser to F3V6, which is all it could (badly) handle anyway.
2019-07-23 20:54:25 -04:00
sawinglogz
1f56927695
Recognize additional PRS1 900X settings.
2019-07-23 12:52:41 -04:00
Phil Olynyk
1953a20cdd
Added Romanian translation file
2019-07-22 17:21:11 -04:00
Phil Olynyk
ed6464e924
an Interim commit...
2019-07-22 17:01:47 -04:00
Seeker4
2568f79a99
Default right sidebar off, calendar off, pie chart off with new OSCAR folder.
2019-07-19 06:43:53 -07:00
Seeker4
b4a64fa8e6
Hide pie chart when taking screen capture. Refactor code in daily.cpp to make use clearer and save html for possible future use.
2019-07-18 22:39:08 -07:00
Seeker4
9d25359138
Version code and release notes for Oscar-1.1.0-testing-1
2019-07-18 22:37:53 -07:00
Seeker4
3f42053a1d
Yet another attempt to calculate the number of months for Statistics page monthly view
2019-07-18 22:36:07 -07:00
Phil Olynyk
6fcc4e9af1
Add number of years times 12 to lastmonth - then trim to 12 max
2019-07-18 21:16:05 -04:00
Phil Olynyk
8c11751b2b
Re-arrange edf-parser code - and fix it
2019-07-18 19:36:35 -04:00
Phil Olynyk
4ad282768c
Merge branch 'master' into fix-png-profile
2019-07-15 16:55:19 -04:00
Phil Olynyk
335737259f
Use mogrify to clean up png color profile for logo files
2019-07-15 16:42:08 -04:00
Seeker4
f6941843e8
Merge branch 'master' into defaults
2019-07-14 20:28:06 -07:00
Seeker4
11f2fb5d3f
Change GraphSnapshots to ShowPieChart in code, UI, and preferences. Convert any existing GraphSnapshots preferences to ShowPieChart.
2019-07-14 20:25:49 -07:00
Seeker4
48b4d754b3
Add utility to rename a preference setting
2019-07-14 20:23:23 -07:00
Seeker4
39542ba7db
Move Pie Chart option from Preferences dialog to View menu.
2019-07-13 14:53:57 -07:00
sawinglogz
d45c9f1449
Fix tests broken by 67ef9f29
.
2019-07-13 09:59:57 -04:00
Seeker4
14611bd591
Change default order of graphs on Daily page.
2019-07-12 19:29:33 -07:00
Seeker4
8f5ed48ae8
Make sure tool buttons on Welcome page are repainted after a font change.
2019-07-12 19:28:57 -07:00
Seeker4
e2f5899fb8
Comment out a qDebug statement that is not normally needed and very voluminous when used.
2019-07-12 19:28:02 -07:00
Phil Olynyk
67ef9f291e
Clean up by deleting unused threading code and re-grouping declarations
2019-07-12 15:58:14 -04:00
Phil Olynyk
b497b3ccbb
QT 5.7 doesn't like comparison of naked chars - construct a QLatin1Char instead
2019-07-12 15:26:05 -04:00
Seeker4
5bf71e2a55
Fix problem with null font name. Forced default font for Mac will be Helvetica.
2019-07-10 21:35:14 -07:00
Seeker4
01f98d1583
Merge branch 'master' into fonts
2019-07-10 15:15:14 -07:00
Seeker4
be9ce5085b
Do not allow private font to be used for other than Application on MacOS
2019-07-10 15:13:27 -07:00
sawinglogz
74de65778e
Fix memory bug in ResMed loader.
2019-07-10 12:37:40 -04:00
sawinglogz
c1aa016a46
Add trivial unit tests for ResMed loader.
2019-07-10 12:33:00 -04:00
Seeker4
a382733d7c
Make Resmed card warning responsive to application font changes.
2019-07-09 07:14:00 -07:00
Seeker4
7dab22133b
Merge branch 'master' into fonts
2019-07-05 14:30:26 -07:00