Slicer  5.0
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
vtkDataIOManagerLogic.h
Go to the documentation of this file.
1 #ifndef __vtkDataIOManagerLogic_h
2 #define __vtkDataIOManagerLogic_h
3 
4 #include "vtkObject.h"
5 #include "vtkUnsignedLongArray.h"
6 #include "vtkSmartPointer.h"
7 #include "vtkIntArray.h"
8 #include "vtkMRML.h"
9 
10 #include "vtkSlicerModuleLogic.h"
12 #include "vtkSlicerTask.h"
13 
14 #include "vtkDataTransfer.h"
15 #include "vtkDataIOManager.h"
16 #include "vtkMRMLNode.h"
17 
18 
19 #ifndef vtkObjectPointer
20 #define vtkObjectPointer(xx) (reinterpret_cast <vtkObject **>( (xx) ))
21 #endif
22 
23 
24 class VTK_SLICER_BASE_LOGIC_EXPORT vtkDataIOManagerLogic : public vtkSlicerModuleLogic
25 {
26  public:
27 
29  static vtkDataIOManagerLogic *New();
31  void PrintSelf(ostream& os, vtkIndent indent) override;
32 
33  vtkGetObjectMacro ( DataIOManager, vtkDataIOManager );
34  virtual void SetAndObserveDataIOManager ( vtkDataIOManager *);
35 
38  virtual int QueueRead ( vtkMRMLNode *node );
39 
42  virtual int QueueWrite ( vtkMRMLNode *node );
43 
46  virtual void ApplyTransfer(void *clientdata);
47 
50  static void ProgressCallback ( void * );
51 
55  virtual void AddNewDataTransfer ( vtkDataTransfer *transfer, vtkMRMLNode *node );
56  virtual void CancelDataTransfer ( vtkDataTransfer *transfer );
57  virtual void ClearCache();
58  virtual void DeleteDataTransferFromCache ( vtkDataTransfer *transfer);
59 
60  private:
61  vtkDataIOManager *DataIOManager;
62 
63  protected:
65  ~vtkDataIOManagerLogic() override;
67  void operator=(const vtkDataIOManagerLogic&);
68 
69  vtkObserverManager* GetDataIOObserverManager();
71  static void DataIOManagerCallback(vtkObject *caller, unsigned long eid, void *clientData, void *callData);
72  virtual void ProcessDataIOManagerEvents( vtkObject *caller, unsigned long event, void *calldata );
73 };
74 
75 #endif
76 
void PrintSelf(ostream &os, vtkIndent indent) override
static vtkSlicerModuleLogic * New()
The Usual vtk class functions.
Manages adding and deleting of obserevers with events.
Abstract Superclass for all specific types of MRML nodes.
Definition: vtkMRMLNode.h:167
vtkObserverManager * DataIOObserverManager