class Diskstream;
class Playlist;
class RouteGroup;
+class Region;
class Track : public Route
{
virtual void freeze (InterThreadInfo&) = 0;
virtual void unfreeze () = 0;
- virtual void bounce (InterThreadInfo&) = 0;
- virtual void bounce_range (nframes_t start, nframes_t end, InterThreadInfo&) = 0;
+ virtual boost::shared_ptr<Region> bounce (InterThreadInfo&) = 0;
+ virtual boost::shared_ptr<Region> bounce_range (nframes_t start, nframes_t end, InterThreadInfo&) = 0;
XMLNode& get_state();
XMLNode& get_template();
virtual int set_state(const XMLNode& node) = 0;
- PBD::Controllable& rec_enable_control() { return _rec_enable_control; }
+ boost::shared_ptr<PBD::Controllable> rec_enable_control() { return _rec_enable_control; }
bool record_enabled() const;
void set_record_enable (bool yn, void *src);
vector<FreezeRecordProcessorInfo*> processor_info;
bool have_mementos;
FreezeState state;
+ gain_t gain;
+ AutoState gain_automation_state;
+ AutoState pan_automation_state;
};
struct RecEnableControllable : public PBD::Controllable {
XMLNode* pending_state;
sigc::connection recenable_connection;
sigc::connection ic_connection;
- RecEnableControllable _rec_enable_control;
bool _destructive;
+
+ boost::shared_ptr<RecEnableControllable> _rec_enable_control;
};
}; /* namespace ARDOUR*/