vtkPVAlgorithmPortsInformation.h 2.19 KB
Newer Older
1
2
3
/*=========================================================================

  Program:   ParaView
Utkarsh Ayachit's avatar
ENH:    
Utkarsh Ayachit committed
4
  Module:    vtkPVAlgorithmPortsInformation.h
5

6
7
8
  Copyright (c) Kitware, Inc.
  All rights reserved.
  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
9

10
11
12
     This software is distributed WITHOUT ANY WARRANTY; without even
     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
     PURPOSE.  See the above copyright notice for more information.
13
14

=========================================================================*/
Utkarsh Ayachit's avatar
ENH:    
Utkarsh Ayachit committed
15
// .NAME vtkPVAlgorithmPortsInformation - Holds number of outputs
16
17
18
19
20
// .SECTION Description
// This information object collects the number of outputs from the
// sources.  This is separate from vtkPVDataInformation because the number of
// outputs can be determined before Update is called.

Utkarsh Ayachit's avatar
ENH:    
Utkarsh Ayachit committed
21
22
#ifndef __vtkPVAlgorithmPortsInformation_h
#define __vtkPVAlgorithmPortsInformation_h
23
24
25

#include "vtkPVInformation.h"

Utkarsh Ayachit's avatar
ENH:    
Utkarsh Ayachit committed
26
class VTK_EXPORT vtkPVAlgorithmPortsInformation : public vtkPVInformation
27
28
{
public:
Utkarsh Ayachit's avatar
ENH:    
Utkarsh Ayachit committed
29
  static vtkPVAlgorithmPortsInformation* New();
30
  vtkTypeMacro(vtkPVAlgorithmPortsInformation, vtkPVInformation);
31
  void PrintSelf(ostream &os, vtkIndent indent);
32

33
34
35
  // Description:
  // Get number of outputs for a particular source.
  vtkGetMacro(NumberOfOutputs, int);
36

Utkarsh Ayachit's avatar
ENH:    
Utkarsh Ayachit committed
37
38
39
40
  // Description:
  // Get the number of required inputs for a particular algorithm.
  vtkGetMacro(NumberOfRequiredInputs, int);

41
42
  // Description:
  // Transfer information about a single object into this object.
43
44
  virtual void CopyFromObject(vtkObject*);

45
  // Description:
46
47
48
49
50
  // Merge another information object.
  virtual void AddInformation(vtkPVInformation*);

  // Description:
  // Manage a serialized version of the information.
51
  virtual void CopyToStream(vtkClientServerStream*);
52
53
  virtual void CopyFromStream(const vtkClientServerStream*);

54
protected:
Utkarsh Ayachit's avatar
ENH:    
Utkarsh Ayachit committed
55
56
  vtkPVAlgorithmPortsInformation();
  ~vtkPVAlgorithmPortsInformation();
57

58
  int NumberOfOutputs;
Utkarsh Ayachit's avatar
ENH:    
Utkarsh Ayachit committed
59
60
  int NumberOfRequiredInputs;

61
  vtkSetMacro(NumberOfOutputs, int);
62
private:
Utkarsh Ayachit's avatar
ENH:    
Utkarsh Ayachit committed
63
64
  vtkPVAlgorithmPortsInformation(const vtkPVAlgorithmPortsInformation&); // Not implemented
  void operator=(const vtkPVAlgorithmPortsInformation&); // Not implemented
65
66
67
};

#endif