From 8eda51c6bcb1cc0b0421ce6dbf761168c1e3d0d4 Mon Sep 17 00:00:00 2001 From: Aaron Fiore Date: Sat, 20 Jul 2024 21:38:38 -0700 Subject: [PATCH] root: macro: web: crypto: refactor class name Intended to be used only for RNG. --- .../src/root/macro/web/internal/crypto.C | 42 +++++++++---------- container/src/root/macro/web/server.C | 2 +- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/container/src/root/macro/web/internal/crypto.C b/container/src/root/macro/web/internal/crypto.C index e0a85cd..630e9d7 100644 --- a/container/src/root/macro/web/internal/crypto.C +++ b/container/src/root/macro/web/internal/crypto.C @@ -56,19 +56,19 @@ namespace web namespace internal { //! \ingroup cpp_macro_impl -//! \brief Cryptographical macro class +//! \brief RNG analysis macro //! \since docker-finance 1.0.0 -class Crypto final +class Random final { public: - Crypto() = default; - ~Crypto() = default; + Random() = default; + ~Random() = default; - Crypto(const Crypto&) = default; - Crypto& operator=(const Crypto&) = default; + Random(const Random&) = default; + Random& operator=(const Random&) = default; - Crypto(Crypto&&) = default; - Crypto& operator=(Crypto&&) = default; + Random(Random&&) = default; + Random& operator=(Random&&) = default; private: //! \since docker-finance 1.0.0 @@ -115,7 +115,7 @@ class Crypto final //! \brief Make graph of values from given canvas data //! \param canvas Previously instantiated canvas //! \param data Populated canvas data for graph - static void graph_value(::TCanvas* canvas, const Crypto::CanvasData& data) + static void graph_value(::TCanvas* canvas, const Random::CanvasData& data) { // Graph: w/ lines auto* gr1 = new ::TGraph(data.n, data.x.data(), data.y.data()); @@ -148,7 +148,7 @@ class Crypto final //! \brief Make graph of value occurrences from given canvas data //! \param canvas Previously instantiated canvas //! \param data Populated canvas data for graph - static void graph_frequency(::TCanvas* canvas, const Crypto::CanvasData& data) + static void graph_frequency(::TCanvas* canvas, const Random::CanvasData& data) { // x = [0..0xffffffff] // y = frequency of number (max = nbins) @@ -186,7 +186,7 @@ class Crypto final //! \brief Make 2D graph of prime numbers within given canvas data //! \param canvas Previously instantiated canvas //! \param data Populated canvas data for graph - static void graph_prime(::TCanvas* canvas, const Crypto::CanvasData& data) + static void graph_prime(::TCanvas* canvas, const Random::CanvasData& data) { canvas->cd(4); auto* gr1 = new ::TGraph2D(); @@ -235,7 +235,7 @@ class Crypto final template static void histo_gauss( ::TCanvas* canvas, - const Crypto::CanvasData& data, + const Random::CanvasData& data, const t_generator& generator) { canvas->cd(1); @@ -250,7 +250,7 @@ class Crypto final 5.0); // TODO(unassigned): looks the best, would prefer more mathematical soundness // Shove a CSPRNG into a Gaussian distribution - const Crypto::Generator gen(generator); + const Random::Generator gen(generator); std::normal_distribution dist{0.0, 1.0}; for (size_t i{}; i < data.n; ++i) @@ -261,7 +261,7 @@ class Crypto final h1->Draw(); } - static void fun_facts(::TCanvas* canvas, const Crypto::CanvasData& data) + static void fun_facts(::TCanvas* canvas, const Random::CanvasData& data) { // TODO(unassigned): percent of prime / composite @@ -305,7 +305,7 @@ class Crypto final // TODO(unassigned): put in a `Random` subdir to separate from other functions static void rng_sample(const std::string& size) { - Crypto::CanvasData data{}; + Random::CanvasData data{}; // TODO(unassigned): sanitize because: // 1. only unsigned is desired @@ -315,7 +315,7 @@ class Crypto final data.y.resize(data.n); auto random = - ([](Crypto::CanvasData /* make copy */ data, const auto& generator) { + ([](Random::CanvasData /* make copy */ data, const auto& generator) { auto* c1 = new ::TCanvas( std::string{"c1_" + data.title}.c_str(), "RNG analysis"); @@ -330,17 +330,17 @@ class Crypto final data.y.at(i) = generator(); } - Crypto::graph_value(c1, data); - Crypto::graph_frequency(c1, data); - Crypto::graph_prime(c1, data); + Random::graph_value(c1, data); + Random::graph_frequency(c1, data); + Random::graph_prime(c1, data); auto* c2 = new ::TCanvas( std::string{"c2_" + data.title}.c_str(), "RNG analysis"); // TODO(unassigned): shift plots to the right so there's more space on the left and less on the right c2->Divide(0, 2); - Crypto::histo_gauss(c2, data, generator); - Crypto::fun_facts(c2, data); + Random::histo_gauss(c2, data, generator); + Random::fun_facts(c2, data); }); namespace utility = ::docker_finance::macro::internal::utility; diff --git a/container/src/root/macro/web/server.C b/container/src/root/macro/web/server.C index c65b816..66ba643 100644 --- a/container/src/root/macro/web/server.C +++ b/container/src/root/macro/web/server.C @@ -65,7 +65,7 @@ class Server final internal::Command::load({"web/internal/crypto.C"}); internal::g_HTTPServer->RegisterCommand( "/rng_sample", - "::docker_finance::macro::web::internal::Crypto::rng_sample(\"%arg1%" + "::docker_finance::macro::web::internal::Random::rng_sample(\"%arg1%" "\")"); internal::Command::load({"web/internal/meta.C"});