Function Probe
variable_function_probe
import time
import threading
self.$(id) = $(id) = $value
#slurp
def _$(id)_probe():
while True:
val = self.$(block_id()).$(function_name())($(function_args()))
try: self.set_$(id)(val)
except AttributeError, e: pass
time.sleep(1.0/($poll_rate))
_$(id)_thread = threading.Thread(target=_$(id)_probe)
_$(id)_thread.daemon = True
_$(id)_thread.start()
self.set_$(id)($value)
Value
value
0
raw
Block ID
block_id
my_block_0
string
Function Name
function_name
get_number
string
Function Args
function_args
string
#if $function_args() then 'none' else 'part'#
Poll Rate (Hz)
poll_rate
10
real
Periodically probe a function and set its value to this variable.
Set the values for block ID, function name, and function args appropriately: \
Block ID should be the ID of another block in this flow graph. \
Function name should be the name of a class method on that block. \
Function args are the parameters passed into that function. \
For a function with no arguments, leave function args blank. \
When passing a string for the function arguments, quote the string literal: '"arg"'.
The values will used literally, and generated into the following form:
self.block_id.function_name(function_args)
To poll a stream for a level, use this with the probe signal block.