VTK
/Users/kitware/Dashboards/MyTests/VTK_BLD_Release_docs/Utilities/Doxygen/dox/Common/Core/vtkUnicodeStringArray.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkUnicodeStringArray.h
00005 
00006 -------------------------------------------------------------------------
00007   Copyright 2008 Sandia Corporation.
00008   Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
00009   the U.S. Government retains certain rights in this software.
00010 -------------------------------------------------------------------------
00011 
00012   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00013   All rights reserved.
00014   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00015 
00016      This software is distributed WITHOUT ANY WARRANTY; without even
00017      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00018      PURPOSE.  See the above copyright notice for more information.
00019 
00020 =========================================================================*/
00021 
00034 #ifndef vtkUnicodeStringArray_h
00035 #define vtkUnicodeStringArray_h
00036 
00037 #include "vtkCommonCoreModule.h" // For export macro
00038 #include "vtkAbstractArray.h"
00039 #include "vtkUnicodeString.h" // For value type
00040 
00041 class VTKCOMMONCORE_EXPORT vtkUnicodeStringArray :
00042   public vtkAbstractArray
00043 {
00044 public:
00045   static vtkUnicodeStringArray* New();
00046   vtkTypeMacro(vtkUnicodeStringArray,vtkAbstractArray);
00047   void PrintSelf(ostream& os, vtkIndent indent);
00048 
00049   virtual int Allocate(vtkIdType sz, vtkIdType ext=1000);
00050   virtual void Initialize();
00051   virtual int GetDataType();
00052   virtual int GetDataTypeSize();
00053   virtual int GetElementComponentSize();
00054   virtual void SetNumberOfTuples(vtkIdType number);
00055   virtual void SetTuple(vtkIdType i, vtkIdType j, vtkAbstractArray* source);
00056   virtual void InsertTuple(vtkIdType i, vtkIdType j, vtkAbstractArray* source);
00057   virtual void InsertTuples(vtkIdList *dstIds, vtkIdList *srcIds,
00058                             vtkAbstractArray *source);
00059   virtual void InsertTuples(vtkIdType dstStart, vtkIdType n, vtkIdType srcStart,
00060                             vtkAbstractArray* source);
00061   virtual vtkIdType InsertNextTuple(vtkIdType j, vtkAbstractArray* source);
00062   virtual void* GetVoidPointer(vtkIdType id);
00063   virtual void DeepCopy(vtkAbstractArray* da);
00064   virtual void InterpolateTuple(vtkIdType i, vtkIdList *ptIndices,
00065     vtkAbstractArray* source,  double* weights);
00066   virtual void InterpolateTuple(vtkIdType i,
00067     vtkIdType id1, vtkAbstractArray* source1,
00068     vtkIdType id2, vtkAbstractArray* source2, double t);
00069   virtual void Squeeze();
00070   virtual int Resize(vtkIdType numTuples);
00071   virtual void SetVoidArray(void *array, vtkIdType size, int save);
00072   virtual unsigned long GetActualMemorySize();
00073   virtual int IsNumeric();
00074   virtual vtkArrayIterator* NewIterator();
00075   virtual vtkVariant GetVariantValue(vtkIdType idx);
00076   virtual vtkIdType LookupValue(vtkVariant value);
00077   virtual void LookupValue(vtkVariant value, vtkIdList* ids);
00078 
00079   virtual void SetVariantValue(vtkIdType idx, vtkVariant value);
00080   virtual void DataChanged();
00081   virtual void ClearLookup();
00082 
00083   vtkIdType InsertNextValue(const vtkUnicodeString&);
00084   void InsertValue(vtkIdType idx, const vtkUnicodeString&); // Ranged checked
00085   void SetValue(vtkIdType i, const vtkUnicodeString&); // Not ranged checked
00086   vtkUnicodeString& GetValue(vtkIdType i);
00087 
00088   void InsertNextUTF8Value(const char*);
00089   void SetUTF8Value(vtkIdType i, const char*);
00090   const char* GetUTF8Value(vtkIdType i);
00091 
00092 protected:
00093   vtkUnicodeStringArray();
00094   ~vtkUnicodeStringArray();
00095 
00096 private:
00097   vtkUnicodeStringArray(const vtkUnicodeStringArray&);  // Not implemented.
00098   void operator=(const vtkUnicodeStringArray&);  // Not implemented.
00099 
00100 //BTX
00101   class Implementation;
00102   Implementation* Internal;
00103 //ETX
00104 };
00105 
00106 #endif
00107