ITK  6.0.0
Insight Toolkit
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{
45class ITKCommon_EXPORT RealTimeInterval
46{
47public:
49
51 using SecondsDifferenceType = int64_t;
53
56
59
62
64 using TimeRepresentationType = double;
65
82 Self
83 operator-(const Self &) const;
84 Self
85 operator+(const Self &) const;
86 const Self &
87 operator-=(const Self &);
88 const Self &
89 operator+=(const Self &);
93 bool
94 operator>(const Self &) const;
95 bool
96 operator<(const Self &) const;
97 bool
98 operator==(const Self &) const;
100 bool
101 operator<=(const Self &) const;
102 bool
103 operator>=(const Self &) const;
109
111 friend ITKCommon_EXPORT std::ostream &
112 operator<<(std::ostream & os, const RealTimeInterval & v);
113
114private:
115 friend class RealTimeStamp;
116
119
125};
126
127} // end of namespace itk
128
129#endif // itkRealTimeInterval_h
A data structure for representing the time span between two RealTimeStamps, with similar high precisi...
TimeRepresentationType GetTimeInMinutes() const
ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION(Self)
const Self & operator-=(const Self &)
TimeRepresentationType GetTimeInDays() const
TimeRepresentationType GetTimeInMicroSeconds() const
TimeRepresentationType GetTimeInHours() const
MicroSecondsDifferenceType m_MicroSeconds
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
The RealTimeStamp is a data structure for representing time with high precision and a large dynamic r...
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
ITKCommon_EXPORT std::ostream & operator<<(std::ostream &out, typename AnatomicalOrientation::CoordinateEnum value)
bool operator<=(const Index< VDimension > &one, const Index< VDimension > &two)
Definition: itkIndex.h:571
bool operator<(const Index< VDimension > &one, const Index< VDimension > &two)
Definition: itkIndex.h:557