Public Member Functions
ElementEnvelope< Field > Class Template Reference

Adaptor from archetypical interface to abstract interface, a technicality. More...

#include <envelope.h>

+ Inheritance diagram for ElementEnvelope< Field >:

Public Member Functions

 ElementEnvelope ()
 Default Constructor.
 ElementEnvelope (const typename Field::Element &elem)
 Constructor from the Field element to be wrapped. More...
 ElementEnvelope (const ElementAbstract &E)
 Copy constructor. More...
ElementAbstractclone (void) const
 Virtual copy constructor. More...
ElementAbstractoperator= (const ElementAbstract &E)
 Assignment operator. More...
 ~ElementEnvelope ()

Detailed Description

template<class Field>
class LinBox::ElementEnvelope< Field >

Adaptor from archetypical interface to abstract interface, a technicality.

A class meeting the interface specified in ElementArchetype is adapted to be a child class of ElementAbstract. A concrete instance of ElementArchetype representing the adapted class can then be constructed.

All this is in support of the FieldArchetype system.

Constructor & Destructor Documentation

ElementEnvelope ( const typename Field::Element &  elem)

Constructor from the Field element to be wrapped.

elemField element object to be wrapped.
ElementEnvelope ( const ElementAbstract E)

Copy constructor.

Constructs ElementEnvelope object by copying the element it wraps. This is required to allow element objects to be passed by value into functions. In this implementation, this means copying the element E._elem.

EFieldEnvelope object.

Member Function Documentation

ElementAbstract* clone ( void  ) const

Virtual copy constructor.

Required because constructors cannot be virtual. Passes construction on to derived classes.

pointer to new element object in dynamic memory.

Implements ElementAbstract.

ElementAbstract& operator= ( const ElementAbstract E)

Assignment operator.

reference to self
Eparameterized field base element

Implements ElementAbstract.

The documentation for this class was generated from the following file: