git-svn-id: svn://db.shs.com.ru/pip@270 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5

This commit is contained in:
2016-09-26 09:23:27 +00:00
parent 7264ef12f6
commit 54895bfd78
3 changed files with 20 additions and 21 deletions

View File

@@ -169,8 +169,7 @@ bool PIVariant::toBool() const {
case PIVariant::pivComplexld: {complexld r; ba >> r; return r.real() != 0;}
case PIVariant::pivString: {PIString r; ba >> r; return r.toBool();}
case PIVariant::pivStringList: {PIStringList r; ba >> r; if (r.isEmpty()) return false; return r.front().toBool();}
case PIVariant::pivCustom:
return getAsValue<bool>(*this);
case PIVariant::pivCustom: return getAsValue<bool>(*this);
default: break;
}
return false;
@@ -203,8 +202,7 @@ int PIVariant::toInt() const {
case PIVariant::pivComplexld: {complexld r; ba >> r; return r.real();}
case PIVariant::pivString: {PIString r; ba >> r; return r.toInt();}
case PIVariant::pivStringList: {PIStringList r; ba >> r; if (r.isEmpty()) return 0; return r.front().toInt();}
case PIVariant::pivCustom:
return getAsValue<int>(*this);
case PIVariant::pivCustom: return getAsValue<int>(*this);
default: break;
}
return 0;
@@ -236,8 +234,8 @@ llong PIVariant::toLLong() const {
case PIVariant::pivComplexld: {complexld r; ba >> r; return r.real();}
case PIVariant::pivString: {PIString r; ba >> r; return r.toLLong();}
case PIVariant::pivStringList: {PIStringList r; ba >> r; if (r.isEmpty()) return 0L; return r.front().toLLong();}
case PIVariant::pivCustom:
return getAsValue<llong>(*this);
case PIVariant::pivCustom: return getAsValue<llong>(*this);
default: break;
}
return 0L;
}
@@ -268,8 +266,8 @@ float PIVariant::toFloat() const {
case PIVariant::pivComplexld: {complexld r; ba >> r; return r.real();}
case PIVariant::pivString: {PIString r; ba >> r; return r.toFloat();}
case PIVariant::pivStringList: {PIStringList r; ba >> r; if (r.isEmpty()) return 0.f; return r.front().toFloat();}
case PIVariant::pivCustom:
return getAsValue<float>(*this);
case PIVariant::pivCustom: return getAsValue<float>(*this);
default: break;
}
return 0.f;
}
@@ -300,8 +298,8 @@ double PIVariant::toDouble() const {
case PIVariant::pivComplexld: {complexld r; ba >> r; return r.real();}
case PIVariant::pivString: {PIString r; ba >> r; return r.toDouble();}
case PIVariant::pivStringList: {PIStringList r; ba >> r; if (r.isEmpty()) return 0.; return r.front().toDouble();}
case PIVariant::pivCustom:
return getAsValue<double>(*this);
case PIVariant::pivCustom: return getAsValue<double>(*this);
default: break;
}
return 0.;
}
@@ -332,8 +330,8 @@ ldouble PIVariant::toLDouble() const {
case PIVariant::pivComplexld: {complexld r; ba >> r; return r.real();}
case PIVariant::pivString: {PIString r; ba >> r; return r.toLDouble();}
case PIVariant::pivStringList: {PIStringList r; ba >> r; if (r.isEmpty()) return 0.; return r.front().toLDouble();}
case PIVariant::pivCustom:
return getAsValue<float>(*this);
case PIVariant::pivCustom: return getAsValue<float>(*this);
default: break;
}
return 0.;
}
@@ -364,8 +362,8 @@ complexd PIVariant::toComplexd() const {
case PIVariant::pivComplexld: {complexld r; ba >> r; return r.real();}
case PIVariant::pivString: {PIString r; ba >> r; return r.toDouble();}
case PIVariant::pivStringList: {PIStringList r; ba >> r; if (r.isEmpty()) return complexd_0; return r.front().toDouble();}
case PIVariant::pivCustom:
return getAsValue<complexd>(*this);
case PIVariant::pivCustom: return getAsValue<complexd>(*this);
default: break;
}
return complexd_0;
}
@@ -396,8 +394,8 @@ complexld PIVariant::toComplexld() const {
case PIVariant::pivComplexld: {complexld r; ba >> r; return r.real();}
case PIVariant::pivString: {PIString r; ba >> r; return r.toLDouble();}
case PIVariant::pivStringList: {PIStringList r; ba >> r; if (r.isEmpty()) return complexld_0; return r.front().toLDouble();}
case PIVariant::pivCustom:
return getAsValue<complexld>(*this);
case PIVariant::pivCustom: return getAsValue<complexld>(*this);
default: break;
}
return complexld_0;
}
@@ -484,8 +482,8 @@ PIString PIVariant::toString() const {
case PIVariant::pivComplexld: {complexld r; ba >> r; return PIString::fromNumber(r.real());}
case PIVariant::pivString: {PIString r; ba >> r; return r;}
case PIVariant::pivStringList: {PIStringList r; ba >> r; if (r.isEmpty()) return PIString(); return r.front();}
case PIVariant::pivCustom:
return getAsValue<PIString>(*this);
case PIVariant::pivCustom: return getAsValue<PIString>(*this);
default: break;
}
return PIString();
}

View File

@@ -134,7 +134,7 @@ PIString PIPeer::PeerInfo::fastestAddress() const {
REGISTER_DEVICE(PIPeer)
PIPeer::PIPeer(const PIString & n): PIIODevice(), diag_d(false), diag_s(false), eth_tcp_srv(PIEthernet::TCP_Server), eth_tcp_cli(PIEthernet::TCP_Client) {
PIPeer::PIPeer(const PIString & n): PIIODevice(), eth_tcp_srv(PIEthernet::TCP_Server), eth_tcp_cli(PIEthernet::TCP_Client), diag_s(false), diag_d(false) {
destroyed = false;
PIMutexLocker mbl(mc_mutex);
PIMutexLocker ethl(eth_mutex);

View File

@@ -64,8 +64,8 @@ void PIProcess::startProc(bool detached) {
//cout << "run" << endl;
PIString str;
/// arguments convertion
int as = 0;
#ifdef WINDOWS
int as = 0;
//args.pop_front();
piForeachC (PIString & i, args)
as += i.lengthAscii() + 3;
@@ -135,7 +135,8 @@ void PIProcess::startProc(bool detached) {
if (g_out) tf_out = freopen(f_out.path().data(), "w", stdout);
if (g_err) tf_err = freopen(f_err.path().data(), "w", stderr);
#ifndef WINDOWS
if (!wd.isEmpty()) as = chdir(wd.data());
int as2;
if (!wd.isEmpty()) as2 = chdir(wd.data());
#endif
#ifdef WINDOWS
GetStartupInfoA(&si);