c91306d6dd1292e7dcb36cdf84f276826de73bf7
[ardour.git] / libs / ardour / ardour / configuration_vars.h
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 /* IO connection */
21
22 CONFIG_VARIABLE (AutoConnectOption, output_auto_connect, "output-auto-connect", AutoConnectOption (0))
23 CONFIG_VARIABLE (AutoConnectOption, input_auto_connect, "input-auto-connect", AutoConnectOption (0))
24
25 CONFIG_VARIABLE (std::string, auditioner_output_left, "auditioner-output-left", "default")
26 CONFIG_VARIABLE (std::string, auditioner_output_right, "auditioner-output-right", "default")
27
28 /* MIDI and MIDI related */
29
30 CONFIG_VARIABLE (std::string, mtc_port_name, "mtc-port-name", "default")
31 CONFIG_VARIABLE (std::string, mmc_port_name, "mmc-port-name", "default")
32 CONFIG_VARIABLE (std::string, midi_port_name, "midi-port-name", "default")
33 CONFIG_VARIABLE (std::string, midi_clock_port_name, "midi-clock-port-name", "default")
34 CONFIG_VARIABLE (bool, trace_midi_input, "trace-midi-input", false)
35 CONFIG_VARIABLE (bool, trace_midi_output, "trace-midi-output", false)
36 CONFIG_VARIABLE (bool, send_mtc, "send-mtc", false)
37 CONFIG_VARIABLE (bool, send_mmc, "send-mmc", true)
38 CONFIG_VARIABLE (bool, send_midi_clock, "send-midi-clock", false)
39 CONFIG_VARIABLE (bool, mmc_control, "mmc-control", true)
40 CONFIG_VARIABLE (bool, midi_feedback, "midi-feedback", false)
41 CONFIG_VARIABLE (uint8_t, mmc_receive_device_id, "mmc-receive-device-id", 0)
42 CONFIG_VARIABLE (uint8_t, mmc_send_device_id, "mmc-send-device-id", 0)
43 CONFIG_VARIABLE (int32_t, initial_program_change, "initial-program-change", -1)
44
45 /* control surfaces */
46
47 CONFIG_VARIABLE (uint32_t, feedback_interval_ms,  "feedback-interval-ms", 100)
48 CONFIG_VARIABLE (bool, use_tranzport,  "use-tranzport", false)
49 CONFIG_VARIABLE (std::string, mackie_emulation, "mackie-emulation", "mcu")
50 CONFIG_VARIABLE (RemoteModel, remote_model, "remote-model", MixerOrdered)
51
52 /* disk operations */
53
54 CONFIG_VARIABLE (uint32_t, minimum_disk_io_bytes,  "minimum-disk-io-bytes", 1024 * 256)
55 CONFIG_VARIABLE (float, midi_readahead,  "midi-readahead", 1.0)
56 CONFIG_VARIABLE (float, audio_track_buffer_seconds, "track-buffer-seconds", 5.0)
57 CONFIG_VARIABLE (float, midi_track_buffer_seconds, "midi-track-buffer-seconds", 1.0)
58 CONFIG_VARIABLE (uint32_t, disk_choice_space_threshold,  "disk-choice-space-threshold", 57600000)
59 CONFIG_VARIABLE (SampleFormat, native_file_data_format,  "native-file-data-format", ARDOUR::FormatFloat)
60 CONFIG_VARIABLE (HeaderFormat, native_file_header_format,  "native-file-header-format", ARDOUR::WAVE)
61 CONFIG_VARIABLE (bool, auto_analyse_audio, "auto-analyse-audio", false)
62
63 /* OSC */
64
65 CONFIG_VARIABLE (uint32_t, osc_port, "osc-port", 3819)
66 CONFIG_VARIABLE (bool, use_osc, "use-osc", false)
67
68 /* fades, crossfades */
69
70 CONFIG_VARIABLE (CrossfadeModel, xfade_model, "xfade-model", FullCrossfade)
71 CONFIG_VARIABLE (bool, auto_xfade, "auto-xfade", true)
72 CONFIG_VARIABLE (float, short_xfade_seconds, "short-xfade-seconds", 0.015)
73 CONFIG_VARIABLE (bool, xfades_active, "xfades-active", true)
74 CONFIG_VARIABLE (bool, xfades_visible, "xfades-visible", true)
75 CONFIG_VARIABLE (uint32_t, destructive_xfade_msecs,  "destructive-xfade-msecs", 2)
76 CONFIG_VARIABLE (bool, use_region_fades, "use-region-fades", true)
77 CONFIG_VARIABLE (bool, show_region_fades, "show-region-fades", true)
78
79 /* editing related */
80
81 CONFIG_VARIABLE (EditMode, edit_mode, "edit-mode", Slide)
82 CONFIG_VARIABLE (LayerModel, layer_model, "layer-model", MoveAddHigher)
83 CONFIG_VARIABLE (bool, link_region_and_track_selection, "link-region-and-track-selection", false)
84 CONFIG_VARIABLE (std::string, keyboard_layout_name, "keyboard-layout-name", "ansi")
85 CONFIG_VARIABLE (bool, automation_follows_regions, "automation-follows-regions", false)
86 CONFIG_VARIABLE (bool, region_boundaries_from_selected_tracks, "region-boundaries-from-selected-tracks", true)
87 CONFIG_VARIABLE (bool, region_boundaries_from_onscreen_tracks, "region-boundaries-from-onscreen_tracks", true)
88
89 /* monitoring, mute, solo etc */
90
91 CONFIG_VARIABLE (bool, mute_affects_pre_fader, "mute-affects-pre-fader", true)
92 CONFIG_VARIABLE (bool, mute_affects_post_fader, "mute-affects-post-fader", true)
93 CONFIG_VARIABLE (bool, mute_affects_control_outs, "mute-affects-control-outs", true)
94 CONFIG_VARIABLE (bool, mute_affects_main_outs, "mute-affects-main-outs", true)
95 CONFIG_VARIABLE (MonitorModel, monitoring_model, "monitoring-model", ExternalMonitoring)
96 CONFIG_VARIABLE (SoloModel, solo_model, "solo-model", InverseMute)
97 CONFIG_VARIABLE (bool, solo_latched, "solo-latched", true)
98 CONFIG_VARIABLE (bool, latched_record_enable, "latched-record-enable", false)
99 CONFIG_VARIABLE (bool, all_safe, "all-safe", false)
100 CONFIG_VARIABLE (bool, show_solo_mutes, "show-solo-mutes", false)
101 CONFIG_VARIABLE (bool, solo_mute_override, "solo-mute-override", false)
102 CONFIG_VARIABLE (bool, tape_machine_mode, "tape-machine-mode", false)
103
104 /* click */
105
106 CONFIG_VARIABLE (bool, clicking, "clicking", false)
107 CONFIG_VARIABLE (std::string, click_sound, "click-sound", "")
108 CONFIG_VARIABLE (std::string, click_emphasis_sound, "click-emphasis-sound", "")
109
110 /* transport control and related */
111
112 CONFIG_VARIABLE (bool, auto_play, "auto-play", false)
113 CONFIG_VARIABLE (bool, auto_return, "auto-return", false)
114 CONFIG_VARIABLE (bool, auto_input, "auto-input", true)
115 CONFIG_VARIABLE (bool, punch_in, "punch-in", false)
116 CONFIG_VARIABLE (bool, punch_out, "punch-out", false)
117 CONFIG_VARIABLE (bool, plugins_stop_with_transport, "plugins-stop-with-transport", false)
118 CONFIG_VARIABLE (bool, do_not_record_plugins, "do-not-record-plugins", false)
119 CONFIG_VARIABLE (bool, stop_recording_on_xrun, "stop-recording-on-xrun", false)
120 CONFIG_VARIABLE (bool, create_xrun_marker, "create-xrun-marker", true)
121 CONFIG_VARIABLE (bool, stop_at_session_end, "stop-at-session-end", true)
122 CONFIG_VARIABLE (bool, seamless_loop, "seamless-loop", false)
123 CONFIG_VARIABLE (nframes_t, preroll, "preroll", 0)
124 CONFIG_VARIABLE (nframes_t, postroll, "postroll", 0)
125 CONFIG_VARIABLE (float, rf_speed, "rf-speed", 2.0f)
126 CONFIG_VARIABLE (float, shuttle_speed_factor, "shuttle-speed-factor", 1.0f)
127 CONFIG_VARIABLE (float, shuttle_speed_threshold, "shuttle-speed-threshold", 5.0f)
128 CONFIG_VARIABLE (SlaveSource, slave_source, "slave-source", None)
129 CONFIG_VARIABLE (ShuttleBehaviour, shuttle_behaviour, "shuttle-behaviour", Sprung)
130 CONFIG_VARIABLE (ShuttleUnits, shuttle_units, "shuttle-units", Percentage)
131 CONFIG_VARIABLE (bool, quieten_at_speed, "quieten-at-speed", true)
132 CONFIG_VARIABLE (bool, primary_clock_delta_edit_cursor, "primary-clock-delta-edit-cursor", false)
133 CONFIG_VARIABLE (bool, secondary_clock_delta_edit_cursor, "secondary-clock-delta-edit-cursor", false)
134 CONFIG_VARIABLE (bool, show_track_meters, "show-track-meters", true)
135 CONFIG_VARIABLE (bool, locate_while_waiting_for_sync, "locate-while-waiting-for-sync", false)
136
137 /* timecode and sync */
138
139 CONFIG_VARIABLE (bool, jack_time_master, "jack-time-master", true)
140 CONFIG_VARIABLE (SmpteFormat, smpte_format, "smpte-format", smpte_30)
141 CONFIG_VARIABLE (bool, use_video_sync, "use-video-sync", false)
142 CONFIG_VARIABLE (bool, timecode_source_is_synced, "timecode-source-is-synced", true)
143 CONFIG_VARIABLE (float, video_pullup, "video-pullup", 0.0f)
144
145 /* metering */
146
147 CONFIG_VARIABLE (float, meter_hold, "meter-hold", 100.0f)
148 CONFIG_VARIABLE (float, meter_falloff, "meter-falloff", 27.0f)
149 CONFIG_VARIABLE (nframes_t, over_length_short, "over-length-short", 2)
150 CONFIG_VARIABLE (nframes_t, over_length_long, "over-length-long", 10)
151
152 /* miscellany */
153
154 CONFIG_VARIABLE (bool, hiding_groups_deactivates_groups, "hiding-groups-deactivates-groups", true)
155 CONFIG_VARIABLE (bool, verify_remove_last_capture, "verify-remove-last-capture", true)
156 CONFIG_VARIABLE (bool, no_new_session_dialog, "no-new-session-dialog", false)
157 CONFIG_VARIABLE (bool, use_vst, "use-vst", true)
158 CONFIG_VARIABLE (uint32_t, subframes_per_frame, "subframes-per-frame", 100)
159 CONFIG_VARIABLE (bool, save_history, "save-history", true)
160 CONFIG_VARIABLE (int32_t, saved_history_depth, "save-history-depth", 20)
161 CONFIG_VARIABLE (int32_t, history_depth, "history-depth", 20)
162 CONFIG_VARIABLE (bool, use_overlap_equivalency, "use-overlap-equivalency", false)
163 CONFIG_VARIABLE (bool, periodic_safety_backups, "periodic-safety-backups", true)
164 CONFIG_VARIABLE (uint32_t, periodic_safety_backup_interval, "periodic-safety-backup-interval", 120)
165 CONFIG_VARIABLE (float, automation_interval, "automation-interval", 50)
166 CONFIG_VARIABLE (bool, sync_all_route_ordering, "sync-all-route-ordering", true)
167 CONFIG_VARIABLE (bool, only_copy_imported_files, "only-copy-imported-files", true)
168 CONFIG_VARIABLE (bool, new_plugins_active, "new-plugins-active", true)
169 CONFIG_VARIABLE (std::string, keyboard_layout, "keyboard-layout", "ansi")
170 CONFIG_VARIABLE (std::string, default_bindings, "default-bindings", "ardour")
171 CONFIG_VARIABLE (bool, default_narrow_ms, "default-narrow_ms", false)
172 CONFIG_VARIABLE (bool, name_new_markers, "name-new-markers", false)
173 CONFIG_VARIABLE (bool, rubberbanding_snaps_to_grid, "rubberbanding-snaps-to-grid", false)
174 CONFIG_VARIABLE (long, font_scale, "font-scale", 102400)
175 CONFIG_VARIABLE (std::string, default_session_parent_dir, "default-session-parent-dir", "~")
176
177 /* denormal management */
178
179 CONFIG_VARIABLE (bool, denormal_protection, "denormal-protection", false)
180 CONFIG_VARIABLE (DenormalModel, denormal_model, "denormal-model", DenormalNone)
181
182 /* BWAV */
183
184 CONFIG_VARIABLE (string, bwf_country_code, "bwf-country-code", "US")
185 CONFIG_VARIABLE (string, bwf_organization_code, "bwf-organization-code", "US")
186
187 /* these variables have custom set() methods (e.g. path globbing) */
188
189 CONFIG_VARIABLE_SPECIAL(Glib::ustring, raid_path, "raid-path", "", path_expand)
190