#include <charconv>
#include <iostream>
#include <boost/tokenizer.hpp>
#include "interpretSeeds.h"
Go to the source code of this file.
|
| void | getLuxury (boost::tokenizer< boost::char_separator< char > >::iterator &token, short &luxLevel) |
| |
| void | getOffset (boost::tokenizer< boost::char_separator< char > >::iterator &token, uint32_t &offset) |
| |
| bool | interpretSeeds (const std::string &buffer, std::string &stream, uint32_t &seed1, uint32_t &seed2, short &luxury, uint32_t &offset) |
| |
| bool | interpretSeeds (const std::string &buffer, std::string &stream, std::vector< uint32_t > &seeds) |
| |
◆ getLuxury()
| void getLuxury |
( |
boost::tokenizer< boost::char_separator< char > >::iterator & |
token, |
|
|
short & |
luxLevel |
|
) |
| |
|
inline |
Definition at line 13 of file interpretSeeds.cxx.
14 if ((*token) ==
"LUXURY") {
17 auto result = std::from_chars(token->data(), token->data() + token->size(), parsedValue);
18 if (
result.ec != std::errc()) {
19 std::cerr <<
"Parsing error in function getLuxury." << std::endl;
21 luxLevel = parsedValue;
◆ getOffset()
| void getOffset |
( |
boost::tokenizer< boost::char_separator< char > >::iterator & |
token, |
|
|
uint32_t & |
offset |
|
) |
| |
|
inline |
Definition at line 28 of file interpretSeeds.cxx.
29 if ((*token) ==
"OFFSET") {
32 auto result = std::from_chars(token->data(), token->data() + token->size(), parsedValue);
33 if (
result.ec != std::errc()) {
34 std::cerr <<
"Parsing error in function getOffset." << std::endl;
◆ interpretSeeds() [1/2]
| bool interpretSeeds |
( |
const std::string & |
buffer, |
|
|
std::string & |
stream, |
|
|
std::vector< uint32_t > & |
seeds |
|
) |
| |
Definition at line 68 of file interpretSeeds.cxx.
72 typedef boost::tokenizer<boost::char_separator<char> > tokenizer;
73 boost::char_separator<char>
sep(
" ");
76 bool status = (nToks == 31 || nToks == 33 || nToks == 771);
81 if (nToks == 32) nToks=30;
82 for (
int i=0;
i<nToks;
i++) {
84 auto [
ptr, ec] = std::from_chars(token->data(), token->data() + token->size(),
value);
85 if (ec != std::errc()) {
89 seeds.push_back(
value);
◆ interpretSeeds() [2/2]
| bool interpretSeeds |
( |
const std::string & |
buffer, |
|
|
std::string & |
stream, |
|
|
uint32_t & |
seed1, |
|
|
uint32_t & |
seed2, |
|
|
short & |
luxury, |
|
|
uint32_t & |
offset |
|
) |
| |
Definition at line 41 of file interpretSeeds.cxx.
45 typedef boost::tokenizer<boost::char_separator<char> > tokenizer;
46 boost::char_separator<char>
sep(
" ");
49 bool status = (nToks == 3 || nToks == 5 || nToks == 7);
57 auto [ptr1, ec1] = std::from_chars(token->data(), token->data() + token->size(),
seed1);
59 auto [ptr2, ec2] = std::from_chars(token->data(), token->data() + token->size(),
seed2);
61 if (ec1 != std::errc() || ec2 != std::errc()) {