X-Git-Url: https://main.carlh.net/gitweb/?p=dcpomatic.git;a=blobdiff_plain;f=src%2Flib%2Fcinema_sound_processor.h;h=ef003da2a3b4834e6c02ae4faf9618df4541c8f9;hp=c2d2f44c005fd0faf31d719f6c84ce7dda3c7055;hb=da44da6f31f97d39ca91c35955e573e76371f2c2;hpb=cf391f688a73956a8ee4caa1f896cef39d4b2607 diff --git a/src/lib/cinema_sound_processor.h b/src/lib/cinema_sound_processor.h index c2d2f44c0..ef003da2a 100644 --- a/src/lib/cinema_sound_processor.h +++ b/src/lib/cinema_sound_processor.h @@ -1,46 +1,54 @@ /* - Copyright (C) 2012-2014 Carl Hetherington + Copyright (C) 2012-2021 Carl Hetherington - This program is free software; you can redistribute it and/or modify + This file is part of DCP-o-matic. + + DCP-o-matic is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. - This program is distributed in the hope that it will be useful, + DCP-o-matic is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + along with DCP-o-matic. If not, see . */ + /** @file src/cinema_sound_processor.h * @brief CinemaSoundProcessor class */ + #ifndef DCPOMATIC_CINEMA_SOUND_PROCESSOR_H #define DCPOMATIC_CINEMA_SOUND_PROCESSOR_H + #include #include #include + /** @class CinemaSoundProcessor * @brief Class to describe a cimema's sound processor. * * In other words, the box in the rack that handles sound decoding and processing * in a cinema. */ -class CinemaSoundProcessor : public boost::noncopyable +class CinemaSoundProcessor { public: - CinemaSoundProcessor (std::string i, std::string n); + CinemaSoundProcessor (std::string i, std::string n, float knee, float below, float above); virtual ~CinemaSoundProcessor () {} - virtual float db_for_fader_change (float from, float to) const = 0; + CinemaSoundProcessor (CinemaSoundProcessor const&) = delete; + CinemaSoundProcessor& operator=(CinemaSoundProcessor const&) = delete; + + float db_for_fader_change (float from, float to) const; /** @return id for our use */ std::string id () const { @@ -63,9 +71,13 @@ private: std::string _id; /** user-visible name for this sound processor */ std::string _name; + float _knee; + float _below; + float _above; /** sll available cinema sound processors */ static std::vector _cinema_sound_processors; }; + #endif