FAST.Framework  1.0.0
FTimeSpan.h
1 /******************************************************************************
2 **
3 ** FAST.Framework
4 **
5 ** Created: 2023-10-11
6 ** Author: Boris Fast
7 ** Mail: support@fast-framework.com
8 **
9 ******************************************************************************/
10 
11 #ifndef FTIMESPAN_H
12 #define FTIMESPAN_H
13 
14 using namespace std;
15 
16 #include "FObject.h"
17 
21 class FTimeSpan : public FObject
22 {
23  public:
24  FTimeSpan(const ULLong& first, const ULLong& second);
25  FTimeSpan(const ULLong& interval);
26  FTimeSpan() { this->buffer = 0; }
27  virtual ~FTimeSpan() = default;
28 
29  Double TotalDays() const;
30  Double TotalHours() const;
31  Double TotalMinutes() const;
32  Double TotalSeconds() const;
33  Double TotalMilliseconds() const;
34  Double TotalMicroseconds() const;
35  ULLong TotalNanoseconds() const;
36 
37  friend Boolean operator==(const FTimeSpan& first,
38  const FTimeSpan& second);
39  friend Boolean operator!=(const FTimeSpan& first,
40  const FTimeSpan& second);
41  friend Boolean operator<=(const FTimeSpan& first,
42  const FTimeSpan& second);
43  friend Boolean operator>=(const FTimeSpan& first,
44  const FTimeSpan& second);
45 
46  const type_info& GetType() override;
47  FString GetName() const override;
48 
49  private:
50  ULLong buffer;
51 };
52 
53 #endif // FTIMESPAN_H
Definition: FObject.h:50
Definition: FString.h:22
Definition: FTimeSpan.h:22
FTimeSpan()
Constructor timespan object.
Definition: FTimeSpan.h:26
virtual ~FTimeSpan()=default
Destroys the timespan object.