21 #ifndef __vtkMRMLStreamingVolumeNode_h 22 #define __vtkMRMLStreamingVolumeNode_h 36 #include <vtkImageData.h> 37 #include <vtkObject.h> 38 #include <vtkStdString.h> 39 #include <vtkUnsignedCharArray.h> 50 void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
54 virtual
void ProcessMRMLEvents(vtkObject *caller,
unsigned long event,
void *callData) VTK_OVERRIDE;
57 virtual
void ReadXMLAttributes(const
char** atts) VTK_OVERRIDE;
60 virtual
void WriteXML(ostream& of,
int indent) VTK_OVERRIDE;
66 virtual const
char* GetNodeTagName() VTK_OVERRIDE
67 {
return "StreamingVolume";}
73 virtual vtkAlgorithmOutput* GetImageDataConnection() VTK_OVERRIDE;
84 virtual bool EncodeImageData(
bool forceKeyFrame =
false);
88 virtual bool DecodeFrame();
92 virtual bool IsKeyFrame();
96 static void FrameModifiedCallback(vtkObject *caller,
unsigned long eid,
void* clientData,
void* callData);
99 FrameModifiedEvent = 18002
108 vtkGetMacro(CodecFourCC, std::string);
109 vtkSetMacro(CodecFourCC, std::string);
113 void SetCodecParameterString(std::string parameterString);
114 std::string GetCodecParameterString();
123 void AllocateImageForFrame(vtkImageData* imageData);
126 bool HasExternalImageObserver();
129 vtkSmartPointer<vtkStreamingVolumeCodec>
Codec;
131 vtkSmartPointer<vtkStreamingVolumeFrame>
Frame;
vtkSmartPointer< vtkCallbackCommand > FrameModifiedCallbackCommand
VTK object containing a single compressed frame.
VTK object for representing a volume compression codec (normally a video compression codec) ...
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
MRML node for representing a single compressed video frame that can be decoded to an image representa...
void operator=(const vtkMRMLVectorVolumeNode &)
vtkSmartPointer< vtkStreamingVolumeCodec > Codec
static vtkMRMLVectorVolumeNode * New()
MRML node for representing a vector volume (image stack).
vtkSmartPointer< vtkStreamingVolumeFrame > Frame
virtual void SetAndObserveImageData(vtkImageData *ImageData)
bool FrameDecodingInProgress
Abstract Superclass for all specific types of MRML nodes.
virtual vtkImageData * GetImageData()
virtual vtkMRMLNode * CreateNodeInstance() VTK_OVERRIDE
MRMLNode methods.