VTK
vtkUnicodeStringArray.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkUnicodeStringArray.h
5 
6 -------------------------------------------------------------------------
7  Copyright 2008 Sandia Corporation.
8  Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
9  the U.S. Government retains certain rights in this software.
10 -------------------------------------------------------------------------
11 
12  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
13  All rights reserved.
14  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
15 
16  This software is distributed WITHOUT ANY WARRANTY; without even
17  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
18  PURPOSE. See the above copyright notice for more information.
19 
20 =========================================================================*/
21 
34 #ifndef vtkUnicodeStringArray_h
35 #define vtkUnicodeStringArray_h
36 
37 #include "vtkCommonCoreModule.h" // For export macro
38 #include "vtkAbstractArray.h"
39 #include "vtkUnicodeString.h" // For value type
40 
42  public vtkAbstractArray
43 {
44 public:
45  static vtkUnicodeStringArray* New();
47  void PrintSelf(ostream& os, vtkIndent indent);
48 
49  virtual int Allocate(vtkIdType sz, vtkIdType ext=1000);
50  virtual void Initialize();
51  virtual int GetDataType();
52  virtual int GetDataTypeSize();
53  virtual int GetElementComponentSize();
54  virtual void SetNumberOfTuples(vtkIdType number);
55  virtual void SetTuple(vtkIdType i, vtkIdType j, vtkAbstractArray* source);
57  virtual void InsertTuples(vtkIdList *dstIds, vtkIdList *srcIds,
59  virtual void InsertTuples(vtkIdType dstStart, vtkIdType n, vtkIdType srcStart,
62  virtual void* GetVoidPointer(vtkIdType id);
63  virtual void DeepCopy(vtkAbstractArray* da);
64  virtual void InterpolateTuple(vtkIdType i, vtkIdList *ptIndices,
65  vtkAbstractArray* source, double* weights);
66  virtual void InterpolateTuple(vtkIdType i,
67  vtkIdType id1, vtkAbstractArray* source1,
68  vtkIdType id2, vtkAbstractArray* source2, double t);
69  virtual void Squeeze();
70  virtual int Resize(vtkIdType numTuples);
71  virtual void SetVoidArray(void *array, vtkIdType size, int save);
72  virtual unsigned long GetActualMemorySize(); // in bytes
73  virtual int IsNumeric();
74  virtual vtkArrayIterator* NewIterator();
77  virtual void LookupValue(vtkVariant value, vtkIdList* ids);
78 
79  virtual void SetVariantValue(vtkIdType idx, vtkVariant value);
80  virtual void InsertVariantValue(vtkIdType idx, vtkVariant value);
81  virtual void DataChanged();
82  virtual void ClearLookup();
83 
84  vtkIdType InsertNextValue(const vtkUnicodeString&);
85  void InsertValue(vtkIdType idx, const vtkUnicodeString&); // Ranged checked
86  void SetValue(vtkIdType i, const vtkUnicodeString&); // Not ranged checked
87  vtkUnicodeString& GetValue(vtkIdType i);
88 
89  void InsertNextUTF8Value(const char*);
90  void SetUTF8Value(vtkIdType i, const char*);
91  const char* GetUTF8Value(vtkIdType i);
92 
93 protected:
96 
97 private:
98  vtkUnicodeStringArray(const vtkUnicodeStringArray&); // Not implemented.
99  void operator=(const vtkUnicodeStringArray&); // Not implemented.
100 
101 //BTX
102  class Implementation;
103  Implementation* Internal;
104 //ETX
105 };
106 
107 #endif
108 
void PrintSelf(ostream &os, vtkIndent indent)
virtual int IsNumeric()=0
virtual void DataChanged()=0
virtual void DeepCopy(vtkAbstractArray *da)
Subclass of vtkAbstractArray that holds vtkUnicodeStrings.
virtual vtkVariant GetVariantValue(vtkIdType idx)
Abstract superclass for all arrays.
virtual vtkIdType LookupValue(vtkVariant value)=0
virtual int GetDataTypeSize()=0
#define VTKCOMMONCORE_EXPORT
virtual void SetTuple(vtkIdType i, vtkIdType j, vtkAbstractArray *source)=0
virtual void SetNumberOfTuples(vtkIdType number)=0
virtual int GetDataType()=0
virtual void InsertVariantValue(vtkIdType idx, vtkVariant value)=0
int vtkIdType
Definition: vtkType.h:247
virtual void SetVoidArray(void *vtkNotUsed(array), vtkIdType vtkNotUsed(size), int vtkNotUsed(save))=0
virtual void Initialize()=0
A atomic type representing the union of many types.
Definition: vtkVariant.h:78
virtual int Allocate(vtkIdType sz, vtkIdType ext=1000)=0
virtual void ClearLookup()=0
a simple class to control print indentation
Definition: vtkIndent.h:38
list of point or cell ids
Definition: vtkIdList.h:35
virtual void InsertTuple(vtkIdType i, vtkIdType j, vtkAbstractArray *source)=0
virtual int Resize(vtkIdType numTuples)=0
virtual vtkArrayIterator * NewIterator()=0
Abstract superclass to iterate over elements in an vtkAbstractArray.
virtual void * GetVoidPointer(vtkIdType id)=0
void save(Archiver &ar, const vtkUnicodeString &str, const unsigned int vtkNotUsed(version))
virtual void InterpolateTuple(vtkIdType i, vtkIdList *ptIndices, vtkAbstractArray *source, double *weights)=0
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
virtual vtkIdType InsertNextTuple(vtkIdType j, vtkAbstractArray *source)=0
virtual unsigned long GetActualMemorySize()=0
virtual void Squeeze()=0
virtual void SetVariantValue(vtkIdType idx, vtkVariant value)=0
static vtkObject * New()
virtual int GetElementComponentSize()=0
virtual void InsertTuples(vtkIdList *dstIds, vtkIdList *srcIds, vtkAbstractArray *source)=0
String class that stores Unicode text.