/// <summary>
/// [ EventStruct ]
/// [[ Id , Name , StringTrigger , StringDelay , TimeUnit , [[ VariableAssignment , StringAssignment ]] ]]
/// </summary>
/// <param name="aSBMLmodel"></param>
/// <returns></returns>
public static List<EventStruct> getEvent(Model aSBMLmodel)
{
List<EventStruct> list = new List<EventStruct>();
ListOfEvents events = aSBMLmodel.getListOfEvents();
for (int i = 0; i < events.size(); i++ )
{
Event anEvent = aSBMLmodel.getEvent(i);
string anId_Ev = anEvent.getId();
string aName_Ev = anEvent.getName();
Trigger anASTNode_Ev_Tr = anEvent.getTrigger();
string aString_Ev_Tr = libsbml.libsbml.formulaToString(anASTNode_Ev_Tr.getMath());
Delay anASTNode_Ev_De = anEvent.getDelay();
string aString_Ev_De = libsbml.libsbml.formulaToString(anASTNode_Ev_Tr.getMath());
string aTimeUnit_Ev = anEvent.getTimeUnits();
List<EventAssignmentStruct> listOfEventAssignments = new List<EventAssignmentStruct>();
ListOfEventAssignments assignments = anEvent.getListOfEventAssignments();
for (int j = 0; j < assignments.size(); j++ )
{
EventAssignment anEventAssignment = anEvent.getEventAssignment(j);
string aVariable_Ev_As = anEventAssignment.getVariable();
ASTNode anASTNode_Ev_As = anEventAssignment.getMath();
string aString_Ev_As = libsbml.libsbml.formulaToString(anASTNode_Ev_As);
EventAssignmentStruct listOfEventAssignment = new EventAssignmentStruct(
aVariable_Ev_As,
aString_Ev_As);
listOfEventAssignments.Add(listOfEventAssignment);
}
EventStruct eventStruct = new EventStruct(
anId_Ev,
aName_Ev,
aString_Ev_Tr,
aString_Ev_De,
aTimeUnit_Ev,
listOfEventAssignments);
list.Add(eventStruct);
}
return list;
}