"""Identify the appropriate :class:`hooke.driver.Driver` for
the curve file (`.path`).
"""
+ if 'filetype' in self.info:
+ driver = [d for d in drivers if d.name == self.info['filetype']]
+ if len(driver) == 1:
+ driver = driver[0]
+ if driver.is_me(self.path):
+ self.driver = driver
+ return
for driver in drivers:
if driver.is_me(self.path):
self.driver = driver # remember the working driver
def load(self):
"""Use the driver to read the curve into memory.
"""
- data,info = self.driver.read(self.path)
+ data,info = self.driver.read(self.path, self.info)
self.data = data
for key,value in info.items():
self.info[key] = value