cpp-toolbox  0.0.1
A toolbox library for C++
Loading...
Searching...
No Matches
kitti_exceptions.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <stdexcept>
4#include <string>
5
6namespace toolbox::io {
7
11class kitti_exception : public std::runtime_error {
12public:
13 using std::runtime_error::runtime_error;
14};
15
20public:
21 explicit kitti_file_not_found(const std::string& file)
22 : kitti_exception("File not found: " + file), file_path_(file) {}
23
24 const std::string& file_path() const noexcept { return file_path_; }
25
26private:
27 std::string file_path_;
28};
29
34public:
35 explicit kitti_invalid_format(const std::string& msg)
36 : kitti_exception("Invalid format: " + msg) {}
37};
38
43public:
44 explicit kitti_corrupted_data(const std::string& msg)
45 : kitti_exception("Corrupted data: " + msg) {}
46};
47
52public:
53 explicit kitti_invalid_sequence(const std::string& path)
54 : kitti_exception("Invalid sequence directory: " + path),
55 sequence_path_(path) {}
56
57 const std::string& sequence_path() const noexcept { return sequence_path_; }
58
59private:
60 std::string sequence_path_;
61};
62
67public:
68 kitti_index_out_of_range(std::size_t index, std::size_t size)
69 : kitti_exception("Index " + std::to_string(index) +
70 " out of range [0, " + std::to_string(size) + ")"),
71 index_(index), size_(size) {}
72
73 std::size_t index() const noexcept { return index_; }
74 std::size_t size() const noexcept { return size_; }
75
76private:
77 std::size_t index_;
78 std::size_t size_;
79};
80
81} // namespace toolbox::io
Exception thrown when data is corrupted.
Definition kitti_exceptions.hpp:42
kitti_corrupted_data(const std::string &msg)
Definition kitti_exceptions.hpp:44
Base exception for KITTI dataset operations.
Definition kitti_exceptions.hpp:11
Exception thrown when a file is not found.
Definition kitti_exceptions.hpp:19
const std::string & file_path() const noexcept
Definition kitti_exceptions.hpp:24
kitti_file_not_found(const std::string &file)
Definition kitti_exceptions.hpp:21
Exception thrown when accessing out of bounds frame.
Definition kitti_exceptions.hpp:66
std::size_t size() const noexcept
Definition kitti_exceptions.hpp:74
kitti_index_out_of_range(std::size_t index, std::size_t size)
Definition kitti_exceptions.hpp:68
std::size_t index() const noexcept
Definition kitti_exceptions.hpp:73
Exception thrown when file format is invalid.
Definition kitti_exceptions.hpp:33
kitti_invalid_format(const std::string &msg)
Definition kitti_exceptions.hpp:35
Exception thrown when sequence directory structure is invalid.
Definition kitti_exceptions.hpp:51
const std::string & sequence_path() const noexcept
Definition kitti_exceptions.hpp:57
kitti_invalid_sequence(const std::string &path)
Definition kitti_exceptions.hpp:53
< 用于列出目录下的文件/For listing files in a directory
Definition dataloader.hpp:15