From ff292dac4e256ada82862530b23ed43f5ae44b21 Mon Sep 17 00:00:00 2001 From: adelhpour Date: Fri, 7 Feb 2025 10:54:20 -0800 Subject: [PATCH] make changes to see if the alias reaction test passes on windows --- .../libsbmlnetwork_alias_reaction.cpp | 36 +++++++++---------- 1 file changed, 17 insertions(+), 19 deletions(-) diff --git a/src/features/alias_elements/libsbmlnetwork_alias_reaction.cpp b/src/features/alias_elements/libsbmlnetwork_alias_reaction.cpp index c4a9392..1170ad9 100644 --- a/src/features/alias_elements/libsbmlnetwork_alias_reaction.cpp +++ b/src/features/alias_elements/libsbmlnetwork_alias_reaction.cpp @@ -43,26 +43,24 @@ namespace LIBSBMLNETWORK_CPP_NAMESPACE { for (unsigned int i = 0; i < referenceReactionGlyph->getNumSpeciesReferenceGlyphs(); i++) { SpeciesReferenceGlyph *speciesReferenceGlyph = referenceReactionGlyph->getSpeciesReferenceGlyph(i); SpeciesGlyph *speciesGlyph = layout->getSpeciesGlyph(speciesReferenceGlyph->getSpeciesGlyphId()); - if (speciesGlyph) { - SpeciesGlyph *connectedSpeciesGlyph = NULL; - if (speciesGlyphAliasSpeciesGlyphIds.find(speciesGlyph->getId()) == speciesGlyphAliasSpeciesGlyphIds.end()) - connectedSpeciesGlyph = alias_element_createAliasSpeciesGlyph(layout, speciesGlyph, padding); - else - connectedSpeciesGlyph = layout->getSpeciesGlyph( - speciesGlyphAliasSpeciesGlyphIds[speciesGlyph->getId()]); - if (connectedSpeciesGlyph != NULL) { - speciesGlyphAliasSpeciesGlyphIds[speciesGlyph->getId()] = connectedSpeciesGlyph->getId(); - std::cout << "SpeciesGlyphAliasSpeciesGlyphIds: " << speciesGlyphAliasSpeciesGlyphIds[speciesGlyph->getId()] << std::endl; - int stoichiometry = getStoichiometryAsInteger(layout, - findSpeciesReference(document->getModel(), layout, referenceReactionGlyph, speciesGlyph)); - for (unsigned int stoichiometryIndex = 0; stoichiometryIndex < stoichiometry; stoichiometryIndex++) - alias_element_createAliasSpeciesReferenceGlyph(reactionGlyph, speciesReferenceGlyph, - connectedSpeciesGlyph->getId(), - stoichiometryIndex, padding); - } - } - else + if (!speciesGlyph) return -1; + + SpeciesGlyph *connectedSpeciesGlyph = NULL; + if (speciesGlyphAliasSpeciesGlyphIds.find(speciesGlyph->getId()) == speciesGlyphAliasSpeciesGlyphIds.end()) + connectedSpeciesGlyph = alias_element_createAliasSpeciesGlyph(layout, speciesGlyph, padding); + else + connectedSpeciesGlyph = layout->getSpeciesGlyph( + speciesGlyphAliasSpeciesGlyphIds[speciesGlyph->getId()]); + if (connectedSpeciesGlyph != NULL) { + speciesGlyphAliasSpeciesGlyphIds[speciesGlyph->getId()] = connectedSpeciesGlyph->getId(); + int stoichiometry = getStoichiometryAsInteger(layout, + findSpeciesReference(document->getModel(), layout, referenceReactionGlyph, speciesGlyph)); + for (unsigned int stoichiometryIndex = 0; stoichiometryIndex < stoichiometry; stoichiometryIndex++) + alias_element_createAliasSpeciesReferenceGlyph(reactionGlyph, speciesReferenceGlyph, + connectedSpeciesGlyph->getId(), + stoichiometryIndex, padding); + } } return 0;