00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00042 #ifndef __vtkExtractSelectedGraph_h
00043 #define __vtkExtractSelectedGraph_h
00044 
00045 #include "vtkGraphAlgorithm.h"
00046 
00047 class vtkSelection;
00048 class vtkDataSet;
00049 
00050 class VTK_INFOVIS_EXPORT vtkExtractSelectedGraph : public vtkGraphAlgorithm
00051 {
00052 public:
00053   static vtkExtractSelectedGraph* New();
00054   vtkTypeMacro(vtkExtractSelectedGraph,vtkGraphAlgorithm);
00055   void PrintSelf(ostream& os, vtkIndent indent);
00056 
00059   void SetSelectionConnection(vtkAlgorithmOutput* in);
00060 
00063   void SetAnnotationLayersConnection(vtkAlgorithmOutput* in);
00064   
00066 
00069   vtkSetMacro(RemoveIsolatedVertices, bool);
00070   vtkGetMacro(RemoveIsolatedVertices, bool);
00071   vtkBooleanMacro(RemoveIsolatedVertices, bool);
00073 
00075   int FillInputPortInformation(int port, vtkInformation* info);
00076 
00077 protected:
00078   vtkExtractSelectedGraph();
00079   ~vtkExtractSelectedGraph();
00080 
00081   int RequestData(
00082     vtkInformation*, 
00083     vtkInformationVector**, 
00084     vtkInformationVector*);
00085   
00086   int RequestDataObject(
00087     vtkInformation*, 
00088     vtkInformationVector**, 
00089     vtkInformationVector*);
00090   
00091   bool RemoveIsolatedVertices;
00092 
00093 private:
00094   vtkExtractSelectedGraph(const vtkExtractSelectedGraph&); 
00095   void operator=(const vtkExtractSelectedGraph&);   
00096 };
00097 
00098 #endif
00099