Skip to content
Snippets Groups Projects
Commit 34c4a2bd authored by Fabian Reister's avatar Fabian Reister
Browse files

adding aron type "Transform" and corresponding conversion function

parent 4fea9c26
No related branches found
No related tags found
No related merge requests found
<!--This class contains the data structure for ObjectPose -->
<?xml version="1.0" encoding="UTF-8" ?>
<AronTypeDefinition>
<CodeIncludes>
<Include include="<Eigen/Core>" />
</CodeIncludes>
<GenerateTypes>
<Object name="armarx::aron::TransformHeader">
<ObjectChild key='parentFrame'>
<string />
</ObjectChild>
<ObjectChild key='frame'>
<string />
</ObjectChild>
<ObjectChild key='agent'>
<string />
</ObjectChild>
<ObjectChild key='timestamp'>
<Time />
</ObjectChild>
</Object>
<Object name="armarx::aron::Transform">
<ObjectChild key='header'>
<armarx::aron::TransformHeader />
</ObjectChild>
<ObjectChild key='transform'>
<Pose />
</ObjectChild>
</Object>
</GenerateTypes>
</AronTypeDefinition>
#include "aron_conversions.h"
// STL
#include <stdexcept>
#include <string>
// Ice
#include <IceUtil/Time.h>
// RobotAPI
#include <RobotAPI/components/armem/client/TransformClient/TransformInterfaces.h>
#include <RobotAPI/components/armem/client/TransformClient/aron/Transform.aron.generated.h>
namespace armarx
{
TransformHeader fromAron(const aron::TransformHeader& aronHeader)
{
TransformHeader header;
header.parentFrame = aronHeader.parentFrame;
header.frame = aronHeader.frame;
header.agent = aronHeader.agent;
header.timestamp = aronHeader.timestamp;
return header;
}
void fromAron(const aron::Transform& aronTransform, Transform& transform)
{
transform.header = fromAron(aronTransform.header);
transform.transform = aronTransform.transform;
}
aron::TransformHeader toAron(const TransformHeader& header)
{
aron::TransformHeader aronHeader;
aronHeader.parentFrame = header.parentFrame;
aronHeader.frame = header.frame;
aronHeader.agent = header.agent;
aronHeader.timestamp = header.timestamp;
return aronHeader;
}
void toAron(const Transform& transform, aron::Transform& aronTransform)
{
aronTransform.header = toAron(transform.header);
aronTransform.transform = transform.transform.matrix();
}
} // namespace armarx
#pragma once
namespace armarx
{
struct Transform;
namespace aron
{
struct Transform;
}
void fromAron(const aron::Transform& aronTransform, Transform& transform);
void toAron(const Transform& transform, aron::Transform& aronTransform);
} // namespace armarx
\ No newline at end of file
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