void set_ui (void*);
void* get_ui () const { return _ui_pointer; }
+ void set_owner (SessionObject*);
+ SessionObject* owner() const;
+
protected:
virtual int set_state_2X (const XMLNode&, int version);
bool _display_to_user;
bool _pre_fader; ///< true if this processor is currently placed before the Amp, otherwise false
void* _ui_pointer;
+ SessionObject* _owner;
};
} // namespace ARDOUR
*/
_meter.reset (new PeakMeter (_session, _name));
+ _meter->set_owner (this);
_meter->set_display_to_user (false);
_meter->activate ();
}
_processors.insert (loc, processor);
+ processor->set_owner (this);
// Set up processor list channels. This will set processor->[input|output]_streams(),
// configure redirect ports properly, etc.
}
_processors.insert (loc, *i);
+ (*i)->set_owner (this);
if ((*i)->active()) {
(*i)->activate ();
for (ProcessorList::const_iterator i = _processors.begin(); i != _processors.end(); ++i) {
+ (*i)->set_owner (this);
(*i)->ActiveChanged.connect_same_thread (*this, boost::bind (&Session::update_latency_compensation, &_session, false));
boost::shared_ptr<PluginInsert> pi;