#include "vtkMultiNewickTreeReader.h" #include "vtkMultiPieceDataSet.h" #include "vtkSmartPointer.h" #include "vtkTestUtilities.h" #include "vtkTree.h" int TestMultiNewickTreeReader(int argc, char* argv[]) { char* file = vtkTestUtilities::ExpandDataFileName(argc, argv, "Data/Infovis/multi_tree.tre"); cerr << "file: " << file << endl; vtkSmartPointer reader = vtkSmartPointer::New(); reader->SetFileName(file); delete[] file; reader->Update(); vtkMultiPieceDataSet* forest = reader->GetOutput(); unsigned int numOfTrees = forest->GetNumberOfPieces(); int error_count = 0; if (numOfTrees != 3) { ++error_count; } for (unsigned int i = 0; i < numOfTrees; i++) { vtkTree* tr = vtkTree::SafeDownCast(forest->GetPieceAsDataObject(i)); if (!tr) { ++error_count; } } cerr << error_count << " errors" << endl; return error_count; }