From 3ca9e1d72fd67a55ed73a8863cd30a2a446f29d6 Mon Sep 17 00:00:00 2001 From: Liangliang Zhang Date: Mon, 24 Sep 2018 23:08:28 -0700 Subject: [PATCH] Perception: added object pool. --- modules/perception/base/BUILD | 26 +++++++++++++++++++ .../perception/base/concurrent_object_pool.h | 3 +++ modules/perception/base/object_pool.h | 4 ++- modules/perception/base/object_pool_types.h | 1 + modules/perception/base/sensor_meta.h | 3 ++- 5 files changed, 35 insertions(+), 2 deletions(-) diff --git a/modules/perception/base/BUILD b/modules/perception/base/BUILD index 3163f2b304..bb81571df1 100644 --- a/modules/perception/base/BUILD +++ b/modules/perception/base/BUILD @@ -136,6 +136,14 @@ cc_test( ], ) +cc_library( + name = "frame", + hdrs = [ + "frame.h", + "frame_supplement.h", + ], +) + cc_library( name = "object", hdrs = [ @@ -165,6 +173,16 @@ cc_test( ], ) +cc_library( + name = "object_pool", + hdrs = [ + "object_pool.h", + "concurrent_object_pool.h", + ], + deps = [ + ], +) + cc_library( name = "omnidirectional_model", hdrs = [ @@ -242,6 +260,14 @@ cc_test( ], ) +cc_library( + name = "sensor_meta", + hdrs = [ + "sensor_meta.h", + ], +) + + cc_library( name = "syncedmem", srcs = [ diff --git a/modules/perception/base/concurrent_object_pool.h b/modules/perception/base/concurrent_object_pool.h index 250a144c97..45f1b39ac7 100644 --- a/modules/perception/base/concurrent_object_pool.h +++ b/modules/perception/base/concurrent_object_pool.h @@ -15,11 +15,13 @@ *****************************************************************************/ #ifndef MODULES_PERCEPTION_BASE_CONCURRENT_OBJECT_POOL_H_ #define MODULES_PERCEPTION_BASE_CONCURRENT_OBJECT_POOL_H_ + #include #include #include #include #include + #include "modules/perception/base/object_pool.h" #define PERCEPTION_BASE_DISABLE_POOL @@ -50,6 +52,7 @@ class ConcurrentObjectPool : public BaseObjectPool { } // @brief overrided function to get object smart pointer ObjectTypePtr Get() override { +// TODO(All): remove conditional build #ifndef PERCEPTION_BASE_DISABLE_POOL ObjectType* ptr = nullptr; { diff --git a/modules/perception/base/object_pool.h b/modules/perception/base/object_pool.h index 37178d558b..91bcfafab6 100644 --- a/modules/perception/base/object_pool.h +++ b/modules/perception/base/object_pool.h @@ -27,7 +27,9 @@ namespace base { template class BaseObjectPool { public: - typedef std::shared_ptr ObjectTypePtr; + // TODO(All): remove + // typedef std::shared_ptr ObjectTypePtr; + // @brief default constructor BaseObjectPool() = default; // @brief default destructor diff --git a/modules/perception/base/object_pool_types.h b/modules/perception/base/object_pool_types.h index b806c03050..f7d71ae2af 100644 --- a/modules/perception/base/object_pool_types.h +++ b/modules/perception/base/object_pool_types.h @@ -15,6 +15,7 @@ *****************************************************************************/ #ifndef MODULES_PERCEPTION_BASE_OBJECT_POOL_TYPES_H_ #define MODULES_PERCEPTION_BASE_OBJECT_POOL_TYPES_H_ + #include "modules/perception/base/concurrent_object_pool.h" #include "modules/perception/base/frame.h" #include "modules/perception/base/object.h" diff --git a/modules/perception/base/sensor_meta.h b/modules/perception/base/sensor_meta.h index 4ee0119ef7..85810b17b0 100644 --- a/modules/perception/base/sensor_meta.h +++ b/modules/perception/base/sensor_meta.h @@ -68,7 +68,8 @@ struct SensorInfo { } }; -typedef std::shared_ptr SensorInfoPtr; +// TODO(All): remove +// typedef std::shared_ptr SensorInfoPtr; } // namespace base } // namespace perception -- GitLab