Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Access AS hierarchy at Msg layer
[simgrid.git] / src / bindings / java / org / simgrid / msg / Msg.java
index 895fadf..5a08809 100644 (file)
@@ -37,7 +37,20 @@ public final class Msg {
                nativeInit();
        }
        private static void loadLib (String name) {
-               String Path = "NATIVE/"+System.getProperty("os.name")+"/"+System.getProperty("os.arch")+"/";
+               String Os = System.getProperty("os.name");
+               String Arch = System.getProperty("os.arch");
+               // Some OS/Arch may be different between Java and Cmake,
+               // which generated the path
+               if (Os.toLowerCase().startsWith("win"))
+                       Os = "Windows";
+               else if (Os.contains("OS X"))
+                       Os = "Darwin";
+               if (Arch.equalsIgnoreCase("x86"))
+                       Arch = "i386";
+               else if (Arch.equalsIgnoreCase("x86_64"))
+                       Arch = "amd64";
+               String Path = "NATIVE/" + Os + "/" + Arch + "/";
+
                String filename=name;
                InputStream in = Msg.class.getClassLoader().getResourceAsStream(Path+filename);
                
@@ -112,7 +125,7 @@ public final class Msg {
        }
 
     /** Retrieve the simulation time
-     * @return
+     * @return The simulation time.
      */
        public final static native double getClock();
        /**
@@ -154,8 +167,6 @@ public final class Msg {
         * The natively implemented method to initialize a MSG simulation.
         *
         * @param args            The arguments of the command line of the simulation.
-        *
-        * @see                    Msg.init()
         */
        public final static native void init(String[]args);
 
@@ -166,8 +177,6 @@ public final class Msg {
         * {@link #clean()} if you really insist on cleaning the C side), so you can freely 
         * retrieve the informations that you want from the simulation. In particular, retrieving the status 
         * of a process or the current date is perfectly ok. 
-        *
-        * @see                    MSG_run
         */
        public final static native void run() ;
        
@@ -183,6 +192,8 @@ public final class Msg {
         */
        public final static native void createEnvironment(String platformFile);
 
+       public final static native As environmentGetRoutingRoot();
+
        /**
         * The method to deploy the simulation.
         *