X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Frc_configuration.h;h=d54fd1b4e8aa6ca78943788bf31b05beee880a74;hb=2a6dcddcc513fa3ebc1aad4b2e5fede62277aba5;hp=abf22e4e9d6be257c09ffbfecb61d490d0cc3684;hpb=6cf41417a0358d819bd4b5c862caa55ce7acf2cf;p=ardour.git diff --git a/libs/ardour/ardour/rc_configuration.h b/libs/ardour/ardour/rc_configuration.h index abf22e4e9d..d54fd1b4e8 100644 --- a/libs/ardour/ardour/rc_configuration.h +++ b/libs/ardour/ardour/rc_configuration.h @@ -1,5 +1,5 @@ /* - Copyright (C) 1999 Paul Davis + Copyright (C) 1999 Paul Davis This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -35,24 +35,24 @@ class RCConfiguration : public Configuration { public: RCConfiguration(); + ~RCConfiguration(); - void map_parameters (sigc::slot); - int set_state (XMLNode const &); + void map_parameters (boost::function&); + int set_state (XMLNode const &, int version); XMLNode& get_state (); XMLNode& get_variables (); void set_variables (XMLNode const &); - std::map midi_ports; - int load_state (); int save_state (); - /// calls Stateful::*instant_xml methods using + /// calls Stateful::*instant_xml methods using /// ARDOUR::user_config_directory for the directory argument void add_instant_xml (XMLNode&); XMLNode * instant_xml (const std::string& str); XMLNode* control_protocol_state () { return _control_protocol_state; } + std::list midi_port_states () { return _midi_port_states; } /* define accessor methods */ @@ -73,14 +73,19 @@ class RCConfiguration : public Configuration /* declare variables */ #undef CONFIG_VARIABLE -#undef CONFIG_VARIABLE_SPECIAL +#undef CONFIG_VARIABLE_SPECIAL #define CONFIG_VARIABLE(Type,var,name,value) ConfigVariable var; #define CONFIG_VARIABLE_SPECIAL(Type,var,name,value,mutator) ConfigVariableWithMutation var; #include "ardour/rc_configuration_vars.h" #undef CONFIG_VARIABLE -#undef CONFIG_VARIABLE_SPECIAL +#undef CONFIG_VARIABLE_SPECIAL XMLNode* _control_protocol_state; + + /** MIDI port nodes from the RC configuration. We store them so that we can set their + state once the audio engine and hence ports are up. + */ + std::list _midi_port_states; }; /* XXX: rename this */