ompl/control/planners/ltl/src/PropositionalDecomposition.cpp
00001 #include "ompl/control/planners/ltl/PropositionalDecomposition.h" 00002 #include "ompl/base/State.h" 00003 #include "ompl/control/planners/syclop/Decomposition.h" 00004 #include "ompl/control/planners/ltl/World.h" 00005 #include "ompl/util/ClassForward.h" 00006 #include "ompl/util/RandomNumbers.h" 00007 #include "ompl/base/StateSampler.h" 00008 #include <vector> 00009 00010 ompl::control::PropositionalDecomposition::PropositionalDecomposition(const DecompositionPtr& decomp) : 00011 Decomposition(decomp->getDimension(), decomp->getBounds()), 00012 decomp_(decomp) 00013 { 00014 } 00015 00016 ompl::control::PropositionalDecomposition::~PropositionalDecomposition(void) 00017 { 00018 } 00019 00020 int ompl::control::PropositionalDecomposition::getNumRegions(void) const 00021 { 00022 return decomp_->getNumRegions(); 00023 } 00024 00025 double ompl::control::PropositionalDecomposition::getRegionVolume(int rid) 00026 { 00027 return decomp_->getRegionVolume(rid); 00028 } 00029 00030 int ompl::control::PropositionalDecomposition::locateRegion(const base::State* s) const 00031 { 00032 return decomp_->locateRegion(s); 00033 } 00034 00035 void ompl::control::PropositionalDecomposition::project(const base::State* s, std::vector<double>& coord) const 00036 { 00037 return decomp_->project(s, coord); 00038 } 00039 00040 void ompl::control::PropositionalDecomposition::getNeighbors(int rid, std::vector<int>& neighbors) const 00041 { 00042 decomp_->getNeighbors(rid, neighbors); 00043 } 00044 00045 void ompl::control::PropositionalDecomposition::sampleFromRegion(int rid, RNG& rng, std::vector<double>& coord) const 00046 { 00047 decomp_->sampleFromRegion(rid, rng, coord); 00048 } 00049 00050 void ompl::control::PropositionalDecomposition::sampleFullState( 00051 const base::StateSamplerPtr& sampler, 00052 const std::vector<double>& coord, 00053 base::State* s) const 00054 { 00055 decomp_->sampleFullState(sampler, coord, s); 00056 }