vtkUnstructuredGridVolumeRayCastFunction.h 2.16 KB
Newer Older
1 2 3 4 5
/*=========================================================================

  Program:   Visualization Toolkit
  Module:    vtkUnstructuredGridVolumeRayCastFunction.h

Brad King's avatar
Brad King committed
6
  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 8 9
  All rights reserved.
  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.

Brad King's avatar
Brad King committed
10 11
     This software is distributed WITHOUT ANY WARRANTY; without even
     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 13 14 15 16 17 18
     PURPOSE.  See the above copyright notice for more information.

=========================================================================*/

// .NAME vtkUnstructuredGridVolumeRayCastFunction - a superclass for ray casting functions

// .SECTION Description
19 20
// vtkUnstructuredGridVolumeRayCastFunction is a superclass for ray casting functions that
// can be used within a vtkUnstructuredGridVolumeRayCastMapper.
21 22

// .SECTION See Also
23
// vtkUnstructuredGridVolumeRayCastMapper vtkUnstructuredGridVolumeRayIntegrator
24

25 26
#ifndef vtkUnstructuredGridVolumeRayCastFunction_h
#define vtkUnstructuredGridVolumeRayCastFunction_h
27

28
#include "vtkRenderingVolumeModule.h" // For export macro
29 30 31 32
#include "vtkObject.h"

class vtkRenderer;
class vtkVolume;
33
class vtkUnstructuredGridVolumeRayCastIterator;
34

35
class VTKRENDERINGVOLUME_EXPORT vtkUnstructuredGridVolumeRayCastFunction : public vtkObject
36 37
{
public:
38
  vtkTypeMacro(vtkUnstructuredGridVolumeRayCastFunction,vtkObject);
39 40
  virtual void PrintSelf(ostream& os, vtkIndent indent);

41 42
//BTX
  virtual void Initialize( vtkRenderer *ren, vtkVolume   *vol )=0;
43

44 45
  virtual void Finalize( )=0;

46
 // Description:
47 48 49 50
  // Returns a new object that will iterate over all the intersections of a
  // ray with the cells of the input.  The calling code is responsible for
  // deleting the returned object.
  virtual vtkUnstructuredGridVolumeRayCastIterator *NewIterator() = 0;
51 52 53
//ETX


54
protected:
55 56
  vtkUnstructuredGridVolumeRayCastFunction() {}
  ~vtkUnstructuredGridVolumeRayCastFunction() {}
57 58 59 60 61 62 63 64 65 66 67 68 69 70

private:
  vtkUnstructuredGridVolumeRayCastFunction(const vtkUnstructuredGridVolumeRayCastFunction&);  // Not implemented.
  void operator=(const vtkUnstructuredGridVolumeRayCastFunction&);  // Not implemented.
};

#endif