Compare commits

..

No commits in common. "fcbc8dcdc31bc32610e20b69f6acbd341bdf5468" and "d8a4c4eaa73612d1fddfda7fd56a2fd170b6bf50" have entirely different histories.

2 changed files with 20 additions and 20 deletions

View File

@ -134,7 +134,7 @@ int CALCULATE_LIBRARY_API get_maximal_parkingprice(Configuration *cfg, PERMIT_TY
if (pv) { if (pv) {
QVector<ATBPaymentRate> const &paymentRate = pv.value(); QVector<ATBPaymentRate> const &paymentRate = pv.value();
if (paymentRate.size() > 0) { if (paymentRate.size() > 0) {
int const price = paymentRate.last().pra_price; // price is given per hour int const price = paymentRate.at(0).pra_price; // price is given per hour
maxPrice = qRound((maxTime * price) / 60.0f); maxPrice = qRound((maxTime * price) / 60.0f);
} }
} }

View File

@ -37,8 +37,8 @@ extern "C" char* strptime(const char* s,
#define SZEGED (0) #define SZEGED (0)
#define SCHOENAU_KOENIGSEE (0) #define SCHOENAU_KOENIGSEE (0)
#define NEUHAUSER_KORNEUBURG (0) #define NEUHAUSER_KORNEUBURG (0)
#define NEUHAUSER_LINSINGER_MASCHINENBAU (0) #define NEUHAUSER_LINSINGER_MASCHINENBAU (1)
#define NEUHAUSER_NORDISCHES_AUSBILDUNGSZENTRUM (1) #define NEUHAUSER_NORDISCHES_AUSBILDUNGSZENTRUM (0)
#define NEUHAUSER_BILEXA_GALTUER (0) #define NEUHAUSER_BILEXA_GALTUER (0)
#define NEUHAUSER_KIRCHDORF (0) #define NEUHAUSER_KIRCHDORF (0)
@ -569,16 +569,15 @@ int main() {
int Up = 1; int Up = 1;
//compute_next_timestep(&cfg, ) //compute_next_timestep(&cfg, )
QDateTime const start = QDateTime::currentDateTime();
for (int i=0; i<timeSteps.size(); ++i) { for (int i=0; i<timeSteps.size(); ++i) {
int nextTimeStep = compute_next_timestep(&cfg, timeSteps.at(i), Up); int nextTimeStep = compute_next_timestep(&cfg, timeSteps.at(i), Up);
qCritical() << "nextTimeStep" << nextTimeStep; qCritical() << "nextTimeStep" << nextTimeStep;
uint32_t price = Calculator::GetInstance().GetPriceForTimeStep(&cfg, timeSteps.at(i)); // uint32_t price = calculator.GetPriceForTimeStep(&cfg, timeSteps.at(i));
uint32_t duration = Calculator::GetInstance().GetDurationForPrice(&cfg, price); // uint32_t duration = calculator.GetDurationForPrice(&cfg, price);
qCritical() << "nextTimeStep relative to start:" // qCritical() << "nextTimeStep relative to start:"
<< duration << start.addSecs(duration * 60).toString(Qt::ISODate) // << duration << start.addSecs(duration * 60)
<< "(price so far:" << price << ")"; // << "(price so far:" << price << ")";
} }
} }
#endif #endif
@ -646,13 +645,14 @@ int main() {
#endif #endif
#if NEUHAUSER_KORNEUBURG==1 #if NEUHAUSER_KORNEUBURG==1
std::ifstream input("/opt/ptu5/opt/customer_714/etc/psa_tariff/tariff01.json"); std::ifstream input("/tmp/tariff_korneuburg.json");
int pop_max_time; int pop_max_time;
std::stringstream sstr; std::stringstream sstr;
while(input >> sstr.rdbuf()); while(input >> sstr.rdbuf());
std::string json(sstr.str()); std::string json(sstr.str());
Calculator calculator;
Configuration cfg; Configuration cfg;
bool isParsed = cfg.ParseJson(&cfg, json.c_str()); bool isParsed = cfg.ParseJson(&cfg, json.c_str());
@ -674,19 +674,19 @@ int main() {
QDateTime start = s.addSecs(offset * 60); QDateTime start = s.addSecs(offset * 60);
//qCritical() << "start" << start.toString(Qt::ISODate); //qCritical() << "start" << start.toString(Qt::ISODate);
double cost = Calculator::GetInstance().GetCostFromDuration(&cfg, 3, start, end, duration, nextDay, prePaid); double cost = calculator.GetCostFromDuration(&cfg, 3, start, end, duration, nextDay, prePaid);
//Q_ASSERT(cost == duration*2.5); //Q_ASSERT(cost == duration*2.5);
//qCritical() << ""; //qCritical() << "";
qCritical() << "start" << start.toString(Qt::ISODate)
<< "end" << end.toString(Qt::ISODate)
<< "duration" << duration
<< "cost" << cost;
//std::string duration = Calculator::GetInstance().GetDurationFromCost(&cfg, 3, start.toString(Qt::ISODate).toStdString().c_str(), cost);
//Q_ASSERT(cost == duration*2.5);
//qCritical() << "start" << start.toString(Qt::ISODate) //qCritical() << "start" << start.toString(Qt::ISODate)
// << "cost" << cost // << "end" << end.toString(Qt::ISODate)
// << "until" << duration.c_str() << start.secsTo(QDateTime::fromString(duration.c_str(), Qt::ISODate)) / 60; // << "duration" << duration
// << "cost" << cost;
std::string duration = calculator.GetDurationFromCost(&cfg, 3, start.toString(Qt::ISODate).toStdString().c_str(), cost);
//Q_ASSERT(cost == duration*2.5);
qCritical() << "start" << start.toString(Qt::ISODate)
<< "cost" << cost
<< "until" << duration.c_str() << start.secsTo(QDateTime::fromString(duration.c_str(), Qt::ISODate)) / 60;
} }
} }
} }