libpromeki
1.0.0-alpha
PROfessional MEdia toolKIt
Loading...
Searching...
No Matches
musicalnote.h
Go to the documentation of this file.
1
8
#pragma once
9
10
11
#include <promeki/config.h>
12
#if PROMEKI_ENABLE_MUSIC
13
#include <
promeki/list.h
>
14
15
PROMEKI_NAMESPACE_BEGIN
16
34
class
MusicalNote {
35
public
:
36
using
List = ::promeki::List<MusicalNote>;
37
39
MusicalNote() =
default
;
40
42
float
midiNote()
const
{
return
_midiNote; }
44
void
setMidiNote(
float
v) { _midiNote = v; }
45
47
double
startTime()
const
{
return
_startTime; }
49
void
setStartTime(
double
v) { _startTime = v; }
50
52
double
duration()
const
{
return
_duration; }
54
void
setDuration(
double
v) { _duration = v; }
55
57
double
fullDuration()
const
{
return
_fullDuration; }
59
void
setFullDuration(
double
v) { _fullDuration = v; }
60
62
float
amplitude()
const
{
return
_amplitude; }
64
void
setAmplitude(
float
v) { _amplitude = v; }
65
67
float
legato()
const
{
return
_legato; }
69
void
setLegato(
float
v) { _legato = v; }
70
72
float
vibrato()
const
{
return
_vibrato; }
74
void
setVibrato(
float
v) { _vibrato = v; }
75
77
float
vibratoRate()
const
{
return
_vibratoRate; }
79
void
setVibratoRate(
float
v) { _vibratoRate = v; }
80
82
float
tremolo()
const
{
return
_tremolo; }
84
void
setTremolo(
float
v) { _tremolo = v; }
85
87
float
tremoloRate()
const
{
return
_tremoloRate; }
89
void
setTremoloRate(
float
v) { _tremoloRate = v; }
90
92
bool
isRest()
const
{
return
_rest; }
94
void
setRest(
bool
v) { _rest = v; }
95
96
private
:
97
float
_midiNote = -1.0f;
98
double
_startTime = 0.0;
99
double
_duration = 0.0;
100
double
_fullDuration = 0.0;
101
float
_amplitude = 0.5f;
102
float
_legato = 0.5f;
103
float
_vibrato = 0.0f;
104
float
_vibratoRate = 5.0f;
105
float
_tremolo = 0.0f;
106
float
_tremoloRate = 5.0f;
107
bool
_rest =
false
;
108
};
109
110
PROMEKI_NAMESPACE_END
111
112
#endif
// PROMEKI_ENABLE_MUSIC
list.h
include
promeki
musicalnote.h
Generated on 2026-05-21 02:27:58 from commit ffbc5cc (1.0.0-alpha).