95 : seconds_(secs), epoch_(epoch) {}
101 : seconds_(std::move(secs)), epoch_(epoch) {}
115 size_t size() const noexcept {
return seconds_.size(); }
116 bool empty() const noexcept {
return seconds_.empty(); }
118 void resize(
size_t n) { seconds_.resize(n); }
119 void reserve(
size_t n) { seconds_.reserve(n); }
120 void clear() { seconds_.clear(); }
127 void push_back(
const TimePoint& tp) { seconds_.push_back(tp - epoch_); }
128 void pop_back() { seconds_.pop_back(); }
134 const TimePoint& epoch()
const {
return epoch_; }
146 std::vector<double>& seconds() noexcept {
return seconds_; }
147 const std::vector<double>& seconds() const noexcept {
return seconds_; }
148 void setSeconds(
const std::vector<double>& secs) { seconds_ = secs; }
149 void setSeconds(std::vector<double>&& secs) { seconds_ = std::move(secs); }
184 using iterator_category = std::random_access_iterator_tag;
186 using difference_type = std::ptrdiff_t;
193 : data_(data), epoch_(epoch) {}
202 const_iterator operator++(
int) {
auto tmp = *
this; ++data_;
return tmp; }
203 const_iterator& operator--() { --data_;
return *
this; }
204 const_iterator operator--(
int) {
auto tmp = *
this; --data_;
return tmp; }
205 const_iterator& operator+=(difference_type n) { data_ += n;
return *
this; }
206 const_iterator& operator-=(difference_type n) { data_ -= n;
return *
this; }
208 const_iterator operator+(difference_type n)
const {
return {data_ + n, epoch_}; }
209 const_iterator operator-(difference_type n)
const {
return {data_ - n, epoch_}; }
210 difference_type operator-(
const const_iterator& o)
const {
return data_ - o.data_; }
212 bool operator==(
const const_iterator& o)
const {
return data_ == o.data_; }
213 bool operator!=(
const const_iterator& o)
const {
return data_ != o.data_; }
214 bool operator< (
const const_iterator& o)
const {
return data_ < o.data_; }
215 bool operator> (
const const_iterator& o)
const {
return data_ > o.data_; }
216 bool operator<=(
const const_iterator& o)
const {
return data_ <= o.data_; }
217 bool operator>=(
const const_iterator& o)
const {
return data_ >= o.data_; }
220 const double* data_ =
nullptr;
221 const TimePoint* epoch_ =
nullptr;
230 using iterator = const_iterator;
232 using size_type = size_t;
233 using difference_type = std::ptrdiff_t;
235 iterator begin() {
return {seconds_.data(), &epoch_}; }
236 iterator end() {
return {seconds_.data() + seconds_.size(), &epoch_}; }
237 const_iterator begin()
const {
return {seconds_.data(), &epoch_}; }
238 const_iterator end()
const {
return {seconds_.data() + seconds_.size(), &epoch_}; }
239 const_iterator cbegin()
const {
return begin(); }
240 const_iterator cend()
const {
return end(); }
243 std::vector<double> seconds_{};
ๆถ้ดๅบ้ด
ๅฎไน TimeInterval.hpp:64
้ๆบ่ฎฟ้ฎๅธธ้่ฟญไปฃๅจ
ๅฎไน TimeList.hpp:182
TimePoint operator*() const
่งฃๅผ็จ๏ผ่ฎก็ฎ epoch_->shiftedBySecond(*data_)
ๅฎไน TimeList.hpp:196
TimePoint operator[](difference_type n) const
ไธๆ ่ฎฟ้ฎ
ๅฎไน TimeList.hpp:199
ๆถ้ด็นๅ่กจ
ๅฎไน TimeList.hpp:49
TimeList(const TimeList &)=default
ๆท่ดๆ้
~TimeList()=default
ๆๆๅฝๆฐ
TimePoint operator[](size_t i) const
่ฎฟ้ฎ็ฌฌ i ไธชๆถ้ด็น๏ผๆ ่พน็ๆฃๆฅ๏ผ
ๅฎไน TimeList.hpp:166
void setEpoch(const TimePoint &epoch)
่ฎพ็ฝฎๅ่ๅๅ
ๅฎไน TimeList.hpp:140
TimePoint timePoint(size_t i) const
่ทๅ็ฌฌ i ไธชๅ
็ด ๅฏนๅบ็็ปๅฏนๆถ้ด็น
ๅฎไน TimeList.hpp:158
friend const_iterator operator+(const_iterator::difference_type n, const const_iterator &it)
difference_type + const_iterator๏ผ้ๆๅ่ฟ็ฎ็ฌฆ๏ผ
ๅฎไน TimeList.hpp:225
TimeList(const TimePoint &epoch)
ไปๅ่ๅๅ
ๆ้ ็ฉบๅ่กจ
ๅฎไน TimeList.hpp:105
TimePoint at(size_t i) const
่ฎฟ้ฎ็ฌฌ i ไธชๆถ้ด็น๏ผ่พน็ๆฃๆฅ๏ผ
ๅฎไน TimeList.hpp:172
TimeList & operator=(const TimeList &)=default
ๆท่ด่ตๅผ
TimeList(const TimePoint &epoch, std::vector< double > &&secs)
ไปๅ่ๅๅ
ๅ็งๅ็งป้ๅ่กจ็งปๅจๆ้
ๅฎไน TimeList.hpp:100
TimeList(TimeList &&) noexcept=default
็งปๅจๆ้
TimeList()=default
้ป่ฎคๆ้ ๅฝๆฐ
็ปๅฏนๆถ้ด็น
ๅฎไน TimePoint.hpp:108
TimePoint shiftedBySecond(double second) const
่ฎก็ฎๆถ้ด็นๅ็งปๅ็ๆฐๆถ้ด็น๏ผๆ้ป่ฎคๆถ้ดๅฐบๅบฆ่ฟ่กๆถ้ดๅ็งป
ๅฎไน TimePoint.hpp:304