VTK
9.0.1
Common
Core
vtkInformationKeyLookup.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Visualization Toolkit
4
Module: vtkInformationKeyLookup.h
5
6
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7
All rights reserved.
8
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10
This software is distributed WITHOUT ANY WARRANTY; without even
11
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12
PURPOSE. See the above copyright notice for more information.
13
14
=========================================================================*/
15
22
#ifndef vtkInformationKeyLookup_h
23
#define vtkInformationKeyLookup_h
24
25
#include "vtkCommonCoreModule.h"
// For export macro
26
#include "
vtkObject.h
"
27
28
#include <map>
// For std::map
29
#include <string>
// For std::string
30
#include <utility>
// For std::pair
31
32
class
vtkInformationKey
;
33
34
class
VTKCOMMONCORE_EXPORT
vtkInformationKeyLookup
:
public
vtkObject
35
{
36
public
:
37
static
vtkInformationKeyLookup
*
New
();
38
vtkTypeMacro(
vtkInformationKeyLookup
,
vtkObject
);
39
43
void
PrintSelf
(ostream& os,
vtkIndent
indent)
override
;
44
51
static
vtkInformationKey
* Find(
const
std::string
&
name
,
const
std::string
&
location
);
52
53
protected
:
54
vtkInformationKeyLookup
();
55
~
vtkInformationKeyLookup
()
override
;
56
57
friend
class
vtkInformationKey
;
58
63
static
void
RegisterKey(
64
vtkInformationKey
*
key
,
const
std::string
&
name
,
const
std::string
&
location
);
65
66
private
:
67
vtkInformationKeyLookup
(
const
vtkInformationKeyLookup
&) =
delete
;
68
void
operator=(
const
vtkInformationKeyLookup
&) =
delete
;
69
70
typedef
std::pair<std::string, std::string> Identifier;
// Location, Name
71
typedef
std::map<Identifier, vtkInformationKey*> KeyMap;
72
73
// Using a static function / variable here to ensure static initialization
74
// works as intended, since key objects are static, too.
75
static
KeyMap& Keys();
76
};
77
78
#endif // vtkInformationKeyLookup_h
vtkObject::New
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
vtkX3D::key
@ key
Definition:
vtkX3D.h:263
vtkInformationKeyLookup
Find vtkInformationKeys from name and location strings.
Definition:
vtkInformationKeyLookup.h:34
vtkObject
abstract base class for most VTK objects
Definition:
vtkObject.h:62
vtkIndent
a simple class to control print indentation
Definition:
vtkIndent.h:33
vtkObject::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkX3D::name
@ name
Definition:
vtkX3D.h:225
vtkObject.h
vtkX3D::string
@ string
Definition:
vtkX3D.h:496
vtkX3D::location
@ location
Definition:
vtkX3D.h:412
vtkInformationKey
Superclass for vtkInformation keys.
Definition:
vtkInformationKey.h:38
Generated on Thu Jun 25 2020 08:30:28 for VTK by
1.8.17