From 629fb50716083c71146340de97eb8651679ca9fb Mon Sep 17 00:00:00 2001 From: David Robillard Date: Tue, 31 Jul 2012 00:14:50 +0000 Subject: Merge Ingen::Shared namespace into Ingen namespace and core libingen library. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4579 a436a847-0d15-0410-975c-d299462d15a1 --- ingen/shared/AtomWriter.hpp | 100 -------------------------------------------- 1 file changed, 100 deletions(-) delete mode 100644 ingen/shared/AtomWriter.hpp (limited to 'ingen/shared/AtomWriter.hpp') diff --git a/ingen/shared/AtomWriter.hpp b/ingen/shared/AtomWriter.hpp deleted file mode 100644 index 7087bfd6..00000000 --- a/ingen/shared/AtomWriter.hpp +++ /dev/null @@ -1,100 +0,0 @@ -/* - This file is part of Ingen. - Copyright 2007-2012 David Robillard - - Ingen is free software: you can redistribute it and/or modify it under the - terms of the GNU Affero General Public License as published by the Free - Software Foundation, either version 3 of the License, or any later version. - - Ingen 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 Affero General Public License for details. - - You should have received a copy of the GNU Affero General Public License - along with Ingen. If not, see . -*/ - -#ifndef INGEN_SHARED_ATOMWRITER_HPP -#define INGEN_SHARED_ATOMWRITER_HPP - -#include - -#include "ingen/Interface.hpp" -#include "ingen/shared/URIs.hpp" -#include "lv2/lv2plug.in/ns/ext/atom/forge.h" -#include "serd/serd.h" - -namespace Ingen { -namespace Shared { - -class AtomSink; -class URIMap; - -/** An Interface that writes LV2 atoms to an AtomSink. */ -class AtomWriter : public Interface -{ -public: - AtomWriter(URIMap& map, URIs& uris, AtomSink& sink); - ~AtomWriter() {} - - Raul::URI uri() const { return "http://drobilla.net/ns/ingen#AtomWriter"; } - - void bundle_begin(); - - void bundle_end(); - - void put(const Raul::URI& uri, - const Resource::Properties& properties, - Resource::Graph ctx = Resource::DEFAULT); - - void delta(const Raul::URI& uri, - const Resource::Properties& remove, - const Resource::Properties& add); - - void move(const Raul::Path& old_path, - const Raul::Path& new_path); - - void del(const Raul::URI& uri); - - void connect(const Raul::Path& tail, - const Raul::Path& head); - - void disconnect(const Raul::Path& tail, - const Raul::Path& head); - - void disconnect_all(const Raul::Path& parent_patch_path, - const Raul::Path& path); - - void set_property(const Raul::URI& subject, - const Raul::URI& predicate, - const Raul::Atom& value); - - void set_response_id(int32_t id); - - void get(const Raul::URI& uri); - - void response(int32_t id, Status status, const std::string& subject); - - void error(const std::string& msg); - -private: - void forge_uri(const Raul::URI& uri); - void forge_properties(const Resource::Properties& properties); - void forge_edge(const Raul::URI& tail, const Raul::URI& head); - - void finish_msg(); - int32_t next_id(); - - URIMap& _map; - URIs& _uris; - AtomSink& _sink; - SerdChunk _out; - LV2_Atom_Forge _forge; - int32_t _id; -}; - -} // namespace Shared -} // namespace Ingen - -#endif // INGEN_SHARED_ATOMWRITER_HPP - -- cgit v1.2.1