#ifndef DATA_MANAGER_H #define DATA_MANAGER_H #include #include #include "time_manager.h" #if defined(DATAMANAGER_LIBRARY) # define DATAMANAGERSHARED_EXPORT Q_DECL_EXPORT #else # define DATAMANAGERSHARED_EXPORT Q_DECL_IMPORT #endif namespace iv { class DATAMANAGERSHARED_EXPORT DataManager { public: typedef iv::radar::radarobjectarray RadarDataType; typedef iv::lidar::objectarray LidarDataType; // typedef iv::vision::cameraobjectarray CameraDataType; typedef iv::vision::ObstacleInfo VisionDataType; typedef std::chrono::system_clock::time_point TimeType; // typedef std::function DataCallback; // typedef std::function RVCallback; typedef std::function DataCallback; typedef std::function RVCallback; public: // void init(); void SetLidar(iv::lidar::objectarray& lidar_object_array); void SetRadar(iv::radar::radarobjectarray& radar_object_array); void SetCamera(iv::vision::ObstacleInfo& vision_object_array); void Ready(); void SetDataCallback(DataCallback callback); void SetRVCallback(RVCallback rvcallback); private: std::shared_ptr data_manager_ptr_; std::shared_ptr rv_manager_ptr_; }; } #endif // DATA_MANAGER_H