Skip to content
Snippets Groups Projects

loopy unpacking and multi packing

Merged Sevda Esen requested to merge sevda-loopy-unpacking3 into master
2 files
+ 92
12
Compare changes
  • Side-by-side
  • Inline
Files
2
@@ -343,26 +343,28 @@ class PersistRecoPacking(object):
algs = self.as_configurables(algs)
return algs
def make_container_map(self):
cmap = {}
for name in self._descriptors.keys():
for loc, ploc in zip(self.unpacked[name], self.packed[name]):
if self.recoprefix in loc:
unpacked = unpacked_prefix(ploc, self.prefix)
if loc != unpacked: cmap[loc] = unpacked
return cmap
def packers_by_key(self,
configurables=False,
output_level=WARNING,
encoding_key=0,
enable_check=False):
"""Return the dict of packing algorithms for the inputs."""
algs = {}
map = {}
for name in self._descriptors.keys():
algs[name] = []
for name in self._descriptors.keys():
zipped = zip(self.unpacked[name], self.packed[name])
for loc, ploc in zipped:
if self.recoprefix in loc:
if loc != unpacked_prefix(ploc, self.prefix):
map[loc] = unpacked_prefix(ploc, self.prefix)
cmap = self.make_container_map()
for name, d in self._descriptors.items():
zipped = zip(self.unpacked[name], self.packed[name])
for loc, ploc in zipped:
for loc, ploc in zip(self.unpacked[name], self.packed[name]):
if (loc.startswith(
self.prefix)): #only location in the requested stream
@@ -373,7 +375,8 @@ class PersistRecoPacking(object):
outputs={'OutputName': force_location(ploc)},
ExtraOutputs=[force_location(ploc)],
ANNSvc=self.annsvc,
ContainerMap=map)
EncodingKey=encoding_key,
ContainerMap=cmap)
algs[name] += [alg]
if configurables:
algs = self.as_configurables(algs)
@@ -382,11 +385,14 @@ class PersistRecoPacking(object):
def packers(self,
configurables=False,
output_level=WARNING,
encoding_key=0,
enable_check=False):
"""Return the list of packing algorithms."""
algs = []
for p in self.packers_by_key(
output_level=output_level, enable_check=enable_check).values():
output_level=output_level,
enable_check=enable_check,
encoding_key=encoding_key).values():
algs += p
if configurables:
algs = self.as_configurables(algs)
Loading