From 02ed6746a16559166b6931f2a45f756a1d75a40d Mon Sep 17 00:00:00 2001 From: Zeno Rogue Date: Fri, 5 Dec 2025 09:55:27 +0100 Subject: [PATCH] rogueviz:: dhrg;: legacy invocations --- rogueviz/dhrg/dhrg.cpp | 4 ++-- rogueviz/dhrg/legacy.cpp | 45 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+), 2 deletions(-) create mode 100644 rogueviz/dhrg/legacy.cpp diff --git a/rogueviz/dhrg/dhrg.cpp b/rogueviz/dhrg/dhrg.cpp index 9a32c91e..e1fd2e16 100644 --- a/rogueviz/dhrg/dhrg.cpp +++ b/rogueviz/dhrg/dhrg.cpp @@ -2,8 +2,6 @@ #include "dhrg.h" -namespace rogueviz { extern string fname; } - #include "regular.cpp" #include "gridmapping.cpp" #include "mycell.cpp" @@ -175,3 +173,5 @@ auto hook = #endif } + +#include "legacy.cpp" diff --git a/rogueviz/dhrg/legacy.cpp b/rogueviz/dhrg/legacy.cpp new file mode 100644 index 00000000..411b1a0e --- /dev/null +++ b/rogueviz/dhrg/legacy.cpp @@ -0,0 +1,45 @@ +#include "dhrg.h" + +namespace dhrg { + +string legacy_dhrg_name; + +int dhrg_legacy_args() { + using namespace arg; + + if(argis("-graph") || argis("-dhrg")) { + PHASE(3); shift(); + legacy_dhrg_name = args(); + rogueviz::embeddings::read_edgelist(legacy_dhrg_name + "-links.txt"); + rogueviz::embeddings::read_polar(legacy_dhrg_name + "-coordinates.txt"); + dhrg_init(); graph_from_rv(); + next_timestamp++; + ts_rogueviz = next_timestamp; + ts_vertices = next_timestamp; + } + + else if(argis("-esave")) { + fhstream f(legacy_dhrg_name + "-dhrg.txt", "wt"); + if(!f.f) { file_error(legacy_dhrg_name); return 0; } + rogueviz::embeddings::current->save(f); + } + + else if(argis("-eload")) { + PHASE(3); shift(); + legacy_dhrg_name = args(); + rogueviz::embeddings::read_edgelist(legacy_dhrg_name + "-links.txt"); + dhrg_init(); load_embedded(legacy_dhrg_name + "-dhrg.txt"); + next_timestamp++; + ts_rogueviz = next_timestamp; + ts_vertices = next_timestamp; + } + + else return 1; + + return 0; + } + +auto legacy_hook = + addHook(hooks_args, 50, dhrg_legacy_args); + +}