diff options
Diffstat (limited to 'include/erebos/network.h')
| -rw-r--r-- | include/erebos/network.h | 20 | 
1 files changed, 19 insertions, 1 deletions
| diff --git a/include/erebos/network.h b/include/erebos/network.h index 8f3debe..5a1fca6 100644 --- a/include/erebos/network.h +++ b/include/erebos/network.h @@ -10,10 +10,15 @@ namespace erebos {  class Server  { +	struct Priv;  public:  	Server(const Head<LocalState> &, std::vector<std::unique_ptr<Service>> &&); +	Server(const std::shared_ptr<Priv> &);  	~Server(); +	const Head<LocalState> & localHead() const; + +	const Identity & identity() const;  	template<class S> S & svc();  	class PeerList & peerList() const; @@ -22,7 +27,6 @@ public:  private:  	Service & svcHelper(const std::type_info &); -	struct Priv;  	const std::shared_ptr<Priv> p;  }; @@ -39,13 +43,27 @@ public:  	Peer(const std::shared_ptr<Priv> & p);  	~Peer(); +	Server server() const; + +	const Storage & tempStorage() const; +	const PartialStorage & partialStorage() const; +  	std::string name() const;  	std::optional<Identity> identity() const;  	bool hasChannel() const;  	bool send(UUID, const Ref &) const; +	bool send(UUID, const Object &) const; + +	bool operator==(const Peer & other) const; +	bool operator!=(const Peer & other) const; +	bool operator<(const Peer & other) const; +	bool operator<=(const Peer & other) const; +	bool operator>(const Peer & other) const; +	bool operator>=(const Peer & other) const;  private: +	bool send(UUID, const Ref &, const Object &) const;  	std::shared_ptr<Priv> p;  }; |