vtkgdcm
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
vtkGDCMThreadedImageReader2 Class Reference

read DICOM files with multiple threads More...

#include <vtkGDCMThreadedImageReader2.h>

Inherits vtkThreadedImageAlgorithm.

Public Types

typedef vtkThreadedImageAlgorithm Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
virtual void PrintSelf (ostream &os, vtkIndent indent)
 
virtual int GetFileLowerLeft ()
 
virtual void SetFileLowerLeft (int)
 
virtual void FileLowerLeftOn ()
 
virtual void FileLowerLeftOff ()
 
virtual int GetNumberOfOverlays ()
 
virtual void SetDataScalarType (int)
 
virtual int GetDataScalarType ()
 
virtual void SetNumberOfScalarComponents (int)
 
virtual int GetNumberOfScalarComponents ()
 
virtual int GetLoadOverlays ()
 
virtual void SetLoadOverlays (int)
 
virtual void LoadOverlaysOn ()
 
virtual void LoadOverlaysOff ()
 
virtual void SetDataExtent (int, int, int, int, int, int)
 
virtual void SetDataExtent (int[6])
 
virtual int * GetDataExtent ()
 
virtual void GetDataExtent (int &, int &, int &, int &, int &, int &)
 
virtual void GetDataExtent (int[6])
 
virtual void SetDataOrigin (double, double, double)
 
virtual void SetDataOrigin (double[3])
 
virtual double * GetDataOrigin ()
 
virtual void GetDataOrigin (double &, double &, double &)
 
virtual void GetDataOrigin (double[3])
 
virtual void SetDataSpacing (double, double, double)
 
virtual void SetDataSpacing (double[3])
 
virtual double * GetDataSpacing ()
 
virtual void GetDataSpacing (double &, double &, double &)
 
virtual void GetDataSpacing (double[3])
 
virtual const char * GetFileName (int i=0)
 
virtual void SetFileName (const char *filename)
 
virtual void SetFileNames (vtkStringArray *)
 
virtual vtkStringArray * GetFileNames ()
 
int SplitExtent (int splitExt[6], int startExt[6], int num, int total)
 
virtual void SetShift (double)
 Explicitly set the Rescale Intercept (0028,1052) More...
 
virtual double GetShift ()
 
virtual void SetScale (double)
 Explicitly get/set the Rescale Slope (0028,1053) More...
 
virtual double GetScale ()
 
virtual void SetUseShiftScale (int)
 Determine whether or not reader should use value from Shift/Scale Default is 1. More...
 
virtual int GetUseShiftScale ()
 
virtual void UseShiftScaleOn ()
 
virtual void UseShiftScaleOff ()
 

Static Public Member Functions

static vtkGDCMThreadedImageReader2New ()
 
static int IsTypeOf (const char *type)
 
static vtkGDCMThreadedImageReader2SafeDownCast (vtkObject *o)
 

Protected Member Functions

 vtkGDCMThreadedImageReader2 ()
 
 ~vtkGDCMThreadedImageReader2 ()
 
int RequestInformation (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 
void ThreadedRequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector, vtkImageData ***inData, vtkImageData **outData, int outExt[6], int id)
 

Detailed Description

read DICOM files with multiple threads

vtkGDCMThreadedImageReader2 is a source object that reads some DICOM files This reader is threaded. Meaning that on a multiple core CPU with N cpu, it will read approx N times faster than when reading in a single thread assuming the IO is not a bottleneck operation. If looking for a single threaded class see: vtkGDCMImageReader

Warning
you have to understand how physically medium works first (sequential reading for instance) before playing with this class
Attention
upside down as VTK would expect, use this option only if you know what you are doing
because it had support for ProgressEvent support even from python layer. There is a subtle trick down in the threading mechanism in VTK were the main thread (talking to the python interpreter) is also part of the execution process (and the N-1 other thread are just there to execute the remaining of ThreadedRequestData), this separation into two types of thread is necessary to achieve a working implementation of UpdateProgress
See also
vtkMedicalImageReader2 vtkMedicalImageProperties vtkGDCMImageReader

Definition at line 51 of file vtkGDCMThreadedImageReader2.h.

Member Typedef Documentation

◆ Superclass

typedef vtkThreadedImageAlgorithm vtkGDCMThreadedImageReader2::Superclass

Definition at line 55 of file vtkGDCMThreadedImageReader2.h.

Constructor & Destructor Documentation

◆ vtkGDCMThreadedImageReader2()

vtkGDCMThreadedImageReader2::vtkGDCMThreadedImageReader2 ( )
protected

◆ ~vtkGDCMThreadedImageReader2()

vtkGDCMThreadedImageReader2::~vtkGDCMThreadedImageReader2 ( )
protected

Member Function Documentation

◆ New()

static vtkGDCMThreadedImageReader2 * vtkGDCMThreadedImageReader2::New ( )
static

◆ GetClassName()

virtual const char * vtkGDCMThreadedImageReader2::GetClassName ( )
virtual

◆ IsTypeOf()

static int vtkGDCMThreadedImageReader2::IsTypeOf ( const char *  type)
static

◆ IsA()

virtual int vtkGDCMThreadedImageReader2::IsA ( const char *  type)
virtual

◆ SafeDownCast()

static vtkGDCMThreadedImageReader2 * vtkGDCMThreadedImageReader2::SafeDownCast ( vtkObject *  o)
static

◆ PrintSelf()

virtual void vtkGDCMThreadedImageReader2::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
virtual

◆ GetFileLowerLeft()

virtual int vtkGDCMThreadedImageReader2::GetFileLowerLeft ( )
virtual

◆ SetFileLowerLeft()

virtual void vtkGDCMThreadedImageReader2::SetFileLowerLeft ( int  )
virtual

◆ FileLowerLeftOn()

virtual void vtkGDCMThreadedImageReader2::FileLowerLeftOn ( )
virtual

◆ FileLowerLeftOff()

virtual void vtkGDCMThreadedImageReader2::FileLowerLeftOff ( )
virtual

◆ GetNumberOfOverlays()

virtual int vtkGDCMThreadedImageReader2::GetNumberOfOverlays ( )
virtual

◆ SetDataScalarType()

virtual void vtkGDCMThreadedImageReader2::SetDataScalarType ( int  )
virtual

◆ GetDataScalarType()

virtual int vtkGDCMThreadedImageReader2::GetDataScalarType ( )
virtual

◆ SetNumberOfScalarComponents()

virtual void vtkGDCMThreadedImageReader2::SetNumberOfScalarComponents ( int  )
virtual

◆ GetNumberOfScalarComponents()

virtual int vtkGDCMThreadedImageReader2::GetNumberOfScalarComponents ( )
virtual

◆ GetLoadOverlays()

virtual int vtkGDCMThreadedImageReader2::GetLoadOverlays ( )
virtual

◆ SetLoadOverlays()

virtual void vtkGDCMThreadedImageReader2::SetLoadOverlays ( int  )
virtual

◆ LoadOverlaysOn()

virtual void vtkGDCMThreadedImageReader2::LoadOverlaysOn ( )
virtual

◆ LoadOverlaysOff()

virtual void vtkGDCMThreadedImageReader2::LoadOverlaysOff ( )
virtual

◆ SetDataExtent() [1/2]

virtual void vtkGDCMThreadedImageReader2::SetDataExtent ( int  ,
int  ,
int  ,
int  ,
int  ,
int   
)
virtual

◆ SetDataExtent() [2/2]

virtual void vtkGDCMThreadedImageReader2::SetDataExtent ( int  [6])
virtual

◆ GetDataExtent() [1/3]

virtual int * vtkGDCMThreadedImageReader2::GetDataExtent ( )
virtual

◆ GetDataExtent() [2/3]

virtual void vtkGDCMThreadedImageReader2::GetDataExtent ( int &  ,
int &  ,
int &  ,
int &  ,
int &  ,
int &   
)
virtual

◆ GetDataExtent() [3/3]

virtual void vtkGDCMThreadedImageReader2::GetDataExtent ( int  [6])
virtual

◆ SetDataOrigin() [1/2]

virtual void vtkGDCMThreadedImageReader2::SetDataOrigin ( double  ,
double  ,
double   
)
virtual

◆ SetDataOrigin() [2/2]

virtual void vtkGDCMThreadedImageReader2::SetDataOrigin ( double  [3])
virtual

◆ GetDataOrigin() [1/3]

virtual double * vtkGDCMThreadedImageReader2::GetDataOrigin ( )
virtual

◆ GetDataOrigin() [2/3]

virtual void vtkGDCMThreadedImageReader2::GetDataOrigin ( double &  ,
double &  ,
double &   
)
virtual

◆ GetDataOrigin() [3/3]

virtual void vtkGDCMThreadedImageReader2::GetDataOrigin ( double  [3])
virtual

◆ SetDataSpacing() [1/2]

virtual void vtkGDCMThreadedImageReader2::SetDataSpacing ( double  ,
double  ,
double   
)
virtual

◆ SetDataSpacing() [2/2]

virtual void vtkGDCMThreadedImageReader2::SetDataSpacing ( double  [3])
virtual

◆ GetDataSpacing() [1/3]

virtual double * vtkGDCMThreadedImageReader2::GetDataSpacing ( )
virtual

◆ GetDataSpacing() [2/3]

virtual void vtkGDCMThreadedImageReader2::GetDataSpacing ( double &  ,
double &  ,
double &   
)
virtual

◆ GetDataSpacing() [3/3]

virtual void vtkGDCMThreadedImageReader2::GetDataSpacing ( double  [3])
virtual

◆ GetFileName()

virtual const char * vtkGDCMThreadedImageReader2::GetFileName ( int  i = 0)
virtual

◆ SetFileName()

virtual void vtkGDCMThreadedImageReader2::SetFileName ( const char *  filename)
virtual

◆ SetFileNames()

virtual void vtkGDCMThreadedImageReader2::SetFileNames ( vtkStringArray *  )
virtual

◆ GetFileNames()

virtual vtkStringArray * vtkGDCMThreadedImageReader2::GetFileNames ( )
virtual

◆ SplitExtent()

int vtkGDCMThreadedImageReader2::SplitExtent ( int  splitExt[6],
int  startExt[6],
int  num,
int  total 
)

◆ SetShift()

virtual void vtkGDCMThreadedImageReader2::SetShift ( double  )
virtual

Explicitly set the Rescale Intercept (0028,1052)

◆ GetShift()

virtual double vtkGDCMThreadedImageReader2::GetShift ( )
virtual

◆ SetScale()

virtual void vtkGDCMThreadedImageReader2::SetScale ( double  )
virtual

Explicitly get/set the Rescale Slope (0028,1053)

◆ GetScale()

virtual double vtkGDCMThreadedImageReader2::GetScale ( )
virtual

◆ SetUseShiftScale()

virtual void vtkGDCMThreadedImageReader2::SetUseShiftScale ( int  )
virtual

Determine whether or not reader should use value from Shift/Scale Default is 1.

◆ GetUseShiftScale()

virtual int vtkGDCMThreadedImageReader2::GetUseShiftScale ( )
virtual

◆ UseShiftScaleOn()

virtual void vtkGDCMThreadedImageReader2::UseShiftScaleOn ( )
virtual

◆ UseShiftScaleOff()

virtual void vtkGDCMThreadedImageReader2::UseShiftScaleOff ( )
virtual

◆ RequestInformation()

int vtkGDCMThreadedImageReader2::RequestInformation ( vtkInformation *  request,
vtkInformationVector **  inputVector,
vtkInformationVector *  outputVector 
)
protected

◆ ThreadedRequestData()

void vtkGDCMThreadedImageReader2::ThreadedRequestData ( vtkInformation *  request,
vtkInformationVector **  inputVector,
vtkInformationVector *  outputVector,
vtkImageData ***  inData,
vtkImageData **  outData,
int  outExt[6],
int  id 
)
protected

The documentation for this class was generated from the following file: