FAST  3.2.0
Framework for Heterogeneous Medical Image Computing and Visualization
StreamToFileExporter.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #include <FAST/ProcessObject.hpp>
4 #include <chrono>
5 
6 namespace fast {
7 
8 class FAST_EXPORT StreamToFileExporter : public ProcessObject {
10  public:
11  void setPath(std::string path);
12  void setRecordingFolderName(std::string folder);
13  void setFrameFilename(std::string name);
14  void setEnabled(bool enabled);
15  void setFrameLimit(uint64_t limit);
16  uint64_t getFrameCounter() const;
17  std::string getCurrentDestinationFolder() const;
18  float getRecordingDuration() const;
19  void reset();
20  bool isEnabled();
21  private:
23  void execute() override;
24 
25  std::string m_path = "";
26  std::string m_folder;
27  std::string m_filename = "frame";
28  std::string m_currentFolder;
29  uint64_t m_frameCounter = 0;
30  uint64_t m_frameLimit = 10000;
31  std::chrono::high_resolution_clock::time_point m_recordingStartTime;
32  bool m_enabled = true;
33  bool m_hasStarted = false;
34 };
35 
36 }
fast
Definition: AffineTransformation.hpp:7
FAST_OBJECT
#define FAST_OBJECT(className)
Definition: Object.hpp:9
ProcessObject.hpp
fast::StreamToFileExporter
Definition: StreamToFileExporter.hpp:8
fast::ProcessObject
Definition: ProcessObject.hpp:22