MPQC 2.3.1
|
00001 // 00002 // File: MPQC_Chemistry_Molecule_Impl.hh 00003 // Symbol: MPQC.Chemistry_Molecule-v0.2 00004 // Symbol Type: class 00005 // Babel Version: 0.8.6 00006 // Description: Server-side implementation for MPQC.Chemistry_Molecule 00007 // 00008 // WARNING: Automatically generated; only changes within splicers preserved 00009 // 00010 // babel-version = 0.8.6 00011 // 00012 00013 #ifndef included_MPQC_Chemistry_Molecule_Impl_hh 00014 #define included_MPQC_Chemistry_Molecule_Impl_hh 00015 00016 #ifndef included_sidl_cxx_hh 00017 #include "sidl_cxx.hh" 00018 #endif 00019 #ifndef included_MPQC_Chemistry_Molecule_IOR_h 00020 #include "MPQC_Chemistry_Molecule_IOR.h" 00021 #endif 00022 // 00023 // Includes for all method dependencies. 00024 // 00025 #ifndef included_MPQC_Chemistry_Molecule_hh 00026 #include "MPQC_Chemistry_Molecule.hh" 00027 #endif 00028 #ifndef included_Physics_PointGroup_hh 00029 #include "Physics_PointGroup.hh" 00030 #endif 00031 #ifndef included_Physics_Units_hh 00032 #include "Physics_Units.hh" 00033 #endif 00034 #ifndef included_sidl_BaseInterface_hh 00035 #include "sidl_BaseInterface.hh" 00036 #endif 00037 #ifndef included_sidl_ClassInfo_hh 00038 #include "sidl_ClassInfo.hh" 00039 #endif 00040 #ifndef included_gov_cca_Services_hh 00041 #include "gov_cca_Services.hh" 00042 #endif 00043 00044 00045 // DO-NOT-DELETE splicer.begin(MPQC.Chemistry_Molecule._includes) 00046 #include <chemistry/molecule/molecule.h> 00047 // DO-NOT-DELETE splicer.end(MPQC.Chemistry_Molecule._includes) 00048 00049 namespace MPQC { 00050 00054 class Chemistry_Molecule_impl 00055 // DO-NOT-DELETE splicer.begin(MPQC.Chemistry_Molecule._inherits) 00056 00067 // Put additional inheritance here... 00068 // DO-NOT-DELETE splicer.end(MPQC.Chemistry_Molecule._inherits) 00069 { 00070 00071 private: 00072 // Pointer back to IOR. 00073 // Use this to dispatch back through IOR vtable. 00074 Chemistry_Molecule self; 00075 00076 // DO-NOT-DELETE splicer.begin(MPQC.Chemistry_Molecule._implementation) 00077 double net_charge; 00078 sc::Ref< sc::Molecule> mol; 00079 // DO-NOT-DELETE splicer.end(MPQC.Chemistry_Molecule._implementation) 00080 00081 private: 00082 // private default constructor (required) 00083 Chemistry_Molecule_impl() {} 00084 00085 public: 00086 // sidl constructor (required) 00087 // Note: alternate Skel constructor doesn't call addref() 00088 // (fixes bug #275) 00089 Chemistry_Molecule_impl( struct MPQC_Chemistry_Molecule__object * s ) : 00090 self(s,true) { _ctor(); } 00091 00092 // user defined construction 00093 void _ctor(); 00094 00095 // virtual destructor (required) 00096 virtual ~Chemistry_Molecule_impl() { _dtor(); } 00097 00098 // user defined destruction 00099 void _dtor(); 00100 00101 public: 00102 00106 void 00107 initialize_pointer ( 00108 /*in*/ void* ptr 00109 ) 00110 throw () 00111 ; 00112 00113 00122 void 00123 setServices ( 00124 /*in*/ ::gov::cca::Services services 00125 ) 00126 throw () 00127 ; 00128 00132 void 00133 initialize ( 00134 /*in*/ int32_t natom 00135 ) 00136 throw () 00137 ; 00138 00142 ::Physics::Units 00143 get_units() throw () 00144 ; 00148 int64_t 00149 get_n_atom() throw () 00150 ; 00154 int64_t 00155 get_atomic_number ( 00156 /*in*/ int64_t atomnum 00157 ) 00158 throw () 00159 ; 00160 00164 void 00165 set_atomic_number ( 00166 /*in*/ int64_t atomnum, 00167 /*in*/ int64_t atomic_number 00168 ) 00169 throw () 00170 ; 00171 00175 double 00176 get_net_charge() throw () 00177 ; 00181 void 00182 set_net_charge ( 00183 /*in*/ double charge 00184 ) 00185 throw () 00186 ; 00187 00191 double 00192 get_cart_coor ( 00193 /*in*/ int64_t atomnum, 00194 /*in*/ int32_t xyz 00195 ) 00196 throw () 00197 ; 00198 00202 void 00203 set_cart_coor ( 00204 /*in*/ int64_t atomnum, 00205 /*in*/ int32_t xyz, 00206 /*in*/ double val 00207 ) 00208 throw () 00209 ; 00210 00214 ::std::string 00215 get_atomic_label ( 00216 /*in*/ int64_t atomnum 00217 ) 00218 throw () 00219 ; 00220 00224 void 00225 set_atomic_label ( 00226 /*in*/ int64_t atomnum, 00227 /*in*/ const ::std::string& label 00228 ) 00229 throw () 00230 ; 00231 00235 ::Physics::PointGroup 00236 get_symmetry() throw () 00237 ; 00241 ::sidl::array<double> 00242 get_coor() throw () 00243 ; 00247 void 00248 set_coor ( 00249 /*in*/ ::sidl::array<double> x 00250 ) 00251 throw () 00252 ; 00253 00254 }; // end class Chemistry_Molecule_impl 00255 00256 } // end namespace MPQC 00257 00258 // DO-NOT-DELETE splicer.begin(MPQC.Chemistry_Molecule._misc) 00259 // Put miscellaneous things here... 00260 // DO-NOT-DELETE splicer.end(MPQC.Chemistry_Molecule._misc) 00261 00262 #endif