/*========================================================================= medInria Copyright (c) INRIA 2013 - 2020. All rights reserved. See LICENSE.txt for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. =========================================================================*/ #include #include #include #include #include #include #include #include #include #include #include #include // ///////////////////////////////////////////////////////////////// // medVtkFibersDataPrivate // ///////////////////////////////////////////////////////////////// class medVtkFibersDataPrivate { public: vtkSmartPointer data; }; // ///////////////////////////////////////////////////////////////// // medVtkFibersData // ///////////////////////////////////////////////////////////////// medVtkFibersData::medVtkFibersData() : medAbstractFibersData(), d(new medVtkFibersDataPrivate) { d->data = nullptr; } medVtkFibersData::~medVtkFibersData() { delete d; d = nullptr; } bool medVtkFibersData::registered() { return medAbstractDataFactory::instance()->registerDataType(); } void medVtkFibersData::setData(void *data) { if (vtkFiberDataSet *dataset = vtkFiberDataSet::SafeDownCast (static_cast(data))) { d->data = dataset; return; } vtkPolyData *inputData = vtkPolyData::SafeDownCast(static_cast (data)); if (!inputData) return; if (!d->data) d->data = vtkFiberDataSet::New(); d->data->SetFibers(inputData); this->setMetaData("BundleList", QStringList()); } void *medVtkFibersData::data() { return d->data; }