33 lines
776 B
Python
33 lines
776 B
Python
#!/usr/bin/python
|
|
# -*- coding: utf-8 -*-
|
|
# \file Input.py
|
|
# \brief TODO
|
|
# \author Florent Guiotte <florent.guiotte@gmail.com>
|
|
# \version 0.1
|
|
# \date 03 avril 2018
|
|
#
|
|
# TODO details
|
|
|
|
from .Node import Node
|
|
|
|
|
|
class Input(Node):
|
|
def __init__(self, name='__CHILD__'):
|
|
super().__init__('I:{}'.format(name))
|
|
self.outputs = list()
|
|
|
|
def register(self, output):
|
|
self.outputs.append(output)
|
|
|
|
def unregister(self, output):
|
|
self.outputs.remove(output)
|
|
|
|
def process(self, data, metadata=None):
|
|
"""Override abstract method"""
|
|
data, meta = self._process(data, metadata)
|
|
for output in self.outputs:
|
|
output.process(data, [x.copy() for x in meta])
|
|
|
|
def _run(self):
|
|
self.process(None, None)
|