mirror of
https://github.com/storytold/LiveScan3D.git
synced 2026-10-09 00:09:58 +00:00
41 lines
983 B
C++
41 lines
983 B
C++
#pragma once
|
|
|
|
#include <stdio.h>
|
|
#include <string>
|
|
#include <vector>
|
|
#include <chrono>
|
|
#include "utils.h"
|
|
|
|
class FramesFileWriterReader
|
|
{
|
|
public:
|
|
FramesFileWriterReader();
|
|
void openNewFileForWriting();
|
|
void openCurrentFileForReading();
|
|
|
|
// leave filename blank if you want the filename to be generated from the date
|
|
void setCurrentFilename(std::string filename = "");
|
|
|
|
void writeFrame(std::vector<Point3s> points, std::vector<RGB> colors);
|
|
bool readFrame(std::vector<Point3s> &outPoints, std::vector<RGB> &outColors);
|
|
|
|
bool openedForWriting() { return m_bFileOpenedForWriting; }
|
|
bool openedForReading() { return m_bFileOpenedForReading; }
|
|
|
|
|
|
void closeFileIfOpened();
|
|
|
|
~FramesFileWriterReader();
|
|
|
|
private:
|
|
void resetTimer();
|
|
int getRecordingTimeMilliseconds();
|
|
|
|
FILE *m_pFileHandle = nullptr;
|
|
bool m_bFileOpenedForWriting = false;
|
|
bool m_bFileOpenedForReading = false;
|
|
|
|
std::string m_sFilename = "";
|
|
|
|
std::chrono::steady_clock::time_point recording_start_time;
|
|
}; |