openshot-audio
0.1.7
JuceLibraryCode
modules
juce_events
timers
juce_MultiTimer.h
Go to the documentation of this file.
1
/*
2
==============================================================================
3
4
This file is part of the JUCE library.
5
Copyright (c) 2015 - ROLI Ltd.
6
7
Permission is granted to use this software under the terms of either:
8
a) the GPL v2 (or any later version)
9
b) the Affero GPL v3
10
11
Details of these licenses can be found at: www.gnu.org/licenses
12
13
JUCE is distributed in the hope that it will be useful, but WITHOUT ANY
14
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
15
A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16
17
------------------------------------------------------------------------------
18
19
To release a closed-source product which uses JUCE, commercial licenses are
20
available: visit www.juce.com for more information.
21
22
==============================================================================
23
*/
24
25
#ifndef JUCE_MULTITIMER_H_INCLUDED
26
#define JUCE_MULTITIMER_H_INCLUDED
27
28
29
//==============================================================================
46
class
JUCE_API
MultiTimer
47
{
48
protected
:
49
//==============================================================================
54
MultiTimer
()
noexcept
;
55
61
MultiTimer
(
const
MultiTimer
&)
noexcept
;
62
63
public
:
64
//==============================================================================
66
virtual
~
MultiTimer
();
67
68
//==============================================================================
75
virtual
void
timerCallback (
int
timerID) = 0;
76
77
//==============================================================================
91
void
startTimer (
int
timerID,
int
intervalInMilliseconds)
noexcept
;
92
102
void
stopTimer (
int
timerID)
noexcept
;
103
104
//==============================================================================
108
bool
isTimerRunning (
int
timerID)
const
noexcept
;
109
114
int
getTimerInterval (
int
timerID)
const
noexcept
;
115
116
117
//==============================================================================
118
private
:
119
SpinLock
timerListLock;
120
OwnedArray<Timer>
timers;
121
122
Timer
* getCallback (
int
)
const
noexcept
;
123
MultiTimer
& operator= (
const
MultiTimer
&);
124
};
125
126
#endif // JUCE_MULTITIMER_H_INCLUDED
JUCE_API
#define JUCE_API
Definition:
juce_StandardHeader.h:139
noexcept
#define noexcept
Definition:
juce_CompilerSupport.h:141
Timer
Definition:
juce_Timer.h:52
MultiTimer
Definition:
juce_MultiTimer.h:46
OwnedArray< Timer >
SpinLock
Definition:
juce_SpinLock.h:46
Generated by
1.8.17