/// <summary> /// The function performing the filtering, here we just check /// that we have a valid element, and that it has notes. /// </summary> /// <param name="element">the current element</param> /// <returns><b>true</b> if element is to be included, <b>false</b> otherwise</returns> public override bool filter(SBase element) { // return in case we don't have a valid element if (element == null || !element.isSetNotes()) return false; // otherwise we have notes set and want to keep the element if (!element.isSetId()) Console.WriteLine(" found : {0}", element.getId()); else Console.WriteLine(" found element without id"); return true; }
private static void printNotes(SBase sb) { string id = ""; if (sb.isSetId()) { id = sb.getId(); } printNotes(sb, id); }
/// <summary> /// The function actually doing the transforming. This function is called /// once for each SBase element in the model. /// </summary> /// <param name="element">the current element</param> /// <returns>status code</returns> public override int transform(SBase element) { // return in case we don't have a valid element if (element == null || element.getTypeCode() == libsbml.SBML_LOCAL_PARAMETER) return libsbml.LIBSBML_OPERATION_SUCCESS; // or if there is nothing to do if (!element.isSetName() || element.getId() == element.getName()) return libsbml.LIBSBML_OPERATION_SUCCESS; // find the new id string newId = getValidIdForName(element.getName()); // set it element.setId(newId); // remember it existingIds.Add(newId); return libsbml.LIBSBML_OPERATION_SUCCESS; }
private static void printAnnotation(SBase sb) { string id = ""; if (sb.isSetId()) { id = sb.getId(); } printAnnotation(sb, id); }