Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

SPUC::gfx Class Reference
[Forward Error Correcting Codes]

Polynomials over gf(q)[x], where q=2^m, m=1,...,14. More...

#include <gfx.h>

Collaboration diagram for SPUC::gfx:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 gfx ()
 Constructor.
 gfx (int qvalue)
 Constructor.
 gfx (int qvalue, int indegree)
 Constructor.
 gfx (int qvalue, const ivec &invalues)
 Constructor.
 gfx (int qvalue, char *invalues)
 Constructor.
 gfx (int qvalue, string invalues)
 Constructor.
 gfx (const gfx &ingfx)
 Copy constructor.
int get_size () const
 Return q.
int get_degree () const
 Return degree of gf(q)[x].
void set_degree (int indegree)
 Resize the polynomial to the given indegree. If the new polynomial is bigger, then the new coefficients are set to zero.
int get_true_degree () const
 Return true degree of gf(q)[x].
void set (int qvalue, const char *invalues)
 Set the gf(q)[x] polynomial.
void set (int qvalue, const string invalues)
 Set the gf(q)[x] polynomial.
void set (int qvalue, const ivec &invalues)
 Set the gf(q)[x] polynomial.
void clear ()
 Set all coefficients to zero.
gf operator[] (int index) const
 Acces to individual element in the gf(q)[x] polynomial.
gfoperator[] (int index)
 Acces to individual element in the gf(q)[x] polynomial.
void operator= (const gfx &ingfx)
 Copy.
void operator+= (const gfx &ingfx)
 sum of two gf(q)[x]
gfx operator+ (const gfx &ingfx) const
 sum of two gf(q)[x]
void operator-= (const gfx &ingfx)
 Difference of two gf(q), same as sum for q=2^m.
gfx operator- (const gfx &ingfx) const
 Difference of two gf(q), same as sum for q=2^m.
void operator *= (const gfx &ingfx)
 product of two gf(q)[x]
gfx operator * (const gfx &ingfx) const
 product of two gf(q)[x]
gf operator() (const gf &ingf)
 Evaluate polynom at alpha^inexp.

Public Attributes

Array1D< gfcoeffs

Friends

gfx operator * (const gf &ingf, const gfx &ingfx)
 Multiply a gf element with a gf(q)[x].
gfx operator * (const gfx &ingfx, const gf &ingf)
 Multiply a gf(q)[x] with a gf element.
gfx operator/ (const gfx &ingfx, const gf &ingf)
 Divide a gf(q)[x] with a gf element.
ostream & operator<< (ostream &os, const gfx &ingfx)
 Output stream.

Detailed Description

Polynomials over gf(q)[x], where q=2^m, m=1,...,14.


Constructor & Destructor Documentation

gfx::gfx  ) 
 

Constructor.

gfx::gfx int  qvalue  ) 
 

Constructor.

gfx::gfx int  qvalue,
int  indegree
 

Constructor.

gfx::gfx int  qvalue,
const ivec &  invalues
 

Constructor.

gfx::gfx int  qvalue,
char *  invalues
 

Constructor.

gfx::gfx int  qvalue,
string  invalues
 

Constructor.

gfx::gfx const gfx ingfx  ) 
 

Copy constructor.


Member Function Documentation

void gfx::clear  ) 
 

Set all coefficients to zero.

int gfx::get_degree  )  const
 

Return degree of gf(q)[x].

int gfx::get_size  )  const
 

Return q.

int gfx::get_true_degree  )  const
 

Return true degree of gf(q)[x].

gfx gfx::operator * const gfx ingfx  )  const
 

product of two gf(q)[x]

void gfx::operator *= const gfx ingfx  ) 
 

product of two gf(q)[x]

gf gfx::operator() const gf ingf  ) 
 

Evaluate polynom at alpha^inexp.

gfx gfx::operator+ const gfx ingfx  )  const
 

sum of two gf(q)[x]

void gfx::operator+= const gfx ingfx  ) 
 

sum of two gf(q)[x]

gfx gfx::operator- const gfx ingfx  )  const
 

Difference of two gf(q), same as sum for q=2^m.

void gfx::operator-= const gfx ingfx  ) 
 

Difference of two gf(q), same as sum for q=2^m.

void gfx::operator= const gfx ingfx  ) 
 

Copy.

gf& SPUC::gfx::operator[] int  index  )  [inline]
 

Acces to individual element in the gf(q)[x] polynomial.

gf SPUC::gfx::operator[] int  index  )  const [inline]
 

Acces to individual element in the gf(q)[x] polynomial.

void gfx::set int  qvalue,
const ivec &  invalues
 

Set the gf(q)[x] polynomial.

void gfx::set int  qvalue,
const string  invalues
 

Set the gf(q)[x] polynomial.

void gfx::set int  qvalue,
const char *  invalues
 

Set the gf(q)[x] polynomial.

void gfx::set_degree int  indegree  ) 
 

Resize the polynomial to the given indegree. If the new polynomial is bigger, then the new coefficients are set to zero.


Friends And Related Function Documentation

gfx operator * const gfx ingfx,
const gf ingf
[friend]
 

Multiply a gf(q)[x] with a gf element.

gfx operator * const gf ingf,
const gfx ingfx
[friend]
 

Multiply a gf element with a gf(q)[x].

gfx operator/ const gfx ingfx,
const gf ingf
[friend]
 

Divide a gf(q)[x] with a gf element.

ostream& operator<< ostream &  os,
const gfx ingfx
[friend]
 

Output stream.


Member Data Documentation

Array1D<gf> SPUC::gfx::coeffs
 


The documentation for this class was generated from the following files:
Generated on Fri Sep 16 11:07:47 2005 for spuc by  doxygen 1.4.4