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

Rendering/vtkOpenGLVolumeProVP1000Mapper.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkOpenGLVolumeProVP1000Mapper.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 =========================================================================*/
00057 #ifndef __vtkOpenGLVolumeProVP1000Mapper_h
00058 #define __vtkOpenGLVolumeProVP1000Mapper_h
00059 
00060 #include "vtkVolumeProVP1000Mapper.h"
00061 
00062 class VTK_EXPORT vtkOpenGLVolumeProVP1000Mapper : public vtkVolumeProVP1000Mapper
00063 {
00064 public:
00065   vtkTypeRevisionMacro(vtkOpenGLVolumeProVP1000Mapper,vtkVolumeProVP1000Mapper);
00066   static vtkOpenGLVolumeProVP1000Mapper *New();
00067   virtual void PrintSelf(ostream& os, vtkIndent indent);
00068 
00069 protected:
00070   vtkOpenGLVolumeProVP1000Mapper() {}
00071   ~vtkOpenGLVolumeProVP1000Mapper() {}
00072 
00073   // Render the hexagon returned by the hardware to the screen.
00074   void RenderImageBuffer( vtkRenderer  *ren,
00075                           vtkVolume    *vol,
00076                           int          size[2],
00077                           unsigned int *outData );
00078   
00079   // Get the OpenGL depth buffer values in a the form needed for the
00080   // VolumePro board
00081   virtual void GetDepthBufferValues( vtkRenderer *ren, int size[2],
00082                                      unsigned int *outData);
00083   
00084   // Render a bounding box of the volume because the texture map would be
00085   // too large
00086   virtual void RenderBoundingBox(vtkRenderer *ren, vtkVolume *vol);
00087 
00088 private:
00089   vtkOpenGLVolumeProVP1000Mapper(const vtkOpenGLVolumeProVP1000Mapper&); // Not implemented
00090   void operator=(const vtkOpenGLVolumeProVP1000Mapper&); // Not implemented
00091 };
00092 
00093 
00094 #endif
00095 
00096 
00097