ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
vtkPVTestUtilities.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 "qPCL.h" // needed for export macro
11 #include "vtkObject.h"
12 
13 class vtkPolyData;
14 class vtkDataArray;
15 
16 class QPCL_ENGINE_LIB_API vtkPVTestUtilities : public vtkObject {
17 public:
18  // the usual vtk stuff
20  void PrintSelf(ostream& os, vtkIndent indent) override;
22 
26  void Initialize(int argc, char** argv);
35  char* GetDataFilePath(const char* name) {
36  return this->GetFilePath(this->DataRoot, name);
37  }
46  char* GetTempFilePath(const char* name) {
47  return this->GetFilePath(this->TempRoot, name);
48  }
49 
50 protected:
51  vtkPVTestUtilities() { this->Initialize(0, 0); }
52  ~vtkPVTestUtilities() override { this->Initialize(0, 0); }
53 
54 private:
55  vtkPVTestUtilities(const vtkPVTestUtilities&) = delete;
56  void operator=(const vtkPVTestUtilities&) = delete;
58  char GetPathSep();
59  char* GetDataRoot();
60  char* GetTempRoot();
61  char* GetCommandTailArgument(const char* tag);
62  char* GetFilePath(const char* base, const char* name);
63  //
64  int Argc;
65  char** Argv;
66  char* DataRoot;
67  char* TempRoot;
68 };
std::string name
~vtkPVTestUtilities() override
char * GetTempFilePath(const char *name)
char * GetDataFilePath(const char *name)
vtkTypeMacro(vtkPVTestUtilities, vtkObject)
static vtkPVTestUtilities * New()
#define QPCL_ENGINE_LIB_API
Definition: qPCL.h:15