// Copyright (C) 2016 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 #ifndef LISTUSER_H #define LISTUSER_H #include "complex.h" #include "point.h" #include "pointf.h" #include "libsamplemacros.h" #include class LIBSAMPLE_API ListUser { public: using PointList = std::list; enum ListOfSomething { ListOfPoint, ListOfPointF }; ListUser(); ListUser(const ListUser &other); ListUser(ListUser &&other) noexcept; ListUser &operator=(const ListUser &other); ListUser &operator=(ListUser &&other) noexcept; virtual ~ListUser(); virtual std::list createList(); std::list callCreateList(); static std::list createComplexList(Complex cpx0, Complex cpx1); double sumList(std::list vallist); double sumList(std::list vallist); static ListOfSomething listOfPoints(const std::list &pointlist); static ListOfSomething listOfPoints(const std::list &pointlist); static void multiplyPointList(PointList &points, double multiplier); inline void setList(std::list lst) { m_lst = lst; } inline std::list getList() const { return m_lst; } private: std::list m_lst; }; #endif // LISTUSER_H