3 |
* LinuxSampler - modular, streaming capable sampler * |
* LinuxSampler - modular, streaming capable sampler * |
4 |
* * |
* * |
5 |
* Copyright (C) 2003,2004 by Benno Senoner and Christian Schoenebeck * |
* Copyright (C) 2003,2004 by Benno Senoner and Christian Schoenebeck * |
6 |
* Copyright (C) 2005-2007 Christian Schoenebeck * |
* Copyright (C) 2005-2008 Christian Schoenebeck * |
7 |
* * |
* * |
8 |
* This program is free software; you can redistribute it and/or modify * |
* This program is free software; you can redistribute it and/or modify * |
9 |
* it under the terms of the GNU General Public License as published by * |
* it under the terms of the GNU General Public License as published by * |
29 |
|
|
30 |
namespace LinuxSampler { |
namespace LinuxSampler { |
31 |
|
|
32 |
|
// just symbol prototyping |
33 |
|
class MidiInputPort; |
34 |
|
|
35 |
/** @brief LinuxSampler Sampler Engine Interface |
/** @brief LinuxSampler Sampler Engine Interface |
36 |
* |
* |
37 |
* Abstract base interface class for all LinuxSampler engines which |
* Abstract base interface class for all LinuxSampler engines which |
46 |
// (these have to be implemented by the descendant) |
// (these have to be implemented by the descendant) |
47 |
|
|
48 |
virtual int RenderAudio(uint Samples) = 0; |
virtual int RenderAudio(uint Samples) = 0; |
49 |
virtual void SendSysex(void* pData, uint Size) = 0; |
virtual void SendSysex(void* pData, uint Size, MidiInputPort* pSender) = 0; |
50 |
virtual void Reset() = 0; |
virtual void Reset() = 0; |
51 |
virtual void Enable() = 0; |
virtual void Enable() = 0; |
52 |
virtual void Disable() = 0; |
virtual void Disable() = 0; |