2 * Copyright (C) 2021 Alexander Schmidt
4 * This file is part of Seamulator.
6 * Seamulator is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
11 * Seamulator is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with Seamulator. If not, see <http://www.gnu.org/licenses/>.
22 #include "watersurfacefwd.h"
38 Synthesizer(ConstWaterSurfacePtr surface);
44 const ConstWaterSurfacePtr m_surface;
48 std::chrono::time_point<std::chrono::system_clock> m_startTime;
57 double m_velMax1 = 0.0;
58 double m_velMax2 = 0.0;
60 double getRuntime() const;
62 // int audioTick(void *outputBuffer, void *inputBuffer, unsigned int nBufferFrames,
63 // double streamTime, RtAudioStreamStatus status, void *dataPointer );
67 std::vector<std::unique_ptr<Dot>> m_dots;
72 std::unique_ptr<stk::RtWvOut> m_dac;
74 std::thread m_audioThread;