struct t_mapping
{
//! XPM element code
- t_xpmelmt code;
+ t_xpmelmt code;
//! Description
- const char *desc = nullptr;
+ const char* desc = nullptr;
//! RGB color
- t_rgb rgb;
+ t_rgb rgb;
};
-#define MAT_SPATIAL_X (1<<0)
-#define MAT_SPATIAL_Y (1<<1)
+#define MAT_SPATIAL_X (1 << 0)
+#define MAT_SPATIAL_Y (1 << 1)
/* Defines if x and y are spatial dimensions,
* when not, there are n axis ticks at the middle of the elements,
* when set, there are n+1 axis ticks at the edges of the elements.
*/
//! Convenience typedef
-template <typename T>
-using DynamicMatrix2D = gmx::MultiDimArray < std::vector<T>, gmx::extents < gmx::dynamic_extent, gmx::dynamic_extent>>;
+template<typename T>
+using DynamicMatrix2D =
+ gmx::MultiDimArray<std::vector<T>, gmx::extents<gmx::dynamic_extent, gmx::dynamic_extent>>;
/*! \brief A matrix of integers, plus supporting values, such as used in XPM output
*
struct t_matrix
{
//! Defines if x and y are spatial dimensions. See comments on MAT_*.
- unsigned int flags = 0;
+ unsigned int flags = 0;
//! Size of the matrix in x
- int nx = 0;
+ int nx = 0;
//! Size of the matrix in y
- int ny = 0;
+ int ny = 0;
//! Matrix title
- std::string title;
+ std::string title;
//! Label for the continuous legend
- std::string legend;
+ std::string legend;
//! Label for the x-axis
- std::string label_x;
+ std::string label_x;
//! Label for the y-axis
- std::string label_y;
+ std::string label_y;
//! Whether the quantity described is discrete or continuous.
- bool bDiscrete = false;
+ bool bDiscrete = false;
//! The x-ticklabels
- std::vector<real> axis_x;
+ std::vector<real> axis_x;
//! The y-ticklabels
- std::vector<real> axis_y;
+ std::vector<real> axis_y;
//! Element x,y is matrix(x, y)
DynamicMatrix2D<t_matelmt> matrix;
//! Color levels for the output(?)
- std::vector<t_mapping> map;
+ std::vector<t_mapping> map;
};
//! Seach in the \c map for code \c c and return its entry, or -1 if not found.
t_matelmt searchcmap(gmx::ArrayRef<const t_mapping> map, t_xpmelmt c);
//! Read the mapping table from fn, return number of entries
-std::vector<t_mapping> readcmap(const char *fn);
+std::vector<t_mapping> readcmap(const char* fn);
-void printcmap(FILE *out, int n, t_mapping map[]);
+void printcmap(FILE* out, int n, t_mapping map[]);
/* print mapping table to out */
-void writecmap(const char *fn, int n, t_mapping map[]);
+void writecmap(const char* fn, int n, t_mapping map[]);
/* print mapping table to fn */
//! Reads and returns a number of matrices from .xpm file \c fnm.
-std::vector<t_matrix> read_xpm_matrix(const char *fnm);
+std::vector<t_matrix> read_xpm_matrix(const char* fnm);
-real **matrix2real(t_matrix *in, real **out);
+real** matrix2real(t_matrix* in, real** out);
/* Converts an matrix in a t_matrix struct to a matrix of reals
* When mat==NULL memory will be allocated
* Returns NULL when something went wrong
*/
-void write_xpm_m(FILE *out, t_matrix m);
+void write_xpm_m(FILE* out, t_matrix m);
/* Writes a t_matrix struct to .xpm file */
-void write_xpm3(FILE *out, unsigned int flags,
- const std::string &title, const std::string &legend,
- const std::string &label_x, const std::string &label_y,
- int n_x, int n_y, real axis_x[], real axis_y[],
- real *mat[], real lo, real mid, real hi,
- t_rgb rlo, t_rgb rmid, t_rgb rhi, int *nlevels);
+void write_xpm3(FILE* out,
+ unsigned int flags,
+ const std::string& title,
+ const std::string& legend,
+ const std::string& label_x,
+ const std::string& label_y,
+ int n_x,
+ int n_y,
+ real axis_x[],
+ real axis_y[],
+ real* mat[],
+ real lo,
+ real mid,
+ real hi,
+ t_rgb rlo,
+ t_rgb rmid,
+ t_rgb rhi,
+ int* nlevels);
/* See write_xpm.
* Writes a colormap varying as rlo -> rmid -> rhi.
*/
-void write_xpm_split(FILE *out, unsigned int flags,
- const std::string &title, const std::string &legend,
- const std::string &label_x, const std::string &label_y,
- int n_x, int n_y, real axis_x[], real axis_y[],
- real *mat[],
- real lo_top, real hi_top, int *nlevel_top,
- t_rgb rlo_top, t_rgb rhi_top,
- real lo_bot, real hi_bot, int *nlevel_bot,
- gmx_bool bDiscreteColor,
- t_rgb rlo_bot, t_rgb rhi_bot);
+void write_xpm_split(FILE* out,
+ unsigned int flags,
+ const std::string& title,
+ const std::string& legend,
+ const std::string& label_x,
+ const std::string& label_y,
+ int n_x,
+ int n_y,
+ real axis_x[],
+ real axis_y[],
+ real* mat[],
+ real lo_top,
+ real hi_top,
+ int* nlevel_top,
+ t_rgb rlo_top,
+ t_rgb rhi_top,
+ real lo_bot,
+ real hi_bot,
+ int* nlevel_bot,
+ gmx_bool bDiscreteColor,
+ t_rgb rlo_bot,
+ t_rgb rhi_bot);
/* See write_xpm.
* Writes a colormap with separate above and below diagonal colormaps.
* If bDiscrete then a colormap with 16 fixed colors is used, first of
* which is white.
*/
-void write_xpm(FILE *out, unsigned int flags,
- const std::string &title, const std::string &legend,
- const std::string &label_x, const std::string &label_y,
- int n_x, int n_y, real t_x[], real t_y[],
- real *mat[], real lo, real hi,
- t_rgb rlo, t_rgb rhi, int *nlevels);
+void write_xpm(FILE* out,
+ unsigned int flags,
+ const std::string& title,
+ const std::string& legend,
+ const std::string& label_x,
+ const std::string& label_y,
+ int n_x,
+ int n_y,
+ real t_x[],
+ real t_y[],
+ real* mat[],
+ real lo,
+ real hi,
+ t_rgb rlo,
+ t_rgb rhi,
+ int* nlevels);
/* out xpm file
* flags flags, defined types/matrix.h
* MAT_SPATIAL_X
* nlevels number of color levels for the output
*/
-real **mk_matrix(int nx, int ny, gmx_bool b1D);
+real** mk_matrix(int nx, int ny, gmx_bool b1D);
-void done_matrix(int nx, real ***m);
+void done_matrix(int nx, real*** m);
-#endif /* GMX_FILEIO_MATIO_H */
+#endif /* GMX_FILEIO_MATIO_H */