I’m working on an out-of-tree module and I want to make the
documentations
which can be shown in the windows when people double click the blocks.
I guess the documentations are written in the header files in
/gr-xx/include/xx. So I tried to modify the header files of blocks which
already exist in gnuradio, for example, the channel_model block in
gr-channel. The documentation was updated after reinstallation. It
confirms
my guess. But when I modify the header file of my own block in
/gr-xx/include/xx, the documentation wasn’t updated after
reinstallation.
The documentations are still something like:
make(xx, xx) → sptr
Return a shared_ptr to a new instance of xx::xx.
To avoid accidental use of raw pointers, xx::xx constructor is in a
private
implementation class. xx::xx::make is the public interface for creating
new
instances.
Params: (xx, xx)
I searched some previous questions related to documentation on
discussion-gnuradio, someone said documentations should be done by
doxygen
for C++ blocks and by sphinx for python blocks. But I found these are
more
related to these html documentations(maybe I’m wrong).
Did I miss something or do something wrong? Could anyone give me any
suggestions to solve this problem?
If i understood you well, you wanna see the description of ur block in
GRC.
In version 3.6.5.1 and previous ones I did that by writting block
description under tag in xml GRC file of ur block. For example:
I’m using the latest version 3.7.2. When I add the tag in the xml
of a
block, I found the block disappeared after reinstallation. Is it
because of
different version?
well, maybe, i don’t know. Still haven’t used 3.7.
But I remember when I wanted to do the same I looked for the
documentation
of standard gnuradio blocks and just copied that.
I just went back to version 3.6.5 and had some findings.
block in out-of-tree module don’t have any default
documentations(description) in it. In version 3.7, it has some default
descriptions like:
make(xx, xx) → sptr
Return a shared_ptr to a new instance of xx::xx.
To avoid accidental use of raw pointers, xx::xx constructor is in a
private
implementation class. xx::xx::make is the public interface for creating
new
instances.
Params: (xx, xx)
I’ve tried to add the tag in the xml file again, the same thing
happened: the block disappeared after reinstallation. I just added the
I’m using the latest version 3.7.2. When I add the tag in the xml of a
block, I found the block disappeared after reinstallation. Is it because of
different version?
Thanks!
Zhe
If the block disappears, it’s usually due to a malformed line of XML.
Make sure you have closed all tags properly ().
We have to work on the scrapping of doc information from the public
header file for out-of-tree projects. In the meantime, the tag
should work for you.