NAG C++ classes for Hyperspectral Imaging  0.1
MALDISpecImage.hpp
Go to the documentation of this file.
1 /*
2  NAG Copyright 2016.
3 */
4 #ifndef MALDISPECIMAGE_HPP
5 #define MALDISPECIMAGE_HPP
6 
7 #include "SpecImage.hpp"
8 
9 #define IMZML_FUN_ARGS void *comms, uint32_t x_start, uint32_t x_end, uint32_t y_start, uint32_t y_end, uint32_t z_start, uint32_t z_end, \
10  uint32_t xb, uint32_t yb, uint32_t zb, FP_REAL_T mzb, FP_REAL_T mz_min, FP_REAL_T mz_max, FP_REAL_T **intens
11 
12 namespace nag
13 {
25  template<class FPType> class MALDISpecImage : public SpecImage<FPType>
26  {
27  private:
31  void buildImage(void (*imzml_fun)(IMZML_FUN_ARGS), void *comms, uint32_t xDim, uint32_t yDim,
32  uint32_t xBin, uint32_t yBin, FPType mzBin, FPType *mzvals, size_t mzlen, size_t mem,
33  FPType *limits, size_t len_limits);
34 
35  public:
54  MALDISpecImage(std::vector<FPType>& limits, const std::string& imzml,
55  uint32_t xBin = 1, uint32_t yBin = 1, uint32_t zBin = 1, FPType mzBin = 1.0, size_t mem = 0);
56 
72  MALDISpecImage(const std::string& imzml,
73  uint32_t xBin = 1, uint32_t yBin = 1, uint32_t zBin = 1, FPType mzBin = 1.0, size_t mem = 0);
74 
78  MALDISpecImage(void (*imzml_fun)(IMZML_FUN_ARGS), void *comms, uint32_t xDim, uint32_t yDim,
79  uint32_t xBin, uint32_t yBin, FPType mzBin, FPType *mzvals, size_t mzlen, size_t mem,
80  FPType *limits, size_t len_limits);
81  };
82 }
83 #endif
Base class representing a spectral image.
Definition: SpecImage.hpp:496
#define IMZML_FUN_ARGS
Definition: MALDISpecImage.hpp:9
Overall namespace for the NAG C++ Hyperspectral Imaging Library.
Definition: MALDISpecImage.hpp:12
MALDISpecImage(std::vector< FPType > &limits, const std::string &imzml, uint32_t xBin=1, uint32_t yBin=1, uint32_t zBin=1, FPType mzBin=1.0, size_t mem=0)
Constructor: construct by passing filenames directly with peak selection limits expressed as m/z valu...
Class representing a spectral image generated from a MALDI instrument.
Definition: MALDISpecImage.hpp:25