VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkSQLGraphReader.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00015 /*------------------------------------------------------------------------- 00016 Copyright 2008 Sandia Corporation. 00017 Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, 00018 the U.S. Government retains certain rights in this software. 00019 -------------------------------------------------------------------------*/ 00058 #ifndef vtkSQLGraphReader_h 00059 #define vtkSQLGraphReader_h 00060 00061 #include "vtkIOSQLModule.h" // For export macro 00062 #include "vtkGraphAlgorithm.h" 00063 00064 class vtkSQLQuery; 00065 00066 class VTKIOSQL_EXPORT vtkSQLGraphReader : public vtkGraphAlgorithm 00067 { 00068 public: 00069 static vtkSQLGraphReader* New(); 00070 vtkTypeMacro(vtkSQLGraphReader,vtkGraphAlgorithm); 00071 void PrintSelf(ostream& os, vtkIndent indent); 00072 00074 00076 vtkSetMacro(Directed, bool); 00077 vtkGetMacro(Directed, bool); 00078 vtkBooleanMacro(Directed, bool); 00080 00082 00083 virtual void SetVertexQuery(vtkSQLQuery* q); 00084 vtkGetObjectMacro(VertexQuery, vtkSQLQuery); 00086 00088 00089 virtual void SetEdgeQuery(vtkSQLQuery* q); 00090 vtkGetObjectMacro(EdgeQuery, vtkSQLQuery); 00092 00094 00096 vtkSetStringMacro(SourceField); 00097 vtkGetStringMacro(SourceField); 00099 00101 00103 vtkSetStringMacro(TargetField); 00104 vtkGetStringMacro(TargetField); 00106 00108 00109 vtkSetStringMacro(VertexIdField); 00110 vtkGetStringMacro(VertexIdField); 00112 00114 00115 vtkSetStringMacro(XField); 00116 vtkGetStringMacro(XField); 00118 00120 00121 vtkSetStringMacro(YField); 00122 vtkGetStringMacro(YField); 00124 00126 00127 vtkSetStringMacro(ZField); 00128 vtkGetStringMacro(ZField); 00130 00132 00137 vtkSetMacro(CollapseEdges, bool); 00138 vtkGetMacro(CollapseEdges, bool); 00139 vtkBooleanMacro(CollapseEdges, bool); 00141 00142 protected: 00143 vtkSQLGraphReader(); 00144 ~vtkSQLGraphReader(); 00145 00146 bool Directed; 00147 bool CollapseEdges; 00148 vtkSQLQuery* EdgeQuery; 00149 vtkSQLQuery* VertexQuery; 00150 char* SourceField; 00151 char* TargetField; 00152 char* VertexIdField; 00153 char* XField; 00154 char* YField; 00155 char* ZField; 00156 00157 virtual int RequestData( 00158 vtkInformation*, 00159 vtkInformationVector**, 00160 vtkInformationVector*); 00161 00162 virtual int RequestDataObject( 00163 vtkInformation*, 00164 vtkInformationVector**, 00165 vtkInformationVector*); 00166 00167 private: 00168 vtkSQLGraphReader(const vtkSQLGraphReader&); // Not implemented 00169 void operator=(const vtkSQLGraphReader&); // Not implemented 00170 }; 00171 00172 #endif 00173