-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Possible issue with GraspitSceneManagerHeadless GraspitCore Handling #16
Comments
I removed the mentions to |
After addind
where removed. It looks like that this was forgotten in the main repo. |
Hi, Also, Qt can't really be run twice, hence the error with the SoQt::init() being called twice. So you can only run one GUI Element. I will try to get around to it this weekend, but can't promise. It may get to next week. Cheers |
Hey Jenny, Super glad to hear that you'll take a look. Just so you know, there's an easy work around for me (calling it as a main and parsing the stdout, which isn't super pretty but it'll work for now). And yes there is a public repo. There are two ways you could go about building the environment. You could clone and build both the graspit and graspit-pkgs forks from here. Or if you want the exact environment you could either build or download a Singularity container. Singularity is super cool... All you have to do is clone and build from their repo. Because I have to run most of my applications on a cluster, the admins really prefer us to use this container since it allows us to build whatever crazy environment we want... And if we want to share the environment (say for reproducability or just being nice) all you have to do is cp the container file and bam! You have the exact environment the guy who is making you look at 3 month code is using. If you prefer to build the repo's yourself, then I would still recommend using Singularity, because I could give you my bootstrap file (kind of like a Vagrant init file but much more helpful). The bootstrap file contains all of the command line arguments you would need to pass in order to build the container to the same state as the one I am running (except you just have to run one command via singularity). Just to show how cool it is, this is how you would go about it: Step 1) Singularity
Step 2) Create container (does not initialize environment, really just creates a mount).
Step3) Bootstrap the container and tada! You have the exact same environment I'm using.
I can provide the bootstrap file (v2_ubuntu.def) if you're down for trying this out. If not, I'll post the cmake commands to build the repos. Another possibility is downloading the container (still have to clone/build Singularity). |
Hi, Thanks for the detailed instructions about singularity. I may just check the source code first just looking at it, I may have a suggestion when I see what the issue may be and then will let you know so you can try it. Sorry my time is so limited at the moment. Quick question: Did you modify the sources either in graspit or graspit-pkgs in your forks, or are you just adding your own extensions? Cheers |
Let me preface this with the fact that I am not very experienced with C++ and thread related structures so I apologize in advance if this seems like a silly issue. I was implementing a class that inherits
GraspItAccessor
by essentially usingEigenGraspPlanner
as template. Its a very simple class that retrieves the current hand, calls autograsp, then returns the dofs. I copied the necessary methods fromEigenGraspPlanner
(removingivIdleCallback
because this "planner" doesn't update states). The main problem I am having is during runtime. When an executable analogous tograsp_planning
(except that it uses the autograsp planner rather thanEigenGraspPlanner
) that I'll callautograsp_planning
is called repeatedly (in a for loop), something from the previous iteration remains initialized and I receive this stdout followed by hanging.If I call
autograsp_planning
once and exit, there is no issue; however, for the sake of efficiency I would prefer not to. Below is the stdout that would normally precede the error. The classContactGetter
inheritsGraspitAccessor
. Also just for the sake of clarifcation, I am wrappingautograsp_planning
for python and calling its method in a for loop (or list comprehension, no difference here) in python.I searching the errors and found that you had a similar issue in June when trying to communicate between the headless scene manager and graspitCore. From what I can tell above, it seems that my class
ContactGetter
destroys properly.The two most relevant functions are included below:
The text was updated successfully, but these errors were encountered: