From d062ec4da926b68972be882c68d4181f8c9eff2f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ne=C4=8Dada?= Date: Sun, 29 May 2022 14:36:32 +0300 Subject: [PATCH] Forgotten header lattice_types.h --- qpms/lattices_types.h | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 qpms/lattices_types.h diff --git a/qpms/lattices_types.h b/qpms/lattices_types.h new file mode 100644 index 0000000..4254798 --- /dev/null +++ b/qpms/lattices_types.h @@ -0,0 +1,37 @@ +/*! \file lattices_types.h + * \brief Auxiliary lattice point generator and related enum declarations. + * + * This file contains necessary declarations needed in other header files. + * In contrast to lattices.h, this one is C++ compatible. + * + * \see lattices.h + */ +#ifndef LATTICES_TYPES_H +#define LATTICES_TYPES_H +#ifdef __cplusplus +extern "C" { +#endif + +typedef enum LatticeDimensionality { + LAT1D = 1, + LAT2D = 2, + LAT3D = 4, + SPACE1D = 8, + SPACE2D = 16, + SPACE3D = 32, + LAT_1D_IN_3D = 33, + LAT_2D_IN_3D = 34, + LAT_3D_IN_3D = 40, + // special coordinate arrangements (indicating possible optimisations) + LAT_ZONLY = 64, + LAT_XYONLY = 128, + LAT_1D_IN_3D_ZONLY = 97, // LAT1D | SPACE3D | 64 + LAT_2D_IN_3D_XYONLY = 162 // LAT2D | SPACE3D | 128 +} LatticeDimensionality; + +struct PGen; + +#ifdef __cplusplus +} +#endif +#endif // LATTICES_TYPES_H