VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkTable Class Reference

A table, which contains similar-typed columns of data. More...

#include <vtkTable.h>

Inheritance diagram for vtkTable:
[legend]
Collaboration diagram for vtkTable:
[legend]

Public Types

typedef vtkDataObject Superclass
 
- Public Types inherited from vtkDataObject
typedef vtkObject Superclass
 
enum  FieldAssociations {
  FIELD_ASSOCIATION_POINTS, FIELD_ASSOCIATION_CELLS, FIELD_ASSOCIATION_NONE, FIELD_ASSOCIATION_POINTS_THEN_CELLS,
  FIELD_ASSOCIATION_VERTICES, FIELD_ASSOCIATION_EDGES, FIELD_ASSOCIATION_ROWS, NUMBER_OF_ASSOCIATIONS
}
 
enum  AttributeTypes {
  POINT, CELL, FIELD, POINT_THEN_CELL,
  VERTEX, EDGE, ROW, NUMBER_OF_ATTRIBUTE_TYPES
}
 
enum  FieldOperations { FIELD_OPERATION_PRESERVED, FIELD_OPERATION_REINTERPOLATED, FIELD_OPERATION_MODIFIED, FIELD_OPERATION_REMOVED }
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkTableNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
void Dump (unsigned int colWidth=16, int rowLimit=-1)
 
int GetDataObjectType ()
 
virtual unsigned long GetActualMemorySize ()
 
vtkIdType GetNumberOfRows ()
 
void SetNumberOfRows (const vtkIdType)
 
vtkVariantArray * GetRow (vtkIdType row)
 
void GetRow (vtkIdType row, vtkVariantArray *values)
 
void SetRow (vtkIdType row, vtkVariantArray *values)
 
vtkIdType InsertNextBlankRow (double default_num_val=0.0)
 
vtkIdType InsertNextRow (vtkVariantArray *arr)
 
void RemoveRow (vtkIdType row)
 
vtkIdType GetNumberOfColumns ()
 
const char * GetColumnName (vtkIdType col)
 
vtkAbstractArray * GetColumnByName (const char *name)
 
vtkAbstractArray * GetColumn (vtkIdType col)
 
void AddColumn (vtkAbstractArray *arr)
 
void RemoveColumnByName (const char *name)
 
void RemoveColumn (vtkIdType col)
 
vtkVariant GetValue (vtkIdType row, vtkIdType col)
 
vtkVariant GetValueByName (vtkIdType row, const char *col)
 
void SetValue (vtkIdType row, vtkIdType col, vtkVariant value)
 
void SetValueByName (vtkIdType row, const char *col, vtkVariant value)
 
virtual void Initialize ()
 
virtual vtkFieldData * GetAttributesAsFieldData (int type)
 
virtual vtkIdType GetNumberOfElements (int type)
 
virtual vtkDataSetAttributes * GetRowData ()
 
virtual void SetRowData (vtkDataSetAttributes *data)
 
virtual void ShallowCopy (vtkDataObject *src)
 
virtual void DeepCopy (vtkDataObject *src)
 
- Public Member Functions inherited from vtkDataObject
vtkDataObjectNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
unsigned long int GetMTime ()
 
void ReleaseData ()
 
unsigned long GetUpdateTime ()
 
void DataHasBeenGenerated ()
 
virtual void PrepareForNewData ()
 
virtual int GetExtentType ()
 
virtual void Crop (const int *updateExtent)
 
virtual vtkDataSetAttributes * GetAttributes (int type)
 
virtual int GetAttributeTypeForArray (vtkAbstractArray *arr)
 
virtual vtkInformation * GetInformation ()
 
virtual void SetInformation (vtkInformation *)
 
virtual int GetDataReleased ()
 
virtual void SetFieldData (vtkFieldData *)
 
virtual vtkFieldData * GetFieldData ()
 
virtual void CopyInformationFromPipeline (vtkInformation *vtkNotUsed(info))
 
void GlobalReleaseDataFlagOn ()
 
void GlobalReleaseDataFlagOff ()
 

Static Public Member Functions

static vtkTableNew ()
 
static int IsTypeOf (const char *type)
 
static vtkTableSafeDownCast (vtkObjectBase *o)
 
static vtkTableGetData (vtkInformation *info)
 
static vtkTableGetData (vtkInformationVector *v, int i=0)
 
- Static Public Member Functions inherited from vtkDataObject
static vtkDataObjectNew ()
 
static int IsTypeOf (const char *type)
 
static vtkDataObjectSafeDownCast (vtkObjectBase *o)
 
static const char * GetAssociationTypeAsString (int associationType)
 
static int GetAssociationTypeFromString (const char *associationType)
 
static vtkInformationStringKey * DATA_TYPE_NAME ()
 
static
vtkInformationDataObjectKey * 
DATA_OBJECT ()
 
static vtkInformationIntegerKey * DATA_EXTENT_TYPE ()
 
static
vtkInformationIntegerPointerKey * 
DATA_EXTENT ()
 
static vtkInformationIntegerKey * DATA_PIECE_NUMBER ()
 
static vtkInformationIntegerKey * DATA_NUMBER_OF_PIECES ()
 
static vtkInformationIntegerKey * DATA_NUMBER_OF_GHOST_LEVELS ()
 
static vtkInformationDoubleKey * DATA_RESOLUTION ()
 
static vtkInformationDoubleKey * DATA_TIME_STEP ()
 
static
vtkInformationInformationVectorKey * 
POINT_DATA_VECTOR ()
 
static
vtkInformationInformationVectorKey * 
CELL_DATA_VECTOR ()
 
static
vtkInformationInformationVectorKey * 
VERTEX_DATA_VECTOR ()
 
static
vtkInformationInformationVectorKey * 
EDGE_DATA_VECTOR ()
 
static vtkInformationIntegerKey * FIELD_ARRAY_TYPE ()
 
static vtkInformationIntegerKey * FIELD_ASSOCIATION ()
 
static vtkInformationIntegerKey * FIELD_ATTRIBUTE_TYPE ()
 
static vtkInformationIntegerKey * FIELD_ACTIVE_ATTRIBUTE ()
 
static vtkInformationIntegerKey * FIELD_NUMBER_OF_COMPONENTS ()
 
static vtkInformationIntegerKey * FIELD_NUMBER_OF_TUPLES ()
 
static vtkInformationIntegerKey * FIELD_OPERATION ()
 
static
vtkInformationDoubleVectorKey * 
FIELD_RANGE ()
 
static
vtkInformationDoubleVectorKey * 
PIECE_FIELD_RANGE ()
 
static vtkInformationStringKey * FIELD_ARRAY_NAME ()
 
static
vtkInformationIntegerVectorKey * 
PIECE_EXTENT ()
 
static vtkInformationStringKey * FIELD_NAME ()
 
static
vtkInformationDoubleVectorKey * 
ORIGIN ()
 
static
vtkInformationDoubleVectorKey * 
SPACING ()
 
static vtkInformationIntegerKey * DATA_GEOMETRY_UNMODIFIED ()
 
static
vtkInformationDoubleVectorKey * 
BOUNDING_BOX ()
 
static
vtkInformationDataObjectKey * 
SIL ()
 
static vtkInformation * GetActiveFieldInformation (vtkInformation *info, int fieldAssociation, int attributeType)
 
static vtkInformation * GetNamedFieldInformation (vtkInformation *info, int fieldAssociation, const char *name)
 
static void RemoveNamedFieldInformation (vtkInformation *info, int fieldAssociation, const char *name)
 
static vtkInformation * SetActiveAttribute (vtkInformation *info, int fieldAssociation, const char *attributeName, int attributeType)
 
static void SetActiveAttributeInfo (vtkInformation *info, int fieldAssociation, int attributeType, const char *name, int arrayType, int numComponents, int numTuples)
 
static void SetPointDataActiveScalarInfo (vtkInformation *info, int arrayType, int numComponents)
 
static vtkDataObjectGetData (vtkInformation *info)
 
static vtkDataObjectGetData (vtkInformationVector *v, int i=0)
 
static void SetGlobalReleaseDataFlag (int val)
 
static int GetGlobalReleaseDataFlag ()
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 
 vtkTable ()
 
 ~vtkTable ()
 
- Protected Member Functions inherited from vtkDataObject
 vtkDataObject ()
 
 ~vtkDataObject ()
 

Protected Attributes

vtkDataSetAttributes * RowData
 
vtkVariantArray * RowArray
 
- Protected Attributes inherited from vtkDataObject
vtkFieldData * FieldData
 
int DataReleased
 
vtkTimeStamp UpdateTime
 
vtkInformation * Information
 

Detailed Description

A table, which contains similar-typed columns of data.

vtkTable is a basic data structure for storing columns of data. Internally, columns are stored in a vtkDataSetAttributes structure called RowData. However, using the vtkTable API additionally ensures that every column has the same number of entries, and provides row access (using vtkVariantArray) and single entry access (using vtkVariant).

The field data inherited from vtkDataObject may be used to store metadata related to the table.

Warning
You should use the vtkTable API to change the table data. Performing operations on the object returned by GetRowData() may yield unexpected results. vtkTable does allow the user to set the field data using SetRowData(); the number of rows in the table is determined by the number of tuples in the first array (it is assumed that all arrays are the same length).
Each column added with AddColumn must have its name set to a unique, non-empty string in order for GetValue() to function properly.
Thanks:
Thanks to Patricia Crossno, Ken Moreland, Andrew Wilson and Brian Wylie from Sandia National Laboratories for their help in developing this class API.
Examples:
vtkTable (Examples)
Tests:
vtkTable (Tests)

Definition at line 67 of file vtkTable.h.

Member Typedef Documentation

Definition at line 71 of file vtkTable.h.

Constructor & Destructor Documentation

vtkTable::vtkTable ( )
protected
vtkTable::~vtkTable ( )
protected

Member Function Documentation

static vtkTable* vtkTable::New ( )
static
static int vtkTable::IsTypeOf ( const char *  type)
static
virtual int vtkTable::IsA ( const char *  type)
virtual

Reimplemented from vtkDataObject.

static vtkTable* vtkTable::SafeDownCast ( vtkObjectBase *  o)
static
virtual vtkObjectBase* vtkTable::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkDataObject.

vtkTable* vtkTable::NewInstance ( ) const
void vtkTable::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
void vtkTable::Dump ( unsigned int  colWidth = 16,
int  rowLimit = -1 
)

Dump table contents. If rowLimit is -1 then the full table is printed out (Default). If rowLimit is 0 then only the header row will be displayed. Otherwise, if rowLimit > 0 then Dump will print the first rowLimit rows of data.

int vtkTable::GetDataObjectType ( )
inlinevirtual

Return what type of dataset this is.

Reimplemented from vtkDataObject.

Definition at line 81 of file vtkTable.h.

virtual unsigned long vtkTable::GetActualMemorySize ( )
virtual

Return the actual size of the data in kilobytes. This number is valid only after the pipeline has updated. The memory size returned is guaranteed to be greater than or equal to the memory required to represent the data (e.g., extra space in arrays, etc. are not included in the return value).

Reimplemented from vtkDataObject.

virtual vtkDataSetAttributes* vtkTable::GetRowData ( )
virtual

Get/Set the main data (columns) of the table.

virtual void vtkTable::SetRowData ( vtkDataSetAttributes *  data)
virtual

Get/Set the main data (columns) of the table.

vtkIdType vtkTable::GetNumberOfRows ( )

Get the number of rows in the table.

void vtkTable::SetNumberOfRows ( const vtkIdType  )

Set the number of rows in the table. Note that memory allocation might be performed as a result of this, but no memory will be released.

vtkVariantArray* vtkTable::GetRow ( vtkIdType  row)

Get a row of the table as a vtkVariantArray which has one entry for each column. NOTE: This version of the method is NOT thread safe.

void vtkTable::GetRow ( vtkIdType  row,
vtkVariantArray *  values 
)

Get a row of the table as a vtkVariantArray which has one entry for each column.

void vtkTable::SetRow ( vtkIdType  row,
vtkVariantArray *  values 
)

Set a row of the table with a vtkVariantArray which has one entry for each column.

vtkIdType vtkTable::InsertNextBlankRow ( double  default_num_val = 0.0)

Insert a blank row at the end of the table.

vtkIdType vtkTable::InsertNextRow ( vtkVariantArray *  arr)

Insert a row specified by a vtkVariantArray. The number of entries in the array should match the number of columns in the table.

void vtkTable::RemoveRow ( vtkIdType  row)

Delete a row from the table. Rows below the deleted row are shifted up.

vtkIdType vtkTable::GetNumberOfColumns ( )

Get the number of columns in the table.

const char* vtkTable::GetColumnName ( vtkIdType  col)
vtkAbstractArray* vtkTable::GetColumnByName ( const char *  name)

Get a column of the table by its name.

vtkAbstractArray* vtkTable::GetColumn ( vtkIdType  col)

Get a column of the table by its column index.

void vtkTable::AddColumn ( vtkAbstractArray *  arr)

Add a column to the table.

void vtkTable::RemoveColumnByName ( const char *  name)

Remove a column from the table by its name.

void vtkTable::RemoveColumn ( vtkIdType  col)

Remove a column from the table by its column index.

vtkVariant vtkTable::GetValue ( vtkIdType  row,
vtkIdType  col 
)

Retrieve a value in the table by row and column index as a variant. Note that this calls GetValueByName internally so that each column array must have its name set (and that name should be unique within the table).

vtkVariant vtkTable::GetValueByName ( vtkIdType  row,
const char *  col 
)

Retrieve a value in the table by row index and column name as a variant.

void vtkTable::SetValue ( vtkIdType  row,
vtkIdType  col,
vtkVariant  value 
)

Set a value in the table by row and column index as a variant.

void vtkTable::SetValueByName ( vtkIdType  row,
const char *  col,
vtkVariant  value 
)

Set a value in the table by row index and column name as a variant.

virtual void vtkTable::Initialize ( )
virtual

Initialize to an empty table.

Reimplemented from vtkDataObject.

static vtkTable* vtkTable::GetData ( vtkInformation *  info)
static

Retrieve the table from vtkInformation.

static vtkTable* vtkTable::GetData ( vtkInformationVector *  v,
int  i = 0 
)
static

Retrieve the table from vtkInformation.

virtual void vtkTable::ShallowCopy ( vtkDataObject src)
virtual

Shallow/deep copy the data from src into this object.

Reimplemented from vtkDataObject.

virtual void vtkTable::DeepCopy ( vtkDataObject src)
virtual

Shallow/deep copy the data from src into this object.

Reimplemented from vtkDataObject.

virtual vtkFieldData* vtkTable::GetAttributesAsFieldData ( int  type)
virtual

Returns the attributes of the data object as a vtkFieldData. This returns non-null values in all the same cases as GetAttributes, in addition to the case of FIELD, which will return the field data for any vtkDataObject subclass.

Reimplemented from vtkDataObject.

virtual vtkIdType vtkTable::GetNumberOfElements ( int  type)
virtual

Get the number of elements for a specific attribute type (ROW, etc.).

Reimplemented from vtkDataObject.

Member Data Documentation

vtkDataSetAttributes* vtkTable::RowData
protected

Holds the column data of the table.

Definition at line 205 of file vtkTable.h.

vtkVariantArray* vtkTable::RowArray
protected

Holds row information returned by GetRow().

Definition at line 208 of file vtkTable.h.


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