7#include <SimTKcommon/SmallMatrix.h>
21 std::optional<osc::Vector3> maybeSourcePosition,
22 std::optional<osc::Vector3> maybeDestinationPosition) :
24 m_Name{std::move(name_)},
25 m_MaybeSourcePosition{maybeSourcePosition},
26 m_MaybeDestinationPosition{maybeDestinationPosition}
32 template<std::convertible_to<std::
string_view> StringLike>
33 void setName(StringLike&& newName) { m_Name = std::forward<StringLike>(newName); }
35 bool hasSource()
const {
return m_MaybeSourcePosition.has_value(); }
36 bool hasDestination()
const {
return m_MaybeDestinationPosition.has_value(); }
40 if (m_MaybeSourcePosition && m_MaybeDestinationPosition) {
48 void setDestination(std::optional<osc::Vector3> p) { m_MaybeDestinationPosition = p; }
51 std::optional<osc::Vector3> m_MaybeSourcePosition;
52 std::optional<osc::Vector3> m_MaybeDestinationPosition;
Definition maybe_named_landmark_pair.h:17
MaybeNamedLandmarkPair(std::string name_, std::optional< osc::Vector3 > maybeSourcePosition, std::optional< osc::Vector3 > maybeDestinationPosition)
Definition maybe_named_landmark_pair.h:19
void setName(StringLike &&newName)
Definition maybe_named_landmark_pair.h:33
bool hasDestination() const
Definition maybe_named_landmark_pair.h:36
bool isFullyPaired() const
Definition maybe_named_landmark_pair.h:37
std::optional< opyn::LandmarkPair3D< float > > tryGetPairedLocations() const
Definition maybe_named_landmark_pair.h:38
void setDestination(std::optional< osc::Vector3 > p)
Definition maybe_named_landmark_pair.h:48
bool hasSource() const
Definition maybe_named_landmark_pair.h:35
osc::CStringView name() const
Definition maybe_named_landmark_pair.h:29
osc::CStringView getName() const
Definition maybe_named_landmark_pair.h:30
Definition c_string_view.h:12
Definition component_registry.h:14
constexpr U to(T &&value)
Definition conversion.h:56
Definition landmark_pair_3d.h:14