OpenShot Audio Library | OpenShotAudio 0.4.0

Loading...
Searching...
No Matches
juce_TimedCallback.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 By using JUCE, you agree to the terms of both the JUCE 7 End-User License
11 Agreement and JUCE Privacy Policy.
12
13 End User License Agreement: www.juce.com/juce-7-licence
14 Privacy Policy: www.juce.com/juce-privacy-policy
15
16 Or: You may also use this code under the terms of the GPL v3 (see
17 www.gnu.org/licenses).
18
19 JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
20 EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
21 DISCLAIMED.
22
23 ==============================================================================
24*/
25
26 namespace juce
27{
28
39 class TimedCallback final : private Timer
40{
41 public:
43 explicit TimedCallback (std::function<void()> callbackIn)
44 : callback (std::move (callbackIn))
45 {
46 jassert (callback);
47 }
48
50 ~TimedCallback() noexcept override { stopTimer(); }
51
52 using Timer::startTimer;
53 using Timer::startTimerHz;
54 using Timer::stopTimer;
55 using Timer::isTimerRunning;
56 using Timer::getTimerInterval;
57
58 private:
59 void timerCallback() override { callback(); }
60
61 std::function<void()> callback;
62};
63
64} // namespace juce
juce::TimedCallback
Definition juce_TimedCallback.h:40
juce::TimedCallback::~TimedCallback
~TimedCallback() noexcept override
Definition juce_TimedCallback.h:50
juce::TimedCallback::stopTimer
void stopTimer() noexcept
Definition juce_Timer.cpp:332
juce::TimedCallback::TimedCallback
TimedCallback(std::function< void()> callbackIn)
Definition juce_TimedCallback.h:43
juce::Timer
Definition juce_Timer.h:52
juce::Timer::stopTimer
void stopTimer() noexcept
Definition juce_Timer.cpp:332
juce::Timer::getTimerInterval
int getTimerInterval() const noexcept
Definition juce_Timer.h:116
juce::Timer::startTimerHz
void startTimerHz(int timerFrequencyHz) noexcept
Definition juce_Timer.cpp:324
juce::Timer::isTimerRunning
bool isTimerRunning() const noexcept
Definition juce_Timer.h:111
juce::Timer::startTimer
void startTimer(int intervalInMilliseconds) noexcept
Definition juce_Timer.cpp:309