blob: 811c6f862ddf65353c3ed793bee0b73e15531f56 [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
Chris Masone2b105542011-06-22 10:58:09 -070012class Device;
13typedef scoped_refptr<const Device> DeviceConstRefPtr;
14typedef scoped_refptr<Device> DeviceRefPtr;
15
16class Cellular;
17typedef scoped_refptr<const Cellular> CellularConstRefPtr;
18typedef scoped_refptr<Cellular> CellularRefPtr;
19
20class Ethernet;
21typedef scoped_refptr<const Ethernet> EthernetConstRefPtr;
22typedef scoped_refptr<Ethernet> EthernetRefPtr;
23
Darin Petkovf20994f2012-03-05 16:12:19 +010024class VPN;
25typedef scoped_refptr<const VPN> VPNConstRefPtr;
26typedef scoped_refptr<VPN> VPNRefPtr;
27
Chris Masone2b105542011-06-22 10:58:09 -070028class WiFi;
29typedef scoped_refptr<const WiFi> WiFiConstRefPtr;
30typedef scoped_refptr<WiFi> WiFiRefPtr;
31
Chris Masone2b105542011-06-22 10:58:09 -070032class Endpoint;
33typedef scoped_refptr<const Endpoint> EndpointConstRefPtr;
34typedef scoped_refptr<Endpoint> EndpointRefPtr;
35
36class WiFiEndpoint;
37typedef scoped_refptr<const WiFiEndpoint> WiFiEndpointConstRefPtr;
38typedef scoped_refptr<WiFiEndpoint> WiFiEndpointRefPtr;
39
Chris Masone2b105542011-06-22 10:58:09 -070040class Service;
41typedef scoped_refptr<const Service> ServiceConstRefPtr;
42typedef scoped_refptr<Service> ServiceRefPtr;
43
44class CellularService;
45typedef scoped_refptr<const CellularService> CellularServiceConstRefPtr;
46typedef scoped_refptr<CellularService> CellularServiceRefPtr;
47
48class EthernetService;
49typedef scoped_refptr<const EthernetService> EthernetServiceConstRefPtr;
50typedef scoped_refptr<EthernetService> EthernetServiceRefPtr;
51
Darin Petkov33af05c2012-02-28 10:10:30 +010052class VPNService;
53typedef scoped_refptr<const VPNService> VPNServiceConstRefPtr;
54typedef scoped_refptr<VPNService> VPNServiceRefPtr;
55
Chris Masone2b105542011-06-22 10:58:09 -070056class WiFiService;
57typedef scoped_refptr<const WiFiService> WiFiServiceConstRefPtr;
58typedef scoped_refptr<WiFiService> WiFiServiceRefPtr;
59
Chris Masone2b105542011-06-22 10:58:09 -070060class IPConfig;
61typedef scoped_refptr<IPConfig> IPConfigRefPtr;
62
63class DHCPConfig;
64typedef scoped_refptr<DHCPConfig> DHCPConfigRefPtr;
65
Chris Masone7aa5f902011-07-11 11:13:35 -070066class Profile;
67typedef scoped_refptr<Profile> ProfileRefPtr;
68
Paul Stewartdd60e452011-08-08 11:38:36 -070069class Connection;
70typedef scoped_refptr<Connection> ConnectionRefPtr;
71
Chris Masone2b105542011-06-22 10:58:09 -070072} // namespace shill
73
74#endif // SHILL_REFPTR_TYPES_