1#ifndef DYSCO_WEIGHT_ENCODER_H 
    2#define DYSCO_WEIGHT_ENCODER_H 
   38              const std::vector<value_t> &input)
 const {
 
   40    typename std::vector<value_t>::const_iterator i = input.begin();
 
   43    while (i != input.end()) {
 
   44      if (*i > scaleVal) scaleVal = *i;
 
   49    typename std::vector<symbol_t>::iterator d = dest.begin();
 
   51    while (i != input.end()) {
 
   52      *d = roundf(scaleFact * (*i));
 
 
   67              const std::vector<symbol_t> &input)
 const {
 
   68    typename std::vector<symbol_t>::const_iterator i = input.begin();
 
   69    typename std::vector<value_t>::iterator d = dest.begin();
 
   71    while (i != input.end()) {
 
   72      *d = (*i) * scaleFact;
 
 
 
Encoder for visibility weights.
 
unsigned symbol_t
Value type of the symbols to which the weights are encoded.
 
T value_t
Value type of the original weights (a floating point value).
 
void Decode(std::vector< value_t > &dest, value_t scaleVal, const std::vector< symbol_t > &input) const
Decode a previously encoded value.
 
void Encode(value_t &scaleVal, std::vector< symbol_t > &dest, const std::vector< value_t > &input) const
Encodes a vector of values.
 
WeightEncoder(unsigned quantCount)
Construct a new encoder with the given quantization count.