]> git.ipfire.org Git - thirdparty/squid.git/blame - src/mgr/QueryParam.h
apply the initial Phase3 of the SMP Cache Manager patch
[thirdparty/squid.git] / src / mgr / QueryParam.h
CommitLineData
b8151fa1
CT
1/*
2 * $Id$
3 *
4 * DEBUG: section 16 Cache Manager API
5 *
6 */
7
8#ifndef SQUID_MGR_QUERY_PARAM_H
9#define SQUID_MGR_QUERY_PARAM_H
10
11#include "ipc/forward.h"
12#include "RefCount.h"
13
14
15namespace Mgr
16{
17
18class QueryParam: public RefCountable
19{
20public:
21 typedef enum {ptInt = 1, ptString} Type;
22 typedef RefCount<QueryParam> Pointer;
23
24public:
25 QueryParam(Type aType): type(aType) {}
26 virtual ~QueryParam() {}
27 virtual void pack(Ipc::TypedMsgHdr& msg) const = 0; ///< store parameter into msg
28 virtual void unpackValue(const Ipc::TypedMsgHdr& msg) = 0; ///< load parameter value from msg
29
30private:
31 QueryParam(const QueryParam&); // not implemented
32 QueryParam& operator= (const QueryParam&); // not implemented
33
34public:
35 Type type;
36};
37
38} // namespace Mgr
39
40#endif /* SQUID_MGR_QUERY_PARAM_H */