Use scoped_ptr for private data in FrontendNet. Allow threads to be set
[metaproxy-moved-to-github.git] / src / filter_frontend_net.hpp
1 /* $Id: filter_frontend_net.hpp,v 1.12 2006-01-09 21:19:11 adam Exp $
2    Copyright (c) 2005, Index Data.
3
4 %LICENSE%
5  */
6
7 #ifndef FILTER_FRONTEND_NET_HPP
8 #define FILTER_FRONTEND_NET_HPP
9
10 #include <boost/scoped_ptr.hpp>
11
12 #include <stdexcept>
13 #include <vector>
14
15 #include "filter.hpp"
16
17 namespace yp2 {
18     namespace filter {
19         class FrontendNet : public Base {
20             class Rep;
21             boost::scoped_ptr<Rep> m_p;
22         public:
23             FrontendNet();
24             ~FrontendNet();
25             void process(yp2::Package & package) const;
26             void configure(const xmlNode * ptr);
27         public:
28             /// set ports
29             std::vector<std::string> &ports();
30             // set liten duraction (number of seconcds to listen)
31             int &listen_duration();
32         };
33     }
34 }
35
36 extern "C" {
37     extern struct yp2_filter_struct yp2_filter_frontend_net;
38 }
39
40 #endif
41 /*
42  * Local variables:
43  * c-basic-offset: 4
44  * indent-tabs-mode: nil
45  * c-file-style: "stroustrup"
46  * End:
47  * vim: shiftwidth=4 tabstop=8 expandtab
48  */