# GDALColorTable Class Reference

`#include <gdal_priv.h>`

List of all members.

## Public Member Functions
| GDALColorTable (GDALPaletteInterp=GPI_RGB)
| Construct a new color table.
| ~GDALColorTable ()
| Destructor.
GDALColorTable * | Clone () const
| Make a copy of a color table.
GDALPaletteInterp | GetPaletteInterpretation () const
| Fetch palette interpretation.
int | GetColorEntryCount () const
| Get number of color entries in table.
const GDALColorEntry * | GetColorEntry (int) const
| Fetch a color entry from table.
int | GetColorEntryAsRGB (int, GDALColorEntry *) const
| Fetch a table entry in RGB format.
void | SetColorEntry (int, const GDALColorEntry *)
| Set entry in color table.
int | CreateColorRamp (int, const GDALColorEntry *, int, const GDALColorEntry *)
| Create color ramp.

## Detailed Description

A color table / palette.

## Constructor & Destructor Documentation

GDALColorTable::GDALColorTable | ( | GDALPaletteInterp | eInterpIn = `GPI_RGB` | ) |

Construct a new color table.

This constructor is the same as the C GDALCreateColorTable() function.

Parameters:

  | eInterpIn | the interpretation to be applied to GDALColorEntry values.

Referenced by Clone(), and GDALCreateColorTable().

GDALColorTable::~GDALColorTable | ( |  | ) |

Destructor.

This descructor is the same as the C GDALDestroyColorTable() function.

## Member Function Documentation

GDALColorTable * GDALColorTable::Clone | ( |  | ) | const

Make a copy of a color table.

This method is the same as the C function GDALCloneColorTable().

References GDALColorTable().

GDALPaletteInterp GDALColorTable::GetPaletteInterpretation | ( |  | ) | const

Fetch palette interpretation.

The returned value is used to interprete the values in the GDALColorEntry.

This method is the same as the C function GDALGetPaletteInterpretation().

Returns:
  palette interpretation enumeration value, usually GPI_RGB.

Referenced by GDALRegenerateOverviews().

int GDALColorTable::GetColorEntryCount | ( |  | ) | const

Get number of color entries in table.

This method is the same as the function GDALGetColorEntryCount().

Returns:
  the number of color entries.

Referenced by CreateColorRamp(), GDALRasterBand::GetIndexColorTranslationTo(), and GDALRasterAttributeTable::InitializeFromColorTable().

const GDALColorEntry * GDALColorTable::GetColorEntry | ( | int | i | ) | const

Fetch a color entry from table.

This method is the same as the C function GDALGetColorEntry().

Parameters:

  | i | entry offset from zero to GetColorEntryCount()-1.

Returns:
  pointer to internal color entry, or NULL if index is out of range.

Referenced by GDALRasterBand::GetIndexColorTranslationTo().

int GDALColorTable::GetColorEntryAsRGB | ( | int | i,
|  | GDALColorEntry * | poEntry |
| ) |  |  | const

Fetch a table entry in RGB format.

In theory this method should support translation of color palettes in non-RGB color spaces into RGB on the fly, but currently it only works on RGB color tables.

This method is the same as the C function GDALGetColorEntryAsRGB().

Parameters:

  | i | entry offset from zero to GetColorEntryCount()-1.
  | poEntry | the existing GDALColorEntry to be overrwritten with the RGB values.

Returns:
  TRUE on success, or FALSE if the conversion isn't supported.

References GPI_RGB.

Referenced by GDALRasterAttributeTable::InitializeFromColorTable().

void GDALColorTable::SetColorEntry | ( | int | i,
|  | const GDALColorEntry * | poEntry |
| ) |  |  |

Set entry in color table.

Note that the passed in color entry is copied, and no internal reference to it is maintained. Also, the passed in entry must match the color interpretation of the table to which it is being assigned.

The table is grown as needed to hold the supplied offset.

This function is the same as the C function GDALSetColorEntry().

Parameters:

  | i | entry offset from zero to GetColorEntryCount()-1.
  | poEntry | value to assign to table.

References GDALColorEntry::c1, GDALColorEntry::c2, GDALColorEntry::c3, and GDALColorEntry::c4.

Referenced by CreateColorRamp(), and GDALRasterAttributeTable::TranslateToColorTable().

int GDALColorTable::CreateColorRamp | ( | int | nStartIndex,
|  | const GDALColorEntry * | psStartColor,
|  | int | nEndIndex,
|  | const GDALColorEntry * | psEndColor |
| ) |  |  |

Create color ramp.

Automatically creates a color ramp from one color entry to another. It can be called several times to create multiples ramps in the same color table.

This function is the same as the C function GDALCreateColorRamp().

Parameters:

  | nStartIndex | index to start the ramp on the color table [0..255]
  | psStartColor | a color entry value to start the ramp
  | nEndIndex | index to end the ramp on the color table [0..255]
  | psEndColor | a color entry value to end the ramp

Returns:
  total number of entries, -1 to report error

References GDALColorEntry::c1, GDALColorEntry::c2, GDALColorEntry::c3, GDALColorEntry::c4, GetColorEntryCount(), and SetColorEntry().

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

- gdal_priv.h
- gdalcolortable.cpp

Generated for GDAL by 1.5.6.