ardour
profile.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2000-2007 Paul Davis
3 
4  This program is free software; you can redistribute it and/or modify
5  it under the terms of the GNU General Public License as published by
6  the Free Software Foundation; either version 2 of the License, or
7  (at your option) any later version.
8 
9  This program is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  GNU General Public License for more details.
13 
14  You should have received a copy of the GNU General Public License
15  along with this program; if not, write to the Free Software
16  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17 
18 */
19 
20 #ifndef __ardour_profile_h__
21 #define __ardour_profile_h__
22 
23 #include <boost/dynamic_bitset.hpp>
24 #include <stdint.h>
25 
27 
28 namespace ARDOUR {
29 
31 public:
32  enum Element {
34  SAE,
36  Trx,
39  };
40 
41  RuntimeProfile() { bits.resize (LastElement); }
43 
44  void set_small_screen() { bits[SmallScreen] = true; }
45  bool get_small_screen() const { return bits[SmallScreen]; }
46 
47  void set_sae () { bits[SAE] = true; }
48  bool get_sae () const { return bits[SAE]; }
49 
50  bool get_trx() const { return bits[Trx]; }
51  void set_trx() { bits[Trx] = true; }
52 
53  bool get_mixbus() const { return bits[Mixbus]; }
54  void set_mixbus() { bits[Mixbus] = true; }
55 
56  void set_single_package () { bits[SinglePackage] = true; }
57  bool get_single_package () const { return bits[SinglePackage]; }
58 
59 private:
60  boost::dynamic_bitset<uint64_t> bits;
61 
62 };
63 
65 
66 }; // namespace ARDOUR
67 
68 #endif /* __ardour_profile_h__ */
bool get_mixbus() const
Definition: profile.h:53
bool get_sae() const
Definition: profile.h:48
void set_small_screen()
Definition: profile.h:44
void set_single_package()
Definition: profile.h:56
boost::dynamic_bitset< uint64_t > bits
Definition: profile.h:60
bool get_single_package() const
Definition: profile.h:57
Definition: amp.h:29
LIBARDOUR_API RuntimeProfile * Profile
Definition: globals.cc:120
#define LIBARDOUR_API
bool get_trx() const
Definition: profile.h:50
bool get_small_screen() const
Definition: profile.h:45