mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-31 12:55:33 +08:00
X-Plane model loader: performance tweaks.
Summary: Using `QStringRef` and `QLatin1String` to avoid unnecessary allocations and conversions. Depends on D12. Reviewers: rwinklmeier, kbasan Subscribers: jenkins Tags: #swift_pilot_client Differential Revision: https://dev.swift-project.org/D13
This commit is contained in:
@@ -190,27 +190,27 @@ namespace BlackMisc
|
||||
{
|
||||
while (!ts.atEnd())
|
||||
{
|
||||
QString line = ts.readLine();
|
||||
QStringList tokens = line.split(' ', QString::SkipEmptyParts);
|
||||
if (tokens.at(0) != "P" || tokens.size() < 3) { continue; }
|
||||
if (tokens.at(1) == "acf/_ICAO")
|
||||
const QString line = ts.readLine();
|
||||
QVector<QStringRef> tokens = line.splitRef(' ', QString::SkipEmptyParts);
|
||||
if (tokens.at(0) != QLatin1String("P") || tokens.size() < 3) { continue; }
|
||||
if (tokens.at(1) == QLatin1String("acf/_ICAO"))
|
||||
{
|
||||
const CAircraftIcaoCode icao(tokens.at(2));
|
||||
const CAircraftIcaoCode icao(tokens.at(2).toString());
|
||||
model.setAircraftIcaoCode(icao);
|
||||
}
|
||||
else if (tokens.at(1) == "acf/_descrip")
|
||||
else if (tokens.at(1) == QLatin1String("acf/_descrip"))
|
||||
{
|
||||
const QString desc(tokens.mid(2).join(' '));
|
||||
const QString desc(line.mid(tokens.at(2).position()));
|
||||
model.setDescription(desc);
|
||||
}
|
||||
else if (tokens.at(1) == "acf/_name")
|
||||
else if (tokens.at(1) == QLatin1String("acf/_name"))
|
||||
{
|
||||
const QString name(tokens.mid(2).join(' '));
|
||||
const QString name(line.mid(tokens.at(2).position()));
|
||||
model.setName(name);
|
||||
}
|
||||
else if (tokens.at(1) == "acf/_studio")
|
||||
else if (tokens.at(1) == QLatin1String("acf/_studio"))
|
||||
{
|
||||
const CDistributor dist({}, tokens.mid(2).join(' '), {}, {}, CSimulatorInfo::XPLANE);
|
||||
const CDistributor dist({}, line.mid(tokens.at(2).position()), {}, {}, CSimulatorInfo::XPLANE);
|
||||
model.setDistributor(dist);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user