#ifndef DPOLYNOM_H
#define DPOLYNOM_H
#include <iostream>
#include <assert.h>
#include <String.h>
#include <math.h>
#include "TNmath.h"
#include "dclock.h"
template <class Type>
class dpolynom
{
friend istream& operator>>(istream&, dpolynom<Type>&);
friend ostream& operator<<(ostream&, dpolynom<Type>&);
private:
int dimen, ord;
tnvector<Type> coeff;
tnvector<Type> org;
public:
dpolynom();
dpolynom(int, int);
dpolynom(int, int, tnvector<Type>&, tnvector<Type>&);
dpolynom(dpolynom<Type>&);
dpolynom(istream&);
~dpolynom();
void resize(int, int);
int dim();
int order();
int coeff_size();
Type value(tnvector<Type>);
Type coefficient(tnvector<int>);
void set_coeff_vec(tnvector<Type>);
void set_coeff_direct(int pos, Type value);
tnvector<Type> coeff_vec();
void set_origin(tnvector<Type>);
tnvector<Type> origin();
void read(istream&);
void nice_output(ostream& os);
};
#include "dpolynom.cc"
#endif