#pragma once

#include "sdkexport.h"
#include "ExtJoint.h"
#include <string>

namespace mpl {

class MPL_API Pos {
public:
    double x, y, z;

public:
    Pos();
    Pos(double x, double y, double z);
};

class MPL_API Orient {
public:
    double w, x, y, z;

public:
    Orient();
    Orient(double w, double x, double y, double z);
};

class MPL_API Pose {
public:
    Pos trans;
    Orient rot;

public:
    Pose();
    Pose(const Pos& pos, const Orient& orient);

    std::string toString() const;
};

class MPL_API AnnotatedPose {
public:
    Pose pose;
    ExtJoint extJoint;
    std::string comment;
};

}
