Skip to content

Commit

Permalink
Backmerge: #2060 Label for unknown monomer is wrong
Browse files Browse the repository at this point in the history
Backmerge to master
  • Loading branch information
AliaksandrDziarkach committed Jul 4, 2024
1 parent 87c07ba commit 28a7817
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 25 deletions.
12 changes: 6 additions & 6 deletions api/tests/integration/tests/formats/ref/idt_unresolved.ket
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
"x": 0.0,
"y": -0.0
},
"alias": "unknown_monomer_with_idt_alias_unr1",
"alias": "unr1",
"templateId": "unknown_monomer_with_idt_alias_unr1"
},
"monomer1": {
Expand All @@ -49,16 +49,16 @@
"x": 1.600000023841858,
"y": -0.0
},
"alias": "unknown_monomer_with_idt_alias_unr2",
"alias": "unr2",
"templateId": "unknown_monomer_with_idt_alias_unr2"
},
"monomerTemplate-unknown_monomer_with_idt_alias_unr1": {
"type": "monomerTemplate",
"id": "unknown_monomer_with_idt_alias_unr1",
"class": "Chem",
"classHELM": "CHEM",
"alias": "unknown_monomer_with_idt_alias_unr1",
"name": "unknown_monomer_with_idt_alias_unr1",
"alias": "unr1",
"name": "unr1",
"unresolved": true,
"idtAliases": {
"base": "unr1",
Expand Down Expand Up @@ -90,8 +90,8 @@
"id": "unknown_monomer_with_idt_alias_unr2",
"class": "Chem",
"classHELM": "CHEM",
"alias": "unknown_monomer_with_idt_alias_unr2",
"name": "unknown_monomer_with_idt_alias_unr2",
"alias": "unr2",
"name": "unr2",
"unresolved": true,
"idtAliases": {
"base": "unr2",
Expand Down
30 changes: 15 additions & 15 deletions api/tests/integration/tests/formats/ref/idt_unresolved_many.ket
Original file line number Diff line number Diff line change
Expand Up @@ -401,7 +401,7 @@
"x": 0.0,
"y": -0.0
},
"alias": "unknown_monomer_with_idt_alias_unr0",
"alias": "unr0",
"templateId": "unknown_monomer_with_idt_alias_unr0"
},
"monomer1": {
Expand Down Expand Up @@ -445,7 +445,7 @@
"x": 4.800000190734863,
"y": -0.0
},
"alias": "unknown_monomer_with_idt_alias_unr1",
"alias": "unr1",
"templateId": "unknown_monomer_with_idt_alias_unr1"
},
"monomer5": {
Expand Down Expand Up @@ -489,7 +489,7 @@
"x": 9.600000381469727,
"y": -0.0
},
"alias": "unknown_monomer_with_idt_alias_unr2",
"alias": "unr2",
"templateId": "unknown_monomer_with_idt_alias_unr2"
},
"monomer9": {
Expand Down Expand Up @@ -632,7 +632,7 @@
"x": 24.0,
"y": -0.0
},
"alias": "unknown_monomer_with_idt_alias_unr3",
"alias": "unr3",
"templateId": "unknown_monomer_with_idt_alias_unr3"
},
"monomer22": {
Expand Down Expand Up @@ -676,16 +676,16 @@
"x": 28.80000114440918,
"y": -0.0
},
"alias": "unknown_monomer_with_idt_alias_unr4",
"alias": "unr4",
"templateId": "unknown_monomer_with_idt_alias_unr4"
},
"monomerTemplate-unknown_monomer_with_idt_alias_unr0": {
"type": "monomerTemplate",
"id": "unknown_monomer_with_idt_alias_unr0",
"class": "Chem",
"classHELM": "CHEM",
"alias": "unknown_monomer_with_idt_alias_unr0",
"name": "unknown_monomer_with_idt_alias_unr0",
"alias": "unr0",
"name": "unr0",
"unresolved": true,
"idtAliases": {
"base": "unr0",
Expand Down Expand Up @@ -1226,8 +1226,8 @@
"id": "unknown_monomer_with_idt_alias_unr1",
"class": "Chem",
"classHELM": "CHEM",
"alias": "unknown_monomer_with_idt_alias_unr1",
"name": "unknown_monomer_with_idt_alias_unr1",
"alias": "unr1",
"name": "unr1",
"unresolved": true,
"idtAliases": {
"base": "unr1",
Expand Down Expand Up @@ -1419,8 +1419,8 @@
"id": "unknown_monomer_with_idt_alias_unr2",
"class": "Chem",
"classHELM": "CHEM",
"alias": "unknown_monomer_with_idt_alias_unr2",
"name": "unknown_monomer_with_idt_alias_unr2",
"alias": "unr2",
"name": "unr2",
"unresolved": true,
"idtAliases": {
"base": "unr2",
Expand Down Expand Up @@ -1839,8 +1839,8 @@
"id": "unknown_monomer_with_idt_alias_unr3",
"class": "Chem",
"classHELM": "CHEM",
"alias": "unknown_monomer_with_idt_alias_unr3",
"name": "unknown_monomer_with_idt_alias_unr3",
"alias": "unr3",
"name": "unr3",
"unresolved": true,
"idtAliases": {
"base": "unr3",
Expand Down Expand Up @@ -1872,8 +1872,8 @@
"id": "unknown_monomer_with_idt_alias_unr4",
"class": "Chem",
"classHELM": "CHEM",
"alias": "unknown_monomer_with_idt_alias_unr4",
"name": "unknown_monomer_with_idt_alias_unr4",
"alias": "unr4",
"name": "unr4",
"unresolved": true,
"idtAliases": {
"base": "unr4",
Expand Down
10 changes: 6 additions & 4 deletions core/indigo-core/molecule/src/sequence_loader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -506,6 +506,7 @@ void SequenceLoader::loadIdt(BaseMolecule& mol)
std::string base = "";
std::string single_monomer = "";
std::string single_monomer_class;
bool unresolved = false;

if (token.first.back() == '/')
{
Expand Down Expand Up @@ -647,8 +648,8 @@ void SequenceLoader::loadIdt(BaseMolecule& mol)
single_monomer = "unknown_monomer_with_idt_alias_" + idt_alias;
auto monomer_class = MonomerClass::CHEM;
single_monomer_class = MonomerTemplates::classToStr(monomer_class);
t_group.tgroup_name.readString(single_monomer.c_str(), true);
t_group.tgroup_alias.readString(single_monomer.c_str(), true);
t_group.tgroup_name.readString(idt_alias.c_str(), true);
t_group.tgroup_alias.readString(idt_alias.c_str(), true);
t_group.tgroup_text_id.readString(single_monomer.c_str(), true);
// t_group.tgroup_natreplace.readString(single_monomer.c_str(), true);
t_group.tgroup_class.readString(single_monomer_class.c_str(), true);
Expand All @@ -665,7 +666,8 @@ void SequenceLoader::loadIdt(BaseMolecule& mol)
atp.apid.readString(ap, true);
}
sa.unresolved = true;
MonomerTemplate monomer_template(single_monomer, monomer_class, "", single_monomer, single_monomer, single_monomer, true, t_group);
unresolved = true;
MonomerTemplate monomer_template(single_monomer, monomer_class, "", idt_alias, idt_alias, "", true, t_group);
monomer_template.setIdtAlias(IdtAlias(idt_alias, idt_alias, idt_alias, idt_alias)); // Unresoved monomer could be in any position
checkAddTemplate(mol, monomer_template);
}
Expand All @@ -674,7 +676,7 @@ void SequenceLoader::loadIdt(BaseMolecule& mol)

if (single_monomer.size())
{
int monomer_idx = addTemplateAtom(mol, single_monomer.c_str(), single_monomer_class.c_str(), _seq_id);
int monomer_idx = addTemplateAtom(mol, unresolved ? idt_alias.c_str() : single_monomer.c_str(), single_monomer_class.c_str(), _seq_id);
mol.asMolecule().setAtomXyz(monomer_idx, getBackboneMonomerPosition());
if (_last_monomer_idx >= 0)
addTemplateBond(mol, _last_monomer_idx, monomer_idx);
Expand Down

0 comments on commit 28a7817

Please sign in to comment.