diff --git a/source/RobotAPI/libraries/armem/core/Commit.cpp b/source/RobotAPI/libraries/armem/core/Commit.cpp index fed7ed660b450bb0865a018f9c8d7119dd96a7b4..fed012450b059f50159c659217694c160e8f636a 100644 --- a/source/RobotAPI/libraries/armem/core/Commit.cpp +++ b/source/RobotAPI/libraries/armem/core/Commit.cpp @@ -1,9 +1,11 @@ #include "Commit.h" -#include <SimoxUtility/algorithm/apply.hpp> +#include <RobotAPI/libraries/aron/core/navigator/data/container/Dict.h> #include <ArmarXCore/core/exceptions/local/ExpressionException.h> +#include <SimoxUtility/algorithm/apply.hpp> + namespace armarx::armem { diff --git a/source/RobotAPI/libraries/armem/core/Commit.h b/source/RobotAPI/libraries/armem/core/Commit.h index fc69a4b53dcaecc52d703aa42c00405f4162825f..685886a7f27b5d43b78cd0195693e32c3a58fffa 100644 --- a/source/RobotAPI/libraries/armem/core/Commit.h +++ b/source/RobotAPI/libraries/armem/core/Commit.h @@ -1,11 +1,12 @@ #pragma once -#include <vector> +#include <RobotAPI/libraries/armem/core/Time.h> +#include <RobotAPI/libraries/armem/core/MemoryID.h> -#include <RobotAPI/libraries/aron/core/navigator/data/container/Dict.h> +#include <RobotAPI/libraries/aron/core/navigator/data/forward_declarations.h> -#include "../core/MemoryID.h" -#include "../core/Time.h" +#include <memory> +#include <vector> namespace armarx::armem diff --git a/source/RobotAPI/libraries/armem/core/base/EntitySnapshotBase.cpp b/source/RobotAPI/libraries/armem/core/base/EntitySnapshotBase.cpp index 5f7899f50d954f16b2d9c0a9569519529895eb20..72b4c48877c78dce70737fa58c58cd1b82b2d2e5 100644 --- a/source/RobotAPI/libraries/armem/core/base/EntitySnapshotBase.cpp +++ b/source/RobotAPI/libraries/armem/core/base/EntitySnapshotBase.cpp @@ -1 +1,11 @@ #include "EntitySnapshotBase.h" + +#include <ArmarXCore/core/exceptions/local/ExpressionException.h> + + +void armarx::armem::base::detail::throwIfNotEqual(const Time& ownTime, const Time& updateTime) +{ + ARMARX_CHECK_EQUAL(ownTime, updateTime) + << "Cannot update a snapshot to an update with another timestamp. \n" + << "Note: A snapshot's timestamp must not be changed after construction."; +} diff --git a/source/RobotAPI/libraries/armem/core/base/EntitySnapshotBase.h b/source/RobotAPI/libraries/armem/core/base/EntitySnapshotBase.h index 1322802a36c93f4685be4b19ff24cc6bcaacb4c5..00f996ca4c9b3d7002f3e252c2de4bce9f0440fd 100644 --- a/source/RobotAPI/libraries/armem/core/base/EntitySnapshotBase.h +++ b/source/RobotAPI/libraries/armem/core/base/EntitySnapshotBase.h @@ -11,6 +11,10 @@ #include "detail/iteration_mixins.h" +namespace armarx::armem::base::detail +{ + void throwIfNotEqual(const Time& ownTime, const Time& updateTime); +} namespace armarx::armem::base { /** diff --git a/source/RobotAPI/libraries/armem/core/diskmemory/EntityInstance.cpp b/source/RobotAPI/libraries/armem/core/diskmemory/EntityInstance.cpp index f464fed5a7c98ae1e136203fc2ff3c07f84fb0a7..5fbfa91d5a749f37d40eda2698787908ff61e8f3 100644 --- a/source/RobotAPI/libraries/armem/core/diskmemory/EntityInstance.cpp +++ b/source/RobotAPI/libraries/armem/core/diskmemory/EntityInstance.cpp @@ -1,13 +1,17 @@ #include "EntityInstance.h" -#include <iostream> -#include <fstream> - #include "../../core/error.h" -#include "ArmarXCore/core/exceptions/LocalException.h" +#include "../workingmemory/json_conversions.h" +#include "../workingmemory/entityInstance_conversions.h" #include <ArmarXCore/core/exceptions/local/ExpressionException.h> +#include <SimoxUtility/json/json.hpp> + +#include <iostream> +#include <fstream> + + namespace armarx::armem::d_ltm { diff --git a/source/RobotAPI/libraries/armem/core/diskmemory/EntityInstance.h b/source/RobotAPI/libraries/armem/core/diskmemory/EntityInstance.h index cdc841a569e75517dc6f96b223b7031e84c8551d..54d3c4cb8d1be247887d8463eb1d37f00c7bd6c3 100644 --- a/source/RobotAPI/libraries/armem/core/diskmemory/EntityInstance.h +++ b/source/RobotAPI/libraries/armem/core/diskmemory/EntityInstance.h @@ -5,8 +5,7 @@ #include "../base/EntityInstanceBase.h" #include "../workingmemory/EntityInstance.h" -#include "../workingmemory/entityInstance_conversions.h" -#include "../workingmemory/json_conversions.h" +#include <RobotAPI/libraries/aron/core/navigator/type/forward_declarations.h> namespace armarx::armem::d_ltm diff --git a/source/RobotAPI/libraries/armem/core/diskmemory/EntitySnapshot.h b/source/RobotAPI/libraries/armem/core/diskmemory/EntitySnapshot.h index 545a8c0d64641c65e7faf7aa26dea77ee9865e0c..be36a8a7756f45617e55a2b56777b8d8abea6f56 100644 --- a/source/RobotAPI/libraries/armem/core/diskmemory/EntitySnapshot.h +++ b/source/RobotAPI/libraries/armem/core/diskmemory/EntitySnapshot.h @@ -7,6 +7,8 @@ #include "EntityInstance.h" +#include <RobotAPI/libraries/aron/core/navigator/type/forward_declarations.h> + namespace armarx::armem::d_ltm { diff --git a/source/RobotAPI/libraries/armem/core/ice_conversions.cpp b/source/RobotAPI/libraries/armem/core/ice_conversions.cpp index d79acf1da2b86f94414205131173797e0354bc24..88ed8fd29ca61af76cf035c3a0be77a10df444a5 100644 --- a/source/RobotAPI/libraries/armem/core/ice_conversions.cpp +++ b/source/RobotAPI/libraries/armem/core/ice_conversions.cpp @@ -1,5 +1,7 @@ #include "ice_conversions.h" +#include <RobotAPI/libraries/aron/core/navigator/data/container/Dict.h> + namespace armarx { diff --git a/source/RobotAPI/libraries/armem/core/longtermmemory/CoreSegment.cpp b/source/RobotAPI/libraries/armem/core/longtermmemory/CoreSegment.cpp index 6adea4d681cb681d91017f6ac923f2ad215f1e47..1fc021d65fe460b4b91331196446ef8661337aa6 100644 --- a/source/RobotAPI/libraries/armem/core/longtermmemory/CoreSegment.cpp +++ b/source/RobotAPI/libraries/armem/core/longtermmemory/CoreSegment.cpp @@ -1,8 +1,10 @@ #include "CoreSegment.h" +#include "error.h" + #include <ArmarXCore/core/exceptions/local/ExpressionException.h> -#include "error.h" +#include <SimoxUtility/json/json.hpp> namespace armarx::armem::ltm @@ -33,7 +35,7 @@ namespace armarx::armem::ltm nlohmann::json json = nlohmann::json::parse(bsoncxx::to_json(doc)); ARMARX_INFO << "CoreSegment: Found foreign key: " << json.at("foreign_key"); - MemoryID i((std::string) json.at("foreign_key")); + MemoryID i = MemoryID::fromString(json.at("foreign_key").get<std::string>()); if (i.coreSegmentName != id().coreSegmentName) { throw error::InvalidMemoryID(i, "A MemoryID in mongodb was invalid. Found the wrong coreSegment name. Expected " + id().coreSegmentName); diff --git a/source/RobotAPI/libraries/armem/core/longtermmemory/CoreSegment.h b/source/RobotAPI/libraries/armem/core/longtermmemory/CoreSegment.h index 4c0a2c820d9fd9e25011ec335f6f80cf6f4219ea..adb3257919abbd9743bc06a0a8b3f7ddacb09144 100644 --- a/source/RobotAPI/libraries/armem/core/longtermmemory/CoreSegment.h +++ b/source/RobotAPI/libraries/armem/core/longtermmemory/CoreSegment.h @@ -1,9 +1,9 @@ #pragma once -#include "../base/CoreSegmentBase.h" - #include "ProviderSegment.h" +#include "mongodb/MongoDBConnectionManager.h" +#include "../base/CoreSegmentBase.h" #include "../workingmemory/CoreSegment.h" diff --git a/source/RobotAPI/libraries/armem/core/longtermmemory/Entity.cpp b/source/RobotAPI/libraries/armem/core/longtermmemory/Entity.cpp index 99a8808c92787b5f976696a219fcc18c50341b34..4e92467af23d5a9a96c70b84fb6bdf4394ca5030 100644 --- a/source/RobotAPI/libraries/armem/core/longtermmemory/Entity.cpp +++ b/source/RobotAPI/libraries/armem/core/longtermmemory/Entity.cpp @@ -1,5 +1,7 @@ #include "Entity.h" +#include <SimoxUtility/json/json.hpp> + namespace armarx::armem::ltm { diff --git a/source/RobotAPI/libraries/armem/core/longtermmemory/Entity.h b/source/RobotAPI/libraries/armem/core/longtermmemory/Entity.h index 4aef4251fc3e14deba47bfe00950731b2a34f046..c17e10208aa3bcf8fe97fe43c58d67c5de34770b 100644 --- a/source/RobotAPI/libraries/armem/core/longtermmemory/Entity.h +++ b/source/RobotAPI/libraries/armem/core/longtermmemory/Entity.h @@ -1,9 +1,9 @@ #pragma once -#include "../base/EntityBase.h" - #include "EntitySnapshot.h" +#include "mongodb/MongoDBConnectionManager.h" +#include "../base/EntityBase.h" #include "../workingmemory/Entity.h" diff --git a/source/RobotAPI/libraries/armem/core/longtermmemory/EntityInstance.cpp b/source/RobotAPI/libraries/armem/core/longtermmemory/EntityInstance.cpp index 4f844d8fc03e9e1faac842333b4f49187a49bbe6..30297767adbd92646a2f505299aac353f3ea07a5 100644 --- a/source/RobotAPI/libraries/armem/core/longtermmemory/EntityInstance.cpp +++ b/source/RobotAPI/libraries/armem/core/longtermmemory/EntityInstance.cpp @@ -1,9 +1,8 @@ #include "EntityInstance.h" -#include "../../core/error.h" - #include <ArmarXCore/core/exceptions/local/ExpressionException.h> + namespace armarx::armem::ltm { diff --git a/source/RobotAPI/libraries/armem/core/longtermmemory/EntityInstance.h b/source/RobotAPI/libraries/armem/core/longtermmemory/EntityInstance.h index cc4e1358043459799702fe338ce03c0f70530959..81bd70fd31fbd8ce9b89678646cc76f082282e6e 100644 --- a/source/RobotAPI/libraries/armem/core/longtermmemory/EntityInstance.h +++ b/source/RobotAPI/libraries/armem/core/longtermmemory/EntityInstance.h @@ -1,12 +1,7 @@ #pragma once -#include "../base/EntityInstanceBase.h" +#include <RobotAPI/libraries/armem/core/base/EntityInstanceBase.h> -#include "../workingmemory/EntityInstance.h" -#include "mongodb/MongoDBConnectionManager.h" - -#include "../workingmemory/entityInstance_conversions.h" -#include "../workingmemory/json_conversions.h" namespace armarx::armem::ltm { diff --git a/source/RobotAPI/libraries/armem/core/longtermmemory/EntitySnapshot.h b/source/RobotAPI/libraries/armem/core/longtermmemory/EntitySnapshot.h index fef528c3db2f044b62460268323864b63855600b..b557602473e937ccad8f962308e6bf8634290d0f 100644 --- a/source/RobotAPI/libraries/armem/core/longtermmemory/EntitySnapshot.h +++ b/source/RobotAPI/libraries/armem/core/longtermmemory/EntitySnapshot.h @@ -1,11 +1,13 @@ #pragma once -#include "../base/EntitySnapshotBase.h" - #include "EntityInstance.h" +#include "mongodb/MongoDBConnectionManager.h" +#include "../base/EntitySnapshotBase.h" #include "../workingmemory/EntitySnapshot.h" +#include <RobotAPI/libraries/aron/core/navigator/type/forward_declarations.h> + namespace armarx::armem::ltm { diff --git a/source/RobotAPI/libraries/armem/core/longtermmemory/Memory.h b/source/RobotAPI/libraries/armem/core/longtermmemory/Memory.h index 73a9f0fc3598d1e208c44a46c75028781beb9723..18b655ef5e85161db677b622d707263345d9fe54 100644 --- a/source/RobotAPI/libraries/armem/core/longtermmemory/Memory.h +++ b/source/RobotAPI/libraries/armem/core/longtermmemory/Memory.h @@ -1,15 +1,11 @@ #pragma once -// BaseClass -#include "../base/MemoryBase.h" - -// CoreSegment #include "CoreSegment.h" +#include "mongodb/MongoDBConnectionManager.h" -// WM +#include "../base/MemoryBase.h" #include "../workingmemory/Memory.h" -// Properties #include <ArmarXCore/core/application/properties/forward_declarations.h> diff --git a/source/RobotAPI/libraries/armem/core/longtermmemory/ProviderSegment.h b/source/RobotAPI/libraries/armem/core/longtermmemory/ProviderSegment.h index 5aecdb21ab0166a6d637c6f4e80ac4dbdae34377..c18100e96a1d0b471ce03b181ce35b60afb2b63e 100644 --- a/source/RobotAPI/libraries/armem/core/longtermmemory/ProviderSegment.h +++ b/source/RobotAPI/libraries/armem/core/longtermmemory/ProviderSegment.h @@ -1,9 +1,9 @@ #pragma once -#include "../base/ProviderSegmentBase.h" - #include "Entity.h" +#include "mongodb/MongoDBConnectionManager.h" +#include "../base/ProviderSegmentBase.h" #include "../workingmemory/ProviderSegment.h" diff --git a/source/RobotAPI/libraries/armem/core/workingmemory/EntityInstance.cpp b/source/RobotAPI/libraries/armem/core/workingmemory/EntityInstance.cpp index 0e3dd4ceb45de2bb7cd419cb27879337ab88e7a7..9158bd7e33565ed62f9c24f5bbbe0d15450ee9e0 100644 --- a/source/RobotAPI/libraries/armem/core/workingmemory/EntityInstance.cpp +++ b/source/RobotAPI/libraries/armem/core/workingmemory/EntityInstance.cpp @@ -1,5 +1,7 @@ #include "EntityInstance.h" +#include <RobotAPI/libraries/aron/core/navigator/data/container/Dict.h> + #include <ArmarXCore/core/exceptions/local/ExpressionException.h> diff --git a/source/RobotAPI/libraries/armem/core/workingmemory/ice_conversions.cpp b/source/RobotAPI/libraries/armem/core/workingmemory/ice_conversions.cpp index 71cdd52ea8bfdae9f08f02e595a9940bdf8bb514..4e429f17094c0d04cc350c6a303931e90493edda 100644 --- a/source/RobotAPI/libraries/armem/core/workingmemory/ice_conversions.cpp +++ b/source/RobotAPI/libraries/armem/core/workingmemory/ice_conversions.cpp @@ -1,5 +1,7 @@ #include "ice_conversions.h" +#include <RobotAPI/libraries/aron/core/navigator/data/container/Dict.h> + namespace armarx::armem { diff --git a/source/RobotAPI/libraries/armem/server/segment/Segment.h b/source/RobotAPI/libraries/armem/server/segment/Segment.h index e59b63fc38a5f24a26b7583816c29c10e6589684..52d12980eaf68a022ae595e7da41f3b2c03fd5a4 100644 --- a/source/RobotAPI/libraries/armem/server/segment/Segment.h +++ b/source/RobotAPI/libraries/armem/server/segment/Segment.h @@ -8,11 +8,9 @@ #include <ArmarXCore/core/logging/Logging.h> #include <ArmarXCore/core/application/properties/forward_declarations.h> +#include <RobotAPI/libraries/aron/core/navigator/type/forward_declarations.h> + -namespace armarx::aron::typenavigator -{ - using ObjectNavigatorPtr = std::shared_ptr<class ObjectNavigator>; -} namespace armarx::armem { namespace server diff --git a/source/RobotAPI/libraries/armem/server/segment/SpecializedSegment.h b/source/RobotAPI/libraries/armem/server/segment/SpecializedSegment.h index fd3a456c55d785471e86a0d3f1e12a5491d3e32c..d6601c39b8076a140070db86859b38d575e52dc7 100644 --- a/source/RobotAPI/libraries/armem/server/segment/SpecializedSegment.h +++ b/source/RobotAPI/libraries/armem/server/segment/SpecializedSegment.h @@ -6,11 +6,9 @@ #include <ArmarXCore/core/application/properties/forward_declarations.h> #include <ArmarXCore/core/logging/Logging.h> +#include <RobotAPI/libraries/aron/core/navigator/type/forward_declarations.h> + -namespace armarx::aron::typenavigator -{ - using ObjectNavigatorPtr = std::shared_ptr<class ObjectNavigator>; -} namespace armarx::armem { namespace server @@ -31,15 +29,15 @@ namespace armarx::armem::server::segment * @brief Specialized management of a core segment. */ class SpecializedSegment : - public armarx::Logging + public armarx::Logging { public: SpecializedSegment( - server::MemoryToIceAdapter& iceMemory, - aron::typenavigator::ObjectNavigatorPtr aronType = nullptr, - const std::string& defaultCoreSegmentName = "", - int64_t defaultMaxHistorySize = -1); + server::MemoryToIceAdapter& iceMemory, + aron::typenavigator::ObjectNavigatorPtr aronType = nullptr, + const std::string& defaultCoreSegmentName = "", + int64_t defaultMaxHistorySize = -1); virtual ~SpecializedSegment(); diff --git a/source/RobotAPI/libraries/armem/test/ArMemMemoryIDTest.cpp b/source/RobotAPI/libraries/armem/test/ArMemMemoryIDTest.cpp index aad3359b0d57cfed79d463cc27dcced44550ef00..72f09fb225aa22b50ed55a9482e7f973acbf0fd2 100644 --- a/source/RobotAPI/libraries/armem/test/ArMemMemoryIDTest.cpp +++ b/source/RobotAPI/libraries/armem/test/ArMemMemoryIDTest.cpp @@ -25,8 +25,8 @@ #define ARMARX_BOOST_TEST #include <RobotAPI/Test.h> -#include "../core/MemoryID.h" -#include "../core/error.h" +#include <RobotAPI/libraries/armem/core/MemoryID.h> +#include <RobotAPI/libraries/armem/core/error.h> #include <iostream> diff --git a/source/RobotAPI/libraries/armem/util/util.h b/source/RobotAPI/libraries/armem/util/util.h index 35fc1538b78df0b817e7ae0676be68e9675d1f0f..b1e3e7f3df9cd9f909ea57b291f33e9c01cba79d 100644 --- a/source/RobotAPI/libraries/armem/util/util.h +++ b/source/RobotAPI/libraries/armem/util/util.h @@ -24,12 +24,13 @@ #include <vector> #include <optional> -#include "ArmarXCore/core/logging/Logging.h" +#include <ArmarXCore/core/logging/Logging.h> #include <RobotAPI/libraries/armem/core/workingmemory/Entity.h> #include <RobotAPI/libraries/armem/core/workingmemory/EntityInstance.h> #include <RobotAPI/libraries/aron/core/codegenerator/codeWriter/cpp/AronCppClass.h> + namespace armarx::armem { @@ -52,10 +53,13 @@ namespace armarx::armem return std::nullopt; } +#if 0 + // item.data() is by definition a DictNavigator if (item.data()->getDescriptor() != aron::data::Descriptor::eDict) { return std::nullopt; } +#endif try { diff --git a/source/RobotAPI/libraries/aron/core/CMakeLists.txt b/source/RobotAPI/libraries/aron/core/CMakeLists.txt index 62548c29719f3942afee49a45e9a3f24a4232634..c5282fb54aba97b583f15f2df1876c0dde3e4ead 100644 --- a/source/RobotAPI/libraries/aron/core/CMakeLists.txt +++ b/source/RobotAPI/libraries/aron/core/CMakeLists.txt @@ -151,6 +151,7 @@ set(LIB_HEADERS navigator/data/primitive/Bool.h navigator/data/AllNavigators.h navigator/data/NavigatorFactory.h + navigator/data/forward_declarations.h navigator/type/Navigator.h navigator/type/detail/NavigatorBase.h @@ -181,6 +182,7 @@ set(LIB_HEADERS navigator/type/primitive/Time.h navigator/type/AllNavigators.h navigator/type/NavigatorFactory.h + navigator/type/forward_declarations.h navigator/visitors/DataVisitor.h navigator/visitors/TypedDataVisitor.h diff --git a/source/RobotAPI/libraries/aron/core/navigator/data/forward_declarations.h b/source/RobotAPI/libraries/aron/core/navigator/data/forward_declarations.h new file mode 100644 index 0000000000000000000000000000000000000000..d76939c317aafd2acc4eb797d38d1ba1ff96da26 --- /dev/null +++ b/source/RobotAPI/libraries/aron/core/navigator/data/forward_declarations.h @@ -0,0 +1,22 @@ +#pragma once + +#include <memory> + + +namespace armarx::aron::datanavigator +{ + class Navigator; + using NavigatorPtr = std::shared_ptr<Navigator>; + + using DictNavigatorPtr = std::shared_ptr<class DictNavigator>; + using ListNavigatorPtr = std::shared_ptr<class ListNavigator>; + using NDArrayNavigatorPtr = std::shared_ptr<class NDArrayNavigator>; + + using IntNavigatorPtr = std::shared_ptr<class IntNavigator>; + using LongNavigatorPtr = std::shared_ptr<class LongNavigator>; + using FloatNavigatorPtr = std::shared_ptr<class FloatNavigator>; + using DoubleNavigatorPtr = std::shared_ptr<class DoubleNavigator>; + using StringNavigatorPtr = std::shared_ptr<class StringNavigator>; + using BoolNavigatorPtr = std::shared_ptr<class BoolNavigator>; + +} diff --git a/source/RobotAPI/libraries/aron/core/navigator/type/AllNavigators.h b/source/RobotAPI/libraries/aron/core/navigator/type/AllNavigators.h index 51ea5a762037da7b7e4a3808c42d36a468d9c6b1..82702de998bb7e6b0972afd9e96ae027b433eae3 100644 --- a/source/RobotAPI/libraries/aron/core/navigator/type/AllNavigators.h +++ b/source/RobotAPI/libraries/aron/core/navigator/type/AllNavigators.h @@ -12,7 +12,6 @@ #include "ndarray/OpenCVMat.h" #include "ndarray/Orientation.h" #include "ndarray/PCLPointCloud.h" -#include "ndarray/PCLPointCloud.h" #include "ndarray/Pose.h" #include "ndarray/Position.h" #include "enum/IntEnum.h" diff --git a/source/RobotAPI/libraries/aron/core/navigator/type/forward_declarations.h b/source/RobotAPI/libraries/aron/core/navigator/type/forward_declarations.h new file mode 100644 index 0000000000000000000000000000000000000000..af5d62e7c0decbc296cea942fa1983b0e0cb5924 --- /dev/null +++ b/source/RobotAPI/libraries/aron/core/navigator/type/forward_declarations.h @@ -0,0 +1,34 @@ +#pragma once + +#include <memory> + + +namespace armarx::aron::typenavigator +{ + using NavigatorPtr = std::shared_ptr<class Navigator>; + + using DictNavigatorPtr = std::shared_ptr<class DictNavigator>; + using ListNavigatorPtr = std::shared_ptr<class ListNavigator>; + using ObjectNavigatorPtr = std::shared_ptr<class ObjectNavigator>; + using PoseNavigatorPtr = std::shared_ptr<class PoseNavigator>; + using TupleNavigatorPtr = std::shared_ptr<class TupleNavigator>; + using NDArrayNavigatorPtr = std::shared_ptr<class NDArrayNavigator>; + using EigenMatrixNavigatorPtr = std::shared_ptr<class EigenMatrixNavigator>; + using EigenQuaternionNavigatorPtr = std::shared_ptr<class EigenQuaternionNavigator>; + using IVTCByteImageNavigatorPtr = std::shared_ptr<class IVTCByteImageNavigator>; + using OpenCVMatNavigatorPtr = std::shared_ptr<class OpenCVMatNavigator>; + using OrientationNavigatorPtr = std::shared_ptr<class OrientationNavigator>; + using PCLPointCloudNavigatorPtr = std::shared_ptr<class PCLPointCloudNavigator>; + using PositionNavigatorPtr = std::shared_ptr<class PositionNavigator>; + using IntEnumNavigatorPtr = std::shared_ptr<class IntEnumNavigator>; + + using IntNavigatorPtr = std::shared_ptr<class IntNavigator>; + using LongNavigatorPtr = std::shared_ptr<class LongNavigator>; + using FloatNavigatorPtr = std::shared_ptr<class FloatNavigator>; + using DoubleNavigatorPtr = std::shared_ptr<class DoubleNavigator>; + using StringNavigatorPtr = std::shared_ptr<class StringNavigator>; + using BoolNavigatorPtr = std::shared_ptr<class BoolNavigator>; + using TimeNavigatorPtr = std::shared_ptr<class TimeNavigator>; + +} +