arduino-audio-tools
Loading...
Searching...
No Matches
src
AudioTools
CoreAudio
AudioTimer
AudioTimerBase.h
Go to the documentation of this file.
1
#pragma once
2
#include "
AudioToolsConfig.h
"
3
#ifdef USE_TIMER
4
#include "
AudioTools/CoreAudio/AudioTypes.h
"
5
12
namespace
audio_tools
{
13
14
typedef
void
(*
repeating_timer_callback_t
)(
void
*
obj
);
15
16
enum
TimerFunction
{
17
DirectTimerCallback
,
18
TimerCallbackInThread
,
19
SimpleThreadLoop
20
};
21
22
class
TimerAlarmRepeatingDriverBase
{
23
public
:
24
virtual
~TimerAlarmRepeatingDriverBase
() {
end
(); }
25
26
virtual
bool
begin
(
repeating_timer_callback_t
callback_f
,
uint32_t
time,
27
TimeUnit
unit =
MS
) = 0;
28
virtual
bool
end
() {
return
false
; };
29
30
void
setCallbackParameter
(
void
*
obj
) {
object
=
obj
; }
31
32
void
*
callbackParameter
() {
return
object
; }
33
34
virtual
void
setTimer
(
int
timer) {}
35
virtual
void
setTimerFunction
(
TimerFunction
function
=
DirectTimerCallback
) {}
37
virtual
void
setIsSave
(
bool
is_save
) {}
38
39
protected
:
40
void
*
object
=
nullptr
;
41
42
const
char
*
toString
(
TimeUnit
unit){
43
return
TimeUnitStr
[(
int
)unit];
44
}
45
};
46
47
}
// namespace audio_tools
48
49
#endif
AudioToolsConfig.h
AudioTypes.h
audio_tools::TimerAlarmRepeatingDriverBase
Definition
AudioTimerBase.h:22
audio_tools::TimerAlarmRepeatingDriverBase::object
void * object
Definition
AudioTimerBase.h:40
audio_tools::TimerAlarmRepeatingDriverBase::end
virtual bool end()
Definition
AudioTimerBase.h:28
audio_tools::TimerAlarmRepeatingDriverBase::setTimer
virtual void setTimer(int timer)
Definition
AudioTimerBase.h:34
audio_tools::TimerAlarmRepeatingDriverBase::setTimerFunction
virtual void setTimerFunction(TimerFunction function=DirectTimerCallback)
Definition
AudioTimerBase.h:35
audio_tools::TimerAlarmRepeatingDriverBase::setIsSave
virtual void setIsSave(bool is_save)
Not used.
Definition
AudioTimerBase.h:37
audio_tools::TimerAlarmRepeatingDriverBase::begin
virtual bool begin(repeating_timer_callback_t callback_f, uint32_t time, TimeUnit unit=MS)=0
audio_tools::TimerAlarmRepeatingDriverBase::callbackParameter
void * callbackParameter()
Definition
AudioTimerBase.h:32
audio_tools::TimerAlarmRepeatingDriverBase::setCallbackParameter
void setCallbackParameter(void *obj)
Definition
AudioTimerBase.h:30
audio_tools::TimerAlarmRepeatingDriverBase::toString
const char * toString(TimeUnit unit)
Definition
AudioTimerBase.h:42
audio_tools::TimerAlarmRepeatingDriverBase::~TimerAlarmRepeatingDriverBase
virtual ~TimerAlarmRepeatingDriverBase()
Definition
AudioTimerBase.h:24
audio_tools::TimeUnit
TimeUnit
Time Units.
Definition
AudioTypes.h:48
audio_tools::MS
@ MS
Definition
AudioTypes.h:48
audio_tools
Generic Implementation of sound input and output for desktop environments using portaudio.
Definition
AudioCodecsBase.h:10
audio_tools::TimerFunction
TimerFunction
Definition
AudioTimerBase.h:16
audio_tools::SimpleThreadLoop
@ SimpleThreadLoop
Definition
AudioTimerBase.h:19
audio_tools::TimerCallbackInThread
@ TimerCallbackInThread
Definition
AudioTimerBase.h:18
audio_tools::DirectTimerCallback
@ DirectTimerCallback
Definition
AudioTimerBase.h:17
audio_tools::TimeUnitStr
static const char * TimeUnitStr[3]
Definition
AudioTypes.h:49
audio_tools::repeating_timer_callback_t
void(* repeating_timer_callback_t)(void *obj)
Definition
AudioTimerAVR.h:7
audio_tools::writeData
size_t writeData(Print *p_out, T *data, int samples, int maxSamples=512)
Definition
AudioTypes.h:512
Generated by
1.9.8