ITK 6.0.0
Insight Toolkit
 
Loading...
Searching...
No Matches
itkRealTimeInterval.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright NumFOCUS
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * https://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18#ifndef itkRealTimeInterval_h
19#define itkRealTimeInterval_h
20
21#include "itkIntTypes.h"
22#include "itkMacro.h"
23#include <iostream>
24
25namespace itk
26{
44
45class ITKCommon_EXPORT RealTimeInterval
46{
47public:
49
51 using SecondsDifferenceType = int64_t;
53
56
59
61 using TimeRepresentationType = double;
62
65 [[nodiscard]] TimeRepresentationType
67 [[nodiscard]] TimeRepresentationType
69 [[nodiscard]] TimeRepresentationType
71 [[nodiscard]] TimeRepresentationType
73 [[nodiscard]] TimeRepresentationType
75 [[nodiscard]] TimeRepresentationType
80 Self
81 operator-(const Self &) const;
82 Self
83 operator+(const Self &) const;
84 const Self &
85 operator-=(const Self &);
86 const Self &
87 operator+=(const Self &);
91 bool
92 operator>(const Self &) const;
93 bool
94 operator<(const Self &) const;
95 bool
96 operator==(const Self &) const;
98 bool
99 operator<=(const Self &) const;
100 bool
101 operator>=(const Self &) const;
106
108 friend ITKCommon_EXPORT std::ostream &
109 operator<<(std::ostream & os, const RealTimeInterval & v);
110
111private:
112 friend class RealTimeStamp;
113
116
122};
123
124} // end of namespace itk
125
126#endif // itkRealTimeInterval_h
TimeRepresentationType GetTimeInMinutes() const
ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION(Self)
bool operator<(const Self &) const
const Self & operator-=(const Self &)
TimeRepresentationType GetTimeInDays() const
TimeRepresentationType GetTimeInMicroSeconds() const
TimeRepresentationType GetTimeInHours() const
MicroSecondsDifferenceType m_MicroSeconds
bool operator<=(const Self &) const
TimeRepresentationType GetTimeInMilliSeconds() const
RealTimeInterval(SecondsDifferenceType, MicroSecondsDifferenceType)
const Self & operator+=(const Self &)
bool operator==(const Self &) const
bool operator>=(const Self &) const
void Set(SecondsDifferenceType, MicroSecondsDifferenceType)
Self operator-(const Self &) const
SecondsDifferenceType m_Seconds
bool operator>(const Self &) const
Self operator+(const Self &) const
TimeRepresentationType GetTimeInSeconds() const
std::ostream & operator<<(std::ostream &os, const itk::DOMNode &object)
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....