Slicer 5.6
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
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
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
24class VTK_SLICER_BASE_LOGIC_EXPORT vtkDataIOManagerLogic : public vtkSlicerModuleLogic
25{
26 public:
27
31 void PrintSelf(ostream& os, vtkIndent indent) override;
32
33 vtkGetObjectMacro ( DataIOManager, 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();
59
60 private:
61 vtkDataIOManager *DataIOManager;
62
63 protected:
68
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
vtkObserverManager * DataIOObserverManager
virtual void ClearCache()
static void DataIOManagerCallback(vtkObject *caller, unsigned long eid, void *clientData, void *callData)
virtual void CancelDataTransfer(vtkDataTransfer *transfer)
virtual void AddNewDataTransfer(vtkDataTransfer *transfer, vtkMRMLNode *node)
vtkDataIOManagerLogic(const vtkDataIOManagerLogic &)
~vtkDataIOManagerLogic() override
virtual void ProcessDataIOManagerEvents(vtkObject *caller, unsigned long event, void *calldata)
virtual void DeleteDataTransferFromCache(vtkDataTransfer *transfer)
virtual void ApplyTransfer(void *clientdata)
The method that executes the data transfer in another thread.
virtual int QueueWrite(vtkMRMLNode *node)
Method that queues the write.
virtual int QueueRead(vtkMRMLNode *node)
Methods that Queues the read.
static void ProgressCallback(void *)
static vtkDataIOManagerLogic * New()
The Usual vtk class functions.
void operator=(const vtkDataIOManagerLogic &)
virtual void SetAndObserveDataIOManager(vtkDataIOManager *)
vtkObserverManager * GetDataIOObserverManager()
void PrintSelf(ostream &os, vtkIndent indent) override
Abstract Superclass for all specific types of MRML nodes.
Manages adding and deleting of observers with events.