VTK  9.7.20261007
vtkDataArray.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
137
138#ifndef vtkDataArray_h
139#define vtkDataArray_h
140
141#include "vtkAbstractArray.h"
142#include "vtkCommonCoreModule.h" // For export macro
143#include "vtkWrappingHints.h" // For VTK_MARSHALMANUAL
144
145VTK_ABI_NAMESPACE_BEGIN
146class vtkCollection;
147class vtkDoubleArray;
148class vtkIdList;
151class vtkLookupTable;
152class vtkPoints;
153
154class VTKCOMMONCORE_EXPORT VTK_MARSHALMANUAL vtkDataArray : public vtkAbstractArray
155{
156public:
158 void PrintSelf(ostream& os, vtkIndent indent) override;
159 using ArrayTypeTag = std::integral_constant<int, vtkArrayTypes::VTK_DATA_ARRAY>;
160 using typename vtkAbstractArray::DataTypeTag;
161
169
176 int IsNumeric() const override { return 1; }
177
183 int GetElementComponentSize() const override { return this->GetDataTypeSize(); }
184
185 // Reimplemented virtuals (doc strings are inherited from superclass):
187
192 void InsertTuple(vtkIdType dstTupleIdx, vtkIdType srcTupleIdx, vtkAbstractArray* source) override;
194 void InsertTuples(vtkIdList* dstIds, vtkIdList* srcIds, vtkAbstractArray* source) override;
196 vtkIdType dstStart, vtkIdType n, vtkIdType srcStart, vtkAbstractArray* source) override;
198 vtkIdType dstStart, vtkIdList* srcIds, vtkAbstractArray* source) override;
199 void SetTuple(vtkIdType dstTupleIdx, vtkIdType srcTupleIdx, vtkAbstractArray* source) override;
201 void GetTuples(vtkIdList* tupleIds, vtkAbstractArray* output) override;
202 void GetTuples(vtkIdType p1, vtkIdType p2, vtkAbstractArray* output) override;
204 double* weights) override;
205 void InterpolateTuple(vtkIdType dstTupleIdx, vtkIdType srcTupleIdx1, vtkAbstractArray* source1,
206 vtkIdType srcTupleIdx2, vtkAbstractArray* source2, double t) override;
207
213 virtual double* GetTuple(vtkIdType tupleIdx)
214 VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples()) = 0;
215
221 virtual void GetTuple(vtkIdType tupleIdx, double* tuple)
222 VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples()) = 0;
223
225
234 virtual void GetIntegerTuple(vtkIdType tupleIdx, vtkTypeInt64* tuple)
235 VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples());
236 virtual void SetIntegerTuple(vtkIdType tupleIdx, vtkTypeInt64* tuple)
237 VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples());
239
241
250 virtual void GetUnsignedTuple(vtkIdType tupleIdx, vtkTypeUInt64* tuple)
251 VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples());
252 virtual void SetUnsignedTuple(vtkIdType tupleIdx, vtkTypeUInt64* tuple)
253 VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples());
255
257
262 double GetTuple1(vtkIdType tupleIdx) VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples());
263 double* GetTuple2(vtkIdType tupleIdx) VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples())
264 VTK_SIZEHINT(2);
265 double* GetTuple3(vtkIdType tupleIdx) VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples())
266 VTK_SIZEHINT(3);
267 double* GetTuple4(vtkIdType tupleIdx) VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples())
268 VTK_SIZEHINT(4);
269 double* GetTuple6(vtkIdType tupleIdx) VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples())
270 VTK_SIZEHINT(6);
271 double* GetTuple9(vtkIdType tupleIdx) VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples())
272 VTK_SIZEHINT(9);
274
276
281 virtual void SetTuple(vtkIdType tupleIdx, const float* tuple)
282 VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples());
283 virtual void SetTuple(vtkIdType tupleIdx, const double* tuple)
284 VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples());
286
288
293 void SetTuple1(vtkIdType tupleIdx, double value)
294 VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples());
295 void SetTuple2(vtkIdType tupleIdx, double val0, double val1)
296 VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples());
297 void SetTuple3(vtkIdType tupleIdx, double val0, double val1, double val2)
298 VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples());
299 void SetTuple4(vtkIdType tupleIdx, double val0, double val1, double val2, double val3)
300 VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples());
301 void SetTuple6(vtkIdType tupleIdx, double val0, double val1, double val2, double val3,
302 double val4, double val5) VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples());
303 void SetTuple9(vtkIdType tupleIdx, double val0, double val1, double val2, double val3,
304 double val4, double val5, double val6, double val7, double val8)
305 VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples());
307
309
313 virtual void InsertTuple(vtkIdType tupleIdx, const float* tuple) VTK_EXPECTS(0 <= tupleIdx) = 0;
314 virtual void InsertTuple(vtkIdType tupleIdx, const double* tuple) VTK_EXPECTS(0 <= tupleIdx) = 0;
316
318
323 void InsertTuple1(vtkIdType tupleIdx, double value) VTK_EXPECTS(0 <= tupleIdx);
324 void InsertTuple2(vtkIdType tupleIdx, double val0, double val1) VTK_EXPECTS(0 <= tupleIdx);
325 void InsertTuple3(vtkIdType tupleIdx, double val0, double val1, double val2)
326 VTK_EXPECTS(0 <= tupleIdx);
327 void InsertTuple4(vtkIdType tupleIdx, double val0, double val1, double val2, double val3)
328 VTK_EXPECTS(0 <= tupleIdx);
329 void InsertTuple6(vtkIdType tupleIdx, double val0, double val1, double val2, double val3,
330 double val4, double val5) VTK_EXPECTS(0 <= tupleIdx);
331 void InsertTuple9(vtkIdType tupleIdx, double val0, double val1, double val2, double val3,
332 double val4, double val5, double val6, double val7, double val8) VTK_EXPECTS(0 <= tupleIdx);
334
336
341 virtual vtkIdType InsertNextTuple(const float* tuple) = 0;
342 virtual vtkIdType InsertNextTuple(const double* tuple) = 0;
344
346
351 void InsertNextTuple1(double value);
352 void InsertNextTuple2(double val0, double val1);
353 void InsertNextTuple3(double val0, double val1, double val2);
354 void InsertNextTuple4(double val0, double val1, double val2, double val3);
356 double val0, double val1, double val2, double val3, double val4, double val5);
357 void InsertNextTuple9(double val0, double val1, double val2, double val3, double val4,
358 double val5, double val6, double val7, double val8);
360
362
367 virtual void RemoveTuple(vtkIdType tupleIdx)
368 VTK_EXPECTS(0 <= tupleIdx && tupleIdx < GetNumberOfTuples()) = 0;
369 virtual void RemoveFirstTuple() { this->RemoveTuple(0); }
370 virtual void RemoveLastTuple();
372
377 virtual double GetComponent(vtkIdType tupleIdx, int compIdx)
378 VTK_EXPECTS(0 <= tupleIdx && GetNumberOfComponents() * tupleIdx + compIdx < GetNumberOfValues())
379 VTK_EXPECTS(0 <= compIdx && compIdx < GetNumberOfComponents());
380
388 virtual void SetComponent(vtkIdType tupleIdx, int compIdx, double value)
389 VTK_EXPECTS(0 <= tupleIdx && GetNumberOfComponents() * tupleIdx + compIdx < GetNumberOfValues())
390 VTK_EXPECTS(0 <= compIdx && compIdx < GetNumberOfComponents());
391
396 virtual void InsertComponent(vtkIdType tupleIdx, int compIdx, double value)
397 VTK_EXPECTS(0 <= tupleIdx) VTK_EXPECTS(0 <= compIdx && compIdx < GetNumberOfComponents());
398
407 virtual void GetData(
408 vtkIdType tupleMin, vtkIdType tupleMax, int compMin, int compMax, vtkDoubleArray* data);
409
411
415 void DeepCopy(vtkAbstractArray* aa) override;
416 virtual void DeepCopy(vtkDataArray* da);
418
420
428 virtual void ShallowCopy(vtkDataArray* other);
429 void ShallowCopy(vtkAbstractArray* other) override;
431
438 virtual void FillComponent(int compIdx, double value)
439 VTK_EXPECTS(0 <= compIdx && compIdx < GetNumberOfComponents());
440
444 virtual void Fill(double value);
445
447
458 bool CopyComponent(int dstComponent, vtkAbstractArray* src, int srcComponent) override;
459 virtual bool CopyComponent(int dstComponent, vtkDataArray* src, int srcComponent);
461
467 VTK_DEPRECATED_IN_9_7_0("Use vtkAOSDataArrayTemplate::WritePointer(valueIdx, numValues) or "
468 "vtkAbstractArray::SetNumberOf[Values/Tuples]() instead")
469 virtual void* WriteVoidPointer(vtkIdType valueIdx, vtkIdType numValues) = 0;
470
479 unsigned long GetActualMemorySize() const override;
480
486
488
492 vtkGetObjectMacro(LookupTable, vtkLookupTable);
494
496
513 void GetRange(double range[2], int comp) { this->ComputeRange(range, comp); }
514 void GetRange(double range[2], int comp, const unsigned char* ghosts, unsigned char ghostsToSkip)
515 {
516 this->ComputeRange(range, comp, ghosts, ghostsToSkip);
517 }
518
519
521
529 double* GetRange(int comp) VTK_SIZEHINT(2)
530 {
531 this->GetRange(this->Range, comp);
532 return this->Range;
533 }
534
535
543 double* GetRange() VTK_SIZEHINT(2) { return this->GetRange(0); }
544
553 void GetRange(double range[2]) { this->GetRange(range, 0); }
554
556
574 void GetFiniteRange(double range[2], int comp) { this->ComputeFiniteRange(range, comp); }
576 double range[2], int comp, const unsigned char* ghosts, unsigned char ghostsToSkip)
577 {
578 this->ComputeFiniteRange(range, comp, ghosts, ghostsToSkip);
579 }
580
581
583
591 double* GetFiniteRange(int comp) VTK_SIZEHINT(2)
592 {
593 this->GetFiniteRange(this->FiniteRange, comp);
594 return this->FiniteRange;
595 }
596
597
605 double* GetFiniteRange() VTK_SIZEHINT(2) { return this->GetFiniteRange(0); }
606
615 void GetFiniteRange(double range[2]) { this->GetFiniteRange(range, 0); }
616
618
623 void GetDataTypeRange(double range[2]);
626 static void GetDataTypeRange(int type, double range[2]);
627 static double GetDataTypeMin(int type);
628 static double GetDataTypeMax(int type);
630
635 virtual double GetMaxNorm();
636
646 static vtkDataArray* CreateDataArray(int dataType);
647
654
664
674
684
688 void Modified() override;
689
695
703 int CopyInformation(vtkInformation* infoFrom, vtkTypeBool deep = 1) override;
704
708 int GetArrayType() const override { return vtkDataArray::ArrayTypeTag::value; }
709
711 {
712 HostMemory, // CPU memory
713 CudaDeviceMemory, // NVIDIA GPU via CUDA
714 HipDeviceMemory, // AMD GPU via HIP
715 };
716
721
726 virtual void* GetDeviceVoidPointer(vtkIdType vtkNotUsed(valueIdx)) { return nullptr; }
727
763
764protected:
765 friend class vtkPoints;
766 friend class vtkFieldData;
767
769
785 virtual void ComputeRange(double range[2], int comp);
786 virtual void ComputeRange(
787 double range[2], int comp, const unsigned char* ghosts, unsigned char ghostsToSkip = 0xff);
789
791
807 virtual void ComputeFiniteRange(double range[2], int comp);
808 virtual void ComputeFiniteRange(
809 double range[2], int comp, const unsigned char* ghosts, unsigned char ghostsToSkip = 0xff);
811
813
828 virtual bool ComputeScalarRange(double* ranges);
829 virtual bool ComputeScalarRange(
830 double* ranges, const unsigned char* ghosts, unsigned char ghostsToSkip = 0xff);
832
834
846 virtual bool ComputeVectorRange(double range[2]);
847 virtual bool ComputeVectorRange(
848 double range[2], const unsigned char* ghosts, unsigned char ghostsToSkip = 0xff);
850
852
866 virtual bool ComputeFiniteScalarRange(double* ranges);
868 double* ranges, const unsigned char* ghosts, unsigned char ghostsToSkip = 0xff);
870
872
884 virtual bool ComputeFiniteVectorRange(double range[2]);
886 double range[2], const unsigned char* ghosts, unsigned char ghostsToSkip = 0xff);
888
889 // Construct object with default tuple dimension (number of components) of 1.
891 ~vtkDataArray() override;
892
894 double Range[2];
895 double FiniteRange[2];
896
897private:
898 double* GetTupleN(vtkIdType i, int n);
899
900 vtkDataArray(const vtkDataArray&) = delete;
901 void operator=(const vtkDataArray&) = delete;
902};
903
905VTK_ABI_NAMESPACE_END
906
907// These are used by vtkDataArrayPrivate.txx, but need to be available to
908// vtkGenericDataArray.h as well.
909namespace vtkDataArrayPrivate
910{
911VTK_ABI_NAMESPACE_BEGIN
913{
914};
916{
917};
918VTK_ABI_NAMESPACE_END
919}
920
921#endif
int GetNumberOfComponents() const
Set/Get the dimension (n) of the components.
vtkIdType GetNumberOfTuples() const
Get the number of complete tuples (a component group) in the array.
virtual int GetDataTypeSize() const =0
Return the size of the underlying data type.
std::integral_constant< int, VTK_OPAQUE > DataTypeTag
vtkIdType GetNumberOfValues() const
Get the total number of values in the array.
create and manipulate ordered lists of objects
virtual double * GetTuple(vtkIdType tupleIdx)=0
Get the data tuple at tupleIdx.
void InsertNextTuple1(double value)
These methods are included as convenience for the wrappers.
double * GetTuple4(vtkIdType tupleIdx)
These methods are included as convenience for the wrappers.
double * GetRange()
Return the range of the data array.
virtual void ComputeRange(double range[2], int comp, const unsigned char *ghosts, unsigned char ghostsToSkip=0xff)
Compute the range for a specific component.
static double GetDataTypeMin(int type)
These methods return the Min and Max possible range of the native data type.
virtual void FillComponent(int compIdx, double value)
Fill a component of a data array with a specified value.
double * GetTuple2(vtkIdType tupleIdx)
These methods are included as convenience for the wrappers.
void InterpolateTuple(vtkIdType dstTupleIdx, vtkIdList *ptIndices, vtkAbstractArray *source, double *weights) override
Set the tuple at dstTupleIdx in this array to the interpolated tuple value, given the ptIndices in th...
double Range[2]
virtual bool ComputeScalarRange(double *ranges, const unsigned char *ghosts, unsigned char ghostsToSkip=0xff)
Computes the range for each component of an array, the length of ranges must be two times the number ...
virtual bool ComputeVectorRange(double range[2])
Returns true if the range was computed.
void InsertTuple9(vtkIdType tupleIdx, double val0, double val1, double val2, double val3, double val4, double val5, double val6, double val7, double val8)
These methods are included as convenience for the wrappers.
void SetTuple4(vtkIdType tupleIdx, double val0, double val1, double val2, double val3)
These methods are included as convenience for the wrappers.
int IsNumeric() const override
This method is here to make backward compatibility easier.
void CreateDefaultLookupTable()
Create default lookup table.
void DeepCopy(vtkAbstractArray *aa) override
Deep copy of data.
void SetTuple(vtkIdType dstTupleIdx, vtkIdType srcTupleIdx, vtkAbstractArray *source) override
See documentation from parent class.
void GetDataTypeRange(double range[2])
These methods return the Min and Max possible range of the native data type.
void InterpolateTuple(vtkIdType dstTupleIdx, vtkIdType srcTupleIdx1, vtkAbstractArray *source1, vtkIdType srcTupleIdx2, vtkAbstractArray *source2, double t) override
Insert the tuple at dstTupleIdx in this array to the tuple interpolated from the two tuple indices,...
double * GetTuple9(vtkIdType tupleIdx)
These methods are included as convenience for the wrappers.
virtual void ComputeRange(double range[2], int comp)
Compute the range for a specific component.
double * GetFiniteRange()
Return the range of the data array.
virtual bool ComputeScalarRange(double *ranges)
Computes the range for each component of an array, the length of ranges must be two times the number ...
void SetTuple9(vtkIdType tupleIdx, double val0, double val1, double val2, double val3, double val4, double val5, double val6, double val7, double val8)
These methods are included as convenience for the wrappers.
unsigned long GetActualMemorySize() const override
Return the memory in kibibytes (1024 bytes) consumed by this data array.
void InsertTuples(vtkIdList *dstIds, vtkIdList *srcIds, vtkAbstractArray *source) override
See documentation from parent class.
virtual bool ComputeFiniteVectorRange(double range[2], const unsigned char *ghosts, unsigned char ghostsToSkip=0xff)
Returns true if the range was computed.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void GetIntegerTuple(vtkIdType tupleIdx, vtkTypeInt64 *tuple)
Get/set the data at tupleIdx by filling in a user-provided array of integers.
virtual void SetIntegerTuple(vtkIdType tupleIdx, vtkTypeInt64 *tuple)
Get/set the data at tupleIdx by filling in a user-provided array of integers.
void InsertNextTuple3(double val0, double val1, double val2)
These methods are included as convenience for the wrappers.
void InsertTuple2(vtkIdType tupleIdx, double val0, double val1)
These methods are included as convenience for the wrappers.
void InsertNextTuple4(double val0, double val1, double val2, double val3)
These methods are included as convenience for the wrappers.
virtual bool ComputeVectorRange(double range[2], const unsigned char *ghosts, unsigned char ghostsToSkip=0xff)
Returns true if the range was computed.
double * GetTuple6(vtkIdType tupleIdx)
These methods are included as convenience for the wrappers.
~vtkDataArray() override
int GetArrayType() const override
Method for type-checking in FastDownCast implementations.
int GetElementComponentSize() const override
Return the size, in bytes, of the lowest-level element of an array.
virtual bool ComputeFiniteVectorRange(double range[2])
Returns true if the range was computed.
void SetTuple1(vtkIdType tupleIdx, double value)
These methods are included as convenience for the wrappers.
virtual void RemoveTuple(vtkIdType tupleIdx)=0
These methods remove tuples from the data array.
virtual void SetUnsignedTuple(vtkIdType tupleIdx, vtkTypeUInt64 *tuple)
Get/set the data at tupleIdx by filling in a user-provided array of unsigned integers.
virtual vtkCollection * NewMemoryDescriptors()
Return descriptors for the memory buffers backing this array.
virtual void GetUnsignedTuple(vtkIdType tupleIdx, vtkTypeUInt64 *tuple)
Get/set the data at tupleIdx by filling in a user-provided array of unsigned integers.
void GetRange(double range[2], int comp)
The range of the data array values for the given component will be returned in the provided range arr...
virtual void RemoveLastTuple()
These methods remove tuples from the data array.
double * GetRange(int comp)
Return the range of the data array values for the given component.
static vtkDataArray * FastDownCast(vtkAbstractArray *source)
Perform a fast, safe cast from a vtkAbstractArray to a vtkDataArray.
void GetFiniteRange(double range[2], int comp)
The range of the data array values for the given component will be returned in the provided range arr...
void InsertNextTuple6(double val0, double val1, double val2, double val3, double val4, double val5)
These methods are included as convenience for the wrappers.
void GetTuples(vtkIdType p1, vtkIdType p2, vtkAbstractArray *output) override
Get the tuples for the range of tuple ids specified (i.e., p1->p2 inclusive).
double GetDataTypeMin()
These methods return the Min and Max possible range of the native data type.
double FiniteRange[2]
void InsertTuple6(vtkIdType tupleIdx, double val0, double val1, double val2, double val3, double val4, double val5)
These methods are included as convenience for the wrappers.
friend class vtkPoints
vtkSmartPointer< vtkDataArray > ToAOSDataArray()
If the array is not already in AOS format, return a new array that is with the same data.
virtual void SetComponent(vtkIdType tupleIdx, int compIdx, double value)
Set the data component at the location specified by tupleIdx and compIdx to value.
void InsertTuplesStartingAt(vtkIdType dstStart, vtkIdList *srcIds, vtkAbstractArray *source) override
See documentation from parent class.
virtual void ShallowCopy(vtkDataArray *other)
Create a shallow copy of other into this, if possible.
virtual void InsertComponent(vtkIdType tupleIdx, int compIdx, double value)
Insert value at the location specified by tupleIdx and compIdx.
void GetTuples(vtkIdList *tupleIds, vtkAbstractArray *output) override
Given a list of tuple ids, return an array of tuples.
virtual void GetTuple(vtkIdType tupleIdx, double *tuple)=0
Get the data tuple at tupleIdx by filling in a user-provided array, Make sure that your array is larg...
double GetTuple1(vtkIdType tupleIdx)
These methods are included as convenience for the wrappers.
double GetDataTypeMax()
These methods return the Min and Max possible range of the native data type.
virtual void GetData(vtkIdType tupleMin, vtkIdType tupleMax, int compMin, int compMax, vtkDoubleArray *data)
Get the data as a double array in the range (tupleMin,tupleMax) and (compMin, compMax).
void SetLookupTable(vtkLookupTable *lut)
Set/get the lookup table associated with this scalar data, if any.
void GetRange(double range[2])
The range of the data array values will be returned in the provided range array argument.
void SetTuple6(vtkIdType tupleIdx, double val0, double val1, double val2, double val3, double val4, double val5)
These methods are included as convenience for the wrappers.
virtual double GetComponent(vtkIdType tupleIdx, int compIdx)
Return the data component at the location specified by tupleIdx and compIdx.
int CopyInformation(vtkInformation *infoFrom, vtkTypeBool deep=1) override
Copy information instance.
vtkIdType InsertNextTuple(vtkIdType srcTupleIdx, vtkAbstractArray *source) override
See documentation from parent class.
virtual void ComputeFiniteRange(double range[2], int comp)
Compute the range for a specific component.
void InsertNextTuple2(double val0, double val1)
These methods are included as convenience for the wrappers.
virtual void RemoveFirstTuple()
These methods remove tuples from the data array.
virtual void * GetDeviceVoidPointer(vtkIdType valueIdx)
Return a pointer to the data that live on a device (CUDA or HIP).
bool CopyComponent(int dstComponent, vtkAbstractArray *src, int srcComponent) override
Copy a component from one data array into a component on this data array.
virtual double GetMaxNorm()
Return the maximum norm for the tuples.
std::integral_constant< int, vtkArrayTypes::VTK_DATA_ARRAY > ArrayTypeTag
virtual MemorySpace GetMemorySpace()
Return the MemorySpace of where the data is stored.
void InsertTuple(vtkIdType dstTupleIdx, vtkIdType srcTupleIdx, vtkAbstractArray *source) override
See documentation from parent class.
void InsertTuple4(vtkIdType tupleIdx, double val0, double val1, double val2, double val3)
These methods are included as convenience for the wrappers.
void GetRange(double range[2], int comp, const unsigned char *ghosts, unsigned char ghostsToSkip)
The range of the data array values for the given component will be returned in the provided range arr...
static void GetDataTypeRange(int type, double range[2])
These methods return the Min and Max possible range of the native data type.
virtual void * WriteVoidPointer(vtkIdType valueIdx, vtkIdType numValues)=0
Get the address of a particular data index.
virtual bool ComputeFiniteScalarRange(double *ranges, const unsigned char *ghosts, unsigned char ghostsToSkip=0xff)
Computes the range for each component of an array, the length of ranges must be two times the number ...
virtual void Fill(double value)
Fill all values of a data array with a specified value.
virtual void ComputeFiniteRange(double range[2], int comp, const unsigned char *ghosts, unsigned char ghostsToSkip=0xff)
Compute the range for a specific component.
static vtkDataArray * CreateDataArray(int dataType)
Creates an array for dataType where dataType is one of VTK_BIT, VTK_CHAR, VTK_SIGNED_CHAR,...
void GetFiniteRange(double range[2], int comp, const unsigned char *ghosts, unsigned char ghostsToSkip)
The range of the data array values for the given component will be returned in the provided range arr...
void InsertTuple3(vtkIdType tupleIdx, double val0, double val1, double val2)
These methods are included as convenience for the wrappers.
void InsertNextTuple9(double val0, double val1, double val2, double val3, double val4, double val5, double val6, double val7, double val8)
These methods are included as convenience for the wrappers.
void SetTuple3(vtkIdType tupleIdx, double val0, double val1, double val2)
These methods are included as convenience for the wrappers.
void GetFiniteRange(double range[2])
The range of the data array values will be returned in the provided range array argument.
friend class vtkFieldData
double * GetFiniteRange(int comp)
Return the range of the data array values for the given component.
double * GetTuple3(vtkIdType tupleIdx)
These methods are included as convenience for the wrappers.
void InsertTuples(vtkIdType dstStart, vtkIdType n, vtkIdType srcStart, vtkAbstractArray *source) override
See documentation from parent class.
void SetTuple2(vtkIdType tupleIdx, double val0, double val1)
These methods are included as convenience for the wrappers.
void InsertTuple1(vtkIdType tupleIdx, double value)
These methods are included as convenience for the wrappers.
virtual bool ComputeFiniteScalarRange(double *ranges)
Computes the range for each component of an array, the length of ranges must be two times the number ...
void Modified() override
Removes out-of-date L2_NORM_RANGE() and L2_NORM_FINITE_RANGE() values.
static double GetDataTypeMax(int type)
These methods return the Min and Max possible range of the native data type.
vtkLookupTable * LookupTable
dynamic, self-adjusting array of double
list of point or cell ids
Definition vtkIdList.h:135
a simple class to control print indentation
Definition vtkIndent.h:108
Key for string values in vtkInformation.
Store vtkAlgorithm input/output information.
map scalar values into colors via a lookup table
represent and manipulate 3D points
Definition vtkPoints.h:140
Hold a reference to a vtkObjectBase instance.
static vtkInformationDoubleVectorKey * COMPONENT_RANGE()
This key is used to hold tight bounds on the range of one component over all tuples of the array.
static vtkInformationDoubleVectorKey * L2_NORM_RANGE()
This key is used to hold tight bounds on the $L_2$ norm of tuples in the array.
static vtkInformationDoubleVectorKey * L2_NORM_FINITE_RANGE()
This key is used to hold tight bounds on the $L_2$ norm of tuples in the array.
static vtkInformationStringKey * UNITS_LABEL()
A human-readable string indicating the units for the array data.
int vtkTypeBool
Definition vtkABI.h:64
#define vtkArrayDownCast_FastCastMacro(ArrayT)
This macro is used to tell vtkArrayDownCast to use FastDownCast instead of SafeDownCast.
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
#define vtkDataArray
#define VTK_DEPRECATED_IN_9_7_0(reason)
int vtkIdType
Definition vtkType.h:363
#define VTK_SIZEHINT(...)
#define VTK_EXPECTS(x)
#define VTK_MARSHALMANUAL
#define VTK_NEWINSTANCE