1. A method for simulating multi-processing pipeline data processing using a single-processing processor, wherein a host application creates a pipeline of linked data processing tasks for supplying processed data to the host application, then requests data from the pipeline, the method comprising the steps of: running a host application on the single-processing processor; the host application creating a data processing pipeline of linked data processing tasks to supply the host application with processed data from a data source; the host application invoking the pipeline by requesting data from the pipeline; and deleting the pipeline when the host application no longer needs data from the pipeline; wherein the step of creating the pipeline comprises the steps of: (a) instantiating a first function selected from a plurality of predefined functions as a first task; (b) defining a link from the host application to the first task; (c) instantiating a second function selected from the plurality of predetermined functions as a second task; (d) defining a link from the first task to the second task and redefining the link from the host application to the second task; (e) repeating steps (c) and (d) for subsequent tasks, the host application being linked to a last instantiated task, each task being stored in a memory, each task controlling the processor when processing data; and wherein the step of invoking the pipeline comprises the steps of: (f) requesting data from the last task by the host application, each task in turn requesting data from an upstream task to which it is linked; (g) obtaining data by the first task from a data source; (h) processing the obtained data; (i) returning the processed data to the next downstream task in the pipeline; (j) processing the data in the downstream task; and (k) repeating steps (i) and (j) until the data is returned to the host application; wherein steps (f)-(k) are repeated for each data request by the host application.