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>
86 return sizeof(
typename P::std_type);
116 static const bool is_signed =
true;
118 static const bool is_integer =
true;
120 static const bool is_complex =
false;
139 static const bool is_signed =
true;
141 static const bool is_integer =
true;
143 static const bool is_complex =
false;
162 static const bool is_signed =
true;
164 static const bool is_integer =
true;
166 static const bool is_complex =
false;
185 static const bool is_signed =
false;
187 static const bool is_integer =
true;
189 static const bool is_complex =
false;
195 public PixelPropertiesBase<struct PixelProperties< ::ome::xml::model::enums::PixelType::UINT16> >
208 static const bool is_signed =
false;
210 static const bool is_integer =
true;
212 static const bool is_complex =
false;
231 static const bool is_signed =
false;
233 static const bool is_integer =
true;
235 static const bool is_complex =
false;
254 static const bool is_signed =
true;
256 static const bool is_integer =
false;
258 static const bool is_complex =
false;
277 static const bool is_signed =
true;
279 static const bool is_integer =
false;
281 static const bool is_complex =
false;
300 static const bool is_signed =
false;
302 static const bool is_integer =
true;
304 static const bool is_complex =
false;
310 public PixelPropertiesBase<PixelProperties< ::ome::xml::model::enums::PixelType::COMPLEX> >
316 typedef std::complex<boost::endian::big_float32_t>
big_type;
318 typedef std::complex<boost::endian::little_float32_t>
little_type;
320 typedef std::complex<boost::endian::native_float32_t>
native_type;
323 static const bool is_signed =
true;
325 static const bool is_integer =
false;
327 static const bool is_complex =
true;
333 public PixelPropertiesBase<PixelProperties< ::ome::xml::model::enums::PixelType::DOUBLECOMPLEX> >
339 typedef std::complex<boost::endian::big_float64_t>
big_type;
341 typedef std::complex<boost::endian::little_float64_t>
little_type;
343 typedef std::complex<boost::endian::native_float64_t>
native_type;
346 static const bool is_signed =
true;
348 static const bool is_integer =
false;
350 static const bool is_complex =
true;
470 bool is_signed =
false,
471 bool is_integer =
true,
472 bool is_complex =
false);
490 bool is_signed =
false,
491 bool is_integer =
true,
492 bool is_complex =
false);
503 boost::endian::reverse(value);
517 value = std::complex<float>(reverse_value(value.real()),
518 reverse_value(value.imag()));
532 value = std::complex<double>(reverse_value(value.real()),
533 reverse_value(value.imag()));
539 #endif // OME_BIOFORMATS_PIXELPROPERTIES_H
uint32
Definition: PixelType.h:87
uint8
Definition: PixelType.h:83
bit
Definition: PixelType.h:91
int8
Definition: PixelType.h:77
Boolean type with guaranteed size, alignment and storage values.
Definition: boolean.h:73
int16
Definition: PixelType.h:79
uint16
Definition: PixelType.h:85
Endian-specific integer types.
float
Definition: PixelType.h:89
Open Microscopy Environment C++ implementation.
Definition: CoreMetadata.cpp:40
complex
Definition: PixelType.h:95
double
Definition: PixelType.h:93
PixelType enumeration.
Definition: PixelType.h:70
int32
Definition: PixelType.h:81
double-complex
Definition: PixelType.h:97