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