36 DataObjectPointerArray inputs = this->GetIndexedInputs();
39 std::vector< mitk::NavigationData::Pointer > clonedDatas;
41 bool atLeastOneInputIsInvalid =
false;
44 for (
unsigned int index=0; index < inputs.size(); index++)
47 this->GetOutput(index)->Graft(this->GetInput(index));
50 if (! m_Recording)
continue;
52 if (atLeastOneInputIsInvalid || !this->GetInput(index)->IsDataValid())
54 atLeastOneInputIsInvalid =
true;
58 mitk::NavigationData::Pointer clone = mitk::NavigationData::New();
59 clone->Graft(this->GetInput(index));
60 clonedDatas.push_back(clone);
62 if (m_StandardizeTime)
65 clonedDatas[index]->SetIGTTimeStamp(igtTimestamp);
70 if ((m_RecordCountLimit > 0) && (m_NavigationDataSet->Size() >=
static_cast<unsigned int>(m_RecordCountLimit)))
73 if (!m_Recording)
return;
75 if (m_RecordOnlyValidData && atLeastOneInputIsInvalid)
return;
78 m_NavigationDataSet->AddNavigationDatas(clonedDatas);