33 lines
906 B
C
Raw Normal View History

// http://www.apache.org/licenses/LICENSE-2.0
// Copyright 2014 Perttu Ahola <celeron55@gmail.com>
2014-09-18 23:47:05 +03:00
#pragma once
#include "interface/event.h"
#include "network/api.h"
2014-09-18 23:47:05 +03:00
namespace client_file
{
struct FilesTransmitted: public interface::Event::Private
2014-09-18 23:47:05 +03:00
{
network::PeerInfo::Id recipient;
FilesTransmitted(const network::PeerInfo::Id &recipient): recipient(
recipient){}
2014-09-18 23:47:05 +03:00
};
struct Interface
{
virtual void update_file_content(const ss_ &name, const ss_ &content) = 0;
2014-09-18 23:47:05 +03:00
virtual void add_file_content(const ss_ &name, const ss_ &content) = 0;
virtual void add_file_path(const ss_ &name, const ss_ &path) = 0;
2014-09-18 23:47:05 +03:00
};
inline bool access(interface::Server *server,
std::function<void(client_file::Interface*)> cb)
2014-09-18 23:47:05 +03:00
{
2014-10-06 16:43:27 +03:00
return server->access_module("client_file", [&](interface::Module *module){
cb((client_file::Interface*)module->check_interface());
});
2014-09-18 23:47:05 +03:00
}
}
2014-09-24 14:53:57 +03:00
// vim: set noet ts=4 sw=4: