This PR aims at migrating the reg_interface tools to the templated RPC framework. The following action have been taken:
Minimally fix the Makefile up to the point where rwreg and reg_interface can seamlessly be built,
Import the xHAL Python tools (i.e. gem_reg.py),
Migrate the rwreg library for x86_64 to templated RPC calls,
A new RPC module has been created for that purpose. Called expert_tools, it is devised to contain all low-level RPC methods to be used in debugging/expert tools. This design is not fixed yet, but has the advantage to clearly separate low-level, potentially dangerous, RPC methods.
Re-implement the update_lmdb function in the templated RPC framework.
This PR is not the definitive answer to where those tools should live nor how they should be developed. It just provides a temporary solution for gem_reg.py to be used with the templated RPC. In the future, a probably better implementation will use pybind11.
Types of changes
[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[x] Breaking change (fix or feature that would cause existing functionality to change)
Motivation and Context
Low-level debugging tools are mandatory. The need will be even increased while migrating to the templated RPC framework.
How Has This Been Tested?
Launched a gem_reg.py session and used the different usual commands without any error: kw, write and update_lmdb.
Checklist:
[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
Description
This PR aims at migrating the
reg_interface
tools to the templated RPC framework. The following action have been taken:Makefile
up to the point whererwreg
andreg_interface
can seamlessly be built,gem_reg.py
),rwreg
library forx86_64
to templated RPC calls,expert_tools
, it is devised to contain all low-level RPC methods to be used in debugging/expert tools. This design is not fixed yet, but has the advantage to clearly separate low-level, potentially dangerous, RPC methods.update_lmdb
function in the templated RPC framework.This PR is not the definitive answer to where those tools should live nor how they should be developed. It just provides a temporary solution for
gem_reg.py
to be used with the templated RPC. In the future, a probably better implementation will usepybind11
.Types of changes
Motivation and Context
Low-level debugging tools are mandatory. The need will be even increased while migrating to the templated RPC framework.
How Has This Been Tested?
Launched a
gem_reg.py
session and used the different usual commands without any error:kw
,write
andupdate_lmdb
.Checklist: