-
Notifications
You must be signed in to change notification settings - Fork 310
/
java_actuators.i
60 lines (42 loc) · 1.72 KB
/
java_actuators.i
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
%module(directors="1") opensimActuatorsAnalysesTools
%module opensimActuatorsAnalysesTools
#pragma SWIG nowarn=822,451,503,516,325,401
%{
#include <Bindings/OpenSimHeaders_common.h>
#include <Bindings/OpenSimHeaders_simulation.h>
#include <Bindings/OpenSimHeaders_actuators.h>
#include <Bindings/OpenSimHeaders_analyses.h>
#include <Bindings/OpenSimHeaders_tools.h>
#include <OpenSim/Utilities/simmFileWriterDLL/SimmFileWriter.h>
#include <Bindings/Java/OpenSimJNI/Hooks/SimtkLogCallback.h>
#include <Bindings/Java/OpenSimJNI/OpenSimContext.h>
using namespace OpenSim;
using namespace SimTK;
%}
%feature("director") OpenSim::AnalysisWrapper;
%feature("director") OpenSim::SimtkLogCallback;
%include "java_preliminaries.i";
%include "arrays_java.i";
%import "java_simulation.i"
%include <Bindings/actuators.i>
%include <Bindings/analyses.i>
// When used from GUI or matlab ModelScaler takes ownership on these calls,
// communicate that fact to the interpreter to avoid Garbage Collection issues
%javamethodmodifiers OpenSim::ModelScaler::addMeasurement "private";
%javamethodmodifiers OpenSim::ModelScaler::addScale "private";
%rename OpenSim::ModelScaler::addMeasurement private_addMeasurement;
%rename OpenSim::ModelScaler::addScale private_addScale;
%typemap(javacode) OpenSim::ModelScaler %{
public void addScale(Scale scale){
scale.markAdopted();
private_addScale(scale);
}
public void addMeasurement(Measurement meas){
meas.markAdopted();
private_addMeasurement(meas);
}
%}
%include <Bindings/tools.i>
%include <OpenSim/Utilities/simmFileWriterDLL/SimmFileWriter.h>
%include <Bindings/Java/OpenSimJNI/OpenSimContext.h>
%include <Bindings/Java/OpenSimJNI/Hooks/SimtkLogCallback.h>