Skip to content

manfeel/pothos_pyscript_block

Repository files navigation

pothos_pyscript_block

A pothos block that can execute dynamic python script!

simple to use

import dynacode

class MySwitcher(dynacode.DynaProxy):
    def init(self):
        self.registerSignal('paramChanged')
        self.param = None

    def work(self):
        op = self.param
        #forward buffer
        if self.input(0).elements():
            out0 = self.output(op).buffer()
            in0 = self.input(0).buffer()
            n = min(len(out0), len(in0))

            out0[:n] = in0[:n]
            self.input(0).consume(n)
            self.output(op).produce(n)

    def activate(self):
        print('WoW, activate called!')
        self.paramChanged('haha')

    def deactivate(self):
        print('WoW, deactivate called!')
        self.paramChanged('end')

    @dynacode.signal_slot
    def setDynamicParam(self, param):
        print('param is {0}, value={1}'.format(type(param), param))
        self.param = param

note

If we want to register a signal slot, we can simply add a @dynacode.signal_slot decoration to an exist method.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published