+\r
+ public int[] getAllVariableTypes() throws FMILException {\r
+ synchronized(syncObject) {\r
+\r
+ try {\r
+\r
+ if(variableTypes == null) {\r
+ variableTypes = getAllVariableTypes_(getModelIDNew(), new int[variableNames.length]); \r
+ }\r
+ return variableTypes;\r
+\r
+ } catch (UnsatisfiedLinkError err) {\r
+ throw new FMILException(UNSATISFIED_LINK);\r
+ } catch (Exception e) {\r
+ throw new FMILException(e.getMessage());\r
+ }\r
+ }\r
+ }\r
+\r
+ private native int[] getAllVariableTypes_(int id, int[] array);\r
+\r
+ public int[] getAllVariableCausalities() throws FMILException {\r
+ synchronized(syncObject) {\r
+\r
+ try {\r
+\r
+ if(variableCausalities == null) {\r
+ variableCausalities = getAllVariableCausalities_(getModelIDNew(), new int[variableNames.length]); \r
+ }\r
+ return variableCausalities;\r
+\r
+ } catch (UnsatisfiedLinkError err) {\r
+ throw new FMILException(UNSATISFIED_LINK);\r
+ } catch (Exception e) {\r
+ throw new FMILException(e.getMessage());\r
+ }\r
+ }\r
+ }\r
+\r
+ private native int[] getAllVariableCausalities_(int id, int[] array);\r
+\r
+ public int[] getAllVariableVariabilities() throws FMILException {\r
+ synchronized(syncObject) {\r
+\r
+ try {\r
+\r
+ if(variableVariabilities == null) {\r
+ variableVariabilities = getAllVariableVariabilities_(getModelIDNew(), new int[variableNames.length]); \r
+ }\r
+ return variableVariabilities;\r
+\r
+ } catch (UnsatisfiedLinkError err) {\r
+ throw new FMILException(UNSATISFIED_LINK);\r
+ } catch (Exception e) {\r
+ throw new FMILException(e.getMessage());\r
+ }\r
+ }\r
+ }\r
+\r
+ private native int[] getAllVariableVariabilities_(int id, int[] array);\r
+\r
+ /**\r
+ * Get all variables in a loaded model\r
+ * @return all variables in a loaded model\r
+ */\r
+ public String[] getAllDeclaredTypes() throws FMILException {\r
+ synchronized(syncObject) {\r
+\r
+ try {\r
+\r
+ if(declaredTypes == null) {\r
+ declaredTypes = getAllDeclaredTypes_(getModelIDNew());\r
+ }\r
+ return declaredTypes;\r
+\r
+ } catch (UnsatisfiedLinkError err) {\r
+ throw new FMILException(UNSATISFIED_LINK);\r
+ } catch (Exception e) {\r
+ throw new FMILException(e.getMessage());\r
+ }\r
+ }\r
+ }\r
+\r
+ private native String[] getAllDeclaredTypes_(int id);\r
+ \r
+ public String[] getAllDeclaredTypeDescriptions() throws FMILException {\r
+ synchronized(syncObject) {\r
+\r
+ try {\r
+\r
+ if(declaredTypeDescriptions == null) {\r
+ declaredTypeDescriptions = getAllDeclaredTypeDescriptions_(getModelIDNew());\r
+ }\r
+ return declaredTypeDescriptions;\r
+\r
+ } catch (UnsatisfiedLinkError err) {\r
+ throw new FMILException(UNSATISFIED_LINK);\r
+ } catch (Exception e) {\r
+ throw new FMILException(e.getMessage());\r
+ }\r
+ }\r
+ }\r
+\r
+ private native String[] getAllDeclaredTypeDescriptions_(int id);\r
+ \r
+ public String[] getAllDeclaredTypeQuantities() throws FMILException {\r
+ synchronized(syncObject) {\r
+\r
+ try {\r
+\r
+ if(declaredTypeQuantities == null) {\r
+ declaredTypeQuantities = getAllDeclaredTypeQuantities_(getModelIDNew());\r
+ }\r
+ return declaredTypeQuantities;\r
+\r
+ } catch (UnsatisfiedLinkError err) {\r
+ throw new FMILException(UNSATISFIED_LINK);\r
+ } catch (Exception e) {\r
+ throw new FMILException(e.getMessage());\r
+ }\r
+ }\r
+ }\r
+\r
+ private native String[] getAllDeclaredTypeQuantities_(int id);\r
+\r
+ public String[] getAllDeclaredTypeUnits() throws FMILException {\r
+ synchronized(syncObject) {\r
+\r
+ try {\r
+\r
+ if(declaredTypeUnits == null) {\r
+ declaredTypeUnits = getAllDeclaredTypeUnits_(getModelIDNew());\r
+ }\r
+ return declaredTypeUnits;\r
+\r
+ } catch (UnsatisfiedLinkError err) {\r
+ throw new FMILException(UNSATISFIED_LINK);\r
+ } catch (Exception e) {\r
+ throw new FMILException(e.getMessage());\r
+ }\r
+ }\r
+ }\r
+\r
+ private native String[] getAllDeclaredTypeUnits_(int id);\r
+ \r