Re: [eigen] External contributions

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


Hi,

Thanks for your idea. I too have been thinking about that.

I think that my favorite option is to have a eigen2/unsupported
directory inside which things are organized in the same way as in
eigen2/ itself. So it would look like this:

eigen2/unsupported/Eigen/FooModule
eigen2/unsupported/Eigen/src/FooModule/Foo.h
eigen2/unsupported/doc/snippets/Foo_bar_int.cpp
eigen2/unsupported/doc/TutorialFoo.dox
eigen2/unsupported/test/foo.cpp

Then we would install the headers also with the unsupported/ prefix,
but still in the same eigen2/ directory, so it would look like this:

/usr/include/eigen2/unsupported/Eigen/FooModule
/usr/include/eigen2/unsupported/Eigen/src/FooModule/Foo.h

The user would either #include as follows,

#include<unsupported/Eigen/FooModule>

or (non default behavior) he could add
/usr/include/eigen2/unsupported/ also to his include path so he could
seamlessly do

#include<Eigen/FooModule>

> - documentation: the easiest would be to use the infrastructure from Eigne
> core.

Sure. It's just a matter of:
1) adding the unsupported/ paths to doc/Doxyfile.in, and backport to
Mainpage.dox (for api.kde.org)
2) copy the CMakeLists.txt files under doc/ to unsupported/doc/. They
are the code responsible for building the snippets and recording their
output.

> have for example a different style/background in the doxygen-generated pages
> to indicate it is not supported.

That, or any other visual hint, good idea.

> - contribution policy: what should be accepted as a contribution? For
> example, I have some template files based 100% on Eigen for mechanics
> (Recursive Newton-Euler solver for kinematic chains) and control (algebraic
> riccati equation solver). I am also thinking of a convex optimization
> interior-points methods at a later point.

We have yet to write some clear criteria but I can already say that
what you mention here sounds very good.

Cheers,
Benoit



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/