void Transaction_cmd(int arg_cnt, char **args){ if (arg_cnt != 9) { Serial.println("Format error! (Append hex value to even number) Transaction [account_id]/[key_id] [To(hex)] [Value(hex)] [Gas Price(hex)] [Gas Limit(hex)] [Nonce(hex)] [Data(hex)]"); return; } /* struct transaction_struct std::vector<uint8_t> to; std::vector<uint8_t> value; std::vector<uint8_t> gasPrice; std::vector<uint8_t> gasLimit; std::vector<uint8_t> nonce; std::vector<uint8_t> data; */ transaction_struct trx; trx.to = ByteConverter::charStrToBytes((const uint8_t *)args[3]); trx.value = ByteConverter::charStrToBytes((const uint8_t *)args[4]); trx.gasPrice = ByteConverter::charStrToBytes((const uint8_t *)args[5]); trx.gasLimit = ByteConverter::charStrToBytes((const uint8_t *)args[6]); trx.nonce = ByteConverter::charStrToBytes((const uint8_t *)args[7]); trx.data = ByteConverter::charStrToBytes((const uint8_t *)args[8]); uint32_t account; sscanf(args[1], "%d", &account); uint32_t key; sscanf(args[2], "%d", &key); Serial.print("Account:");Serial.print(account);Serial.print("/Key_ID:");Serial.println(key); Serial.print("To: 0x");Serial.println(vector2string(trx.to)); Serial.print("Value: ");Serial.print(vector2string_DEC(trx.value,2));Serial.println("ETH"); Serial.print("gasPrice: ");Serial.print(vector2string_DEC(trx.gasPrice,1));Serial.println("Gwei"); Serial.print("gasLimit: ");Serial.println(vector2string_DEC(trx.gasLimit,0)); Serial.print("Nonce: ");Serial.println(vector2string_DEC(trx.nonce,0)); Serial.print("Data: ");Serial.println(vector2string(trx.data)); uint8_t output_raw[256] = {0}; //uint8_t start_transaction_cmdline(uint8_t* outputdata,uint32_t account,uint32_t key,transaction_struct trx_data); uint32_t length = start_transaction_cmdline(output_raw,account,key,trx); Serial.print("Raw Transaction:");Serial.println(ArraytoString(output_raw,length)); }
std::string toString() const { std::stringstream ss; ss << "Robot name:\t" << name << std::endl; ss << "NF\t" << NF << std::endl; ss << "NL\t" << NL << std::endl; ss << "NJ\t" << NJ << std::endl; ss << "Type\t" << Type << std::endl; ss << "Ant\t" << vector2string(Ant) << std::endl; ss << "Sigma\t" << vector2string(Sigma) << std::endl; ss << "B\t" << vector2string(B) << std::endl; ss << "d\t" << vector2string(d) << std::endl; ss << "R\t" << vector2string(R) << std::endl; ss << "gamma\t" << vector2string(gamma) << std::endl; ss << "Alpha\t" << vector2string(Alpha) << std::endl; ss << "Mu\t" << vector2string(Mu) << std::endl; ss << "Theta\t" << vector2string(Theta) << std::endl; return ss.str(); }