- bool size() const { return list.size(); }
- ///
- List::const_iterator begin() const { return list.begin(); }
- ///
- List::const_iterator end() const { return list.end(); }
- ///
- std::string getColor(std::string const &) const;
- ///
- void setColor(std::string const &, std::string const &);
- /// Select/deselect multiple branches given in '|'-separated string
- void setSelected(std::string const &, bool);
- /// Add multiple branches to list
- void add(std::string const &);
- /// remove a branch from list by name
- void remove(std::string const &);
- /// return whether this branch is selected
- bool selected(std::string const &) const;
- /// return, as a '|'-separated string, all branch names
- std::string allBranches() const;
- ///
- std::string allSelected() const;
- ///
- std::string const separator() const;
+ const_iterator begin() const { return list.begin(); }
+ const_iterator end() const { return list.end(); }
+
+ /** \returns the Branch with \c name. If not found, returns 0.
+ */
+ Branch * find(std::string const & name);
+ Branch const * find(std::string const & name) const;
+
+ /** Add (possibly multiple (separated by separator())) branches to list
+ * \returns true if a branch is added.
+ */
+ bool add(std::string const &);
+ /** remove a branch from list by name
+ * \returns true if a branch is removed.
+ */
+ bool remove(std::string const &);