blob: cf951e101989e9e89a274f06c48d8083e592e2b7 [file] [log] [blame]
Darin Petkov33af05c2012-02-28 10:10:30 +01001// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
Chris Masone2b105542011-06-22 10:58:09 -07002// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef SHILL_REFPTR_TYPES_
6#define SHILL_REFPTR_TYPES_
7
8#include <base/memory/ref_counted.h>
9
10namespace shill {
11
Wade Guthrieefe1f0c2013-02-26 17:42:01 -080012class AttributeList;
13typedef scoped_refptr<const AttributeList> AttributeListConstRefPtr;
14typedef scoped_refptr<AttributeList> AttributeListRefPtr;
15
Chris Masone2b105542011-06-22 10:58:09 -070016class Device;
17typedef scoped_refptr<const Device> DeviceConstRefPtr;
18typedef scoped_refptr<Device> DeviceRefPtr;
19
20class Cellular;
21typedef scoped_refptr<const Cellular> CellularConstRefPtr;
22typedef scoped_refptr<Cellular> CellularRefPtr;
23
24class Ethernet;
25typedef scoped_refptr<const Ethernet> EthernetConstRefPtr;
26typedef scoped_refptr<Ethernet> EthernetRefPtr;
27
Darin Petkovf20994f2012-03-05 16:12:19 +010028class VPN;
29typedef scoped_refptr<const VPN> VPNConstRefPtr;
30typedef scoped_refptr<VPN> VPNRefPtr;
31
Chris Masone2b105542011-06-22 10:58:09 -070032class WiFi;
33typedef scoped_refptr<const WiFi> WiFiConstRefPtr;
34typedef scoped_refptr<WiFi> WiFiRefPtr;
35
Ben Chan99c8a4d2012-05-01 08:11:53 -070036class WiMax;
37typedef scoped_refptr<const WiMax> WiMaxConstRefPtr;
38typedef scoped_refptr<WiMax> WiMaxRefPtr;
39
Chris Masone2b105542011-06-22 10:58:09 -070040class Endpoint;
41typedef scoped_refptr<const Endpoint> EndpointConstRefPtr;
42typedef scoped_refptr<Endpoint> EndpointRefPtr;
43
44class WiFiEndpoint;
45typedef scoped_refptr<const WiFiEndpoint> WiFiEndpointConstRefPtr;
46typedef scoped_refptr<WiFiEndpoint> WiFiEndpointRefPtr;
47
Chris Masone2b105542011-06-22 10:58:09 -070048class Service;
49typedef scoped_refptr<const Service> ServiceConstRefPtr;
50typedef scoped_refptr<Service> ServiceRefPtr;
51
52class CellularService;
53typedef scoped_refptr<const CellularService> CellularServiceConstRefPtr;
54typedef scoped_refptr<CellularService> CellularServiceRefPtr;
55
56class EthernetService;
57typedef scoped_refptr<const EthernetService> EthernetServiceConstRefPtr;
58typedef scoped_refptr<EthernetService> EthernetServiceRefPtr;
59
Darin Petkov33af05c2012-02-28 10:10:30 +010060class VPNService;
61typedef scoped_refptr<const VPNService> VPNServiceConstRefPtr;
62typedef scoped_refptr<VPNService> VPNServiceRefPtr;
63
Chris Masone2b105542011-06-22 10:58:09 -070064class WiFiService;
65typedef scoped_refptr<const WiFiService> WiFiServiceConstRefPtr;
66typedef scoped_refptr<WiFiService> WiFiServiceRefPtr;
67
Ben Chan99c8a4d2012-05-01 08:11:53 -070068class WiMaxService;
69typedef scoped_refptr<const WiMaxService> WiMaxServiceConstRefPtr;
70typedef scoped_refptr<WiMaxService> WiMaxServiceRefPtr;
71
Chris Masone2b105542011-06-22 10:58:09 -070072class IPConfig;
73typedef scoped_refptr<IPConfig> IPConfigRefPtr;
74
75class DHCPConfig;
76typedef scoped_refptr<DHCPConfig> DHCPConfigRefPtr;
77
Chris Masone7aa5f902011-07-11 11:13:35 -070078class Profile;
mukesh agrawalbebf1b82013-04-23 15:06:33 -070079typedef scoped_refptr<const Profile> ProfileConstRefPtr;
Chris Masone7aa5f902011-07-11 11:13:35 -070080typedef scoped_refptr<Profile> ProfileRefPtr;
81
Paul Stewartdd60e452011-08-08 11:38:36 -070082class Connection;
83typedef scoped_refptr<Connection> ConnectionRefPtr;
84
Chris Masone2b105542011-06-22 10:58:09 -070085} // namespace shill
86
87#endif // SHILL_REFPTR_TYPES_