38 #ifndef OME_BIOFORMATS_PIXELPROPERTIES_H
39 #define OME_BIOFORMATS_PIXELPROPERTIES_H
43 #include <ome/common/boolean.h>
48 #include <ome/bioformats/Types.h>
50 #include <ome/xml/model/enums/PixelType.h>
87 return sizeof(
typename P::std_type);
130 static const bool is_signed =
true;
132 static const bool is_integer =
true;
134 static const bool is_complex =
false;
153 static const bool is_signed =
true;
155 static const bool is_integer =
true;
157 static const bool is_complex =
false;
176 static const bool is_signed =
true;
178 static const bool is_integer =
true;
180 static const bool is_complex =
false;
199 static const bool is_signed =
false;
201 static const bool is_integer =
true;
203 static const bool is_complex =
false;
209 public PixelPropertiesBase<struct PixelProperties< ::ome::xml::model::enums::PixelType::UINT16> >
222 static const bool is_signed =
false;
224 static const bool is_integer =
true;
226 static const bool is_complex =
false;
245 static const bool is_signed =
false;
247 static const bool is_integer =
true;
249 static const bool is_complex =
false;
268 static const bool is_signed =
true;
270 static const bool is_integer =
false;
272 static const bool is_complex =
false;
291 static const bool is_signed =
true;
293 static const bool is_integer =
false;
295 static const bool is_complex =
false;
314 static const bool is_signed =
false;
316 static const bool is_integer =
true;
318 static const bool is_complex =
false;
336 public PixelPropertiesBase<PixelProperties< ::ome::xml::model::enums::PixelType::COMPLEX> >
342 typedef std::complex<boost::endian::big_float32_t>
big_type;
344 typedef std::complex<boost::endian::little_float32_t>
little_type;
346 typedef std::complex<boost::endian::native_float32_t>
native_type;
349 static const bool is_signed =
true;
351 static const bool is_integer =
false;
353 static const bool is_complex =
true;
359 public PixelPropertiesBase<PixelProperties< ::ome::xml::model::enums::PixelType::DOUBLECOMPLEX> >
365 typedef std::complex<boost::endian::big_float64_t>
big_type;
367 typedef std::complex<boost::endian::little_float64_t>
little_type;
369 typedef std::complex<boost::endian::native_float64_t>
native_type;
372 static const bool is_signed =
true;
374 static const bool is_integer =
false;
376 static const bool is_complex =
true;
499 bool is_signed =
false,
500 bool is_integer =
true,
501 bool is_complex =
false);
519 bool is_signed =
false,
520 bool is_integer =
true,
521 bool is_complex =
false);
532 boost::endian::reverse(value);
546 value = std::complex<float>(reverse_value(value.real()),
547 reverse_value(value.imag()));
561 value = std::complex<double>(reverse_value(value.real()),
562 reverse_value(value.imag()));
568 #endif // OME_BIOFORMATS_PIXELPROPERTIES_H
uint32
Definition: PixelType.h:86
uint8
Definition: PixelType.h:82
bit
Definition: PixelType.h:90
int8
Definition: PixelType.h:76
Boolean type with guaranteed size, alignment and storage values.
Definition: boolean.h:73
int16
Definition: PixelType.h:78
uint16
Definition: PixelType.h:84
Endian-specific integer types.
float
Definition: PixelType.h:88
Open Microscopy Environment C++ implementation.
Definition: CoreMetadata.cpp:40
complex
Definition: PixelType.h:94
double
Definition: PixelType.h:92
PixelType enumeration.
Definition: PixelType.h:69
int32
Definition: PixelType.h:80
double-complex
Definition: PixelType.h:96