+ bool is_auditioner() const { return _presentation_info.flags() & PresentationInfo::Auditioner; }
+ bool is_master() const { return _presentation_info.flags() & PresentationInfo::MasterOut; }
+ bool is_monitor() const { return _presentation_info.flags() & PresentationInfo::MonitorOut; }
+
+ int set_state (XMLNode const&, int);
+
+ bool is_hidden() const { return _presentation_info.flags() & PresentationInfo::Hidden; }
+ bool is_selected() const { return _presentation_info.flags() & PresentationInfo::Selected; }
+
+ PresentationInfo const & presentation_info () const { return _presentation_info; }
+ PresentationInfo& presentation_info () { return _presentation_info; }
+
+ /* set just the order */
+
+ void set_presentation_order (PresentationInfo::order_t, bool notify_class_listeners = true);
+ void set_presentation_order_explicit (PresentationInfo::order_t);
+
+ struct PresentationOrderSorter {
+ bool operator() (boost::shared_ptr<Stripable> a, boost::shared_ptr<Stripable> b) {
+ return a->presentation_info().order() < b->presentation_info().order();
+ }
+ };
+
+ /* gui's call this for their own purposes. */
+
+ PBD::Signal2<void,std::string,void*> gui_changed;
+
+ /***************************************************************
+ * Pure interface begins here
+ ***************************************************************/