00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
#ifndef VTK_OBJECT_MAP_H_
00017
# define VTK_OBJECT_MAP_H_
00018
# include "vtkObjectBaseMap.h"
00019
# include "vtkObjectMapIterator.h"
00020
00021
VTK_EXTENSIONS_CONTAINERS_NAMESPACE_BEGIN
00022
00036 class VTK_EXTENSIONS_CONTAINERS_EXPORT vtkObjectMap
00037 :
public vtkObjectBaseMap
00038 {
00039
public:
00040
static vtkObjectMap*
New (
void);
00041 vtkTypeRevisionMacro (vtkObjectMap,
vtkObjectBaseMap);
00042
00047 virtual int Swap (vtkObjectMap* container)
00048 {
return this->
Superclass::Swap(container); }
00049
00059 vtkObject* Find (
const char* key)
const
00060
{
return static_cast<vtkObject*>(this->Superclass::Find(key)); }
00061
00074 virtual int Insert (
const char* key,
00075
vtkObject* object)
00076 {
return this->Superclass::Insert(key, object); }
00077
00082 virtual const char* FindKey (
const vtkObject* object)
00083 {
return this->Superclass::FindKey(object); }
00084
00092 vtkObject*
Front (
void)
const
00093
{
return static_cast<vtkObject*>(this->Superclass::Front()); }
00094
00100
virtual int Front (
const char* & key,
00101
vtkObject* & object)
const;
00102
00108 vtkObject*
Back (
void)
const
00109
{
return static_cast<vtkObject*>(this->Superclass::Back()); }
00110
00116
virtual int Back (
const char* & key,
00117
vtkObject* & object)
const;
00121
vtkObjectMapIterator*
CreateIterator (
void);
00122
00123
protected:
00124 vtkObjectMap (
void) {}
00125 ~vtkObjectMap() {}
00126
00127
private:
00128
00131
int Swap (
vtkObjectBaseMap* map)
00132 {
return this->
Superclass::Swap(map); }
00133
int Insert (
const char* key,
vtkObjectBase* object)
00134 {
return this->Superclass::Insert(key, object); }
00135
const char* FindKey (
const vtkObjectBase* object)
00136 {
return this->Superclass::FindKey(object); }
00137
int Front (
const char* & key,
vtkObjectBase* & object)
const
00138
{
return this->Superclass::Front(key, object); }
00139
int Back (
const char* & key,
vtkObjectBase* & object)
const
00140
{
return this->Superclass::Back(key, object); }
00142
00143
00144
private:
00150 vtkObjectMap (
const vtkObjectMap&);
00151
void operator= (
const vtkObjectMap&);
00153 };
00154
00155
00156
inline int
00157 vtkObjectMap::Front (
const char* & aKey,
00158
vtkObject* & aObject)
const
00159
{
00160
vtkObjectBase* object = (
vtkObjectBase *) 0;
00161
int result = this->Superclass::Front(aKey, object);
00162 aObject = static_cast<vtkObject*>(object);
00163
return result;
00164 }
00165
00166
inline int
00167 vtkObjectMap::Back (
const char* & aKey,
00168
vtkObject* & aObject)
const
00169
{
00170
vtkObjectBase* object = (
vtkObjectBase *) 0;
00171
int result = this->Superclass::Back(aKey, object);
00172 aObject = static_cast<vtkObject*>(object);
00173
return result;
00174 }
00175
00176
VTK_EXTENSIONS_CONTAINERS_NAMESPACE_END
00177
00178
#endif
00179
00180
00181
00182