+ virtual unsigned get_n_link_slots() const;
+ virtual Track *get_link(unsigned) const;
+ const std::vector<Track *> &get_links() const { return links; }
+ virtual int get_link_slot(const Object &) const;
+ virtual bool link_to(Object &);
+ using Object::break_link;
+ virtual bool break_link(unsigned);
+
+ void add_attachment(TrackAttachment &);
+ void remove_attachment(TrackAttachment &);
+ const AttachmentList &get_attachments() const { return attachments; }
+ AttachmentList get_attachments_ordered(unsigned) const;