This paper considers an object-oriented implementation of a generic program module for field recovery and recovery-based error stimation. The field recovery is based on the superconvergent patch recovery technique by Zienkiewicz and Zhu. The current implementation is problem independent, and is organized as a set of C++ classes based on the software library Diffpack. The program may be run stand-alone as a post-processor, reading finite element data and results from ASCII files. Alternatively, it may be linked into existing simulation codes through a Fortran interface, thereby enabling error estimation within the time-step loop of a transient simulation.