#ifndef MATRIX_H
#define MATRIX_H
#include "taux.h"

#define MAXNOPE 128

#include "ArrayND.h"

struct Range1D;
struct Range2D;

struct Complex {
  double re, im;
};

inline void print (FILE* f, Complex x) { fprintf(f,"%4.2lf,%4.2lfi ",x.re, x.im); }

typedef Array1D<Complex> Vector1Dcplx;
typedef Array2D<Complex> Vector2Dcplx;

typedef FILE* File;

typedef int Int;

struct Config 
{
  int noloop;
  int size;
  int nope;
  int clk;
};

struct Env
{
  PreEnv pre;
};

enum { CK_FC=CK_OFF, CK_FR, CK_FF, CK_LOOP, ECLK };
const int CK_USR_OFF = CK_LAST+1;
#define MAXMSGBUF 16000

#endif // MATRIX_H

