OpenShot Audio Library | OpenShotAudio
1.0.0
Toggle main menu visibility
Loading...
Searching...
No Matches
juce_Time.h
1
/*
2
==============================================================================
3
4
This file is part of the JUCE library.
5
Copyright (c) 2022 - Raw Material Software Limited
6
7
JUCE is an open source library subject to commercial or open-source
8
licensing.
9
10
The code included in this file is provided under the terms of the ISC license
11
http://www.isc.org/downloads/software-support-policy/isc-license. Permission
12
To use, copy, modify, and/or distribute this software for any purpose with or
13
without fee is hereby granted provided that the above copyright notice and
14
this permission notice appear in all copies.
15
16
JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
17
EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
18
DISCLAIMED.
19
20
==============================================================================
21
*/
22
23
namespace
juce
24
{
25
26
//==============================================================================
36
class
JUCE_API
Time
37
{
38
public
:
39
//==============================================================================
46
Time
() =
default
;
47
55
explicit
Time
(int64 millisecondsSinceEpoch)
noexcept
;
56
69
Time
(
int
year,
70
int
month,
71
int
day,
72
int
hours,
73
int
minutes,
74
int
seconds = 0,
75
int
milliseconds = 0,
76
bool
useLocalTime =
true
) noexcept;
77
78
Time
(const
Time
&) = default;
79
~
Time
() = default;
80
81
Time
& operator= (const
Time
&) = default;
82
83
//==============================================================================
91
static
Time
JUCE_CALLTYPE
getCurrentTime
() noexcept;
92
98
int64
toMilliseconds
() const noexcept {
return
millisSinceEpoch; }
99
103
int
getYear() const noexcept;
104
109
int
getMonth() const noexcept;
110
116
String
getMonthName (
bool
threeLetterVersion) const;
117
121
int
getDayOfMonth() const noexcept;
122
126
int
getDayOfWeek() const noexcept;
127
131
int
getDayOfYear() const noexcept;
132
137
String
getWeekdayName (
bool
threeLetterVersion) const;
138
143
int
getHours() const noexcept;
144
149
bool
isAfternoon() const noexcept;
150
156
int
getHoursInAmPmFormat() const noexcept;
157
159
int
getMinutes() const noexcept;
160
162
int
getSeconds() const noexcept;
163
171
int
getMilliseconds() const noexcept;
172
174
bool
isDaylightSavingTime() const noexcept;
175
176
//==============================================================================
178
String
getTimeZone() const;
179
181
int
getUTCOffsetSeconds() const noexcept;
182
187
String
getUTCOffsetString (
bool
includeDividerCharacters) const;
188
189
//==============================================================================
202
String
toString (
bool
includeDate,
203
bool
includeTime,
204
bool
includeSeconds = true,
205
bool
use24HourClock = false) const;
206
238
String
formatted (const
String
& format) const;
239
240
//==============================================================================
247
String
toISO8601 (
bool
includeDividerCharacters) const;
248
250
static
Time
fromISO8601 (
StringRef
iso8601);
251
252
//==============================================================================
254
Time
& operator+= (
RelativeTime
delta) noexcept;
256
Time
& operator-= (
RelativeTime
delta) noexcept;
257
258
//==============================================================================
264
bool
setSystemTimeToThisTime
() const;
265
266
//==============================================================================
273
static
String
getWeekdayName
(
int
dayNumber,
bool
threeLetterVersion);
274
281
static
String
getMonthName
(
int
monthNumber,
bool
threeLetterVersion);
282
283
//==============================================================================
284
// Static methods for getting system timers directly..
285
293
static int64
currentTimeMillis
() noexcept;
294
307
static uint32
getMillisecondCounter
() noexcept;
308
316
static
double
getMillisecondCounterHiRes
() noexcept;
317
322
static
void
waitForMillisecondCounter
(uint32 targetTime) noexcept;
323
333
static uint32
getApproximateMillisecondCounter
() noexcept;
334
335
//==============================================================================
336
// High-resolution timers..
337
346
static int64
getHighResolutionTicks
() noexcept;
347
353
static int64
getHighResolutionTicksPerSecond
() noexcept;
354
360
static
double
highResolutionTicksToSeconds
(int64 ticks) noexcept;
361
367
static int64
secondsToHighResolutionTicks
(
double
seconds) noexcept;
368
370
static
Time
getCompilationDate
();
371
372
private:
373
//==============================================================================
374
int64 millisSinceEpoch = 0;
375
};
376
377
//==============================================================================
379
JUCE_API
Time
operator+ (
Time
time,
RelativeTime
delta) noexcept;
381
JUCE_API
Time
operator+ (
RelativeTime
delta,
Time
time) noexcept;
382
384
JUCE_API
Time
operator- (
Time
time,
RelativeTime
delta) noexcept;
386
JUCE_API
RelativeTime
operator- (
Time
time1,
Time
time2) noexcept;
387
389
JUCE_API
bool
operator== (
Time
time1,
Time
time2) noexcept;
391
JUCE_API
bool
operator!= (
Time
time1,
Time
time2) noexcept;
393
JUCE_API
bool
operator< (
Time
time1,
Time
time2) noexcept;
395
JUCE_API
bool
operator<= (
Time
time1,
Time
time2) noexcept;
397
JUCE_API
bool
operator> (
Time
time1,
Time
time2) noexcept;
399
JUCE_API
bool
operator>= (
Time
time1,
Time
time2) noexcept;
400
401
}
// namespace juce
juce::RelativeTime
Definition
juce_RelativeTime.h:37
juce::StringRef
Definition
juce_StringRef.h:62
juce::String
Definition
juce_String.h:53
juce::Time
Definition
juce_Time.h:37
juce::Time::getApproximateMillisecondCounter
static uint32 getApproximateMillisecondCounter() noexcept
Definition
juce_Time.cpp:261
juce::Time::Time
Time()=default
juce::Time::getHighResolutionTicks
static int64 getHighResolutionTicks() noexcept
juce::Time::getMillisecondCounterHiRes
static double getMillisecondCounterHiRes() noexcept
juce::Time::getWeekdayName
String getWeekdayName(bool threeLetterVersion) const
Definition
juce_Time.cpp:537
juce::Time::currentTimeMillis
static int64 currentTimeMillis() noexcept
Definition
juce_Time.cpp:220
juce::Time::getHighResolutionTicksPerSecond
static int64 getHighResolutionTicksPerSecond() noexcept
juce::Time::getCurrentTime
static Time JUCE_CALLTYPE getCurrentTime() noexcept
Definition
juce_Time.cpp:233
juce::Time::getCompilationDate
static Time getCompilationDate()
Definition
juce_Time.cpp:593
juce::Time::highResolutionTicksToSeconds
static double highResolutionTicksToSeconds(int64 ticks) noexcept
Definition
juce_Time.cpp:293
juce::Time::secondsToHighResolutionTicks
static int64 secondsToHighResolutionTicks(double seconds) noexcept
Definition
juce_Time.cpp:298
juce::Time::setSystemTimeToThisTime
bool setSystemTimeToThisTime() const
juce::Time::getMonthName
String getMonthName(bool threeLetterVersion) const
Definition
juce_Time.cpp:532
juce::Time::waitForMillisecondCounter
static void waitForMillisecondCounter(uint32 targetTime) noexcept
Definition
juce_Time.cpp:267
juce::Time::toMilliseconds
int64 toMilliseconds() const noexcept
Definition
juce_Time.h:98
juce::Time::getMillisecondCounter
static uint32 getMillisecondCounter() noexcept
Definition
juce_Time.cpp:241
libopenshot-audio
JuceLibraryCode
modules
juce_core
time
juce_Time.h
Generated by
1.18.0