27 #ifndef __vtkBitArray_h
28 #define __vtkBitArray_h
30 #include "vtkCommonCoreModule.h"
33 class vtkBitArrayLookup;
129 void SetNumberOfValues(
vtkIdType number);
157 {
return this->WritePointer(
id, number); }
160 return static_cast<void *
>(this->GetPointer(
id));
179 void SetArray(
unsigned char* array,
vtkIdType size,
int save);
182 this->SetArray(static_cast<unsigned char *>(array), size, save);
215 unsigned char *ResizeAndExtend(
vtkIdType sz);
232 vtkBitArrayLookup* Lookup;
240 this->
MaxId = number - 1;
248 this->
Array[
id/8] =
static_cast<unsigned char>(
249 this->
Array[
id/8] | (0x80 >>
id%8));
253 this->
Array[
id/8] =
static_cast<unsigned char>(
254 this->
Array[
id/8] & (~(0x80 >>
id%8)));
261 if (
id >= this->
Size )
267 this->
Array[
id/8] =
static_cast<unsigned char>(
268 this->
Array[
id/8] | (0x80 >>
id%8));
272 this->
Array[
id/8] =
static_cast<unsigned char>(
273 this->
Array[
id/8] & (~(0x80 >>
id%8)));
275 if (
id > this->
MaxId )
virtual void DataChanged()
virtual double * GetTuple(vtkIdType i)=0
void SetVoidArray(void *array, vtkIdType size, int save)
virtual void DeepCopy(vtkAbstractArray *aa)
virtual void DataChanged()=0
virtual void DeepCopy(vtkAbstractArray *da)
Abstract superclass for all arrays.
virtual vtkIdType LookupValue(vtkVariant value)=0
virtual void RemoveFirstTuple()=0
virtual void SetNumberOfTuples(vtkIdType number)=0
virtual void InsertComponent(vtkIdType i, int j, double c)
void InsertValue(vtkIdType id, int i)
virtual void Initialize()=0
A atomic type representing the union of many types.
void SetValue(vtkIdType id, int value)
int ToInt(bool *valid) const
virtual int Allocate(vtkIdType sz, vtkIdType ext=1000)=0
virtual void InsertTuple(vtkIdType i, vtkIdType j, vtkAbstractArray *source)=0
unsigned char * GetPointer(vtkIdType id)
void SetNumberOfValues(vtkIdType number)
virtual void ClearLookup()=0
a simple class to control print indentation
virtual void RemoveLastTuple()=0
void SetVariantValue(vtkIdType idx, vtkVariant value)
void DeepCopy(vtkAbstractArray *aa)
list of point or cell ids
virtual int Resize(vtkIdType numTuples)=0
abstract superclass for arrays of numeric data
virtual vtkArrayIterator * NewIterator()=0
Abstract superclass to iterate over elements in an vtkAbstractArray.
virtual void SetTuple(vtkIdType i, vtkIdType j, vtkAbstractArray *source)=0
unsigned char * ResizeAndExtend(vtkIdType sz)
dynamic, self-adjusting array of bits
void * GetVoidPointer(vtkIdType id)
int Allocate(vtkIdType sz, vtkIdType ext=1000)
virtual void SetComponent(vtkIdType i, int j, double c)
vtkIdType InsertNextValue(int i)
void PrintSelf(ostream &os, vtkIndent indent)
virtual void RemoveTuple(vtkIdType id)=0
virtual void SetVariantValue(vtkIdType idx, vtkVariant value)=0
void * WriteVoidPointer(vtkIdType id, vtkIdType number)
virtual vtkIdType InsertNextTuple(vtkIdType j, vtkAbstractArray *source)=0