lmms
Cross-platform music production software
Toggle main menu visibility
Loading...
Searching...
No Matches
include
MidiEventProcessor.h
Go to the documentation of this file.
1
/*
2
* MidiEventProcessor.h - base-class for midi-processing classes
3
*
4
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
5
*
6
* This file is part of LMMS - https://lmms.io
7
*
8
* This program is free software; you can redistribute it and/or
9
* modify it under the terms of the GNU General Public
10
* License as published by the Free Software Foundation; either
11
* version 2 of the License, or (at your option) any later version.
12
*
13
* This program is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16
* General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public
19
* License along with this program (see COPYING); if not, write to the
20
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21
* Boston, MA 02110-1301 USA.
22
*
23
*/
24
25
#ifndef LMMS_MIDI_EVENT_PROCESSOR_H
26
#define LMMS_MIDI_EVENT_PROCESSOR_H
27
28
#include "
MidiEvent.h
"
29
#include "
TimePos.h
"
30
31
namespace
lmms
32
{
33
34
// all classes being able to process MIDI-events should inherit from this
35
class
MidiEventProcessor
36
{
37
public
:
38
MidiEventProcessor
() =
default
;
39
40
virtual
~MidiEventProcessor
() =
default
;
41
42
// to be implemented by inheriting classes
43
virtual
void
processInEvent
(
const
MidiEvent
& event,
const
TimePos
& time =
TimePos
(),
f_cnt_t
offset = 0 ) = 0;
44
virtual
void
processOutEvent
(
const
MidiEvent
& event,
const
TimePos
& time =
TimePos
(),
f_cnt_t
offset = 0 ) = 0;
45
46
} ;
47
48
}
// namespace lmms
49
50
#endif
// LMMS_MIDI_EVENT_PROCESSOR_H
MidiEvent.h
TimePos.h
lmms::MidiEvent
Definition
MidiEvent.h:37
lmms::MidiEventProcessor::~MidiEventProcessor
virtual ~MidiEventProcessor()=default
lmms::MidiEventProcessor::processOutEvent
virtual void processOutEvent(const MidiEvent &event, const TimePos &time=TimePos(), f_cnt_t offset=0)=0
lmms::MidiEventProcessor::processInEvent
virtual void processInEvent(const MidiEvent &event, const TimePos &time=TimePos(), f_cnt_t offset=0)=0
lmms::MidiEventProcessor::MidiEventProcessor
MidiEventProcessor()=default
lmms::TimePos
Definition
TimePos.h:68
lmms::TimePos::TimePos
TimePos(const bar_t bar, const tick_t ticks)
Definition
TimePos.cpp:45
lmms
Definition
RemotePluginBase.cpp:34
lmms::f_cnt_t
std::uint64_t f_cnt_t
Definition
LmmsTypes.h:43
Generated on
for lmms by
1.18.0