18 #ifndef itkVideoIOBase_h
19 #define itkVideoIOBase_h
22 #include "ITKVideoIOExport.h"
23 #include "vnl/vnl_vector.h"
47 extern ITKVideoIO_EXPORT std::ostream &
94 FinishReadingOrWriting() = 0;
99 #if !defined(ITK_LEGACY_REMOVE)
102 static constexpr
ReadFromEnum ReadFromFile = ReadFromEnum::ReadFromFile;
103 static constexpr
ReadFromEnum ReadFromCamera = ReadFromEnum::ReadFromCamera;
108 SetReadFromFile() = 0;
112 SetReadFromCamera() = 0;
118 return this->m_ReadFrom;
124 CanReadCamera(CameraIDType cameraID)
const = 0;
129 SetNextFrameToRead(FrameOffsetType frameNumber) = 0;
132 virtual TemporalOffsetType
133 GetPositionInMSec()
const = 0;
134 virtual TemporalRatioType
135 GetRatio()
const = 0;
136 virtual FrameOffsetType
137 GetFrameTotal()
const = 0;
138 virtual TemporalRatioType
139 GetFramesPerSecond()
const = 0;
140 virtual FrameOffsetType
141 GetCurrentFrame()
const = 0;
142 virtual FrameOffsetType
143 GetLastIFrame()
const = 0;
150 SetWriterParameters(TemporalRatioType framesPerSecond,
151 const std::vector<SizeValueType> & dim,
153 unsigned int nChannels,
161 PrintSelf(std::ostream & os,
Indent indent)
const override;
172 bool m_WriterOpen{
false };
173 bool m_ReaderOpen{
false };
177 #endif // itkVideoIOBase_h