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