- def __init__(self, output_width, n_parts, partition_points):
- self.i = FinalReduceData(partition_points, output_width, n_parts)
- self.o = IntermediateData(partition_points, output_width, n_parts)
+ def __init__(self, output_width, n_parts, part_pts):
+ self.part_pts = part_pts
+ self.output_width = output_width
+ self.n_parts = n_parts
+
+ self.i = self.ispec()
+ self.o = self.ospec()
+
+ def ispec(self):
+ return FinalReduceData(self.part_pts, self.output_width, self.n_parts)
+
+ def ospec(self):
+ return IntermediateData(self.part_pts, self.output_width, self.n_parts)