Conscience Core
Classes | Namespaces | Enumerations | Functions | Variables
CscSlamEngine.h File Reference
#include <filesystem>
#include <map>
#include <mutex>
#include <string>
#include <queue>
#include <vector>
#include <mrpt/math/TPose2D.h>
#include <mrpt/math/TPoint2D.h>
#include <mrpt/maps/COccupancyGridMap2D.h>
#include "CscPlaceCartography.h"
#include <Lidar/CscEntityPositionManager.h>
#include <Axiomes/Csc2dTypes.h>
#include <pcl/io/pcd_io.h>
#include <mrpt/slam/CMetricMapBuilderRBPF.h>
#include <mrpt/slam/CMonteCarloLocalization2D.h>

Go to the source code of this file.

Classes

class  conscience_core::lidar::CscSlamEngine
 
struct  conscience_core::lidar::CscSlamEngine::PhantomCluster
 
struct  conscience_core::lidar::CscSlamEngine::PhantomClusterTracked
 
struct  conscience_core::lidar::CscSlamEngine::MapToImageParams
 
struct  conscience_core::lidar::directions::CscAvailableDirection
 

Namespaces

 conscience_core
 
 conscience_core::lidar
 
 conscience_core::lidar::directions
 

Enumerations

enum  conscience_core::lidar::CscSlamCellOccupancyStatus : uint8_t { conscience_core::lidar::CscSlamCellOccupancyStatus::SlamCellOccupancyStatus_Unknown, conscience_core::lidar::CscSlamCellOccupancyStatus::SlamCellOccupancyStatus_Free, conscience_core::lidar::CscSlamCellOccupancyStatus::SlamCellOccupancyStatus_Occupied }
 

Functions

double conscience_core::lidar::distancePoints (const TPoint2D &pointA, const TPoint2D &pointB)
 
double conscience_core::lidar::distancePoints (const TPose2D &poseA, const TPose2D &poseB)
 
CscPoint2d conscience_core::lidar::toMrptReferenceFrame (const CscPoint3d &point)
 
string conscience_core::lidar::mrptPoseToJson (const TPose2D &pose)
 
string conscience_core::lidar::mrptPointToJson (const TPoint2D &point)
 
CscPoint2dOriented conscience_core::lidar::mrptPoseToCscPointOriented (const TPose2D &pose)
 
CscPoint2d conscience_core::lidar::mrptPointToCscPoint (const TPoint2D &point)
 
optional< pair< int, double > > conscience_core::lidar::directions::getBestDirectionForScan (CObservation2DRangeScan *scan, const vector< CscAvailableDirection > &authorizedDirections, double robotWidth, double robotLength, map< int, double > *computedDirections)
 
void conscience_core::lidar::directions::saveScanWithBestDirectionAsPng (const mrpt::obs::CObservation2DRangeScan &scan, double bestYaw, const std::string &bestDirName, const fs::path &filename, double robotWidth, double robotLength)
 
double conscience_core::lidar::directions::estimateFreeDistanceForLidarScan (double directionYawRads, const mrpt::obs::CObservation2DRangeScan &scan, double robotWidthMeters, double robotLengthMeters, double minClusterDistanceMeters, int minClusterSize, double maxDepthMeters)
 

Variables

static const CscAvailableDirection conscience_core::lidar::directions::AVAILABLE_DIRECTION_FORWARD = {0.0, "forward"}
 
static const CscAvailableDirection conscience_core::lidar::directions::AVAILABLE_DIRECTION_LEFT = {M_PI_2, "left"}
 
static const CscAvailableDirection conscience_core::lidar::directions::AVAILABLE_DIRECTION_RIGHT = {-M_PI_2, "right"}
 
static const CscAvailableDirection conscience_core::lidar::directions::AVAILABLE_DIRECTION_BACK = {M_PI, "back"}
 
static const vector< CscAvailableDirection > conscience_core::lidar::directions::AVAILABLE_ALL_DIRECTIONS