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:
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 
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
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Store vtkAlgorithm input/output information.
class describing a molecule
Definition: vtkMolecule.h:87
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Read a OpenQube readable file and output a vtkMolecule object.
static vtkDataReader * New()
helper superclass for objects that read vtk data files
Definition: vtkDataReader.h:49
virtual int FillOutputPortInformation(int port, vtkInformation *info)
Fill the output port information objects for this algorithm.
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.