discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: access other blocks within the flowgraph


From: Marcus Müller
Subject: Re: access other blocks within the flowgraph
Date: Wed, 12 Jan 2022 11:05:22 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.3.0

Yes, since blocks are normal C++ classes, BUT.

But it's probably not a good idea: each block runs in their own thread. Accessing anything at anytime is not guaranteed to be safe, unless *you* put safeguards there. Generally, blocks should only interact in one of three ways:

1. If the data you want to transport from one block to another is actually time-discrete regularly sampled, then it should be a sample stream

2. If you need some block to occasionally pass info to another block, the safe way would be sending that block *messages*. These get processed *when the receiving block is **not** currently working*.

3. Also, remember that all these blocks run without caring about how far the others are. So, if you need to know "hm, what was the channel estimate when *this* sample happened", then asking the channel-estimating block when you see that sample is simply too late (they might already have done newer estimates). Instead, if there's some information you need to pass along with samples, use *stream tags*. That's what they're for!

Best regards
Marcus

On 12.01.22 05:46, Michael Bassi wrote:
Hi all,

Is it possible to access public member variables and fuctions from other blocks within the flowgraph at run time?
in C++

In my case I have a custom C++ block and need to access a value from an external library block.

thank you,
Mike

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]