How to separate pipeline processing from rendering?

My app reads in topographic data from a file then displays a surface either colored by elevation, or the surface colored by geographic slope (user option).

My simplistic understanding is that to render a surface a VTK app sequentially executes each pipeline component, from data source (e.g. file) through various filters with connection to an actor at the end. E.g. to render a topographic surface colored by elevation:

elevation pipeline: source --> elevationFilter --> mapper --> actor

The pipeline to render the slope of a topographic surface is different, incorporating a slopeFilter:

slope pipeline: source --> slopeFilter --> mapper --> actor

I don’t want to incur processing time of the pipelines when the user toggles between displaying elevation and displaying slope. I.e. when my app reads the file, does it first run through the elevationFilter and then separately run through the slopeFilter, presumably storing the end results in two separate objects/objects? Thus the user can quickly toggle between displaying elevation or displaying slope without re-running the pipelines?

Thanks!