retdec-cpp
service.h
Go to the documentation of this file.
1 
8 #ifndef RETDEC_SERVICE_H
9 #define RETDEC_SERVICE_H
10 
11 #include <memory>
12 
13 namespace retdec {
14 
15 namespace internal {
16 
17 class ServiceImpl;
18 
19 } // namespace internal
20 
24 class Service {
25 public:
27  Service(std::unique_ptr<internal::ServiceImpl> impl);
29  virtual ~Service() = 0;
30 
33  Service(const Service &) = delete;
34  Service(Service &&) = delete;
35  Service &operator=(const Service &) = delete;
36  Service &operator=(Service &&) = delete;
38 
39 protected:
41  std::unique_ptr<internal::ServiceImpl> pimpl;
42 };
43 
44 } // namespace retdec
45 
46 #endif
The namespace of the library.
Definition: doxygen.h:8
Base class of all services.
Definition: service.h:24
std::unique_ptr< internal::ServiceImpl > pimpl
Private implementation.
Definition: service.h:41