/// <summary> /// [ UnitDefinitionStruct ] /// [[ Id , Name , [ UnitStruct ] ]] /// </summary> /// <param name="aSBMLmodel"></param> /// <returns></returns> public static List<UnitDefinitionStruct> getUnitDefinition(Model aSBMLmodel) { List<UnitDefinitionStruct> list = new List<UnitDefinitionStruct>(); ListOfUnitDefinitions listOfUnitDefinitions = aSBMLmodel.getListOfUnitDefinitions(); for (int i = 0; i < listOfUnitDefinitions.size(); i++ ) { UnitDefinition anUnitDefinition = aSBMLmodel.getUnitDefinition(i); string anId = anUnitDefinition.getId(); string aName = anUnitDefinition.getName(); List<UnitStruct> unitList = new List<UnitStruct>(); ListOfUnits listOfUnits = anUnitDefinition.getListOfUnits(); for (int j = 0; j < listOfUnits.size(); j++) { Unit anUnit = anUnitDefinition.getUnit(j); int anUnitKind = anUnit.getKind(); string aKind = libsbml.libsbml.UnitKind_toString( anUnitKind ); int anExponent = anUnit.getExponent(); int aScale = anUnit.getScale(); double aMultiplier = anUnit.getMultiplier(); double anOffset = anUnit.getOffset(); UnitStruct unit = new UnitStruct( aKind, anExponent, aScale, aMultiplier, anOffset ); unitList.Add( unit ); } UnitDefinitionStruct unitDefinition = new UnitDefinitionStruct( anId, aName, unitList ); list.Add(unitDefinition); } return list; }
public void TestConstructorOfStructs() { // CompartmentStruct c = new CompartmentStruct( "ID", "Name", 0, 0.0, 0.0, "Unit", "Parent", false); // EventStruct e = new EventStruct( "ID", "Name", "Trigger", "delay", "TimeUnit", new List<EventAssignmentStruct>()); // EventAssignmentStruct ea = new EventAssignmentStruct( "Variable", "Formula"); // FunctionDefinitionStruct fd = new FunctionDefinitionStruct( "ID", "Name", "Formula"); // ParameterStruct p = new ParameterStruct( "ID", "Name", 0.0, "Unit", false); // ReactionStruct r = new ReactionStruct( "ID", "Name", new List<KineticLawStruct>(), false, false, new List<ReactantStruct>(), new List<ProductStruct>(), new List<string>()); // KineticLawStruct k = new KineticLawStruct( "Formula", new List<string>(), "TimeUnit", "Substance", new List<ParameterStruct>(), null); // ReactantStruct rs = new ReactantStruct( "Species", 0, "Formula", 0); // ProductStruct ps = new ProductStruct( "Species", 0.0, "Formula", 0); // RuleStruct rule = new RuleStruct( 0, "Formula", "Variable"); // SpeciesStruct s = new SpeciesStruct( "ID", "Name", "Parent", 0.0, 0.0, "Substance", "Spatial", "Unit", false, false, 0, false); // UnitDefinitionStruct ud = new UnitDefinitionStruct( "ID", "Name", new List<UnitStruct>()); // UnitStruct u = new UnitStruct( "Kind", 0, 0, 0.0, 0.0); // VariableReferenceStruct v = new VariableReferenceStruct( "Name", "Variable", 0); // InitialAssignmentStruct i = new InitialAssignmentStruct( "Name", 0.0); }