From a808a001a945c9ce6bec8ede8c178b38f3fc4583 Mon Sep 17 00:00:00 2001 From: Mario Fink Date: Tue, 9 Feb 2021 19:31:27 +0100 Subject: [PATCH] imc::objects: preliminary complete --- lib/imc_datatype.hpp | 1 + lib/imc_objects.hpp | 275 ++++++++++++++++++++++++++++++++++++++----- lib/imc_raw.hpp | 3 - 3 files changed, 246 insertions(+), 33 deletions(-) diff --git a/lib/imc_datatype.hpp b/lib/imc_datatype.hpp index 1a041fd..5e32608 100644 --- a/lib/imc_datatype.hpp +++ b/lib/imc_datatype.hpp @@ -16,6 +16,7 @@ namespace imc typedef signed long int imc_Slongint; typedef float imc_float; typedef double imc_double; + // TODO remaining types are not yet supported class datatype { diff --git a/lib/imc_objects.hpp b/lib/imc_objects.hpp index 2fca2e9..325987e 100644 --- a/lib/imc_objects.hpp +++ b/lib/imc_objects.hpp @@ -8,7 +8,7 @@ namespace imc { // start of group of keys (corresponds to key CK) - struct group_keys + struct keygroup { int version_; int length_; @@ -25,6 +25,241 @@ namespace imc } }; + // group definition (corresponds to key CB) + struct group + { + unsigned long int group_index_; + std::string name_; + std::string comment_; + + // get info string + std::string get_info(int width = 20) + { + std::stringstream ss; + ss< rawdata_; + unsigned long int begin_buffer_, end_buffer_; + + // get info string + std::string get_info(int width = 20) + { + std::stringstream ss; + ss<