1 //
2 // File:          NWChem_Chemistry_QC_GaussianBasisSet_Impl.hh
3 // Symbol:        NWChem.Chemistry_QC_GaussianBasisSet-v0.4
4 // Symbol Type:   class
5 // Babel Version: 0.10.12
6 // Description:   Server-side implementation for NWChem.Chemistry_QC_GaussianBasisSet
7 //
8 // WARNING: Automatically generated; only changes within splicers preserved
9 //
10 // babel-version = 0.10.12
11 // xml-url       = /home/windus/CCA/mcmd-paper/nwchem/src/cca/repo/NWChem.Chemistry_QC_GaussianBasisSet-v0.4.xml
12 //
13 
14 #ifndef included_NWChem_Chemistry_QC_GaussianBasisSet_Impl_hh
15 #define included_NWChem_Chemistry_QC_GaussianBasisSet_Impl_hh
16 
17 #ifndef included_sidl_cxx_hh
18 #include "sidl_cxx.hh"
19 #endif
20 #ifndef included_NWChem_Chemistry_QC_GaussianBasisSet_IOR_h
21 #include "NWChem_Chemistry_QC_GaussianBasisSet_IOR.h"
22 #endif
23 //
24 // Includes for all method dependencies.
25 //
26 #ifndef included_Chemistry_Molecule_hh
27 #include "Chemistry_Molecule.hh"
28 #endif
29 #ifndef included_Chemistry_QC_GaussianBasis_AngularType_hh
30 #include "Chemistry_QC_GaussianBasis_AngularType.hh"
31 #endif
32 #ifndef included_Chemistry_QC_GaussianBasis_Atomic_hh
33 #include "Chemistry_QC_GaussianBasis_Atomic.hh"
34 #endif
35 #ifndef included_NWChem_Chemistry_QC_GaussianBasisSet_hh
36 #include "NWChem_Chemistry_QC_GaussianBasisSet.hh"
37 #endif
38 #ifndef included_sidl_BaseException_hh
39 #include "sidl_BaseException.hh"
40 #endif
41 #ifndef included_sidl_BaseInterface_hh
42 #include "sidl_BaseInterface.hh"
43 #endif
44 #ifndef included_sidl_ClassInfo_hh
45 #include "sidl_ClassInfo.hh"
46 #endif
47 
48 
49 // DO-NOT-DELETE splicer.begin(NWChem.Chemistry_QC_GaussianBasisSet._includes)
50 // Insert-Code-Here {NWChem.Chemistry_QC_GaussianBasisSet._includes} (includes or arbitrary code)
51 // DO-NOT-DELETE splicer.end(NWChem.Chemistry_QC_GaussianBasisSet._includes)
52 
53 namespace NWChem {
54 
55   /**
56    * Symbol "NWChem.Chemistry_QC_GaussianBasisSet" (version 0.4)
57    */
58   class Chemistry_QC_GaussianBasisSet_impl
59   // DO-NOT-DELETE splicer.begin(NWChem.Chemistry_QC_GaussianBasisSet._inherits)
60   // Insert-Code-Here {NWChem.Chemistry_QC_GaussianBasisSet._inherits} (optional inheritance here)
61   // DO-NOT-DELETE splicer.end(NWChem.Chemistry_QC_GaussianBasisSet._inherits)
62   {
63 
64   private:
65     // Pointer back to IOR.
66     // Use this to dispatch back through IOR vtable.
67     Chemistry_QC_GaussianBasisSet self;
68 
69     // DO-NOT-DELETE splicer.begin(NWChem.Chemistry_QC_GaussianBasisSet._implementation)
70     // Insert-Code-Here {NWChem.Chemistry_QC_GaussianBasisSet._implementation} (additional details)
71     // DO-NOT-DELETE splicer.end(NWChem.Chemistry_QC_GaussianBasisSet._implementation)
72 
73   private:
74     // private default constructor (required)
Chemistry_QC_GaussianBasisSet_impl()75     Chemistry_QC_GaussianBasisSet_impl()
76     {}
77 
78   public:
79     // sidl constructor (required)
80     // Note: alternate Skel constructor doesn't call addref()
81     // (fixes bug #275)
Chemistry_QC_GaussianBasisSet_impl(struct NWChem_Chemistry_QC_GaussianBasisSet__object * s)82     Chemistry_QC_GaussianBasisSet_impl( struct
83       NWChem_Chemistry_QC_GaussianBasisSet__object * s ) : self(s,
84       true) { _ctor(); }
85 
86     // user defined construction
87     void _ctor();
88 
89     // virtual destructor (required)
~Chemistry_QC_GaussianBasisSet_impl()90     virtual ~Chemistry_QC_GaussianBasisSet_impl() { _dtor(); }
91 
92     // user defined destruction
93     void _dtor();
94 
95     // static class initializer
96     static void _load();
97 
98   public:
99 
100 
101     /**
102      * Get the user specified name.
103      * @return name
104      */
105     ::std::string
106     get_label() throw (
107       ::sidl::BaseException
108     );
109 
110     /**
111      * Get the number of basis functions.
112      * @return number of functions
113      */
114     int64_t
115     get_n_basis() throw (
116       ::sidl::BaseException
117     );
118 
119     /**
120      * Get the number of shells.
121      * @return number of shells
122      */
123     int64_t
124     get_n_shell() throw (
125       ::sidl::BaseException
126     );
127 
128     /**
129      * Get the max angular momentum for any contraction in the
130      * basis set.
131      * @return max angular momentum
132      */
133     int32_t
134     get_max_angular_momentum() throw (
135       ::sidl::BaseException
136     );
137 
138     /**
139      * Get the angular type.
140      * @return enum AngularType
141      */
142     ::Chemistry::QC::GaussianBasis::AngularType
143     get_angular_type() throw (
144       ::sidl::BaseException
145     );
146 
147     /**
148      * Get an atomic basis set.
149      * @param atomnum atom number
150      * @return Atomic
151      */
152     ::Chemistry::QC::GaussianBasis::Atomic
153     get_atomic (
154       /* in */ int64_t atomnum
155     )
156     throw (
157       ::sidl::BaseException
158     );
159 
160 
161     /**
162      * Get the molecule.
163      * @return Molecule
164      */
165     ::Chemistry::Molecule
166     get_molecule() throw (
167       ::sidl::BaseException
168     );
169 
170     /**
171      * Print the molecular basis data.
172      */
173     void
174     print_molecular() throw (
175       ::sidl::BaseException
176     );
177   };  // end class Chemistry_QC_GaussianBasisSet_impl
178 
179 } // end namespace NWChem
180 
181 // DO-NOT-DELETE splicer.begin(NWChem.Chemistry_QC_GaussianBasisSet._misc)
182 // Insert-Code-Here {NWChem.Chemistry_QC_GaussianBasisSet._misc} (miscellaneous things)
183 // DO-NOT-DELETE splicer.end(NWChem.Chemistry_QC_GaussianBasisSet._misc)
184 
185 #endif
186