Go to the documentation of this file.
   17 #ifndef USGOV_de56e188fcfd89220cc987a4586be02f78f88b2010f135329f1082714d9eaaa6 
   18 #define USGOV_de56e188fcfd89220cc987a4586be02f78f88b2010f135329f1082714d9eaaa6 
   29 #include <condition_variable> 
   34 namespace us{ 
namespace wallet {
 
   40     struct wallet_local_api;
 
   64             template<
typename type1>
 
   65             void dolog(
const type1& arg1)
 const {
 
   69             template<
typename type1, 
typename... types>
 
   70             void dolog(
const type1& arg1, 
const types& ... args)
 const {
 
   75             template<
typename... Args>
 
   76             void olog(
const Args&... args)
 const {
 
   77                 lock_guard<mutex> lock(mx_logos);
 
   93             static constexpr 
const char* statestr[num_states]={
"offline",
"req_online",
"connecting",
"connect_failed",
"connected",
"online"};
 
   98                 lock_guard<mutex> lock(mx);
 
  105             bool exec(istream& cmd, ostream& os);
 
  108             void dump(
const string& prefix, ostream&) 
const;
 
  123             condition_variable 
cv;
 
  137             bool initiator{
false};
 
  138             wallet_daemon* demon{0};
 
  
 
void dump(const string &prefix, ostream &) const
us::gov::crypto::ripemd160::value_type hash_t
Definition: trader.h:38
state_t
Definition: trader.h:83
void dolog(const type1 &arg1) const
Definition: trader.h:65
state_t state
Definition: trader.h:139
string reason
Definition: trader.h:95
void unable(const string &r)
Definition: trader.h:97
@ state_connected
Definition: trader.h:88
Definition: trader_protocol.h:45
vector< string > cmdq
Definition: trader.h:134
void flush_command_queue()
relay::peer_t peer_t
Definition: daemon.h:31
Definition: ripemd160.h:38
void dolog(const type1 &arg1, const types &... args) const
Definition: trader.h:70
hash_t id
Definition: trader.h:119
void help(ostream &) const
void show_data(ostream &os) const
trader(uint32_t host, uint16_t port, protocol *p, wallet_daemon &)
protocol * p
Definition: trader.h:118
void to_stream(ostream &) const
Definition: datagram.h:44
Definition: ripemd160.java:25
trader(const hash_t &trade_id, socket::client &, protocol *p, wallet_daemon &)
static trader * from_stream(istream &)
@ state_connect_failed
Definition: trader.h:87
mutex mx_logos
Definition: trader.h:61
trader_protocol protocol
Definition: trader.h:48
us::gov::wbgtask c
Definition: wbgtask.cpp:22
void show_log(ostream &os) const
@ state_connecting
Definition: trader.h:86
@ state_offline
Definition: trader.h:84
void api_list(ostream &) const
Definition: client.cpp:417
mutex mx
Definition: trader.h:140
@ state_online
Definition: trader.h:89
void online(socket::client &cl, protocol *np)
void olog(const Args &... args) const
Definition: trader.h:76
@ state_req_online
Definition: trader.h:85
bool exec(istream &cmd, ostream &os)
condition_variable cv
Definition: trader.h:123
void process_work(socket::client *c, unsigned char code, const vector< unsigned char > &data)
void process_work(socket::client *c, unsigned char code, const string &data)
us::gov::crypto::ec::keys keys
Definition: trader.h:36
ostringstream logos
Definition: trader.h:60