aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken6/tests/libsample/pairuser.h
blob: ee51d818e0bb787292fe9409e0ee32969499013a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
// 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 PAIRUSER_H
#define PAIRUSER_H

#include "libsamplemacros.h"
#include "complex.h"

#include <utility>

class LIBSAMPLE_API PairUser
{
public:
    LIBMINIMAL_DEFAULT_COPY_MOVE(PairUser)

    PairUser() noexcept = default;
    virtual ~PairUser() = default;

    virtual std::pair<int, int> createPair();
    std::pair<int, int> callCreatePair();
    static std::pair<Complex, Complex> createComplexPair(Complex cpx0, Complex cpx1);
    double sumPair(std::pair<int, double> pair);

    inline void setPair(std::pair<int, int> pair) { m_pair = pair; }
    inline std::pair<int, int> getPair() { return m_pair; }

private:
    std::pair<int, int> m_pair;
};

#endif // PAIRUSER_H