21#ifndef vtkGenericAttribute_h
22#define vtkGenericAttribute_h
24#include "vtkCommonDataModelModule.h"
27VTK_ABI_NAMESPACE_BEGIN
114 virtual void GetRange(
int component,
double range[2]) = 0;
virtual void GetRange(int component, double range[2])=0
Range of the attribute component component'.
virtual void GetTuple(vtkGenericPointIterator *p, double *tuple)=0
Value of the attribute at position `p'.
virtual const char * GetName()=0
Name of the attribute.
virtual int GetNumberOfComponents()=0
Dimension of the attribute.
virtual void GetTuple(vtkGenericAdaptorCell *c, double *tuple)=0
Attribute at all points of cell `c'.
virtual int GetCentering()=0
Is the attribute centered either on points, cells or boundaries?
~vtkGenericAttribute() override
virtual double * GetRange(int component=0)=0
Range of the attribute component component'.
virtual unsigned long GetActualMemorySize()=0
Size in kibibytes (1024 bytes) taken by the attribute.
virtual double GetMaxNorm()=0
Return the maximum euclidean norm for the tuples.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual int GetType()=0
Type of the attribute: scalar, vector, normal, texture coordinate, tensor.
virtual int GetComponentType()=0
Type of the components of the attribute: int, float, double.
virtual void DeepCopy(vtkGenericAttribute *other)=0
Recursive duplication of other' in this'.
virtual void GetTuple(vtkGenericCellIterator *c, double *tuple)=0
Attribute at all points of cell `c'.
virtual double GetComponent(int i, vtkGenericPointIterator *p)=0
Put component i' of the attribute at all points of cell c' in `values'.
virtual void ShallowCopy(vtkGenericAttribute *other)=0
Update this' using fields of other'.
virtual vtkIdType GetSize()=0
Number of tuples.
iterator used to traverse cells
iterator used to traverse points
a simple class to control print indentation