Main Page | Directories | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

vtkOpenGLVolumeProVP1000Mapper.h

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