GDAL
|
Raster Attribute Table container. More...
#include <gdal_rat.h>
Public Member Functions | |
GDALDefaultRasterAttributeTable () | |
Construct empty table. | |
GDALDefaultRasterAttributeTable * | Clone () const override |
Copy Raster Attribute Table. More... | |
int | GetColumnCount () const override |
Fetch table column count. More... | |
const char * | GetNameOfCol (int) const override |
Fetch name of indicated column. More... | |
GDALRATFieldUsage | GetUsageOfCol (int) const override |
Fetch column usage value. More... | |
GDALRATFieldType | GetTypeOfCol (int) const override |
Fetch column type. More... | |
int | GetColOfUsage (GDALRATFieldUsage) const override |
Return the index of the column that corresponds to the passed usage. More... | |
int | GetRowCount () const override |
Fetch row count. More... | |
const char * | GetValueAsString (int iRow, int iField) const override |
Fetch field value as a string. More... | |
int | GetValueAsInt (int iRow, int iField) const override |
Fetch field value as a integer. More... | |
double | GetValueAsDouble (int iRow, int iField) const override |
Fetch field value as a double. More... | |
void | SetValue (int iRow, int iField, const char *pszValue) override |
Set value. More... | |
void | SetValue (int iRow, int iField, double dfValue) override |
Set field value from double. More... | |
void | SetValue (int iRow, int iField, int nValue) override |
Set field value from integer. More... | |
int | ChangesAreWrittenToFile () override |
Determine whether changes made to this RAT are reflected directly in the dataset. More... | |
void | SetRowCount (int iCount) override |
Set row count. More... | |
int | GetRowOfValue (double dfValue) const override |
Get row for pixel value. More... | |
int | GetRowOfValue (int nValue) const override |
Get row for pixel value. More... | |
CPLErr | CreateColumn (const char *pszFieldName, GDALRATFieldType eFieldType, GDALRATFieldUsage eFieldUsage) override |
Create new column. More... | |
CPLErr | SetLinearBinning (double dfRow0Min, double dfBinSize) override |
Set linear binning information. More... | |
int | GetLinearBinning (double *pdfRow0Min, double *pdfBinSize) const override |
Get linear binning information. More... | |
CPLErr | SetTableType (const GDALRATTableType eInTableType) override |
Set RAT Table Type. More... | |
GDALRATTableType | GetTableType () const override |
Get RAT Table Type. More... | |
void | RemoveStatistics () override |
Remove Statistics from RAT. More... | |
Public Member Functions inherited from GDALRasterAttributeTable | |
virtual CPLErr | ValuesIO (GDALRWFlag eRWFlag, int iField, int iStartRow, int iLength, double *pdfData) |
Read or Write a block of doubles to/from the Attribute Table. More... | |
virtual CPLErr | ValuesIO (GDALRWFlag eRWFlag, int iField, int iStartRow, int iLength, int *pnData) |
Read or Write a block of integers to/from the Attribute Table. More... | |
virtual CPLErr | ValuesIO (GDALRWFlag eRWFlag, int iField, int iStartRow, int iLength, char **papszStrList) |
Read or Write a block of strings to/from the Attribute Table. More... | |
virtual CPLXMLNode * | Serialize () const |
Serialize. More... | |
virtual void * | SerializeJSON () const |
Serialize as a JSON object. More... | |
virtual CPLErr | XMLInit (CPLXMLNode *, const char *) |
Deserialize from XML. More... | |
virtual CPLErr | InitializeFromColorTable (const GDALColorTable *) |
Initialize from color table. More... | |
virtual GDALColorTable * | TranslateToColorTable (int nEntryCount=-1) |
Translate to a color table. More... | |
virtual void | DumpReadable (FILE *=nullptr) |
Dump RAT in readable form. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from GDALRasterAttributeTable | |
static GDALRasterAttributeTableH | ToHandle (GDALRasterAttributeTable *poRAT) |
Convert a GDALRasterAttributeTable* to a GDALRasterAttributeTableH. More... | |
static GDALRasterAttributeTable * | FromHandle (GDALRasterAttributeTableH hRAT) |
Convert a GDALRasterAttributeTableH to a GDALRasterAttributeTable*. More... | |
Raster Attribute Table container.
|
overridevirtual |
Determine whether changes made to this RAT are reflected directly in the dataset.
If this returns FALSE then GDALRasterBand.SetDefaultRAT() should be called. Otherwise this is unnecessary since changes to this object are reflected in the dataset.
This method is the same as the C function GDALRATChangesAreWrittenToFile().
Implements GDALRasterAttributeTable.
|
overridevirtual |
Copy Raster Attribute Table.
Creates a new copy of an existing raster attribute table. The new copy becomes the responsibility of the caller to destroy. May fail (return nullptr) if the attribute table is too large to clone (GetRowCount() * GetColCount() > RAT_MAX_ELEM_FOR_CLONE)
This method is the same as the C function GDALRATClone().
Implements GDALRasterAttributeTable.
|
overridevirtual |
Create new column.
If the table already has rows, all row values for the new column will be initialized to the default value ("", or zero). The new column is always created as the last column, can will be column (field) "GetColumnCount()-1" after CreateColumn() has completed successfully.
This method is the same as the C function GDALRATCreateColumn().
pszFieldName | the name of the field to create. |
eFieldType | the field type (integer, double or string). |
eFieldUsage | the field usage, GFU_Generic if not known. |
Reimplemented from GDALRasterAttributeTable.
|
overridevirtual |
Return the index of the column that corresponds to the passed usage.
eUsage | usage. |
Implements GDALRasterAttributeTable.
|
overridevirtual |
Fetch table column count.
This method is the same as the C function GDALRATGetColumnCount().
Implements GDALRasterAttributeTable.
|
overridevirtual |
Get linear binning information.
Returns linear binning information if any is associated with the RAT.
This method is the same as the C function GDALRATGetLinearBinning().
pdfRow0Min | (out) the lower bound (pixel value) of the first category. |
pdfBinSize | (out) the width of each category (in pixel value units). |
Reimplemented from GDALRasterAttributeTable.
|
overridevirtual |
Fetch name of indicated column.
iCol | column index. |
Implements GDALRasterAttributeTable.
|
overridevirtual |
Fetch row count.
This method is the same as the C function GDALRATGetRowCount().
Implements GDALRasterAttributeTable.
|
overridevirtual |
Get row for pixel value.
Given a raw pixel value, the raster attribute table is scanned to determine which row in the table applies to the pixel value. The row index is returned.
This method is the same as the C function GDALRATGetRowOfValue().
dfValue | the pixel value. |
Reimplemented from GDALRasterAttributeTable.
|
overridevirtual |
Get row for pixel value.
Given a raw pixel value, the raster attribute table is scanned to determine which row in the table applies to the pixel value. The row index is returned.
Int arg for now just converted to double. Perhaps we will handle this in a special way some day?
This method is the same as the C function GDALRATGetRowOfValue().
nValue | the pixel value. |
Reimplemented from GDALRasterAttributeTable.
|
overridevirtual |
Get RAT Table Type.
Returns whether table type is thematic or athematic
This method is the same as the C function GDALRATGetTableType().
Implements GDALRasterAttributeTable.
|
overridevirtual |
|
overridevirtual |
Fetch column usage value.
iCol | column index. |
Implements GDALRasterAttributeTable.
|
overridevirtual |
Fetch field value as a double.
The value of the requested column in the requested row is returned as a double. Non double fields will be converted to double with the possibility of data loss.
This method is the same as the C function GDALRATGetValueAsDouble().
iRow | row to fetch (zero based). |
iField | column to fetch (zero based). |
Implements GDALRasterAttributeTable.
|
overridevirtual |
Fetch field value as a integer.
The value of the requested column in the requested row is returned as an integer. Non-integer fields will be converted to integer with the possibility of data loss.
This method is the same as the C function GDALRATGetValueAsInt().
iRow | row to fetch (zero based). |
iField | column to fetch (zero based). |
Implements GDALRasterAttributeTable.
|
overridevirtual |
Fetch field value as a string.
The value of the requested column in the requested row is returned as a string. If the field is numeric, it is formatted as a string using default rules, so some precision may be lost.
The returned string is temporary and cannot be expected to be available after the next GDAL call.
This method is the same as the C function GDALRATGetValueAsString().
iRow | row to fetch (zero based). |
iField | column to fetch (zero based). |
Implements GDALRasterAttributeTable.
|
overridevirtual |
Remove Statistics from RAT.
Remove statistics (such as histogram) from the RAT. This is important if these have been invalidated, for example by cropping the image.
This method is the same as the C function GDALRATRemoveStatistics().
Implements GDALRasterAttributeTable.
|
overridevirtual |
Set linear binning information.
For RATs with equal sized categories (in pixel value space) that are evenly spaced, this method may be used to associate the linear binning information with the table.
This method is the same as the C function GDALRATSetLinearBinning().
dfRow0MinIn | the lower bound (pixel value) of the first category. |
dfBinSizeIn | the width of each category (in pixel value units). |
Reimplemented from GDALRasterAttributeTable.
|
overridevirtual |
|
overridevirtual |
Set RAT Table Type.
Set whether table type is thematic or athematic
This method is the same as the C function GDALRATSetTableType().
eInTableType | the new RAT table type (GRTT_THEMATIC or GRTT_ATHEMATIC) |
Implements GDALRasterAttributeTable.
|
overridevirtual |
Set value.
iRow | row index. |
iField | field index. |
pszValue | value. |
Implements GDALRasterAttributeTable.
|
overridevirtual |
Set field value from double.
The indicated field (column) on the indicated row is set from the passed value. The value will be automatically converted for other field types, with a possible loss of precision.
This method is the same as the C function GDALRATSetValueAsDouble().
iRow | row to fetch (zero based). |
iField | column to fetch (zero based). |
dfValue | the value to assign. |
Implements GDALRasterAttributeTable.
|
overridevirtual |
Set field value from integer.
The indicated field (column) on the indicated row is set from the passed value. The value will be automatically converted for other field types, with a possible loss of precision.
This method is the same as the C function GDALRATSetValueAsInteger().
iRow | row to fetch (zero based). |
iField | column to fetch (zero based). |
nValue | the value to assign. |
Implements GDALRasterAttributeTable.