1 #ifndef LIBR2C2_ZONE_H_
2 #define LIBR2C2_ZONE_H_
6 #include <msp/datafile/objectloader.h>
16 class Loader: public Msp::DataFile::ObjectLoader<Zone>
24 typedef std::set<Track *> TrackSet;
26 sigc::signal<void, const std::string &, const std::string &, unsigned> signal_name_changed;
31 std::string qualifier;
39 void set_name(const std::string &, const std::string &, unsigned);
40 const std::string &get_group() const { return group; }
41 const std::string &get_qualifier() const { return qualifier; }
42 unsigned get_number() const { return number; }
43 std::string get_name() const;
45 void add_track(Track &);
46 bool add_tracks(const TrackSet &);
47 const TrackSet &get_tracks() const { return tracks; }
48 bool has_track(Track &) const;
50 void save(std::list<Msp::DataFile::Statement> &) const;
52 bool is_valid(Track &) const;