Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
USTelemedScanConverterPlugin Class Reference

Telemed API plugin for getting images from scan lines. Implements a COM interface whereat only the function InterimOutBufferCB is used for copying given image buffer into a mitk::Image. More...

#include <mitkUSTelemedScanConverterPlugin.h>

Inheritance diagram for USTelemedScanConverterPlugin:
Collaboration diagram for USTelemedScanConverterPlugin:

Public Member Functions

 USTelemedScanConverterPlugin ()
 
 ~USTelemedScanConverterPlugin ()
 
virtual HRESULT __stdcall QueryInterface (const IID &iid, void **ppv)
 
virtual ULONG __stdcall AddRef ()
 
virtual ULONG __stdcall Release ()
 
void SetOutputImage (mitk::Image::Pointer outputImage, itk::FastMutexLock::Pointer outputImageMutex=0)
 
STDMETHOD() SampleCB (IMediaSample *pSampleIn, IMediaSample *pSampleOut, int nOutX1, int nOutY1, int nOutX2, int nOutY2)
 
STDMETHOD() BufferCB (PBYTE pBufferIn, int nInBufferLen, PBYTE pBufferOut, int nOutBufferLen, int nOutX1, int nOutY1, int nOutX2, int nOutY2)
 
STDMETHOD() InInterimBufferCB (PBYTE pBufferIn, int nInBufferLen, PBYTE pBufferInterim, int nInterimBufferLen, int nOutX1, int nOutY1, int nOutX2, int nOutY2)
 
STDMETHOD() InInterimSampleCB (IMediaSample *pSampleIn, PBYTE pBufferInterim, int nInterimBufferLen, int nOutX1, int nOutY1, int nOutX2, int nOutY2)
 
STDMETHOD() InterimOutBufferCB (PBYTE pBufferInterim, int nInterimBufferLen, PBYTE pBufferOut, int nOutBufferLen, int nOutX1, int nOutY1, int nOutX2, int nOutY2)
 
STDMETHOD() InterimOutSampleCB (PBYTE pBufferInterim, int nInterimBufferLen, IMediaSample *pSampleIn, int nOutX1, int nOutY1, int nOutX2, int nOutY2)
 
STDMETHOD() ParameterCB (int nPin)
 
STDMETHOD() SetScanConverterPlugin (IDispatch *plugin)
 

Protected Member Functions

void ReleasePlugin ()
 

Protected Attributes

IUsgfwScanConverterPlugin * m_Plugin
 
mitk::Image::Pointer m_OutputImage
 
itk::FastMutexLock::Pointer m_OutputImageMutex
 

Detailed Description

Telemed API plugin for getting images from scan lines. Implements a COM interface whereat only the function InterimOutBufferCB is used for copying given image buffer into a mitk::Image.

A pointer to this mitk::Image must be set by calling mitk::USTelemedScanConverterPlugin::SetOutputImage() first. The image content is then updated every time the Telemed API calls the implemented callback function of this class.

For more infomration about the implemented COM interface refer to the Telemed API documentation.

Definition at line 44 of file mitkUSTelemedScanConverterPlugin.h.

Constructor & Destructor Documentation

USTelemedScanConverterPlugin::USTelemedScanConverterPlugin ( )

Definition at line 20 of file mitkUSTelemedScanConverterPlugin.cpp.

USTelemedScanConverterPlugin::~USTelemedScanConverterPlugin ( )

Definition at line 25 of file mitkUSTelemedScanConverterPlugin.cpp.

References ReleasePlugin().

Member Function Documentation

ULONG __stdcall USTelemedScanConverterPlugin::AddRef ( )
virtual

Definition at line 38 of file mitkUSTelemedScanConverterPlugin.cpp.

STDMETHOD() USTelemedScanConverterPlugin::BufferCB ( PBYTE  pBufferIn,
int  nInBufferLen,
PBYTE  pBufferOut,
int  nOutBufferLen,
int  nOutX1,
int  nOutY1,
int  nOutX2,
int  nOutY2 
)
inline

Definition at line 77 of file mitkUSTelemedScanConverterPlugin.h.

STDMETHOD() USTelemedScanConverterPlugin::InInterimBufferCB ( PBYTE  pBufferIn,
int  nInBufferLen,
PBYTE  pBufferInterim,
int  nInterimBufferLen,
int  nOutX1,
int  nOutY1,
int  nOutX2,
int  nOutY2 
)
inline

Definition at line 89 of file mitkUSTelemedScanConverterPlugin.h.

STDMETHOD() USTelemedScanConverterPlugin::InInterimSampleCB ( IMediaSample *  pSampleIn,
PBYTE  pBufferInterim,
int  nInterimBufferLen,
int  nOutX1,
int  nOutY1,
int  nOutX2,
int  nOutY2 
)
inline

Definition at line 101 of file mitkUSTelemedScanConverterPlugin.h.

STDMETHODIMP USTelemedScanConverterPlugin::InterimOutBufferCB ( PBYTE  pBufferInterim,
int  nInterimBufferLen,
PBYTE  pBufferOut,
int  nOutBufferLen,
int  nOutX1,
int  nOutY1,
int  nOutX2,
int  nOutY2 
)

Definition at line 54 of file mitkUSTelemedScanConverterPlugin.cpp.

References m_OutputImage, and m_OutputImageMutex.

STDMETHOD() USTelemedScanConverterPlugin::InterimOutSampleCB ( PBYTE  pBufferInterim,
int  nInterimBufferLen,
IMediaSample *  pSampleIn,
int  nOutX1,
int  nOutY1,
int  nOutX2,
int  nOutY2 
)
inline

Definition at line 124 of file mitkUSTelemedScanConverterPlugin.h.

STDMETHOD() USTelemedScanConverterPlugin::ParameterCB ( int  nPin)
inline

Definition at line 136 of file mitkUSTelemedScanConverterPlugin.h.

HRESULT __stdcall USTelemedScanConverterPlugin::QueryInterface ( const IID &  iid,
void **  ppv 
)
virtual

Definition at line 31 of file mitkUSTelemedScanConverterPlugin.cpp.

ULONG __stdcall USTelemedScanConverterPlugin::Release ( )
virtual

Definition at line 44 of file mitkUSTelemedScanConverterPlugin.cpp.

void USTelemedScanConverterPlugin::ReleasePlugin ( )
protected

Remove Telemed API callback and release and delete m_Plugin attribute.

Definition at line 85 of file mitkUSTelemedScanConverterPlugin.cpp.

References m_Plugin.

Referenced by SetScanConverterPlugin(), and ~USTelemedScanConverterPlugin().

STDMETHOD() USTelemedScanConverterPlugin::SampleCB ( IMediaSample *  pSampleIn,
IMediaSample *  pSampleOut,
int  nOutX1,
int  nOutY1,
int  nOutX2,
int  nOutY2 
)
inline

Definition at line 67 of file mitkUSTelemedScanConverterPlugin.h.

void USTelemedScanConverterPlugin::SetOutputImage ( mitk::Image::Pointer  outputImage,
itk::FastMutexLock::Pointer  outputImageMutex = 0 
)

Setter for a pointer to a mitk::Image in which the current image buffer from the Telemed API will be stored at every API callback. This function must be called before image data can be got from this class. A pointer to a mutex can be set in addition. This mutex will be locked on every writing to the given image.

Definition at line 94 of file mitkUSTelemedScanConverterPlugin.cpp.

References m_OutputImage, and m_OutputImageMutex.

STDMETHODIMP USTelemedScanConverterPlugin::SetScanConverterPlugin ( IDispatch *  plugin)

Member Data Documentation

mitk::Image::Pointer USTelemedScanConverterPlugin::m_OutputImage
protected

Pointer to mitk::Image in which the current image buffer from the Telemed API will be stored at every API callback.

Definition at line 158 of file mitkUSTelemedScanConverterPlugin.h.

Referenced by InterimOutBufferCB(), and SetOutputImage().

itk::FastMutexLock::Pointer USTelemedScanConverterPlugin::m_OutputImageMutex
protected

Mutex for the output image. Has to be set together with the output image via SetOutputImage().

Definition at line 164 of file mitkUSTelemedScanConverterPlugin.h.

Referenced by InterimOutBufferCB(), and SetOutputImage().

IUsgfwScanConverterPlugin* USTelemedScanConverterPlugin::m_Plugin
protected

Telemed API object for handling callbacks on new image data.

Definition at line 152 of file mitkUSTelemedScanConverterPlugin.h.

Referenced by ReleasePlugin(), and SetScanConverterPlugin().


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