Removed using namespace std

This commit is contained in:
Dmitriy Shishkov 2022-05-24 23:16:45 +03:00
parent 63f20afae0
commit 880a3e9908
No known key found for this signature in database
GPG Key ID: 26720CB2A9608C97
11 changed files with 34 additions and 43 deletions

View File

@ -6,10 +6,8 @@
#include "utils.hpp" #include "utils.hpp"
using namespace std;
constexpr static unsigned ceil_div(unsigned a, unsigned b) { constexpr static unsigned ceil_div(unsigned a, unsigned b) {
if (b == 0) throw runtime_error("Dividion by zero not possible"); if (b == 0) throw std::runtime_error("Dividion by zero not possible");
return a / b + (a % b > 0); return a / b + (a % b > 0);
} }

View File

@ -6,12 +6,12 @@
DataBlocks::DataBlocks(const byte_list& e_data_, CorrectionLevel corr_lvl_, char version_) : e_data{ e_data_ }, corr_lvl{ corr_lvl_ }, version{ version_ } DataBlocks::DataBlocks(const byte_list& e_data_, CorrectionLevel corr_lvl_, char version_) : e_data{ e_data_ }, corr_lvl{ corr_lvl_ }, version{ version_ }
{ {
vector<pair<unsigned, unsigned>>data_block_sizes; std::vector<std::pair<unsigned, unsigned>>data_block_sizes;
divide_to_blocks(data_block_sizes, to_U(e_data.size()), Tables::data_blocks_number.at(corr_lvl).at(version)); divide_to_blocks(data_block_sizes, to_U(e_data.size()), Tables::data_blocks_number.at(corr_lvl).at(version));
unsigned EC_bytes_number = Tables::correction_bytes_num.at(corr_lvl).at(version); unsigned EC_bytes_number = Tables::correction_bytes_num.at(corr_lvl).at(version);
vector<byte_list> EC_blocks(data_block_sizes.size(), byte_list()); std::vector<byte_list> EC_blocks(data_block_sizes.size(), byte_list());
for (unsigned i = 0; i < data_block_sizes.size(); i++) for (unsigned i = 0; i < data_block_sizes.size(); i++)
compose_EC_bytes(EC_blocks[i], e_data.cbegin() + data_block_sizes[i].second, EC_bytes_number, data_block_sizes[i].first); compose_EC_bytes(EC_blocks[i], e_data.cbegin() + data_block_sizes[i].second, EC_bytes_number, data_block_sizes[i].first);
@ -19,7 +19,7 @@ DataBlocks::DataBlocks(const byte_list& e_data_, CorrectionLevel corr_lvl_, char
join_data_and_EC_blocks(data, e_data, data_block_sizes, EC_blocks, EC_bytes_number); join_data_and_EC_blocks(data, e_data, data_block_sizes, EC_blocks, EC_bytes_number);
} }
void DataBlocks::divide_to_blocks(vector<pair<unsigned, unsigned>>& db_sizes, unsigned data_size, unsigned db_number) void DataBlocks::divide_to_blocks(std::vector<std::pair<unsigned, unsigned>>& db_sizes, unsigned data_size, unsigned db_number)
{ {
db_sizes.reserve(db_number); db_sizes.reserve(db_number);
@ -34,7 +34,7 @@ void DataBlocks::divide_to_blocks(vector<pair<unsigned, unsigned>>& db_sizes, un
void DataBlocks::compose_EC_bytes(byte_list& res, const byte_list::const_iterator& src, unsigned corr_bytes_num, unsigned db_size) void DataBlocks::compose_EC_bytes(byte_list& res, const byte_list::const_iterator& src, unsigned corr_bytes_num, unsigned db_size)
{ {
res.reserve(max(db_size, corr_bytes_num)); res.reserve(std::max(db_size, corr_bytes_num));
res.insert(res.end(), src, src + db_size); res.insert(res.end(), src, src + db_size);
res.resize(res.capacity(), 0); res.resize(res.capacity(), 0);
@ -57,11 +57,11 @@ void DataBlocks::compose_EC_bytes(byte_list& res, const byte_list::const_iterato
} }
} }
unsigned get_db_byte_index(unsigned block_index, unsigned byte_index, const vector<pair<unsigned, unsigned>>& db_sizes) { unsigned get_db_byte_index(unsigned block_index, unsigned byte_index, const std::vector<std::pair<unsigned, unsigned>>& db_sizes) {
return db_sizes[block_index].second + byte_index; return db_sizes[block_index].second + byte_index;
} }
void DataBlocks::join_data_and_EC_blocks(byte_list& res, const byte_list& e_data, const vector<pair<unsigned, unsigned>>& db_sizes, const vector<byte_list>& ec_codes, unsigned ec_bytes_number) void DataBlocks::join_data_and_EC_blocks(byte_list& res, const byte_list& e_data, const std::vector<std::pair<unsigned, unsigned>>& db_sizes, const std::vector<byte_list>& ec_codes, unsigned ec_bytes_number)
{ {
res.reserve(e_data.size() + ec_codes.at(0).size() * ec_codes.size()); res.reserve(e_data.size() + ec_codes.at(0).size() * ec_codes.size());

View File

@ -5,8 +5,6 @@
#include "BitArray.hpp" #include "BitArray.hpp"
#include "Method.hpp" #include "Method.hpp"
using namespace std;
class DataBlocks class DataBlocks
{ {
public: public:
@ -14,9 +12,9 @@ public:
byte_list& get_joined_data_and_EC_blocks() { return data; }; byte_list& get_joined_data_and_EC_blocks() { return data; };
static void divide_to_blocks(vector<pair<unsigned, unsigned>>& db_sizes, unsigned data_size, unsigned db_number); static void divide_to_blocks(std::vector<std::pair<unsigned, unsigned>>& db_sizes, unsigned data_size, unsigned db_number);
static void compose_EC_bytes(byte_list& res, const byte_list::const_iterator& src, unsigned corr_bytes_num, unsigned db_size); static void compose_EC_bytes(byte_list& res, const byte_list::const_iterator& src, unsigned corr_bytes_num, unsigned db_size);
static void join_data_and_EC_blocks(byte_list&res, const byte_list& e_data, const vector<pair<unsigned, unsigned>>& db_sizes, const vector<byte_list>& ec_codes, unsigned ec_bytes_number); static void join_data_and_EC_blocks(byte_list&res, const byte_list& e_data, const std::vector<std::pair<unsigned, unsigned>>& db_sizes, const std::vector<byte_list>& ec_codes, unsigned ec_bytes_number);
private: private:
const byte_list& e_data; const byte_list& e_data;

View File

@ -61,7 +61,7 @@ void Encoder::write_metadata(unsigned input_size, unsigned input_bits_amount_siz
out.set(4, input_size, input_bits_amount_size); out.set(4, input_size, input_bits_amount_size);
} }
void Encoder::encode_numeric(const string& input, BitArray& out, unsigned offset) void Encoder::encode_numeric(const std::string& input, BitArray& out, unsigned offset)
{ {
int bin; int bin;
for (unsigned i = 0; i < input.size() / 3; i++) { for (unsigned i = 0; i < input.size() / 3; i++) {
@ -79,7 +79,7 @@ void Encoder::encode_numeric(const string& input, BitArray& out, unsigned offset
} }
} }
void Encoder::encode_alphabetic(const string& input, BitArray& out, unsigned offset) void Encoder::encode_alphabetic(const std::string& input, BitArray& out, unsigned offset)
{ {
for (unsigned i = 0; i < input.size() / 2; i++) { for (unsigned i = 0; i < input.size() / 2; i++) {
int bin = encode_char(input[i * 2]) * 45 + encode_char(input[i * 2 + 1]); int bin = encode_char(input[i * 2]) * 45 + encode_char(input[i * 2 + 1]);

View File

@ -8,8 +8,6 @@
#include "BitArray.hpp" #include "BitArray.hpp"
#include "utils.hpp" #include "utils.hpp"
using namespace std;
class Encoder class Encoder
{ {
public: public:
@ -36,8 +34,8 @@ public:
} }
}; };
static void encode_numeric(const string& input, BitArray& out, unsigned offset); static void encode_numeric(const std::string& input, BitArray& out, unsigned offset);
static void encode_alphabetic(const string& input, BitArray& out, unsigned offset); static void encode_alphabetic(const std::string& input, BitArray& out, unsigned offset);
static void encode_byte(const byte_list& input, BitArray& out, unsigned offset); static void encode_byte(const byte_list& input, BitArray& out, unsigned offset);
static void pad_data(BitArray& arr, unsigned bits_written); static void pad_data(BitArray& arr, unsigned bits_written);
@ -84,7 +82,7 @@ constexpr unsigned Encoder::calculate_encoded_input_size(unsigned input_size, QR
} }
template <typename T, size_t N> template <typename T, size_t N>
constexpr unsigned upper_index(const array<T, N>& arr, T val) { constexpr unsigned upper_index(const std::array<T, N>& arr, T val) {
unsigned count = N, s = 0, e = 0, step = 0; unsigned count = N, s = 0, e = 0, step = 0;
while (count > 0) { while (count > 0) {

View File

@ -2,8 +2,6 @@
#include "utils.hpp" #include "utils.hpp"
using namespace std;
enum class QRCodeMethod { enum class QRCodeMethod {
Dynamic, Dynamic,
Numeric, Numeric,

View File

@ -6,17 +6,15 @@
#include "QRMatrix.hpp" #include "QRMatrix.hpp"
#include "utils.hpp" #include "utils.hpp"
using namespace std;
class QRCode class QRCode
{ {
public: public:
QRCode(const byte_list& input_, CorrectionLevel corr_lvl_ = CorrectionLevel::M, QRCodeMethod method_ = QRCodeMethod::Dynamic, char version_ = -1, unsigned char mask_n = 0); QRCode(const byte_list& input_, CorrectionLevel corr_lvl_ = CorrectionLevel::M, QRCodeMethod method_ = QRCodeMethod::Dynamic, char version_ = -1, unsigned char mask_n = 0);
QRCode(const string& input_, CorrectionLevel corr_lvl_ = CorrectionLevel::M, QRCodeMethod method_ = QRCodeMethod::Dynamic, char version_ = -1, unsigned char mask_n = 0) : QRCode(str_to_bytes(input_), corr_lvl_, method_, version_, mask_n) {}; QRCode(const std::string& input_, CorrectionLevel corr_lvl_ = CorrectionLevel::M, QRCodeMethod method_ = QRCodeMethod::Dynamic, char version_ = -1, unsigned char mask_n = 0) : QRCode(str_to_bytes(input_), corr_lvl_, method_, version_, mask_n) {};
string to_string() const { return matrix.to_string(); }; std::string to_string() const { return matrix.to_string(); };
string to_ascii(char black = '#', char white = ' ', char empty = 'E') const { return matrix.to_ascii(black, white, empty); } std::string to_ascii(char black = '#', char white = ' ', char empty = 'E') const { return matrix.to_ascii(black, white, empty); }
vector<vector<Trit>> to_vector() const { return matrix.to_vector(); }; std::vector<std::vector<Trit>> to_vector() const { return matrix.to_vector(); };
protected: protected:
byte_list input; byte_list input;

View File

@ -112,8 +112,8 @@ namespace Tables {
79, 174, 213, 233, 230, 231, 173, 232, 116, 214, 244, 234, 168, 80, 88, 175 79, 174, 213, 233, 230, 231, 173, 232, 116, 214, 244, 234, 168, 80, 88, 175
}; };
static const array<const vector<unsigned>, 40>alignment_patterns_coordinates{ static const std::array<const std::vector<unsigned>, 40>alignment_patterns_coordinates{
vector<unsigned>(), {18,}, {22,}, {26,}, {30,}, std::vector<unsigned>(), {18,}, {22,}, {26,}, {30,},
{34,}, {6, 22, 38}, {6, 24, 42}, {6, 26, 46}, {6, 28, 50}, {34,}, {6, 22, 38}, {6, 24, 42}, {6, 26, 46}, {6, 28, 50},
{6, 30, 54}, {6, 32, 58}, {6, 34, 62}, {6, 26, 46, 66}, {6, 26, 48, 70}, {6, 30, 54}, {6, 32, 58}, {6, 34, 62}, {6, 26, 46, 66}, {6, 26, 48, 70},
{6, 26, 50, 74}, {6, 30, 54, 78}, {6, 30, 56, 82}, {6, 30, 58, 86}, {6, 34, 62, 90}, {6, 26, 50, 74}, {6, 30, 54, 78}, {6, 30, 56, 82}, {6, 30, 58, 86}, {6, 34, 62, 90},
@ -124,7 +124,7 @@ namespace Tables {
{6, 28, 54, 80, 106, 132, 158}, {6, 32, 58, 84, 110, 136, 162}, {6, 26, 54, 82, 110, 138, 166}, {6, 30, 58, 86, 114, 142, 170} {6, 28, 54, 80, 106, 132, 158}, {6, 32, 58, 84, 110, 136, 162}, {6, 26, 54, 82, 110, 138, 166}, {6, 30, 58, 86, 114, 142, 170}
}; };
static constexpr array<const array<unsigned char, 3>, 34>version_codes{ { static constexpr std::array<const std::array<unsigned char, 3>, 34>version_codes{ {
{ 0b000010, 0b011110, 0b100110 }, { 0b000010, 0b011110, 0b100110 },
{ 0b010001, 0b011100, 0b111000 }, { 0b010001, 0b011100, 0b111000 },
{ 0b110111, 0b011000, 0b000100 }, { 0b110111, 0b011000, 0b000100 },
@ -161,7 +161,7 @@ namespace Tables {
{ 0b111001, 0b000100, 0b010101 } { 0b111001, 0b000100, 0b010101 }
} }; } };
static const map<CorrectionLevel, array<unsigned short, 8>>corr_lvl_and_mask_codes{ static const std::map<CorrectionLevel, std::array<unsigned short, 8>>corr_lvl_and_mask_codes{
{ CorrectionLevel::L, { CorrectionLevel::L,
{ 0b111011111000100, 0b111001011110011, 0b111110110101010, 0b111100010011101, 0b110011000101111, 0b110001100011000, 0b110110001000001, 0b110100101110110 } { 0b111011111000100, 0b111001011110011, 0b111110110101010, 0b111100010011101, 0b110011000101111, 0b110001100011000, 0b110110001000001, 0b110100101110110 }
}, },
@ -176,7 +176,7 @@ namespace Tables {
} }
}; };
static const array<std::function<bool(unsigned, unsigned)>, 8>mask_functions{ { static const std::array<std::function<bool(unsigned, unsigned)>, 8>mask_functions{ {
[](unsigned y, unsigned x) { return (x + y) % 2; }, [](unsigned y, unsigned x) { return (x + y) % 2; },
[](unsigned y, unsigned x) { return y % 2; }, [](unsigned y, unsigned x) { return y % 2; },
[](unsigned y, unsigned x) { return x % 3; }, [](unsigned y, unsigned x) { return x % 3; },

View File

@ -25,9 +25,9 @@ void TritMatrix::set(unsigned y, unsigned x, bool val)
set(y, x, val ? Trit::T : Trit::F); set(y, x, val ? Trit::T : Trit::F);
} }
string TritMatrix::to_ascii(char black, char white, char empty) const std::string TritMatrix::to_ascii(char black, char white, char empty) const
{ {
string res; std::string res;
for (unsigned i = 0; i < c.size(); i++) { for (unsigned i = 0; i < c.size(); i++) {
for (unsigned j = 0; j < c.at(0).size(); j++) for (unsigned j = 0; j < c.at(0).size(); j++)

View File

@ -3,8 +3,6 @@
#include <vector> #include <vector>
#include <string> #include <string>
using namespace std;
enum Trit { enum Trit {
EMPTY = -1, EMPTY = -1,
F, F,
@ -14,8 +12,8 @@ enum Trit {
class TritMatrix class TritMatrix
{ {
public: public:
TritMatrix(unsigned width, unsigned height) : c{ height, vector<Trit>(width, Trit::EMPTY) } {}; TritMatrix(unsigned width, unsigned height) : c{ height, std::vector<Trit>(width, Trit::EMPTY) } {};
TritMatrix(unsigned size) : c{ size, vector<Trit>(size, Trit::EMPTY) } {}; TritMatrix(unsigned size) : c{ size, std::vector<Trit>(size, Trit::EMPTY) } {};
Trit get(unsigned y, unsigned x) const; Trit get(unsigned y, unsigned x) const;
@ -25,11 +23,11 @@ public:
void resize(unsigned width, unsigned height); void resize(unsigned width, unsigned height);
string to_ascii(char black = '#', char white = ' ', char empty = 'E') const; std::string to_ascii(char black = '#', char white = ' ', char empty = 'E') const;
string to_string() const { return to_ascii('1', '0', 'E'); }; std::string to_string() const { return to_ascii('1', '0', 'E'); };
vector<vector<Trit>> to_vector() const { return c; }; std::vector<std::vector<Trit>> to_vector() const { return c; };
protected: protected:
vector<vector<Trit>> c; std::vector<std::vector<Trit>> c;
}; };

View File

@ -5,6 +5,9 @@
#include "../QRCodeLibrary/DataBlocks.hpp" #include "../QRCodeLibrary/DataBlocks.hpp"
using std::vector;
using std::pair;
TEST(DataBlocksTests, ComposesSizesOfDatablocks) { TEST(DataBlocksTests, ComposesSizesOfDatablocks) {
vector<pair<unsigned, unsigned>> db_s; vector<pair<unsigned, unsigned>> db_s;