Mercurial > octave
annotate libinterp/octave-value/ov-java.h @ 22323:bac0d6f07a3e
maint: Update copyright notices for 2016.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Wed, 17 Aug 2016 01:05:19 -0400 |
parents | c4ab2e54f100 |
children | 34ce5be04942 |
rev | line source |
---|---|
15746
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
1 /* |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
2 |
22323
bac0d6f07a3e
maint: Update copyright notices for 2016.
John W. Eaton <jwe@octave.org>
parents:
21739
diff
changeset
|
3 Copyright (C) 2007-2016 Michael Goffioul |
15746
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
4 |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
5 This file is part of Octave. |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
6 |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
7 Octave is free software; you can redistribute it and/or modify it |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
8 under the terms of the GNU General Public License as published by the |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
9 Free Software Foundation; either version 3 of the License, or (at your |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
10 option) any later version. |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
11 |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
12 Octave is distributed in the hope that it will be useful, but WITHOUT |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
15 for more details. |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
16 |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
17 You should have received a copy of the GNU General Public License |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
18 along with Octave; see the file COPYING. If not, see |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
19 <http://www.gnu.org/licenses/>. |
da26f72408a7
update copyright statements in newly added java files
John W. Eaton <jwe@octave.org>
parents:
15745
diff
changeset
|
20 |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
21 */ |
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
22 |
20791
f7084eae3318
maint: Use Octave coding conventions for #if statements.
Rik <rik@octave.org>
parents:
20468
diff
changeset
|
23 #if ! defined (octave_ov_java_h) |
17822
ebb3ef964372
maint: Use common #define syntax "octave_filename_h" in h_files.
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
24 #define octave_ov_java_h 1 |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
25 |
21244
1473547f50f5
include octave-config.h in public header files
John W. Eaton <jwe@octave.org>
parents:
21139
diff
changeset
|
26 #include "octave-config.h" |
1473547f50f5
include octave-config.h in public header files
John W. Eaton <jwe@octave.org>
parents:
21139
diff
changeset
|
27 |
20940
48b2ad5ee801
maint: Rename oct-obj.[cc|h] to ovl.[cc|h] for clarity.
Rik <rik@octave.org>
parents:
20791
diff
changeset
|
28 #include <ovl.h> |
15747
4be890c5527c
* __java__.cc, __java__.h: Clean up lists of include files.
John W. Eaton <jwe@octave.org>
parents:
15746
diff
changeset
|
29 #include <ov.h> |
4be890c5527c
* __java__.cc, __java__.h: Clean up lists of include files.
John W. Eaton <jwe@octave.org>
parents:
15746
diff
changeset
|
30 |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
31 typedef void *voidptr; |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
32 |
15837
fe2cefaa772b
Replace JAVAPKG_API with OCTINTERP_API
Michael Goffioul <michael.goffioul@gmail.com>
parents:
15824
diff
changeset
|
33 class OCTINTERP_API octave_java : public octave_base_value |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
34 { |
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
35 public: |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
36 |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
37 octave_java (void); |
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
38 |
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
39 octave_java (const voidptr& obj, void *cls = 0); |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
40 |
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
41 octave_java (const octave_java& jobj) |
15744
686580b1a934
eliminate most compilation warnings for __java__.cc
John W. Eaton <jwe@octave.org>
parents:
15625
diff
changeset
|
42 : octave_base_value (jobj), java_object (0), java_class (0) |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
43 { |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
44 init (jobj.java_object, jobj.java_class); |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
45 } |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
46 |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
47 ~octave_java (void) { release (); } |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
48 |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
49 void *to_java (void) const { return java_object; } |
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
50 void *to_class (void) const { return java_class; } |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
51 |
15813
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
52 std::string java_class_name (void) const { return java_classname; } |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
53 |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
54 octave_base_value* clone (void) const { return new octave_java (*this); } |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
55 octave_base_value* empty_clone (void) const { return new octave_java (); } |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
56 |
20028
107130a0490c
isa: check parent class of java objects (bug #42702)
Carnë Draug <carandraug@octave.org>
parents:
19598
diff
changeset
|
57 bool is_instance_of (const std::string&) const; |
107130a0490c
isa: check parent class of java objects (bug #42702)
Carnë Draug <carandraug@octave.org>
parents:
19598
diff
changeset
|
58 |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
59 bool is_defined (void) const { return true; } |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
60 |
20046
d7b1999f0554
Second fix for exist() should return 1 for java objects (bug #44764).
Rik <rik@octave.org>
parents:
20043
diff
changeset
|
61 bool is_constant (void) const { return true; } |
20043
302e48c2de5d
exist() should return 1 for java objects (bug #44764).
Rik <rik@octave.org>
parents:
20028
diff
changeset
|
62 |
15791
49f5962fa20d
ov-java.h: is_map must return false, java object is not a struct.
Rik <rik@octave.org>
parents:
15790
diff
changeset
|
63 bool is_map (void) const { return false; } |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
64 |
15770 | 65 bool is_java (void) const { return true; } |
66 | |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
67 string_vector map_keys (void) const; |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
68 |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
69 dim_vector dims (void) const; |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
70 |
18416
bcd71a2531d3
Support disp/display overloading in classdef
Michael Goffioul <michael.goffioul@gmail.com>
parents:
17822
diff
changeset
|
71 void print (std::ostream& os, bool pr_as_read_syntax = false); |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
72 |
15858
fb756e8d6620
Silence compilation warning in ov-java.h.
Rik <rik@octave.org>
parents:
15837
diff
changeset
|
73 void print_raw (std::ostream& os, bool pr_as_read_syntax = false) const; |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
74 |
20441
b22528fd3deb
Add placeholder functions for save_ascii, save_binary for octave_java (bug #45694).
Rik <rik@octave.org>
parents:
20121
diff
changeset
|
75 bool save_ascii (std::ostream& os); |
b22528fd3deb
Add placeholder functions for save_ascii, save_binary for octave_java (bug #45694).
Rik <rik@octave.org>
parents:
20121
diff
changeset
|
76 |
b22528fd3deb
Add placeholder functions for save_ascii, save_binary for octave_java (bug #45694).
Rik <rik@octave.org>
parents:
20121
diff
changeset
|
77 bool load_ascii (std::istream& is); |
b22528fd3deb
Add placeholder functions for save_ascii, save_binary for octave_java (bug #45694).
Rik <rik@octave.org>
parents:
20121
diff
changeset
|
78 |
b22528fd3deb
Add placeholder functions for save_ascii, save_binary for octave_java (bug #45694).
Rik <rik@octave.org>
parents:
20121
diff
changeset
|
79 bool save_binary (std::ostream& os, bool& save_as_floats); |
b22528fd3deb
Add placeholder functions for save_ascii, save_binary for octave_java (bug #45694).
Rik <rik@octave.org>
parents:
20121
diff
changeset
|
80 |
b22528fd3deb
Add placeholder functions for save_ascii, save_binary for octave_java (bug #45694).
Rik <rik@octave.org>
parents:
20121
diff
changeset
|
81 bool load_binary (std::istream& is, bool swap, |
21739
c4ab2e54f100
use namespace for oct_mach_info class
John W. Eaton <jwe@octave.org>
parents:
21379
diff
changeset
|
82 octave::mach_info::float_format fmt); |
20441
b22528fd3deb
Add placeholder functions for save_ascii, save_binary for octave_java (bug #45694).
Rik <rik@octave.org>
parents:
20121
diff
changeset
|
83 |
20468
2f94652de9ff
Add placeholder functions for save_hdf5, load_hdf5 for octave_java functions.
Rik <rik@octave.org>
parents:
20441
diff
changeset
|
84 bool save_hdf5 (octave_hdf5_id loc_id, const char *name, |
2f94652de9ff
Add placeholder functions for save_hdf5, load_hdf5 for octave_java functions.
Rik <rik@octave.org>
parents:
20441
diff
changeset
|
85 bool save_as_floats); |
2f94652de9ff
Add placeholder functions for save_hdf5, load_hdf5 for octave_java functions.
Rik <rik@octave.org>
parents:
20441
diff
changeset
|
86 |
2f94652de9ff
Add placeholder functions for save_hdf5, load_hdf5 for octave_java functions.
Rik <rik@octave.org>
parents:
20441
diff
changeset
|
87 bool load_hdf5 (octave_hdf5_id loc_id, const char *name); |
2f94652de9ff
Add placeholder functions for save_hdf5, load_hdf5 for octave_java functions.
Rik <rik@octave.org>
parents:
20441
diff
changeset
|
88 |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
89 octave_value_list |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
90 subsref (const std::string& type, |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
91 const std::list<octave_value_list>& idx, int nargout); |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
92 |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
93 octave_value |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
94 subsref (const std::string& type, const std::list<octave_value_list>& idx) |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
95 { |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
96 octave_value_list retval = subsref (type, idx, 1); |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
97 return (retval.length () > 0 ? retval(0) : octave_value ()); |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
98 } |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
99 |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
100 octave_value subsasgn (const std::string& type, |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
101 const std::list<octave_value_list>& idx, |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
102 const octave_value& rhs); |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
103 |
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
104 octave_value convert_to_str_internal (bool pad, bool force, char type) const; |
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
105 |
15824
abc9e5f3c661
Return correct value for ischar() predicate test on octave_java objects.
Rik <rik@octave.org>
parents:
15813
diff
changeset
|
106 bool is_java_string (void) const; |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
107 |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
108 octave_value do_javaMethod (void *jni_env, const std::string& name, |
15790
921912c92102
Deprecate java_invoke, replace with javaMethod.
Rik <rik@octave.org>
parents:
15770
diff
changeset
|
109 const octave_value_list& args); |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
110 |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
111 octave_value |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
112 do_javaMethod (const std::string& name, const octave_value_list& args); |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
113 |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
114 static octave_value |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
115 do_javaMethod (void *jni_env, const std::string& class_name, |
15790
921912c92102
Deprecate java_invoke, replace with javaMethod.
Rik <rik@octave.org>
parents:
15770
diff
changeset
|
116 const std::string& name, const octave_value_list& args); |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
117 |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
118 static octave_value |
15790
921912c92102
Deprecate java_invoke, replace with javaMethod.
Rik <rik@octave.org>
parents:
15770
diff
changeset
|
119 do_javaMethod (const std::string& class_name, const std::string& name, |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
120 const octave_value_list& args); |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
121 |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
122 static octave_value |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
123 do_javaObject (void *jni_env, const std::string& name, |
15790
921912c92102
Deprecate java_invoke, replace with javaMethod.
Rik <rik@octave.org>
parents:
15770
diff
changeset
|
124 const octave_value_list& args); |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
125 |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
126 static octave_value |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
127 do_javaObject (const std::string& name, const octave_value_list& args); |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
128 |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
129 octave_value do_java_get (void *jni_env, const std::string& name); |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
130 |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
131 octave_value do_java_get (const std::string& name); |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
132 |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
133 static octave_value |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
134 do_java_get (void *jni_env, const std::string& class_name, |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
135 const std::string& name); |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
136 |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
137 static octave_value |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
138 do_java_get (const std::string& class_name, const std::string& name); |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
139 |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
140 octave_value do_java_set (void *jni_env, const std::string& name, |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
141 const octave_value& val); |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
142 |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
143 octave_value do_java_set (const std::string& name, const octave_value& val); |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
144 |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
145 static octave_value |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
146 do_java_set (void *jni_env, const std::string& class_name, |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
147 const std::string& name, const octave_value& val); |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
148 |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
149 static octave_value |
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
150 do_java_set (const std::string& class_name, const std::string& name, |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
151 const octave_value& val); |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
152 |
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
153 private: |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
154 |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
155 void init (void *jobj, void *jcls); |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
156 |
21042
0967e2393386
* ov-java.h, ov-java.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
20940
diff
changeset
|
157 void release (void); |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
158 |
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
159 private: |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
160 |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
161 void *java_object; |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
162 |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
163 void *java_class; |
15745
19850dfc2f88
* __java__.h, __java__.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
15744
diff
changeset
|
164 |
15813
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
165 std::string java_classname; |
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
166 |
21042
0967e2393386
* ov-java.h, ov-java.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
20940
diff
changeset
|
167 public: |
15813
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
168 |
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
169 int type_id (void) const { return t_id; } |
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
170 std::string type_name (void) const { return t_name; } |
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
171 std::string class_name (void) const { return java_classname; } |
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
172 |
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
173 static int static_type_id (void) { return t_id; } |
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
174 static std::string static_type_name (void) { return t_name; } |
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
175 static std::string static_class_name (void) { return "<unknown>"; } |
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
176 static void register_type (void); |
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
177 |
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
178 private: |
21042
0967e2393386
* ov-java.h, ov-java.cc: Style fixes.
John W. Eaton <jwe@octave.org>
parents:
20940
diff
changeset
|
179 |
15813
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
180 static int t_id; |
10d6ab9b1b4f
Implement octave_value function class_name() for class "octave_java"
Rik <rik@octave.org>
parents:
15800
diff
changeset
|
181 static const std::string t_name; |
15625
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
182 }; |
acf0addfc610
include Octave Forge java package in core Octave
John W. Eaton <jwe@octave.org>
parents:
diff
changeset
|
183 |
21379
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
184 extern OCTINTERP_API bool Vjava_matrix_autoconversion; |
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
185 |
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
186 extern OCTINTERP_API bool Vjava_unsigned_autoconversion; |
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
187 |
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
188 extern OCTINTERP_API bool Vdebug_java; |
93c489ca8a6b
elimnate HAVE_JAVA from ov-java.h
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
189 |
15752
f96faf028d90
make java functions part of core octave_value classes
John W. Eaton <jwe@octave.org>
parents:
15747
diff
changeset
|
190 #endif |