Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class 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 =========================================================================*/
00046 #ifndef __vtkOpenGLVolumeProVP1000Mapper_h
00047 #define __vtkOpenGLVolumeProVP1000Mapper_h
00048 
00049 #include "vtkVolumeProVP1000Mapper.h"
00050 
00051 class VTK_EXPORT vtkOpenGLVolumeProVP1000Mapper : public vtkVolumeProVP1000Mapper
00052 {
00053 public:
00054   vtkTypeRevisionMacro(vtkOpenGLVolumeProVP1000Mapper,vtkVolumeProVP1000Mapper);
00055   static vtkOpenGLVolumeProVP1000Mapper *New();
00056   virtual void PrintSelf(ostream& os, vtkIndent indent);
00057 
00058 protected:
00059   vtkOpenGLVolumeProVP1000Mapper() {}
00060   ~vtkOpenGLVolumeProVP1000Mapper() {}
00061 
00062   // Render the hexagon returned by the hardware to the screen.
00063   void RenderImageBuffer( vtkRenderer  *ren,
00064                           vtkVolume    *vol,
00065                           int          size[2],
00066                           unsigned int *outData );
00067   
00068   // Get the OpenGL depth buffer values in a the form needed for the
00069   // VolumePro board
00070   virtual void GetDepthBufferValues( vtkRenderer *ren, int size[2],
00071                                      unsigned int *outData);
00072   
00073   // Render a bounding box of the volume because the texture map would be
00074   // too large
00075   virtual void RenderBoundingBox(vtkRenderer *ren, vtkVolume *vol);
00076 
00077 private:
00078   vtkOpenGLVolumeProVP1000Mapper(const vtkOpenGLVolumeProVP1000Mapper&); // Not implemented
00079   void operator=(const vtkOpenGLVolumeProVP1000Mapper&); // Not implemented
00080 };
00081 
00082 
00083 #endif
00084 
00085 
00086