usrp-users@lists.ettus.com

Discussion and technical support related to USRP, UHD, RFNoC

View all threads

how to Implement message passing

JD
Juan Daniel Fernandez Martinez
Tue, Dec 18, 2012 10:54 PM

Hi everyone,
I need to implement message passing, my idea is to make some sort of message source (I inherit from public gr_sync_block) that works as a controller for another block (it has to send a message each 6 minutes).
I read that is necessary to inherit from gnuradio::block. In the .h file I added the #include <gnuradio/block.h> and inherited from gnuradio::block (like this "class JDFM_API jdfm_control : public gr_sync_block, public gnuradio::block"). I know that I have redefine a constructor:  gnuradio::block constructor but I dont know how to do it, i mean, I don't understand the parameters [("my block", in_sig, out_sig, msg_signature(1, 2)], can I keep my regular constructor?, can I still use gnuradio-companion if I create a block that inherits from block? where do I define the behaviour of sending messages? .
I haven't been able to find a simple example of messages implementation. If anyone can guide me or show me an example, it would be awesome.

Thanks in advance.


Este documento puede contener información privilegiada o confidencial. Por tanto, usar esta información y sus anexos para propósitos ajenos a los de la Universidad Icesi, divulgarla a personas a las cuales no se encuentre destinado este correo o reproducirla total o parcialmente, se encuentra prohibido en virtud de la legislación vigente. La universidad no asumirá responsabilidad sobre información, opiniones o criterios contenidos en este correo que no estén directamente relacionados con la Icesi. Si usted no es el destinatario autorizado o por error recibe este mensaje, por favor informe al remitente y posteriormente bórrelo de su sistema sin conservar copia del mismo.

Hi everyone, I need to implement message passing, my idea is to make some sort of message source (I inherit from public gr_sync_block) that works as a controller for another block (it has to send a message each 6 minutes). I read that is necessary to inherit from gnuradio::block. In the .h file I added the #include <gnuradio/block.h> and inherited from gnuradio::block (like this "class JDFM_API jdfm_control : public gr_sync_block, public gnuradio::block"). I know that I have redefine a constructor: gnuradio::block constructor but I dont know how to do it, i mean, I don't understand the parameters [("my block", in_sig, out_sig, msg_signature(1, 2)], can I keep my regular constructor?, can I still use gnuradio-companion if I create a block that inherits from block? where do I define the behaviour of sending messages? . I haven't been able to find a simple example of messages implementation. If anyone can guide me or show me an example, it would be awesome. Thanks in advance. ________________________________ Este documento puede contener información privilegiada o confidencial. Por tanto, usar esta información y sus anexos para propósitos ajenos a los de la Universidad Icesi, divulgarla a personas a las cuales no se encuentre destinado este correo o reproducirla total o parcialmente, se encuentra prohibido en virtud de la legislación vigente. La universidad no asumirá responsabilidad sobre información, opiniones o criterios contenidos en este correo que no estén directamente relacionados con la Icesi. Si usted no es el destinatario autorizado o por error recibe este mensaje, por favor informe al remitente y posteriormente bórrelo de su sistema sin conservar copia del mismo.
JB
Josh Blum
Wed, Dec 19, 2012 6:19 PM

use gnuradio-companion if I create a block that inherits from block?
where do I define the behaviour of sending messages? . I haven't been
able to find a simple example of messages implementation. If anyone
can guide me or show me an example, it would be awesome.

Some helpful example:
This project implements a simple MAC layer using the message passing
(all in python): https://github.com/buoyboy/pre-cog

Several of the blocks in the grextras tree pass messages, specifically
the ones w/ blob in their name (c++):
https://github.com/guruofquality/grextras/tree/master/lib

Coding guide for the API (c++ and python):
https://github.com/guruofquality/grextras/wiki/Blocks-Coding-Guide#wiki-messages

-josh

Thanks in advance.


Este documento puede contener información privilegiada o
confidencial. Por tanto, usar esta información y sus anexos para
propósitos ajenos a los de la Universidad Icesi, divulgarla a
personas a las cuales no se encuentre destinado este correo o
reproducirla total o parcialmente, se encuentra prohibido en virtud
de la legislación vigente. La universidad no asumirá responsabilidad
sobre información, opiniones o criterios contenidos en este correo
que no estén directamente relacionados con la Icesi. Si usted no es
el destinatario autorizado o por error recibe este mensaje, por favor
informe al remitente y posteriormente bórrelo de su sistema sin
conservar copia del mismo.

_______________________________________________ USRP-users mailing
list USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

> use gnuradio-companion if I create a block that inherits from block? > where do I define the behaviour of sending messages? . I haven't been > able to find a simple example of messages implementation. If anyone > can guide me or show me an example, it would be awesome. Some helpful example: This project implements a simple MAC layer using the message passing (all in python): https://github.com/buoyboy/pre-cog Several of the blocks in the grextras tree pass messages, specifically the ones w/ blob in their name (c++): https://github.com/guruofquality/grextras/tree/master/lib Coding guide for the API (c++ and python): https://github.com/guruofquality/grextras/wiki/Blocks-Coding-Guide#wiki-messages -josh > > Thanks in advance. > > ________________________________ > > Este documento puede contener información privilegiada o > confidencial. Por tanto, usar esta información y sus anexos para > propósitos ajenos a los de la Universidad Icesi, divulgarla a > personas a las cuales no se encuentre destinado este correo o > reproducirla total o parcialmente, se encuentra prohibido en virtud > de la legislación vigente. La universidad no asumirá responsabilidad > sobre información, opiniones o criterios contenidos en este correo > que no estén directamente relacionados con la Icesi. Si usted no es > el destinatario autorizado o por error recibe este mensaje, por favor > informe al remitente y posteriormente bórrelo de su sistema sin > conservar copia del mismo. > > > > _______________________________________________ USRP-users mailing > list USRP-users@lists.ettus.com > http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com >