Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

vtkExtensionsObjectHashMap.h

Go to the documentation of this file.
00001 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- 00002 * 00003 * $Id: vtkExtensionsObjectHashMap.h,v 1.4 2004/06/03 18:58:28 xpxqx Exp $ 00004 * 00005 * Copyright (c) 2004 Sean McInerney 00006 * All rights reserved. 00007 * 00008 * See Copyright.txt or http://vtkextensions.sourceforge.net/Copyright.html 00009 * for details. 00010 * 00011 * This software is distributed WITHOUT ANY WARRANTY; without even 00012 * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 * PURPOSE. See the above copyright notice for more information. 00014 * 00015 */ 00016 #ifndef VTK_EXTENSIONS_OBJECT_HASH_MAP_H_ 00017 # define VTK_EXTENSIONS_OBJECT_HASH_MAP_H_ 00018 # include "vtkObjectHashMap.h" 00019 # include "vtkExtensionsObjectHashMapIterator.h" 00020 00021 VTK_EXTENSIONS_CONTAINERS_NAMESPACE_BEGIN 00022 00036 class VTK_EXTENSIONS_CONTAINERS_EXPORT vtkExtensionsObjectHashMap 00037 : public vtkObjectHashMap 00038 { 00039 public: 00040 static vtkExtensionsObjectHashMap* New (void); 00041 vtkTypeRevisionMacro (vtkExtensionsObjectHashMap, vtkObjectHashMap); 00042 00047 virtual int Swap (vtkExtensionsObjectHashMap* container) 00048 { return this->Superclass::Swap(container); } 00049 00059 vtkExtensionsObject* Find (const char* key) const 00060 { return static_cast<vtkExtensionsObject*>(this->Superclass::Find(key)); } 00061 00074 virtual int Insert (const char* key, 00075 vtkExtensionsObject* object) 00076 { return this->Superclass::Insert(key, object); } 00077 00082 virtual const char* FindKey (const vtkExtensionsObject* object) 00083 { return this->Superclass::FindKey(object); } 00084 00085 //BTX 00086 # if 0 00087 00092 const char* FindKeyByUUID (vtkUUID* uuid); 00093 const char* FindKeyByUUID (const char* uuid); 00094 const char* FindKeyByUUID (const unsigned char uuid[16]); 00102 virtual vtkExtensionsObject* FindObjectByUUID (vtkUUID* uuid); 00103 virtual vtkExtensionsObject* FindObjectByUUID (const char* uuid); 00104 virtual vtkExtensionsObject* FindObjectByUUID (const unsigned char uuid[16]); 00106 # endif /* 0 */ 00107 //ETX 00108 00116 vtkExtensionsObject* Front (void) const 00117 { return static_cast<vtkExtensionsObject*>(this->Superclass::Front()); } 00118 00124 virtual int Front (const char* & key, 00125 vtkExtensionsObject* & object) const; 00126 00132 vtkExtensionsObject* Back (void) const 00133 { return static_cast<vtkExtensionsObject*>(this->Superclass::Back()); } 00134 00140 virtual int Back (const char* & key, 00141 vtkExtensionsObject* & object) const; 00145 vtkExtensionsObjectHashMapIterator* CreateIterator (void); 00146 00147 protected: 00148 vtkExtensionsObjectHashMap (void) {} 00149 ~vtkExtensionsObjectHashMap() {} 00150 00151 private: 00152 //BTX 00155 int Swap (vtkObjectHashMap* a) 00156 { return this->Superclass::Swap(a); } 00157 int Insert (const char* key, vtkObject* object) 00158 { return this->Superclass::Insert(key, object); } 00159 const char* FindKey (const vtkObject* object) 00160 { return this->Superclass::FindKey(object); } 00161 int Front (const char* & key, vtkObject* & object) const 00162 { return this->Superclass::Front(key, object); } 00163 int Back (const char* & key, vtkObject* & object) const 00164 { return this->Superclass::Back(key, object); } 00166 //ETX 00167 00168 private: 00174 vtkExtensionsObjectHashMap (const vtkExtensionsObjectHashMap&); 00175 vtkExtensionsObjectHashMap& operator= (const vtkExtensionsObjectHashMap&); 00177 }; 00178 00179 // ---------------------------------------------------------------------------- 00180 inline int 00181 vtkExtensionsObjectHashMap::Front (const char* & aKey, 00182 vtkExtensionsObject* & aObject) const 00183 { 00184 vtkObject* object = (vtkObject *) 0; 00185 int result = this->Superclass::Front(aKey, object); 00186 aObject = static_cast<vtkExtensionsObject*>(object); 00187 return result; 00188 } 00189 00190 inline int 00191 vtkExtensionsObjectHashMap::Back (const char* & aKey, 00192 vtkExtensionsObject* & aObject) const 00193 { 00194 vtkObject* object = (vtkObject *) 0; 00195 int result = this->Superclass::Back(aKey, object); 00196 aObject = static_cast<vtkExtensionsObject*>(object); 00197 return result; 00198 } 00199 00200 VTK_EXTENSIONS_CONTAINERS_NAMESPACE_END 00201 00202 #endif /* VTK_EXTENSIONS_OBJECT_HASH_MAP_H_ */ 00203 /* 00204 * End of: $Id: vtkExtensionsObjectHashMap.h,v 1.4 2004/06/03 18:58:28 xpxqx Exp $. 00205 * 00206 */

Generated on Tue Aug 10 03:37:15 2004 for vtkExtensions by doxygen 1.3.7