23 #ifndef __vtkDataArrayTemplate_h
24 #define __vtkDataArrayTemplate_h
26 #include "vtkCommonCoreModule.h"
76 void GetTupleValue(
vtkIdType i, T* tuple);
83 void SetTupleValue(
vtkIdType i,
const T* tuple);
91 void InsertTupleValue(
vtkIdType i,
const T* tuple);
99 vtkIdType InsertNextTupleValue(
const T* tuple);
107 double doubleRange[2];
109 range[0] =
static_cast<T
>(doubleRange[0]);
110 range[1] =
static_cast<T
>(doubleRange[1]);
114 this->GetValueRange(this->ValueRange, comp);
115 return this->ValueRange;
120 void Squeeze() { this->ResizeAndExtend (this->MaxId+1); }
138 { this->Array[id] = value;};
144 void SetNumberOfValues(
vtkIdType number);
187 {
return this->WritePointer(
id, number); }
208 VTK_DATA_ARRAY_DELETE
222 void SetArray(T* array,
vtkIdType size,
int save,
int deleteMethod);
224 { this->SetArray(array, size, save, VTK_DATA_ARRAY_FREE); }
226 { this->SetArray(static_cast<T*>(array), size, save); }
232 this->SetArray(static_cast<T*>(array), size, save, deleteMethod);
263 virtual void DataElementChanged(
vtkIdType id);
297 #if !defined(VTK_NO_EXPLICIT_TEMPLATE_INSTANTIATION)
298 # define VTK_DATA_ARRAY_TEMPLATE_INSTANTIATE(T) \
299 template class VTKCOMMONCORE_EXPORT vtkDataArrayTemplate< T >
301 # include "vtkDataArrayTemplateImplicit.txx"
302 # define VTK_DATA_ARRAY_TEMPLATE_INSTANTIATE(T)
305 #endif // !defined(__vtkDataArrayTemplate_h)
310 #if defined(VTK_DATA_ARRAY_TEMPLATE_TYPE)
311 # if defined(VTK_BUILD_SHARED_LIBS) && defined(_MSC_VER)
312 # pragma warning (push)
313 # pragma warning (disable: 4091) // warning C4091: 'extern ' :
315 # pragma warning (disable: 4231) // Compiler-specific extension warning.
328 # pragma warning (disable: 4910) // extern and dllexport incompatible
333 # pragma warning (pop)
335 # undef VTK_DATA_ARRAY_TEMPLATE_TYPE
T * GetValueRange(int comp)
virtual double * GetTuple(vtkIdType i)=0
virtual void DeepCopy(vtkAbstractArray *aa)
virtual void SetVoidArray(void *array, vtkIdType size, int save, int deleteMethod)
Implementation template for vtkDataArray.
virtual void DataChanged()=0
virtual void DeepCopy(vtkAbstractArray *da)
Abstract superclass for all arrays.
virtual vtkIdType LookupValue(vtkVariant value)=0
void SetValue(vtkIdType id, T value)
virtual void RemoveFirstTuple()=0
virtual void SetNumberOfTuples(vtkIdType number)=0
virtual void InsertComponent(vtkIdType i, int j, double c)
virtual double GetComponent(vtkIdType i, int j)
virtual void ComputeVectorRange(double range[2])
virtual void Initialize()=0
A atomic type representing the union of many types.
virtual void ExportToVoidPointer(void *vtkNotUsed(out_ptr))
virtual int Allocate(vtkIdType sz, vtkIdType ext=1000)=0
virtual void InsertTuple(vtkIdType i, vtkIdType j, vtkAbstractArray *source)=0
virtual void ClearLookup()=0
a simple class to control print indentation
virtual void RemoveLastTuple()=0
#define VTK_DATA_ARRAY_TEMPLATE_TYPE
virtual void * GetVoidPointer(vtkIdType id)
list of point or cell ids
virtual int Resize(vtkIdType numTuples)=0
abstract superclass for arrays of numeric data
virtual vtkArrayIterator * NewIterator()=0
void DeepCopy(vtkAbstractArray *aa)
Abstract superclass to iterate over elements in an vtkAbstractArray.
virtual void SetVoidArray(void *array, vtkIdType size, int save)
virtual void ComputeScalarRange(double range[2], int comp)
virtual void SetTuple(vtkIdType i, vtkIdType j, vtkAbstractArray *source)=0
T * GetPointer(vtkIdType id)
void save(Archiver &ar, const vtkUnicodeString &str, const unsigned int vtkNotUsed(version))
void SetArray(T *array, vtkIdType size, int save)
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
void GetValueRange(T range[2], int comp)
virtual void SetComponent(vtkIdType i, int j, double c)
void PrintSelf(ostream &os, vtkIndent indent)
virtual void RemoveTuple(vtkIdType id)=0
virtual void SetVariantValue(vtkIdType idx, vtkVariant value)=0
virtual vtkIdType InsertNextTuple(vtkIdType j, vtkAbstractArray *source)=0
virtual void * WriteVoidPointer(vtkIdType id, vtkIdType number)
#define VTK_DATA_ARRAY_TEMPLATE_INSTANTIATE(T)
virtual void ComputeRange(double range[2], int comp)