Files
ThirdParty-6/ParaView-5.0.1/ParaViewCore/Common/vtkStringList.h

82 lines
2.1 KiB
C++

/*=========================================================================
Program: ParaView
Module: vtkStringList.h
Copyright (c) Kitware, Inc.
All rights reserved.
See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
// .NAME vtkKWAssignment - Manages allocation and freeing for a string list.
// .SECTION Description
// A vtkStringList holds a list of strings.
// We might be able to replace it in the future.
#ifndef vtkStringList_h
#define vtkStringList_h
#include "vtkObject.h"
#include "vtkPVCommonModule.h" // needed for export macro
class VTKPVCOMMON_EXPORT vtkStringList : public vtkObject
{
public:
static vtkStringList* New();
vtkTypeMacro(vtkStringList,vtkObject);
void PrintSelf(ostream& os, vtkIndent indent);
// Description:
// Add a simple string.
void AddString(const char* str);
void AddUniqueString(const char* str);
//BTX
// Description:
// Add a command and format it any way you like.
void AddFormattedString(const char* EventString, ...);
//ETX
// Description:
// Initialize to empty.
void RemoveAllItems();
// Description:
// Random access.
void SetString(int idx, const char *str);
// Description:
// Get the length of the list.
int GetLength() { return this->NumberOfStrings;}
// Description:
// Get the index of a string.
int GetIndex(const char* str);
// Description:
// Get a command from its index.
const char *GetString(int idx);
vtkGetMacro(NumberOfStrings, int);
protected:
vtkStringList();
~vtkStringList();
int NumberOfStrings;
int StringArrayLength;
char **Strings;
void Reallocate(int num);
void DeleteStrings();
vtkStringList(const vtkStringList&); // Not implemented
void operator=(const vtkStringList&); // Not implemented
};
#endif