VTK
vtkOpenQubeMoleculeSource.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkOpenQubeMoleculeSource.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 =========================================================================*/
23 #ifndef vtkOpenQubeMoleculeSource_h
24 #define vtkOpenQubeMoleculeSource_h
25 
26 #include "vtkDomainsChemistryModule.h" // For export macro
27 #include "vtkDataReader.h"
28 
29 class vtkMolecule;
30 
31 namespace OpenQube
32 {
33  class Molecule;
34  class BasisSet;
35 }
36 
37 class VTKDOMAINSCHEMISTRY_EXPORT vtkOpenQubeMoleculeSource : public vtkDataReader
38 {
39 public:
40  static vtkOpenQubeMoleculeSource *New();
42  void PrintSelf(ostream& os, vtkIndent indent);
43 
45 
48  vtkMolecule *GetOutput();
49  void SetOutput(vtkMolecule *);
51 
53 
59  vtkSetStringMacro(FileName);
60  vtkGetStringMacro(FileName);
62 
64 
70  virtual void SetBasisSet(OpenQube::BasisSet *b);
71  vtkGetMacro(BasisSet, OpenQube::BasisSet*);
73 
75 
81  vtkSetMacro(CleanUpBasisSet, bool);
82  vtkGetMacro(CleanUpBasisSet, bool);
83  vtkBooleanMacro(CleanUpBasisSet, bool);
85 
86 protected:
89 
90  int RequestData(vtkInformation *, vtkInformationVector **,
92  int FillOutputPortInformation(int, vtkInformation*);
93 
94  char *FileName;
95  OpenQube::BasisSet *BasisSet;
97 
102  void CopyOQMoleculeToVtkMolecule(const OpenQube::Molecule *oqmol,
103  vtkMolecule *mol);
104 
105 private:
106  vtkOpenQubeMoleculeSource(const vtkOpenQubeMoleculeSource&) VTK_DELETE_FUNCTION;
107  void operator=(const vtkOpenQubeMoleculeSource&) VTK_DELETE_FUNCTION;
108 };
109 
110 #endif
Store vtkAlgorithm input/output information.
class describing a molecule
Definition: vtkMolecule.h:87
Read a OpenQube readable file and output a vtkMolecule object.
helper superclass for objects that read vtk data files
Definition: vtkDataReader.h:49
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.