cache more things
This commit is contained in:
parent
8b5a88f36f
commit
4f49c2c4ac
1 changed files with 7 additions and 5 deletions
|
@ -47,14 +47,14 @@ class Emfit:
|
||||||
return self.jj['hrv_rmssd_evening']
|
return self.jj['hrv_rmssd_evening']
|
||||||
|
|
||||||
# ok, I guess that's reasonable way of defining sleep date
|
# ok, I guess that's reasonable way of defining sleep date
|
||||||
@cproperty
|
@property
|
||||||
def date(self):
|
def date(self):
|
||||||
return self.end.date()
|
return self.end.date()
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Bed time, not necessarily sleep
|
Bed time, not necessarily sleep
|
||||||
"""
|
"""
|
||||||
@cproperty
|
@property
|
||||||
def start(self):
|
def start(self):
|
||||||
return fromts(self.jj['time_start'])
|
return fromts(self.jj['time_start'])
|
||||||
|
|
||||||
|
@ -78,6 +78,7 @@ class Emfit:
|
||||||
eps.append(e)
|
eps.append(e)
|
||||||
return tss, eps
|
return tss, eps
|
||||||
|
|
||||||
|
# TODO are these utc?? should be visible on big plot
|
||||||
@cproperty
|
@cproperty
|
||||||
def sleep_start(self) -> datetime:
|
def sleep_start(self) -> datetime:
|
||||||
for [ts, e] in self.epochs:
|
for [ts, e] in self.epochs:
|
||||||
|
@ -236,7 +237,7 @@ recovery: {self.recovery:3.0f}
|
||||||
def measured_hr_avg(self):
|
def measured_hr_avg(self):
|
||||||
return self.jj["measured_hr_avg"]
|
return self.jj["measured_hr_avg"]
|
||||||
|
|
||||||
@property
|
@cproperty
|
||||||
def sleep_hr_coverage(self):
|
def sleep_hr_coverage(self):
|
||||||
tss, hrs = self.sleep_hr
|
tss, hrs = self.sleep_hr
|
||||||
covered = len([h for h in hrs if h is not None])
|
covered = len([h for h in hrs if h is not None])
|
||||||
|
@ -260,13 +261,14 @@ def iter_datas() -> Iterator[Emfit]:
|
||||||
yield get_emfit(sid, f)
|
yield get_emfit(sid, f)
|
||||||
|
|
||||||
|
|
||||||
# @functools.lru_cache()
|
|
||||||
def get_datas() -> List[Emfit]:
|
def get_datas() -> List[Emfit]:
|
||||||
return list(sorted(iter_datas(), key=lambda e: e.start))
|
return list(sorted(iter_datas(), key=lambda e: e.start))
|
||||||
# TODO move away old entries if there is a diff??
|
# TODO move away old entries if there is a diff??
|
||||||
|
|
||||||
|
from kython import timed
|
||||||
from kython import group_by_key
|
from kython import group_by_key
|
||||||
|
|
||||||
|
@timed
|
||||||
def by_night() -> Dict[date, Emfit]:
|
def by_night() -> Dict[date, Emfit]:
|
||||||
logger = get_logger()
|
logger = get_logger()
|
||||||
res: Dict[date, Emfit] = odict()
|
res: Dict[date, Emfit] = odict()
|
||||||
|
|
Loading…
Add table
Reference in a new issue