VTK  9.1.0
vtkTable.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkTable.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
15/*-------------------------------------------------------------------------
16 Copyright 2008 Sandia Corporation.
17 Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18 the U.S. Government retains certain rights in this software.
19-------------------------------------------------------------------------*/
51#ifndef vtkTable_h
52#define vtkTable_h
53
54#include "vtkCommonDataModelModule.h" // For export macro
55#include "vtkDataObject.h"
56
59class vtkVariant;
60class vtkVariantArray;
61
62class VTKCOMMONDATAMODEL_EXPORT vtkTable : public vtkDataObject
63{
64public:
65 static vtkTable* New();
67 vtkTypeMacro(vtkTable, vtkDataObject);
68 void PrintSelf(ostream& os, vtkIndent indent) override;
69
76 void Dump(unsigned int colWidth = 16, int rowLimit = -1);
77
81 int GetDataObjectType() override { return VTK_TABLE; }
82
90 unsigned long GetActualMemorySize() override;
91
93
96 vtkGetObjectMacro(RowData, vtkDataSetAttributes);
99
100 //
101 // Row functions
102 //
103
108
114
120
124 void GetRow(vtkIdType row, vtkVariantArray* values);
125
129 void SetRow(vtkIdType row, vtkVariantArray* values);
130
134 vtkIdType InsertNextBlankRow(double default_num_val = 0.0);
135
141
146
147 //
148 // Column functions
149 //
150
155
156 // Get the name of a column of the table.
157 const char* GetColumnName(vtkIdType col);
158
163
168
173
177 void RemoveColumnByName(const char* name);
178
183
184 //
185 // Table single entry functions
186 //
187
195
199 vtkVariant GetValueByName(vtkIdType row, const char* col);
200
205
209 void SetValueByName(vtkIdType row, const char* col, vtkVariant value);
210
214 void Initialize() override;
215
217
221 static vtkTable* GetData(vtkInformationVector* v, int i = 0);
223
225
228 void ShallowCopy(vtkDataObject* src) override;
229 void DeepCopy(vtkDataObject* src) override;
231
239
244
245protected:
247 ~vtkTable() override;
248
253
258
259private:
260 vtkTable(const vtkTable&) = delete;
261 void operator=(const vtkTable&) = delete;
262};
263
264#endif
Abstract superclass for all arrays.
general representation of visualization data
Definition: vtkDataObject.h:60
represent and manipulate attribute data in a dataset
represent and manipulate fields of data
Definition: vtkFieldData.h:55
a simple class to control print indentation
Definition: vtkIndent.h:34
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
A table, which contains similar-typed columns of data.
Definition: vtkTable.h:63
unsigned long GetActualMemorySize() override
Return the actual size of the data in kibibytes (1024 bytes).
vtkDataSetAttributes * RowData
Holds the column data of the table.
Definition: vtkTable.h:252
virtual void SetRowData(vtkDataSetAttributes *data)
Get/Set the main data (columns) of the table.
void AddColumn(vtkAbstractArray *arr)
Add a column to the table.
void SetNumberOfRows(const vtkIdType)
Set the number of rows in the table.
vtkIdType GetNumberOfElements(int type) override
Get the number of elements for a specific attribute type (ROW, etc.).
~vtkTable() override
vtkFieldData * GetAttributesAsFieldData(int type) override
Returns the attributes of the data object as a vtkFieldData.
void RemoveRow(vtkIdType row)
Delete a row from the table.
void DeepCopy(vtkDataObject *src) override
Shallow/deep copy the data from src into this object.
vtkVariant GetValueByName(vtkIdType row, const char *col)
Retrieve a value in the table by row index and column name as a variant.
static vtkTable * New()
vtkAbstractArray * GetColumnByName(const char *name)
Get a column of the table by its name.
vtkIdType InsertNextRow(vtkVariantArray *values)
Insert a row specified by a vtkVariantArray.
vtkIdType GetNumberOfRows()
Get the number of rows in the table.
static vtkTable * GetData(vtkInformation *info)
Retrieve the table from vtkInformation.
void Dump(unsigned int colWidth=16, int rowLimit=-1)
Dump table contents.
vtkIdType GetNumberOfColumns()
Get the number of columns in the table.
vtkAbstractArray * GetColumn(vtkIdType col)
Get a column of the table by its column index.
void SetRow(vtkIdType row, vtkVariantArray *values)
Set a row of the table with a vtkVariantArray which has one entry for each column.
void ShallowCopy(vtkDataObject *src) override
Shallow/deep copy the data from src into this object.
vtkVariant GetValue(vtkIdType row, vtkIdType col)
Retrieve a value in the table by row and column index as a variant.
static vtkTable * GetData(vtkInformationVector *v, int i=0)
Retrieve the table from vtkInformation.
static vtkTable * ExtendedNew()
void GetRow(vtkIdType row, vtkVariantArray *values)
Get a row of the table as a vtkVariantArray which has one entry for each column.
void RemoveColumnByName(const char *name)
Remove a column from the table by its name.
vtkVariantArray * RowArray
Holds row information returned by GetRow().
Definition: vtkTable.h:257
void SetValue(vtkIdType row, vtkIdType col, vtkVariant value)
Set a value in the table by row and column index as a variant.
int GetDataObjectType() override
Return what type of dataset this is.
Definition: vtkTable.h:81
vtkVariantArray * GetRow(vtkIdType row)
Get a row of the table as a vtkVariantArray which has one entry for each column.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void Initialize() override
Initialize to an empty table.
vtkIdType InsertNextBlankRow(double default_num_val=0.0)
Insert a blank row at the end of the table.
void SetValueByName(vtkIdType row, const char *col, vtkVariant value)
Set a value in the table by row index and column name as a variant.
const char * GetColumnName(vtkIdType col)
void RemoveColumn(vtkIdType col)
Remove a column from the table by its column index.
An array holding vtkVariants.
A atomic type representing the union of many types.
Definition: vtkVariant.h:66
@ info
Definition: vtkX3D.h:382
@ value
Definition: vtkX3D.h:226
@ type
Definition: vtkX3D.h:522
@ name
Definition: vtkX3D.h:225
@ data
Definition: vtkX3D.h:321
int vtkIdType
Definition: vtkType.h:332
#define VTK_TABLE
Definition: vtkType.h:96