def fromFile(cls,strfile,fretfile=None): 'Load stretching data and corresponding fret data from files' basename,ext=fileIO.splitext(strfile) if not ext: strfile = fileIO.add_pull_ext(basename) pull = TrapData.fromFile(strfile) metadata = {} # check if base + .fret exists if not specified already # and use it, or else load/don't load fretfile fretfileFromBase = fileIO.add_fret_ext(basename) if not fretfile and path.exists(fretfileFromBase): fretfile = fretfileFromBase elif fretfile and not path.exists(fretfile): raise ExperimentError("Fret file {0} not found".format(fretfile)) fret = FretData.fromFile(fretfile) if fretfile else None newPull = cls(pull, fret, **metadata) newPull.filename = basename try: newPull.info = fileIO.parseFilename(basename) except: logger.warning('Problem parsing filename %s' % basename) return newPull
def fromFile(cls, strfile, fretfile=None, metadata={}): 'Load stretching data and corresponding fret data from files' basename, ext = fileIO.splitext(strfile) strfile, fretfileFromBase = (fileIO.add_pull_ext(basename), fileIO.add_fret_ext(basename)) fretfile = fretfile or fretfileFromBase if not opath.exists(fretfile): fretfile = None return super(Pulling, cls).fromFile(strfile, fretfile, metadata)
def fromFile(cls, strfile, fretfile, metadata): assert strfile or fretfile assert isinstance(strfile, str) assert isinstance(fretfile, (str,type(None))) metadata = nesteddict.from_dict(metadata) trap = TrapData.fromFile(strfile) fret = FretData.fromFile(fretfile) if fretfile else None trap.metadata.setdefault('date', today()) trap_datetime = trap.metadata['date'] metadata.setdefault('date', to_date(trap_datetime)) metadata.setdefault('datetime', trap_datetime) metadata['filename'] = fileIO.splitext(strfile)[0] newCls = cls(trap, fret, metadata) assert isinstance(newCls, cls) assert getattr(newCls, 'filename', None) is not None return newCls
def fromFile(cls, strfile, fretfile, metadata): assert strfile or fretfile assert isinstance(strfile, str) assert isinstance(fretfile, (str, type(None))) metadata = nesteddict.from_dict(metadata) trap = TrapData.fromFile(strfile) fret = FretData.fromFile(fretfile) if fretfile else None trap.metadata.setdefault('date', today()) trap_datetime = trap.metadata['date'] metadata.setdefault('date', to_date(trap_datetime)) metadata.setdefault('datetime', trap_datetime) metadata['filename'] = fileIO.splitext(strfile)[0] newCls = cls(trap, fret, metadata) assert isinstance(newCls, cls) assert getattr(newCls, 'filename', None) is not None return newCls
def fromFile(filename): basename, ext = fileIO.splitext(filename) if not ext or Pulling.EXTENSION == ext: return Pulling.fromFile(filename)