flowcraft/generator/engine.py
def _update_extra_inputs(self, p):
        """Given a process, this method updates the
        :attr:`~Process.extra_inputs` attribute with the corresponding extra
        inputs of that process

        Parameters
        ----------
        p : flowcraft.Process.Process
        """

        if p.extra_input:
            logger.debug("[{}] Found extra input: {}".format(
                p.template, p.extra_input))

            if p.extra_input == "default":
                # Check if the default type is now present in the main raw
                # inputs. If so, issue an error. The default param can only
                # be used when not present in the main raw inputs
                if p.input_type in self.main_raw_inputs:
                    logger.error(colored_print(
                        "\nThe default input param '{}' of the process '{}'"
                        " is already specified as a main input parameter of"
                        " the pipeline. Please choose a different extra_input"
                        " name.".format(p.input_type, p.template), "red_bold"))
                    sys.exit(1)
                param = p.input_type
            else:
                param = p.extra_input

            dest_channel = "EXTRA_{}_{}".format(p.template, p.pid)

            if param not in self.extra_inputs:
                self.extra_inputs[param] = {
                    "input_type": p.input_type,
                    "channels": [dest_channel]
                }
            else:
                if self.extra_inputs[param]["input_type"] != p.input_type:
                    logger.error(colored_print(
                        "\nThe extra_input parameter '{}' for process"
                        " '{}' was already defined with a different "
                        "input type '{}'. Please choose a different "
                        "extra_input name.".format(
                            p.input_type, p.template,
                            self.extra_inputs[param]["input_type"]),
                        "red_bold"))
                    sys.exit(1)
                self.extra_inputs[param]["channels"].append(dest_channel)

            logger.debug("[{}] Added extra channel '{}' linked to param: '{}' "
                         "".format(p.template, param,
                                   self.extra_inputs[param]))
            p.update_main_input(
                "{}.mix({})".format(p.input_channel, dest_channel)
            )
def _update_extra_inputs(self, p):
        """Given a process, this method updates the
        :attr:`~Process.extra_inputs` attribute with the corresponding extra
        inputs of that process

        Parameters
        ----------
        p : flowcraft.Process.Process
        """

        if p.extra_input:
            logger.debug("[{}] Found extra input: {}".format(
                p.template, p.extra_input))

            if p.extra_input == "default":
                # Check if the default type is now present in the main raw
                # inputs. If so, issue an error. The default param can only
                # be used when not present in the main raw inputs
                if p.input_type in self.main_raw_inputs:
                    logger.error(colored_print(
                        "\nThe default input param '{}' of the process '{}'"
                        " is already specified as a main input parameter of"
                        " the pipeline. Please choose a different extra_input"
                        " name.".format(p.input_type, p.template), "red_bold"))
                    sys.exit(1)
                param = p.input_type
            else:
                param = p.extra_input

            dest_channel = "EXTRA_{}_{}".format(p.template, p.pid)

            if param not in self.extra_inputs:
                self.extra_inputs[param] = {
                    "input_type": p.input_type,
                    "channels": [dest_channel]
                }
            else:
                if self.extra_inputs[param]["input_type"] != p.input_type:
                    logger.error(colored_print(
                        "\nThe extra_input parameter '{}' for process"
                        " '{}' was already defined with a different "
                        "input type '{}'. Please choose a different "
                        "extra_input name.".format(
                            p.input_type, p.template,
                            self.extra_inputs[param]["input_type"]),
                        "red_bold"))
                    sys.exit(1)
                self.extra_inputs[param]["channels"].append(dest_channel)

            logger.debug("[{}] Added extra channel '{}' linked to param: '{}' "
                         "".format(p.template, param,
                                   self.extra_inputs[param]))
            p.update_main_input(
                "{}.mix({})".format(p.input_channel, dest_channel)
            )
def _update_extra_inputs ( self , p ) : if p . extra_input : logger . debug ( "[{}] Found extra input: {}" . format ( p . template , p . extra_input ) ) if p . extra_input == "default" : # Check if the default type is now present in the main raw # inputs. If so, issue an error. The default param can only # be used when not present in the main raw inputs if p . input_type in self . main_raw_inputs : logger . error ( colored_print ( "\nThe default input param '{}' of the process '{}'" " is already specified as a main input parameter of" " the pipeline. Please choose a different extra_input" " name." . format ( p . input_type , p . template ) , "red_bold" ) ) sys . exit ( 1 ) param = p . input_type else : param = p . extra_input dest_channel = "EXTRA_{}_{}" . format ( p . template , p . pid ) if param not in self . extra_inputs : self . extra_inputs [ param ] = { "input_type" : p . input_type , "channels" : [ dest_channel ] } else : if self . extra_inputs [ param ] [ "input_type" ] != p . input_type : logger . error ( colored_print ( "\nThe extra_input parameter '{}' for process" " '{}' was already defined with a different " "input type '{}'. Please choose a different " "extra_input name." . format ( p . input_type , p . template , self . extra_inputs [ param ] [ "input_type" ] ) , "red_bold" ) ) sys . exit ( 1 ) self . extra_inputs [ param ] [ "channels" ] . append ( dest_channel ) logger . debug ( "[{}] Added extra channel '{}' linked to param: '{}' " "" . format ( p . template , param , self . extra_inputs [ param ] ) ) p . update_main_input ( "{}.mix({})" . format ( p . input_channel , dest_channel ) )
Given a process, this method updates the
        :attr:`~Process.extra_inputs` attribute with the corresponding extra
        inputs of that process

        Parameters
        ----------
        p : flowcraft.Process.Process
Given a process this method updates the : attr : ~Process . extra_inputs attribute with the corresponding extra inputs of that process