NAG C++ classes for Hyperspectral Imaging  0.1
SIMSpecImage.hpp
Go to the documentation of this file.
1 /*
2  NAG Copyright 2016.
3 */
4 #ifndef SIMSSPECIMAGE_HPP
5 #define SIMSSPECIMAGE_HPP
6 #include "SpecImage.hpp"
7 
12 namespace nag
13 {
25  template<class FPType> class SIMSpecImage : public SpecImage<FPType>
26  {
27  private:
31  void buildImage(int SF, int K0, int nwin, int npp, uint32_t *x, uint32_t *y, uint32_t *scans,
32  uint32_t *tofs, size_t len, uint32_t xBin, uint32_t yBin, uint32_t zBin, uint32_t tofsBin, size_t mem,
33  uint32_t *ulimits, size_t len_limits, int lim_t, void *files);
34 
35  public:
73  SIMSpecImage(const std::string& tofs, const std::string& coords = "",
74  const std::string& scans = "", const std::string& props = "",
75  int SF = 0, int K0 = 0, int nwin = 66, int npp = 0,
76  uint32_t xBin = 1, uint32_t yBin = 1, uint32_t zBin = 1,
77  uint32_t tofsBin = 1, size_t mem = 0);
78 
119  SIMSpecImage(std::vector<uint32_t>& limits, const std::string& tofs, const std::string& coords = "",
120  const std::string& scans = "", const std::string& props = "",
121  int SF = 0, int K0 = 0, int nwin = 66, int npp = 0,
122  uint32_t xBin = 1, uint32_t yBin = 1, uint32_t zBin = 1,
123  uint32_t tofsBin = 1, size_t mem = 0);
124 
166  SIMSpecImage(std::vector<FPType>& limits, const std::string& tofs, const std::string& coords = "",
167  const std::string& scans = "", const std::string& props = "",
168  int SF = 0, int K0 = 0, int nwin = 66, int npp = 0,
169  uint32_t xBin = 1, uint32_t yBin = 1, uint32_t zBin = 1,
170  uint32_t tofsBin = 1, size_t mem = 0);
171 
175  SIMSpecImage(int SF, int K0, int nwin, int npp, uint32_t *x, uint32_t *y, uint32_t *scans,
176  uint32_t *tofs, size_t len, uint32_t xBin, uint32_t yBin, uint32_t zBin, uint32_t tofsBin, size_t mem,
177  uint32_t *limits, size_t len_limits);
178 
182  SIMSpecImage(int SF, int K0, int nwin, int npp, uint32_t *x, uint32_t *y, uint32_t *scans,
183  uint32_t *tofs, size_t len, uint32_t xBin, uint32_t yBin, uint32_t zBin, uint32_t tofsBin, size_t mem,
184  FPType *limits, size_t len_limits);
185 
186 
211 
232  void scaleMatrix();
233 
251  void scaleMatrix(const std::vector<FPType>& g, const std::vector<FPType>& h);
252 
259  int getK0();
260 
267  int getSF();
268 
276  void setLimits(const std::vector<uint32_t>& limits);
277  };
278 }
279 #endif
void advancedDeadTimeCorrection()
Advanced dead-time correction preprocessing.
int getSF()
Return the SIMS calibration parameter SF.
Base class representing a spectral image.
Definition: SpecImage.hpp:496
Overall namespace for the NAG C++ Hyperspectral Imaging Library.
Definition: MALDISpecImage.hpp:12
void scaleMatrix()
Scale the image matrix.
int getK0()
Return the SIMS calibration parameter K0.
Class representing a spectral image generated from a Secondary Ion Mass Spectrometry instrument...
Definition: SIMSpecImage.hpp:25
SIMSpecImage(const std::string &tofs, const std::string &coords="", const std::string &scans="", const std::string &props="", int SF=0, int K0=0, int nwin=66, int npp=0, uint32_t xBin=1, uint32_t yBin=1, uint32_t zBin=1, uint32_t tofsBin=1, size_t mem=0)
Constructor: construct by passing filenames directly without peak selection limits.
void setLimits(const std::vector< uint32_t > &limits)
Set the limits to use during nag::SpecImage::peakSelect.