EncoderConfig struct and shift operation class