Skip to content
Snippets Groups Projects
Commit 4eb2bbb0 authored by Rainer Kartmann's avatar Rainer Kartmann
Browse files

Merge branch 'armem/dev' into armem/robot-state-memory

parents 539e3860 7fe56c22
No related branches found
No related tags found
No related merge requests found
Showing
with 37 additions and 126 deletions
......@@ -115,7 +115,7 @@ namespace armarx::aron::cppserializer::serializer
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine("if (not (" + accessor + " == " + otherInstanceAccessor + "))");
block_if_data->addLine("\t return false;");
block_if_data->addLineAsBlock("return false;");
return ResolveMaybeEqualsBlock(accessor, otherInstanceAccessor, block_if_data, typenavigator);
}
}
......
......@@ -43,5 +43,19 @@ namespace armarx::aron::cppserializer::detail
NDArraySerializerBase(const std::string& cppName, const std::string& aronDataTypename, const std::string& aronTypeTypename, const typename TypenavigatorT::PointerType& t) :
SerializerBase<TypenavigatorT, DerivedT>(cppName, aronDataTypename, aronTypeTypename, t)
{}
virtual CppBlockPtr getResetHardBlock(const std::string& accessor) const override
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullTypenameGenerator() + "();");
return this->ResolveMaybeResetHardBlock(accessor, block_if_data, this->typenavigator);
}
virtual CppBlockPtr getResetSoftBlock(const std::string& accessor) const override
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullCppTypename() + "();");
return this->ResolveMaybeResetSoftBlock(accessor, block_if_data, this->typenavigator);
}
};
}
......@@ -79,7 +79,7 @@ namespace armarx::aron::cppserializer::detail
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine("if (not (" + accessor + " == " + otherInstanceAccessor + "))");
block_if_data->addLine("\t return false;");
block_if_data->addLineAsBlock("return false;");
return this->ResolveMaybeEqualsBlock(accessor, otherInstanceAccessor, block_if_data, this->typenavigator);
}
};
......
......@@ -83,7 +83,7 @@ namespace armarx::aron::cppserializer::serializer
{
CppBlockPtr b = CppBlockPtr(new CppBlock());
b->addLine("if (not (" + accessor + " == " + otherInstanceAccessor + "))");
b->addLine("\t return false;");
b->addLineAsBlock("return false;");
return b;
}
}
......@@ -47,20 +47,6 @@ namespace armarx::aron::cppserializer::serializer
ARMARX_CHECK_NOT_NULL(typenavigator);
}
CppBlockPtr EigenMatrixSerializer::getResetHardBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullTypenameGenerator() + "();");
return ResolveMaybeResetHardBlock(accessor, block_if_data, typenavigator);
}
CppBlockPtr EigenMatrixSerializer::getResetSoftBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullCppTypename() + "();");
return ResolveMaybeResetSoftBlock(accessor, block_if_data, typenavigator);
}
CppBlockPtr EigenMatrixSerializer::getWriteTypeBlock(const std::string& accessor) const
{
CppBlockPtr b = CppBlockPtr(new CppBlock());
......@@ -87,7 +73,7 @@ namespace armarx::aron::cppserializer::serializer
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine("if (not (" + accessor + nextEl() + "isApprox(" + ResolveMaybeAccessor(otherInstanceAccessor, typenavigator) + ")))");
block_if_data->addLine("\t return false;");
block_if_data->addLineAsBlock("return false;");
return ResolveMaybeEqualsBlock(accessor, otherInstanceAccessor, block_if_data, typenavigator);
}
}
......@@ -46,8 +46,6 @@ namespace armarx::aron::cppserializer::serializer
EigenMatrixSerializer(const typenavigator::EigenMatrixNavigatorPtr&);
// virtual implementations
virtual CppBlockPtr getResetHardBlock(const std::string& accessor) const override;
virtual CppBlockPtr getResetSoftBlock(const std::string& accessor) const override;
virtual CppBlockPtr getWriteTypeBlock(const std::string&) const override;
virtual CppBlockPtr getWriteBlock(const std::string&) const override;
virtual CppBlockPtr getReadBlock(const std::string&) const override;
......
......@@ -42,20 +42,6 @@ namespace armarx::aron::cppserializer::serializer
ARMARX_CHECK_NOT_NULL(typenavigator);
}
CppBlockPtr EigenQuaternionSerializer::getResetHardBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullTypenameGenerator() + "();");
return ResolveMaybeResetHardBlock(accessor, block_if_data, typenavigator);
}
CppBlockPtr EigenQuaternionSerializer::getResetSoftBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullCppTypename() + "();");
return ResolveMaybeResetSoftBlock(accessor, block_if_data, typenavigator);
}
CppBlockPtr EigenQuaternionSerializer::getWriteTypeBlock(const std::string& accessor) const
{
CppBlockPtr b = CppBlockPtr(new CppBlock());
......@@ -82,7 +68,7 @@ namespace armarx::aron::cppserializer::serializer
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine("if (not (" + accessor + nextEl() + "isApprox(" + otherInstanceAccessor + ")))");
block_if_data->addLine("\t return false;");
block_if_data->addLineAsBlock("return false;");
return ResolveMaybeEqualsBlock(accessor, otherInstanceAccessor, block_if_data, typenavigator);
}
}
......@@ -40,7 +40,7 @@ namespace armarx::aron::cppserializer::serializer
typedef std::shared_ptr<EigenQuaternionSerializer> EigenQuaternionSerializerPtr;
class EigenQuaternionSerializer :
virtual public detail::NDArraySerializerBase<typenavigator::EigenQuaternionNavigator, EigenQuaternionSerializer>
virtual public detail::NDArraySerializerBase<typenavigator::EigenQuaternionNavigator, EigenQuaternionSerializer>
{
public:
using PointerType = EigenQuaternionSerializerPtr;
......@@ -50,8 +50,6 @@ namespace armarx::aron::cppserializer::serializer
EigenQuaternionSerializer(const typenavigator::EigenQuaternionNavigatorPtr&);
// virtual implementations
virtual CppBlockPtr getResetHardBlock(const std::string& accessor) const override;
virtual CppBlockPtr getResetSoftBlock(const std::string& accessor) const override;
virtual CppBlockPtr getWriteTypeBlock(const std::string&) const override;
virtual CppBlockPtr getWriteBlock(const std::string&) const override;
virtual CppBlockPtr getReadBlock(const std::string&) const override;
......
......@@ -47,13 +47,6 @@ namespace armarx::aron::cppserializer::serializer
}
}
CppBlockPtr IVTCByteImageSerializer::getResetHardBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullTypenameGenerator() + "();");
return ResolveMaybeResetHardBlock(accessor, block_if_data, typenavigator);
}
CppBlockPtr IVTCByteImageSerializer::getResetSoftBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
......@@ -84,16 +77,16 @@ namespace armarx::aron::cppserializer::serializer
block_if_data->addLine(accessor + nextEl() + "Set(" + read_start_result_accessor + ".dims[0], " + read_start_result_accessor + ".dims[1], static_cast<CByteImage::ImageType>(std::stoi(" + read_start_result_accessor + ".type)));");
block_if_data->addLine("r.readEndNDArray(reinterpret_cast<unsigned char*>(" + accessor + nextEl() + "pixels)); // of " + accessor);
return ResolveMaybeReadBlock(accessor, "r.readStartNDArray()", block_if_data, typenavigator);
return ResolveMaybeReadBlock(accessor, "r.readStartNDArray()", block_if_data, typenavigator, true);
}
CppBlockPtr IVTCByteImageSerializer::getEqualsBlock(const std::string& accessor, const std::string& otherInstanceAccessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine("if (not (" + accessor + nextEl() + "IsCompatible(" + toPointerAccessor(otherInstanceAccessor) + ")))");
block_if_data->addLine("\t return false;");
block_if_data->addLineAsBlock("return false;");
block_if_data->addLine("if (not (memcmp(" + accessor + nextEl() + "pixels, " + otherInstanceAccessor + nextEl() + "pixels, " + accessor + nextEl() + "width * " + accessor + nextEl() + "height * " + accessor + nextEl() + "bytesPerPixel) == 0))");
block_if_data->addLine("\t return false;");
block_if_data->addLineAsBlock("return false;");
return ResolveMaybeEqualsBlock(accessor, otherInstanceAccessor, block_if_data, typenavigator);
}
}
......
......@@ -40,7 +40,7 @@ namespace armarx::aron::cppserializer::serializer
typedef std::shared_ptr<IVTCByteImageSerializer> AronIVTCByteImageTypeCppSerializerPtr;
class IVTCByteImageSerializer :
virtual public detail::NDArraySerializerBase<typenavigator::IVTCByteImageNavigator, IVTCByteImageSerializer>
virtual public detail::NDArraySerializerBase<typenavigator::IVTCByteImageNavigator, IVTCByteImageSerializer>
{
public:
using PointerType = AronIVTCByteImageTypeCppSerializerPtr;
......@@ -50,7 +50,6 @@ namespace armarx::aron::cppserializer::serializer
IVTCByteImageSerializer(const typenavigator::IVTCByteImageNavigatorPtr&);
// virtual implementations
virtual CppBlockPtr getResetHardBlock(const std::string& accessor) const override;
virtual CppBlockPtr getResetSoftBlock(const std::string& accessor) const override;
virtual CppBlockPtr getWriteTypeBlock(const std::string&) const override;
virtual CppBlockPtr getWriteBlock(const std::string&) const override;
......
......@@ -35,20 +35,6 @@ namespace armarx::aron::cppserializer::serializer
ARMARX_CHECK_NOT_NULL(typenavigator);
}
CppBlockPtr NDArraySerializer::getResetHardBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullTypenameGenerator() + "();");
return ResolveMaybeResetHardBlock(accessor, block_if_data, typenavigator);
}
CppBlockPtr NDArraySerializer::getResetSoftBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullCppTypename() + "();");
return ResolveMaybeResetSoftBlock(accessor, block_if_data, typenavigator);
}
CppBlockPtr NDArraySerializer::getWriteTypeBlock(const std::string&) const
{
CppBlockPtr b = CppBlockPtr(new CppBlock());
......
......@@ -39,7 +39,7 @@ namespace armarx::aron::cppserializer::serializer
typedef std::shared_ptr<NDArraySerializer> AronNDArrayTypeCppSerializerPtr;
class NDArraySerializer :
virtual public detail::NDArraySerializerBase<typenavigator::NDArrayNavigator, NDArraySerializer>
virtual public detail::NDArraySerializerBase<typenavigator::NDArrayNavigator, NDArraySerializer>
{
public:
using PointerType = AronNDArrayTypeCppSerializerPtr;
......@@ -49,8 +49,6 @@ namespace armarx::aron::cppserializer::serializer
NDArraySerializer(const typenavigator::NDArrayNavigatorPtr&);
// virtual implementations
virtual CppBlockPtr getResetHardBlock(const std::string& accessor) const override;
virtual CppBlockPtr getResetSoftBlock(const std::string& accessor) const override;
virtual CppBlockPtr getWriteTypeBlock(const std::string&) const override;
virtual CppBlockPtr getWriteBlock(const std::string&) const override;
virtual CppBlockPtr getReadBlock(const std::string&) const override;
......
......@@ -63,13 +63,6 @@ namespace armarx::aron::cppserializer::serializer
return {b, accessor_dimensions};
}
CppBlockPtr OpenCVMatSerializer::getResetHardBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullTypenameGenerator() + "();");
return ResolveMaybeResetHardBlock(accessor, block_if_data, typenavigator);
}
CppBlockPtr OpenCVMatSerializer::getResetSoftBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
......@@ -117,14 +110,14 @@ namespace armarx::aron::cppserializer::serializer
b2->addLine("r.readEndNDArray(reinterpret_cast<unsigned char*>(" + accessor + nextEl() + "data)); // of " + accessor);
block_if_data->addBlock(b2);
return ResolveMaybeReadBlock(accessor, "r.readStartNDArray()", block_if_data, typenavigator);
return ResolveMaybeReadBlock(accessor, "r.readStartNDArray()", block_if_data, typenavigator, true);
}
CppBlockPtr OpenCVMatSerializer::getEqualsBlock(const std::string& accessor, const std::string& otherInstanceAccessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine("if (cv::countNonZero(" + accessor + " != " + otherInstanceAccessor + ") != 0)");
block_if_data->addLine("\t return false;");
block_if_data->addLineAsBlock("return false;");
return ResolveMaybeEqualsBlock(accessor, otherInstanceAccessor, block_if_data, typenavigator);
}
}
......
......@@ -50,7 +50,6 @@ namespace armarx::aron::cppserializer::serializer
OpenCVMatSerializer(const typenavigator::OpenCVMatNavigatorPtr& n);
// virtual implementations
virtual CppBlockPtr getResetHardBlock(const std::string& accessor) const override;
virtual CppBlockPtr getResetSoftBlock(const std::string& accessor) const override;
virtual CppBlockPtr getWriteTypeBlock(const std::string&) const override;
virtual CppBlockPtr getWriteBlock(const std::string&) const override;
......
......@@ -35,20 +35,6 @@ namespace armarx::aron::cppserializer::serializer
ARMARX_CHECK_NOT_NULL(typenavigator);
}
CppBlockPtr OrientationSerializer::getResetHardBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullTypenameGenerator() + "();");
return ResolveMaybeResetHardBlock(accessor, block_if_data, typenavigator);
}
CppBlockPtr OrientationSerializer::getResetSoftBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullCppTypename() + "();");
return ResolveMaybeResetSoftBlock(accessor, block_if_data, typenavigator);
}
CppBlockPtr OrientationSerializer::getWriteTypeBlock(const std::string& accessor) const
{
CppBlockPtr b = CppBlockPtr(new CppBlock());
......@@ -75,7 +61,7 @@ namespace armarx::aron::cppserializer::serializer
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine("if (not (" + accessor + nextEl() + "isApprox(" + otherInstanceAccessor + ")))");
block_if_data->addLine("\t return false;");
block_if_data->addLineAsBlock("return false;");
return ResolveMaybeEqualsBlock(accessor, otherInstanceAccessor, block_if_data, typenavigator);
}
}
......
......@@ -39,7 +39,7 @@ namespace armarx::aron::cppserializer::serializer
typedef std::shared_ptr<OrientationSerializer> AronOrientationTypeCppSerializerPtr;
class OrientationSerializer :
virtual public detail::NDArraySerializerBase<typenavigator::OrientationNavigator, OrientationSerializer>
virtual public detail::NDArraySerializerBase<typenavigator::OrientationNavigator, OrientationSerializer>
{
public:
using PointerType = AronOrientationTypeCppSerializerPtr;
......@@ -49,8 +49,6 @@ namespace armarx::aron::cppserializer::serializer
OrientationSerializer(const typenavigator::OrientationNavigatorPtr&);
// virtual implementations
virtual CppBlockPtr getResetHardBlock(const std::string& accessor) const override;
virtual CppBlockPtr getResetSoftBlock(const std::string& accessor) const override;
virtual CppBlockPtr getWriteTypeBlock(const std::string&) const override;
virtual CppBlockPtr getWriteBlock(const std::string&) const override;
virtual CppBlockPtr getReadBlock(const std::string&) const override;
......
......@@ -48,13 +48,6 @@ namespace armarx::aron::cppserializer::serializer
ARMARX_CHECK_NOT_NULL(typenavigator);
}
CppBlockPtr PCLPointCloudSerializer::getResetHardBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullTypenameGenerator() + "();");
return ResolveMaybeResetHardBlock(accessor, block_if_data, typenavigator);
}
CppBlockPtr PCLPointCloudSerializer::getResetSoftBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
......@@ -85,16 +78,17 @@ namespace armarx::aron::cppserializer::serializer
block_if_data->addLine(accessor + " = " + getCoreCppTypename() + "(" + read_start_result_accessor + ".dims[0], " + read_start_result_accessor + ".dims[1]);");
block_if_data->addLine("r.readEndNDArray(reinterpret_cast<unsigned char*>(" + accessor + nextEl() + "points.data())); // of " + accessor);
return ResolveMaybeReadBlock(accessor, "r.readStartNDArray()", block_if_data, typenavigator);
return ResolveMaybeReadBlock(accessor, "r.readStartNDArray()", block_if_data, typenavigator, true);
}
CppBlockPtr PCLPointCloudSerializer::getEqualsBlock(const std::string& accessor, const std::string& otherInstanceAccessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine("if (" + accessor + nextEl() + "width != " + otherInstanceAccessor + nextEl() + "width || " + accessor + nextEl() + "height != " + otherInstanceAccessor + nextEl() + "height)");
block_if_data->addLine("\t return false;");
//b->addLine("if (" + accessor + "->points != " + otherInstanceAccessor + "->points)");
//b->addLine("\t return false;");
block_if_data->addLineAsBlock("return false;");
//block_if_data->addLine("if (" + accessor + nextEl() + "points != " + otherInstanceAccessor + nextEl() + "points)");
//block_if_data->addLine("\t return false;");
return ResolveMaybeEqualsBlock(accessor, otherInstanceAccessor, block_if_data, typenavigator);
}
}
......
......@@ -39,7 +39,7 @@ namespace armarx::aron::cppserializer::serializer
typedef std::shared_ptr<PCLPointCloudSerializer> AronPCLPointCloudTypeCppSerializerPtr;
class PCLPointCloudSerializer :
virtual public detail::NDArraySerializerBase<typenavigator::PCLPointCloudNavigator, PCLPointCloudSerializer>
virtual public detail::NDArraySerializerBase<typenavigator::PCLPointCloudNavigator, PCLPointCloudSerializer>
{
public:
using PointerType = AronPCLPointCloudTypeCppSerializerPtr;
......@@ -49,7 +49,6 @@ namespace armarx::aron::cppserializer::serializer
PCLPointCloudSerializer(const typenavigator::PCLPointCloudNavigatorPtr&);
// virtual implementations
virtual CppBlockPtr getResetHardBlock(const std::string& accessor) const override;
virtual CppBlockPtr getResetSoftBlock(const std::string& accessor) const override;
virtual CppBlockPtr getWriteTypeBlock(const std::string&) const override;
virtual CppBlockPtr getWriteBlock(const std::string&) const override;
......
......@@ -35,20 +35,6 @@ namespace armarx::aron::cppserializer::serializer
ARMARX_CHECK_NOT_NULL(typenavigator);
}
CppBlockPtr PoseSerializer::getResetHardBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullTypenameGenerator() + "();");
return ResolveMaybeResetHardBlock(accessor, block_if_data, typenavigator);
}
CppBlockPtr PoseSerializer::getResetSoftBlock(const std::string& accessor) const
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine(accessor + " = " + this->getFullCppTypename() + "();");
return ResolveMaybeResetSoftBlock(accessor, block_if_data, typenavigator);
}
CppBlockPtr PoseSerializer::getWriteTypeBlock(const std::string& accessor) const
{
CppBlockPtr b = CppBlockPtr(new CppBlock());
......@@ -75,7 +61,7 @@ namespace armarx::aron::cppserializer::serializer
{
CppBlockPtr block_if_data = CppBlockPtr(new CppBlock());
block_if_data->addLine("if (not (" + accessor + nextEl() + "isApprox(" + otherInstanceAccessor + ")))");
block_if_data->addLine("\t return false;");
block_if_data->addLineAsBlock("return false;");
return ResolveMaybeEqualsBlock(accessor, otherInstanceAccessor, block_if_data, typenavigator);
}
}
......
......@@ -39,7 +39,7 @@ namespace armarx::aron::cppserializer::serializer
typedef std::shared_ptr<PoseSerializer> AronPoseTypeCppSerializerPtr;
class PoseSerializer :
virtual public detail::NDArraySerializerBase<typenavigator::PoseNavigator, PoseSerializer>
virtual public detail::NDArraySerializerBase<typenavigator::PoseNavigator, PoseSerializer>
{
public:
using PointerType = AronPoseTypeCppSerializerPtr;
......@@ -49,8 +49,6 @@ namespace armarx::aron::cppserializer::serializer
PoseSerializer(const typenavigator::PoseNavigatorPtr&);
// virtual implementations
virtual CppBlockPtr getResetHardBlock(const std::string& accessor) const override;
virtual CppBlockPtr getResetSoftBlock(const std::string& accessor) const override;
virtual CppBlockPtr getWriteTypeBlock(const std::string&) const override;
virtual CppBlockPtr getWriteBlock(const std::string&) const override;
virtual CppBlockPtr getReadBlock(const std::string&) const override;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment