Explore chapters and articles related to this topic
Service Deployment
Published in Krzysztof W. Kolodziej, Johan Hjelm, Local Positioning Systems, 2017
Krzysztof W. Kolodziej, Johan Hjelm
Accessing WRAPI functionality written in C++ in Java-based systems means having Java code, which calls a DLL written in C++. In Java this is accomplished by using the Java Native Interface (JNI). To use JNI, class methods that need to access native code are marked with the “native” keyword, and their implementation is provided inside of a DLL. Calling one of these methods will then result in a call to the DLL method, which could be written in any language, including C++. There are two choices when it comes to using JNI with WRAPI, with the difference being if we wanted to make any changes to the WRAPI DLL. In order for Java native methods to directly call WRAPI code, the WRAPI DLL source would have needed to be modified to conform to the JNI guidelines for native method implementation. The second option is to create a native implementation inside a new DLL; the implementations of the DLL would simply load and call the WRAPI DLL methods. The second approach acts as a wrapper for the WRAPI DLL and requires no changes to be made to the WRAPI source code.
EEMS2015 organizing committee
Published in Yeping Wang, Jianhua Zhao, Advances in Energy, Environment and Materials Science, 2018
Due to the limitation of Android development board, this paper uses JNI to call the native layer of pedestrian detection algorithm. In computing, the Java Native Interface (JNI) is a programming framework that enables Java code running in a Java Virtual Machine (JVM) to call and be called by native applications (programs specific to a hard- ware and operating system platform) and libraries written in other languages such as C, C and assembly. (Liang 2009) In other words, JNI can make the Android project in the Java layer and the native layer to play their respective roles and coop- erate with each other. CONCLUSION
Distributed Intelligence in Power Systems
Published in Magdi S Mahmoud, Multiagent Systems, 2020
SimAuto [254] is an automated server (COM interface), enabling the user to access the functionalities from a program written externally by COM server. Even though Java does not have COM compatibility, Java platform integrates Java Native Interface (JNI), which is a standard programming interface for writing Java native methods and embedding the Java virtual machine into a native application. The IBM Development Tool for Java-COM Bridge [255] is chosen to build a communication layer between Java and the Power World automation server.
Virtual prototyping: a case study of positioning systems for drilling operations in the Barents Sea
Published in Ships and Offshore Structures, 2019
Pierre Major, Robert Skulstad, Guoyuan Li, Houxiang Zhang
The behaviour of the simulated objects is implemented by physics engines underneath the abstraction layer (Figure 2), allowing flexibility in the choice of the physics engine and a compromise between real-time constraints and model accuracy. In this case, the C++ based Agx physics engine (Algoryx 2018), with its arbitrary shape rigid body hydrodynamics module (Sandberg 2014) is integrated via a Java Native Interface (JNI).
Evaluation of JADE multi-agent system and Erlang holonic control implementations for a manufacturing cell
Published in International Journal of Computer Integrated Manufacturing, 2019
With JADE, Java provides the Java Native Interface (JNI) (Anonymous, s.a. (g)) – a native programming interface that allows Java code to interoperate with applications written in other programming languages, such as C, C++ and Assembler. This interface is useful for integrating legacy systems, supplementing the functionality offered by Java or improving performance.