37 DataObjectPointerArray inputs = this->GetIndexedInputs();
40 std::vector< mitk::NavigationData::Pointer > clonedDatas;
43 for (
unsigned int index=0; index < inputs.size(); index++)
46 this->GetOutput(index)->Graft(this->GetInput(index));
49 if (! m_Recording)
continue;
53 clone->Graft(this->GetInput(index));
54 clonedDatas.push_back(clone);
56 if (m_StandardizeTime)
59 clonedDatas[index]->SetIGTTimeStamp(igtTimestamp);
64 if ((m_RecordCountLimit > 0) && (m_NavigationDataSet->Size() >= m_RecordCountLimit)) m_Recording =
false;
66 if (!m_Recording)
return;
70 m_NavigationDataSet->AddNavigationDatas(clonedDatas);
77 MITK_WARN <<
"Already recording please stop before start new recording session";
84 if (! m_StandardizedTimeInitialized)
87 if (m_NavigationDataSet.IsNull())
95 std::cout <<
"You have to start a recording first" << std::endl;
114 return m_NavigationDataSet->Size();
virtual void StartRecording()
Starts recording NavigationData into the NAvigationDataSet.
virtual void ResetRecording()
Resets the Datasets and the timestamp, so a new recording can happen.
itk::SmartPointer< Self > Pointer
bool m_Recording
indicates whether the recording is started or not
double GetElapsed()
returns the time elapsed since calling Start() for the first time in milliseconds ...
int m_RecordCountLimit
limits the number of frames, recording will be stopped if the limit is reached. -1 disables the limit...
bool m_StandardizedTimeInitialized
virtual void StopRecording()
Stops StopsRecording to the NavigationDataSet.
virtual int GetNumberOfRecordedSteps()
Returns the number of time steps that were recorded in the current set. Warning: This Method does NOT...
double TimeStampType
type that holds the time at which the data was recorded
virtual ~NavigationDataRecorder()
static void clone(T *&dst, S *src, int n)
static IGTTimeStamp * GetInstance()
returns a pointer to the current instance of mitkTimeStamp
void Start(itk::Object::Pointer device)
starts the time-acquisition
unsigned int m_NumberOfInputs
counts the numbers of added input NavigationDatas
void Stop(itk::Object::Pointer device)
stops the time-acqusition
virtual void GenerateData() override
static itkEventMacro(BoundingShapeInteractionEvent, itk::AnyEvent) class MITKBOUNDINGSHAPE_EXPORT BoundingShapeInteractor Pointer New()
Basic interaction methods for mitk::GeometryData.