Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitkNavigationDataDelayFilter.h
Go to the documentation of this file.
1 /*===================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 
17 #ifndef MITKNavigationDataDelayFilter_H
18 #define MITKNavigationDataDelayFilter_H
19 
20 // MITK Header
21 #include "MitkIGTExports.h"
23 #include "mitkNavigationData.h"
24 #include <mitkCommon.h>
25 
26 //ITK header
27 #include <itkTimeStamp.h>
28 
29 #include <queue>
30 
31 namespace mitk {
41  {
42  // |pairs of| timestamp and |one navigation Data for each input
43  typedef std::pair<itk::ModifiedTimeType, std::vector<mitk::NavigationData::Pointer> > BufferType;
44 
45  public:
46 
49 
50  itkSetMacro(Delay, unsigned int);
51 
52  protected:
53 
54  NavigationDataDelayFilter(unsigned int delay);
55  virtual ~NavigationDataDelayFilter();
56 
57  virtual void GenerateData() override;
58 
63  std::queue<BufferType> m_Buffer;
64 
68  unsigned int m_Delay;
69  unsigned int m_Tolerance;
70  };
71 } // namespace mitk
72 
73 #endif // MITKNavigationDataDelayFilter_H
#define mitkNewMacro1Param(classname, type)
Definition: mitkCommon.h:76
NavigationDataToNavigationDataFilter is the base class of all filters that receive NavigationDatas as...
DataCollection - Class to facilitate loading/accessing structured data.
unsigned int m_Delay
The amount of time by which the Navigationdatas are delayed in milliseconds.
std::queue< BufferType > m_Buffer
This field containes the buffered navigation datas. It is a queue of (pair of (time and vector of (se...
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:44