From: Josh B. <jj_...@ou...> - 2006-02-13 23:18:48
|
Is it possible to use the latest version of Javaclient from CVS with Player 1.6.4? It seems that I'd loose a lot of recent bug fixes by going back to an old version of Javaclient, but I don't know if this combination will cause me any problems. Also, I've noticed that the HEAD revision in CVS generates several "the field is never read locally" errors in Eclipse. A few of these are actually bugs cause by a trivial oversight when copying and pasting: Index: javaclient/AudioMixerInterface.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- javaclient/AudioMixerInterface.java +++ javaclient/AudioMixerInterface.java (working copy) @@ -148,11 +148,11 @@ public synchronized int getMasterLeft () { return masterLeft; } public synchronized int getMasterRight () { return masterRight; } public synchronized int getPCMLeft () { return pcmLeft; } - public synchronized int getPCMRight () { return pcmLeft; } + public synchronized int getPCMRight () { return pcmRight; } public synchronized int getLineLeft () { return lineLeft; } - public synchronized int getLineRight () { return lineLeft; } + public synchronized int getLineRight () { return lineRight; } public synchronized int getMicLeft () { return micLeft; } - public synchronized int getMicRight () { return micLeft; } + public synchronized int getMicRight () { return micRight; } public synchronized int getIGain () { return iGain; } public synchronized int getOGain () { return oGain; } } Thanks, Josh |
From: Radu B. R. <ru...@cs...> - 2006-02-13 23:32:34
Attachments:
smime.p7s
|
Hey Josh, Yes, Javaclient from CVS should work nicely with 1.6.4 (although I always test against 1.6.5 and latest 1.6.5 CVSed). I am currently wrapping up the last classes for Javaclient2, and I think that we should all concentrate our efforts of testing/developing and using on the 2.x API. I will have a beta version soon online. Any requests ? (I will integrate Gareth's exception patches) Btw, functions like the ones above (from AudioMixerInterface) will be obsolete. Instead you will just get something like: AudioMixerInterface ami = request... ami.getLevels (); // request a PLAYER_AUDIOMIXER_GET_LEVELS ... // wait in a loop if (isConfigReady ()) PlayerAudiomixerConfig pac = ami.getConfig (); ... and then access pac.getMaster_left, pac.getMaster_right, pac.getPcm_left...etc So basically all the Player structures will be accessible directly from now on using get/set methods. I think this will ease things a lot. Some feedback would be nice :) Cheers, Radu. Josh Beitelspacher wrote: >Is it possible to use the latest version of Javaclient from CVS with >Player 1.6.4? It seems that I'd loose a lot of recent bug fixes by >going back to an old version of Javaclient, but I don't know if this >combination will cause me any problems. > >Also, I've noticed that the HEAD revision in CVS generates several >"the field is never read locally" errors in Eclipse. A few of these >are actually bugs cause by a trivial oversight when copying and >pasting: > >Index: javaclient/AudioMixerInterface.java >=================================================================== >--- javaclient/AudioMixerInterface.java >+++ javaclient/AudioMixerInterface.java (working copy) >@@ -148,11 +148,11 @@ > public synchronized int getMasterLeft () { return masterLeft; } > public synchronized int getMasterRight () { return masterRight; } > public synchronized int getPCMLeft () { return pcmLeft; } >- public synchronized int getPCMRight () { return pcmLeft; } >+ public synchronized int getPCMRight () { return pcmRight; } > public synchronized int getLineLeft () { return lineLeft; } >- public synchronized int getLineRight () { return lineLeft; } >+ public synchronized int getLineRight () { return lineRight; } > public synchronized int getMicLeft () { return micLeft; } >- public synchronized int getMicRight () { return micLeft; } >+ public synchronized int getMicRight () { return micRight; } > public synchronized int getIGain () { return iGain; } > public synchronized int getOGain () { return oGain; } > } > > >Thanks, >Josh > > -- | Radu Bogdan Rusu | http://rbrusu.com/ | http://www9.cs.tum.edu/people/rusu/ | Intelligent Autonomous Systems | Technische Universitaet Muenchen |
From: Josh B. <jo...@ne...> - 2006-02-14 01:15:01
|
Radu, Thanks for the quick response. How soon is soon? I'm the teaching assistant for a class that is going to be using Javaclient, but I don't want to have to start with the current version and then switch everyone over. When you say 2.x API, are you still using Player 1.6.5, or the beta Player = 2.0? Thanks, Josh On 2/13/06, Radu Bogdan Rusu <ru...@cs...> wrote: > Hey Josh, > > Yes, Javaclient from CVS should work nicely with 1.6.4 (although I > always test against 1.6.5 and latest 1.6.5 CVSed). > > I am currently wrapping up the last classes for Javaclient2, and I think > that we should all concentrate our efforts of testing/developing and > using on the 2.x API. > > I will have a beta version soon online. Any requests ? (I will integrate > Gareth's exception patches) > > Btw, functions like the ones above (from AudioMixerInterface) will be > obsolete. Instead you will just get something like: > > AudioMixerInterface ami =3D request... > ami.getLevels (); // request a PLAYER_AUDIOMIXER_GET_LEVELS > ... // wait in a loop > if (isConfigReady ()) > PlayerAudiomixerConfig pac =3D ami.getConfig (); > > ... and then access pac.getMaster_left, pac.getMaster_right, > pac.getPcm_left...etc > > So basically all the Player structures will be accessible directly from > now on using get/set methods. I think this will ease things a lot. > > Some feedback would be nice :) > > Cheers, > Radu. |
From: Radu B. R. <ru...@cs...> - 2006-02-14 08:01:10
Attachments:
smime.p7s
|
Hey Josh, Yup, I'm talking about Player 2.0. I've been coding the 2.x interfaces for the last couple of days (I was about to start a thread here and on playerstage-users/developers *IF* we actually need a Java client anymore, provided that we can generate - to a certain extent - some basic functionality via SWIG), and it seems like the whole thing is getting close to release. How close it's hard to say... if it would be my call, we'd all work together to finish the damn thing until the end of the week, so we can all mind our AI/robotics high-level research afterwards. :) As about SWIG, don't get me started... I'm not the most prolific Java coder out there, but looking over some generated SWIG code (Yuck!) is what actually made me start porting Javaclient 1.6.5 to 2.0 anyway. :) Besides, what's the point of having a Java client, if you link against a system library, thus being unable to just copy a JAR nicely and use it on whatever operating system you want (JVM-enabled)? What interfaces would you need for your class? I can make sure that we finish working on those first. I will also send a mail to ps-developers and jump in to help them finish 2.0 sooner. I was too busy with other stuff until now to actually do something in that direction. You *could* also still use Player/Javaclient 1.6.5, which should still work nicely. Make a list of whatever interfaces you are going to use, hardware (drivers) and simulators, and we can look to see if they are bug-free. Cheers, Radu. Josh Beitelspacher wrote: >Radu, > >Thanks for the quick response. How soon is soon? I'm the teaching >assistant for a class that is going to be using Javaclient, but I >don't want to have to start with the current version and then switch >everyone over. > >When you say 2.x API, are you still using Player 1.6.5, or the beta Player 2.0? > >Thanks, >Josh > >On 2/13/06, Radu Bogdan Rusu <ru...@cs...> wrote: > > >>Hey Josh, >> >>Yes, Javaclient from CVS should work nicely with 1.6.4 (although I >>always test against 1.6.5 and latest 1.6.5 CVSed). >> >>I am currently wrapping up the last classes for Javaclient2, and I think >>that we should all concentrate our efforts of testing/developing and >>using on the 2.x API. >> >>I will have a beta version soon online. Any requests ? (I will integrate >>Gareth's exception patches) >> >>Btw, functions like the ones above (from AudioMixerInterface) will be >>obsolete. Instead you will just get something like: >> >>AudioMixerInterface ami = request... >>ami.getLevels (); // request a PLAYER_AUDIOMIXER_GET_LEVELS >>... // wait in a loop >>if (isConfigReady ()) >> PlayerAudiomixerConfig pac = ami.getConfig (); >> >>... and then access pac.getMaster_left, pac.getMaster_right, >>pac.getPcm_left...etc >> >>So basically all the Player structures will be accessible directly from >>now on using get/set methods. I think this will ease things a lot. >> >>Some feedback would be nice :) >> >>Cheers, >>Radu. >> >> > > >------------------------------------------------------- >This SF.net email is sponsored by: Splunk Inc. Do you grep through log files >for problems? Stop! Download the new AJAX search engine that makes >searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! >http://sel.as-us.falkag.net/sel?cmd=k&kid3432&bid#0486&dat1642 >_______________________________________________ >Java-player-users mailing list >Jav...@li... >https://lists.sourceforge.net/lists/listinfo/java-player-users > > -- | Radu Bogdan Rusu | http://rbrusu.com/ | http://www9.cs.tum.edu/people/rusu/ | Intelligent Autonomous Systems | Technische Universitaet Muenchen |
From: Josh B. <jj_...@ou...> - 2006-02-15 01:21:23
|
Radu, We're hesitant to switch to Player 2.0. This is for an undergraduate robotics class and we're already throwing enough at the students.=20 Adding an untested code base to the situation doesn't seem like a great idea. Specifically, we're the most worried about the documentation. Player 1.6.5 didn't have the greatest documentation, and I don't know how much further behind Player 2.0 and Javaclient 2.0 will be. I'm actually using SWIG at the moment to generate an interface for libgazebo. Going straight into libgazebo lets me run simulations much faster than real time. As a long term goal I want to create a higher level interface that can use libgazebo for faster than real time simulations, or player for controlling real robots. Josh On 2/14/06, Radu Bogdan Rusu <ru...@cs...> wrote: > Hey Josh, > > Yup, I'm talking about Player 2.0. > > I've been coding the 2.x interfaces for the last couple of days (I was > about to start a thread here and on playerstage-users/developers *IF* we > actually need a Java client anymore, provided that we can generate - to > a certain extent - some basic functionality via SWIG), and it seems like > the whole thing is getting close to release. How close it's hard to > say... if it would be my call, we'd all work together to finish the damn > thing until the end of the week, so we can all mind our AI/robotics > high-level research afterwards. :) As about SWIG, don't get me > started... I'm not the most prolific Java coder out there, but looking > over some generated SWIG code (Yuck!) is what actually made me start > porting Javaclient 1.6.5 to 2.0 anyway. :) > > Besides, what's the point of having a Java client, if you link against a > system library, thus being unable to just copy a JAR nicely and use it > on whatever operating system you want (JVM-enabled)? > > What interfaces would you need for your class? I can make sure that we > finish working on those first. > > I will also send a mail to ps-developers and jump in to help them finish > 2.0 sooner. I was too busy with other stuff until now to actually do > something in that direction. > > You *could* also still use Player/Javaclient 1.6.5, which should still > work nicely. Make a list of whatever interfaces you are going to use, > hardware (drivers) and simulators, and we can look to see if they are > bug-free. > > Cheers, > Radu. |
From: Radu B. R. <ru...@cs...> - 2006-02-15 08:09:04
Attachments:
smime.p7s
|
Hey Josh, Yeah, I understand. It is a bit "risky". Well let me know if there's anything that you need for the Javaclient 1.6.5/Player 1.6.5 combo. Good luck with your class. Radu. Josh Beitelspacher wrote: >Radu, > >We're hesitant to switch to Player 2.0. This is for an undergraduate >robotics class and we're already throwing enough at the students. >Adding an untested code base to the situation doesn't seem like a >great idea. Specifically, we're the most worried about the >documentation. Player 1.6.5 didn't have the greatest documentation, >and I don't know how much further behind Player 2.0 and Javaclient 2.0 >will be. > >I'm actually using SWIG at the moment to generate an interface for >libgazebo. Going straight into libgazebo lets me run simulations much >faster than real time. As a long term goal I want to create a higher >level interface that can use libgazebo for faster than real time >simulations, or player for controlling real robots. > >Josh > >On 2/14/06, Radu Bogdan Rusu <ru...@cs...> wrote: > > >>Hey Josh, >> >>Yup, I'm talking about Player 2.0. >> >>I've been coding the 2.x interfaces for the last couple of days (I was >>about to start a thread here and on playerstage-users/developers *IF* we >>actually need a Java client anymore, provided that we can generate - to >>a certain extent - some basic functionality via SWIG), and it seems like >>the whole thing is getting close to release. How close it's hard to >>say... if it would be my call, we'd all work together to finish the damn >>thing until the end of the week, so we can all mind our AI/robotics >>high-level research afterwards. :) As about SWIG, don't get me >>started... I'm not the most prolific Java coder out there, but looking >>over some generated SWIG code (Yuck!) is what actually made me start >>porting Javaclient 1.6.5 to 2.0 anyway. :) >> >>Besides, what's the point of having a Java client, if you link against a >>system library, thus being unable to just copy a JAR nicely and use it >>on whatever operating system you want (JVM-enabled)? >> >>What interfaces would you need for your class? I can make sure that we >>finish working on those first. >> >>I will also send a mail to ps-developers and jump in to help them finish >>2.0 sooner. I was too busy with other stuff until now to actually do >>something in that direction. >> >>You *could* also still use Player/Javaclient 1.6.5, which should still >>work nicely. Make a list of whatever interfaces you are going to use, >>hardware (drivers) and simulators, and we can look to see if they are >>bug-free. >> >>Cheers, >>Radu. >> >> > > >------------------------------------------------------- >This SF.net email is sponsored by: Splunk Inc. Do you grep through log files >for problems? Stop! Download the new AJAX search engine that makes >searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! >http://sel.as-us.falkag.net/sel?cmd=k&kid3432&bid#0486&dat1642 >_______________________________________________ >Java-player-users mailing list >Jav...@li... >https://lists.sourceforge.net/lists/listinfo/java-player-users > > -- | Radu Bogdan Rusu | http://rbrusu.com/ | http://www9.cs.tum.edu/people/rusu/ | Intelligent Autonomous Systems | Technische Universitaet Muenchen |
From: Radu B. R. <ru...@cs...> - 2006-02-14 17:58:58
Attachments:
smime.p7s
|
Btw, I just commited a patched AudioMixerInterface to the CVS. Forgot to say thanks. :) Radu. Josh Beitelspacher wrote: >Index: javaclient/AudioMixerInterface.java >=================================================================== >--- javaclient/AudioMixerInterface.java >+++ javaclient/AudioMixerInterface.java (working copy) >@@ -148,11 +148,11 @@ > public synchronized int getMasterLeft () { return masterLeft; } > public synchronized int getMasterRight () { return masterRight; } > public synchronized int getPCMLeft () { return pcmLeft; } >- public synchronized int getPCMRight () { return pcmLeft; } >+ public synchronized int getPCMRight () { return pcmRight; } > public synchronized int getLineLeft () { return lineLeft; } >- public synchronized int getLineRight () { return lineLeft; } >+ public synchronized int getLineRight () { return lineRight; } > public synchronized int getMicLeft () { return micLeft; } >- public synchronized int getMicRight () { return micLeft; } >+ public synchronized int getMicRight () { return micRight; } > public synchronized int getIGain () { return iGain; } > public synchronized int getOGain () { return oGain; } > } > > -- | Radu Bogdan Rusu | http://rbrusu.com/ | http://www9.cs.tum.edu/people/rusu/ | Intelligent Autonomous Systems | Technische Universitaet Muenchen |