ParaView
vtkPVMultiServerDataSource.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPVMultiServerDataSource.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
21 #ifndef vtkPVMultiServerDataSource_h
22 #define vtkPVMultiServerDataSource_h
23 
24 #include "vtkDataObjectAlgorithm.h"
25 #include "vtkPVServerManagerDefaultModule.h" //needed for exports
26 
27 class vtkSMSourceProxy;
28 class vtkInformation;
29 class vtkInformationVector;
30 
31 class VTKPVSERVERMANAGERDEFAULT_EXPORT vtkPVMultiServerDataSource : public vtkDataObjectAlgorithm
32 {
33 public:
34  static vtkPVMultiServerDataSource* New();
35  vtkTypeMacro(vtkPVMultiServerDataSource, vtkDataObjectAlgorithm);
36  void PrintSelf(ostream& os, vtkIndent indent);
37 
41  virtual void SetExternalProxy(vtkSMSourceProxy* proxyFromAnotherServer, int portNumber = 0);
42 
46  virtual void FetchData(vtkDataObject* dataObjectToFill);
47 
48 protected:
51 
52  // call 1
53  virtual int RequestDataObject(vtkInformation*, vtkInformationVector** vtkNotUsed(inputVector),
54  vtkInformationVector* outputVector);
55 
56  // call 2
57  virtual int RequestInformation(
58  vtkInformation*, vtkInformationVector**, vtkInformationVector* outputVector);
59 
60  // call 3
61  virtual int RequestUpdateExtent(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
62 
63  // call 4
64  virtual int RequestData(
65  vtkInformation*, vtkInformationVector**, vtkInformationVector* outputVector);
66 
67 private:
68  vtkPVMultiServerDataSource(const vtkPVMultiServerDataSource&) VTK_DELETE_FUNCTION;
69  void operator=(const vtkPVMultiServerDataSource&) VTK_DELETE_FUNCTION;
70 
71  struct vtkInternal;
72  vtkInternal* Internal;
73 };
74 
75 #endif
VTK class that handle the fetch of remote data.
proxy for a VTK source on a server