FACT++  1.0
void ConnectionDrive::HandleTimeoutImp ( const std::list< Timeout_t >::iterator &  ref,
const bs::error_code &  error 
)
inlineprivate

Definition at line 1190 of file drivectrl.cc.

References Error(), and str.

1191  {
1192  if (error==ba::error::basic_errors::operation_aborted)
1193  return;
1194 
1195  if (error)
1196  {
1197  ostringstream str;
1198  str << "SDO timeout of " << URL() << ": " << error.message() << " (" << error << ")";// << endl;
1199  Error(str);
1200 
1201  //PostClose();
1202  return;
1203  }
1204 
1205  if (!is_open())
1206  {
1207  // For example: Here we could schedule a new accept if we
1208  // would not want to allow two connections at the same time.
1209  return;
1210  }
1211 
1212  // Check whether the deadline has passed. We compare the deadline
1213  // against the current time since a new asynchronous operation
1214  // may have moved the deadline before this actor had a chance
1215  // to run.
1216  if (ref->expires_at() > ba::deadline_timer::traits_type::now())
1217  return;
1218 
1219  ostringstream str;
1220  str << hex;
1221  str << "SDO timeout (";
1222  str << uint32_t(ref->node) << ": ";
1223  str << (ref->req==kTxSdo?"RX ":"TX ");
1224  str << ref->idx << "/" << uint32_t(ref->subidx) << " [" << ref->val << "] ";
1225  str << to_simple_string(ref->expires_from_now());
1226  str << ")";
1227 
1228  Warn(str);
1229 
1230  //PostClose();
1231  }
char str[80]
Definition: test_client.c:7
std::string URL() const
Definition: Connection.h:151
int Error(const std::string &str)
Definition: MessageImp.h:49
int Warn(const std::string &str)
Definition: MessageImp.h:48

+ Here is the call graph for this function: