1 /*
2  * Copyright (C) 1996-2021 The Squid Software Foundation and contributors
3  *
4  * Squid software is distributed under GPLv2+ license and includes
5  * contributions from numerous individuals and organizations.
6  * Please see the COPYING and CONTRIBUTORS files for details.
7  */
8 
9 #ifndef SQUID_ADAPTATION__FORWARD_H
10 #define SQUID_ADAPTATION__FORWARD_H
11 
12 // forward-declarations for commonly used adaptation classes
13 
14 template <class C>
15 class RefCount;
16 
17 // For various collections such as AllServices
18 // TODO: use std::hash_map<> instead
19 template <class Item>
20 class Vector;
21 
22 namespace Adaptation
23 {
24 
25 class Service;
26 class ServiceConfig;
27 class DynamicGroupCfg;
28 class Class;
29 class Initiate;
30 class Initiator;
31 class AccessCheck;
32 class AccessRule;
33 class ServiceGroup;
34 class ServicePlan;
35 class ServiceFilter;
36 class Message;
37 class Answer;
38 
39 typedef RefCount<Service> ServicePointer;
40 typedef RefCount<ServiceConfig> ServiceConfigPointer;
41 typedef RefCount<ServiceGroup> ServiceGroupPointer;
42 
43 } // namespace Adaptation
44 
45 #endif /* SQUID_ADAPTATION__FORWARD_H */
46 
47