/*
 * ARMPL version 21.0 Copyright ARM, NAG 2021
 */

/*
  A complex datatype for use by the C interfaces to ARMPL routines.
  The exact definition can be overridden by manually #define-ing
  armpl_singlecomplex_t and armpl_doublecomplex_t.
*/

#ifndef armpl_singlecomplex_t
#include <complex.h>
typedef float _Complex armpl_singlecomplex_t;
#define armpl_singlecomplex_t armpl_singlecomplex_t
#endif

#ifndef armpl_doublecomplex_t
#include <complex.h>
typedef double _Complex armpl_doublecomplex_t;
#define armpl_doublecomplex_t armpl_doublecomplex_t
#endif

/*
  The LAPACKE interface uses the macros lapack_complex_float and lapack_complex_double,
  which are compatible with the corresponding armpl types.
*/
#ifndef lapack_complex_float
#define lapack_complex_float armpl_singlecomplex_t
#endif
#ifndef lapack_complex_double
#define lapack_complex_double armpl_doublecomplex_t
#endif
