VTK  9.6.20260703
vtkInformationKeyLookup.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
3
12
13#ifndef vtkInformationKeyLookup_h
14#define vtkInformationKeyLookup_h
15
16#include "vtkCommonCoreModule.h" // For export macro
17#include "vtkObject.h"
18
19#include <string> // For std::string
20
21VTK_ABI_NAMESPACE_BEGIN
25
26class VTKCOMMONCORE_EXPORT vtkInformationKeyLookup : public vtkObject
27{
28public:
31
35 void PrintSelf(ostream& os, vtkIndent indent) override;
36
43 static vtkInformationKey* Find(const std::string& name, const std::string& location);
44
52 static vtkInformationKey* FindByName(const std::string& name);
53
54protected:
57
58 friend class vtkInformationKey;
61
70 static void RetainCleanup();
71 static void ReleaseCleanup();
72
77 static void RegisterKey(
78 vtkInformationKey* key, const std::string& name, const std::string& location);
79
87
88private:
90 void operator=(const vtkInformationKeyLookup&) = delete;
91};
92
93VTK_ABI_NAMESPACE_END
94#endif // vtkInformationKeyLookup_h
a simple class to control print indentation
Definition vtkIndent.h:108
static void UnregisterKey(vtkInformationKey *key)
Remove a key from the KeyMap.
static vtkInformationKey * FindByName(const std::string &name)
Find an information key by name alone.
static vtkInformationKeyLookup * New()
static vtkInformationKey * Find(const std::string &name, const std::string &location)
Find an information key from name and location strings.
~vtkInformationKeyLookup() override
static void RegisterKey(vtkInformationKey *key, const std::string &name, const std::string &location)
Add a key to the KeyMap.
void PrintSelf(ostream &os, vtkIndent indent) override
Lists all known keys.
static void RetainCleanup()
Reference-count the lookup table so it remains valid until every vtkInformationKey manager has finish...
static void ReleaseCleanup()
Superclass for vtkInformation keys.