RingEnvelope< Ring > Class Template Reference
[linbox/ring]

implement the ring archetype to minimize code bloat.This class implements all purely virtual member functions of the abstract base class. This class is used to wrap a {LinBox} ring so that it might be used with the Ring archetype. More...

#include <envelope.h>

Inheritance diagram for RingEnvelope< Ring >:
RingAbstract FieldEnvelope< Ring > FieldAbstract FieldAbstract

List of all members.

Public Types

typedef FieldEnvelope< Ring >
::Element 
Element
typedef FieldEnvelope< Ring >
::RandIter 
RandIter

Object Management



class RandIterEnvelope< Ring >
 RingEnvelope (void)
 RingEnvelope (const Ring &F)
 RingEnvelope (const RingEnvelope &E)
FieldAbstractclone () const
RingAbstractoperator= (const RingAbstract &F)
FieldAbstractoperator= (const FieldAbstract &F)
ElementAbstractinit (ElementAbstract &x, const integer &y=0) const
integerconvert (integer &x, const ElementAbstract &y) const
ElementAbstractassign (ElementAbstract &x, const ElementAbstract &y) const
ElementAbstractneg (ElementAbstract &x, const ElementAbstract &y) const
ElementAbstractinv (ElementAbstract &x, const ElementAbstract &y) const
ElementAbstractnegin (ElementAbstract &x) const
ElementAbstractinvin (ElementAbstract &x) const
integercardinality (integer &c) const
integercharacteristic (integer &c) const
bool areEqual (const ElementAbstract &x, const ElementAbstract &y) const
ElementAbstractadd (ElementAbstract &x, const ElementAbstract &y, const ElementAbstract &z) const
ElementAbstractsub (ElementAbstract &x, const ElementAbstract &y, const ElementAbstract &z) const
ElementAbstractmul (ElementAbstract &x, const ElementAbstract &y, const ElementAbstract &z) const
ElementAbstractdiv (ElementAbstract &x, const ElementAbstract &y, const ElementAbstract &z) const
ElementAbstractaxpy (ElementAbstract &r, const ElementAbstract &a, const ElementAbstract &x, const ElementAbstract &y) const
ElementAbstractaddin (ElementAbstract &x, const ElementAbstract &z) const
ElementAbstractsubin (ElementAbstract &x, const ElementAbstract &z) const
ElementAbstractmulin (ElementAbstract &x, const ElementAbstract &z) const
ElementAbstractdivin (ElementAbstract &x, const ElementAbstract &z) const
ElementAbstractaxpyin (ElementAbstract &r, const ElementAbstract &x, const ElementAbstract &y) const
bool isZero (const ElementAbstract &x) const
bool isOne (const ElementAbstract &x) const
bool isUnit (const ElementAbstract &x) const
bool isZeroDivisor (const ElementAbstract &x) const
std::ostream & write (std::ostream &os) const
std::istream & read (std::istream &is)
std::ostream & write (std::ostream &os, const ElementAbstract &x) const
std::istream & read (std::istream &is, ElementAbstract &x) const

Detailed Description

template<class Ring>
class LinBox::RingEnvelope< Ring >

implement the ring archetype to minimize code bloat.

This class implements all purely virtual member functions of the abstract base class. This class is used to wrap a {LinBox} ring so that it might be used with the Ring archetype.


Member Typedef Documentation

typedef FieldEnvelope<Ring>::Element Element

element type. It is derived from the class ElementAbstract, and it must contain a wrapped ring element.

Reimplemented from RingAbstract.

Random iterator generator type. It is derived from the class RandIterAbstract, and it must contain a wrapped ring random iterator generator.

Reimplemented from RingAbstract.


Constructor & Destructor Documentation

RingEnvelope ( void   )  [inline]

Default constructor. In this implementation, this means copying the ring { E.}.

RingEnvelope ( const Ring &  F  )  [inline]

Constructor from ring to be wrapped.

Parameters:
F Ring object to be wrapped.
RingEnvelope ( const RingEnvelope< Ring > &  E  )  [inline]

Copy constructor. Constructs RingEnvelope object by copying the ring. This is required to allow ring objects to be passed by value into functions. In this implementation, this means copying the ring { E.}.

Parameters:
E RingEnvelope object.

Member Function Documentation

FieldAbstract* clone (  )  const [inline, virtual]

Virtual copy constructor. Required because constructors cannot be virtual. Passes construction on to derived classes. This function is not part of the common object interface.

Returns:
pointer to new object in dynamic memory.

Reimplemented from FieldEnvelope< Ring >.

RingAbstract& operator= ( const RingAbstract F  )  [inline]

Assignment operator. Required by abstract base class.

Returns:
reference to RingAbstract object for self
Parameters:
F constant reference to RingAbstract object
FieldAbstract& operator= ( const FieldAbstract F  )  [inline, virtual]

Assignment operator. Required by abstract base class.

Returns:
reference to RingAbstract object for self
Parameters:
F constant reference to RingAbstract object

Reimplemented from FieldEnvelope< Ring >.

ElementAbstract& init ( ElementAbstract x,
const integer y = 0 
) const [inline, virtual]

Initialization of field base element from an integer. Behaves like C++ allocator construct. This function assumes the output field base element x has already been constructed, but that it is not already initialized. This is not a specialization of the template function because such a specialization is not allowed inside the class declaration.

Returns:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.
Parameters:
x field base element to contain utput fs:
reference to field base element.