The OEMolRecord class is a subclass of OERecord, with additional convenience methods for handling molecules. All public methods from OERecord are inherited. This class has a “primary” molecule field, to which several convenience methods apply.
The default constructor initializes the record object to an empty record with no fields or values.
OEMolRecord(const OERecord &rhs)
Copy constructor. OEMolRecords can be constructed from OERecords, and vice versa, without any loss of data.
get_primary_mol_field(def_name: str="Molecule", meta: OEFieldMeta=None) -> object
Retrieves the primary molecule field from the record. If no primary molecule field exists, this will return a field of type Types.Chem.Molecule with the name “Molecule”.
- The name to be used for the molecule field if a primary molecule field doesn’t already exist ont he record.
- An optional OEFieldMeta object specifying metadata for the field.
get_mol(field: OEFieldBase) -> OEMol
Retrieves a molecule from the record. If no field is specified, the record’s primary molecule is returned. If no primary molecule exists, None is returned.
- The field to retrieve the molecule from. If this is omitted, the record’s primary molecule will be returned.
has_mol(field: OEFieldBase=None) -> bool
Returns True if the record has a molecule in the specified field, or a primary molecule if no field is supplied.
- The field to check for the presence of a molecule. If this is omitted, the record’s primary molecule will be used.
set_mol(mol: OEMol, field: OEFieldBase=None, meta: OEFieldMeta=None) -> bool
Sets a molecule on the record using the specified field. If no field is supplied, the primary molecule is set.
- The molecule to be copied to the record.
- The field to store the molecule on. If this is omitted, the molecule will be stored as the record’s primary molecule.
- Optional metadata to store on the field.
get_mol_reference(field: OEFieldBase=None) -> OEMol
Returns a reference to the molecule from the specified field on the record, or to the primary molecule if no field is supplied. If no such molecule exists on the record, None is returned.
- The field from which the molecule pointer is obtained. If this argument is omitted, a pointer to the primary molecule is returned.
This method will return a reference to the actual molecule on the record, so any modifications to this molecule will affect the record contents.
set_mol_reference(mol: OEMol, field: OEFieldBase=None, meta: OEFieldMeta=None) -> bool
This method puts a reference to the passed OEMol onto the record, in the specified field. If no field is provided, the record’s primary molecule is set. While the OEMolRecord.SetMol method places a copy of the passed molecule onto the record, this method avoids creating a copy, and may in some cases improve performance.
- The molecule to be placed on the record.
- The field to store the molecule in. If this is omitted the molecule will be stored in the record’s primary molecule field.
- Optional metadata to be stored on the field.
get_conf_record(conf: OEConfBase) -> OERecord
Returns a record for the provided conformer. OEMolRecord provides a mechanism for storing a record of data for each conformer. If the passed conformer doesn’t already have a record associated with it, this will return an empty OERecord.
- The conformer the record will be associated with.
set_conf_record(conf: OEConfBase, child_record: OERecord) -> null
This method associates data on a record with a conformer. The conformer’s parent molecule must be stored in a field on the parent record after this method is called, or stored using the OEMolRecord.set_mol_reference method. Otherwise, the conformer data will be lost during serialization.
- A record containing data for the conformer.