OEOmegaConfTest has been created specifically for output from
OMEGA. This conftest ignores invertible nitrogen stereochemistry that OMEGA
freely adjusts in order to allow these conformers to be read into the same
The oemolthreadbase::GetMol method for
oemolithread class will now return chunks of
molecule files that can be directly written to files to enable faster
tokenization of a molecule file. Before this release, this method
would often not return whitespace that was necessary to delineate
boundaries between molecules.
OEPerceiveResidues had a bug introduced in the
2012.Feb release that could cause crashes or strange
data to be written to the OEAtomBase::GetName
field whenever OEAtomBase::GetAtomicNum returned
0. Atoms with an atomic number of 0 will now be given the
name of `` UNK`` (note, the leading space to match PDB style
OEAssignAromaticFlags no longer takes an
OEAroModel, which was a unsignedshort* typedef, but takes
an integer from the OEAroModel namespace
instead. Global constants prepended with OEAroModel* are now
deprecated. This works around a serious bug that would sometimes
cause OEAssignAromaticFlags to not do anything to
the molecule. This may break source-level backwards compatibility
for strongly typed languages (C++, Java, and C#) if a global
constant prepended with OEAroModel* was stored as a
Code may have to be ported like the following:
OEAroModelm=OEChem::OEAroModelOpenEye;// change the previous line to the followingunsignedint=OEChem::OEAroModel::OpenEye;OEAssignAromaticFlags(mol,m);
OEParseCommandLine will now call exit(0) if
the internal call to OECheckHelp returns
true that a --help parameter is found. That is, program
execution with the --help parameter should not be considered
abnormal program termination.
OESystem::OEBitVector::ToHexString documentation has been
corrected to explain their behavior with respect to bit vector
lengths and the handling of non-hexadecimal digits in the
oeiofstream class added to support reading and
writing to the same open file.
oeistream::read method added to read the
entire contents of the stream or throw std::bad_alloc whenever
the system runs out of memory.
oeistream methods that read into
std::string objects have been significantly optimized.
OEPlatform::oeifstream::getline that takes a
std::string without a size parameter was arbitrarily capped
to only read a line 64K long. The method will now keep reading
data provided there is enough memory to allocate for the
OE_CURRENT_FUNCTION macro added that provides a constchar*
to the name of the current C++ function.
OEPlatform::oeifstream::getline would sometimes cause
buffer overflows whenever max characters were actually in the
line. The documentation was not very clear what this max
parameter meant, it used to be the line size, not including the null
terminator. Now it means the size of available memory in the buffer
passed in, including the null terminator, and the documentation is
now more clear on the subject.
OEPlatform::oeifstream::append will now close the previous
file before opening the next file. Before, calling the append
method in a loop could lead to the process easily running out of a
available file descriptors.
The macros OE32BIT and OE64BIT were improperly set on 64-bit