VTK
dox/Rendering/Volume/vtkDirectionEncoder.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkDirectionEncoder.h
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 =========================================================================*/
00015 
00032 #ifndef __vtkDirectionEncoder_h
00033 #define __vtkDirectionEncoder_h
00034 
00035 #include "vtkRenderingVolumeModule.h" // For export macro
00036 #include "vtkObject.h"
00037 
00038 class VTKRENDERINGVOLUME_EXPORT vtkDirectionEncoder : public vtkObject
00039 {
00040 public:
00042 
00043   vtkTypeMacro(vtkDirectionEncoder,vtkObject);
00044   virtual void PrintSelf(ostream& os, vtkIndent indent);
00046 
00048   virtual int GetEncodedDirection( float n[3] )=0;
00049 
00051   virtual float *GetDecodedGradient( int value )=0;
00052 
00054   virtual  int GetNumberOfEncodedDirections( void )=0;
00055 
00060   virtual float *GetDecodedGradientTable( void )=0;
00061 
00062 protected:
00063   vtkDirectionEncoder() {}
00064   ~vtkDirectionEncoder() {}
00065 private:
00066   vtkDirectionEncoder(const vtkDirectionEncoder&);  // Not implemented.
00067   void operator=(const vtkDirectionEncoder&);  // Not implemented.
00068 };
00069 
00070 
00071 #endif
00072 
00073 
00074 
00075 
00076 
00077 
00078