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

vtkExtensionsObjectCollection.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: vtkExtensionsObjectCollection.h,v 1.2 2004/08/10 07:37:21 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_COLLECTION_H_ 00017 # define VTK_EXTENSIONS_OBJECT_COLLECTION_H_ 00018 # include "vtkUniqueCollection.h" 00019 00020 VTK_EXTENSIONS_NAMESPACE_BEGIN 00021 00022 class vtkExtensionsObject; 00023 00039 class VTK_EXTENSIONS_COMMON_EXPORT vtkExtensionsObjectCollection 00040 : public vtkUniqueCollection 00041 { 00042 public: 00043 static vtkExtensionsObjectCollection* New (void); 00044 vtkTypeRevisionMacro (vtkExtensionsObjectCollection, vtkUniqueCollection); 00045 void PrintSelf (ostream&, vtkIndent); 00046 00048 void AddItem (vtkExtensionsObject* object); 00049 00055 //BTX 00056 void ReplaceItem (int i, 00057 vtkExtensionsObject* object, 00058 vtkExtensionsObject** replaced); 00059 //ETX 00060 void ReplaceItem (int i, 00061 vtkExtensionsObject* object) 00062 { this->ReplaceItem(i, object, (vtkExtensionsObject **) 0); } 00073 //BTX 00074 void RemoveItem (int i, vtkExtensionsObject** removed); 00075 //ETX 00076 void RemoveItem (int i) 00077 { this->RemoveItem(i, (vtkExtensionsObject **) 0); } 00088 //BTX 00089 void RemoveItem (vtkExtensionsObject* object, 00090 vtkExtensionsObject** removed); 00091 //ETX 00092 void RemoveItem (vtkExtensionsObject* object) 00093 { this->RemoveItem(object, (vtkExtensionsObject **) 0); } 00097 void RemoveAllItems (void) 00098 { this->RemoveAllItems(); } 00099 00101 int IndexOf (vtkExtensionsObject* object); 00102 00107 int IsItemPresent (vtkExtensionsObject* object); 00108 00113 vtkExtensionsObject* GetNextItem (void); 00114 00119 vtkExtensionsObject* GetItem (int i); 00120 00125 vtkExtensionsObject* GetFirstItem (void); 00126 00131 vtkExtensionsObject* GetLastItem (void); 00132 00135 //BTX 00136 void RemoveLastItem (vtkExtensionsObject** removed); 00137 //ETX 00138 void RemoveLastItem (void) 00139 { this->RemoveLastItem((vtkExtensionsObject **) 0); } 00143 int PrependItem (vtkExtensionsObject* object); 00144 00146 int AppendItem (vtkExtensionsObject* object); 00147 00149 int InsertItemAt (vtkExtensionsObject* object, int i); 00150 00151 protected: 00152 vtkExtensionsObjectCollection (void) {} 00153 ~vtkExtensionsObjectCollection() {} 00154 00155 private: 00156 //BTX 00159 void AddItem (vtkObject* a) 00160 { this->vtkUniqueCollection::AddItem(a); } 00161 void ReplaceItem (int i, vtkObject* a, vtkObject** r) 00162 { this->vtkUniqueCollection::ReplaceItem(i,a,r); } 00163 void ReplaceItem (int i, vtkObject* a) 00164 { this->vtkUniqueCollection::ReplaceItem(i,a); } 00165 void RemoveItem (int i, vtkObject** r) 00166 { this->vtkUniqueCollection::RemoveItem(i,r); } 00167 void RemoveItem (vtkObject* a, vtkObject** r) 00168 { this->vtkUniqueCollection::RemoveItem(a, r); } 00169 void RemoveItem (vtkObject* a) 00170 { this->vtkUniqueCollection::RemoveItem(a); } 00171 int IndexOf (vtkObject* a) 00172 { this->vtkUniqueCollection::IndexOf(a); } 00173 int IsItemPresent (vtkObject* a) 00174 { return this->vtkUniqueCollection::IsItemPresent(a); } 00175 void RemoveLastItem (vtkObject** r) 00176 { this->vtkUniqueCollection::RemoveLastItem(r); } 00177 int PrependItem (vtkObject*& a) 00178 { return this->vtkUniqueCollection::PrependItem(a); } 00179 int AppendItem (vtkObject*& a) 00180 { return this->vtkUniqueCollection::AppendItem(a); } 00181 int InsertItemAt (vtkObject*& a, int i) 00182 { return this->vtkUniqueCollection::InsertItemAt(a,i); } 00184 //ETX 00185 00186 private: 00192 vtkExtensionsObjectCollection (const vtkExtensionsObjectCollection&); 00193 void operator= (const vtkExtensionsObjectCollection&); 00195 }; 00196 00197 VTK_EXTENSIONS_NAMESPACE_END 00198 00199 #endif /* VTK_EXTENSIONS_OBJECT_COLLECTION_H_ */ 00200 /* 00201 * End of: $Id: vtkExtensionsObjectCollection.h,v 1.2 2004/08/10 07:37:21 xpxqx Exp $. 00202 * 00203 */

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