• Main Page
  • Related Pages
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

dox/Rendering/vtkProp3DCollection.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkProp3DCollection.h,v $
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00026 #ifndef __vtkProp3DCollection_h
00027 #define __vtkProp3DCollection_h
00028 
00029 #include "vtkPropCollection.h"
00030 #include "vtkProp3D.h" // Needed for inline methods
00031 
00032 class VTK_RENDERING_EXPORT vtkProp3DCollection : public vtkPropCollection
00033 {
00034 public:
00035   static vtkProp3DCollection *New();
00036   vtkTypeRevisionMacro(vtkProp3DCollection,vtkPropCollection);
00037   virtual void PrintSelf(ostream& os, vtkIndent indent);
00038 
00040   void AddItem(vtkProp3D *p);
00041 
00043   vtkProp3D *GetNextProp3D();
00044 
00046   vtkProp3D *GetLastProp3D();
00047 
00048   //BTX
00050 
00052   vtkProp3D *GetNextProp3D(vtkCollectionSimpleIterator &cookie)
00053     {
00054       return static_cast<vtkProp3D *>(this->GetNextItemAsObject(cookie));
00055     }
00056   //ETX
00058   
00059 protected:
00060   vtkProp3DCollection() {};
00061   ~vtkProp3DCollection() {};
00062     
00063 
00064 private:
00065   // hide the standard AddItem from the user and the compiler.
00066   void AddItem(vtkObject *o)
00067     {
00068       this->vtkCollection::AddItem(o);
00069     }
00070   void AddItem(vtkProp *o)
00071     {
00072       this->vtkPropCollection::AddItem(o);
00073     }
00074 
00075 private:
00076   vtkProp3DCollection(const vtkProp3DCollection&);  // Not implemented.
00077   void operator=(const vtkProp3DCollection&);  // Not implemented.
00078 };
00079 
00080 inline void vtkProp3DCollection::AddItem(vtkProp3D *a) 
00081 {
00082   this->vtkCollection::AddItem(a);
00083 }
00084 
00085 inline vtkProp3D *vtkProp3DCollection::GetNextProp3D() 
00086 { 
00087   return static_cast<vtkProp3D *>(this->GetNextItemAsObject());
00088 }
00089 
00090 inline vtkProp3D *vtkProp3DCollection::GetLastProp3D() 
00091 { 
00092   if ( this->Bottom == NULL )
00093     {
00094     return NULL;
00095     }
00096   else
00097     {
00098     return static_cast<vtkProp3D *>(this->Bottom->Item);
00099     }
00100 }
00101 
00102 #endif
00103 
00104 
00105 
00106 
00107 

Generated by  doxygen 1.7.1