public static SBMLConverter DowncastSBMLConverter(IntPtr cPtr, bool owner) { if (cPtr.Equals(IntPtr.Zero)) return null; SBMLConverter con = new SBMLConverter(cPtr, false); string conName = con.getName(); if (conName == "SBML Units Converter") return new SBMLUnitsConverter(cPtr,owner); else if (conName == "SBML Strip Package Converter") return new SBMLStripPackageConverter(cPtr,owner); else if (conName == "SBML Rule Converter") return new SBMLRuleConverter(cPtr,owner); else if (conName == "SBML Reaction Converter") return new SBMLReactionConverter(cPtr,owner); else if (conName == "SBML Local Parameter Converter") return new SBMLLocalParameterConverter(cPtr,owner); else if (conName == "SBML Level Version Converter") return new SBMLLevelVersionConverter(cPtr,owner); else if (conName == "SBML Initial Assignment Converter") return new SBMLInitialAssignmentConverter(cPtr,owner); else if (conName == "SBML Infer Units Converter") return new SBMLInferUnitsConverter(cPtr,owner); else if (conName == "SBML Id Converter") return new SBMLIdConverter(cPtr,owner); else if (conName == "SBML Function Definition Converter") return new SBMLFunctionDefinitionConverter(cPtr,owner); return new SBMLConverter(cPtr,owner); }