1 import org.opensim.modeling.*;
2 
3 class TestIterators {
main(String[] args)4   public static void main(String[] args) {
5     Model model = new Model();
6 
7     // Iterate through
8     model.printSubcomponentInfo();
9     ComponentsList componentsList = model.getComponentsList();
10     ComponentIterator compIter = componentsList.begin();
11     int countComponents = 0;
12     while(!compIter.equals(componentsList.end())){
13         countComponents++;
14         System.out.println("Next component:"+compIter.getName()+" type:"+compIter.getConcreteClassName());
15         compIter.next();
16     }
17     // Although the following Lists and Sets are mostly empty
18     // this tests that the classes were wrapped properly otherwise
19     // this code will not compile.
20     BodyList bodyList = model.getBodyList();
21     MuscleList muscleList = model.getMuscleList();
22     MuscleIterator muscleIter = muscleList.begin();
23     while(!muscleIter.equals(muscleList.end())){
24         Muscle nextMuscle = muscleIter.__deref__();
25         System.out.println("Next muscle:"+nextMuscle.getName());
26         muscleIter.next();
27     }
28     // Access lists used in GUI
29     ForceSet fset = model.getForceSet();        int nforces = fset.getSize();
30     SetMuscles musset = model.getMuscles();     int nmuscles = musset.getSize();
31     SetActuators actset = model.getActuators(); int nacts = actset.getSize();
32     ProbeSet pset = model.getProbeSet();        int nprobes = pset.getSize();
33     ContactGeometrySet cgset = model.getContactGeometrySet();
34     AnalysisSet aset = model.getAnalysisSet();  int nanalysis = aset.getSize();
35 
36     System.out.println("Test finished!");
37     // TODO to cause test to fail: System.exit(-1);
38   }
39 }
40