Isis 3 Programmer Reference
SpecialPixel.h File Reference
#include <vector>
#include <cmath>
#include <cfloat>
#include <QString>
#include <QStringList>
#include "IException.h"
#include "IString.h"

Go to the source code of this file.

Classes

union  Isis::DBL_UNION
 Manipulate special pixel values. More...
 

Namespaces

 Isis
 Namespace for ISIS/Bullet specific routines.
 

Macros

#define DBL_INIT(a, b)   {(a), (b)}
 

Functions

bool Isis::IsSpecial (const double d)
 Returns if the input pixel is special. More...
 
bool Isis::IsSpecial (const float f)
 Returns if the input pixel is special. More...
 
bool Isis::IsValidPixel (const double d)
 Returns if the input pixel is valid. More...
 
bool Isis::IsNullPixel (const double d)
 Returns if the input pixel is null. More...
 
bool Isis::IsHighPixel (const double d)
 Returns if the input pixel is one of the high saturation types. More...
 
bool Isis::IsLowPixel (const double d)
 Returns if the input pixel is one of the low saturation types. More...
 
bool Isis::IsHrsPixel (const double d)
 Returns if the input pixel is high representation saturation. More...
 
bool Isis::IsHisPixel (const double d)
 Returns if the input pixel is high instrument saturation. More...
 
bool Isis::IsLisPixel (const double d)
 Returns if the input pixel is low instrument saturation. More...
 
bool Isis::IsLrsPixel (const double d)
 Returns if the input pixel is low representation saturation. More...
 
double Isis::TestPixel (const float t)
 Converts float pixels to double pixels with special pixel translations. More...
 
float Isis::TestPixel (const double t)
 Converts double to float with special pixel translations and care for overflows (underflows are assumed to cast to 0!) More...
 
QString Isis::PixelToString (double d)
 Takes a double pixel value and returns the name of the pixel type as a string. More...
 
double Isis::StringToPixel (const QString &str)
 Takes the name of the pixel type as a string and returns a double pixel value. More...
 

Variables

const DBL_UNION Isis::IVALID_MIN8 = { DBL_INIT(0xFFEFFFFF, 0xFFFFFFFA) }
 
const double Isis::VALID_MIN8 = IVALID_MIN8.d
 
const double Isis::ValidMinimum = IVALID_MIN8.d
 The minimum valid double value for Isis pixels. More...
 
const DBL_UNION Isis::INULL8 = { DBL_INIT(0xFFEFFFFF, 0xFFFFFFFB) }
 
const double Isis::NULL8 = INULL8.d
 
const double Isis::Null = INULL8.d
 Value for an Isis Null pixel. More...
 
const DBL_UNION Isis::ILOW_REPR_SAT8 = { DBL_INIT(0xFFEFFFFF, 0xFFFFFFFC) }
 
const double Isis::LOW_REPR_SAT8 = ILOW_REPR_SAT8.d
 
const double Isis::Lrs = ILOW_REPR_SAT8.d
 Value for an Isis Low Representation Saturation pixel. More...
 
const DBL_UNION Isis::ILOW_INSTR_SAT8 = { DBL_INIT(0xFFEFFFFF, 0xFFFFFFFD) }
 
const double Isis::LOW_INSTR_SAT8 = ILOW_INSTR_SAT8.d
 
const double Isis::Lis = ILOW_INSTR_SAT8.d
 Value for an Isis Low Instrument Saturation pixel. More...
 
const DBL_UNION Isis::IHIGH_INSTR_SAT8 = { DBL_INIT(0xFFEFFFFF, 0xFFFFFFFE) }
 
const double Isis::HIGH_INSTR_SAT8 = IHIGH_INSTR_SAT8.d
 
const double Isis::His = IHIGH_INSTR_SAT8.d
 Value for an Isis High Instrument Saturation pixel. More...
 
const DBL_UNION Isis::IHIGH_REPR_SAT8 = { DBL_INIT(0xFFEFFFFF, 0xFFFFFFFF) }
 
const double Isis::HIGH_REPR_SAT8 = IHIGH_REPR_SAT8.d
 
const double Isis::Hrs = IHIGH_REPR_SAT8.d
 Value for an Isis High Representation Saturation pixel. More...
 
const double Isis::VALID_MAX8 = DBL_MAX
 
const double Isis::ValidMaximum = DBL_MAX
 The maximum valid double value for Isis pixels. More...
 
const int Isis::IVALID_MIN4 = 0xFF7FFFFA
 
const float Isis::VALID_MIN4 = (*((const float *) &IVALID_MIN4))
 
const int Isis::INULL4 = 0xFF7FFFFB
 
const float Isis::NULL4 = (*((const float *) &INULL4))
 
const int Isis::ILOW_REPR_SAT4 = 0xFF7FFFFC
 
const float Isis::LOW_REPR_SAT4 = (*((const float *) &ILOW_REPR_SAT4))
 
const int Isis::ILOW_INSTR_SAT4 = 0xFF7FFFFD
 
const float Isis::LOW_INSTR_SAT4 = (*((const float *) &ILOW_INSTR_SAT4))
 
const int Isis::IHIGH_INSTR_SAT4 = 0xFF7FFFFE
 
const float Isis::HIGH_INSTR_SAT4 = (*((const float *) &IHIGH_INSTR_SAT4))
 
const int Isis::IHIGH_REPR_SAT4 = 0xFF7FFFFF
 
const float Isis::HIGH_REPR_SAT4 = (*((const float *) &IHIGH_REPR_SAT4))
 
const float Isis::VALID_MAX4 = FLT_MAX
 
const int Isis::IVALID_MAX4 = (*((const int *) &VALID_MAX4))
 
const short Isis::VALID_MIN2 = ((short)(-32752))
 
const short Isis::NULL2 = ((short)(-32768))
 
const short Isis::LOW_REPR_SAT2 = ((short)(-32767))
 
const short Isis::LOW_INSTR_SAT2 = ((short)(-32766))
 
const short Isis::HIGH_INSTR_SAT2 = ((short)(-32765))
 
const short Isis::HIGH_REPR_SAT2 = ((short)(-32764))
 
const short Isis::VALID_MAX2 = ((short) 32767)
 
const unsigned short Isis::VALID_MINU2 = ((unsigned short) 3)
 
const unsigned short Isis::NULLU2 = ((unsigned short) 0)
 
const unsigned short Isis::LOW_REPR_SATU2 = ((unsigned short) 1)
 
const unsigned short Isis::LOW_INSTR_SATU2 = ((unsigned short) 2)
 
const unsigned short Isis::HIGH_INSTR_SATU2 = ((unsigned short) 65534)
 
const unsigned short Isis::HIGH_REPR_SATU2 = ((unsigned short) 65535)
 
const unsigned short Isis::VALID_MAXU2 = ((unsigned short) 65522)
 
const unsigned int Isis::VALID_MINUI4 = ((unsigned int) 3)
 
const unsigned int Isis::NULLUI4 = ((unsigned int) 0)
 
const unsigned int Isis::LOW_REPR_SATUI4 = ((unsigned int) 1)
 
const unsigned int Isis::LOW_INSTR_SATUI4 = ((unsigned int) 2)
 
const unsigned int Isis::HIGH_INSTR_SATUI4 = ((unsigned int) 4294967294)
 
const unsigned int Isis::HIGH_REPR_SATUI4 = ((unsigned int) 4294967295)
 
const unsigned int Isis::VALID_MAXUI4 = ((unsigned int) 4294967282)
 
const unsigned char Isis::VALID_MIN1 = ((unsigned char) 1)
 
const unsigned char Isis::NULL1 = ((unsigned char) 0)
 
const unsigned char Isis::LOW_REPR_SAT1 = ((unsigned char) 0)
 
const unsigned char Isis::LOW_INSTR_SAT1 = ((unsigned char) 0)
 
const unsigned char Isis::HIGH_INSTR_SAT1 = ((unsigned char) 255)
 
const unsigned char Isis::HIGH_REPR_SAT1 = ((unsigned char) 255)
 
const unsigned char Isis::VALID_MAX1 = ((unsigned char) 254)
 

Detailed Description

Revision
1.2
Date
2008/01/17 19:25:27

Unless noted otherwise, the portions of Isis written by the USGS are public domain. See individual third-party library and package descriptions for intellectual property information,user agreements, and related information.

Although Isis has been used by the USGS, no warranty, expressed or implied, is made by the USGS as to the accuracy and functioning of such software and related material nor shall the fact of distribution constitute any such warranty, and no responsibility is assumed by the USGS in connection therewith.

For additional information, launch $ISISROOT/doc//documents/Disclaimers/Disclaimers.html in a browser or see the Privacy & Disclaimers page on the Isis website, http://isis.astrogeology.usgs.gov, and the USGS privacy and disclaimers on http://www.usgs.gov/privacy.html.

Definition in file SpecialPixel.h.