diff --git a/source/RobotAPI/libraries/aron/codegeneration/codegenerator/codewriter/cpp/generator/ndarray/Matrix.cpp b/source/RobotAPI/libraries/aron/codegeneration/codegenerator/codewriter/cpp/generator/ndarray/Matrix.cpp index 41efdfdf126f743d41874df53acafa2e3cab6ed7..8876c89051059f4a4b52c1379540a04681d7b269 100644 --- a/source/RobotAPI/libraries/aron/codegeneration/codegenerator/codewriter/cpp/generator/ndarray/Matrix.cpp +++ b/source/RobotAPI/libraries/aron/codegeneration/codegenerator/codewriter/cpp/generator/ndarray/Matrix.cpp @@ -119,7 +119,7 @@ namespace armarx::aron::codegenerator::cpp::generator block_if_data->addLine(cppAccessor + nextEl() + "resize(" + dims + ".at(0), " + dims + ".at(1));"); } - block_if_data->addLine("assert(" + cppAccessor + nextEl() + "rows() == " + dims + ".at(0) && " + cppAccessor + nextEl() + "cols() == " + dims + ".at(1) && \"Dimensions of member '"+cppAccessor+"' do not match (simox::alg::to_string(dims, ',')). Got (" + cppAccessor + nextEl() + "rows(), " + cppAccessor + nextEl() + "cols()) instead.\");"); + block_if_data->addLine("ARMARX_CHECK(" + cppAccessor + nextEl() + "rows() == " + dims + ".at(0) and " + cppAccessor + nextEl() + "cols() == " + dims + ".at(1)) << \"Dimensions of member '"+cppAccessor+"' do not match (simox::alg::to_string(dims, ',')). Got (" + cppAccessor + nextEl() + "rows(), " + cppAccessor + nextEl() + "cols()) instead.\";"); block_if_data->addLine("std::memcpy(reinterpret_cast<unsigned char*>(" + cppAccessor + nextEl() + "data()), "+data+".data(), "+data+".size());"); return resolveMaybeReadBlock(block_if_data, cppAccessor, variantAccessor); } diff --git a/source/RobotAPI/libraries/aron/codegeneration/codegenerator/codewriter/cpp/generator/toplevel/ObjectClass.cpp b/source/RobotAPI/libraries/aron/codegeneration/codegenerator/codewriter/cpp/generator/toplevel/ObjectClass.cpp index 6fef11afdd2490524ad8738748ffb0b35b9c99fd..24a3b85a19efe13186acfa8e4d969b56a3f071d2 100644 --- a/source/RobotAPI/libraries/aron/codegeneration/codegenerator/codewriter/cpp/generator/toplevel/ObjectClass.cpp +++ b/source/RobotAPI/libraries/aron/codegeneration/codegenerator/codewriter/cpp/generator/toplevel/ObjectClass.cpp @@ -215,7 +215,7 @@ namespace armarx::aron::codegenerator::cpp::generator const auto child_s = FromAronType(*child); std::string child_accessor = OBJECT_MEMBERS_ACCESSOR + "_" + key + "_iterator"; block_if_data->addLine("auto " + child_accessor + " = " + OBJECT_MEMBERS_ACCESSOR + ".find(\"" + key + "\");"); - block_if_data->addLine("assert(" + child_accessor + " != " + OBJECT_MEMBERS_ACCESSOR + ".end() && \"Missing member '" + key + "' in aron object '" + getFullClassCppTypename() + "'.\");"); + block_if_data->addLine("ARMARX_CHECK(" + child_accessor + " != " + OBJECT_MEMBERS_ACCESSOR + ".end()) << \"Missing member '" + key + "' in aron object '" + getFullClassCppTypename() + "'.\";"); block_if_data->appendBlock(child_s->getReadBlock(key, child_accessor + "->second")); } return block_if_data; @@ -239,4 +239,3 @@ namespace armarx::aron::codegenerator::cpp::generator return block_if_data; } } - diff --git a/source/RobotAPI/libraries/aron/core/codegeneration/cpp/AronGeneratedClass.h b/source/RobotAPI/libraries/aron/core/codegeneration/cpp/AronGeneratedClass.h index a076cdc16d31c312ca9b16b3735a9f0bf2c25474..8372d89c318cf821a9056c6e5f00f58f372492db 100644 --- a/source/RobotAPI/libraries/aron/core/codegeneration/cpp/AronGeneratedClass.h +++ b/source/RobotAPI/libraries/aron/core/codegeneration/cpp/AronGeneratedClass.h @@ -28,9 +28,10 @@ #include <string> #include <vector> #include <map> -#include <cassert> // ArmarX +#include <ArmarXCore/core/exceptions/local/ExpressionException.h> + #include <RobotAPI/libraries/aron/core/Exception.h> #include <RobotAPI/libraries/aron/core/data/variant/All.h>