ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
vtkStringList.h
Go to the documentation of this file.
1 // ----------------------------------------------------------------------------
2 // - CloudViewer: www.cloudViewer.org -
3 // ----------------------------------------------------------------------------
4 // Copyright (c) 2018-2024 www.cloudViewer.org
5 // SPDX-License-Identifier: MIT
6 // ----------------------------------------------------------------------------
7 
8 #pragma once
9 
10 #include <memory> // for std::unique_ptr
11 
12 #include "qPCL.h" // needed for export macro
13 #include "vtkObject.h"
14 
15 class QPCL_ENGINE_LIB_API vtkStringList : public vtkObject {
16 public:
17  static vtkStringList* New();
19  void PrintSelf(ostream& os, vtkIndent indent) override;
20 
22 
25  void AddString(const char* str);
26  void AddUniqueString(const char* str);
28 
32  void AddFormattedString(const char* EventString, ...);
33 
37  void RemoveAllItems();
38 
42  void SetString(int idx, const char* str);
43 
47  int GetLength() { return this->GetNumberOfStrings(); }
48 
52  int GetIndex(const char* str);
53 
57  const char* GetString(int idx);
58 
62  int GetNumberOfStrings();
63 
64 protected:
65  vtkStringList();
66  ~vtkStringList() override;
67 
68 private:
69  class vtkInternals;
70  std::unique_ptr<vtkInternals> Internals;
71 
72  vtkStringList(const vtkStringList&) = delete;
73  void operator=(const vtkStringList&) = delete;
74 };
static vtkStringList * New()
vtkTypeMacro(vtkStringList, vtkObject)
std::string GetString(DimX< TLeft, TRight, TOp > a, bool show_value=true)
#define QPCL_ENGINE_LIB_API
Definition: qPCL.h:15