* Loads the view.
 */
$viewInfos = new ViewInfos();
$viewInfos->loadFromFile($viewId) or die;
$view = new View($viewInfos);
/*
 * Creates the trace stream handler.
 */
if ($traceHandler === "mock") {
    $trace = new MockTraceHandler();
} else {
    if ($traceHandler === "ktbs") {
        $trace = new KTBSTraceHandler($traceRef, $traceModel);
    } else {
        if ($traceHandler === "file") {
            $trace = new XMLFileTraceHandler($traceRef);
        }
    }
}
/*
 * Streams data to the player from the trace handler, transforming it with the view.
 */
header("Content-type: text/xml");
do {
    $obsel = $trace->getNextObsels($lastKnownId, $lastKnownTime);
    $svgElt = $view->transformSingles($obsel);
    pushElement($svgElt);
} while (!connection_aborted() and !$trace->eot());
if ($trace->eot()) {
    pushElement('<eot/>');
}