71 #ifndef vtkSparseArray_h
72 #define vtkSparseArray_h
101 const T&
GetValue(CoordinateT i, CoordinateT j);
102 const T&
GetValue(CoordinateT i, CoordinateT j, CoordinateT k);
107 void SetValue(CoordinateT i, CoordinateT j, CoordinateT k,
const T&
value);
188 inline void AddValue(CoordinateT i, CoordinateT j,
const T&
value);
189 inline void AddValue(CoordinateT i, CoordinateT j, CoordinateT k,
const T&
value);
210 void InternalSetDimensionLabel(DimensionT i,
const vtkStdString& label);
219 std::vector<vtkStdString> DimensionLabels;
224 std::vector<std::vector<CoordinateT> > Coordinates;
227 std::vector<T> Values;
236 #include "vtkSparseArray.txx"
Controls sorting of sparse array coordinates.
Stores coordinate into an N-way array.
Wrapper around std::string to keep symbols short.
Provides the equivalent of vtkTypeMacro for use with template classes.
const T & GetValue(CoordinateT i)
Stores the number of dimensions and valid coordinate ranges along each dimension for vtkArray...
Sparse, independent coordinate storage for N-way arrays.
void GetCoordinatesN(const SizeT n, vtkArrayCoordinates &coordinates)
Abstract interface for N-dimensional arrays.
void SetExtents(const vtkArrayExtents &extents)
vtkArray::DimensionT DimensionT
void SetNullValue(const T &value)
static vtkSparseArray< T > * New()
void Sort(const vtkArraySort &sort)
vtkArrayExtents::DimensionT DimensionT
const T & GetValueN(const SizeT n)
void SetValue(CoordinateT i, const T &value)
a simple class to control print indentation
const T * GetValueStorage() const
vtkArrayExtents::SizeT SizeT
std::vector< CoordinateT > GetUniqueCoordinates(DimensionT dimension)
void SetValueN(const SizeT n, const T &value)
const CoordinateT * GetCoordinateStorage(DimensionT dimension) const
void SetExtentsFromContents()
vtkArray::CoordinateT CoordinateT
void AddValue(CoordinateT i, const T &value)
void ReserveStorage(const SizeT value_count)
void PrintSelf(ostream &os, vtkIndent indent)
const vtkArrayExtents & GetExtents()
vtkArrayExtents::CoordinateT CoordinateT