VTK
vtkAlgorithm.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAlgorithm.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 =========================================================================*/
40 #ifndef vtkAlgorithm_h
41 #define vtkAlgorithm_h
42 
43 #include "vtkCommonExecutionModelModule.h" // For export macro
44 #include "vtkObject.h"
45 
46 class vtkAbstractArray;
47 class vtkAlgorithmInternals;
48 class vtkAlgorithmOutput;
49 class vtkCollection;
50 class vtkDataArray;
51 class vtkDataObject;
52 class vtkExecutive;
53 class vtkInformation;
60 
62 {
63 public:
64  static vtkAlgorithm *New();
66  void PrintSelf(ostream& os, vtkIndent indent);
67 
69 
81  {
84  DEFAULT_PRECISION
85  };
87 
90  int HasExecutive();
91 
95 
99  virtual void SetExecutive(vtkExecutive* executive);
100 
102 
116  virtual int ProcessRequest(vtkInformation* request,
117  vtkInformationVector** inInfo,
118  vtkInformationVector* outInfo);
120 
122 
125  vtkCollection* inInfo,
126  vtkInformationVector* outInfo);
128 
130 
133  virtual int
135  vtkInformationVector** inInfoVec,
136  vtkInformationVector* outInfoVec,
137  int requestFromOutputPort,
138  unsigned long* mtime);
140 
146  virtual int ModifyRequest(vtkInformation* request, int when);
147 
153 
159 
161 
165 
168 
171 
173 
174  virtual void Register(vtkObjectBase* o);
175  virtual void UnRegister(vtkObjectBase* o);
177 
179 
181  vtkSetMacro(AbortExecute,int);
182  vtkGetMacro(AbortExecute,int);
183  vtkBooleanMacro(AbortExecute,int);
185 
187 
188  vtkSetClampMacro(Progress,double,0.0,1.0);
189  vtkGetMacro(Progress,double);
191 
195  void UpdateProgress(double amount);
196 
198 
203  void SetProgressText(const char* ptext);
204  vtkGetStringMacro(ProgressText);
206 
208 
210  vtkGetMacro( ErrorCode, unsigned long );
212 
213  // left public for performance since it is used in inner loops
215 
231 
238 
248 
249 
251 
257  virtual void SetInputArrayToProcess(int idx, int port, int connection,
258  int fieldAssociation,
259  const char *name);
260  virtual void SetInputArrayToProcess(int idx, int port, int connection,
261  int fieldAssociation,
262  int fieldAttributeType);
263  virtual void SetInputArrayToProcess(int idx, vtkInformation *info);
265 
267 
281  virtual void SetInputArrayToProcess(int idx, int port, int connection,
282  const char* fieldAssociation,
283  const char* attributeTypeorName);
285 
288 
289  // from here down are convenience methods that really are executive methods
290 
291 
292 
295 
299 
301 
304  int connection);
306 
308 
320 
322 
330 
338 
340  virtual void RemoveInputConnection(int port, int idx);
341 
343  virtual void RemoveAllInputConnections(int port);
344 
346 
355  { this->SetInputDataObject(0, data); }
357 
359 
364  { this->AddInputDataObject(0, data); }
366 
368 
374  return this->GetOutputPort(0); }
376 
379 
382 
385 
388  vtkAlgorithm* GetInputAlgorithm(int port, int index, int& algPort);
389 
392 
394 
396  {
397  return this->GetInputAlgorithm(0, 0);
398  }
400 
403 
405 
407  {
408  return this->GetInputExecutive(0, 0);
409  }
411 
419 
421 
423  {
424  return this->GetInputInformation(0, 0);
425  }
427 
433 
435 
436  virtual void Update(int port);
437  virtual void Update();
439 
440 
442  virtual void UpdateInformation();
443 
445  virtual void UpdateDataObject();
446 
448  virtual void PropagateUpdateExtent();
449 
451  virtual void UpdateWholeExtent();
452 
455  void ConvertTotalInputToPortConnection(int ind, int& port, int& conn);
456 
457  //======================================================================
458  //The following block of code is to support old style VTK applications. If
459  //you are using these calls there are better ways to do it in the new
460  //pipeline
461  //======================================================================
462 
464 
465  virtual void SetReleaseDataFlag(int);
466  virtual int GetReleaseDataFlag();
470 
471  //========================================================================
472 
474 
479  int UpdateExtentIsEmpty(vtkInformation *pinfo, int extentType);
481 
485 
491 
496 
498 
500  int piece,int numPieces, int ghostLevel);
502 
504 
506  void SetUpdateExtent(int piece,int numPieces, int ghostLevel)
507  {
508  this->SetUpdateExtent(0, piece, numPieces, ghostLevel);
509  }
511 
513  void SetUpdateExtent(int port, int extent[6]);
514 
516 
517  void SetUpdateExtent(int extent[6])
518  {
519  this->SetUpdateExtent(0, extent);
520  }
522 
524 
527  {
528  return this->GetUpdateExtent(0);
529  }
531  void GetUpdateExtent(int& x0, int& x1, int& y0, int& y1,
532  int& z0, int& z1)
533  {
534  this->GetUpdateExtent(0, x0, x1, y0, y1, z0, z1);
535  }
537  int& x0, int& x1, int& y0, int& y1,
538  int& z0, int& z1);
539  void GetUpdateExtent(int extent[6])
540  {
541  this->GetUpdateExtent(0, extent);
542  }
543  void GetUpdateExtent(int port, int extent[6]);
545 
547 
550  {
551  return this->GetUpdatePiece(0);
552  }
555  {
556  return this->GetUpdateNumberOfPieces(0);
557  }
560  {
561  return this->GetUpdateGhostLevel(0);
562  }
565 
567 
576 
577 protected:
580 
581  // Keys used to indicate that input/output port information has been
582  // filled.
584 
585  // Arbitrary extra information associated with this algorithm
587 
592 
597 
599  virtual void SetNumberOfInputPorts(int n);
600 
602  virtual void SetNumberOfOutputPorts(int n);
603 
604  // Helper methods to check input/output port index ranges.
605  int InputPortIndexInRange(int index, const char* action);
606  int OutputPortIndexInRange(int index, const char* action);
607 
611  int GetInputArrayAssociation(int idx, vtkInformationVector **inputVector);
612 
614 
620  int GetInputArrayAssociation(int idx, int connection,
621  vtkInformationVector **inputVector);
624 
625 
627 
631  vtkInformationVector **inputVector,
632  int& association);
634 
636 
643  int connection,
644  vtkInformationVector **inputVector);
646  int connection,
647  vtkInformationVector **inputVector,
648  int& association);
653  int& association);
655 
656 
658 
662  (int idx, vtkInformationVector **inputVector, int& association);
664 
666 
673  int connection,
674  vtkInformationVector **inputVector);
676  int connection,
677  vtkInformationVector **inputVector,
678  int& association);
683  int& association);
685 
686 
687 
689 
695  vtkInformationVector **inputVector);
697 
698 
704 
706 
708  vtkSetMacro( ErrorCode, unsigned long );
709  unsigned long ErrorCode;
711 
712  // Progress/Update handling
713  double Progress;
715 
716  // Garbage collection support.
718 
719  // executive methods below
720 
722 
726  virtual void SetNthInputConnection(int port, int index,
729 
734  virtual void SetNumberOfInputConnections(int port, int n);
735 
737 
739 
744  { this->SetInputDataObject(port, input); }
746  { this->AddInputDataObject(port, input); }
748 
750 
751 private:
752  vtkExecutive* Executive;
753  vtkInformationVector* InputPortInformation;
754  vtkInformationVector* OutputPortInformation;
755  vtkAlgorithmInternals* AlgorithmInternal;
756  static void ConnectionAdd(vtkAlgorithm* producer, int producerPort,
757  vtkAlgorithm* consumer, int consumerPort);
758  static void ConnectionRemove(vtkAlgorithm* producer, int producerPort,
759  vtkAlgorithm* consumer, int consumerPort);
760  static void ConnectionRemoveAllInput(vtkAlgorithm* consumer, int port);
761  static void ConnectionRemoveAllOutput(vtkAlgorithm* producer, int port);
762 
763 private:
764  vtkAlgorithm(const vtkAlgorithm&); // Not implemented.
765  void operator=(const vtkAlgorithm&); // Not implemented.
766 };
767 
768 #endif
vtkAlgorithm::GetInputAbstractArrayToProcess
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, int connection, vtkInformationVector **inputVector)
vtkAlgorithm::InputPortIndexInRange
int InputPortIndexInRange(int index, const char *action)
vtkAlgorithm::INPUT_ARRAYS_TO_PROCESS
static vtkInformationInformationVectorKey * INPUT_ARRAYS_TO_PROCESS()
vtkAlgorithm::CreateDefaultExecutive
virtual vtkExecutive * CreateDefaultExecutive()
vtkAlgorithm::SetReleaseDataFlag
virtual void SetReleaseDataFlag(int)
vtkAlgorithm::Register
virtual void Register(vtkObjectBase *o)
vtkAlgorithm::SetProgressText
void SetProgressText(const char *ptext)
vtkAlgorithm::AddInputDataObject
virtual void AddInputDataObject(int port, vtkDataObject *data)
vtkAlgorithm::GetTotalNumberOfInputConnections
int GetTotalNumberOfInputConnections()
vtkAlgorithm::SetNumberOfInputConnections
virtual void SetNumberOfInputConnections(int port, int n)
vtkAlgorithm::GetInputArrayAssociation
int GetInputArrayAssociation(int idx, vtkDataObject *input)
vtkAlgorithm::Information
vtkInformation * Information
Definition: vtkAlgorithm.h:586
vtkAlgorithm::ReleaseDataFlagOn
void ReleaseDataFlagOn()
vtkInformationStringKey
Key for string values in vtkInformation.
Definition: vtkInformationStringKey.h:34
vtkgl::data
GLsizei GLsizei GLenum GLenum const GLvoid * data
Definition: vtkgl.h:11339
vtkGetObjectMacro
#define vtkGetObjectMacro(name, type)
Definition: vtkSetGet.h:232
vtkAlgorithm::GetUpdateExtent
void GetUpdateExtent(int extent[6])
Definition: vtkAlgorithm.h:539
vtkAlgorithm::DOUBLE_PRECISION
@ DOUBLE_PRECISION
Definition: vtkAlgorithm.h:83
vtkAlgorithm::CAN_PRODUCE_SUB_EXTENT
static vtkInformationIntegerKey * CAN_PRODUCE_SUB_EXTENT()
vtkAlgorithm::SetUpdateExtent
void SetUpdateExtent(int port, int piece, int numPieces, int ghostLevel)
vtkAlgorithm::PORT_REQUIREMENTS_FILLED
static vtkInformationIntegerKey * PORT_REQUIREMENTS_FILLED()
VTKCOMMONEXECUTIONMODEL_EXPORT
#define VTKCOMMONEXECUTIONMODEL_EXPORT
Definition: vtkCommonExecutionModelModule.h:15
vtkAlgorithm::SetUpdateExtent
void SetUpdateExtent(int extent[6])
Definition: vtkAlgorithm.h:517
vtkAlgorithm::INPUT_PORT
static vtkInformationIntegerKey * INPUT_PORT()
vtkAlgorithm::INPUT_IS_OPTIONAL
static vtkInformationIntegerKey * INPUT_IS_OPTIONAL()
vtkAlgorithm::RemoveInputConnection
virtual void RemoveInputConnection(int port, int idx)
vtkAlgorithm::RemoveInputConnection
virtual void RemoveInputConnection(int port, vtkAlgorithmOutput *input)
vtkAlgorithm::GetNumberOfInputPorts
int GetNumberOfInputPorts()
vtkAlgorithm::OutputPortIndexInRange
int OutputPortIndexInRange(int index, const char *action)
vtkAlgorithm::GetOutputPort
vtkAlgorithmOutput * GetOutputPort()
Definition: vtkAlgorithm.h:373
vtkAlgorithm::UpdateProgress
void UpdateProgress(double amount)
vtkAlgorithm::AddInputDataObject
virtual void AddInputDataObject(vtkDataObject *data)
Definition: vtkAlgorithm.h:363
vtkAlgorithm
Superclass for all sources, filters, and sinks in VTK.
Definition: vtkAlgorithm.h:62
vtkAlgorithm::SetInputDataObject
virtual void SetInputDataObject(vtkDataObject *data)
Definition: vtkAlgorithm.h:354
vtkAlgorithm::FillInputPortInformation
virtual int FillInputPortInformation(int port, vtkInformation *info)
vtkAlgorithm::GetInputAbstractArrayToProcess
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, vtkDataObject *input, int &association)
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:41
vtkAlgorithm::HasExecutive
int HasExecutive()
vtkAlgorithm::GetInputAbstractArrayToProcess
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, int connection, vtkInformationVector **inputVector, int &association)
vtkAlgorithm::GetInputPortInformation
vtkInformation * GetInputPortInformation(int port)
vtkAlgorithm::ModifyRequest
virtual int ModifyRequest(vtkInformation *request, int when)
vtkAlgorithm::SetProgressObserver
void SetProgressObserver(vtkProgressObserver *)
vtkAlgorithm::GetInputArrayAssociation
int GetInputArrayAssociation(int idx, vtkInformationVector **inputVector)
vtkAlgorithm::GetUpdateGhostLevel
int GetUpdateGhostLevel()
Definition: vtkAlgorithm.h:559
vtkAlgorithm::GetNumberOfOutputPorts
int GetNumberOfOutputPorts()
vtkAlgorithm::GetInputArrayToProcess
vtkDataArray * GetInputArrayToProcess(int idx, vtkInformationVector **inputVector)
vtkAlgorithm::SetUpdateExtent
void SetUpdateExtent(int piece, int numPieces, int ghostLevel)
Definition: vtkAlgorithm.h:506
vtkTypeMacro
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:642
vtkAlgorithm::ErrorCode
unsigned long ErrorCode
Definition: vtkAlgorithm.h:708
vtkgl::n
GLclampd n
Definition: vtkgl.h:14370
vtkAlgorithm::PropagateUpdateExtent
virtual void PropagateUpdateExtent()
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:62
vtkAlgorithm::GetUpdatePiece
int GetUpdatePiece()
Definition: vtkAlgorithm.h:549
vtkAlgorithm::SetExecutive
virtual void SetExecutive(vtkExecutive *executive)
vtkAlgorithm::SetInputDataInternal
void SetInputDataInternal(int port, vtkDataObject *input)
Definition: vtkAlgorithm.h:743
vtkAlgorithm::GetInputArrayFieldInformation
vtkInformation * GetInputArrayFieldInformation(int idx, vtkInformationVector **inputVector)
vtkAlgorithm::INPUT_REQUIRED_FIELDS
static vtkInformationInformationVectorKey * INPUT_REQUIRED_FIELDS()
vtkDataArray
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:55
vtkCommonExecutionModelModule.h
vtkAlgorithm::GetInputArrayToProcess
vtkDataArray * GetInputArrayToProcess(int idx, int connection, vtkInformationVector **inputVector)
vtkAlgorithm::SetNumberOfInputPorts
virtual void SetNumberOfInputPorts(int n)
vtkgl::input
GLenum GLenum GLenum input
Definition: vtkgl.h:15941
vtkAlgorithm::UnRegister
virtual void UnRegister(vtkObjectBase *o)
vtkAlgorithm::GetInputExecutive
vtkExecutive * GetInputExecutive(int port, int index)
vtkAlgorithm::GetInputAbstractArrayToProcess
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, vtkInformationVector **inputVector)
vtkAlgorithm::GetUpdatePiece
int GetUpdatePiece(int port)
vtkAlgorithm::RemoveAllInputs
void RemoveAllInputs()
vtkAlgorithm::GetExecutive
vtkExecutive * GetExecutive()
vtkAlgorithm::UpdateExtentIsEmpty
int UpdateExtentIsEmpty(vtkInformation *pinfo, int extentType)
vtkAlgorithm::vtkAlgorithm
vtkAlgorithm()
vtkAlgorithm::SetInputArrayToProcess
virtual void SetInputArrayToProcess(int idx, int port, int connection, const char *fieldAssociation, const char *attributeTypeorName)
vtkAlgorithm::ReleaseDataFlagOff
void ReleaseDataFlagOff()
vtkAlgorithm::GetUpdateExtent
void GetUpdateExtent(int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
Definition: vtkAlgorithm.h:531
vtkAlgorithm::GetOutputDataObject
vtkDataObject * GetOutputDataObject(int port)
vtkAlgorithm::ProgressObserver
vtkProgressObserver * ProgressObserver
Definition: vtkAlgorithm.h:749
vtkAlgorithm::GetInputInformation
vtkInformation * GetInputInformation(int port, int index)
vtkAlgorithm::SetUpdateExtent
void SetUpdateExtent(int port, int extent[6])
vtkAlgorithm::GetInputArrayToProcess
vtkDataArray * GetInputArrayToProcess(int idx, int connection, vtkInformationVector **inputVector, int &association)
vtkAlgorithm::UpdateExtentIsEmpty
int UpdateExtentIsEmpty(vtkInformation *pinfo, vtkDataObject *output)
vtkX3D::port
@ port
Definition: vtkX3D.h:447
vtkSetClampMacro
#define vtkSetClampMacro(name, type, min, max)
Definition: vtkSetGet.h:143
vtkAlgorithm::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
vtkgl::name
GLuint const GLchar * name
Definition: vtkgl.h:11983
vtkAlgorithm::AddInputConnection
virtual void AddInputConnection(int port, vtkAlgorithmOutput *input)
vtkExecutive
Superclass for all pipeline executives in VTK.
Definition: vtkExecutive.h:52
vtkCollection
create and manipulate unsorted lists of objects
Definition: vtkCollection.h:53
Update
virtual void Update()
vtkAlgorithm::GetReleaseDataFlag
virtual int GetReleaseDataFlag()
vtkAlgorithm::RemoveAllInputConnections
virtual void RemoveAllInputConnections(int port)
vtkAlgorithm::ConvertTotalInputToPortConnection
void ConvertTotalInputToPortConnection(int ind, int &port, int &conn)
vtkAlgorithm::GetInputConnection
vtkAlgorithmOutput * GetInputConnection(int port, int index)
vtkAlgorithm::GetUpdateNumberOfPieces
int GetUpdateNumberOfPieces()
Definition: vtkAlgorithm.h:554
vtkObjectBase
abstract base class for most VTK objects
Definition: vtkObjectBase.h:60
vtkAlgorithm::GetUpdateExtent
void GetUpdateExtent(int port, int extent[6])
vtkAlgorithm::GetInputAlgorithm
vtkAlgorithm * GetInputAlgorithm(int port, int index, int &algPort)
vtkAlgorithm::GetInputDataObject
vtkDataObject * GetInputDataObject(int port, int connection)
vtkInformationIntegerKey
Key for integer values in vtkInformation.
Definition: vtkInformationIntegerKey.h:34
vtkAlgorithm::GetOutputPort
vtkAlgorithmOutput * GetOutputPort(int index)
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkAlgorithm::INPUT_IS_REPEATABLE
static vtkInformationIntegerKey * INPUT_IS_REPEATABLE()
vtkAlgorithm::GetInputArrayToProcess
vtkDataArray * GetInputArrayToProcess(int idx, vtkInformationVector **inputVector, int &association)
vtkAlgorithm::GetUpdateExtent
int * GetUpdateExtent()
Definition: vtkAlgorithm.h:526
vtkAlgorithm::GetOutputPortInformation
vtkInformation * GetOutputPortInformation(int port)
vtkAlgorithm::ProgressText
char * ProgressText
Definition: vtkAlgorithm.h:714
vtkAlgorithm::Progress
double Progress
Definition: vtkAlgorithm.h:713
vtkGetMacro
#define vtkGetMacro(name, type)
Definition: vtkSetGet.h:93
vtkAlgorithm::AddInputConnection
virtual void AddInputConnection(vtkAlgorithmOutput *input)
vtkGetStringMacro
vtkGetStringMacro(ExtensionsString)
vtkAlgorithm::SetUpdateExtentToWholeExtent
int SetUpdateExtentToWholeExtent(int port)
vtkGarbageCollector
Detect and break reference loops.
Definition: vtkGarbageCollector.h:99
vtkObject.h
vtkAlgorithm::SINGLE_PRECISION
@ SINGLE_PRECISION
Definition: vtkAlgorithm.h:82
vtkAlgorithm::SetUpdateExtentToWholeExtent
int SetUpdateExtentToWholeExtent()
vtkAlgorithm::SetInputArrayToProcess
virtual void SetInputArrayToProcess(int idx, vtkInformation *info)
vtkAbstractArray
Abstract superclass for all arrays.
Definition: vtkAbstractArray.h:65
vtkAlgorithm::GetInputArrayToProcess
vtkDataArray * GetInputArrayToProcess(int idx, vtkDataObject *input, int &association)
vtkBooleanMacro
vtkBooleanMacro(IgnoreDriverBugs, bool)
vtkAlgorithm::SetInputConnection
virtual void SetInputConnection(int port, vtkAlgorithmOutput *input)
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:86
vtkAlgorithm::CAN_HANDLE_PIECE_REQUEST
static vtkInformationIntegerKey * CAN_HANDLE_PIECE_REQUEST()
vtkAlgorithm::SetInputArrayToProcess
virtual void SetInputArrayToProcess(int idx, int port, int connection, int fieldAssociation, int fieldAttributeType)
vtkSetMacro
vtkSetMacro(IgnoreDriverBugs, bool)
vtkX3D::info
@ info
Definition: vtkX3D.h:376
vtkAlgorithm::New
static vtkAlgorithm * New()
vtkgl::index
GLuint index
Definition: vtkgl.h:11983
vtkAlgorithm::ProcessRequest
virtual int ProcessRequest(vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
vtkAlgorithm::GetInputInformation
vtkInformation * GetInputInformation()
Definition: vtkAlgorithm.h:422
vtkAlgorithm::GetInputArrayToProcess
vtkDataArray * GetInputArrayToProcess(int idx, vtkDataObject *input)
vtkAlgorithm::GetInputAlgorithm
vtkAlgorithm * GetInputAlgorithm()
Definition: vtkAlgorithm.h:395
vtkAlgorithm::UpdateInformation
virtual void UpdateInformation()
vtkAlgorithm::AbortExecute
int AbortExecute
Definition: vtkAlgorithm.h:210
vtkAlgorithm::GetUpdateExtent
int * GetUpdateExtent(int port)
vtkAlgorithm::GetInputAbstractArrayToProcess
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, vtkInformationVector **inputVector, int &association)
vtkInformationStringVectorKey
Key for String vector values.
Definition: vtkInformationStringVectorKey.h:34
vtkAlgorithmOutput
Proxy object to connect input/output ports.
Definition: vtkAlgorithmOutput.h:39
vtkAlgorithm::GetInputExecutive
vtkExecutive * GetInputExecutive()
Definition: vtkAlgorithm.h:406
vtkAlgorithm::GetInputArrayInformation
vtkInformation * GetInputArrayInformation(int idx)
vtkInformationInformationVectorKey
Key for vtkInformation vectors.
Definition: vtkInformationInformationVectorKey.h:33
vtkAlgorithm::UpdateWholeExtent
virtual void UpdateWholeExtent()
vtkAlgorithm::GetUpdateNumberOfPieces
int GetUpdateNumberOfPieces(int port)
vtkAlgorithm::GetInputAlgorithm
vtkAlgorithm * GetInputAlgorithm(int port, int index)
vtkAlgorithm::SetDefaultExecutivePrototype
static void SetDefaultExecutivePrototype(vtkExecutive *proto)
vtkAlgorithm::GetUpdateExtent
void GetUpdateExtent(int port, int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
vtkAlgorithm::INPUT_REQUIRED_DATA_TYPE
static vtkInformationStringVectorKey * INPUT_REQUIRED_DATA_TYPE()
vtkAlgorithm::SetNthInputConnection
virtual void SetNthInputConnection(int port, int index, vtkAlgorithmOutput *input)
vtkX3D::extent
@ extent
Definition: vtkX3D.h:345
vtkAlgorithm::UpdateDataObject
virtual void UpdateDataObject()
vtkAlgorithm::ComputePipelineMTime
virtual int ComputePipelineMTime(vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, unsigned long *mtime)
vtkAlgorithm::SetInformation
virtual void SetInformation(vtkInformation *)
vtkAlgorithm::SetNumberOfOutputPorts
virtual void SetNumberOfOutputPorts(int n)
vtkProgressObserver
Basic class to optionally replace vtkAlgorithm progress functionality.
Definition: vtkProgressObserver.h:39
vtkAlgorithm::GetNumberOfInputConnections
int GetNumberOfInputConnections(int port)
vtkAlgorithm::ReportReferences
virtual void ReportReferences(vtkGarbageCollector *)
vtkDataObject
general representation of visualization data
Definition: vtkDataObject.h:65
vtkAlgorithm::DefaultExecutivePrototype
static vtkExecutive * DefaultExecutivePrototype
Definition: vtkAlgorithm.h:736
vtkAlgorithm::SetInputArrayToProcess
virtual void SetInputArrayToProcess(int idx, int port, int connection, int fieldAssociation, const char *name)
vtkAlgorithm::INPUT_CONNECTION
static vtkInformationIntegerKey * INPUT_CONNECTION()
vtkAlgorithm::ProcessRequest
int ProcessRequest(vtkInformation *request, vtkCollection *inInfo, vtkInformationVector *outInfo)
vtkAlgorithm::FillOutputPortInformation
virtual int FillOutputPortInformation(int port, vtkInformation *info)
vtkAlgorithm::SetInputConnection
virtual void SetInputConnection(vtkAlgorithmOutput *input)
vtkAlgorithm::GetInputArrayAssociation
int GetInputArrayAssociation(int idx, int connection, vtkInformationVector **inputVector)
vtkAlgorithm::AddInputDataInternal
void AddInputDataInternal(int port, vtkDataObject *input)
Definition: vtkAlgorithm.h:745
vtkAlgorithm::~vtkAlgorithm
~vtkAlgorithm()
vtkAlgorithm::DesiredOutputPrecision
DesiredOutputPrecision
Definition: vtkAlgorithm.h:81
vtkAlgorithm::SetInputDataObject
virtual void SetInputDataObject(int port, vtkDataObject *data)
vtkAlgorithm::GetOutputInformation
vtkInformation * GetOutputInformation(int port)
vtkAlgorithm::GetUpdateGhostLevel
int GetUpdateGhostLevel(int port)
vtkAlgorithm::GetInputAbstractArrayToProcess
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, vtkDataObject *input)