Fix issue with loading ArSessionMetadata
This commit is contained in:
@@ -83,7 +83,7 @@ namespace OpenVulkano::AR
|
|||||||
std::filesystem::exists(dirPath / RECORDING_METADATA_FILENAME);
|
std::filesystem::exists(dirPath / RECORDING_METADATA_FILENAME);
|
||||||
}
|
}
|
||||||
|
|
||||||
ArSessionMetadata::ArSessionMetadata(const std::filesystem::path& dirPath)
|
ArSessionMetadata ArSessionMetadata::FromFile(const std::filesystem::path& dirPath)
|
||||||
{
|
{
|
||||||
std::optional<ArSessionMetadata> metaFromFile;
|
std::optional<ArSessionMetadata> metaFromFile;
|
||||||
if (!is_directory(dirPath)) throw std::runtime_error("Ar recording path must be a directory!");
|
if (!is_directory(dirPath)) throw std::runtime_error("Ar recording path must be a directory!");
|
||||||
@@ -103,10 +103,8 @@ namespace OpenVulkano::AR
|
|||||||
metaFromFile = FromYaml(ymlInfoPath.string());
|
metaFromFile = FromYaml(ymlInfoPath.string());
|
||||||
}
|
}
|
||||||
if (!metaFromFile) throw std::runtime_error("Ar recording dir is missing platform metadata file!");
|
if (!metaFromFile) throw std::runtime_error("Ar recording dir is missing platform metadata file!");
|
||||||
type = metaFromFile->type;
|
metaFromFile->playback = true;
|
||||||
depthFormat = metaFromFile->depthFormat;
|
return *metaFromFile;
|
||||||
confidenceRange = metaFromFile->confidenceRange;
|
|
||||||
playback = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string ArSessionMetadata::FinishedRecordingInfoToYaml() const
|
std::string ArSessionMetadata::FinishedRecordingInfoToYaml() const
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ namespace OpenVulkano::AR
|
|||||||
, recFrameCount(frameCount), recDuration(duration), recSkippedFrames(skippedFrames), frontSensor(frontSensor)
|
, recFrameCount(frameCount), recDuration(duration), recSkippedFrames(skippedFrames), frontSensor(frontSensor)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
ArSessionMetadata(const std::filesystem::path& dirPath);
|
ArSessionMetadata(const std::filesystem::path& dirPath) : ArSessionMetadata(FromFile(dirPath)) {}
|
||||||
|
|
||||||
[[nodiscard]] std::string ToYaml() const;
|
[[nodiscard]] std::string ToYaml() const;
|
||||||
|
|
||||||
@@ -60,7 +60,7 @@ namespace OpenVulkano::AR
|
|||||||
static bool DirHasMetadata(const std::filesystem::path& dirPath);
|
static bool DirHasMetadata(const std::filesystem::path& dirPath);
|
||||||
|
|
||||||
static ArSessionMetadata FromXML(const std::filesystem::path& filePath);
|
static ArSessionMetadata FromXML(const std::filesystem::path& filePath);
|
||||||
|
|
||||||
static ArSessionMetadata FromYaml(const std::filesystem::path& filePath);
|
static ArSessionMetadata FromYaml(const std::filesystem::path& filePath);
|
||||||
|
static ArSessionMetadata FromFile(const std::filesystem::path& dirPath);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user