7 #ifndef __vtkPlusVirtualCapture_h 8 #define __vtkPlusVirtualCapture_h 10 #include "vtkPlusDataCollectionExport.h" 12 #include "vtkIGSIOSequenceIOBase.h" 28 void PrintSelf(ostream& os, vtkIndent indent);
40 virtual bool HasUnsavedData()
const;
43 virtual PlusStatus OpenFile(
const char* aFilename = NULL);
50 virtual PlusStatus CloseFile(
const char* aFilename = NULL, std::string* resultFilename = NULL);
56 virtual PlusStatus SetCustomHeaderField(
const std::string& fieldName,
const std::string& fieldValue);
61 vtkGetMacro(EnableCapturing,
bool);
62 void SetEnableCapturing(
bool aValue);
69 vtkSetMacro(RequestedFrameRate,
double);
70 vtkGetMacro(RequestedFrameRate,
double);
72 vtkGetMacro(ActualFrameRate,
double);
73 vtkGetMacro(TotalFramesRecorded,
long int);
75 vtkGetMacro(BaseFilename, std::string);
76 vtkSetMacro(BaseFilename, std::string);
78 vtkGetMacro(EnableFileCompression,
bool);
79 void SetEnableFileCompression(
bool aFileCompression);
81 vtkGetStdStringMacro(EncodingFourCC);
82 vtkSetStdStringMacro(EncodingFourCC)
84 vtkSetMacro(EnableCapturingOnStart,
bool);
85 vtkGetMacro(EnableCapturingOnStart,
bool);
87 vtkGetMacro(IsData3D,
bool);
89 vtkSetMacro(FrameBufferSize,
unsigned int);
90 vtkGetMacro(FrameBufferSize,
unsigned int);
105 vtkSetMacro(ActualFrameRate,
double);
106 vtkSetMacro(IsData3D,
bool);
111 virtual bool IsFrameBuffered()
const;
117 virtual PlusStatus WriteFrames(
bool force =
false);
185 PlusStatus GetInputTrackedFrame(igsioTrackedFrame& aFrame);
186 PlusStatus GetInputTrackedFrameListSampled(
double& lastAlreadyRecordedFrameTimestamp,
double& nextFrameToBeRecordedTimestamp, vtkIGSIOTrackedFrameList* recordedFrames,
double requestedFramePeriodSec,
double maxProcessingTimeSec);
virtual void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
vtkPlusDataCollector * DataCollector
virtual void InternalWriteOutputChannels(vtkXMLDataElement *rootXMLElement)
std::string GetOutputPath(const std::string &subPath)
Abstract interface for tracker and video devices.
vtkIGSIOSequenceIOBase * Writer
std::string CurrentFilename
virtual vtkPlusDataCollector * GetDataCollector()
int FirstFrameIndexInThisSegment
virtual PlusStatus InternalConnect()
long int TotalFramesRecorded
bool EnableCapturingOnStart
std::string EncodingFourCC
static vtkPlusConfig * GetInstance()
virtual PlusStatus ReadConfiguration(vtkXMLDataElement *)
virtual PlusStatus Reset()
virtual PlusStatus WriteConfiguration(vtkXMLDataElement *)
vtkIGSIOTrackedFrameList * RecordedFrames
Manages devices that record image or positional data.
virtual bool IsVirtual() const
bool EnableFileCompression
double LastAlreadyRecordedFrameTimestamp
vtkSmartPointer< vtkIGSIORecursiveCriticalSection > WriterAccessMutex
double NextFrameToBeRecordedTimestamp
virtual std::string GetOutputFileName()
virtual PlusStatus NotifyConfigured()
double RequestedFrameRate
virtual PlusStatus InternalDisconnect()
virtual int OutputChannelCount() const
virtual PlusStatus InternalUpdate()
unsigned int FrameBufferSize
virtual bool IsTracker() const
static vtkPlusDevice * New()
vtkPlusLogger::LogLevelType GracePeriodLogLevel