25#include "b2ppconfig.h"
35 t = std::chrono::high_resolution_clock::now();
36 t_sys = std::chrono::system_clock::now();
40 t = std::chrono::high_resolution_clock::now();
41 t_sys = std::chrono::system_clock::now();
44 Time(
const Time& time_) { t = time_.t; }
48 std::string time() {
return time_formats(
"%X"); }
52 std::string date() {
return time_formats(
"%c"); }
57 std::string time_formats(
const char* format)
const {
58 char time_buffer[256];
59 std::time_t t_c = std::chrono::system_clock::to_time_t(t_sys);
60 strftime(time_buffer, 256, format, std::localtime(&t_c));
64 friend DiffTime operator-(
const Time& t1,
const Time& t2);
67 friend class DiffTime;
68 std::chrono::time_point<std::chrono::high_resolution_clock> t;
69 std::chrono::time_point<std::chrono::system_clock> t_sys;
74 DiffTime() { t = std::chrono::duration<double>(0.0); }
76 DiffTime(
const DiffTime& dt) : t(dt.t) {}
78 bool operator<(
const DiffTime& dt)
const {
return t < dt.t; }
83 long tt = long(std::chrono::floor<std::chrono::seconds>(t).count());
84 int sec = int(tt % 60);
89 if (tt > 0) { o << tt <<
"h"; }
90 o << min <<
"m" << sec <<
"s";
94 friend DiffTime operator-(
const Time& t1,
const Time& t2) {
96 tmp.t = std::chrono::duration_cast<std::chrono::duration<double>>(t1.t - t2.t);
100 operator double() {
return t.count(); }
103 std::chrono::duration<double> t;
bool operator<(const csda< T1 > &a, const csda< T2 > &b)
Comparison of two csda numbers is performed on the real part only.
Definition b2csda.H:262
Contains the base classes for implementing Finite Elements.
Definition b2boundary_condition.H:32