USGS

Isis 3.0 Object Programmers' Reference

Home

Isis::CubeIoHandler Class Reference

#include <CubeIoHandler.h>

Inheritance diagram for Isis::CubeIoHandler:

Inheritance graph
[legend]
Collaboration diagram for Isis::CubeIoHandler:

Collaboration graph
[legend]
List of all members.

Detailed Description

Pixel value mapper.

This class is used to stretch or remap pixel values. For example, it can be used to apply contrast stretches, color code stretches, or remap from a double range to 8-bit (0 to 255). The methodology used is straightforward. The program must set up a list of stretch pairs, input-to-output mappings, using the AddPair method. For example, (0,0) and (1,255) are two pairs which would cause an input of 0 to be mapped to 0, 0.5 would be mapped to 127.5 and 1 would be mapped to 255. More than two pairs can be used which generates piece-wise linear mappings. Special pixels are mapped to themselves unless overridden with methods such as SetNull. Input values outside the minimum and maximum input pair values are mapped to LRS and HRS respectively.

If you would like to see Stretch being used in implementation, see stretch.cpp

/

Author:
???

For internal use only.

History:
2006-06-12 Tracie Sucharski - Clear stream bits before opening cube.

Definition at line 57 of file CubeIoHandler.h.

Public Member Functions

 CubeIoHandler (IsisCubeDef &cube)
virtual ~CubeIoHandler ()
void Open ()
virtual void Create (bool overwrite)
virtual void Close (const bool remove=false)=0
virtual void Read (Isis::Buffer &rbuf)=0
virtual void Write (Isis::Buffer &wbuf)=0
void ToDouble (Isis::Buffer &buf)
void ToRaw (Isis::Buffer &buf)

Protected Attributes

IsisCubeDefp_cube
bool p_native


The documentation for this class was generated from the following files: