void VolumeCollectionModalityFilter::adjustFilteredCollection() { VolumeCollection* collection = inport_.getData(); if ((collection == 0) || (collection->empty() == true)) { filteredCollection_.clear(); outport_.setData(0); return; } if (currentModality_.getName() != modalityProp_.get()) { currentModality_ = *(modalityProp_.getValue()); filteredCollection_.clear(); if (currentModality_ != Modality::MODALITY_ANY) { for (size_t i = 0; i < collection->size(); ++i) { if (collection->at(i)->getModality() == currentModality_) filteredCollection_.add(collection->at(i)); } outport_.setData(&filteredCollection_); } else outport_.setData(inport_.getData()); } }