not quite so much needs to be delayed to the init() function
[personal-kdebase.git] / workspace / libs / solid / control / networkcdmainterface.h
blob2648210bc25ad073788e11c065233e41e197483a
1 /*
2 Copyright 2008 Will Stephenson <wstephenson@kde.org>
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 2.1 of the License, or (at your option) version 3, or any
8 later version accepted by the membership of KDE e.V. (or its
9 successor approved by the membership of KDE e.V.), which shall
10 act as a proxy defined in Section 6 of version 3 of the license.
12 This library is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 Lesser General Public License for more details.
17 You should have received a copy of the GNU Lesser General Public
18 License along with this library. If not, see <http://www.gnu.org/licenses/>.
21 #ifndef SOLID_CONTROL_CDMANETWORKINTERFACE_H
22 #define SOLID_CONTROL_CDMANETWORKINTERFACE_H
24 #include "networkserialinterface.h"
26 namespace Solid
28 namespace Control
30 class CdmaNetworkInterfacePrivate;
31 /**
32 * This interface represents a CDMA cellular network interface
34 class SOLIDCONTROL_EXPORT CdmaNetworkInterface : public SerialNetworkInterface
36 Q_OBJECT
37 Q_DECLARE_PRIVATE(CdmaNetworkInterface)
39 public:
40 /**
41 * Creates a new CdmaNetworkInterface object.
43 * @param backendObject the network object provided by the backend
45 CdmaNetworkInterface(QObject *backendObject = 0);
47 /**
48 * Constructs a copy of a network.
50 * @param network the network to copy
52 CdmaNetworkInterface(const CdmaNetworkInterface &network);
54 /**
55 * Destroys a CdmaNetworkInterface object.
57 virtual ~CdmaNetworkInterface();
59 /**
60 * The NetworkInterface type.
62 * @return the NetworkInterface::Type. This always returns NetworkInterface::Cdma
64 virtual NetworkInterface::Type type() const;
66 Q_SIGNALS:
67 protected:
68 /**
69 * @internal
71 CdmaNetworkInterface(CdmaNetworkInterfacePrivate &dd, QObject *backendObject);
73 /**
74 * @internal
76 CdmaNetworkInterface(CdmaNetworkInterfacePrivate &dd, const CdmaNetworkInterface &network);
78 void makeConnections(QObject * source);
79 private Q_SLOTS:
80 void _k_destroyed(QObject *object);
81 private:
82 friend class NetworkInterface;
83 friend class NetworkInterfacePrivate;
85 } //Control
86 } //Solid
88 #endif // SOLID_CONTROL_CDMANETWORKINTERFACE_H