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

# Filtering/vtkImageMultipleInputOutputFilter.h

Go to the documentation of this file.

    00001 /*=========================================================================
    00002
    00003   Program:   Visualization Toolkit
    00004   Module:    $RCSfile: vtkImageMultipleInputOutputFilter.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 =========================================================================*/
    00040 #ifndef __vtkImageMultipleInputOutputFilter_h
    00041 #define __vtkImageMultipleInputOutputFilter_h
    00042
    00043
    00044 #include "vtkImageMultipleInputFilter.h"
    00045
    00046
    00047 class VTK_FILTERING_EXPORT vtkImageMultipleInputOutputFilter : public vtkImageMultipleInputFilter
    00048 {
    00049 public:
    00050   vtkTypeRevisionMacro(vtkImageMultipleInputOutputFilter,vtkImageMultipleInputFilter);
    00051   void PrintSelf(ostream& os, vtkIndent indent);
    00052
    00054
    00055   vtkImageData *GetOutput(int num);
    00056   vtkImageData *GetOutput();
    00058
    00060
    00063   virtual void ThreadedExecute(vtkImageData **inDatas,
    00064                                vtkImageData **outDatas,
    00065                                int extent[6], int threadId);
    00067
    00068 protected:
    00069   vtkImageMultipleInputOutputFilter();
    00070   ~vtkImageMultipleInputOutputFilter();
    00071
    00072   void ComputeInputUpdateExtents( vtkDataObject *output );
    00073
    00074   virtual void ComputeInputUpdateExtent( int inExt[6],
    00075                                          int outExt[6],
    00076                                          int whichInput );
    00077
    00078
    00079   void ExecuteData(vtkDataObject *out);
    00080
    00081   // this should never be called
    00082   virtual void ThreadedExecute(vtkImageData **inDatas,
    00083                                vtkImageData *outData,
    00084                                int extent[6], int threadId);
    00085   virtual void ExecuteInformation(vtkImageData **, vtkImageData *) {};
    00086
    00087   // This one gets called by the superclass.
    00088   void ExecuteInformation();
    00089   // This is the one you should override.
    00090   virtual void ExecuteInformation(vtkImageData **, vtkImageData **) {};
    00091 private:
    00092   vtkImageMultipleInputOutputFilter(const vtkImageMultipleInputOutputFilter&);  // Not implemented.
    00093   void operator=(const vtkImageMultipleInputOutputFilter&);  // Not implemented.
    00094 };
    00095
    00096 #endif
    00097
    00098
    00099
    00100
    00101
    00102
    00103