54#ifndef VIGRA_SIFIMPORT_HXX
55#define VIGRA_SIFIMPORT_HXX
61#include "multi_array.hxx"
62#include "array_vector.hxx"
153 const char* m_filename;
155 std::ptrdiff_t m_offset;
157 int left, right, bottom, top;
158 int xbin, ybin, xres, yres;
161 double temperature1, temperature2;
163 std::string cycleTime, temperature, exposureTime, EMGain,
164 verticalShiftSpeed, version, model, originalFilename, preAmpGain;
204template <
unsigned int N,
class T,
class S>
207 vigra_precondition(
false,
"readSIF(): Destination array must be MultiArrayView<3, float>.");
210inline void readSIF(
const SIFImportInfo &info, MultiArrayView<3, float, UnstridedArrayTag> array)
212 readSIF(info, MultiArrayView<3, float>(array));
231template <
unsigned int N,
class T,
class S>
234 vigra_precondition(
false,
"readSIFBlock(): Destination array must be MultiArrayView<3, float>.");
237inline void readSIFBlock(
const SIFImportInfo &info, Shape3 offset, Shape3 shape, MultiArrayView<3, float, UnstridedArrayTag> array)
239 readSIFBlock(info, offset, shape, MultiArrayView<3, float>(array));
Class for a single RGB value.
Definition rgbvalue.hxx:128
Extracts image properties from an Andor SIF file header.
Definition sifImport.hxx:88
SIFImportInfo(const char *filename)
MultiArrayIndex numDimensions() const
const char * getFileName() const
MultiArrayIndex shapeOfDimension(const int dim) const
ArrayVector< size_t > const & shape() const
std::ptrdiff_t getOffset() const
friend std::ostream & operator<<(std::ostream &os, const SIFImportInfo &info)
Class for fixed size vectors.
Definition tinyvector.hxx:1008
void readSIFBlock(const SIFImportInfo &info, Shape3 offset, Shape3 shape, MultiArrayView< 3, float > array)
Read parts of the image data from an Andor SIF file specified with an SIFImportInfo object and write ...
void readSIF(const SIFImportInfo &info, MultiArrayView< 3, float > array)
Read the image data specified by the given vigra::SIFImportInfo object and write them into the given ...
std::ptrdiff_t MultiArrayIndex
Definition multi_fwd.hxx:60