Skip to content
Snippets Groups Projects
Commit d7dbd8c1 authored by tomrink's avatar tomrink
Browse files

snapshot...

parent dff81327
No related branches found
No related tags found
No related merge requests found
......@@ -110,9 +110,17 @@ class Files:
self._current_index = 0
def get_datetime(self, pathname):
"""
:param pathname: The full-path of the file.
:return: The file's time label as a datetime object.
"""
pass
def get_file_containing_time(self, timestamp):
"""
:param timestamp: seconds since the epoch
:return: the file whose time range (defined as the difference between consecutive file time labels) contains timestamp.
"""
k = -1
for i in range(self.ftimes.shape[0]):
if (timestamp >= self.ftimes[i, 0]) and (timestamp < self.ftimes[i, 1]):
......@@ -124,6 +132,11 @@ class Files:
return self.flist[k], self.ftimes[k, 0], k
def get_file(self, timestamp, window=None):
"""
:param timestamp: seconds since the epoch.
:param window: the duration of files in this object. Defaults to the constructor time span.
:return: the file whose duration contains the timestamp.
"""
if window is None:
window = self.span_seconds
else:
......@@ -135,6 +148,22 @@ class Files:
else:
return None, None, None
def get_file_in_range(self, timestamp, t_lo_minutes, t_hi_minutes):
"""
:param timestamp:
:param t_lo_minutes: can be negative or positive
:param t_hi_minutes: can be negative or positive, but must be greater than t_lo_minutes.
:return: the file whose time label is within the absolute range (timestamp + t_lo_minutes, timestamp + t_hi_minutes)
"""
t_lo = timestamp + datetime.timedelta(minutes=t_lo_minutes).seconds
t_hi = timestamp + datetime.timedelta(minutes=t_hi_minutes).seconds
midx = np.where(np.logical_and(self.ftimes[:, 0] >= t_lo, self.ftimes[:, 0] < t_hi))[0]
midx = midx[0] # the first occurrence
return self.flist[midx], self.ftimes[midx, 0], midx
def get_parameters(self):
pass
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment