ITK  5.2.0
Insight Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
itk::VideoStream< TFrameType > Class Template Reference

#include <itkVideoStream.h>

+ Inheritance diagram for itk::VideoStream< TFrameType >:
+ Collaboration diagram for itk::VideoStream< TFrameType >:

Public Types

using BufferType = typename Superclass::BufferType
 
using ConstPointer = SmartPointer< const Self >
 
using ConstWeakPointer = WeakPointer< const Self >
 
using DirectionMapType = typename std::map< SizeValueType, DirectionType >
 
using DirectionType = typename FrameType::DirectionType
 
using FrameConstPointer = typename FrameType::ConstPointer
 
using FramePointer = typename FrameType::Pointer
 
using FrameType = TFrameType
 
using IndexType = typename FrameType::IndexType
 
using PixelType = typename FrameType::PixelType
 
using Pointer = SmartPointer< Self >
 
using PointMapType = typename std::map< SizeValueType, PointType >
 
using PointType = typename FrameType::PointType
 
using Self = VideoStream
 
using SizeType = typename FrameType::SizeType
 
using SpacingMapType = typename std::map< SizeValueType, SpacingType >
 
using SpacingType = typename FrameType::SpacingType
 
using SpatialRegionMapType = typename std::map< SizeValueType, SpatialRegionType >
 
using SpatialRegionType = typename FrameType::RegionType
 
using Superclass = TemporalDataObject
 
- Public Types inherited from itk::TemporalDataObject
using BufferType = RingBuffer< DataObject >
 
using ConstPointer = SmartPointer< const Self >
 
using ConstWeakPointer = WeakPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = TemporalDataObject
 
using Superclass = DataObject
 
using TemporalRegionType = TemporalRegion
 
using TemporalUnitEnum = TemporalDataObjectEnums::TemporalUnit
 
using TemporalUnitType = TemporalUnitEnum
 
- Public Types inherited from itk::DataObject
using ConstPointer = SmartPointer< const Self >
 
using DataObjectIdentifierType = std::string
 
using DataObjectPointerArraySizeType = std::vector< Pointer >::size_type
 
using Pointer = SmartPointer< Self >
 
using Self = DataObject
 
using Superclass = Object
 
- Public Types inherited from itk::Object
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = Object
 
using Superclass = LightObject
 
- Public Types inherited from itk::LightObject
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = LightObject
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother () const
 
virtual const char * GetNameOfClass () const
 
void InitializeEmptyFrames ()
 
void SetMinimumBufferSize (SizeValueType minimumNumberOfFrames)
 
- Public Member Functions inherited from itk::TemporalDataObject
virtual TemporalUnitType GetTemporalUnit () const
 
virtual void SetTemporalUnitToFrame ()
 
virtual void SetTemporalUnitToRealTime ()
 
virtual void SetTemporalUnitToFrameAndRealTime ()
 
SizeValueType GetNumberOfBuffers ()
 
void SetNumberOfBuffers (SizeValueType num)
 
virtual void SetLargestPossibleTemporalRegion (const TemporalRegionType &region)
 
virtual const TemporalRegionTypeGetLargestPossibleTemporalRegion () const
 
virtual void SetBufferedTemporalRegion (const TemporalRegionType &region)
 
virtual const TemporalRegionTypeGetBufferedTemporalRegion () const
 
virtual void SetRequestedTemporalRegion (const TemporalRegionType &region)
 
virtual const TemporalRegionTypeGetRequestedTemporalRegion () const
 
virtual const TemporalRegionType GetUnbufferedRequestedTemporalRegion ()
 
void SetRequestedRegionToLargestPossibleRegion () override
 
bool RequestedRegionIsOutsideOfTheBufferedRegion () override
 
bool VerifyRequestedRegion () override
 
void CopyInformation (const DataObject *) override
 
void SetRequestedRegion (const DataObject *) override
 
- Public Member Functions inherited from itk::DataObject
void DisconnectPipeline ()
 
bool GetDataReleased () const
 
virtual const bool & GetReleaseDataFlag () const
 
SmartPointer< ProcessObjectGetSource () const
 
DataObjectPointerArraySizeType GetSourceOutputIndex () const
 
const DataObjectIdentifierTypeGetSourceOutputName () const
 
virtual void Initialize ()
 
virtual void PropagateRequestedRegion ()
 
void ReleaseData ()
 
virtual void ReleaseDataFlagOff ()
 
virtual void ReleaseDataFlagOn ()
 
virtual void ResetPipeline ()
 
void SetReleaseDataFlag (bool flag)
 
bool ShouldIReleaseData () const
 
virtual void Update ()
 
virtual void UpdateOutputData ()
 
virtual void UpdateOutputInformation ()
 
void SetPipelineMTime (ModifiedTimeType time)
 
virtual const ModifiedTimeTypeGetPipelineMTime () const
 
virtual ModifiedTimeType GetUpdateMTime () const
 
virtual void SetRealTimeStamp (RealTimeStamp _arg)
 
virtual const RealTimeStampGetRealTimeStamp () const
 
virtual void PrepareForNewData ()
 
virtual void DataHasBeenGenerated ()
 
- Public Member Functions inherited from itk::Object
unsigned long AddObserver (const EventObject &event, Command *)
 
unsigned long AddObserver (const EventObject &event, Command *) const
 
unsigned long AddObserver (const EventObject &event, std::function< void(const EventObject &)> function) const
 
virtual void DebugOff () const
 
virtual void DebugOn () const
 
CommandGetCommand (unsigned long tag)
 
bool GetDebug () const
 
MetaDataDictionaryGetMetaDataDictionary ()
 
const MetaDataDictionaryGetMetaDataDictionary () const
 
virtual ModifiedTimeType GetMTime () const
 
virtual const TimeStampGetTimeStamp () const
 
bool HasObserver (const EventObject &event) const
 
void InvokeEvent (const EventObject &)
 
void InvokeEvent (const EventObject &) const
 
virtual void Modified () const
 
void Register () const override
 
void RemoveAllObservers ()
 
void RemoveObserver (unsigned long tag)
 
void SetDebug (bool debugFlag) const
 
void SetReferenceCount (int) override
 
void UnRegister () const noexcept override
 
void SetMetaDataDictionary (const MetaDataDictionary &rhs)
 
void SetMetaDataDictionary (MetaDataDictionary &&rrhs)
 
virtual void SetObjectName (std::string _arg)
 
virtual const std::string & GetObjectName () const
 
- Public Member Functions inherited from itk::LightObject
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
 itkCloneMacro (Self)
 
void Print (std::ostream &os, Indent indent=0) const
 

Static Public Member Functions

static unsigned int GetFrameDimension ()
 
static Pointer New ()
 
- Static Public Member Functions inherited from itk::TemporalDataObject
static Pointer New ()
 
- Static Public Member Functions inherited from itk::DataObject
static bool GetGlobalReleaseDataFlag ()
 
static void GlobalReleaseDataFlagOff ()
 
static void GlobalReleaseDataFlagOn ()
 
static Pointer New ()
 
static void SetGlobalReleaseDataFlag (bool val)
 
- Static Public Member Functions inherited from itk::Object
static bool GetGlobalWarningDisplay ()
 
static void GlobalWarningDisplayOff ()
 
static void GlobalWarningDisplayOn ()
 
static Pointer New ()
 
static void SetGlobalWarningDisplay (bool flag)
 
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 

Static Public Attributes

static constexpr unsigned int FrameDimension = FrameType::ImageDimension
 
SpatialRegionMapType m_LargestPossibleSpatialRegionCache
 
SpatialRegionMapType m_RequestedSpatialRegionCache
 
SpatialRegionMapType m_BufferedSpatialRegionCache
 
SpacingMapType m_SpacingCache
 
DirectionMapType m_DirectionCache
 
PointMapType m_OriginCache
 
BufferTypeGetFrameBuffer ()
 
const BufferTypeGetFrameBuffer () const
 
void SetFrameBuffer (BufferType *buffer)
 
const SpatialRegionMapTypeGetLargestPossibleSpatialRegionCache () const
 
void SetLargestPossibleSpatialRegionCache (SpatialRegionMapType map)
 
const SpatialRegionMapTypeGetRequestedSpatialRegionCache () const
 
void SetRequestedSpatialRegionCache (SpatialRegionMapType map)
 
const SpatialRegionMapTypeGetBufferedSpatialRegionCache () const
 
void SetBufferedSpatialRegionCache (SpatialRegionMapType map)
 
const SpacingMapTypeGetSpacingCache () const
 
void SetSpacingCache (SpacingMapType map)
 
const PointMapTypeGetOriginCache () const
 
void SetOriginCache (PointMapType map)
 
const DirectionMapTypeGetDirectionCache () const
 
void SetDirectionCache (DirectionMapType map)
 
void SetFrame (SizeValueType frameNumber, FramePointer frame)
 
FramePointer GetFrame (SizeValueType frameNumber)
 
FrameConstPointer GetFrame (SizeValueType frameNumber) const
 
void SetFrameLargestPossibleSpatialRegion (SizeValueType frameNumber, SpatialRegionType region)
 
const SpatialRegionTypeGetFrameLargestPossibleSpatialRegion (SizeValueType frameNumber) const
 
void SetFrameRequestedSpatialRegion (SizeValueType frameNumber, SpatialRegionType region)
 
const SpatialRegionTypeGetFrameRequestedSpatialRegion (SizeValueType frameNumber) const
 
void SetFrameBufferedSpatialRegion (SizeValueType frameNumber, SpatialRegionType region)
 
const SpatialRegionTypeGetFrameBufferedSpatialRegion (SizeValueType frameNumber) const
 
void SetFrameSpacing (SizeValueType frameNumber, SpacingType spacing)
 
const SpacingTypeGetFrameSpacing (SizeValueType frameNumber) const
 
void SetFrameOrigin (SizeValueType frameNumber, PointType origin)
 
const PointTypeGetFrameOrigin (SizeValueType frameNumber) const
 
void SetFrameDirection (SizeValueType frameNumber, DirectionType direction)
 
const DirectionTypeGetFrameDirection (SizeValueType frameNumber) const
 
void SetAllLargestPossibleSpatialRegions (SpatialRegionType region)
 
void SetAllRequestedSpatialRegions (SpatialRegionType region)
 
void SetAllBufferedSpatialRegions (SpatialRegionType region)
 
void SetAllFramesSpacing (SpacingType spacing)
 
void SetAllFramesOrigin (PointType origin)
 
void SetAllFramesDirection (DirectionType direction)
 
void Allocate ()
 
void Graft (const DataObject *data) override
 
 VideoStream ()=default
 
 ~VideoStream () override=default
 
void PrintSelf (std::ostream &os, Indent indent) const override
 

Additional Inherited Members

- Protected Member Functions inherited from itk::TemporalDataObject
 TemporalDataObject ()
 
 ~TemporalDataObject () override
 
- Protected Member Functions inherited from itk::DataObject
 DataObject ()
 
 ~DataObject () override
 
virtual void PropagateResetPipeline ()
 
- Protected Member Functions inherited from itk::Object
 Object ()
 
 ~Object () override
 
bool PrintObservers (std::ostream &os, Indent indent) const
 
virtual void SetTimeStamp (const TimeStamp &time)
 
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 
 LightObject ()
 
virtual void PrintHeader (std::ostream &os, Indent indent) const
 
virtual void PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 
- Protected Attributes inherited from itk::TemporalDataObject
BufferType::Pointer m_DataObjectBuffer
 
TemporalRegionType m_LargestPossibleTemporalRegion
 
TemporalRegionType m_RequestedTemporalRegion
 
TemporalRegionType m_BufferedTemporalRegion
 
TemporalUnitEnum m_TemporalUnit { TemporalUnitEnum::Frame }
 
- Protected Attributes inherited from itk::LightObject
std::atomic< int > m_ReferenceCount
 

Detailed Description

template<typename TFrameType>
class itk::VideoStream< TFrameType >

A DataObject that holds a buffered portion of a video.

The function of VideoStream is to provide an Image-specific subclass of TemporalDataObject. It provides several convenient typedefs to get common attributes of the frames. Additionally, the VideoStream caches meta information (largest/requested/buffered spatial regions, origin, spacing, and direction) about all frames in the video, even those not currently buffered. This is done primarily in order to allow the meta data to be set before the frame is buffered.

Definition at line 42 of file itkVideoStream.h.

Member Typedef Documentation

◆ BufferType

template<typename TFrameType >
using itk::VideoStream< TFrameType >::BufferType = typename Superclass::BufferType

Definition at line 57 of file itkVideoStream.h.

◆ ConstPointer

template<typename TFrameType >
using itk::VideoStream< TFrameType >::ConstPointer = SmartPointer<const Self>

Definition at line 51 of file itkVideoStream.h.

◆ ConstWeakPointer

template<typename TFrameType >
using itk::VideoStream< TFrameType >::ConstWeakPointer = WeakPointer<const Self>

Definition at line 52 of file itkVideoStream.h.

◆ DirectionMapType

template<typename TFrameType >
using itk::VideoStream< TFrameType >::DirectionMapType = typename std::map<SizeValueType, DirectionType>

Definition at line 70 of file itkVideoStream.h.

◆ DirectionType

template<typename TFrameType >
using itk::VideoStream< TFrameType >::DirectionType = typename FrameType::DirectionType

Definition at line 65 of file itkVideoStream.h.

◆ FrameConstPointer

template<typename TFrameType >
using itk::VideoStream< TFrameType >::FrameConstPointer = typename FrameType::ConstPointer

Definition at line 56 of file itkVideoStream.h.

◆ FramePointer

template<typename TFrameType >
using itk::VideoStream< TFrameType >::FramePointer = typename FrameType::Pointer

Definition at line 55 of file itkVideoStream.h.

◆ FrameType

template<typename TFrameType >
using itk::VideoStream< TFrameType >::FrameType = TFrameType

Definition at line 54 of file itkVideoStream.h.

◆ IndexType

template<typename TFrameType >
using itk::VideoStream< TFrameType >::IndexType = typename FrameType::IndexType

Definition at line 60 of file itkVideoStream.h.

◆ PixelType

template<typename TFrameType >
using itk::VideoStream< TFrameType >::PixelType = typename FrameType::PixelType

Definition at line 61 of file itkVideoStream.h.

◆ Pointer

template<typename TFrameType >
using itk::VideoStream< TFrameType >::Pointer = SmartPointer<Self>

Definition at line 50 of file itkVideoStream.h.

◆ PointMapType

template<typename TFrameType >
using itk::VideoStream< TFrameType >::PointMapType = typename std::map<SizeValueType, PointType>

Definition at line 69 of file itkVideoStream.h.

◆ PointType

template<typename TFrameType >
using itk::VideoStream< TFrameType >::PointType = typename FrameType::PointType

Definition at line 62 of file itkVideoStream.h.

◆ Self

template<typename TFrameType >
using itk::VideoStream< TFrameType >::Self = VideoStream

Standard class type aliases

Definition at line 48 of file itkVideoStream.h.

◆ SizeType

template<typename TFrameType >
using itk::VideoStream< TFrameType >::SizeType = typename FrameType::SizeType

Definition at line 64 of file itkVideoStream.h.

◆ SpacingMapType

template<typename TFrameType >
using itk::VideoStream< TFrameType >::SpacingMapType = typename std::map<SizeValueType, SpacingType>

Definition at line 71 of file itkVideoStream.h.

◆ SpacingType

template<typename TFrameType >
using itk::VideoStream< TFrameType >::SpacingType = typename FrameType::SpacingType

Definition at line 63 of file itkVideoStream.h.

◆ SpatialRegionMapType

template<typename TFrameType >
using itk::VideoStream< TFrameType >::SpatialRegionMapType = typename std::map<SizeValueType, SpatialRegionType>

Types used to store map between frame numbers and frame meta data

Definition at line 68 of file itkVideoStream.h.

◆ SpatialRegionType

template<typename TFrameType >
using itk::VideoStream< TFrameType >::SpatialRegionType = typename FrameType::RegionType

Definition at line 59 of file itkVideoStream.h.

◆ Superclass

template<typename TFrameType >
using itk::VideoStream< TFrameType >::Superclass = TemporalDataObject

Definition at line 49 of file itkVideoStream.h.

Constructor & Destructor Documentation

◆ VideoStream()

template<typename TFrameType >
itk::VideoStream< TFrameType >::VideoStream ( )
protecteddefault

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

◆ ~VideoStream()

template<typename TFrameType >
itk::VideoStream< TFrameType >::~VideoStream ( )
overrideprotecteddefault

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Member Function Documentation

◆ Allocate()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::Allocate ( )

Allocate memory for the buffered spatial region of each frame in the buffered temporal region. This assumes that all frames in the buffered temporal region have been initialized and that the buffered spatial region has been set for each of these frames. A typical setup would look like:

// Set the temporal regions
TemporalRegionType temporalRegion;
temporalRegion.SetFrameStart( 0 );
temporalRegion.SetFrameDuration( 3 );
video->SetLargestPossibleTemporalRegion( temporalRegion );
video->SetRequestedTemporalRegion( temporalRegion );
video->SetBufferedTemporalRegion( temporalRegion );
// Initialize all frames in the buffered temporal region
video->InitializeEmptyFrames();
// Set the buffered spatial region for each frame
SpatialRegionType bufferedSpatialRegion;
size[0] = 50;
size[1] = 40;
start.Fill( 0 );
bufferedSpatialRegion.SetSize( size );
bufferedSpatialRegion.SetIndex( start );
video->SetAllBufferedSpatialRegions( bufferedSpatialRegion );
// Allocate memory for the frames
video->Allocate();

◆ CreateAnother()

template<typename TFrameType >
virtual::itk::LightObject::Pointer itk::VideoStream< TFrameType >::CreateAnother ( ) const
virtual

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::TemporalDataObject.

◆ GetBufferedSpatialRegionCache()

template<typename TFrameType >
const SpatialRegionMapType& itk::VideoStream< TFrameType >::GetBufferedSpatialRegionCache ( ) const
inline

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 141 of file itkVideoStream.h.

◆ GetDirectionCache()

template<typename TFrameType >
const DirectionMapType& itk::VideoStream< TFrameType >::GetDirectionCache ( ) const
inline

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 174 of file itkVideoStream.h.

◆ GetFrame() [1/2]

template<typename TFrameType >
FramePointer itk::VideoStream< TFrameType >::GetFrame ( SizeValueType  frameNumber)

Get the frame for the given frame number. Internally, we always leave the Head of the ring buffer in place and just use the frame number as an offset. This allows all references to frames to be processed by an explicit frame number rather than a potentially confusing offset.

◆ GetFrame() [2/2]

template<typename TFrameType >
FrameConstPointer itk::VideoStream< TFrameType >::GetFrame ( SizeValueType  frameNumber) const

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

◆ GetFrameBuffer() [1/2]

template<typename TFrameType >
BufferType* itk::VideoStream< TFrameType >::GetFrameBuffer ( )
inline

Provide access to the internal frame buffer object

Definition at line 101 of file itkVideoStream.h.

◆ GetFrameBuffer() [2/2]

template<typename TFrameType >
const BufferType* itk::VideoStream< TFrameType >::GetFrameBuffer ( ) const
inline

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 106 of file itkVideoStream.h.

◆ GetFrameBufferedSpatialRegion()

template<typename TFrameType >
const SpatialRegionType& itk::VideoStream< TFrameType >::GetFrameBufferedSpatialRegion ( SizeValueType  frameNumber) const

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

◆ GetFrameDimension()

template<typename TFrameType >
static unsigned int itk::VideoStream< TFrameType >::GetFrameDimension ( )
inlinestatic

Definition at line 76 of file itkVideoStream.h.

◆ GetFrameDirection()

template<typename TFrameType >
const DirectionType& itk::VideoStream< TFrameType >::GetFrameDirection ( SizeValueType  frameNumber) const

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

◆ GetFrameLargestPossibleSpatialRegion()

template<typename TFrameType >
const SpatialRegionType& itk::VideoStream< TFrameType >::GetFrameLargestPossibleSpatialRegion ( SizeValueType  frameNumber) const

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

◆ GetFrameOrigin()

template<typename TFrameType >
const PointType& itk::VideoStream< TFrameType >::GetFrameOrigin ( SizeValueType  frameNumber) const

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

◆ GetFrameRequestedSpatialRegion()

template<typename TFrameType >
const SpatialRegionType& itk::VideoStream< TFrameType >::GetFrameRequestedSpatialRegion ( SizeValueType  frameNumber) const

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

◆ GetFrameSpacing()

template<typename TFrameType >
const SpacingType& itk::VideoStream< TFrameType >::GetFrameSpacing ( SizeValueType  frameNumber) const

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

◆ GetLargestPossibleSpatialRegionCache()

template<typename TFrameType >
const SpatialRegionMapType& itk::VideoStream< TFrameType >::GetLargestPossibleSpatialRegionCache ( ) const
inline

Provide access to the internal caches for the meta data

Definition at line 118 of file itkVideoStream.h.

◆ GetNameOfClass()

template<typename TFrameType >
virtual const char* itk::VideoStream< TFrameType >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::TemporalDataObject.

◆ GetOriginCache()

template<typename TFrameType >
const PointMapType& itk::VideoStream< TFrameType >::GetOriginCache ( ) const
inline

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 163 of file itkVideoStream.h.

◆ GetRequestedSpatialRegionCache()

template<typename TFrameType >
const SpatialRegionMapType& itk::VideoStream< TFrameType >::GetRequestedSpatialRegionCache ( ) const
inline

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 130 of file itkVideoStream.h.

◆ GetSpacingCache()

template<typename TFrameType >
const SpacingMapType& itk::VideoStream< TFrameType >::GetSpacingCache ( ) const
inline

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 152 of file itkVideoStream.h.

◆ Graft()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::Graft ( const DataObject data)
overridevirtual

Graft the data and information from one VideoStream to this one. This just copies the meta information using TemporalProcessObject's Graft then sets the internal RingBuffer pointer to point to the same buffer used by the other VideoStream.

Reimplemented from itk::TemporalDataObject.

◆ InitializeEmptyFrames()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::InitializeEmptyFrames ( )

Initialize any empty frames. This method makes sure that the frame buffer is large enough to hold the number of frames needed for the buffered temporal region. It goes through the necessary number of frames making sure that each one has been initialized. When allocating space for frames, this method should be called first, followed by setting the spatial regions on each frame, before Allocate is called.

◆ New()

template<typename TFrameType >
static Pointer itk::VideoStream< TFrameType >::New ( )
static

◆ PrintSelf()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
inlineoverrideprotectedvirtual

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Reimplemented from itk::TemporalDataObject.

Definition at line 324 of file itkVideoStream.h.

◆ SetAllBufferedSpatialRegions()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetAllBufferedSpatialRegions ( SpatialRegionType  region)

Set the BufferedRegion on all frames. This assumes that all frames in the buffered temporal region have been initialized (should be called after InitializeEmptyFrames).

◆ SetAllFramesDirection()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetAllFramesDirection ( DirectionType  direction)

Set the Direction of all frames. This assumes that all frames in the buffered temporal region have been initialized (should be called after InitializeEmptyFrames).

◆ SetAllFramesOrigin()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetAllFramesOrigin ( PointType  origin)

Set the Origin of all frames. This assumes that all frames in the buffered temporal region have been initialized (should be called after InitializeEmptyFrames).

◆ SetAllFramesSpacing()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetAllFramesSpacing ( SpacingType  spacing)

Set the Spacing of all frames. This assumes that all frames in the buffered temporal region have been initialized (should be called after InitializeEmptyFrames).

◆ SetAllLargestPossibleSpatialRegions()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetAllLargestPossibleSpatialRegions ( SpatialRegionType  region)

Set the LargestPossibleRegion on all frames. This assumes that all frames in the buffered temporal region have been initialized (should be called after InitializeEmptyFrames).

◆ SetAllRequestedSpatialRegions()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetAllRequestedSpatialRegions ( SpatialRegionType  region)

Set the RequestedRegion on all frames. This assumes that all frames in the buffered temporal region have been initialized (should be called after InitializeEmptyFrames).

◆ SetBufferedSpatialRegionCache()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetBufferedSpatialRegionCache ( SpatialRegionMapType  map)
inline

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 146 of file itkVideoStream.h.

◆ SetDirectionCache()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetDirectionCache ( DirectionMapType  map)
inline

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 179 of file itkVideoStream.h.

◆ SetFrame()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetFrame ( SizeValueType  frameNumber,
FramePointer  frame 
)

Set the contents of the frame at a given frame number

◆ SetFrameBuffer()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetFrameBuffer ( BufferType buffer)

Set the internal pixel buffer

◆ SetFrameBufferedSpatialRegion()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetFrameBufferedSpatialRegion ( SizeValueType  frameNumber,
SpatialRegionType  region 
)

Get/Set the BufferedRegion of a frame

◆ SetFrameDirection()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetFrameDirection ( SizeValueType  frameNumber,
DirectionType  direction 
)

Get/Set the Direction of a frame

◆ SetFrameLargestPossibleSpatialRegion()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetFrameLargestPossibleSpatialRegion ( SizeValueType  frameNumber,
SpatialRegionType  region 
)

Get/Set the LargestPossibleRegion of a frame

◆ SetFrameOrigin()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetFrameOrigin ( SizeValueType  frameNumber,
PointType  origin 
)

Get/Set the Origin of a frame

◆ SetFrameRequestedSpatialRegion()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetFrameRequestedSpatialRegion ( SizeValueType  frameNumber,
SpatialRegionType  region 
)

Get/Set the RequestedRegion of a frame

◆ SetFrameSpacing()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetFrameSpacing ( SizeValueType  frameNumber,
SpacingType  spacing 
)

Get/Set the Spacing of a frame

◆ SetLargestPossibleSpatialRegionCache()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetLargestPossibleSpatialRegionCache ( SpatialRegionMapType  map)
inline

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 123 of file itkVideoStream.h.

◆ SetMinimumBufferSize()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetMinimumBufferSize ( SizeValueType  minimumNumberOfFrames)

Safely expand the internal ring buffer.

◆ SetOriginCache()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetOriginCache ( PointMapType  map)
inline

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 168 of file itkVideoStream.h.

◆ SetRequestedSpatialRegionCache()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetRequestedSpatialRegionCache ( SpatialRegionMapType  map)
inline

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 135 of file itkVideoStream.h.

◆ SetSpacingCache()

template<typename TFrameType >
void itk::VideoStream< TFrameType >::SetSpacingCache ( SpacingMapType  map)
inline

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 157 of file itkVideoStream.h.

Member Data Documentation

◆ FrameDimension

template<typename TFrameType >
constexpr unsigned int itk::VideoStream< TFrameType >::FrameDimension = FrameType::ImageDimension
staticconstexpr

Access the spacial dimensionality of the frames

Definition at line 74 of file itkVideoStream.h.

◆ m_BufferedSpatialRegionCache

template<typename TFrameType >
SpatialRegionMapType itk::VideoStream< TFrameType >::m_BufferedSpatialRegionCache
protected

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 334 of file itkVideoStream.h.

◆ m_DirectionCache

template<typename TFrameType >
DirectionMapType itk::VideoStream< TFrameType >::m_DirectionCache
protected

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 339 of file itkVideoStream.h.

◆ m_LargestPossibleSpatialRegionCache

template<typename TFrameType >
SpatialRegionMapType itk::VideoStream< TFrameType >::m_LargestPossibleSpatialRegionCache
protected

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 332 of file itkVideoStream.h.

◆ m_OriginCache

template<typename TFrameType >
PointMapType itk::VideoStream< TFrameType >::m_OriginCache
protected

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 340 of file itkVideoStream.h.

◆ m_RequestedSpatialRegionCache

template<typename TFrameType >
SpatialRegionMapType itk::VideoStream< TFrameType >::m_RequestedSpatialRegionCache
protected

These maps are used to cache a mapping between frame number and spatial region. This is done because frames will often not be in actual existence at the time when the region gets set.

Definition at line 333 of file itkVideoStream.h.

◆ m_SpacingCache

template<typename TFrameType >
SpacingMapType itk::VideoStream< TFrameType >::m_SpacingCache
protected

These maps cache a mapping between frame number and the meta data for origin, spacing, and direction

Definition at line 338 of file itkVideoStream.h.


The documentation for this class was generated from the following file:
itk::TemporalRegion::SetFrameStart
void SetFrameStart(const FrameOffsetType s)
itk::VideoStream::SpatialRegionType
typename FrameType::RegionType SpatialRegionType
Definition: itkVideoStream.h:59
itk::GTest::TypedefsAndConstructors::Dimension2::SizeType
ImageBaseType::SizeType SizeType
Definition: itkGTestTypedefsAndConstructors.h:49
itk::Index::Fill
void Fill(IndexValueType value)
Definition: itkIndex.h:270
itk::GTest::TypedefsAndConstructors::Dimension2::IndexType
ImageBaseType::IndexType IndexType
Definition: itkGTestTypedefsAndConstructors.h:50
itk::TemporalDataObject::TemporalRegionType
TemporalRegion TemporalRegionType
Definition: itkTemporalDataObject.h:78