#ifndef MIXMOPS_INCLUDED // -*- C++ -*- #define MIXMOPS_INCLUDED // #endif // WARNING: Multiple inclusions allowed /************************************************************************ Low-level matrix math operations. This header file is intended for internal library use only. You should understand what's going on in here before trying to use it yourself. Copyright (C) 1998 Michael Garland. See "COPYING.txt" for details. $Id: mixmops.h,v 1.7 1998/10/26 21:09:39 garland Exp $ ************************************************************************/ #ifdef MX_DEFAULT_DIM # define __DIM const int N=MX_DEFAULT_DIM #else # define __DIM const int N #endif #ifndef __T # define __T double #endif #define forall(i, N) for(unsigned int i=0; i # define mxm_local_block(a,T,N) T *a = (T *)alloca(sizeof(T)*(N)*(N)) # define mxm_free_local(a) # else # define mxm_local_block(a,T,N) T *a = new T[(N)*(N)] # define mxm_free_local(a) delete[] a # endif #endif #endif #undef __T #undef __DIM #undef forall #undef def3 #undef def2 #undef def1 #undef def2s #undef def1s // MIXMOPS_INCLUDED