kDB: Knowledge DataBase
Loading...
Searching...
No Matches
Agents.h
1#include "Forward.h"
2
3#include <QExplicitlySharedDataPointer>
4
5#include <knowCore/Uri.h>
6
7class TestAgents;
8
9namespace kDBRobotics
10{
14 class Agents
15 {
16 friend class ::TestAgents;
17 public:
18 Agents();
19 Agents(const Agents& _rhs);
20 Agents operator=(const Agents& _rhs);
21 ~Agents();
22 public:
23 bool operator==(const Agents& _dss) const;
24 public:
29 static knowCore::ReturnValue<Agents> get(const kDB::Repository::Connection& _connection, const knowCore::Uri& _graph);
34 static knowCore::ReturnValue<Agents> create(const kDB::Repository::Connection& _connection, const knowCore::Uri& _graph);
39 static knowCore::ReturnValue<Agents> getOrCreate(const kDB::Repository::Connection& _connection, const knowCore::Uri& _graph);
43 static Agents allAgents(const kDB::Repository::Connection& _connection);
47 static knowCore::ReturnValue<QList<knowCore::Uri>> allAgentsUris(const kDB::Repository::Connection& _connection);
48 public:
52 bool isValid() const;
56 bool isReadOnly() const;
60 knowCore::Uri uri() const;
68 std::size_t count() const;
72 knowCore::ReturnValue<Agent> agent(const knowCore::Uri& _agentUri) const;
76 knowCore::ReturnValue<Stream> stream(const knowCore::Uri& _streamUri) const;
80 knowCore::ReturnValue<bool> hasAgent(const knowCore::Uri& _agentUri) const;
84 knowCore::ReturnValue<bool> hasStream(const knowCore::Uri& _streamUri) const;
88 knowCore::ReturnValue<QList<Stream>> streamsOf(const knowCore::Uri& _resource) const;
92 QList<Agent> all() const;
94 {
95 OperatorOptions() : intersectsPrecision(0.0) {}
96 OperatorOptions(double _intersectsPrecision) : intersectsPrecision(_intersectsPrecision) {}
97 double intersectsPrecision;
98 };
105 knowCore::ReturnValue<QList<Agent>> agents(const QList<QPair<knowCore::Uri, knowCore::ConstrainedValue>>& _constraints, const OperatorOptions& _operatorOptions = OperatorOptions()) const;
106 template<typename... _TArgs_>
107 knowCore::ReturnValue<QList<Agent>> agents(const knowCore::Uri& _uri, const knowCore::ConstrainedValue& _constraint, const _TArgs_&...) const;
111 knowCore::ReturnValue<Agent> createAgent(const knowCore::Uri& _typeUri, const QString& _name, const knowCore::Uri& _agentUri = knowCore::Uri::createUnique({"agent"}));
115 knowCore::ReturnValue<Stream> createStream(const knowCore::Uri& _contentTypeUri, const QString& _identifier, const knowCore::Uri& _dataTypeUri, const knowCore::Uri& _streamUri = knowCore::Uri::createUnique({"stream"}));
116 private:
117 struct Private;
118 QExplicitlySharedDataPointer<Private> d;
119 Agents(const QExplicitlySharedDataPointer<Private>& _d);
124 static void clearCache();
125 };
126}
Definition Revision.h:9
Definition TestAgents.h:5
Definition Agents.h:15
static Agents allAgents(const kDB::Repository::Connection &_connection)
Definition Agents.cpp:184
knowCore::Uri uri() const
Definition Agents.cpp:257
bool isReadOnly() const
Definition Agents.cpp:252
knowCore::ReturnValue< bool > hasAgent(const knowCore::Uri &_agentUri) const
Definition Agents.cpp:397
knowCore::ReturnValue< QList< Stream > > streamsOf(const knowCore::Uri &_resource) const
Definition Agents.cpp:419
static knowCore::ReturnValue< QList< knowCore::Uri > > allAgentsUris(const kDB::Repository::Connection &_connection)
Definition Agents.cpp:209
knowCore::ReturnValue< Stream > createStream(const knowCore::Uri &_contentTypeUri, const QString &_identifier, const knowCore::Uri &_dataTypeUri, const knowCore::Uri &_streamUri=knowCore::Uri::createUnique({"stream"}))
Definition Agents.cpp:589
static knowCore::ReturnValue< Agents > get(const kDB::Repository::Connection &_connection, const knowCore::Uri &_graph)
Definition Agents.cpp:117
knowCore::ReturnValue< Agent > agent(const knowCore::Uri &_agentUri) const
Definition Agents.cpp:282
static knowCore::ReturnValue< Agents > getOrCreate(const kDB::Repository::Connection &_connection, const knowCore::Uri &_graph)
Definition Agents.cpp:177
knowCore::ReturnValue< bool > hasStream(const knowCore::Uri &_streamUri) const
Definition Agents.cpp:408
kDB::Repository::Connection connection() const
Definition Agents.cpp:262
static knowCore::ReturnValue< Agents > create(const kDB::Repository::Connection &_connection, const knowCore::Uri &_graph)
Definition Agents.cpp:155
bool isValid() const
Definition Agents.cpp:247
knowCore::ReturnValue< Stream > stream(const knowCore::Uri &_streamUri) const
Definition Agents.cpp:325
QList< Agent > all() const
Definition Agents.cpp:368
std::size_t count() const
Definition Agents.cpp:267
knowCore::ReturnValue< QList< Agent > > agents(const QList< QPair< knowCore::Uri, knowCore::ConstrainedValue > > &_constraints, const OperatorOptions &_operatorOptions=OperatorOptions()) const
Definition Agents.cpp:436
knowCore::ReturnValue< Agent > createAgent(const knowCore::Uri &_typeUri, const QString &_name, const knowCore::Uri &_agentUri=knowCore::Uri::createUnique({"agent"}))
Definition Agents.cpp:569
Definition Connection.h:25
Definition ConstrainedValue.h:15
Definition Uri.h:15
static Uri createUnique(const QStringList &_path=QStringList())
Definition Uri.cpp:48