/// <summary>
        /// Constructor for creating instance of interpolation polynomial builder
        /// </summary>
        /// <param name="combinationsCountCalculator">Implementation of combinations count calculator contract</param>
        /// <param name="linearSystemSolver">Implementation of linear systems solver contract</param>
        public SimplePolynomialBuilder(ICombinationsCountCalculator combinationsCountCalculator, ILinearSystemSolver linearSystemSolver)
        {
            if (combinationsCountCalculator == null)
            {
                throw new ArgumentNullException(nameof(combinationsCountCalculator));
            }
            if (linearSystemSolver == null)
            {
                throw new ArgumentNullException(nameof(linearSystemSolver));
            }

            _combinationsCountCalculator = combinationsCountCalculator;
            _linearSystemSolver          = linearSystemSolver;
        }
        /// <summary>
        /// Constructor for creation implementation of contract of generating polynomials builder
        /// </summary>
        /// <param name="complementaryFiltersBuilder">Implementation of contract of complementary filters builder</param>
        /// <param name="linearSystemSolver">Implementation of contract of linear equations system solver</param>
        public LiftingSchemeBasedBuilder(IComplementaryFiltersBuilder complementaryFiltersBuilder, ILinearSystemSolver linearSystemSolver)
        {
            if (complementaryFiltersBuilder == null)
            {
                throw new ArgumentNullException(nameof(complementaryFiltersBuilder));
            }
            if (linearSystemSolver == null)
            {
                throw new ArgumentNullException(nameof(linearSystemSolver));
            }

            _complementaryFiltersBuilder = complementaryFiltersBuilder;
            _linearSystemSolver          = linearSystemSolver;
        }
Пример #3
0
 public GaussSolverTests()
 {
     _gaussSolver = new GaussSolver();
 }
Пример #4
0
        /// <summary>
        /// Constructor for creation instance of the implementation of the wavelet code list decoding contract based on Guruswami–Sudan algorithm
        /// </summary>
        /// <param name="rsListDecoder">Implementation of the Reed-Solomon code list decoding contract</param>
        /// <param name="linearSystemSolver">Implementation of the linear equations system solver</param>
        public GsBasedDecoder(RsCodesTools.Decoding.ListDecoder.IListDecoder rsListDecoder, ILinearSystemSolver linearSystemSolver) : base(linearSystemSolver)
        {
            if (rsListDecoder == null)
            {
                throw new ArgumentNullException(nameof(rsListDecoder));
            }

            _rsListDecoder = rsListDecoder;
        }