File indexing completed on 2024-05-05 08:56:16
0001 /* 0002 SPDX-FileCopyrightText: 2015 (c) Matthieu Gallien <matthieu_gallien@yahoo.fr> 0003 0004 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0005 */ 0006 0007 #ifndef UPNPACTIONDESCRIPTION_H 0008 #define UPNPACTIONDESCRIPTION_H 0009 0010 #include "upnplibqt_export.h" 0011 0012 #include <QString> 0013 #include <QVector> 0014 0015 /** 0016 * @brief The UpnpArgumentDirection enum indicates if an argument is sent with the request (In) or received with the answer (Out) 0017 */ 0018 enum class UpnpArgumentDirection { 0019 In, 0020 Out, 0021 Invalid, 0022 }; 0023 0024 /** 0025 * @brief The UpnpActionArgumentDescription class is used to describe one argument of an UPnP action that can be called on a service see \class UpnpAbstractService and \class UpnpActionDescription. 0026 */ 0027 class UPNPLIBQT_EXPORT UpnpActionArgumentDescription 0028 { 0029 public: 0030 bool mIsValid = false; 0031 0032 /** 0033 * @brief mName is the name of the argument 0034 */ 0035 QString mName; 0036 0037 /** 0038 * @brief mDirection indicates if the argument is an input (In or a parameter) or an output (Out or a result). 0039 */ 0040 UpnpArgumentDirection mDirection = UpnpArgumentDirection::Invalid; 0041 0042 bool mIsReturnValue = false; 0043 0044 QString mRelatedStateVariable; 0045 }; 0046 0047 /** 0048 * @brief The UpnpActionDescription class is used to describe one UPnP action that can be called on a service see \class UpnpAbstractService and \class UpnpActionArgumentDescription. 0049 */ 0050 class UPNPLIBQT_EXPORT UpnpActionDescription 0051 { 0052 public: 0053 bool mIsValid = false; 0054 0055 /** 0056 * @brief mName is the name of the action 0057 */ 0058 QString mName; 0059 0060 QVector<UpnpActionArgumentDescription> mArguments; 0061 0062 int mNumberInArgument = 0; 0063 0064 int mNumberOutArgument = 0; 0065 }; 0066 0067 #endif // UPNPACTIONDESCRIPTION_H