SetInputData( ) only copies specific hard-coded information to pipeline
This issue was created automatically from an original Mantis Issue. Further discussion may take place here.
The SetInputData( ) method relies on vtkTrivialProducer's FillOutputDataInformation( ) method to copy necessary information from the data object to the pipeline. Unfortunately, FillOutputDataInformation( ) is hard-coded to only copy certain information. For example, it has a hard-coded IsA("vtkImageData") check to see whether it should copy the SPACING and ORIGIN that are needed for vtkImageData.
Instead of having a hard-coded IsA( ) check, it should be delegating the task of copying the information to the data object, by calling a the following data object method (which doesn't yet exist):
virtual CopyInformationToPipeline(vtkInformation* info);
In this way, each data object type can decide for itself what information should be copied. There is already a strong precedent for this, because copying the info in the other direction (from the pipeline to the data object) is done by a virtual method called CopyInformationFromPipeline( ). So CopyInformationToPipeline( ) will provide a very nice symmetry.