+ fn quant_vectors(&mut self) {
+ match self.qmode {
+ QuantMode::ELBG => {
+ let mut elbg_v1: ELBG<YUVCode, YUVCodeSum> = ELBG::new(&self.v1_cb);
+ let mut elbg_v4: ELBG<YUVCode, YUVCodeSum> = ELBG::new(&self.v4_cb);
+ elbg_v1.quantise(&self.v1_entries, &mut self.v1_cur_cb);
+ elbg_v4.quantise(&self.v4_entries, &mut self.v4_cur_cb);
+ },
+ QuantMode::Hybrid => {
+ quantise_median_cut::<YUVCode, YUVCodeSum>(&self.v1_entries, &mut self.v1_cur_cb);
+ quantise_median_cut::<YUVCode, YUVCodeSum>(&self.v4_entries, &mut self.v4_cur_cb);
+ let mut elbg_v1: ELBG<YUVCode, YUVCodeSum> = ELBG::new(&self.v1_cur_cb);
+ let mut elbg_v4: ELBG<YUVCode, YUVCodeSum> = ELBG::new(&self.v4_cur_cb);
+ elbg_v1.quantise(&self.v1_entries, &mut self.v1_cur_cb);
+ elbg_v4.quantise(&self.v4_entries, &mut self.v4_cur_cb);
+ },
+ QuantMode::MedianCut => {
+ quantise_median_cut::<YUVCode, YUVCodeSum>(&self.v1_entries, &mut self.v1_cur_cb);
+ quantise_median_cut::<YUVCode, YUVCodeSum>(&self.v4_entries, &mut self.v4_cur_cb);
+ },
+ };
+ }