* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ * along with this program; if not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef PULSEVIEW_PV_VIEW_VIEWITEMOWNER_HPP
-#define PULSEVIEW_PV_VIEW_VIEWITEMOWNER_HPP
+#ifndef PULSEVIEW_PV_VIEWS_TRACEVIEW_VIEWITEMOWNER_HPP
+#define PULSEVIEW_PV_VIEWS_TRACEVIEW_VIEWITEMOWNER_HPP
#include <memory>
#include <vector>
#include "viewitemiterator.hpp"
+using std::dynamic_pointer_cast;
+using std::shared_ptr;
+using std::vector;
+
namespace pv {
class Session;
-namespace view {
+namespace views {
+namespace TraceView {
class ViewItem;
class View;
class ViewItemOwner
{
public:
- typedef std::vector< std::shared_ptr<ViewItem> > item_list;
+ typedef vector< shared_ptr<ViewItem> > item_list;
typedef ViewItemIterator<ViewItemOwner, ViewItem> iterator;
typedef ViewItemIterator<const ViewItemOwner, ViewItem> const_iterator;
public:
- /**
- * Returns a list of row items owned by this object.
- */
- virtual item_list& child_items() = 0;
-
/**
* Returns a list of row items owned by this object.
*/
const_iterator end() const;
/**
- * Creates a list of decendant signals filtered by type.
+ * Creates a list of descendant signals filtered by type.
*/
template<class T>
- std::vector< std::shared_ptr<T> > list_by_type() {
- std::vector< std::shared_ptr<T> > items;
+ vector< shared_ptr<T> > list_by_type() {
+ vector< shared_ptr<T> > items;
for (const auto &r : *this) {
- std::shared_ptr<T> p = std::dynamic_pointer_cast<T>(r);
+ shared_ptr<T> p = dynamic_pointer_cast<T>(r);
if (p)
items.push_back(p);
}
item_list items_;
};
-} // view
-} // pv
+} // namespace TraceView
+} // namespace views
+} // namespace pv
-#endif // PULSEVIEW_PV_VIEW_VIEWITEMOWNER_HPP
+#endif // PULSEVIEW_PV_VIEWS_TRACEVIEW_VIEWITEMOWNER_HPP