kDB: Knowledge DataBase
Loading...
Searching...
No Matches
Services.h
1#pragma once
2
3#include <typeindex>
4#include <QSharedPointer>
5#include <kDB/Forward.h>
6
7namespace kDB::Repository
8{
13 {
14 public:
15 Services();
16 Services(const Services& _rhs);
17 Services operator=(const Services& _rhs);
18 ~Services();
22 template<typename _T_>
23 void addService(_T_* _service, int _priority = 0)
24 {
25 addService(_service, _priority, typeid(_T_));
26 }
31 knowDBC::Result call(const knowCore::Uri& _service, const QString& _query, const knowCore::ValueHash& _bindings) const;
35 template<typename _T_>
37 {
38 removeAllServices(typeid(_T_));
39 }
40 private:
41 void addService(AbstractService* _service, int _priority, const std::type_index& _type);
42 void removeAllServices(const std::type_index& _type);
43 private:
44 struct Private;
46 };
47}
Definition Forward.h:6
Definition AbstractService.h:15
Definition Services.h:13
knowDBC::Result call(const knowCore::Uri &_service, const QString &_query, const knowCore::ValueHash &_bindings) const
Definition Services.cpp:64
void addService(_T_ *_service, int _priority=0)
Definition Services.h:23
void removeAllServices()
Definition Services.h:36
Definition Uri.h:15
Definition ValueHash.h:13
Definition Result.h:23