ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
vtkUndoStackInternal.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 #include <string>
9 #include <vector>
10 
11 #include "qPCL.h"
12 #include "vtkSmartPointer.h"
13 #include "vtkUndoSet.h"
14 
15 class QPCL_ENGINE_LIB_API vtkUndoStackInternal {
16 public:
17  struct Element {
18  std::string Label;
20  Element(const char* label, vtkUndoSet* set) {
21  this->Label = label;
22  this->UndoSet = vtkSmartPointer<vtkUndoSet>::New();
23  for (int i = 0, nb = set->GetNumberOfElements(); i < nb; i++) {
24  this->UndoSet->AddElement(set->GetElement(i));
25  }
26  }
27  };
28  typedef std::vector<Element> VectorOfElements;
29  VectorOfElements UndoStack;
30  VectorOfElements RedoStack;
31 };
32 //****************************************************************************
33 // VTK-HeaderTest-Exclude: vtkUndoStackInternal.h
vtkUndoElement * GetElement(int index)
Definition: vtkUndoSet.cxx:67
int GetNumberOfElements()
Definition: vtkUndoSet.cxx:79
#define QPCL_ENGINE_LIB_API
Definition: qPCL.h:15