Home › Forum › SOFA › Programming with SOFA › SOFA libraries/headers/files on different versions
Tagged: 64_bits, headers, Linux_ubuntu, location, sofa libraries, sofa versions, SOFA_1706
- This topic has 1 reply, 2 voices, and was last updated 6 years, 7 months ago by Hugo.
-
AuthorPosts
-
18 May 2018 at 20:19 #11067bgarcialBlocked
At this time, we are reusing an attaching implementation that was done with an older SOFA version. Some libraries that are called with #include, have been moved from routes, or have a different directory structure.
For example, if I want to call the
MechanicalObject.h
file, which it’s located in:sofa/SofaKernel/modules/SofaBaseMechanics/MechanicalObject.h
I include it of this way:
# include <SofaBaseMechanics/MechanicalObject.h>
It’s OK.
But, I also have the need to include other header files like:
AttachBodyPerformer.h
which, I’ve searched and found:sofa/modules/SofaUserInteraction/AttachBodyPerformer.h
, then I include it of this way:# include <SofaUserInteraction/AttachBodyPerformer.h>
Until here, all O.K
My question is:
How can I recognize what is the way to put the routes to #include…?
When I call to
MechanicalObject.h
, the#include
instructions begin atsofa/Sofa/SofaKernel/modules/
but when I did want a call to
AttachBodyPerformer.h
the#include
instructions begin atsofa/modules/
I understand that in more recent versions, the libraries and classes can change of location, but …. there is some standard path to find these files type?
Or There is some documentation about it (of change of paths in relation to previous versions? )
This section on documentation will be important, at this momentI cannot found
#include <sofa/component/topology/PointSubset.h>
on 17.06 version.The
sofa/component/topology/PointSubset.h
is related with topological changes on SOFA, in the 17.06 version … there is some header file/plugin/library which can replace thisPointSubset.h
functionality?23 May 2018 at 18:54 #11093HugoKeymasterDear @bgarcial
Indeed things have been moving in the past, and will move one last time in the future. We know it’s annoying, especially for includes as you are mentioning. But this is done to make SOFA evolve towards a cleaner, standard and more understandable structure. We are currently working on it.
For now, we have a page describing the API of the open-source codes. This should definitely help you in your work. However, I don’t know this class in SOFA:
PointSubset.h
. Are you sure it does exist?Best,
Hugo
-
AuthorPosts
- You must be logged in to reply to this topic.