SFML - Simple and Fast Multimedia Library

SFML 2.6.2
Loading...
Searching...
No Matches
Time.hpp
Go to the documentation of this file.
1
2//
3// SFML - Simple and Fast Multimedia Library
4// Copyright (C) 2007-2023 Laurent Gomila (laurent@sfml-dev.org)
5//
6// This software is provided 'as-is', without any express or implied warranty.
7// In no event will the authors be held liable for any damages arising from the use of this software.
8//
9// Permission is granted to anyone to use this software for any purpose,
10// including commercial applications, and to alter it and redistribute it freely,
11// subject to the following restrictions:
12//
13// 1. The origin of this software must not be misrepresented;
14// you must not claim that you wrote the original software.
15// If you use this software in a product, an acknowledgment
16// in the product documentation would be appreciated but is not required.
17//
18// 2. Altered source versions must be plainly marked as such,
19// and must not be misrepresented as being the original software.
20//
21// 3. This notice may not be removed or altered from any source distribution.
22//
24
25#ifndef SFML_TIME_HPP
26#define SFML_TIME_HPP
27
29// Headers
31#include <SFML/System/Export.hpp>
32
33
34namespace sf
35{
40 class SFML_SYSTEM_API Time
41{
42public:
43
50 Time();
51
60 float asSeconds() const;
61
70 Int32 asMilliseconds() const;
71
80 Int64 asMicroseconds() const;
81
83 // Static member data
85 static const Time Zero;
86
87private:
88
89 friend SFML_SYSTEM_API Time seconds(float);
90 friend SFML_SYSTEM_API Time milliseconds(Int32);
91 friend SFML_SYSTEM_API Time microseconds(Int64);
92
102 explicit Time(Int64 microseconds);
103
104private:
105
107 // Member data
109 Int64 m_microseconds;
110};
111
123 SFML_SYSTEM_API Time seconds(float amount);
124
136 SFML_SYSTEM_API Time milliseconds(Int32 amount);
137
149 SFML_SYSTEM_API Time microseconds(Int64 amount);
150
161 SFML_SYSTEM_API bool operator ==(Time left, Time right);
162
173 SFML_SYSTEM_API bool operator !=(Time left, Time right);
174
185 SFML_SYSTEM_API bool operator <(Time left, Time right);
186
197 SFML_SYSTEM_API bool operator >(Time left, Time right);
198
209 SFML_SYSTEM_API bool operator <=(Time left, Time right);
210
221 SFML_SYSTEM_API bool operator >=(Time left, Time right);
222
232 SFML_SYSTEM_API Time operator -(Time right);
233
244 SFML_SYSTEM_API Time operator +(Time left, Time right);
245
256 SFML_SYSTEM_API Time& operator +=(Time& left, Time right);
257
268 SFML_SYSTEM_API Time operator -(Time left, Time right);
269
280 SFML_SYSTEM_API Time& operator -=(Time& left, Time right);
281
292 SFML_SYSTEM_API Time operator *(Time left, float right);
293
304 SFML_SYSTEM_API Time operator *(Time left, Int64 right);
305
316 SFML_SYSTEM_API Time operator *(float left, Time right);
317
328 SFML_SYSTEM_API Time operator *(Int64 left, Time right);
329
340 SFML_SYSTEM_API Time& operator *=(Time& left, float right);
341
352 SFML_SYSTEM_API Time& operator *=(Time& left, Int64 right);
353
364 SFML_SYSTEM_API Time operator /(Time left, float right);
365
376 SFML_SYSTEM_API Time operator /(Time left, Int64 right);
377
388 SFML_SYSTEM_API Time& operator /=(Time& left, float right);
389
400 SFML_SYSTEM_API Time& operator /=(Time& left, Int64 right);
401
412 SFML_SYSTEM_API float operator /(Time left, Time right);
413
424 SFML_SYSTEM_API Time operator %(Time left, Time right);
425
436 SFML_SYSTEM_API Time& operator %=(Time& left, Time right);
437
438} // namespace sf
439
440
441#endif // SFML_TIME_HPP
442
443
Export.hpp
SFML_SYSTEM_API
#define SFML_SYSTEM_API
Definition System/Export.hpp:43
sf::Color::operator+
Color operator+(const Color &left, const Color &right)
Overload of the binary + operator.
sf::Color::operator*
Color operator*(const Color &left, const Color &right)
Overload of the binary * operator.
sf::Color::operator-
Color operator-(const Color &left, const Color &right)
Overload of the binary - operator.
sf::Color::operator-=
Color & operator-=(Color &left, const Color &right)
Overload of the binary -= operator.
sf::Color::operator*=
Color & operator*=(Color &left, const Color &right)
Overload of the binary *= operator.
sf::Color::operator+=
Color & operator+=(Color &left, const Color &right)
Overload of the binary += operator.
sf::Time::asMicroseconds
Int64 asMicroseconds() const
Return the time value as a number of microseconds.
sf::Time::milliseconds
friend Time milliseconds(Int32)
sf::Time::microseconds
friend Time microseconds(Int64)
sf::Time::operator/
Time operator/(Time left, float right)
Overload of binary / operator to scale a time value.
sf::Time::operator%=
Time & operator%=(Time &left, Time right)
Overload of binary %= operator to compute/assign remainder of a time value.
sf::Time::microseconds
Time microseconds(Int64 amount)
Construct a time value from a number of microseconds.
sf::Time::Zero
static const Time Zero
Predefined "zero" time value.
Definition Time.hpp:85
sf::Time::milliseconds
Time milliseconds(Int32 amount)
Construct a time value from a number of milliseconds.
sf::Time::asMilliseconds
Int32 asMilliseconds() const
Return the time value as a number of milliseconds.
sf::Time::asSeconds
float asSeconds() const
Return the time value as a number of seconds.
sf::Time::operator%
Time operator%(Time left, Time right)
Overload of binary % operator to compute remainder of a time value.
sf::Time::seconds
friend Time seconds(float)
sf::Time::Time
Time()
Default constructor.
sf::Time::operator/=
Time & operator/=(Time &left, float right)
Overload of binary /= operator to scale/assign a time value.
sf::Time::seconds
Time seconds(float amount)
Construct a time value from a number of seconds.
sf
Definition AlResource.hpp:35
sf::operator==
bool operator==(const IpAddress &left, const IpAddress &right)
Overload of == operator to compare two IP addresses.
sf::Int64
signed long long Int64
Definition Config.hpp:238
sf::operator>=
bool operator>=(const IpAddress &left, const IpAddress &right)
Overload of >= operator to compare two IP addresses.
sf::operator!=
bool operator!=(const IpAddress &left, const IpAddress &right)
Overload of != operator to compare two IP addresses.
sf::operator<=
bool operator<=(const IpAddress &left, const IpAddress &right)
Overload of <= operator to compare two IP addresses.
sf::Int32
signed int Int32
Definition Config.hpp:226
sf::operator<
bool operator<(const IpAddress &left, const IpAddress &right)
Overload of < operator to compare two IP addresses.
sf::operator>
bool operator>(const IpAddress &left, const IpAddress &right)
Overload of > operator to compare two IP addresses.