VTK
/Users/kitware/Dashboards/MyTests/VTK_BLD_Release_docs/Utilities/Doxygen/dox/Common/ExecutionModel/vtkThreadedCompositeDataPipeline.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkThreadedCompositeDataPipeline.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   =========================================================================*/
00030 #ifndef vtkThreadedCompositeDataPipeline_h
00031 #define vtkThreadedCompositeDataPipeline_h
00032 
00033 #include "vtkCommonExecutionModelModule.h" // For export macro
00034 #include "vtkCompositeDataPipeline.h"
00035 
00036 class vtkInformationVector;
00037 class vtkInformation;
00038 
00039 class VTKCOMMONEXECUTIONMODEL_EXPORT vtkThreadedCompositeDataPipeline : public vtkCompositeDataPipeline
00040 {
00041  public:
00042   static vtkThreadedCompositeDataPipeline* New();
00043   vtkTypeMacro(vtkThreadedCompositeDataPipeline,vtkCompositeDataPipeline);
00044   void PrintSelf(ostream &os, vtkIndent indent);
00045 
00047 
00049   virtual int CallAlgorithm(vtkInformation* request, int direction,
00050                             vtkInformationVector** inInfo,
00051                             vtkInformationVector* outInfo);
00053 
00054  protected:
00055   vtkThreadedCompositeDataPipeline();
00056   ~vtkThreadedCompositeDataPipeline();
00057   virtual void ExecuteEach(vtkCompositeDataIterator* iter,
00058                            vtkInformationVector** inInfoVec,
00059                            vtkInformationVector* outInfoVec,
00060                            int compositePort,
00061                            int connection,
00062                            vtkInformation* request,
00063                            vtkCompositeDataSet* compositeOutput);
00064 
00065  private:
00066   vtkThreadedCompositeDataPipeline(const vtkThreadedCompositeDataPipeline&);  // Not implemented.
00067   void operator=(const vtkThreadedCompositeDataPipeline&);  // Not implemented.
00068   friend class ProcessBlock;
00069 };
00070 
00071 #endif