File: vtkMergeFilter.h

package info (click to toggle)
vtk 5.8.0-13
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 130,524 kB
  • sloc: cpp: 1,129,256; ansic: 708,203; tcl: 48,526; python: 20,875; xml: 6,779; yacc: 4,208; perl: 3,121; java: 2,788; lex: 931; sh: 660; asm: 471; makefile: 299
file content (145 lines) | stat: -rw-r--r-- 4,781 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
/*=========================================================================

  Program:   Visualization Toolkit
  Module:    vtkMergeFilter.h

  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
  All rights reserved.
  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.

     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.

=========================================================================*/
// .NAME vtkMergeFilter - extract separate components of data from different datasets
// .SECTION Description
// vtkMergeFilter is a filter that extracts separate components of data from
// different datasets and merges them into a single dataset. The output from
// this filter is of the same type as the input (i.e., vtkDataSet.) It treats 
// both cell and point data set attributes.

#ifndef __vtkMergeFilter_h
#define __vtkMergeFilter_h

#include "vtkDataSetAlgorithm.h"

class vtkFieldList;

class VTK_GRAPHICS_EXPORT vtkMergeFilter : public vtkDataSetAlgorithm
{
public:
  static vtkMergeFilter *New();
  vtkTypeMacro(vtkMergeFilter,vtkDataSetAlgorithm);
  void PrintSelf(ostream& os, vtkIndent indent);

  // Description:
  // Specify object from which to extract geometry information.
  // Old style. Use SetGeometryConnection() instead.
  void SetGeometry(vtkDataSet *input) {this->SetInput(input);};
  vtkDataSet *GetGeometry();

  // Description:
  // Specify object from which to extract geometry information.
  // Equivalent to SetInputConnection(0, algOutput)
  void SetGeometryConnection(vtkAlgorithmOutput* algOutput) 
    {
      this->SetInputConnection(algOutput);
    }

  // Description:
  // Specify object from which to extract scalar information.
  // Old style. Use SetScalarsConnection() instead.
  void SetScalars(vtkDataSet *);
  vtkDataSet *GetScalars();

  // Description:
  // Specify object from which to extract scalar information.
  // Equivalent to SetInputConnection(1, algOutput)
  void SetScalarsConnection(vtkAlgorithmOutput* algOutput)
    {
      this->SetInputConnection(1, algOutput);
    }

  // Description:
  // Set / get the object from which to extract vector information.
  // Old style. Use SetVectorsConnection() instead.
  void SetVectors(vtkDataSet *);
  vtkDataSet *GetVectors();

  // Description:
  // Set the connection from which to extract vector information.
  // Equivalent to SetInputConnection(2, algOutput)
  void SetVectorsConnection(vtkAlgorithmOutput* algOutput)
    {
      this->SetInputConnection(2, algOutput);
    }

  // Description:
  // Set / get the object from which to extract normal information.
  // Old style. Use SetNormalsConnection() instead.
  void SetNormals(vtkDataSet *);
  vtkDataSet *GetNormals();

  // Description:
  // Set  the connection from which to extract normal information.
  // Equivalent to SetInputConnection(3, algOutput)
  void SetNormalsConnection(vtkAlgorithmOutput* algOutput)
    {
      this->SetInputConnection(3, algOutput);
    }

  // Description:
  // Set / get the object from which to extract texture coordinates
  // information.
  // Old style. Use SetTCoordsConnection() instead.
  void SetTCoords(vtkDataSet *);
  vtkDataSet *GetTCoords();

  // Description:
  // Set the connection from which to extract texture coordinates
  // information.
  // Equivalent to SetInputConnection(4, algOutput)
  void SetTCoordsConnection(vtkAlgorithmOutput* algOutput)
    {
      this->SetInputConnection(4, algOutput);
    }

  // Description:
  // Set / get the object from which to extract tensor data.
  // Old style. Use SetTensorsConnection() instead.
  void SetTensors(vtkDataSet *);
  vtkDataSet *GetTensors();

  // Description:
  // Set the connection from which to extract tensor data.
  // Equivalent to SetInputConnection(5, algOutput)
  void SetTensorsConnection(vtkAlgorithmOutput* algOutput)
    {
      this->SetInputConnection(5, algOutput);
    }

  // Description:
  // Set the object from which to extract a field and the name
  // of the field. Note that this does not create pipeline
  // connectivity.
  void AddField(const char* name, vtkDataSet* input);

protected:
  vtkMergeFilter();
  ~vtkMergeFilter();

  // Usual data generation method
  int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
  int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
  int FillInputPortInformation(int port, vtkInformation *info);

  vtkFieldList* FieldList;
private:
  vtkMergeFilter(const vtkMergeFilter&);  // Not implemented.
  void operator=(const vtkMergeFilter&);  // Not implemented.
  };

#endif