rssoft  0.0.0
Reed-Solomon codes library with soft decision decoding
/shared/development/google_code/rssoft/library/lib/EvaluationValues.h
Go to the documentation of this file.
00001 /*
00002      Copyright 2013 Edouard Griffiths <f4exb at free dot fr>
00003 
00004      This file is part of RSSoft. A Reed-Solomon Soft Decoding library
00005 
00006      This program is free software; you can redistribute it and/or modify
00007      it under the terms of the GNU General Public License as published by
00008      the Free Software Foundation; either version 2 of the License, or
00009      (at your option) any later version.
00010 
00011      This program is distributed in the hope that it will be useful,
00012      but WITHOUT ANY WARRANTY; without even the implied warranty of
00013      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014      GNU General Public License for more details.
00015 
00016      You should have received a copy of the GNU General Public License
00017      along with this program; if not, write to the Free Software
00018      Foundation, Inc., 51 Franklin Street, Boston, MA  02110-1301  USA
00019 
00020          Original from Arash Partow (see original copytight notice).
00021          Modified and included in RSSoft in gf sub-namespace.
00022 
00023          Evaluation points of encoding polynomial and symbol values
00024          Following the format of Reliability and Multiplicity matrices:
00025          - Horizontal, column or X values represent the successive evaluation points in GFq of the
00026            encoding polynomial
00027          - Vertical, row or Y values represent the successive symbol values of the corresponding elements in GFq
00028 
00029 */
00030 #ifndef __EVALUATION_VALUES__
00031 #define __EVALUATION_VALUES__
00032 
00033 #include "GFq_Element.h"
00034 #include <vector>
00035 
00036 namespace rssoft
00037 {
00038 namespace gf
00039 {
00040 class GFq;
00041 }
00042 
00043 
00049 class EvaluationValues
00050 {
00051 public:
00058         EvaluationValues(const gf::GFq& _gf);
00059 
00066         EvaluationValues(const gf::GFq& _gf, const std::vector<gf::GFq_Element>& _x_values, const std::vector<gf::GFq_Element>& _y_values);
00067 
00071         ~EvaluationValues();
00072 
00073         const std::vector<gf::GFq_Element>& get_x_values() const
00074         {
00075                 return x_values;
00076         }
00077 
00078         const std::vector<gf::GFq_Element>& get_evaluation_points() const
00079         {
00080                 return x_values;
00081         }
00082 
00083         const std::vector<gf::GFq_Element>& get_y_values() const
00084         {
00085                 return y_values;
00086         }
00087 
00088         const std::vector<gf::GFq_Element>& get_symbols() const
00089         {
00090                 return y_values;
00091         }
00092 
00093 
00094 protected:
00095         const gf::GFq& gf; 
00096         std::vector<gf::GFq_Element> x_values; 
00097         std::vector<gf::GFq_Element> y_values; 
00098 };
00099 
00100 } // namespace rssoft
00101 
00102 #endif // __EVALUATION_VALUES__
 All Classes Namespaces Files Functions Variables Typedefs Friends Defines