Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

Common/vtkTransformCollection.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkTransformCollection.h,v $
00005   Language:  C++
00006 
00007   Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 
00008   All rights reserved.
00009   See Copyright.txt or http://www.kitware.com/Copyright.htm 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 =========================================================================*/
00046 #ifndef __vtkTransformCollection_h
00047 #define __vtkTransformCollection_h
00048 
00049 #include "vtkCollection.h"
00050 
00051 #include "vtkTransform.h" // Needed for inline methods
00052 
00053 class VTK_COMMON_EXPORT vtkTransformCollection : public vtkCollection
00054 {
00055 public:
00056   vtkTypeRevisionMacro(vtkTransformCollection,vtkCollection);
00057   static vtkTransformCollection *New();
00058 
00060   void AddItem(vtkTransform *);
00061 
00064   vtkTransform *GetNextItem();
00065 
00066 protected:
00067   vtkTransformCollection() {};
00068   ~vtkTransformCollection() {};
00069 
00070 
00071 private:
00072   // hide the standard AddItem from the user and the compiler.
00073   void AddItem(vtkObject *o) { this->vtkCollection::AddItem(o); };
00074 
00075 private:
00076   vtkTransformCollection(const vtkTransformCollection&);  // Not implemented.
00077   void operator=(const vtkTransformCollection&);  // Not implemented.
00078 };
00079 
00080 inline void vtkTransformCollection::AddItem(vtkTransform *t) 
00081 {
00082   this->vtkCollection::AddItem((vtkObject *)t);
00083 }
00084 
00085 inline vtkTransform *vtkTransformCollection::GetNextItem() 
00086 { 
00087   return static_cast<vtkTransform *>(this->GetNextItemAsObject());
00088 }
00089 
00090 #endif