Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc
Commits
32932c15
Commit
32932c15
authored
Mar 08, 2008
by
Filippo Carone
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
removing old and unsupported java-gcj bindings
parent
9a8650a1
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
0 additions
and
570 deletions
+0
-570
bindings/java-gcj/.gitignore
bindings/java-gcj/.gitignore
+0
-1
bindings/java-gcj/AUTHORS
bindings/java-gcj/AUTHORS
+0
-1
bindings/java-gcj/JVLC.java
bindings/java-gcj/JVLC.java
+0
-100
bindings/java-gcj/JVLCBoolVariable.java
bindings/java-gcj/JVLCBoolVariable.java
+0
-13
bindings/java-gcj/JVLCFloatVariable.java
bindings/java-gcj/JVLCFloatVariable.java
+0
-12
bindings/java-gcj/JVLCIntVariable.java
bindings/java-gcj/JVLCIntVariable.java
+0
-13
bindings/java-gcj/JVLCStringVariable.java
bindings/java-gcj/JVLCStringVariable.java
+0
-12
bindings/java-gcj/JVLCTimeVariable.java
bindings/java-gcj/JVLCTimeVariable.java
+0
-12
bindings/java-gcj/JVLCVarValue.java
bindings/java-gcj/JVLCVarValue.java
+0
-19
bindings/java-gcj/JVLCVarVariable.java
bindings/java-gcj/JVLCVarVariable.java
+0
-12
bindings/java-gcj/JVLCVariable.java
bindings/java-gcj/JVLCVariable.java
+0
-21
bindings/java-gcj/Makefile
bindings/java-gcj/Makefile
+0
-28
bindings/java-gcj/README
bindings/java-gcj/README
+0
-10
bindings/java-gcj/VlcClient.java
bindings/java-gcj/VlcClient.java
+0
-12
bindings/java-gcj/vlc-glue.cc
bindings/java-gcj/vlc-glue.cc
+0
-304
No files found.
bindings/java-gcj/.gitignore
deleted
100644 → 0
View file @
9a8650a1
!Makefile
bindings/java-gcj/AUTHORS
deleted
100644 → 0
View file @
9a8650a1
Filippo Carone <filippo[dontspam]@carone.org>
bindings/java-gcj/JVLC.java
deleted
100644 → 0
View file @
9a8650a1
/*****************************************************************************
* JVLC.java: global class for vlc Java Bindings
*****************************************************************************
* Copyright (C) 1998-2004 the VideoLAN team
*
* Authors: Filippo Carone <filippo@carone.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
public
class
JVLC
{
private
int
id
;
public
JVLC
(
String
[]
args
)
{
String
[]
properArgs
=
new
String
[
args
.
length
+
1
];
properArgs
[
0
]
=
"jvlc"
;
for
(
int
i
=
0
;
i
<
args
.
length
;
i
++)
properArgs
[
i
+
1
]
=
args
[
i
];
this
.
id
=
create
();
init
(
properArgs
);
}
private
native
int
create
();
private
native
int
init
(
String
[]
args
);
public
native
int
addInterface
(
String
moduleName
,
boolean
blocking
,
boolean
startPlay
);
public
int
addInterface
(
boolean
blocking
,
boolean
startPlay
)
{
return
addInterface
(
null
,
blocking
,
startPlay
);
}
public
native
String
getVersion
();
public
native
String
getError
(
int
errorCode
);
public
native
int
die
();
public
native
int
cleanUp
();
public
native
int
setVariable
(
JVLCVariable
jvlcVariable
);
public
native
JVLCVariable
getVariable
(
String
varName
);
// XXX in progress
public
native
int
addTarget
(
String
URI
,
String
[]
options
,
int
insertMode
,
int
position
);
public
native
int
play
();
public
native
int
pause
();
public
native
int
stop
();
public
native
boolean
isPlaying
();
public
native
float
getPosition
();
public
native
float
setPosition
(
float
position
);
public
native
int
getTime
();
public
native
int
setTime
(
int
seconds
,
boolean
relative
);
public
native
int
getLength
();
public
native
float
speedFaster
();
public
native
float
speedSlower
();
public
native
int
getPlaylistIndex
();
public
native
int
getPlaylistItems
();
public
native
int
playlistNext
();
public
native
int
playlistPrev
();
public
native
int
playlistClear
();
public
native
int
getVolume
();
public
native
int
setVolume
(
int
volume
);
public
native
int
muteVolume
();
public
native
int
fullScreen
();
}
bindings/java-gcj/JVLCBoolVariable.java
deleted
100644 → 0
View file @
9a8650a1
public
class
JVLCBoolVariable
extends
JVLCVariable
{
public
JVLCBoolVariable
(
String
name
,
int
value
)
{
super
(
name
);
if
(
value
!=
0
)
this
.
value
=
new
Integer
(
1
);
else
this
.
value
=
new
Integer
(
0
);
}
public
int
getBoolValue
()
{
return
((
Integer
)
value
).
intValue
();
}
}
bindings/java-gcj/JVLCFloatVariable.java
deleted
100644 → 0
View file @
9a8650a1
public
class
JVLCFloatVariable
extends
JVLCVariable
{
public
JVLCFloatVariable
(
String
name
,
float
value
)
{
super
(
name
);
this
.
value
=
new
Float
(
value
);
}
public
float
getFloatValue
()
{
return
((
Float
)
value
).
floatValue
();
}
}
bindings/java-gcj/JVLCIntVariable.java
deleted
100644 → 0
View file @
9a8650a1
public
class
JVLCIntVariable
extends
JVLCVariable
{
public
JVLCIntVariable
(
String
name
,
int
value
)
{
super
(
name
);
this
.
value
=
new
Integer
(
value
);
}
public
int
getIntValue
()
{
return
((
Integer
)
value
).
intValue
();
}
}
bindings/java-gcj/JVLCStringVariable.java
deleted
100644 → 0
View file @
9a8650a1
public
class
JVLCStringVariable
extends
JVLCVariable
{
public
JVLCStringVariable
(
String
name
,
String
value
)
{
super
(
name
);
this
.
value
=
value
;
}
public
String
getStringValue
()
{
return
(
String
)
value
;
}
}
bindings/java-gcj/JVLCTimeVariable.java
deleted
100644 → 0
View file @
9a8650a1
public
class
JVLCTimeVariable
extends
JVLCVariable
{
public
JVLCTimeVariable
(
String
name
,
long
value
)
{
super
(
name
);
this
.
value
=
new
Long
(
value
);
}
public
long
getTimeValue
()
{
return
((
Long
)
value
).
longValue
();
}
}
bindings/java-gcj/JVLCVarValue.java
deleted
100644 → 0
View file @
9a8650a1
public
class
JVLCVarValue
{
String
name
;
int
OID
;
public
JVLCVarValue
(
String
name
,
int
OID
)
{
this
.
name
=
name
;
this
.
OID
=
OID
;
}
public
String
getName
()
{
return
name
;
}
public
int
getOID
()
{
return
OID
;
}
}
bindings/java-gcj/JVLCVarVariable.java
deleted
100644 → 0
View file @
9a8650a1
public
class
JVLCVarVariable
extends
JVLCVariable
{
public
JVLCVarVariable
(
String
name
,
JVLCVarValue
value
)
{
super
(
name
);
this
.
value
=
value
;
}
public
JVLCVarValue
getVarValue
()
{
return
(
JVLCVarValue
)
value
;
}
}
bindings/java-gcj/JVLCVariable.java
deleted
100644 → 0
View file @
9a8650a1
public
abstract
class
JVLCVariable
{
String
name
;
Object
value
;
public
JVLCVariable
(
String
name
)
{
this
.
name
=
name
;
}
public
String
getName
()
{
return
name
;
}
public
Object
getValue
()
{
return
value
;
}
public
void
setValue
(
Object
value
)
{
this
.
value
=
value
;
}
}
bindings/java-gcj/Makefile
deleted
100644 → 0
View file @
9a8650a1
OBJECTS
=
VlcClient.o JVLC.o JVLCVariable.o JVLCVarValue.o JVLCVarVariable.o JVLCIntVariable.o JVLCTimeVariable.o JVLCStringVariable.o JVLCFloatVariable.o JVLCBoolVariable.o vlc-glue.o
FLAGS
=
-I
.
-I
/usr/local/include/vlc
-L
../../lib
-lvlc
`
top_builddir
=
../.. ../../vlc-config
--libs
vlc
builtin
extern
`
`
top_builddir
=
../.. ../../vlc-config
--cxxflags
`
--main
=
VlcClient
JHEADERS
=
JVLC.h JVLCVariable.h JVLCIntVariable.h JVLCBoolVariable.h JVLCTimeVariable.h JVLCStringVariable.h JVLCFloatVariable.h JVLCVarVariable.h JVLCVarValue.h
JCC
=
gcj
CXX
=
g++
JCH
=
gcjh
DEBUG
=
-g
VlcClient
:
$(OBJECTS)
$(JCC)
-o
jvlc
-I
.
$(OBJECTS)
$(DEBUG)
$(FLAGS)
VlcClient.class
:
VlcClient.java
$(JCC)
$(DEBUG)
-C
VlcClient.java
%.o
:
%.class
$(JCC)
$(DEBUG)
-c
$?
%.class
:
%.java
$(JCC)
$(DEBUG)
-C
$?
%.h
:
%.class
$(JCH)
$
(
*
F
)
vlc-glue.o
:
$(JHEADERS) vlc-glue.cc
$(CXX)
$(DEBUG)
-I
./
-c
vlc-glue.cc
clean
:
rm
-f
jvlc
*
.o
*
.class
$(JHEADERS)
*
~
bindings/java-gcj/README
deleted
100644 → 0
View file @
9a8650a1
Implementation Notes
--------------------
The union vlc_value_t has been implemented as a hierarchy of classes
which has JVLCVariable.class as the root. All the children of this
class are named JVLC<type>Variable.class and are mapped 1:1 to the
union members with some exceptions: p_address is not implemented since
there's no notion of address in Java, vlc_object_t is not implemented
since I don't know how to represent it in Java and is not defined in
vlc/vlc.h
\ No newline at end of file
bindings/java-gcj/VlcClient.java
deleted
100644 → 0
View file @
9a8650a1
public
class
VlcClient
{
public
static
void
main
(
String
[]
args
)
{
JVLC
vlc
=
new
JVLC
(
args
);
System
.
out
.
println
(
vlc
.
getVersion
());
vlc
.
addInterface
(
true
,
true
);
vlc
.
die
();
vlc
.
cleanUp
();
}
}
bindings/java-gcj/vlc-glue.cc
deleted
100644 → 0
View file @
9a8650a1
/* These are a must*/
#include <gcj/cni.h>
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
#include <vlc/vlc.h>
#include <stdio.h> // for printf
#include <stdlib.h> // for calloc
/* JVLC internal imports, generated by gcjh */
#include "JVLC.h"
#include "JVLCVariable.h"
#include "JVLCIntVariable.h"
#include "JVLCBoolVariable.h"
#include "JVLCFloatVariable.h"
#include "JVLCStringVariable.h"
#include "JVLCTimeVariable.h"
#include "JVLCVarVariable.h"
#include "JVLCVarValue.h"
/* Java classes used throughout here */
#include <java/lang/String.h>
#include <java/lang/Class.h>
#include <java/lang/System.h>
#include <java/io/PrintStream.h>
void
setString
(
jstring
orig
,
char
*
dest
);
jint
JVLC
::
create
()
{
return
VLC_Create
();
}
jint
JVLC
::
init
(
JArray
<
::
java
::
lang
::
String
*>
*
args
)
{
int
argc
=
0
;
char
*
arguments
[
argc
];
if
(
args
!=
NULL
)
// It's a very bad day otherwise
{
argc
=
args
->
length
;
arguments
[
argc
];
/*
* convert the JArray<String*>* in char**
* so in a way suitable for VLC_Init
*/
jstring
*
argsElements
=
elements
(
args
);
for
(
int
i
=
0
;
i
<
argc
;
i
++
)
{
arguments
[
i
]
=
(
char
*
)
malloc
(
JvGetStringUTFLength
(
argsElements
[
i
])
+
1
);
setString
(
argsElements
[
i
],
arguments
[
i
]);
}
}
return
VLC_Init
(
this
->
id
,
argc
,
arguments
);
}
jint
JVLC
::
addInterface
(
java
::
lang
::
String
*
moduleName
,
jboolean
blocking
,
jboolean
startPlay
)
{
char
*
psz_module
=
NULL
;
if
(
moduleName
!=
NULL
)
{
psz_module
=
(
char
*
)
malloc
(
JvGetStringUTFLength
(
moduleName
));
setString
(
moduleName
,
psz_module
);
}
int
i_blocking
=
0
;
int
i_startPlay
=
0
;
if
(
blocking
)
i_blocking
=
1
;
if
(
startPlay
)
i_startPlay
=
1
;
int
addIntf_res
=
VLC_AddIntf
(
this
->
id
,
(
char
*
const
)
psz_module
,
i_blocking
,
i_startPlay
);
if
(
psz_module
!=
NULL
)
free
(
psz_module
);
return
addIntf_res
;
}
jstring
JVLC
::
getVersion
()
{
return
JvNewStringUTF
(
VLC_Version
());
}
jstring
JVLC
::
getError
(
jint
errorCode
)
{
return
JvNewStringUTF
(
VLC_Error
(
errorCode
));
}
jint
JVLC
::
die
()
{
return
VLC_Die
(
this
->
id
);
}
jint
JVLC
::
cleanUp
()
{
return
VLC_CleanUp
(
this
->
id
);
}
jint
JVLC
::
setVariable
(
::
JVLCVariable
*
jvlcVariable
)
{
/* these are the two parameters given the the
* VLC_VariableSet() function
*/
vlc_value_t
value
;
char
*
psz_var
=
NULL
;
if
(
jvlcVariable
!=
NULL
)
{
jclass
variableClass
=
jvlcVariable
->
getClass
();
/* We use the class name for kinda of instanceof */
jstring
className
=
variableClass
->
getName
();
/**
* VLC_SetVariable takes a union as its second argument.
* The union members are mapped 1:1 to java types which
* extend JVLCVariable. So here we check the runtime type
* of the actual variable and act consequently. Here is the
* mapping:
*
* typedef union
*{
* int i_int; JVLCIntVariable
* vlc_bool_t b_bool; JVLCBoolVariable
* float f_float; JVLCFloatVariable
* char * psz_string; JVLCStringVariable
* void * p_address; -- NOT IMPLEMENTED --
* vlc_object_t * p_object; -- NOT IMPLEMENTED --
* vlc_list_t * p_list; JVLCListVariable XXX:TODO
* signed long long i_time; JVLCTimeVariable
* struct { char *psz_name; int i_object_id; } var; JVLCVarVariable <- this name sucks
* // Make sure the structure is at least 64bits
* struct { char a, b, c, d, e, f, g, h; } padding; <- Do we really need this?
*
* } vlc_value_t;
*/
/* i_int */
if
(
className
->
equals
(
JvNewStringUTF
(
"VLCIntVariable"
)))
{
value
.
i_int
=
((
::
JVLCIntVariable
*
)
jvlcVariable
)
->
getIntValue
();
}
/* b_bool */
else
if
(
className
->
equals
(
JvNewStringUTF
(
"VLCBoolVariable"
)))
{
value
.
b_bool
=
((
::
JVLCBoolVariable
*
)
jvlcVariable
)
->
getBoolValue
();
}
/* f_float */
else
if
(
className
->
equals
(
JvNewStringUTF
(
"VLCFloatVariable"
)))
{
value
.
f_float
=
((
::
JVLCFloatVariable
*
)
jvlcVariable
)
->
getFloatValue
();
}
/* psz_string */
else
if
(
className
->
equals
(
JvNewStringUTF
(
"VLCStringVariable"
)))
{
value
.
psz_string
=
(
char
*
const
)
elements
((((
::
JVLCStringVariable
*
)
jvlcVariable
)
->
getStringValue
())
->
toCharArray
());
}
/* i_time */
else
if
(
className
->
equals
(
JvNewStringUTF
(
"VLCTimeVariable"
)))
{
value
.
i_time
=
((
::
JVLCTimeVariable
*
)
jvlcVariable
)
->
getTimeValue
();
}
/* var */
else
if
(
className
->
equals
(
JvNewStringUTF
(
"VLCVarVariable"
)))
{
jstring
varValueName
=
((
::
JVLCVarVariable
*
)
jvlcVariable
)
->
getVarValue
()
->
getName
();
value
.
var
.
psz_name
=
(
char
*
)
malloc
(
JvGetStringUTFLength
(
varValueName
));
setString
(
varValueName
,
value
.
var
.
psz_name
);
value
.
var
.
i_object_id
=
(((
::
JVLCVarVariable
*
)
jvlcVariable
)
->
getVarValue
())
->
getOID
();
}
psz_var
=
(
char
*
)
malloc
(
JvGetStringUTFLength
(
jvlcVariable
->
getName
()));
setString
(
jvlcVariable
->
getName
(),
psz_var
);
}
return
VLC_VariableSet
(
this
->
id
,
(
char
*
const
)
psz_var
,
value
);
}
jint
JVLC
::
addTarget
(
::
java
::
lang
::
String
*
URI
,
JArray
<
::
java
::
lang
::
String
*>
*
options
,
jint
insertMode
,
jint
position
)
{
char
*
psz_target
=
NULL
;
char
**
ppsz_options
=
NULL
;
int
options_number
=
0
;
if
(
URI
!=
NULL
)
{
psz_target
=
(
char
*
)
malloc
(
JvGetStringUTFLength
(
URI
));
setString
(
URI
,
psz_target
);
}
if
(
options
!=
NULL
)
{
options_number
=
options
->
length
;
ppsz_options
[
options_number
];
jstring
*
jstr_options
=
elements
(
options
);
for
(
jint
i
=
0
;
i
<
options_number
;
i
++
)
{
ppsz_options
[
i
]
=
(
char
*
)
malloc
(
JvGetStringUTFLength
(
jstr_options
[
i
]));
setString
(
jstr_options
[
i
],
ppsz_options
[
i
]);
}
}
return
VLC_AddTarget
(
this
->
id
,
(
char
const
*
)
psz_target
,
(
const
char
**
)
ppsz_options
,
options_number
,
insertMode
,
position
);
}
jint
JVLC
::
play
()
{
return
VLC_Play
(
this
->
id
);
}
jint
JVLC
::
pause
()
{
return
VLC_Pause
(
this
->
id
);
}
jint
JVLC
::
stop
()
{
return
VLC_Stop
(
this
->
id
);
}
jboolean
JVLC
::
isPlaying
()
{
return
VLC_IsPlaying
(
this
->
id
);
}
jfloat
JVLC
::
getPosition
()
{
return
VLC_PositionGet
(
this
->
id
);
}
jfloat
JVLC
::
setPosition
(
jfloat
position
)
{
return
VLC_PositionSet
(
this
->
id
,
position
);
}
jint
JVLC
::
getTime
()
{
return
VLC_TimeGet
(
this
->
id
);
}
jint
JVLC
::
setTime
(
jint
seconds
,
jboolean
relative
)
{
return
VLC_TimeSet
(
this
->
id
,
seconds
,
relative
);
}
jint
JVLC
::
getLength
()
{
return
VLC_LengthGet
(
this
->
id
);
}
jfloat
JVLC
::
speedFaster
()
{
return
VLC_SpeedFaster
(
this
->
id
);
}
jfloat
JVLC
::
speedSlower
()
{
return
VLC_SpeedSlower
(
this
->
id
);
}
jint
JVLC
::
getPlaylistIndex
()
{
return
VLC_PlaylistIndex
(
this
->
id
);
}
jint
JVLC
::
getPlaylistItems
()
{
return
VLC_PlaylistNumberOfItems
(
this
->
id
);
}
jint
JVLC
::
playlistNext
()
{
return
VLC_PlaylistNext
(
this
->
id
);
}
jint
JVLC
::
playlistPrev
()
{
return
VLC_PlaylistPrev
(
this
->
id
);
}
jint
JVLC
::
playlistClear
()
{
return
VLC_PlaylistClear
(
this
->
id
);
}
jint
JVLC
::
setVolume
(
jint
volume
)
{
return
VLC_VolumeSet
(
this
->
id
,
volume
);
}
jint
JVLC
::
getVolume
()
{
return
VLC_VolumeGet
(
this
->
id
);
}
jint
JVLC
::
muteVolume
()
{
return
VLC_VolumeMute
(
this
->
id
);
}
jint
JVLC
::
fullScreen
()
{
return
VLC_FullScreen
(
this
->
id
);
}
/* XXX: in progress */
::
JVLCVariable
*
JVLC
::
getVariable
(
::
java
::
lang
::
String
*
varName
)
{
char
*
const
psz_var
=
(
char
*
const
)
elements
(
varName
->
toCharArray
());
vlc_value_t
value
;
if
(
VLC_VariableGet
(
this
->
id
,
psz_var
,
&
value
)
!=
VLC_SUCCESS
)
{
// throw exception
return
NULL
;
}
return
NULL
;
}
/*
* This is an helper function to convert jstrings to char*s
* setString _assumes_ the char* dest has been allocated
* XXX: should return >= 0 on success, < 0 on error
*/
void
setString
(
jstring
orig
,
char
*
dest
)
{
jsize
chars
=
JvGetStringUTFRegion
(
orig
,
0
,
orig
->
length
(),
dest
);
dest
[
chars
]
=
'\0'
;
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment