YARP
Yet Another Robot Platform
SqliteTripleSource.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2006-2020 Istituto Italiano di Tecnologia (IIT)
3  * Copyright (C) 2006-2010 RobotCub Consortium
4  * All rights reserved.
5  *
6  * This software may be modified and distributed under the terms of the
7  * BSD-3-Clause license. See the accompanying LICENSE file for details.
8  */
9 
10 #ifndef YARP_SERVERSQL_IMPL_SQLITETRIPLESOURCE_H
11 #define YARP_SERVERSQL_IMPL_SQLITETRIPLESOURCE_H
12 
15 
16 #include <sqlite3.h>
17 
18 namespace yarp {
19 namespace serversql {
20 namespace impl {
21 
28 {
29 public:
30  SqliteTripleSource(sqlite3 *db);
31 
32  std::string condition(Triple& t, TripleContext *context);
33 
34  int find(Triple& t, TripleContext *context) override;
35  void remove_query(Triple& ti, TripleContext *context) override;
36  void prune(TripleContext *context) override;
37  std::list<Triple> query(Triple& ti, TripleContext *context) override;
38  std::string expressContext(TripleContext *context);
39  void insert(Triple& t, TripleContext *context) override;
40  void update(Triple& t, TripleContext *context) override;
41  void begin(TripleContext *context) override;
42  void end(TripleContext *context) override;
43 
44 private:
45  sqlite3 *db;
46 };
47 
48 } // namespace impl
49 } // namespace serversql
50 } // namespace yarp
51 
52 
53 #endif // YARP_SERVERSQL_IMPL_SQLITETRIPLESOURCE_H
yarp::serversql::impl::SqliteTripleSource::end
void end(TripleContext *context) override
Definition: SqliteTripleSource.cpp:224
yarp::serversql::impl::SqliteTripleSource::update
void update(Triple &t, TripleContext *context) override
Definition: SqliteTripleSource.cpp:185
t
float t
Definition: FfmpegWriter.cpp:74
yarp::serversql::impl::TripleContext
Side information for controlling access to triples.
Definition: TripleSource.h:27
yarp::serversql::impl::Triple
The basic unit of data the name server works with.
Definition: Triple.h:28
yarp::serversql::impl::SqliteTripleSource::insert
void insert(Triple &t, TripleContext *context) override
Definition: SqliteTripleSource.cpp:166
yarp::serversql::impl::SqliteTripleSource
Sqlite database, viewed as a collection of triples.
Definition: SqliteTripleSource.h:28
yarp::serversql::impl::TripleSource
Abstract view of a database as a collection of triples.
Definition: TripleSource.h:44
yarp::serversql::impl::SqliteTripleSource::prune
void prune(TripleContext *context) override
Definition: SqliteTripleSource.cpp:108
yarp::serversql::impl::SqliteTripleSource::remove_query
void remove_query(Triple &ti, TripleContext *context) override
Definition: SqliteTripleSource.cpp:96
yarp::serversql::impl::SqliteTripleSource::expressContext
std::string expressContext(TripleContext *context)
Definition: SqliteTripleSource.cpp:156
yarp::serversql::impl::SqliteTripleSource::SqliteTripleSource
SqliteTripleSource(sqlite3 *db)
Definition: SqliteTripleSource.cpp:25
yarp::serversql::impl::SqliteTripleSource::begin
void begin(TripleContext *context) override
Definition: SqliteTripleSource.cpp:215
Triple.h
yarp::serversql::impl::SqliteTripleSource::find
int find(Triple &t, TripleContext *context) override
Definition: SqliteTripleSource.cpp:71
TripleSource.h
yarp
The main, catch-all namespace for YARP.
Definition: environment.h:18
yarp::serversql::impl::SqliteTripleSource::condition
std::string condition(Triple &t, TripleContext *context)
Definition: SqliteTripleSource.cpp:29
yarp::serversql::impl::SqliteTripleSource::query
std::list< Triple > query(Triple &ti, TripleContext *context) override
Definition: SqliteTripleSource.cpp:120