From edfc174771863e17d1cc3dccede3875c6cac144e Mon Sep 17 00:00:00 2001 From: emeric Date: Thu, 28 Apr 2016 12:38:40 +0200 Subject: [PATCH] [DB] Experimental debug version of track clustering --- src/database/Classification.cpp | 47 +++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/database/Classification.cpp diff --git a/src/database/Classification.cpp b/src/database/Classification.cpp new file mode 100644 index 00000000..63a8c602 --- /dev/null +++ b/src/database/Classification.cpp @@ -0,0 +1,47 @@ +/* + * Copyright (C) 2016 Emeric Poupon + * + * This file is part of LMS. + * + * LMS is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * LMS is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with LMS. If not, see . + */ + +#include "Track.hpp" + +#include "Classification.hpp" + +namespace Database { + +Feature::Feature(Wt::Dbo::ptr track, const std::string& type, const std::string& value) +: _type(type), +_value(value), +_track(track) +{ +} + +Feature::pointer +Feature::create(Wt::Dbo::Session& session, Wt::Dbo::ptr track, const std::string& type, const std::string& value) +{ + return session.add(new Feature(track, type, value)); +} + +std::vector +Feature::getByTrack(Wt::Dbo::Session& session, Track::id_type trackId, const std::string& type) +{ + Wt::Dbo::collection res = session.find().where("track_id = ? AND type = ?").bind( trackId).bind(type); + return std::vector(res.begin(), res.end()); +} + +} // namespace Database +