9#include "SpecialPixel.h"
63 static unsigned char To8Bit(
const double d);
65 static short int To16Bit(
const double d);
67 static short unsigned int To16UBit(
const double d);
69 static float To32Bit(
const double d);
72 static double ToDouble(
const unsigned char t);
73 static double ToDouble(
const short int t);
74 static double ToDouble(
const short unsigned int t);
75 static double ToDouble(
const float t);
78 static float ToFloat(
const unsigned char d);
79 static float ToFloat(
const short int d);
80 static float ToFloat(
const short unsigned int d);
81 static float ToFloat(
const double d);
84 static std::string
ToString(
double d);
96 return(d < VALID_MIN8);
119 return(f < VALID_MIN4);
131 return(d >= VALID_MIN8);
151 static inline bool IsNull(
const double d) {
171 static inline bool IsHigh(
const double d) {
172 return(d == HIGH_REPR_SAT8) || (d == HIGH_INSTR_SAT8);
191 static inline bool IsLow(
const double d) {
192 return(d == LOW_REPR_SAT8) || (d == LOW_INSTR_SAT8);
211 static inline bool IsHrs(
const double d) {
212 return(d == HIGH_REPR_SAT8);
231 static inline bool IsHis(
const double d) {
232 return(d == HIGH_INSTR_SAT8);
251 static inline bool IsLis(
const double d) {
252 return(d == LOW_INSTR_SAT8);
271 static inline bool IsLrs(
const double d) {
272 return(d == LOW_REPR_SAT8);
virtual ~Pixel()
Default destructor.
Definition Pixel.cpp:76
short unsigned int To16Ubit()
Converts internal pixel value to a short int pixel with special pixel translations.
Definition Pixel.cpp:237
Pixel & operator=(const Pixel &other)
Copy assignment operator.
Definition Pixel.cpp:66
unsigned char To8Bit()
Converts internal pixel value to an unsigned char pixel with special pixel translations.
Definition Pixel.cpp:140
static bool IsLow(const double d)
Returns true if the input pixel is one of the low saturation types.
Definition Pixel.h:191
static bool IsHis(const double d)
Returns true if the input pixel is high instrument saturation.
Definition Pixel.h:231
int line() const
Definition Pixel.cpp:80
static bool IsValid(const double d)
Returns true if the input pixel is valid.
Definition Pixel.h:130
std::string ToString()
Returns the name of the pixel type as a string.
Definition Pixel.cpp:488
static bool IsHrs(const double d)
Returns true if the input pixel is high representation saturation.
Definition Pixel.h:211
static bool IsHigh(const double d)
Returns true if the input pixel is one of the high saturation types.
Definition Pixel.h:171
bool IsLis()
Returns true if the input pixel is low instrument saturation.
Definition Pixel.h:260
bool IsHigh()
Returns true if the input pixel is one of the high saturation types.
Definition Pixel.h:180
float To32Bit()
Converts internal pixel value to float with special pixel translations.
Definition Pixel.cpp:267
bool IsValid()
Returns true if the input pixel is valid.
Definition Pixel.h:140
short int To16Bit()
Converts internal pixel value to a short int pixel with special pixel translations.
Definition Pixel.cpp:189
bool IsHis()
Returns true if the input pixel is high instrument saturation.
Definition Pixel.h:240
bool IsSpecial()
Returns true if the input pixel is special.
Definition Pixel.h:105
Pixel()
Constructs an empty Pixel.
Definition Pixel.cpp:18
int sample() const
Definition Pixel.cpp:86
bool IsNull()
Returns true if the input pixel is null.
Definition Pixel.h:160
static bool IsLrs(const double d)
Returns true if the input pixel is low representation saturation.
Definition Pixel.h:271
bool IsLrs()
Returns true if the input pixel is low representation saturation.
Definition Pixel.h:280
double ToDouble()
Converts stored pixel value to a double.
Definition Pixel.cpp:359
bool IsHrs()
Returns true if the input pixel is high representation saturation.
Definition Pixel.h:220
static bool IsLis(const double d)
Returns true if the input pixel is low instrument saturation.
Definition Pixel.h:251
static bool IsSpecial(const double d)
Returns true if the input pixel is special.
Definition Pixel.h:95
int band() const
Definition Pixel.cpp:92
static short unsigned int To16UBit(const double d)
Converts double pixels to short unsigned int pixels with special pixel translations.
Definition Pixel.cpp:200
float ToFloat()
Converts internal pixel value to float with pixel translations and care for overflows (underflows are...
Definition Pixel.cpp:457
bool IsLow()
Returns true if the input pixel is one of the low saturation types.
Definition Pixel.h:200
static bool IsSpecial(const float f)
Returns true if the input pixel is special.
Definition Pixel.h:118
static bool IsNull(const double d)
Returns true if the input pixel is null.
Definition Pixel.h:151
double DN() const
Definition Pixel.cpp:98
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16