1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446
|
/*
* $Id$
*
* Copyright (c) 2010, Novartis Institutes for BioMedical Research Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above
* copyright notice, this list of conditions and the following
* disclaimer in the documentation and/or other materials provided
* with the distribution.
* * Neither the name of Novartis Institutes for BioMedical Research Inc.
* nor the names of its contributors may be used to endorse or promote
* products derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
%typemap(javaimports) RDKit::ROMol "
/**
ROMol is a molecule class that is intended to have a fixed topology.
<p>
This is the primary class for most molecule operations.
<p>
If you need to be manipulating the molecule (e.g. adding or deleting atoms or bonds, use an RWMol instead.
<p>
<p>
@notes
<li>each ROMol maintains a Dict of properties:
<li>o Each property is keyed by name and can store an arbitrary type.
<li>o Properties can be marked as calculated, in which case they will be cleared when the clearComputedProps() method is called.
<li>o Because they have no impact upon chemistry, all property operations are const, this allows extra flexibility for clients who need to store extra data on ROMol objects.
<li>each ROMol has collections of bookmarks for Atoms and Bonds:
<li>o the Atom bookmarks and Bond bookmarks are stored separately from each other
<li>o each bookmark, an integer, can map to more than one Atom or Bond
<li>o these are currently used in molecule construction, but could also be useful for reaction mapping and the like
<li>information about rings (SSSR and the like) is stored in the molecule's RingInfo pointer.
*/"
%javamethodmodifiers RDKit::ROMol::addConformer ( Conformer * conf, bool assignId = false ) "
/**
<p>
Add a new conformation to the molecule.
<p>
<p>
@param
conf - conformation to be added to the molecule, this molecule takes ownership of the conformer
assignId - a unique ID will be assigned to the the conformation if true otherwise it is assumed that the conformation already has an (unique) ID set
*/
public";
%javamethodmodifiers RDKit::ROMol::beginAromaticAtoms ( ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::beginAtoms ( ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::beginBonds ( ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::beginHeteros ( ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::beginQueryAtoms ( QueryAtom const * what ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::clearAtomBookmark ( const int mark, ATOM_SPTR atom ) "
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::clearBondBookmark ( int mark, BOND_SPTR bond ) "
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::clearProp ( const std::string key ) const "
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::clearProp ( const char * key ) const "
/**
<p>
clears the value of a property
<p>
<p>
@notes
<li>if no property with name key exists, a KeyErrorException will be thrown.
<li>if the property is marked as computed, it will also be removed from our list of computedProperties
*/
public";
%javamethodmodifiers RDKit::ROMol::endAromaticAtoms ( ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::endAtoms ( ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::endBonds ( ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::endHeteros ( ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::endQueryAtoms ( ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::getAtomBonds ( Atom const * at ) const"
/**
<p>
provides access to all Bond objects connected to an Atom
<p>
<p>
@param
at the atom whose neighbors we are looking for
<p>
@example
<pre><code>
... molPtr is a const ROMol * ...
... atomPtr is a const Atom * ...
ROMol::OEDGE_ITER beg,end;
boost::tie(beg,end) = molPtr->getAtomBonds(atomPtr);
while(beg!=end){
const BOND_SPTR bond=(*molPtr)[*beg];
... do something with the Bond ...
++beg;
}
</code></pre>
or, if you need a non-const Bond *:
<p>
... molPtr is a ROMol * ...
... atomPtr is a const Atom * ...
ROMol::OEDGE_ITER beg,end;
boost::tie(beg,end) = molPtr->getAtomBonds(atomPtr);
while(beg!=end){
BOND_SPTR bond=(*molPtr)[*beg];
... do something with the Bond ...
++beg;
}
*/
public";
%javamethodmodifiers RDKit::ROMol::getAtomDegree ( Atom::ATOM_SPTR at ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::getAtomNeighbors ( Atom::ATOM_SPTR at ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::getAtomNeighbors ( Atom const * at ) const"
/**
<p>
provides access to all neighbors around an Atom
<p>
<p>
@param
at the atom whose neighbors we are looking for
<p>
@example
<pre><code>
... molPtr is a const ROMol & ...
... atomPtr is a const Atom * ...
ROMol::ADJ_ITER nbrIdx,endNbrs;
boost::tie(nbrIdx,endNbrs) = molPtr.getAtomNeighbors(atomPtr);
while(nbrIdx!=endNbrs){
const ATOM_SPTR at=molPtr[*nbrIdx];
... do something with the Atom ...
++nbrIdx;
}
</code></pre>
*/
public";
%javamethodmodifiers RDKit::ROMol::getAtomWithIdx ( unsigned int idx ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::getBondBetweenAtoms ( unsigned int idx1, unsigned int idx2 ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::getBondWithIdx ( unsigned int idx ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::getConformer ( int id = -1 ) "
/**
<p>
return the conformer with a specified ID if the ID is negative the first conformation will be returned
*/
public";
%javamethodmodifiers RDKit::ROMol::getConformer ( int id = -1 ) const"
/**
<p>
return the conformer with a specified ID if the ID is negative the first conformation will be returned
*/
public";
%javamethodmodifiers RDKit::ROMol::getEdges ( ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::getEdges ( ) "
/**
<p>
<p>
@return
an iterator pair for looping over all Bonds
<p>
@example
<pre><code>
ROMol::EDGE_ITER firstB,lastB;
boost::tie(firstB,lastB) = mol.getEdges();
while(firstB!=lastB){
BOND_SPTR bond = mol[*firstB];
... do something with the Bond ...
++firstB;
}
</code></pre>
template<typename T >
*/
public";
%javamethodmodifiers RDKit::ROMol::getProp ( const std::string key, T & res ) const "
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
template<typename T >
*/
public";
%javamethodmodifiers RDKit::ROMol::getProp ( const char * key, T & res ) const "
/**
<p>
allows retrieval of a particular property value
<p>
<p>
@param
key the name under which the property should be stored. If a property is already stored under this name, it will be replaced.
res a reference to the storage location for the value.
<p>
@notes
<li>if no property with name key exists, a KeyErrorException will be thrown.
<li>the boost::lexical_cast machinery is used to attempt type conversions. If this fails, a boost::bad_lexical_cast exception will be thrown.
*/
public";
%javamethodmodifiers RDKit::ROMol::getRingInfo ( ) const "
/**
<p>
<p>
@return
a pointer to our RingInfo structure Note: the client should not delete this.
.
*/
public";
%javamethodmodifiers RDKit::ROMol::getTopology ( ) const "
/**
<p>
brief returns a pointer to our underlying BGL object
<p>
This can be useful if you need to call other BGL algorithms:
<p>
Here's an example:
<p>
... mol is a const ROMol ...
... mapping is an INT_VECT ...
mapping.resize(mol.getNumAtoms());
const MolGraph &G_p = mol.getTopology();
int res = boost::connected_components(G_p,&mapping[0]);
*/
public";
%javamethodmodifiers RDKit::ROMol::getVertices ( ) const"
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::getVertices ( ) "
/**
<p>
<p>
@return
an iterator pair for looping over all Atoms
<p>
@example
<pre><code>
ROMol::VERTEX_ITER atBegin,atEnd;
boost::tie(atBegin,atEnd) = mol.getVertices();
while(atBegin!=atEnd){
ATOM_SPTR at2=mol[*atBegin];
... do something with the Atom ...
++atBegin;
}
</code></pre>
*/
public";
%javamethodmodifiers RDKit::ROMol::hasProp ( const std::string key ) const "
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::setAtomBookmark ( Atom * at, int mark ) "
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
*/
public";
%javamethodmodifiers RDKit::ROMol::setBondBookmark ( Bond * bond, int mark ) "
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
template<typename T >
*/
public";
%javamethodmodifiers RDKit::ROMol::setProp ( const std::string key, T val, bool computed = false ) const "
/**
<p>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
template<typename T >
*/
public";
%javamethodmodifiers RDKit::ROMol::setProp ( const char * key, T val, bool computed = false ) const "
/**
<p>
sets a property value
<p>
<p>
@param
key the name under which the property should be stored. If a property is already stored under this name, it will be replaced.
val the value to be stored
computed (optional) allows the property to be flagged computed.
*/
public";
%javamethodmodifiers RDKit::ROMol::updatePropertyCache ( bool strict = true ) "
/**
<p>
calculates any of our lazy properties
<p>
<p>
@notes
<li>this calls updatePropertyCache() on each of our Atoms and Bonds
*/
public";
|